From c49115523968fca6b72746f512bdd9225fba3966 Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Sun, 13 Mar 2016 12:59:22 -0700 Subject: [PATCH 1/8] llvm: update to 3.8.0 --- packages/lang/llvm/package.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/lang/llvm/package.mk b/packages/lang/llvm/package.mk index 199641b4ee..eba122a34a 100644 --- a/packages/lang/llvm/package.mk +++ b/packages/lang/llvm/package.mk @@ -17,13 +17,13 @@ ################################################################################ PKG_NAME="llvm" -PKG_VERSION="f65e46b" +PKG_VERSION="3.8.0" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://llvm.org/" -PKG_URL="$DISTRO_SRC/${PKG_NAME}-${PKG_VERSION}.tar.xz" -#PKG_SOURCE_DIR="${PKG_NAME}-${PKG_VERSION}.src" +PKG_URL="http://llvm.org/releases/$PKG_VERSION/${PKG_NAME}-${PKG_VERSION}.src.tar.xz" +PKG_SOURCE_DIR="${PKG_NAME}-${PKG_VERSION}.src" PKG_DEPENDS_HOST="" PKG_DEPENDS_TARGET="toolchain llvm:host" PKG_PRIORITY="optional" From 7dcb82ea224cf162a1f3920c162b7de824428a38 Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Sun, 13 Mar 2016 13:08:01 -0700 Subject: [PATCH 2/8] xorg-server: update to 1.18.2 --- packages/x11/xserver/xorg-server/package.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/x11/xserver/xorg-server/package.mk b/packages/x11/xserver/xorg-server/package.mk index 3e392f4b4e..8c8bd80424 100644 --- a/packages/x11/xserver/xorg-server/package.mk +++ b/packages/x11/xserver/xorg-server/package.mk @@ -17,7 +17,7 @@ ################################################################################ PKG_NAME="xorg-server" -PKG_VERSION="1.18.1" +PKG_VERSION="1.18.2" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="OSS" From 8551838867864a62fbeeb55ccedc5ad046930dbc Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Sun, 13 Mar 2016 13:15:24 -0700 Subject: [PATCH 3/8] openssh: update to 7.2p2 --- packages/network/openssh/package.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/network/openssh/package.mk b/packages/network/openssh/package.mk index e847aff4d6..594ae5ed54 100644 --- a/packages/network/openssh/package.mk +++ b/packages/network/openssh/package.mk @@ -17,7 +17,7 @@ ################################################################################ PKG_NAME="openssh" -PKG_VERSION="7.2p1" +PKG_VERSION="7.2p2" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="OSS" From ea74381815c917f1f00aa8cbd9ff129e48a3ced9 Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Sun, 13 Mar 2016 13:15:50 -0700 Subject: [PATCH 4/8] dbus: update to 1.10.8 --- packages/sysutils/dbus/package.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/sysutils/dbus/package.mk b/packages/sysutils/dbus/package.mk index 367b90b4b6..1d69e3c122 100644 --- a/packages/sysutils/dbus/package.mk +++ b/packages/sysutils/dbus/package.mk @@ -17,7 +17,7 @@ ################################################################################ PKG_NAME="dbus" -PKG_VERSION="1.10.6" +PKG_VERSION="1.10.8" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" From 5e8973200a4056cb8ec2c7ef1327eb83d25624af Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 14 Mar 2016 07:25:41 +0100 Subject: [PATCH 5/8] expat: update to expat-2.1.1 Signed-off-by: Stephan Raue --- packages/textproc/expat/package.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/textproc/expat/package.mk b/packages/textproc/expat/package.mk index 2315085055..c599ed7161 100644 --- a/packages/textproc/expat/package.mk +++ b/packages/textproc/expat/package.mk @@ -17,12 +17,12 @@ ################################################################################ PKG_NAME="expat" -PKG_VERSION="2.1.0" +PKG_VERSION="2.1.1" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="OSS" PKG_SITE="http://expat.sourceforge.net/" -PKG_URL="$SOURCEFORGE_SRC/$PKG_NAME/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.gz" +PKG_URL="$SOURCEFORGE_SRC/$PKG_NAME/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.bz2" PKG_DEPENDS_TARGET="toolchain" PKG_PRIORITY="optional" PKG_SECTION="textproc" From adce3af8c4baaeccb1ca6f4682f5a334b4539f0a Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 14 Mar 2016 00:13:55 +0100 Subject: [PATCH 6/8] videoproto: update to videoproto-2.3.3 Signed-off-by: Stephan Raue --- packages/x11/proto/videoproto/package.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/x11/proto/videoproto/package.mk b/packages/x11/proto/videoproto/package.mk index a4e8117684..b6ff4ec9db 100644 --- a/packages/x11/proto/videoproto/package.mk +++ b/packages/x11/proto/videoproto/package.mk @@ -17,7 +17,7 @@ ################################################################################ PKG_NAME="videoproto" -PKG_VERSION="2.3.2" +PKG_VERSION="2.3.3" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="OSS" From 94391be9020a9965010b8059c105d1294384bffd Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 14 Mar 2016 00:43:51 +0100 Subject: [PATCH 7/8] cmake: update to cmake-3.5.0 Signed-off-by: Stephan Raue --- packages/devel/cmake/package.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/devel/cmake/package.mk b/packages/devel/cmake/package.mk index fac69ee282..7828f65ddc 100644 --- a/packages/devel/cmake/package.mk +++ b/packages/devel/cmake/package.mk @@ -17,12 +17,12 @@ ################################################################################ PKG_NAME="cmake" -PKG_VERSION="3.4.3" +PKG_VERSION="3.5.0" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="BSD" PKG_SITE="http://www.cmake.org/" -PKG_URL="http://www.cmake.org/files/v3.4/$PKG_NAME-$PKG_VERSION.tar.gz" +PKG_URL="http://www.cmake.org/files/v3.5/$PKG_NAME-$PKG_VERSION.tar.gz" PKG_DEPENDS_HOST="ccache:host" PKG_PRIORITY="optional" PKG_SECTION="toolchain/devel" From e7355bfa0763ad96aae375c5a237fb00337f96eb Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Fri, 11 Mar 2016 16:21:37 +0100 Subject: [PATCH 8/8] ncurses: update to ncurses-6.0 Signed-off-by: Stephan Raue --- packages/devel/ncurses/package.mk | 4 +- .../patches/ncurses-20140308-20140323.patch | 204827 --------------- 2 files changed, 3 insertions(+), 204828 deletions(-) delete mode 100644 packages/devel/ncurses/patches/ncurses-20140308-20140323.patch diff --git a/packages/devel/ncurses/package.mk b/packages/devel/ncurses/package.mk index 5b0b12340b..d3ab285e4c 100644 --- a/packages/devel/ncurses/package.mk +++ b/packages/devel/ncurses/package.mk @@ -17,7 +17,7 @@ ################################################################################ PKG_NAME="ncurses" -PKG_VERSION="5.9" +PKG_VERSION="6.0" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="MIT" @@ -86,4 +86,6 @@ post_makeinstall_target() { cp misc/ncurses-config $ROOT/$TOOLCHAIN/bin chmod +x $ROOT/$TOOLCHAIN/bin/ncurses-config $SED "s:\(['=\" ]\)/usr:\\1$SYSROOT_PREFIX/usr:g" $ROOT/$TOOLCHAIN/bin/ncurses-config + + rm -rf $INSTALL/usr/bin/ncurses*-config } diff --git a/packages/devel/ncurses/patches/ncurses-20140308-20140323.patch b/packages/devel/ncurses/patches/ncurses-20140308-20140323.patch deleted file mode 100644 index 2506bf31a6..0000000000 --- a/packages/devel/ncurses/patches/ncurses-20140308-20140323.patch +++ /dev/null @@ -1,204827 +0,0 @@ -diff -Naur ncurses-5.9/aclocal.m4 ncurses-5.9.patch/aclocal.m4 ---- ncurses-5.9/aclocal.m4 2011-04-01 01:35:38.000000000 +0200 -+++ ncurses-5.9.patch/aclocal.m4 2014-09-01 16:33:22.236791923 +0200 -@@ -1,5 +1,5 @@ - dnl*************************************************************************** --dnl Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+dnl Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - dnl * - dnl Permission is hereby granted, free of charge, to any person obtaining a * - dnl copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - dnl - dnl Author: Thomas E. Dickey 1995-on - dnl --dnl $Id: aclocal.m4,v 1.553 2011/03/31 23:35:38 tom Exp $ -+dnl $Id: aclocal.m4,v 1.686 2014/02/10 00:37:02 tom Exp $ - dnl Macros used in NCURSES auto-configuration script. - dnl - dnl These macros are maintained separately from NCURSES. The copyright on -@@ -62,7 +62,33 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ADA_INCLUDE_DIRS version: 6 updated: 2010/02/26 19:52:07 -+dnl CF_ACVERSION_CHECK version: 4 updated: 2013/03/04 19:52:56 -+dnl ------------------ -+dnl Conditionally generate script according to whether we're using a given autoconf. -+dnl -+dnl $1 = version to compare against -+dnl $2 = code to use if AC_ACVERSION is at least as high as $1. -+dnl $3 = code to use if AC_ACVERSION is older than $1. -+define([CF_ACVERSION_CHECK], -+[ -+ifdef([AC_ACVERSION], ,[m4_copy([m4_PACKAGE_VERSION],[AC_ACVERSION])])dnl -+ifdef([m4_version_compare], -+[m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])], -+[CF_ACVERSION_COMPARE( -+AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])), -+AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ACVERSION_COMPARE version: 3 updated: 2012/10/03 18:39:53 -+dnl -------------------- -+dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1, -+dnl MAJOR2, MINOR2, TERNARY2, -+dnl PRINTABLE2, not FOUND, FOUND) -+define([CF_ACVERSION_COMPARE], -+[ifelse(builtin([eval], [$2 < $5]), 1, -+[ifelse([$8], , ,[$8])], -+[ifelse([$9], , ,[$9])])])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ADA_INCLUDE_DIRS version: 8 updated: 2013/10/14 04:24:07 - dnl ------------------- - dnl Construct the list of include-options for the C programs in the Ada95 - dnl binding. -@@ -76,7 +102,7 @@ - ACPPFLAGS="$ACPPFLAGS -I\${includedir}" - elif test "$includedir" != "/usr/include"; then - if test "$includedir" = '${prefix}/include' ; then -- if test $prefix != /usr ; then -+ if test x$prefix != x/usr ; then - ACPPFLAGS="$ACPPFLAGS -I\${includedir}" - fi - else -@@ -291,7 +317,7 @@ - dnl $2 = variable to update (default $LIBS) - AC_DEFUN([CF_ADD_LIBS],[ifelse($2,,LIBS,[$2])="$1 [$]ifelse($2,,LIBS,[$2])"])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ADD_SUBDIR_PATH version: 3 updated: 2010/07/03 20:58:12 -+dnl CF_ADD_SUBDIR_PATH version: 4 updated: 2013/10/08 17:47:05 - dnl ------------------ - dnl Append to a search-list for a nonstandard header/lib-file - dnl $1 = the variable to return as result -@@ -301,9 +327,9 @@ - dnl $5 = a directory that we do not want $4 to match - AC_DEFUN([CF_ADD_SUBDIR_PATH], - [ --test "$4" != "$5" && \ -+test "x$4" != "x$5" && \ - test -d "$4" && \ --ifelse([$5],NONE,,[(test $5 = NONE || test "$4" != "$5") &&]) { -+ifelse([$5],NONE,,[(test -z "$5" || test x$5 = xNONE || test "x$4" != "x$5") &&]) { - test -n "$verbose" && echo " ... testing for $3-directories under $4" - test -d $4/$3 && $1="[$]$1 $4/$3" - test -d $4/$3/$2 && $1="[$]$1 $4/$3/$2" -@@ -313,76 +339,6 @@ - } - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ANSI_CC_CHECK version: 10 updated: 2010/10/23 15:52:32 --dnl ---------------- --dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES' --dnl in the sharutils 4.2 distribution. --AC_DEFUN([CF_ANSI_CC_CHECK], --[ --AC_CACHE_CHECK(for ${CC:-cc} option to accept ANSI C, cf_cv_ansi_cc,[ --cf_cv_ansi_cc=no --cf_save_CFLAGS="$CFLAGS" --cf_save_CPPFLAGS="$CPPFLAGS" --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX -Aa -D_HPUX_SOURCE --# SVR4 -Xc --# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes) --for cf_arg in "-DCC_HAS_PROTOS" \ -- "" \ -- -qlanglvl=ansi \ -- -std1 \ -- -Ae \ -- "-Aa -D_HPUX_SOURCE" \ -- -Xc --do -- CF_ADD_CFLAGS($cf_arg) -- AC_TRY_COMPILE( --[ --#ifndef CC_HAS_PROTOS --#if !defined(__STDC__) || (__STDC__ != 1) --choke me --#endif --#endif --],[ -- int test (int i, double x); -- struct s1 {int (*f) (int a);}; -- struct s2 {int (*f) (double a);};], -- [cf_cv_ansi_cc="$cf_arg"; break]) --done --CFLAGS="$cf_save_CFLAGS" --CPPFLAGS="$cf_save_CPPFLAGS" --]) -- --if test "$cf_cv_ansi_cc" != "no"; then --if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then -- CF_ADD_CFLAGS($cf_cv_ansi_cc) --else -- AC_DEFINE(CC_HAS_PROTOS) --fi --fi --])dnl --dnl --------------------------------------------------------------------------- --dnl CF_ANSI_CC_REQD version: 4 updated: 2008/03/23 14:48:54 --dnl --------------- --dnl For programs that must use an ANSI compiler, obtain compiler options that --dnl will make it recognize prototypes. We'll do preprocessor checks in other --dnl macros, since tools such as unproto can fake prototypes, but only part of --dnl the preprocessor. --AC_DEFUN([CF_ANSI_CC_REQD], --[AC_REQUIRE([CF_ANSI_CC_CHECK]) --if test "$cf_cv_ansi_cc" = "no"; then -- AC_MSG_ERROR( --[Your compiler does not appear to recognize prototypes. --You have the following choices: -- a. adjust your compiler options -- b. get an up-to-date compiler -- c. use a wrapper such as unproto]) --fi --])dnl --dnl --------------------------------------------------------------------------- - dnl CF_ARG_DISABLE version: 3 updated: 1999/03/30 17:24:31 - dnl -------------- - dnl Allow user to disable a normally-on option. -@@ -465,7 +421,7 @@ - AC_SUBST(ARFLAGS) - ]) - dnl --------------------------------------------------------------------------- --dnl CF_AWK_BIG_PRINTF version: 3 updated: 2008/12/27 12:30:03 -+dnl CF_AWK_BIG_PRINTF version: 4 updated: 2011/10/30 17:09:50 - dnl ----------------- - dnl Check if awk can handle big strings using printf. Some older versions of - dnl awk choke on large strings passed via "%s". -@@ -479,8 +435,8 @@ - eval $2=no - ;; - *) #(vi -- if ( ${AWK} 'BEGIN { xx = "x"; while (length(xx) < $1) { xx = xx "x"; }; printf("%s\n", xx); }' \ -- | $AWK '{ printf "%d\n", length([$]0); }' | $AWK 'BEGIN { eqls=0; recs=0; } { recs++; if ([$]0 == 12000) eqls++; } END { if (recs != 1 || eqls != 1) exit 1; }' 2>/dev/null >/dev/null ) ; then -+ if ( ${AWK} 'BEGIN { xx = "x"; while (length(xx) < $1) { xx = xx "x"; }; printf("%s\n", xx); }' 2>/dev/null \ -+ | $AWK '{ printf "%d\n", length([$]0); }' 2>/dev/null | $AWK 'BEGIN { eqls=0; recs=0; } { recs++; if ([$]0 == 12000) eqls++; } END { if (recs != 1 || eqls != 1) exit 1; }' 2>/dev/null >/dev/null ) ; then - eval $2=yes - else - eval $2=no -@@ -536,7 +492,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_BOOL_SIZE version: 12 updated: 2006/12/16 12:33:30 -+dnl CF_BOOL_SIZE version: 13 updated: 2013/04/13 18:03:21 - 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's been deprecated. -@@ -570,7 +526,7 @@ - - #endif - --main() -+int main() - { - FILE *fp = fopen("cf_test.out", "w"); - if (fp != 0) { -@@ -604,7 +560,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_BUILD_CC version: 6 updated: 2006/10/14 15:23:15 -+dnl CF_BUILD_CC version: 7 updated: 2012/10/06 15:31:55 - 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 -@@ -614,7 +570,8 @@ - dnl $1 = default for $CPPFLAGS - dnl $2 = default for $LIBS - AC_DEFUN([CF_BUILD_CC],[ --AC_REQUIRE([CF_PROG_EXT]) -+CF_ACVERSION_CHECK(2.52,, -+ [AC_REQUIRE([CF_PROG_EXT])]) - if test "$cross_compiling" = yes ; then - - # defaults that we might want to override -@@ -695,7 +652,33 @@ - AC_SUBST(BUILD_OBJEXT) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CFG_DEFAULTS version: 7 updated: 2005/09/24 16:15:00 -+dnl CF_CC_ENV_FLAGS version: 1 updated: 2012/10/03 05:25:49 -+dnl --------------- -+dnl Check for user's environment-breakage by stuffing CFLAGS/CPPFLAGS content -+dnl into CC. This will not help with broken scripts that wrap the compiler with -+dnl options, but eliminates a more common category of user confusion. -+AC_DEFUN([CF_CC_ENV_FLAGS], -+[ -+# This should have been defined by AC_PROG_CC -+: ${CC:=cc} -+ -+AC_MSG_CHECKING(\$CC variable) -+case "$CC" in #(vi -+*[[\ \ ]]-[[IUD]]*) -+ AC_MSG_RESULT(broken) -+ AC_MSG_WARN(your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options) -+ # humor him... -+ cf_flags=`echo "$CC" | sed -e 's/^[[^ ]]*[[ ]]//'` -+ CC=`echo "$CC" | sed -e 's/[[ ]].*//'` -+ CF_ADD_CFLAGS($cf_flags) -+ ;; -+*) -+ AC_MSG_RESULT(ok) -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CFG_DEFAULTS version: 10 updated: 2013/09/07 13:54:05 - dnl --------------- - dnl Determine the default configuration into which we'll install ncurses. This - dnl can be overridden by the user's command-line options. There's two items to -@@ -713,7 +696,7 @@ - if test "x$prefix" = "xNONE" ; then - case "$cf_cv_system_name" in - # non-vendor systems don't have a conflict -- openbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu) -+ openbsd*|freebsd*|mirbsd*|linux*|cygwin*|msys*|k*bsd*-gnu|mingw*) - prefix=/usr - ;; - *) prefix=$ac_default_prefix -@@ -749,30 +732,51 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CGETENT version: 3 updated: 2000/08/12 23:18:52 -+dnl CF_CGETENT version: 5 updated: 2012/10/06 17:56:13 - dnl ---------- - dnl Check if the terminal-capability database functions are available. If not, - dnl ncurses has a much-reduced version. - AC_DEFUN([CF_CGETENT],[ --AC_MSG_CHECKING(for terminal-capability database functions) --AC_CACHE_VAL(cf_cv_cgetent,[ -+AC_CACHE_CHECK(for terminal-capability database functions,cf_cv_cgetent,[ - AC_TRY_LINK([ - #include ],[ - char temp[128]; - char *buf = temp; - char *db_array = temp; -- cgetent(&buf, /* int *, */ &db_array, "vt100"); -+ cgetent(&buf, &db_array, "vt100"); - cgetcap(buf, "tc", '='); - cgetmatch(buf, "tc"); - ], - [cf_cv_cgetent=yes], - [cf_cv_cgetent=no]) - ]) --AC_MSG_RESULT($cf_cv_cgetent) --test "$cf_cv_cgetent" = yes && AC_DEFINE(HAVE_BSD_CGETENT) -+ -+if test "$cf_cv_cgetent" = yes -+then -+ AC_DEFINE(HAVE_BSD_CGETENT,1,[Define to 1 if we have BSD cgetent]) -+AC_CACHE_CHECK(if cgetent uses const parameter,cf_cv_cgetent_const,[ -+AC_TRY_LINK([ -+#include ],[ -+ char temp[128]; -+ char *buf = temp; -+#ifndef _NETBSD_SOURCE /* given, since April 2004 in stdlib.h */ -+ const char *db_array = temp; -+ cgetent(&buf, &db_array, "vt100"); -+#endif -+ cgetcap(buf, "tc", '='); -+ cgetmatch(buf, "tc"); -+ ], -+ [cf_cv_cgetent_const=yes], -+ [cf_cv_cgetent_const=no]) -+]) -+ if test "$cf_cv_cgetent_const" = yes -+ then -+ AC_DEFINE_UNQUOTED(CGETENT_CONST,const,[Define to const if needed for some BSD cgetent variations]) -+ fi -+fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CHECK_CACHE version: 11 updated: 2008/03/23 14:45:59 -+dnl CF_CHECK_CACHE version: 12 updated: 2012/10/02 20:55:03 - dnl -------------- - dnl Check if we're accidentally using a cache from a different machine. - dnl Derive the system name, as a check for reusing the autoconf cache. -@@ -795,7 +799,7 @@ - system_name="`(hostname) 2>/dev/null`" - fi - fi --test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name") -+test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name",[Define to the system name.]) - AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"]) - - test -z "$system_name" && system_name="$cf_cv_system_name" -@@ -908,7 +912,82 @@ - fi - ])])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CPP_PARAM_INIT version: 4 updated: 2001/04/07 22:31:18 -+dnl CF_CHECK_LIBTOOL_VERSION version: 1 updated: 2013/04/06 18:03:09 -+dnl ------------------------ -+dnl Show the version of libtool -+dnl -+dnl Save the version in a cache variable - this is not entirely a good thing, -+dnl but the version string from libtool is very ugly, and for bug reports it -+dnl might be useful to have the original string. -+AC_DEFUN([CF_CHECK_LIBTOOL_VERSION],[ -+if test -n "$LIBTOOL" && test "$LIBTOOL" != none -+then -+ AC_MSG_CHECKING(version of $LIBTOOL) -+ CF_LIBTOOL_VERSION -+ AC_MSG_RESULT($cf_cv_libtool_version) -+ if test -z "$cf_cv_libtool_version" ; then -+ AC_MSG_ERROR(This is not GNU libtool) -+ fi -+else -+ AC_MSG_ERROR(GNU libtool has not been found) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CHECK_WCHAR_H version: 1 updated: 2011/10/29 15:01:05 -+dnl ---------------- -+dnl Check if wchar.h can be used, i.e., without defining _XOPEN_SOURCE_EXTENDED -+AC_DEFUN([CF_CHECK_WCHAR_H],[ -+AC_CACHE_CHECK(if wchar.h can be used as is,cf_cv_wchar_h_okay,[ -+AC_TRY_COMPILE( -+[ -+#include -+#include -+],[ -+ wint_t foo = 0; -+ int bar = iswpunct(foo)], -+ [cf_cv_wchar_h_okay=yes], -+ [cf_cv_wchar_h_okay=no])]) -+ -+if test $cf_cv_wchar_h_okay = no -+then -+ CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CLANG_COMPILER version: 2 updated: 2013/11/19 19:23:35 -+dnl ----------------- -+dnl Check if the given compiler is really clang. clang's C driver defines -+dnl __GNUC__ (fooling the configure script into setting $GCC to yes) but does -+dnl not ignore some gcc options. -+dnl -+dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to -+dnl ensure that it is not mistaken for gcc/g++. It is normally invoked from -+dnl the wrappers for gcc and g++ warnings. -+dnl -+dnl $1 = GCC (default) or GXX -+dnl $2 = CLANG_COMPILER (default) -+dnl $3 = CFLAGS (default) or CXXFLAGS -+AC_DEFUN([CF_CLANG_COMPILER],[ -+ifelse([$2],,CLANG_COMPILER,[$2])=no -+ -+if test "$ifelse([$1],,[$1],GCC)" = yes ; then -+ AC_MSG_CHECKING(if this is really Clang ifelse([$1],GXX,C++,C) compiler) -+ cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])" -+ ifelse([$3],,CFLAGS,[$3])="$ifelse([$3],,CFLAGS,[$3]) -Qunused-arguments" -+ AC_TRY_COMPILE([],[ -+#ifdef __clang__ -+#else -+make an error -+#endif -+],[ifelse([$2],,CLANG_COMPILER,[$2])=yes -+cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments" -+],[]) -+ ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS" -+ AC_MSG_RESULT($ifelse([$2],,CLANG_COMPILER,[$2])) -+fi -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_CPP_PARAM_INIT version: 6 updated: 2012/10/06 17:56:13 - 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 -@@ -932,7 +1011,7 @@ - { - value = x; - } --void main() { } -+int main() { } - ], - [cf_cv_cpp_param_init=yes], - [cf_cv_cpp_param_init=no], -@@ -940,10 +1019,10 @@ - AC_LANG_RESTORE - ]) - fi --test "$cf_cv_cpp_param_init" = yes && AC_DEFINE(CPP_HAS_PARAM_INIT) -+test "$cf_cv_cpp_param_init" = yes && AC_DEFINE(CPP_HAS_PARAM_INIT,1,[Define to 1 if C++ has parameter initialization]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CPP_STATIC_CAST version: 1 updated: 2005/07/23 16:52:43 -+dnl CF_CPP_STATIC_CAST version: 3 updated: 2013/04/13 18:03:21 - dnl ------------------ - dnl Check if the C++ compiler accepts static_cast in generics. This appears to - dnl not be supported in g++ before 3.0 -@@ -965,7 +1044,7 @@ - int begin_x = 0) - { - } -- -+ NCursesPanel(); - ~NCursesPanel(); - }; - -@@ -996,10 +1075,58 @@ - - fi - --test "$cf_cv_cpp_static_cast" = yes && AC_DEFINE(CPP_HAS_STATIC_CAST) -+test "$cf_cv_cpp_static_cast" = yes && AC_DEFINE(CPP_HAS_STATIC_CAST,1,[Define to 1 if C++ has static_cast]) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CXX_AR_FLAGS version: 1 updated: 2011/10/29 08:35:34 -+dnl --------------- -+dnl Setup special archiver flags for given compilers. -+AC_DEFUN([CF_CXX_AR_FLAGS],[ -+ CXX_AR='$(AR)' -+ CXX_ARFLAGS='$(ARFLAGS)' -+ case $cf_cv_system_name in #(vi -+ irix*) #(vi -+ if test "$GXX" != yes ; then -+ CXX_AR='$(CXX)' -+ CXX_ARFLAGS='-ar -o' -+ fi -+ ;; -+ sco3.2v5*) #(vi -+ CXXLDFLAGS="-u main" -+ ;; -+ solaris2*) -+ if test "$GXX" != yes ; then -+ CXX_AR='$(CXX)' -+ CXX_ARFLAGS='-xar -o' -+ fi -+ ;; -+ esac -+ AC_SUBST(CXXLDFLAGS) -+ AC_SUBST(CXX_AR) -+ AC_SUBST(CXX_ARFLAGS) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_C_INLINE version: 3 updated: 2010/05/01 15:14:41 -+dnl CF_CXX_IOSTREAM_NAMESPACE version: 2 updated: 2012/10/06 17:56:13 -+dnl ------------------------- -+dnl For c++, check if iostream uses "std::" namespace. -+AC_DEFUN([CF_CXX_IOSTREAM_NAMESPACE],[ -+AC_CHECK_HEADERS(iostream) -+if test x"$ac_cv_header_iostream" = xyes ; then -+ AC_MSG_CHECKING(if iostream uses std-namespace) -+ AC_TRY_COMPILE([ -+#include -+using std::endl; -+using std::cerr;],[ -+cerr << "testing" << endl; -+],[cf_iostream_namespace=yes],[cf_iostream_namespace=no]) -+ AC_MSG_RESULT($cf_iostream_namespace) -+ if test "$cf_iostream_namespace" = yes ; then -+ AC_DEFINE(IOSTREAM_NAMESPACE,1,[Define to 1 if C++ has namespace iostream]) -+ fi -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_C_INLINE version: 4 updated: 2012/06/16 14:55:39 - dnl ----------- - dnl Check if the C compiler supports "inline". - dnl $1 is the name of a shell variable to set if inline is supported -@@ -1012,6 +1139,9 @@ - if test "$INTEL_COMPILER" = yes - then - : -+ elif test "$CLANG_COMPILER" = yes -+ then -+ : - elif test "$GCC" = yes - then - AC_CACHE_CHECK(if $CC supports options to tune inlining,cf_cv_gcc_inline,[ -@@ -1057,7 +1187,44 @@ - AC_SUBST(DIRS_TO_MAKE) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_DISABLE_LEAKS version: 6 updated: 2010/07/23 04:14:32 -+dnl CF_DISABLE_ECHO version: 12 updated: 2012/10/06 16:30:28 -+dnl --------------- -+dnl You can always use "make -n" to see the actual options, but it's hard to -+dnl pick out/analyze warning messages when the compile-line is long. -+dnl -+dnl Sets: -+dnl ECHO_LT - symbol to control if libtool is verbose -+dnl ECHO_LD - symbol to prefix "cc -o" lines -+dnl RULE_CC - symbol to put before implicit "cc -c" lines (e.g., .c.o) -+dnl SHOW_CC - symbol to put before explicit "cc -c" lines -+dnl ECHO_CC - symbol to put before any "cc" line -+dnl -+AC_DEFUN([CF_DISABLE_ECHO],[ -+AC_MSG_CHECKING(if you want to see long compiling messages) -+CF_ARG_DISABLE(echo, -+ [ --disable-echo do not display "compiling" commands], -+ [ -+ ECHO_LT='--silent' -+ ECHO_LD='@echo linking [$]@;' -+ RULE_CC='@echo compiling [$]<' -+ SHOW_CC='@echo compiling [$]@' -+ ECHO_CC='@' -+],[ -+ ECHO_LT='' -+ ECHO_LD='' -+ RULE_CC='' -+ SHOW_CC='' -+ ECHO_CC='' -+]) -+AC_MSG_RESULT($enableval) -+AC_SUBST(ECHO_LT) -+AC_SUBST(ECHO_LD) -+AC_SUBST(RULE_CC) -+AC_SUBST(SHOW_CC) -+AC_SUBST(ECHO_CC) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_DISABLE_LEAKS version: 7 updated: 2012/10/02 20:55:03 - dnl ---------------- - dnl Combine no-leak checks with the libraries or tools that are used for the - dnl checks. -@@ -1075,8 +1242,8 @@ - AC_MSG_RESULT($with_no_leaks) - - if test "$with_no_leaks" = yes ; then -- AC_DEFINE(NO_LEAKS) -- AC_DEFINE(YY_NO_LEAKS) -+ AC_DEFINE(NO_LEAKS,1,[Define to 1 if you want to perform memory-leak testing.]) -+ AC_DEFINE(YY_NO_LEAKS,1,[Define to 1 if you want to perform memory-leak testing.]) - fi - ])dnl - dnl --------------------------------------------------------------------------- -@@ -1123,6 +1290,30 @@ - fi - ]) - dnl --------------------------------------------------------------------------- -+dnl CF_ENABLE_PC_FILES version: 9 updated: 2012/08/04 13:59:54 -+dnl ------------------ -+dnl This is the "--enable-pc-files" option, which is available if there is a -+dnl pkg-config configuration on the local machine. -+AC_DEFUN([CF_ENABLE_PC_FILES],[ -+AC_REQUIRE([CF_PKG_CONFIG]) -+AC_REQUIRE([CF_WITH_PKG_CONFIG_LIBDIR]) -+ -+if test "$PKG_CONFIG" != none ; then -+ AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG) -+ AC_ARG_ENABLE(pc-files, -+ [ --enable-pc-files generate and install .pc files for pkg-config], -+ [enable_pc_files=$enableval], -+ [enable_pc_files=no]) -+ AC_MSG_RESULT($enable_pc_files) -+ if test "$enable_pc_files" != no -+ then -+ CF_PATH_SYNTAX(PKG_CONFIG_LIBDIR) -+ fi -+else -+ enable_pc_files=no -+fi -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_ENABLE_RPATH version: 2 updated: 2010/03/27 18:39:42 - dnl --------------- - dnl Check if the rpath option should be used, setting cache variable -@@ -1137,6 +1328,37 @@ - AC_MSG_RESULT($cf_cv_enable_rpath) - ])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_ENABLE_STRING_HACKS version: 3 updated: 2013/01/26 16:26:12 -+dnl ---------------------- -+dnl On a few platforms, the compiler and/or loader nags with untruthful -+dnl comments stating that "most" uses of strcat/strcpy/sprintf are incorrect, -+dnl and implying that most uses of the recommended alternatives are correct. -+dnl -+dnl Factually speaking, no one has actually counted the number of uses of these -+dnl functions versus the total of incorrect uses. Samples of a few thousand -+dnl instances are meaningless compared to the hundreds of millions of lines of -+dnl existing C code. -+dnl -+dnl strlcat/strlcpy are (as of 2012) non-standard, and are available on some -+dnl platforms, in implementations of varying quality. Likewise, snprintf is -+dnl standard - but evolved through phases, and older implementations are likely -+dnl to yield surprising results, as documented in manpages on various systems. -+AC_DEFUN([CF_ENABLE_STRING_HACKS], -+[ -+AC_MSG_CHECKING(if you want to work around bogus compiler/loader warnings) -+AC_ARG_ENABLE(string-hacks, -+ [ --enable-string-hacks work around bogus compiler/loader warnings], -+ [with_string_hacks=$enableval], -+ [with_string_hacks=no]) -+AC_MSG_RESULT($with_string_hacks) -+ -+if test "x$with_string_hacks" = "xyes"; then -+ AC_DEFINE(USE_STRING_HACKS,1,[Define to 1 to work around bogus compiler/loader warnings]) -+ AC_MSG_WARN(enabling string-hacks to work around bogus compiler/loader warnings) -+ AC_CHECK_FUNCS( strlcat strlcpy snprintf ) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_ERRNO version: 5 updated: 1997/11/30 12:44:39 - dnl -------- - dnl Check if 'errno' is declared in -@@ -1145,7 +1367,7 @@ - CF_CHECK_ERRNO(errno) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ETIP_DEFINES version: 3 updated: 2003/03/22 19:13:43 -+dnl CF_ETIP_DEFINES version: 5 updated: 2012/02/18 17:51:07 - dnl --------------- - dnl Test for conflicting definitions of exception in gcc 2.8.0, etc., between - dnl math.h and builtin.h, only for ncurses -@@ -1154,11 +1376,17 @@ - AC_MSG_CHECKING(for special defines needed for etip.h) - cf_save_CXXFLAGS="$CXXFLAGS" - cf_result="none" -+ -+# etip.h includes ncurses.h which includes ncurses_dll.h -+# But ncurses_dll.h is generated - fix here. -+test -d include || mkdir include -+test -f include/ncurses_dll.h || sed -e 's/@NCURSES_WRAP_PREFIX@/'$NCURSES_WRAP_PREFIX'/g' ${srcdir}/include/ncurses_dll.h.in >include/ncurses_dll.h -+ - for cf_math in "" MATH_H - do - for cf_excp in "" MATH_EXCEPTION - do -- CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -I${srcdir}/include" -+ CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -Iinclude -I${srcdir}/include" - test -n "$cf_math" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_math}" - test -n "$cf_excp" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_excp}" - AC_TRY_COMPILE([ -@@ -1167,7 +1395,7 @@ - test -n "$cf_math" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_math}) - test -n "$cf_excp" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_excp}) - cf_result="$cf_math $cf_excp" -- break -+ break 2 - ],[]) - done - done -@@ -1305,7 +1533,35 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_FUNC_DLSYM version: 2 updated: 2010/05/29 16:31:02 -+dnl CF_FIXUP_ADAFLAGS version: 1 updated: 2012/03/31 18:48:10 -+dnl ----------------- -+dnl make ADAFLAGS consistent with CFLAGS -+AC_DEFUN([CF_FIXUP_ADAFLAGS],[ -+ AC_MSG_CHECKING(optimization options for ADAFLAGS) -+ case "$CFLAGS" in -+ *-g*) -+ CF_ADD_ADAFLAGS(-g) -+ ;; -+ esac -+ case "$CFLAGS" in -+ *-O*) -+ cf_O_flag=`echo "$CFLAGS" |sed -e 's/^.*-O/-O/' -e 's/[[ ]].*//'` -+ CF_ADD_ADAFLAGS($cf_O_flag) -+ ;; -+ esac -+ AC_MSG_RESULT($ADAFLAGS) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_FORGET_TOOL version: 1 updated: 2013/04/06 18:03:09 -+dnl -------------- -+dnl Forget that we saw the given tool. -+AC_DEFUN([CF_FORGET_TOOL],[ -+unset ac_cv_prog_ac_ct_$1 -+unset ac_ct_$1 -+unset $1 -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_FUNC_DLSYM version: 3 updated: 2012/10/06 11:17:15 - dnl ------------- - dnl Test for dlsym() and related functions, as well as libdl. - dnl -@@ -1332,7 +1588,7 @@ - dlclose(obj); - } - }],[ -- AC_DEFINE(HAVE_LIBDL)],[ -+ AC_DEFINE(HAVE_LIBDL,1,[Define to 1 if we have dl library])],[ - AC_MSG_ERROR(Cannot link test program for libdl)]) - AC_MSG_RESULT(ok) - else -@@ -1340,7 +1596,7 @@ - fi - ]) - dnl --------------------------------------------------------------------------- --dnl CF_FUNC_MEMMOVE version: 7 updated: 2006/12/16 12:33:30 -+dnl CF_FUNC_MEMMOVE version: 8 updated: 2012/10/04 20:12:20 - 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. -@@ -1365,13 +1621,13 @@ - ]) - ],[cf_cv_good_bcopy=no]) - if test "$cf_cv_good_bcopy" = yes ; then -- AC_DEFINE(USE_OK_BCOPY) -+ AC_DEFINE(USE_OK_BCOPY,1,[Define to 1 to use bcopy when memmove is unavailable]) - else -- AC_DEFINE(USE_MY_MEMMOVE) -+ AC_DEFINE(USE_MY_MEMMOVE,1,[Define to 1 to use replacement function when memmove is unavailable]) - fi - ])])dnl - dnl --------------------------------------------------------------------------- --dnl CF_FUNC_NANOSLEEP version: 3 updated: 2006/12/16 12:33:30 -+dnl CF_FUNC_NANOSLEEP version: 4 updated: 2012/10/06 17:56:13 - dnl ----------------- - dnl Check for existence of workable nanosleep() function. Some systems, e.g., - dnl AIX 4.x, provide a non-working version. -@@ -1402,7 +1658,7 @@ - [cf_cv_func_nanosleep=no], - [cf_cv_func_nanosleep=unknown])]) - --test "$cf_cv_func_nanosleep" = "yes" && AC_DEFINE(HAVE_NANOSLEEP) -+test "$cf_cv_func_nanosleep" = "yes" && AC_DEFINE(HAVE_NANOSLEEP,1,[Define to 1 if we have nanosleep()]) - ]) - dnl --------------------------------------------------------------------------- - dnl CF_FUNC_OPENPTY version: 3 updated: 2010/05/29 16:31:02 -@@ -1433,14 +1689,17 @@ - ]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_FUNC_POLL version: 4 updated: 2006/12/16 12:33:30 -+dnl CF_FUNC_POLL version: 8 updated: 2012/10/04 05:24: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],[ - AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[ - AC_TRY_RUN([ -+#include - #include -+#include -+#include - #ifdef HAVE_POLL_H - #include - #else -@@ -1450,19 +1709,42 @@ - struct pollfd myfds; - int ret; - -- myfds.fd = 0; -+ /* check for Darwin bug with respect to "devices" */ -+ myfds.fd = open("/dev/null", 1); /* O_WRONLY */ -+ if (myfds.fd < 0) -+ myfds.fd = 0; - myfds.events = POLLIN; -+ myfds.revents = 0; - - ret = poll(&myfds, 1, 100); -- ${cf_cv_main_return:-return}(ret != 0); -+ -+ if (ret < 0 || (myfds.revents & POLLNVAL)) { -+ ret = -1; -+ } else { -+ int fd = 0; -+ if (!isatty(fd)) { -+ fd = open("/dev/tty", 2); /* O_RDWR */ -+ } -+ -+ if (fd >= 0) { -+ /* also check with standard input */ -+ myfds.fd = fd; -+ myfds.events = POLLIN; -+ myfds.revents = 0; -+ ret = poll(&myfds, 1, 100); -+ } else { -+ ret = -1; -+ } -+ } -+ ${cf_cv_main_return:-return}(ret < 0); - }], - [cf_cv_working_poll=yes], - [cf_cv_working_poll=no], - [cf_cv_working_poll=unknown])]) --test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL) -+test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL,1,[Define to 1 if the poll function seems to work]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_FUNC_TERMIOS version: 2 updated: 2000/07/22 23:37:24 -+dnl CF_FUNC_TERMIOS version: 3 updated: 2012/10/06 17:56:13 - dnl --------------- - dnl Some old/broken variations define tcgetattr() only as a macro in - dnl termio(s).h -@@ -1488,10 +1770,10 @@ - tcgetattr(1, &foo);], - [cf_cv_have_tcgetattr=yes], - [cf_cv_have_tcgetattr=no])]) --test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR) -+test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR,1,[Define to 1 if we have tcgetattr]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_FUNC_VSSCANF version: 3 updated: 2001/12/19 00:50:10 -+dnl CF_FUNC_VSSCANF version: 4 updated: 2012/10/06 17:56:13 - dnl --------------- - dnl Check for vsscanf() function, which is in c9x but generally not in earlier - dnl versions of C. It is in the GNU C library, and can often be simulated by -@@ -1529,14 +1811,14 @@ - cf_cv_func_vsscanf=no])])])]) - - case $cf_cv_func_vsscanf in #(vi --vsscanf) AC_DEFINE(HAVE_VSSCANF);; #(vi --vfscanf) AC_DEFINE(HAVE_VFSCANF);; #(vi --_doscan) AC_DEFINE(HAVE__DOSCAN);; -+vsscanf) AC_DEFINE(HAVE_VSSCANF,1,[Define to 1 if we have vsscanf]);; #(vi -+vfscanf) AC_DEFINE(HAVE_VFSCANF,1,[Define to 1 if we have vfscanf]);; #(vi -+_doscan) AC_DEFINE(HAVE__DOSCAN,1,[Define to 1 if we have _doscan]);; - esac - - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_GCC_ATTRIBUTES version: 14 updated: 2010/10/23 15:52:32 -+dnl CF_GCC_ATTRIBUTES version: 16 updated: 2012/10/02 20:55:03 - dnl ----------------- - dnl Test for availability of useful gcc __attribute__ directives to quiet - dnl compiler warnings. Though useful, not all are supported -- and contrary -@@ -1614,27 +1896,27 @@ - test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute) - cat conftest.h >>confdefs.h - case $cf_attribute in #(vi -+ noreturn) #(vi -+ AC_DEFINE_UNQUOTED(GCC_NORETURN,$cf_directive,[Define to noreturn-attribute for gcc]) -+ ;; - printf) #(vi -- if test "$cf_printf_attribute" = no ; then -- cat >>confdefs.h <>confdefs.h <>confdefs.h <>confdefs.h < conftest.$ac_ext <], -+[int x = optind; char *y = optarg], -+[cf_cv_getopt_header=$cf_header -+ break]) -+done -+]) -+if test $cf_cv_getopt_header != none ; then -+ AC_DEFINE(HAVE_GETOPT_HEADER,1,[Define to 1 if we need to include getopt.h]) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_GNAT_GENERICS version: 2 updated: 2011/03/23 20:24:41 - dnl ---------------- - AC_DEFUN([CF_GNAT_GENERICS], -@@ -1828,7 +2145,7 @@ - AC_SUBST(PRAGMA_UNREF) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_GNAT_PROJECTS version: 2 updated: 2011/03/23 20:24:41 -+dnl CF_GNAT_PROJECTS version: 4 updated: 2013/09/07 14:05:46 - dnl ---------------- - dnl GNAT projects are configured with ".gpr" project files. - dnl GNAT libraries are a further development, using the project feature. -@@ -1845,7 +2162,7 @@ - ;; - *) - case $cf_cv_system_name in #(vi -- cygwin*) #(vi -+ cygwin*|msys*) #(vi - ;; - *) - mkdir conftest.src conftest.bin conftest.lib -@@ -2040,7 +2357,7 @@ - rm -rf conftest* *~conftest* - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_GNAT_VERSION version: 17 updated: 2011/03/23 20:24:41 -+dnl CF_GNAT_VERSION version: 18 updated: 2012/01/21 19:28:10 - dnl --------------- - dnl Verify version of GNAT. - AC_DEFUN([CF_GNAT_VERSION], -@@ -2052,7 +2369,7 @@ - AC_MSG_RESULT($cf_gnat_version) - - case $cf_gnat_version in #(vi --3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*) #(vi -+3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*|20[[0-9]][[0-9]]) #(vi - cf_cv_prog_gnat_correct=yes - ;; - *) -@@ -2092,7 +2409,7 @@ - test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_GPP_LIBRARY version: 10 updated: 2010/05/29 16:31:02 -+dnl CF_GPP_LIBRARY version: 11 updated: 2012/10/06 17:56:13 - dnl -------------- - dnl If we're trying to use g++, test if libg++ is installed (a rather common - dnl problem :-). If we have the compiler but no library, we'll be able to -@@ -2119,9 +2436,9 @@ - [cf_cxx_library=yes - CF_ADD_LIB($cf_gpp_libname,CXXLIBS) - if test "$cf_gpp_libname" = cpp ; then -- AC_DEFINE(HAVE_GPP_BUILTIN_H) -+ AC_DEFINE(HAVE_GPP_BUILTIN_H,1,[Define to 1 if we have gpp builtin.h]) - else -- AC_DEFINE(HAVE_GXX_BUILTIN_H) -+ AC_DEFINE(HAVE_GXX_BUILTIN_H,1,[Define to 1 if we have g++ builtin.h]) - fi], - [AC_TRY_LINK([ - #include -@@ -2129,28 +2446,28 @@ - [two_arg_error_handler_t foo2 = lib_error_handler], - [cf_cxx_library=yes - CF_ADD_LIB($cf_gpp_libname,CXXLIBS) -- AC_DEFINE(HAVE_BUILTIN_H)], -+ AC_DEFINE(HAVE_BUILTIN_H,1,[Define to 1 if we have builtin.h])], - [cf_cxx_library=no])]) - LIBS="$cf_save" - AC_MSG_RESULT($cf_cxx_library) - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_GXX_VERSION version: 6 updated: 2010/10/23 15:44:18 -+dnl CF_GXX_VERSION version: 7 updated: 2012/06/16 14:55:39 - dnl -------------- - dnl Check for version of g++ - AC_DEFUN([CF_GXX_VERSION],[ - AC_REQUIRE([AC_PROG_CPP]) - GXX_VERSION=none - if test "$GXX" = yes; then -- AC_MSG_CHECKING(version of g++) -+ AC_MSG_CHECKING(version of ${CXX:-g++}) - GXX_VERSION="`${CXX:-g++} --version| sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`" - test -z "$GXX_VERSION" && GXX_VERSION=unknown - AC_MSG_RESULT($GXX_VERSION) - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_GXX_WARNINGS version: 6 updated: 2010/08/14 18:25:37 -+dnl CF_GXX_WARNINGS version: 8 updated: 2013/11/16 14:27:53 - dnl --------------- - dnl Check if the compiler supports useful warning options. - dnl -@@ -2173,6 +2490,7 @@ - [ - - CF_INTEL_COMPILER(GXX,INTEL_CPLUSPLUS,CXXFLAGS) -+CF_CLANG_COMPILER(GXX,CLANG_CPLUSPLUS,CXXFLAGS) - - AC_REQUIRE([CF_GXX_VERSION]) - -@@ -2238,16 +2556,17 @@ - for cf_opt in \ - Wabi \ - fabi-version=0 \ -+ Wextra \ -+ Wignored-qualifiers \ -+ Wlogical-op \ - Woverloaded-virtual \ - Wsign-promo \ - Wsynth \ - Wold-style-cast \ - Wcast-align \ - Wcast-qual \ -- Wmissing-prototypes \ - Wpointer-arith \ - Wshadow \ -- Wstrict-prototypes \ - Wundef $cf_gxx_extra_warnings $1 - do - CXXFLAGS="$cf_save_CXXFLAGS $EXTRA_CXXFLAGS -Werror -$cf_opt" -@@ -2464,7 +2783,7 @@ - [AC_DIVERT_HELP([$1])dnl - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_INCLUDE_DIRS version: 6 updated: 2009/01/06 19:37:40 -+dnl CF_INCLUDE_DIRS version: 8 updated: 2013/10/12 16:45:09 - dnl --------------- - dnl Construct the list of include-options according to whether we're building - dnl in the source directory or using '--srcdir=DIR' option. If we're building -@@ -2472,25 +2791,25 @@ - dnl since that usually breaks gcc's shadow-includes. - AC_DEFUN([CF_INCLUDE_DIRS], - [ --CPPFLAGS="$CPPFLAGS -I. -I../include" --if test "$srcdir" != "."; then -- CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include" --fi - if test "$GCC" != yes; then -- CPPFLAGS="$CPPFLAGS -I\${includedir}" -+ CPPFLAGS="-I\${includedir} $CPPFLAGS" - elif test "$includedir" != "/usr/include"; then - if test "$includedir" = '${prefix}/include' ; then -- if test $prefix != /usr ; then -- CPPFLAGS="$CPPFLAGS -I\${includedir}" -+ if test x$prefix != x/usr ; then -+ CPPFLAGS="-I\${includedir} $CPPFLAGS" - fi - else -- CPPFLAGS="$CPPFLAGS -I\${includedir}" -+ CPPFLAGS="-I\${includedir} $CPPFLAGS" - fi - fi -+if test "$srcdir" != "."; then -+ CPPFLAGS="-I\${srcdir}/../include $CPPFLAGS" -+fi -+CPPFLAGS="-I. -I../include $CPPFLAGS" - AC_SUBST(CPPFLAGS) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_INTEL_COMPILER version: 4 updated: 2010/05/26 05:38:42 -+dnl CF_INTEL_COMPILER version: 5 updated: 2013/02/10 10:41:05 - dnl ----------------- - dnl Check if the given compiler is really the Intel compiler for Linux. It - dnl tries to imitate gcc, but does not return an error when it finds a mismatch -@@ -2504,6 +2823,7 @@ - dnl $2 = INTEL_COMPILER (default) or INTEL_CPLUSPLUS - dnl $3 = CFLAGS (default) or CXXFLAGS - AC_DEFUN([CF_INTEL_COMPILER],[ -+AC_REQUIRE([AC_CANONICAL_HOST]) - ifelse([$2],,INTEL_COMPILER,[$2])=no - - if test "$ifelse([$1],,[$1],GCC)" = yes ; then -@@ -2527,7 +2847,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ISASCII version: 3 updated: 2000/08/12 23:18:52 -+dnl CF_ISASCII version: 4 updated: 2012/10/06 17:56:13 - dnl ---------- - dnl Check if we have either a function or macro for 'isascii()'. - AC_DEFUN([CF_ISASCII], -@@ -2539,10 +2859,10 @@ - [cf_cv_have_isascii=no]) - ])dnl - AC_MSG_RESULT($cf_cv_have_isascii) --test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII) -+test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII,1,[Define to 1 if we have isascii()]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_LARGEFILE version: 7 updated: 2007/06/02 11:58:50 -+dnl CF_LARGEFILE version: 8 updated: 2012/10/06 08:57:51 - dnl ------------ - dnl Add checks for large file support. - AC_DEFUN([CF_LARGEFILE],[ -@@ -2576,12 +2896,12 @@ - [cf_cv_struct_dirent64=yes], - [cf_cv_struct_dirent64=no]) - ]) -- test "$cf_cv_struct_dirent64" = yes && AC_DEFINE(HAVE_STRUCT_DIRENT64) -+ test "$cf_cv_struct_dirent64" = yes && AC_DEFINE(HAVE_STRUCT_DIRENT64,1,[Define to 1 if we have struct dirent64]) - fi - ]) - ]) - dnl --------------------------------------------------------------------------- --dnl CF_LDFLAGS_STATIC version: 8 updated: 2010/10/23 14:39:56 -+dnl CF_LDFLAGS_STATIC version: 10 updated: 2011/09/24 12:51:48 - dnl ----------------- - dnl Check for compiler/linker flags used to temporarily force usage of static - dnl libraries. This depends on the compiler and platform. Use this to help -@@ -2602,7 +2922,7 @@ - esac - else - case $cf_cv_system_name in #( -- aix[[456]]*) #( from ld manpage -+ aix[[4-7]]*) #( from ld manpage - LDFLAGS_STATIC=-bstatic - LDFLAGS_SHARED=-bdynamic - ;; -@@ -2652,7 +2972,17 @@ - int cf_ldflags_static(FILE *fp); - ],[ - return cf_ldflags_static(stdin); --],[cf_ldflags_static=yes],[cf_ldflags_static=no]) -+],[ -+ # some linkers simply ignore the -dynamic -+ case x`file conftest$ac_exeext 2>/dev/null` in #(vi -+ *static*) # (vi -+ cf_ldflags_static=no -+ ;; -+ *) -+ cf_ldflags_static=yes -+ ;; -+ esac -+],[cf_ldflags_static=no]) - - rm -f libconftest.* - LIBS="$cf_save_LIBS" -@@ -2673,7 +3003,7 @@ - AC_SUBST(LDFLAGS_SHARED) - ]) - dnl --------------------------------------------------------------------------- --dnl CF_LD_RPATH_OPT version: 3 updated: 2010/06/02 05:03:05 -+dnl CF_LD_RPATH_OPT version: 5 updated: 2011/07/17 14:48:41 - dnl --------------- - dnl For the given system and compiler, find the compiler flags to pass to the - dnl loader to use the "rpath" feature. -@@ -2694,10 +3024,10 @@ - linux*|gnu*|k*bsd*-gnu) #(vi - LD_RPATH_OPT="-Wl,-rpath," - ;; --openbsd[[2-9]].*) #(vi -+openbsd[[2-9]].*|mirbsd*) #(vi - LD_RPATH_OPT="-Wl,-rpath," - ;; --freebsd*) #(vi -+dragonfly*|freebsd*) #(vi - LD_RPATH_OPT="-rpath " - ;; - netbsd*) #(vi -@@ -2756,11 +3086,23 @@ - $1="$cf_library_path_list [$]$1" - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_LIB_PREFIX version: 8 updated: 2008/09/13 11:34:16 -+dnl CF_LIBTOOL_VERSION version: 1 updated: 2013/04/06 18:03:09 -+dnl ------------------ -+AC_DEFUN([CF_LIBTOOL_VERSION],[ -+if test -n "$LIBTOOL" && test "$LIBTOOL" != none -+then -+ cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([[^)]]*)//g' -e 's/^[[^1-9]]*//' -e 's/[[^0-9.]].*//'` -+else -+ cf_cv_libtool_version= -+fi -+test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIB_PREFIX version: 9 updated: 2012/01/21 19:28:10 - dnl ------------- - dnl Compute the library-prefix for the given host system - dnl $1 = variable to set --AC_DEFUN([CF_LIB_PREFIX], -+define([CF_LIB_PREFIX], - [ - case $cf_cv_system_name in #(vi - OS/2*|os2*) #(vi -@@ -2773,11 +3115,11 @@ - AC_SUBST(LIB_PREFIX) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_LIB_RULES version: 61 updated: 2010/10/23 16:10:30 -+dnl CF_LIB_RULES version: 74 updated: 2013/09/07 13:54:05 - dnl ------------ - dnl Append definitions and rules for the given models to the subdirectory - dnl Makefiles, and the recursion rule for the top-level Makefile. If the --dnl subdirectory is a library-source directory, modify the LIBS_TO_MAKE list in -+dnl subdirectory is a library-source directory, modify the Libs_To_Make list in - dnl the corresponding makefile to list the models that we'll generate. - dnl - dnl For shared libraries, make a list of symbolic links to construct when -@@ -2786,15 +3128,19 @@ - dnl lib.so -> - dnl lib.so. -> - dnl lib.so.. -+dnl -+dnl Note: Libs_To_Make is mixed case, since it is not a pure autoconf variable. - AC_DEFUN([CF_LIB_RULES], - [ --CF_LIB_PREFIX(cf_prefix) -+cf_prefix=$LIB_PREFIX - AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) - --if test $cf_cv_shlib_version = cygdll ; then -+case $cf_cv_shlib_version in #(vi -+cygdll|msysdll|mingw) - TINFO_NAME=$TINFO_ARG_SUFFIX - TINFO_SUFFIX=.dll --fi -+ ;; -+esac - - if test -n "$TINFO_SUFFIX" ; then - case $TINFO_SUFFIX in -@@ -2820,79 +3166,78 @@ - elif test -f $srcdir/$cf_dir/modules; then - - SHARED_LIB= -- LIBS_TO_MAKE= -+ Libs_To_Make= - for cf_item in $cf_LIST_MODELS - do - CF_LIB_SUFFIX($cf_item,cf_suffix,cf_depsuf) -+ cf_libname=$cf_dir -+ test "$cf_dir" = c++ && cf_libname=ncurses++ - if test $cf_item = shared ; then -- if test "$cf_cv_do_symlinks" = yes ; then -- case "$cf_cv_shlib_version" in #(vi -- rel) #(vi -- case "$cf_cv_system_name" in #(vi -- darwin*) -- case .${LIB_SUFFIX} in -- .tw*) -- cf_suffix=`echo $cf_suffix | sed 's/^tw//'` -- cf_suffix=tw'.${REL_VERSION}'"$cf_suffix" -- ;; -- .t*) -- cf_suffix=`echo $cf_suffix | sed 's/^t//'` -- cf_suffix=t'.${REL_VERSION}'"$cf_suffix" -- ;; -- .w*) -- cf_suffix=`echo $cf_suffix | sed 's/^w//'` -- cf_suffix=w'.${REL_VERSION}'"$cf_suffix" -+ if test -n "${LIB_SUFFIX}" -+ then -+ cf_shared_suffix=`echo "$cf_suffix" | sed 's/^'"${LIB_SUFFIX}"'//'` -+ else -+ cf_shared_suffix="$cf_suffix" -+ fi -+ if test "$cf_cv_do_symlinks" = yes ; then -+ cf_version_name= -+ -+ case "$cf_cv_shlib_version" in #(vi -+ rel) #(vi -+ cf_version_name=REL_VERSION - ;; -- *) -- cf_suffix='.${REL_VERSION}'"$cf_suffix" -+ abi) -+ cf_version_name=ABI_VERSION - ;; - esac -- ;; #(vi -- *) cf_suffix="$cf_suffix"'.${REL_VERSION}' ;; -- esac -+ -+ if test -n "$cf_version_name" -+ then -+ case "$cf_cv_system_name" in #(vi -+ darwin*) -+ # "w", etc? -+ cf_suffix="${LIB_SUFFIX}"'.${'$cf_version_name'}'"$cf_shared_suffix" -+ ;; #(vi -+ *) -+ cf_suffix="$cf_suffix"'.${'$cf_version_name'}' -+ ;; -+ esac -+ fi -+ if test -n "${LIB_SUFFIX}" -+ then -+ cf_shared_suffix=`echo "$cf_suffix" | sed 's/^'"${LIB_SUFFIX}"'//'` -+ else -+ cf_shared_suffix="$cf_suffix" -+ fi -+ fi -+ # cygwin needs import library, and has unique naming convention -+ # use autodetected ${cf_prefix} for import lib and static lib, but -+ # use 'cyg' prefix for shared lib. -+ case $cf_cv_shlib_version in #(vi -+ cygdll) #(vi -+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'` -+ Libs_To_Make="$Libs_To_Make ../lib/cyg${cf_libname}${cf_cygsuf}" -+ continue - ;; -- abi) -- case "$cf_cv_system_name" in #(vi -- darwin*) -- case .${LIB_SUFFIX} in -- .tw*) -- cf_suffix=`echo $cf_suffix | sed 's/^tw//'` -- cf_suffix=tw'.${ABI_VERSION}'"$cf_suffix" -- ;; -- .t*) -- cf_suffix=`echo $cf_suffix | sed 's/^t//'` -- cf_suffix=t'.${ABI_VERSION}'"$cf_suffix" -- ;; -- .w*) -- cf_suffix=`echo $cf_suffix | sed 's/^w//'` -- cf_suffix=w'.${ABI_VERSION}'"$cf_suffix" -- ;; -- *) -- cf_suffix='.${ABI_VERSION}'"$cf_suffix" -- ;; -- esac -- ;; #(vi -- *) cf_suffix="$cf_suffix"'.${ABI_VERSION}' ;; -- esac -+ msysdll) #(vi -+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'` -+ Libs_To_Make="$Libs_To_Make ../lib/msys-${cf_libname}${cf_cygsuf}" -+ continue -+ ;; -+ mingw) -+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'` -+ Libs_To_Make="$Libs_To_Make ../lib/lib${cf_libname}${cf_cygsuf}" -+ continue - ;; - esac - fi -- # cygwin needs import library, and has unique naming convention -- # use autodetected ${cf_prefix} for import lib and static lib, but -- # use 'cyg' prefix for shared lib. -- if test $cf_cv_shlib_version = cygdll ; then -- cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'` -- LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/cyg${cf_dir}${cf_cygsuf}" -- continue -- fi -- fi -- LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/${cf_prefix}${cf_dir}${cf_suffix}" -+ Libs_To_Make="$Libs_To_Make ../lib/${cf_prefix}${cf_libname}${cf_suffix}" - done - - if test $cf_dir = ncurses ; then - cf_subsets="$LIB_SUBSETS" - cf_r_parts="$cf_subsets" -- cf_liblist="$LIBS_TO_MAKE" -+ cf_liblist="$Libs_To_Make" - - while test -n "$cf_r_parts" - do -@@ -2912,7 +3257,7 @@ - ;; - esac - if test -n "$cf_item"; then -- LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE" -+ Libs_To_Make="$cf_item $Libs_To_Make" - fi - else - break -@@ -2922,13 +3267,40 @@ - cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'` - fi - -- sed -e "s%@LIBS_TO_MAKE@%$LIBS_TO_MAKE%" \ -+ if test $cf_dir = c++; then -+ if test "x$with_shared_cxx" != xyes && test -n "$cf_shared_suffix"; then -+ cf_list= -+ for cf_item in $Libs_To_Make -+ do -+ case $cf_item in -+ *.a) -+ ;; -+ *) -+ cf_item=`echo "$cf_item" | sed -e "s,"$cf_shared_suffix",.a,"` -+ ;; -+ esac -+ for cf_test in $cf_list -+ do -+ if test "$cf_test" = "$cf_item" -+ then -+ cf_LIST_MODELS=`echo "$cf_LIST_MODELS" | sed -e 's/normal//'` -+ cf_item= -+ break -+ fi -+ done -+ test -n "$cf_item" && cf_list="$cf_list $cf_item" -+ done -+ Libs_To_Make="$cf_list" -+ fi -+ fi -+ -+ sed -e "s%@Libs_To_Make@%$Libs_To_Make%" \ - -e "s%@SHARED_LIB@%$SHARED_LIB%" \ - $cf_dir/Makefile >$cf_dir/Makefile.out - mv $cf_dir/Makefile.out $cf_dir/Makefile - - $AWK -f $srcdir/mk-0th.awk \ -- libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" \ -+ libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" ticlib="$TICS_LIB_SUFFIX" termlib="$TINFO_LIB_SUFFIX" \ - $srcdir/$cf_dir/modules >>$cf_dir/Makefile - - for cf_subset in $cf_subsets -@@ -2936,8 +3308,23 @@ - cf_subdirs= - for cf_item in $cf_LIST_MODELS - do -+ - echo "Appending rules for ${cf_item} model (${cf_dir}: ${cf_subset})" - CF_UPPER(cf_ITEM,$cf_item) -+ -+ CXX_MODEL=$cf_ITEM -+ if test "$CXX_MODEL" = SHARED; then -+ case $cf_cv_shlib_version in #(vi -+ cygdll|msysdll|mingw) #(vi -+ test "x$with_shared_cxx" = xno && CF_VERBOSE(overriding CXX_MODEL to SHARED) -+ with_shared_cxx=yes -+ ;; -+ *) -+ test "x$with_shared_cxx" = xno && CXX_MODEL=NORMAL -+ ;; -+ esac -+ fi -+ - CF_LIB_SUFFIX($cf_item,cf_suffix,cf_depsuf) - CF_OBJ_SUBDIR($cf_item,cf_subdir) - -@@ -2955,6 +3342,8 @@ - cf_libname=$TICS_LIB_SUFFIX - ;; - esac -+ elif test $cf_dir = c++ ; then -+ cf_libname=ncurses++$LIB_SUFFIX - else - cf_libname=${cf_libname}$LIB_SUFFIX - fi -@@ -3006,10 +3395,12 @@ - name=${cf_libname}${cf_dir_suffix} \ - traces=$LIB_TRACING \ - MODEL=$cf_ITEM \ -+ CXX_MODEL=$CXX_MODEL \ - model=$cf_subdir \ - prefix=$cf_prefix \ - suffix=$cf_suffix \ - subset=$cf_subset \ -+ driver=$cf_cv_term_driver \ - SymLink="$LN_S" \ - TermlibRoot=$TINFO_NAME \ - TermlibSuffix=$TINFO_SUFFIX \ -@@ -3048,7 +3439,7 @@ - done - fi - -- echo ' cd '$cf_dir' && ${MAKE} ${CF_MFLAGS} [$]@' >>Makefile -+ echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} [$]@' >>Makefile - done - - for cf_dir in $SRC_SUBDIRS -@@ -3063,7 +3454,7 @@ - echo 'libs \' >> Makefile - echo 'install.libs \' >> Makefile - echo 'uninstall.libs ::' >> Makefile -- echo ' cd '$cf_dir' && ${MAKE} ${CF_MFLAGS} [$]@' >> Makefile -+ echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} [$]@' >> Makefile - ;; - esac - fi -@@ -3086,7 +3477,7 @@ - uninstall.libs \\ - install.$cf_dir \\ - uninstall.$cf_dir :: -- cd $cf_dir && \${MAKE} \${CF_MFLAGS} \[$]@ -+ cd $cf_dir && \${MAKE} \${TOP_MFLAGS} \[$]@ - CF_EOF - elif test -f $srcdir/$cf_dir/headers; then - cat >> Makefile <> Makefile <> Makefile <>$cf_man_alias <<-CF_EOF2 - s,@DATADIR@,\$datadir,g -- s,@TERMINFO@,\$TERMINFO,g -- s,@NCURSES_MAJOR@,\$NCURSES_MAJOR,g -- s,@NCURSES_MINOR@,\$NCURSES_MINOR,g -- s,@NCURSES_PATCH@,\$NCURSES_PATCH,g -- s,@NCURSES_OSPEED@,\$NCURSES_OSPEED,g -+ s,@TERMINFO@,\${TERMINFO:="no default value"},g -+ s,@TERMINFO_DIRS@,\${TERMINFO_DIRS:="no default value"},g -+ s,@NCURSES_MAJOR@,\${NCURSES_MAJOR:="no default value"},g -+ s,@NCURSES_MINOR@,\${NCURSES_MINOR:="no default value"},g -+ s,@NCURSES_PATCH@,\${NCURSES_PATCH:="no default value"},g -+ s,@NCURSES_OSPEED@,\${NCURSES_OSPEED:="no default value"},g - CF_EOF - ifelse($1,,,[ - for cf_name in $1 -@@ -3949,7 +4333,9 @@ - - if test "$MANPAGE_ALIASES" != no ; then - cat >>$cf_edit_man <>$cf_edit_man <\$TMP.out -+ mv \$TMP.out \$TMP -+CF_EOF -+fi -+ - if test $with_curses_h != yes ; then - cat >>$cf_edit_man <\$TMP.out -@@ -4154,7 +4547,7 @@ - fi - ]) - dnl --------------------------------------------------------------------------- --dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55 -+dnl CF_MIXEDCASE_FILENAMES version: 6 updated: 2013/10/08 17:47:05 - dnl ---------------------- - dnl Check if the file-system supports mixed-case filenames. If we're able to - dnl create a lowercase name and see it as uppercase, it doesn't support that. -@@ -4163,7 +4556,7 @@ - AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[ - if test "$cross_compiling" = yes ; then - case $target_alias in #(vi -- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi -+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi - cf_cv_mixedcase=no - ;; - *) -@@ -4181,10 +4574,10 @@ - rm -f conftest CONFTEST - fi - ]) --test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES) -+test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES,1,[Define to 1 if filesystem supports mixed-case filenames.]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_MKSTEMP version: 7 updated: 2010/08/14 18:25:37 -+dnl CF_MKSTEMP version: 9 updated: 2012/10/03 04:34:49 - dnl ---------- - dnl Check for a working mkstemp. This creates two files, checks that they are - dnl successfully created and distinct (AmigaOS apparently fails on the last). -@@ -4226,11 +4619,13 @@ - } - ],[cf_cv_func_mkstemp=yes - ],[cf_cv_func_mkstemp=no --],[AC_CHECK_FUNC(mkstemp) --]) -+],[cf_cv_func_mkstemp=maybe]) - ]) -+if test "x$cf_cv_func_mkstemp" = xmaybe ; then -+ AC_CHECK_FUNC(mkstemp) -+fi - if test "x$cf_cv_func_mkstemp" = xyes || test "x$ac_cv_func_mkstemp" = xyes ; then -- AC_DEFINE(HAVE_MKSTEMP) -+ AC_DEFINE(HAVE_MKSTEMP,1,[Define to 1 if mkstemp() is available and working.]) - fi - ])dnl - dnl --------------------------------------------------------------------------- -@@ -4258,14 +4653,14 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NO_LEAKS_OPTION version: 4 updated: 2006/12/16 14:24:05 -+dnl CF_NO_LEAKS_OPTION version: 5 updated: 2012/10/02 20:55:03 - dnl ------------------ - dnl see CF_WITH_NO_LEAKS - AC_DEFUN([CF_NO_LEAKS_OPTION],[ - AC_MSG_CHECKING(if you want to use $1 for testing) - AC_ARG_WITH($1, - [$2], -- [AC_DEFINE($3)ifelse([$4],,[ -+ [AC_DEFINE_UNQUOTED($3,1,"Define to 1 if you want to use $1 for testing.")ifelse([$4],,[ - $4 - ]) - : ${with_cflags:=-g} -@@ -4306,7 +4701,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_OBJ_SUBDIR version: 4 updated: 2002/02/23 20:38:31 -+dnl CF_OBJ_SUBDIR version: 6 updated: 2013/09/07 14:06:10 - dnl ------------- - dnl Compute the object-directory name from the given model name - AC_DEFUN([CF_OBJ_SUBDIR], -@@ -4318,7 +4713,7 @@ - profile) $2='obj_p' ;; - shared) - case $cf_cv_system_name in #(vi -- cygwin) #(vi -+ cygwin|msys) #(vi - $2='objects' ;; - *) - $2='obj_s' ;; -@@ -4326,20 +4721,23 @@ - esac - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PATHSEP version: 5 updated: 2010/05/26 05:38:42 -+dnl CF_PATHSEP version: 6 updated: 2012/09/29 18:38:12 - dnl ---------- --dnl Provide a value for the $PATH and similar separator -+dnl Provide a value for the $PATH and similar separator (or amend the value -+dnl as provided in autoconf 2.5x). - AC_DEFUN([CF_PATHSEP], - [ -+ AC_MSG_CHECKING(for PATH separator) - case $cf_cv_system_name in - os2*) PATH_SEPARATOR=';' ;; -- *) PATH_SEPARATOR=':' ;; -+ *) ${PATH_SEPARATOR:=':'} ;; - esac - ifelse([$1],,,[$1=$PATH_SEPARATOR]) - AC_SUBST(PATH_SEPARATOR) -+ AC_MSG_RESULT($PATH_SEPARATOR) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PATH_SYNTAX version: 13 updated: 2010/05/26 05:38:42 -+dnl CF_PATH_SYNTAX version: 14 updated: 2012/06/19 20:58:54 - dnl -------------- - dnl Check the argument to see that it looks like a pathname. Rewrite it if it - dnl begins with one of the prefix/exec_prefix variables, and then again if the -@@ -4359,7 +4757,7 @@ - ;; - .[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX - ;; --.\[$]{*prefix}*) #(vi -+.\[$]{*prefix}*|.\[$]{*dir}*) #(vi - eval $1="[$]$1" - case ".[$]$1" in #(vi - .NONE/*) -@@ -4376,7 +4774,7 @@ - esac - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PKG_CONFIG version: 4 updated: 2011/02/18 20:26:24 -+dnl CF_PKG_CONFIG version: 7 updated: 2011/04/29 04:53:22 - dnl ------------- - dnl Check for the package-config program, unless disabled by command-line. - AC_DEFUN([CF_PKG_CONFIG], -@@ -4393,7 +4791,9 @@ - PKG_CONFIG=none - ;; - yes) #(vi -- AC_PATH_TOOL(PKG_CONFIG, pkg-config, none) -+ CF_ACVERSION_CHECK(2.52, -+ [AC_PATH_TOOL(PKG_CONFIG, pkg-config, none)], -+ [AC_PATH_PROG(PKG_CONFIG, pkg-config, none)]) - ;; - *) - PKG_CONFIG=$withval -@@ -4554,6 +4954,19 @@ - test -z "$AWK" && AC_MSG_ERROR(No awk program found) - ])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_PROG_CC version: 3 updated: 2012/10/06 15:31:55 -+dnl ---------- -+dnl standard check for CC, plus followup sanity checks -+dnl $1 = optional parameter to pass to AC_PROG_CC to specify compiler name -+AC_DEFUN([CF_PROG_CC],[ -+ifelse($1,,[AC_PROG_CC],[AC_PROG_CC($1)]) -+CF_GCC_VERSION -+CF_ACVERSION_CHECK(2.52, -+ [AC_PROG_CC_STDC], -+ [CF_ANSI_CC_REQD]) -+CF_CC_ENV_FLAGS -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_PROG_CC_C_O version: 3 updated: 2010/08/14 18:25:37 - dnl -------------- - dnl Analogous to AC_PROG_CC_C_O, but more useful: tests only $CC, ensures that -@@ -4593,31 +5006,6 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PROG_CC_U_D version: 1 updated: 2005/07/14 16:59:30 --dnl -------------- --dnl Check if C (preprocessor) -U and -D options are processed in the order --dnl given rather than by type of option. Some compilers insist on apply all --dnl of the -U options after all of the -D options. Others allow mixing them, --dnl and may predefine symbols that conflict with those we define. --AC_DEFUN([CF_PROG_CC_U_D], --[ --AC_CACHE_CHECK(if $CC -U and -D options work together,cf_cv_cc_u_d_options,[ -- cf_save_CPPFLAGS="$CPPFLAGS" -- CPPFLAGS="-UU_D_OPTIONS -DU_D_OPTIONS -DD_U_OPTIONS -UD_U_OPTIONS" -- AC_TRY_COMPILE([],[ --#ifndef U_D_OPTIONS --make an undefined-error --#endif --#ifdef D_U_OPTIONS --make a defined-error --#endif -- ],[ -- cf_cv_cc_u_d_options=yes],[ -- cf_cv_cc_u_d_options=no]) -- CPPFLAGS="$cf_save_CPPFLAGS" --]) --])dnl --dnl --------------------------------------------------------------------------- - dnl CF_PROG_EGREP version: 1 updated: 2006/09/16 11:40:59 - dnl ------------- - dnl AC_PROG_EGREP was introduced in autoconf 2.53. -@@ -4633,32 +5021,7 @@ - test -z "$EGREP" && AC_MSG_ERROR(No egrep program found) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18 --dnl ----------- --dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX. --AC_DEFUN([CF_PROG_EXT], --[ --AC_REQUIRE([CF_CHECK_CACHE]) --case $cf_cv_system_name in --os2*) -- CFLAGS="$CFLAGS -Zmt" -- CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__" -- CXXFLAGS="$CXXFLAGS -Zmt" -- # autoconf's macro sets -Zexe and suffix both, which conflict:w -- LDFLAGS="$LDFLAGS -Zmt -Zcrtdll" -- ac_cv_exeext=.exe -- ;; --esac -- --AC_EXEEXT --AC_OBJEXT -- --PROG_EXT="$EXEEXT" --AC_SUBST(PROG_EXT) --test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT") --])dnl --dnl --------------------------------------------------------------------------- --dnl CF_PROG_GNAT version: 1 updated: 2010/06/19 15:22:18 -+dnl CF_PROG_GNAT version: 2 updated: 2011/10/22 14:01:47 - dnl ------------ - dnl Check for gnatmake, ensure that it is complete. - AC_DEFUN([CF_PROG_GNAT],[ -@@ -4666,6 +5029,7 @@ - AC_CHECK_PROG(gnat_exists, $cf_ada_make, yes, no) - if test "$ac_cv_prog_gnat_exists" = no; then - cf_ada_make= -+ cf_cv_prog_gnat_correct=no - else - CF_GNAT_VERSION - AC_CHECK_PROG(M4_exists, m4, yes, no) -@@ -4709,7 +5073,7 @@ - esac - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PROG_LDCONFIG version: 2 updated: 2008/12/13 14:08:40 -+dnl CF_PROG_LDCONFIG version: 3 updated: 2011/06/04 20:09:13 - dnl ---------------- - dnl Check for ldconfig, needed to fixup shared libraries that would be built - dnl and then used in the install. -@@ -4718,7 +5082,7 @@ - LDCONFIG=: - else - case "$cf_cv_system_name" in #(vi --dragonfly*|freebsd*) #(vi -+dragonfly*|mirbsd*|freebsd*) #(vi - test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R" - ;; - *) LDPATH=$PATH:/sbin:/usr/sbin -@@ -4759,7 +5123,7 @@ - test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f" - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_REGEX version: 8 updated: 2010/08/07 14:09:44 -+dnl CF_REGEX version: 10 updated: 2012/10/04 20:12:20 - dnl -------- - dnl Attempt to determine if we've got one of the flavors of regular-expression - dnl code that we can support. -@@ -4771,7 +5135,7 @@ - cf_regex_libs="regex re" - case $host_os in #(vi - mingw*) -- cf_regex_libs="regex.dll $cf_regex_libs" -+ cf_regex_libs="gnurx $cf_regex_libs" - ;; - esac - -@@ -4833,9 +5197,9 @@ - - case $cf_cv_regex_hdrs in #(vi - no) AC_MSG_WARN(no regular expression header found) ;; #(vi -- regex.h) AC_DEFINE(HAVE_REGEX_H_FUNCS) ;; #(vi -- regexp.h) AC_DEFINE(HAVE_REGEXP_H_FUNCS) ;; #(vi -- regexpr.h) AC_DEFINE(HAVE_REGEXPR_H_FUNCS) ;; -+ regex.h) AC_DEFINE(HAVE_REGEX_H_FUNCS,1,[Define to 1 to include regex.h for regular expressions]) ;; #(vi -+ regexp.h) AC_DEFINE(HAVE_REGEXP_H_FUNCS,1,[Define to 1 to include regexp.h for regular expressions]) ;; #(vi -+ regexpr.h) AC_DEFINE(HAVE_REGEXPR_H_FUNCS,1,[Define to 1 to include regexpr.h for regular expressions]) ;; - esac - ])dnl - dnl --------------------------------------------------------------------------- -@@ -4869,7 +5233,7 @@ - $1=`echo "$2" | sed -e 's/-l$3[[ ]]//g' -e 's/-l$3[$]//'` - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_RPATH_HACK version: 9 updated: 2011/02/13 13:31:33 -+dnl CF_RPATH_HACK version: 11 updated: 2013/09/01 13:02:00 - dnl ------------- - AC_DEFUN([CF_RPATH_HACK], - [ -@@ -4886,8 +5250,8 @@ - - AC_TRY_LINK([#include ], - [printf("Hello");], -- [cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort -u` -- cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[[ ]]/%/%' -e 's%/[[^/]][[^/]]*$%%' |sort -u`]) -+ [cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort | uniq` -+ cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[[ ]]/%/%' -e 's%/[[^/]][[^/]]*$%%' |sort | uniq`]) - - # If we passed the link-test, but get a "not found" on a given library, - # this could be due to inept reconfiguration of gcc to make it only -@@ -4920,6 +5284,8 @@ - CF_RPATH_HACK_2(LIBS) - - CF_VERBOSE(...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS) -+else -+ AC_MSG_RESULT(no) - fi - AC_SUBST(EXTRA_LDFLAGS) - ])dnl -@@ -4984,18 +5350,19 @@ - AC_SUBST(EXTRA_LDFLAGS) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_SHARED_OPTS version: 64 updated: 2010/06/05 16:51:16 -+dnl CF_SHARED_OPTS version: 84 updated: 2013/11/03 06:26:10 - dnl -------------- - dnl -------------- - dnl Attempt to determine the appropriate CC/LD options for creating a shared - dnl library. - dnl --dnl Note: ${LOCAL_LDFLAGS} is used to link executables that will run within the --dnl build-tree, i.e., by making use of the libraries that are compiled in ../lib --dnl We avoid compiling-in a ../lib path for the shared library since that can --dnl lead to unexpected results at runtime. --dnl ${LOCAL_LDFLAGS2} has the same intention but assumes that the shared libraries --dnl are compiled in ../../lib -+dnl Notes: -+dnl a) ${LOCAL_LDFLAGS} is used to link executables that will run within -+dnl the build-tree, i.e., by making use of the libraries that are compiled in -+dnl $rel_builddir/lib We avoid compiling-in a $rel_builddir/lib path for the -+dnl shared library since that can lead to unexpected results at runtime. -+dnl b) ${LOCAL_LDFLAGS2} has the same intention but assumes that the shared -+dnl libraries are compiled in ../../lib - dnl - dnl The variable 'cf_cv_do_symlinks' is used to control whether we configure - dnl to install symbolic links to the rel/abi versions of shared libraries. -@@ -5010,12 +5377,19 @@ - dnl Some loaders leave 'so_locations' lying around. It's nice to clean up. - AC_DEFUN([CF_SHARED_OPTS], - [ -- AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) - AC_REQUIRE([CF_LD_RPATH_OPT]) -+ RM_SHARED_OPTS= - LOCAL_LDFLAGS= - LOCAL_LDFLAGS2= - LD_SHARED_OPTS= - INSTALL_LIB="-m 644" -+ : ${rel_builddir:=.} -+ -+ shlibdir=$libdir -+ AC_SUBST(shlibdir) -+ -+ MAKE_DLLS="#" -+ AC_SUBST(MAKE_DLLS) - - cf_cv_do_symlinks=no - cf_ld_rpath_opt= -@@ -5040,6 +5414,7 @@ - AC_MSG_RESULT($cf_cv_shlib_version) - - cf_cv_rm_so_locs=no -+ cf_try_cflags= - - # Some less-capable ports of gcc support only -fpic - CC_SHARED_OPTS= -@@ -5059,10 +5434,14 @@ - cf_cv_shlib_version_infix=no - - case $cf_cv_system_name in #(vi -- aix[[56]]*) #(vi -+ aix4.[3-9]*|aix[[5-7]]*) #(vi - if test "$GCC" = yes; then - CC_SHARED_OPTS= -- MK_SHARED_LIB='$(CC) -shared' -+ MK_SHARED_LIB='${CC} -shared -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@' -+ else -+ # CC_SHARED_OPTS='-qpic=large -G' -+ # perhaps "-bM:SRE -bnoentry -bexpall" -+ MK_SHARED_LIB='${CC} -G -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@' - fi - ;; - beos*) #(vi -@@ -5070,9 +5449,12 @@ - ;; - cygwin*) #(vi - CC_SHARED_OPTS= -- MK_SHARED_LIB='sh ../mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" - cf_cv_shlib_version=cygdll - cf_cv_shlib_version_infix=cygdll -+ shlibdir=$bindir -+ MAKE_DLLS= - cat >mk_shared_lib.sh <<-CF_EOF - #!/bin/sh - SHARED_LIB=\[$]1 -@@ -5083,12 +5465,34 @@ - ** SHARED_LIB \[$]SHARED_LIB - ** IMPORT_LIB \[$]IMPORT_LIB - EOF -- exec \[$]* -shared -Wl,--out-implib=../lib/\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o ../lib/\[$]{SHARED_LIB} -+ exec \[$]* -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB} -+CF_EOF -+ chmod +x mk_shared_lib.sh -+ ;; -+ msys*) #(vi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" -+ cf_cv_shlib_version=msysdll -+ cf_cv_shlib_version_infix=msysdll -+ shlibdir=$bindir -+ MAKE_DLLS= -+ cat >mk_shared_lib.sh <<-CF_EOF -+ #!/bin/sh -+ SHARED_LIB=\[$]1 -+ IMPORT_LIB=\`echo "\[$]1" | sed -e 's/msys-/lib/' -e 's/[[0-9]]*\.dll[$]/.dll.a/'\` -+ shift -+ cat <<-EOF -+ Linking shared library -+ ** SHARED_LIB \[$]SHARED_LIB -+ ** IMPORT_LIB \[$]IMPORT_LIB -+EOF -+ exec \[$]* -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB} - CF_EOF - chmod +x mk_shared_lib.sh - ;; - darwin*) #(vi -- EXTRA_CFLAGS="-no-cpp-precomp" -+ cf_try_cflags="no-cpp-precomp" - CC_SHARED_OPTS="-dynamic" - MK_SHARED_LIB='${CC} ${CFLAGS} -dynamiclib -install_name ${libdir}/`basename $[@]` -compatibility_version ${ABI_VERSION} -current_version ${ABI_VERSION} -o $[@]' - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi -@@ -5102,6 +5506,14 @@ - LDFLAGS="$LDFLAGS -Wl,-search_paths_first" - fi - ;; -+ hpux[[7-8]]*) #(vi -+ # HP-UX 8.07 ld lacks "+b" option used for libdir search-list -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='+Z' -+ fi -+ MK_SHARED_LIB='${LD} -b -o $[@]' -+ INSTALL_LIB="-m 555" -+ ;; - hpux*) #(vi - # (tested with gcc 2.7.2 -- I don't have c89) - if test "$GCC" = yes; then -@@ -5115,9 +5527,19 @@ - # readonly to exploit a quirk in the memory manager. - INSTALL_LIB="-m 555" - ;; -+ interix*) -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ if test "$cf_cv_shlib_version" = rel; then -+ cf_shared_soname='`basename $@ .${REL_VERSION}`.${ABI_VERSION}' -+ else -+ cf_shared_soname='`basename $@`' -+ fi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='${CC} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o $@' -+ ;; - irix*) #(vi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - # tested with IRIX 5.2 and 'cc'. - if test "$GCC" != yes; then -@@ -5134,18 +5556,45 @@ - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" - fi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - CF_SHARED_SONAME - MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]' - ;; -- openbsd[[2-9]].*) #(vi -+ mingw*) #(vi -+ cf_cv_shlib_version=mingw -+ cf_cv_shlib_version_infix=mingw -+ shlibdir=$bindir -+ MAKE_DLLS= -+ if test "$DFT_LWR_MODEL" = "shared" ; then -+ LOCAL_LDFLAGS="-Wl,--enable-auto-import" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ EXTRA_LDFLAGS="-Wl,--enable-auto-import $EXTRA_LDFLAGS" -+ fi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" -+ cat >mk_shared_lib.sh <<-CF_EOF -+ #!/bin/sh -+ SHARED_LIB=\[$]1 -+ IMPORT_LIB=\`echo "\[$]1" | sed -e 's/[[0-9]]*\.dll[$]/.dll.a/'\` -+ shift -+ cat <<-EOF -+ Linking shared library -+ ** SHARED_LIB \[$]SHARED_LIB -+ ** IMPORT_LIB \[$]IMPORT_LIB -+EOF -+ exec \[$]* -shared -Wl,--enable-auto-import,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB} -+CF_EOF -+ chmod +x mk_shared_lib.sh -+ ;; -+ openbsd[[2-9]].*|mirbsd*) #(vi - if test "$DFT_LWR_MODEL" = "shared" ; then - LOCAL_LDFLAGS="${LD_RPATH_OPT}\$(LOCAL_LIBDIR)" - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" - fi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" - CF_SHARED_SONAME -@@ -5156,12 +5605,12 @@ - MK_SHARED_LIB='${LD} -Bshareable -o $[@]' - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel - ;; -- freebsd*) #(vi -+ dragonfly*|freebsd*) #(vi - CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" - if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then - LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)" -- LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${libdir} $LOCAL_LDFLAGS" -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${RPATH_LIST} $LOCAL_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - CF_SHARED_SONAME - MK_SHARED_LIB='${LD} -shared -Bshareable -soname=`basename $[@]` -o $[@]' -@@ -5171,7 +5620,7 @@ - if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then - LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)" - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - if test "$cf_cv_shlib_version" = auto; then - if test -f /usr/libexec/ld.elf_so; then - cf_cv_shlib_version=abi -@@ -5182,7 +5631,7 @@ - CF_SHARED_SONAME - MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $[@]' - else -- MK_SHARED_LIB='${LD} -shared -Bshareable -o $[@]' -+ MK_SHARED_LIB='${CC} -Wl,-shared -Wl,-Bshareable -o $[@]' - fi - ;; - osf*|mls+*) #(vi -@@ -5276,20 +5725,57 @@ - ;; - esac - -- if test -n "$cf_ld_rpath_opt" ; then -- MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${libdir}" -+ if test -n "$cf_try_cflags" -+ then -+cat > conftest.$ac_ext < -+int main(int argc, char *argv[[]]) -+{ -+ printf("hello\n"); -+ return (argv[[argc-1]] == 0) ; -+} -+EOF -+ cf_save_CFLAGS="$CFLAGS" -+ for cf_opt in $cf_try_cflags -+ do -+ CFLAGS="$cf_save_CFLAGS -$cf_opt" -+ AC_MSG_CHECKING(if CFLAGS option -$cf_opt works) -+ if AC_TRY_EVAL(ac_compile); then -+ AC_MSG_RESULT(yes) -+ cf_save_CFLAGS="$CFLAGS" -+ else -+ AC_MSG_RESULT(no) -+ fi -+ done -+ CFLAGS="$cf_save_CFLAGS" - fi - -+ -+ # RPATH_LIST is a colon-separated list of directories -+ test -n "$cf_ld_rpath_opt" && MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${RPATH_LIST}" -+ test -z "$RPATH_LIST" && RPATH_LIST="\${libdir}" -+ -+ test $cf_cv_rm_so_locs = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations" -+ -+ CF_VERBOSE(CC_SHARED_OPTS: $CC_SHARED_OPTS) -+ CF_VERBOSE(MK_SHARED_LIB: $MK_SHARED_LIB) -+ - AC_SUBST(CC_SHARED_OPTS) - AC_SUBST(LD_RPATH_OPT) - AC_SUBST(LD_SHARED_OPTS) - AC_SUBST(MK_SHARED_LIB) -+ AC_SUBST(RM_SHARED_OPTS) -+ - AC_SUBST(LINK_PROGS) - AC_SUBST(LINK_TESTS) -+ - AC_SUBST(EXTRA_LDFLAGS) - AC_SUBST(LOCAL_LDFLAGS) - AC_SUBST(LOCAL_LDFLAGS2) -+ - AC_SUBST(INSTALL_LIB) -+ AC_SUBST(RPATH_LIST) - ])dnl - dnl --------------------------------------------------------------------------- - dnl CF_SHARED_SONAME version: 3 updated: 2008/09/08 18:34:43 -@@ -5369,7 +5855,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_SIG_ATOMIC_T version: 2 updated: 2005/09/18 17:27:12 -+dnl CF_SIG_ATOMIC_T version: 3 updated: 2012/10/04 20:12:20 - dnl --------------- - dnl signal handler, but there are some gcc depedencies in that recommendation. - dnl Try anyway. -@@ -5401,10 +5887,10 @@ - done - ]) - AC_MSG_RESULT($cf_cv_sig_atomic_t) --test "$cf_cv_sig_atomic_t" != no && AC_DEFINE_UNQUOTED(SIG_ATOMIC_T, $cf_cv_sig_atomic_t) -+test "$cf_cv_sig_atomic_t" != no && AC_DEFINE_UNQUOTED(SIG_ATOMIC_T, $cf_cv_sig_atomic_t,[Define to signal global datatype]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_SIZECHANGE version: 8 updated: 2000/11/04 12:22:16 -+dnl CF_SIZECHANGE version: 9 updated: 2012/10/06 11:17:15 - dnl ------------- - dnl Check for definitions & structures needed for window size-changing - dnl FIXME: check that this works with "snake" (HP-UX 10.x) -@@ -5465,7 +5951,7 @@ - done - ]) - if test "$cf_cv_sizechange" != no ; then -- AC_DEFINE(HAVE_SIZECHANGE) -+ AC_DEFINE(HAVE_SIZECHANGE,1,[Define to 1 if sizechar declarations are provided]) - case $cf_cv_sizechange in #(vi - NEED*) - AC_DEFINE_UNQUOTED($cf_cv_sizechange ) -@@ -5474,7 +5960,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_SRC_MODULES version: 21 updated: 2010/09/04 17:37:40 -+dnl CF_SRC_MODULES version: 27 updated: 2013/08/03 18:18:08 - dnl -------------- - dnl For each parameter, test if the source-directory exists, and if it contains - dnl a 'modules' file. If so, add to the list $cf_cv_src_modules which we'll -@@ -5497,6 +5983,7 @@ - TEST_ARG2="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARG2" - fi - -+PC_MODULES_TO_MAKE="ncurses${DFT_ARG_SUFFIX}" - cf_cv_src_modules= - for cf_dir in $1 - do -@@ -5535,6 +6022,7 @@ - TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS" - TEST_ARG2="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARG2" - fi -+ PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ${cf_dir}${DFT_ARG_SUFFIX}" - fi - fi - done -@@ -5561,11 +6049,21 @@ - if test "x$cf_with_tests" != "xno" ; then - SRC_SUBDIRS="$SRC_SUBDIRS test" - fi --test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc" --test "$cf_with_cxx_binding" != no && SRC_SUBDIRS="$SRC_SUBDIRS c++" -+if test "x$cf_with_db_install" = xyes; then -+ test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc" -+fi -+if test "$cf_with_cxx_binding" != no; then -+ PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ncurses++${DFT_ARG_SUFFIX}" -+ SRC_SUBDIRS="$SRC_SUBDIRS c++" -+fi -+ -+test "x$with_termlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TINFO_ARG_SUFFIX" -+test "x$with_ticlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TICS_ARG_SUFFIX" -+ -+AC_SUBST(PC_MODULES_TO_MAKE) - - ADA_SUBDIRS= --if test "$cf_cv_prog_gnat_correct" = yes && test -f $srcdir/Ada95/Makefile.in; then -+if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = xyes && test -f $srcdir/Ada95/Makefile.in; then - SRC_SUBDIRS="$SRC_SUBDIRS Ada95" - ADA_SUBDIRS="gen src" - if test "x$cf_with_tests" != "xno" ; then -@@ -5624,13 +6122,13 @@ - AC_DEFUN([CF_STRIP_G_OPT], - [$1=`echo ${$1} | sed -e 's%-g %%' -e 's%-g$%%'`])dnl - dnl --------------------------------------------------------------------------- --dnl CF_STRUCT_SIGACTION version: 3 updated: 2000/08/12 23:18:52 -+dnl CF_STRUCT_SIGACTION version: 5 updated: 2012/10/06 17:56:13 - dnl ------------------- - dnl Check if we need _POSIX_SOURCE defined to use struct sigaction. We'll only - dnl do this if we've found the sigaction function. --dnl --dnl If needed, define SVR4_ACTION. - AC_DEFUN([CF_STRUCT_SIGACTION],[ -+AC_REQUIRE([CF_XOPEN_SOURCE]) -+ - if test "$ac_cv_func_sigaction" = yes; then - AC_MSG_CHECKING(whether sigaction needs _POSIX_SOURCE) - AC_TRY_COMPILE([ -@@ -5645,22 +6143,24 @@ - #include ], - [struct sigaction act], - [sigact_bad=yes -- AC_DEFINE(SVR4_ACTION)], -+ AC_DEFINE(_POSIX_SOURCE,1,[Define to 1 if we must define _POSIX_SOURCE])], - [sigact_bad=unknown])]) - AC_MSG_RESULT($sigact_bad) - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_STRUCT_TERMIOS version: 5 updated: 2000/11/04 12:22:46 -+dnl CF_STRUCT_TERMIOS version: 7 updated: 2012/10/06 17:56:13 - dnl ----------------- - dnl Some machines require _POSIX_SOURCE to completely define struct termios. --dnl If so, define SVR4_TERMIO - AC_DEFUN([CF_STRUCT_TERMIOS],[ -+AC_REQUIRE([CF_XOPEN_SOURCE]) -+ - AC_CHECK_HEADERS( \ - termio.h \ - termios.h \ - unistd.h \ - ) -+ - if test "$ISC" = yes ; then - AC_CHECK_HEADERS( sys/termio.h ) - fi -@@ -5680,7 +6180,7 @@ - #include ], - [struct termios foo; int x = foo.c_iflag], - termios_bad=unknown, -- termios_bad=yes AC_DEFINE(SVR4_TERMIO)) -+ termios_bad=yes AC_DEFINE(_POSIX_SOURCE,1,[Define to 1 if we must define _POSIX_SOURCE])) - ]) - AC_MSG_RESULT($termios_bad) - fi -@@ -5704,23 +6204,6 @@ - CF_ADD_SUBDIR_PATH($1,$2,$3,[$]HOME,$prefix) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_SUBST version: 4 updated: 2006/06/17 12:33:03 --dnl -------- --dnl Shorthand macro for substituting things that the user may override --dnl with an environment variable. --dnl --dnl $1 = long/descriptive name --dnl $2 = environment variable --dnl $3 = default value --AC_DEFUN([CF_SUBST], --[AC_CACHE_VAL(cf_cv_subst_$2,[ --AC_MSG_CHECKING(for $1 (symbol $2)) --CF_SUBST_IF([-z "[$]$2"], [$2], [$3]) --cf_cv_subst_$2=[$]$2 --AC_MSG_RESULT([$]$2) --]) --])dnl --dnl --------------------------------------------------------------------------- - dnl CF_SUBST_IF version: 2 updated: 2006/06/17 12:33:03 - dnl ----------- - dnl Shorthand macro for substituting things that the user may override -@@ -5766,7 +6249,7 @@ - AC_SUBST(cf_cv_type_of_bool)dnl - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_SYS_TIME_SELECT version: 4 updated: 2000/10/04 09:18:40 -+dnl CF_SYS_TIME_SELECT version: 5 updated: 2012/10/04 05:24:07 - dnl ------------------ - dnl Check if we can include with ; this breaks on - dnl older SCO configurations. -@@ -5786,19 +6269,58 @@ - [cf_cv_sys_time_select=no]) - ]) - AC_MSG_RESULT($cf_cv_sys_time_select) --test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT) -+test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT,1,[Define to 1 if we can include with ]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_TOP_BUILDDIR version: 1 updated: 2006/10/15 16:33:23 -+dnl CF_TOP_BUILDDIR version: 2 updated: 2013/07/27 17:38:32 - dnl --------------- - dnl Define a top_builddir symbol, for applications that need an absolute path. - AC_DEFUN([CF_TOP_BUILDDIR], - [ --top_builddir=`pwd` -+top_builddir=ifelse($1,,`pwd`,$1) - AC_SUBST(top_builddir) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_TYPEOF_CHTYPE version: 8 updated: 2006/12/16 12:33:30 -+dnl CF_TRY_XOPEN_SOURCE version: 1 updated: 2011/10/30 17:09:50 -+dnl ------------------- -+dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we -+dnl can define it successfully. -+AC_DEFUN([CF_TRY_XOPEN_SOURCE],[ -+AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[ -+ AC_TRY_COMPILE([ -+#include -+#include -+#include -+],[ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -+ AC_TRY_COMPILE([ -+#include -+#include -+#include -+],[ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_cv_xopen_source=$cf_XOPEN_SOURCE]) -+ CPPFLAGS="$cf_save" -+ ]) -+]) -+ -+if test "$cf_cv_xopen_source" != no ; then -+ CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE) -+ CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE) -+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" -+ CF_ADD_CFLAGS($cf_temp_xopen_source) -+fi -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_TYPEOF_CHTYPE version: 9 updated: 2012/10/06 17:56:13 - 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 -@@ -5847,10 +6369,10 @@ - AC_MSG_RESULT($cf_cv_typeof_chtype) - - AC_SUBST(cf_cv_typeof_chtype) --AC_DEFINE_UNQUOTED(TYPEOF_CHTYPE,$cf_cv_typeof_chtype) -+AC_DEFINE_UNQUOTED(TYPEOF_CHTYPE,$cf_cv_typeof_chtype,[Define to actual type if needed for chtype]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_TYPE_SIGACTION version: 3 updated: 2000/08/12 23:18:52 -+dnl CF_TYPE_SIGACTION version: 4 updated: 2012/10/06 17:56:13 - dnl ----------------- - dnl - AC_DEFUN([CF_TYPE_SIGACTION], -@@ -5863,7 +6385,7 @@ - [cf_cv_type_sigaction=yes], - [cf_cv_type_sigaction=no])]) - AC_MSG_RESULT($cf_cv_type_sigaction) --test "$cf_cv_type_sigaction" = yes && AC_DEFINE(HAVE_TYPE_SIGACTION) -+test "$cf_cv_type_sigaction" = yes && AC_DEFINE(HAVE_TYPE_SIGACTION,1,[Define to 1 if we have the sigaction_t type]) - ])dnl - dnl --------------------------------------------------------------------------- - dnl CF_UNSIGNED_LITERALS version: 2 updated: 1998/02/07 22:10:16 -@@ -5890,7 +6412,7 @@ - $1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_UTF8_LIB version: 7 updated: 2010/06/20 09:24:28 -+dnl CF_UTF8_LIB version: 8 updated: 2012/10/06 08:57:51 - dnl ----------- - dnl Check for multibyte support, and if not found, utf8 compatibility library - AC_DEFUN([CF_UTF8_LIB], -@@ -5909,14 +6431,14 @@ - # HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between - # ncurses/ncursesw: - if test "$cf_cv_utf8_lib" = "add-on" ; then -- AC_DEFINE(HAVE_LIBUTF8_H) -+ AC_DEFINE(HAVE_LIBUTF8_H,1,[Define to 1 if we should include libutf8.h]) - CF_ADD_INCDIR($cf_cv_header_path_utf8) - CF_ADD_LIBDIR($cf_cv_library_path_utf8) - CF_ADD_LIBS($cf_cv_library_file_utf8) - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_VA_COPY version: 2 updated: 2010/03/04 05:37:29 -+dnl CF_VA_COPY version: 3 updated: 2012/10/06 11:17:15 - dnl ---------- - dnl check for va_copy, part of stdarg.h - dnl Also, workaround for glibc's __va_copy, by checking for both. -@@ -5931,7 +6453,7 @@ - cf_cv_have_va_copy=yes, - cf_cv_have_va_copy=no)]) - --test "$cf_cv_have_va_copy" = yes && AC_DEFINE(HAVE_VA_COPY) -+test "$cf_cv_have_va_copy" = yes && AC_DEFINE(HAVE_VA_COPY,1,[Define to 1 if we have va_copy]) - - AC_CACHE_CHECK(for __va_copy, cf_cv_have___va_copy,[ - AC_TRY_LINK([ -@@ -5943,7 +6465,7 @@ - cf_cv_have___va_copy=yes, - cf_cv_have___va_copy=no)]) - --test "$cf_cv_have___va_copy" = yes && AC_DEFINE(HAVE___VA_COPY) -+test "$cf_cv_have___va_copy" = yes && AC_DEFINE(HAVE___VA_COPY,1,[Define to 1 if we have __va_copy]) - ]) - dnl --------------------------------------------------------------------------- - dnl CF_VERBOSE version: 3 updated: 2007/07/29 09:55:12 -@@ -5954,7 +6476,7 @@ - CF_MSG_LOG([$1]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_WCHAR_TYPE version: 3 updated: 2010/05/26 16:44:57 -+dnl CF_WCHAR_TYPE version: 4 updated: 2012/10/06 16:39:58 - dnl ------------- - dnl Check if type wide-character type $1 is declared, and if so, which header - dnl file is needed. The second parameter is used to set a shell variable when -@@ -5986,7 +6508,7 @@ - [cf_cv_$1=unknown])])]) - - if test "$cf_cv_$1" = yes ; then -- AC_DEFINE(NEED_WCHAR_H) -+ AC_DEFINE(NEED_WCHAR_H,1,[Define to 1 if we must include wchar.h]) - NEED_WCHAR_H=1 - fi - -@@ -6149,7 +6671,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_WITH_GPM version: 7 updated: 2008/03/23 14:48:54 -+dnl CF_WITH_GPM version: 8 updated: 2012/10/06 17:56:13 - dnl ----------- - dnl - dnl The option parameter (if neither yes/no) is assumed to be the name of -@@ -6165,10 +6687,10 @@ - - if test "$with_gpm" != no ; then - AC_CHECK_HEADER(gpm.h,[ -- AC_DEFINE(HAVE_GPM_H) -+ AC_DEFINE(HAVE_GPM_H,1,[Define to 1 if we have gpm.h header]) - if test "$with_gpm" != yes && test "$with_gpm" != maybe ; then - CF_VERBOSE(assuming we really have GPM library) -- AC_DEFINE(HAVE_LIBGPM) -+ AC_DEFINE(HAVE_LIBGPM,1,[Define to 1 if we have the gpm library]) - else - AC_CHECK_LIB(gpm,Gpm_Open,[:],[ - AC_MSG_ERROR(Cannot link with GPM library) -@@ -6182,7 +6704,7 @@ - fi - ]) - dnl --------------------------------------------------------------------------- --dnl CF_WITH_LIBTOOL version: 26 updated: 2010/10/23 15:55:24 -+dnl CF_WITH_LIBTOOL version: 30 updated: 2013/09/07 13:54:05 - dnl --------------- - dnl Provide a configure option to incorporate libtool. Define several useful - dnl symbols for the makefile rules. -@@ -6252,13 +6774,20 @@ - CF_PATH_SYNTAX(with_libtool) - LIBTOOL=$with_libtool - else -- AC_PATH_PROG(LIBTOOL,libtool) -+ AC_CHECK_TOOLS(LIBTOOL,[libtool glibtool],none) -+ CF_LIBTOOL_VERSION -+ if test -z "$cf_cv_libtool_version" && test "$LIBTOOL" = libtool -+ then -+ CF_FORGET_TOOL(LIBTOOL) -+ AC_CHECK_TOOLS(LIBTOOL,[glibtool],none) -+ CF_LIBTOOL_VERSION -+ fi - fi - if test -z "$LIBTOOL" ; then - AC_MSG_ERROR(Cannot find libtool) - fi - ])dnl -- LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} -o' -+ LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} $(LIBS) -o' - LIB_OBJECT='${OBJECTS:.o=.lo}' - LIB_SUFFIX=.la - LIB_CLEAN='${LIBTOOL} --mode=clean' -@@ -6268,22 +6797,12 @@ - LIB_UNINSTALL='${LIBTOOL} --mode=uninstall' - LIB_PREP=: - -- # Show the version of libtool -- AC_MSG_CHECKING(version of libtool) -- -- # Save the version in a cache variable - this is not entirely a good -- # thing, but the version string from libtool is very ugly, and for -- # bug reports it might be useful to have the original string. "(" -- cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([[^)]]*)//g' -e 's/^[[^1-9]]*//' -e 's/[[^0-9.]].*//'` -- AC_MSG_RESULT($cf_cv_libtool_version) -- if test -z "$cf_cv_libtool_version" ; then -- AC_MSG_ERROR(This is not GNU libtool) -- fi -+ CF_CHECK_LIBTOOL_VERSION - - # special hack to add -no-undefined (which libtool should do for itself) - LT_UNDEF= - case "$cf_cv_system_name" in #(vi -- cygwin*|mingw32*|uwin*|aix[[456]]) #(vi -+ cygwin*|msys*|mingw32*|uwin*|aix[[4-7]]) #(vi - LT_UNDEF=-no-undefined - ;; - esac -@@ -6323,7 +6842,33 @@ - - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_WITH_PATH version: 10 updated: 2010/10/23 15:44:18 -+dnl CF_WITH_LIB_PREFIX version: 1 updated: 2012/01/21 19:28:10 -+dnl ------------------ -+dnl Allow the library-prefix to be overridden. OS/2 EMX originally had no -+dnl "lib" prefix, e.g., because it used the dll naming convention. -+dnl -+dnl $1 = variable to set -+AC_DEFUN([CF_WITH_LIB_PREFIX], -+[ -+AC_MSG_CHECKING(if you want to have a library-prefix) -+AC_ARG_WITH(lib-prefix, -+ [ --with-lib-prefix override library-prefix], -+ [with_lib_prefix=$withval], -+ [with_lib_prefix=auto]) -+AC_MSG_RESULT($with_lib_prefix) -+ -+if test $with_lib_prefix = auto -+then -+ CF_LIB_PREFIX($1) -+elif test $with_lib_prefix = no -+then -+ LIB_PREFIX= -+else -+ LIB_PREFIX=$with_lib_prefix -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_PATH version: 11 updated: 2012/09/29 15:04:19 - dnl ------------ - dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just - dnl defaulting to yes/no. -@@ -6340,11 +6885,11 @@ - if ifelse([$5],,true,[test -n "$5"]) ; then - CF_PATH_SYNTAX(withval) - fi --$3="$withval" -+eval $3="$withval" - AC_SUBST($3)dnl - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_WITH_PATHLIST version: 7 updated: 2010/10/23 16:10:30 -+dnl CF_WITH_PATHLIST version: 9 updated: 2012/10/18 05:05:24 - dnl ---------------- - dnl Process an option specifying a list of colon-separated paths. - dnl -@@ -6365,7 +6910,7 @@ - for cf_src_path in $withval - do - CF_PATH_SYNTAX(cf_src_path) -- test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}:" -+ test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}$PATH_SEPARATOR" - cf_dst_path="${cf_dst_path}${cf_src_path}" - done - IFS="$ac_save_ifs" -@@ -6381,12 +6926,65 @@ - cf_dst_path=`echo "$cf_dst_path" | sed -e 's/\\\\/\\\\\\\\/g'` - ]) - --eval '$3="$cf_dst_path"' -+# This may use the prefix/exec_prefix symbols which will only yield "NONE" -+# so we have to check/work around. We do prefer the result of "eval"... -+eval cf_dst_eval="$cf_dst_path" -+case "x$cf_dst_eval" in #(vi -+xNONE*) #(vi -+ $3=$cf_dst_path -+ ;; -+*) -+ $3="$cf_dst_eval" -+ ;; -+esac - AC_SUBST($3)dnl - - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_WITH_PTHREAD version: 3 updated: 2010/05/29 16:31:02 -+dnl CF_WITH_PKG_CONFIG_LIBDIR version: 2 updated: 2011/12/10 18:58:47 -+dnl ------------------------- -+dnl Allow the choice of the pkg-config library directory to be overridden. -+AC_DEFUN([CF_WITH_PKG_CONFIG_LIBDIR],[ -+if test "$PKG_CONFIG" != none ; then -+ AC_MSG_CHECKING(for $PKG_CONFIG library directory) -+ AC_ARG_WITH(pkg-config-libdir, -+ [ --with-pkg-config-libdir=XXX use given directory for installing pc-files], -+ [PKG_CONFIG_LIBDIR=$withval], -+ [PKG_CONFIG_LIBDIR=yes]) -+ -+ case x$PKG_CONFIG_LIBDIR in #(vi -+ x/*) #(vi -+ ;; -+ xyes) #(vi -+ # look for the library directory using the same prefix as the executable -+ cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'` -+ case x`(arch) 2>/dev/null` in #(vi -+ *64) #(vi -+ for cf_config in $cf_path/share $cf_path/lib64 $cf_path/lib32 $cf_path/lib -+ do -+ if test -d $cf_config/pkgconfig -+ then -+ PKG_CONFIG_LIBDIR=$cf_config/pkgconfig -+ break -+ fi -+ done -+ ;; -+ *) -+ PKG_CONFIG_LIBDIR=$cf_path/lib/pkgconfig -+ ;; -+ esac -+ ;; -+ *) -+ ;; -+ esac -+ -+ AC_MSG_RESULT($PKG_CONFIG_LIBDIR) -+fi -+ -+AC_SUBST(PKG_CONFIG_LIBDIR) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_PTHREAD version: 6 updated: 2012/10/06 17:41:51 - dnl --------------- - dnl Check for POSIX thread library. - AC_DEFUN([CF_WITH_PTHREAD], -@@ -6400,25 +6998,30 @@ - - if test "$with_pthread" != no ; then - AC_CHECK_HEADER(pthread.h,[ -- AC_DEFINE(HAVE_PTHREADS_H) -+ AC_DEFINE(HAVE_PTHREADS_H,1,[Define to 1 if we have pthreads.h header]) - -- AC_MSG_CHECKING(if we can link with the pthread library) -- cf_save_LIBS="$LIBS" -- CF_ADD_LIB(pthread) -- AC_TRY_LINK([ -+ for cf_lib_pthread in pthread c_r -+ do -+ AC_MSG_CHECKING(if we can link with the $cf_lib_pthread library) -+ cf_save_LIBS="$LIBS" -+ CF_ADD_LIB($cf_lib_pthread) -+ AC_TRY_LINK([ - #include - ],[ -- int rc = pthread_create(0,0,0,0); -+ int rc = pthread_create(0,0,0,0); -+ int r2 = pthread_mutexattr_settype(0, 0); - ],[with_pthread=yes],[with_pthread=no]) -- LIBS="$cf_save_LIBS" -- AC_MSG_RESULT($with_pthread) -+ LIBS="$cf_save_LIBS" -+ AC_MSG_RESULT($with_pthread) -+ test "$with_pthread" = yes && break -+ done - -- if test "$with_pthread" = yes ; then -- CF_ADD_LIB(pthread) -- AC_DEFINE(HAVE_LIBPTHREADS) -- else -- AC_MSG_ERROR(Cannot link with pthread library) -- fi -+ if test "$with_pthread" = yes ; then -+ CF_ADD_LIB($cf_lib_pthread) -+ AC_DEFINE(HAVE_LIBPTHREADS,1,[Define to 1 if we have pthreads library]) -+ else -+ AC_MSG_ERROR(Cannot link with pthread library) -+ fi - ]) - fi - ]) -@@ -6448,7 +7051,7 @@ - ]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_WITH_SYSMOUSE version: 2 updated: 2003/03/22 19:13:43 -+dnl CF_WITH_SYSMOUSE version: 3 updated: 2012/10/06 17:56:13 - dnl ---------------- - dnl If we can compile with sysmouse, make it available unless it is not wanted. - AC_DEFUN([CF_WITH_SYSMOUSE],[ -@@ -6474,10 +7077,30 @@ - ],[cf_with_sysmouse=yes],[cf_with_sysmouse=no]) - fi - AC_MSG_RESULT($cf_with_sysmouse) --test "$cf_with_sysmouse" = yes && AC_DEFINE(USE_SYSMOUSE) -+test "$cf_with_sysmouse" = yes && AC_DEFINE(USE_SYSMOUSE,1,[Define to 1 if we can/should use the sysmouse interface]) - fi - ])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_WITH_SYSTYPE version: 1 updated: 2013/01/26 16:26:12 -+dnl --------------- -+dnl For testing, override the derived host system-type which is used to decide -+dnl things such as the linker commands used to build shared libraries. This is -+dnl normally chosen automatically based on the type of system which you are -+dnl building on. We use it for testing the configure script. -+dnl -+dnl This is different from the --host option: it is used only for testing parts -+dnl of the configure script which would not be reachable with --host since that -+dnl relies on the build environment being real, rather than mocked up. -+AC_DEFUN([CF_WITH_SYSTYPE],[ -+CF_CHECK_CACHE([AC_CANONICAL_SYSTEM]) -+AC_ARG_WITH(system-type, -+ [ --with-system-type=XXX test: override derived host system-type], -+[AC_MSG_WARN(overriding system type to $withval) -+ cf_cv_system_name=$withval -+ host_os=$withval -+]) -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_WITH_VALGRIND version: 1 updated: 2006/12/14 18:00:21 - dnl ---------------- - AC_DEFUN([CF_WITH_VALGRIND],[ -@@ -6486,7 +7109,7 @@ - [USE_VALGRIND]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_XOPEN_SOURCE version: 35 updated: 2011/02/20 20:37:37 -+dnl CF_XOPEN_SOURCE version: 46 updated: 2014/02/09 19:30:15 - dnl --------------- - dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions, - dnl or adapt to the vendor's definitions to get equivalent functionality, -@@ -6496,16 +7119,17 @@ - dnl $1 is the nominal value for _XOPEN_SOURCE - dnl $2 is the nominal value for _POSIX_C_SOURCE - AC_DEFUN([CF_XOPEN_SOURCE],[ -+AC_REQUIRE([AC_CANONICAL_HOST]) - - cf_XOPEN_SOURCE=ifelse([$1],,500,[$1]) - cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2]) - cf_xopen_source= - - case $host_os in #(vi --aix[[456]]*) #(vi -+aix[[4-7]]*) #(vi - cf_xopen_source="-D_ALL_SOURCE" - ;; --cygwin) #(vi -+cygwin|msys) #(vi - cf_XOPEN_SOURCE=600 - ;; - darwin[[0-8]].*) #(vi -@@ -6513,6 +7137,7 @@ - ;; - darwin*) #(vi - cf_xopen_source="-D_DARWIN_C_SOURCE" -+ cf_XOPEN_SOURCE= - ;; - freebsd*|dragonfly*) #(vi - # 5.x headers associate -@@ -6530,15 +7155,23 @@ - ;; - irix[[56]].*) #(vi - cf_xopen_source="-D_SGI_SOURCE" -+ cf_XOPEN_SOURCE= - ;; - linux*|gnu*|mint*|k*bsd*-gnu) #(vi - CF_GNU_SOURCE - ;; - mirbsd*) #(vi -- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks -+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks and other headers which use u_int / u_short types -+ cf_XOPEN_SOURCE= -+ CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE) - ;; - netbsd*) #(vi -- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ ;; -+openbsd[[4-9]]*) #(vi -+ # setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw -+ cf_xopen_source="-D_BSD_SOURCE" -+ cf_XOPEN_SOURCE=600 - ;; - openbsd*) #(vi - # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw -@@ -6552,36 +7185,12 @@ - sco*) #(vi - # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer - ;; --solaris2.1[[0-9]]) #(vi -- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- ;; --solaris2.[[1-9]]) #(vi -+solaris2.*) #(vi - cf_xopen_source="-D__EXTENSIONS__" -+ cf_cv_xopen_source=broken - ;; - *) -- AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[ -- AC_TRY_COMPILE([#include ],[ --#ifndef _XOPEN_SOURCE --make an error --#endif], -- [cf_cv_xopen_source=no], -- [cf_save="$CPPFLAGS" -- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- AC_TRY_COMPILE([#include ],[ --#ifdef _XOPEN_SOURCE --make an error --#endif], -- [cf_cv_xopen_source=no], -- [cf_cv_xopen_source=$cf_XOPEN_SOURCE]) -- CPPFLAGS="$cf_save" -- ]) --]) -- if test "$cf_cv_xopen_source" != no ; then -- CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE) -- CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE) -- cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" -- CF_ADD_CFLAGS($cf_temp_xopen_source) -- fi -+ CF_TRY_XOPEN_SOURCE - CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE) - ;; - esac -@@ -6589,4 +7198,33 @@ - if test -n "$cf_xopen_source" ; then - CF_ADD_CFLAGS($cf_xopen_source) - fi -+ -+dnl In anything but the default case, we may have system-specific setting -+dnl which is still not guaranteed to provide all of the entrypoints that -+dnl _XOPEN_SOURCE would yield. -+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then -+ AC_MSG_CHECKING(if _XOPEN_SOURCE really is set) -+ AC_TRY_COMPILE([#include ],[ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_XOPEN_SOURCE_set=yes], -+ [cf_XOPEN_SOURCE_set=no]) -+ AC_MSG_RESULT($cf_XOPEN_SOURCE_set) -+ if test $cf_XOPEN_SOURCE_set = yes -+ then -+ AC_TRY_COMPILE([#include ],[ -+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE -+make an error -+#endif], -+ [cf_XOPEN_SOURCE_set_ok=yes], -+ [cf_XOPEN_SOURCE_set_ok=no]) -+ if test $cf_XOPEN_SOURCE_set_ok = no -+ then -+ AC_MSG_WARN(_XOPEN_SOURCE is lower than requested) -+ fi -+ else -+ CF_TRY_XOPEN_SOURCE -+ fi -+fi - ]) -diff -Naur ncurses-5.9/Ada95/aclocal.m4 ncurses-5.9.patch/Ada95/aclocal.m4 ---- ncurses-5.9/Ada95/aclocal.m4 2011-04-01 01:32:36.000000000 +0200 -+++ ncurses-5.9.patch/Ada95/aclocal.m4 2014-09-01 16:33:22.212791881 +0200 -@@ -1,5 +1,5 @@ - dnl*************************************************************************** --dnl Copyright (c) 2010,2011 Free Software Foundation, Inc. * -+dnl Copyright (c) 2010-2013,2014 Free Software Foundation, Inc. * - dnl * - dnl Permission is hereby granted, free of charge, to any person obtaining a * - dnl copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - dnl - dnl Author: Thomas E. Dickey - dnl --dnl $Id: aclocal.m4,v 1.24 2011/03/31 23:32:36 tom Exp $ -+dnl $Id: aclocal.m4,v 1.78 2014/02/10 00:41:59 tom Exp $ - dnl Macros used in NCURSES Ada95 auto-configuration script. - dnl - dnl These macros are maintained separately from NCURSES. The copyright on -@@ -39,7 +39,33 @@ - dnl - dnl --------------------------------------------------------------------------- - dnl --------------------------------------------------------------------------- --dnl CF_ADA_INCLUDE_DIRS version: 6 updated: 2010/02/26 19:52:07 -+dnl CF_ACVERSION_CHECK version: 4 updated: 2013/03/04 19:52:56 -+dnl ------------------ -+dnl Conditionally generate script according to whether we're using a given autoconf. -+dnl -+dnl $1 = version to compare against -+dnl $2 = code to use if AC_ACVERSION is at least as high as $1. -+dnl $3 = code to use if AC_ACVERSION is older than $1. -+define([CF_ACVERSION_CHECK], -+[ -+ifdef([AC_ACVERSION], ,[m4_copy([m4_PACKAGE_VERSION],[AC_ACVERSION])])dnl -+ifdef([m4_version_compare], -+[m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])], -+[CF_ACVERSION_COMPARE( -+AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])), -+AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ACVERSION_COMPARE version: 3 updated: 2012/10/03 18:39:53 -+dnl -------------------- -+dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1, -+dnl MAJOR2, MINOR2, TERNARY2, -+dnl PRINTABLE2, not FOUND, FOUND) -+define([CF_ACVERSION_COMPARE], -+[ifelse(builtin([eval], [$2 < $5]), 1, -+[ifelse([$8], , ,[$8])], -+[ifelse([$9], , ,[$9])])])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ADA_INCLUDE_DIRS version: 8 updated: 2013/10/14 04:24:07 - dnl ------------------- - dnl Construct the list of include-options for the C programs in the Ada95 - dnl binding. -@@ -53,7 +79,7 @@ - ACPPFLAGS="$ACPPFLAGS -I\${includedir}" - elif test "$includedir" != "/usr/include"; then - if test "$includedir" = '${prefix}/include' ; then -- if test $prefix != /usr ; then -+ if test x$prefix != x/usr ; then - ACPPFLAGS="$ACPPFLAGS -I\${includedir}" - fi - else -@@ -268,7 +294,7 @@ - dnl $2 = variable to update (default $LIBS) - AC_DEFUN([CF_ADD_LIBS],[ifelse($2,,LIBS,[$2])="$1 [$]ifelse($2,,LIBS,[$2])"])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ADD_SUBDIR_PATH version: 3 updated: 2010/07/03 20:58:12 -+dnl CF_ADD_SUBDIR_PATH version: 4 updated: 2013/10/08 17:47:05 - dnl ------------------ - dnl Append to a search-list for a nonstandard header/lib-file - dnl $1 = the variable to return as result -@@ -278,9 +304,9 @@ - dnl $5 = a directory that we do not want $4 to match - AC_DEFUN([CF_ADD_SUBDIR_PATH], - [ --test "$4" != "$5" && \ -+test "x$4" != "x$5" && \ - test -d "$4" && \ --ifelse([$5],NONE,,[(test $5 = NONE || test "$4" != "$5") &&]) { -+ifelse([$5],NONE,,[(test -z "$5" || test x$5 = xNONE || test "x$4" != "x$5") &&]) { - test -n "$verbose" && echo " ... testing for $3-directories under $4" - test -d $4/$3 && $1="[$]$1 $4/$3" - test -d $4/$3/$2 && $1="[$]$1 $4/$3/$2" -@@ -290,75 +316,34 @@ - } - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ANSI_CC_CHECK version: 10 updated: 2010/10/23 15:52:32 --dnl ---------------- --dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES' --dnl in the sharutils 4.2 distribution. --AC_DEFUN([CF_ANSI_CC_CHECK], --[ --AC_CACHE_CHECK(for ${CC:-cc} option to accept ANSI C, cf_cv_ansi_cc,[ --cf_cv_ansi_cc=no --cf_save_CFLAGS="$CFLAGS" --cf_save_CPPFLAGS="$CPPFLAGS" --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX -Aa -D_HPUX_SOURCE --# SVR4 -Xc --# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes) --for cf_arg in "-DCC_HAS_PROTOS" \ -- "" \ -- -qlanglvl=ansi \ -- -std1 \ -- -Ae \ -- "-Aa -D_HPUX_SOURCE" \ -- -Xc --do -- CF_ADD_CFLAGS($cf_arg) -- AC_TRY_COMPILE( --[ --#ifndef CC_HAS_PROTOS --#if !defined(__STDC__) || (__STDC__ != 1) --choke me --#endif --#endif --],[ -- int test (int i, double x); -- struct s1 {int (*f) (int a);}; -- struct s2 {int (*f) (double a);};], -- [cf_cv_ansi_cc="$cf_arg"; break]) --done --CFLAGS="$cf_save_CFLAGS" --CPPFLAGS="$cf_save_CPPFLAGS" --]) -- --if test "$cf_cv_ansi_cc" != "no"; then --if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then -- CF_ADD_CFLAGS($cf_cv_ansi_cc) --else -- AC_DEFINE(CC_HAS_PROTOS) --fi --fi --])dnl -+dnl CF_ARG_DISABLE version: 3 updated: 1999/03/30 17:24:31 -+dnl -------------- -+dnl Allow user to disable a normally-on option. -+AC_DEFUN([CF_ARG_DISABLE], -+[CF_ARG_OPTION($1,[$2],[$3],[$4],yes)])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ANSI_CC_REQD version: 4 updated: 2008/03/23 14:48:54 --dnl --------------- --dnl For programs that must use an ANSI compiler, obtain compiler options that --dnl will make it recognize prototypes. We'll do preprocessor checks in other --dnl macros, since tools such as unproto can fake prototypes, but only part of --dnl the preprocessor. --AC_DEFUN([CF_ANSI_CC_REQD], --[AC_REQUIRE([CF_ANSI_CC_CHECK]) --if test "$cf_cv_ansi_cc" = "no"; then -- AC_MSG_ERROR( --[Your compiler does not appear to recognize prototypes. --You have the following choices: -- a. adjust your compiler options -- b. get an up-to-date compiler -- c. use a wrapper such as unproto]) --fi -+dnl CF_ARG_OPTION version: 4 updated: 2010/05/26 05:38:42 -+dnl ------------- -+dnl Restricted form of AC_ARG_ENABLE that ensures user doesn't give bogus -+dnl values. -+dnl -+dnl Parameters: -+dnl $1 = option name -+dnl $2 = help-string -+dnl $3 = action to perform if option is not default -+dnl $4 = action if perform if option is default -+dnl $5 = default option value (either 'yes' or 'no') -+AC_DEFUN([CF_ARG_OPTION], -+[AC_ARG_ENABLE([$1],[$2],[test "$enableval" != ifelse([$5],no,yes,no) && enableval=ifelse([$5],no,no,yes) -+ if test "$enableval" != "$5" ; then -+ifelse([$3],,[ :]dnl -+,[ $3]) ifelse([$4],,,[ -+ else -+ $4]) -+ fi],[enableval=$5 ifelse([$4],,,[ -+ $4 - ])dnl -+ ])])dnl - dnl --------------------------------------------------------------------------- - dnl CF_AR_FLAGS version: 5 updated: 2010/05/20 20:24:29 - dnl ----------- -@@ -413,7 +398,7 @@ - AC_SUBST(ARFLAGS) - ]) - dnl --------------------------------------------------------------------------- --dnl CF_BUILD_CC version: 6 updated: 2006/10/14 15:23:15 -+dnl CF_BUILD_CC version: 7 updated: 2012/10/06 15:31:55 - 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 -@@ -423,7 +408,8 @@ - dnl $1 = default for $CPPFLAGS - dnl $2 = default for $LIBS - AC_DEFUN([CF_BUILD_CC],[ --AC_REQUIRE([CF_PROG_EXT]) -+CF_ACVERSION_CHECK(2.52,, -+ [AC_REQUIRE([CF_PROG_EXT])]) - if test "$cross_compiling" = yes ; then - - # defaults that we might want to override -@@ -504,7 +490,33 @@ - AC_SUBST(BUILD_OBJEXT) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CFG_DEFAULTS version: 7 updated: 2005/09/24 16:15:00 -+dnl CF_CC_ENV_FLAGS version: 1 updated: 2012/10/03 05:25:49 -+dnl --------------- -+dnl Check for user's environment-breakage by stuffing CFLAGS/CPPFLAGS content -+dnl into CC. This will not help with broken scripts that wrap the compiler with -+dnl options, but eliminates a more common category of user confusion. -+AC_DEFUN([CF_CC_ENV_FLAGS], -+[ -+# This should have been defined by AC_PROG_CC -+: ${CC:=cc} -+ -+AC_MSG_CHECKING(\$CC variable) -+case "$CC" in #(vi -+*[[\ \ ]]-[[IUD]]*) -+ AC_MSG_RESULT(broken) -+ AC_MSG_WARN(your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options) -+ # humor him... -+ cf_flags=`echo "$CC" | sed -e 's/^[[^ ]]*[[ ]]//'` -+ CC=`echo "$CC" | sed -e 's/[[ ]].*//'` -+ CF_ADD_CFLAGS($cf_flags) -+ ;; -+*) -+ AC_MSG_RESULT(ok) -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CFG_DEFAULTS version: 10 updated: 2013/09/07 13:54:05 - dnl --------------- - dnl Determine the default configuration into which we'll install ncurses. This - dnl can be overridden by the user's command-line options. There's two items to -@@ -522,7 +534,7 @@ - if test "x$prefix" = "xNONE" ; then - case "$cf_cv_system_name" in - # non-vendor systems don't have a conflict -- openbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu) -+ openbsd*|freebsd*|mirbsd*|linux*|cygwin*|msys*|k*bsd*-gnu|mingw*) - prefix=/usr - ;; - *) prefix=$ac_default_prefix -@@ -558,7 +570,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CHECK_CACHE version: 11 updated: 2008/03/23 14:45:59 -+dnl CF_CHECK_CACHE version: 12 updated: 2012/10/02 20:55:03 - dnl -------------- - dnl Check if we're accidentally using a cache from a different machine. - dnl Derive the system name, as a check for reusing the autoconf cache. -@@ -581,7 +593,7 @@ - system_name="`(hostname) 2>/dev/null`" - fi - fi --test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name") -+test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name",[Define to the system name.]) - AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"]) - - test -z "$system_name" && system_name="$cf_cv_system_name" -@@ -593,7 +605,40 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CURSES_HEADER version: 2 updated: 2010/04/28 06:02:16 -+dnl CF_CLANG_COMPILER version: 2 updated: 2013/11/19 19:23:35 -+dnl ----------------- -+dnl Check if the given compiler is really clang. clang's C driver defines -+dnl __GNUC__ (fooling the configure script into setting $GCC to yes) but does -+dnl not ignore some gcc options. -+dnl -+dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to -+dnl ensure that it is not mistaken for gcc/g++. It is normally invoked from -+dnl the wrappers for gcc and g++ warnings. -+dnl -+dnl $1 = GCC (default) or GXX -+dnl $2 = CLANG_COMPILER (default) -+dnl $3 = CFLAGS (default) or CXXFLAGS -+AC_DEFUN([CF_CLANG_COMPILER],[ -+ifelse([$2],,CLANG_COMPILER,[$2])=no -+ -+if test "$ifelse([$1],,[$1],GCC)" = yes ; then -+ AC_MSG_CHECKING(if this is really Clang ifelse([$1],GXX,C++,C) compiler) -+ cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])" -+ ifelse([$3],,CFLAGS,[$3])="$ifelse([$3],,CFLAGS,[$3]) -Qunused-arguments" -+ AC_TRY_COMPILE([],[ -+#ifdef __clang__ -+#else -+make an error -+#endif -+],[ifelse([$2],,CLANG_COMPILER,[$2])=yes -+cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments" -+],[]) -+ ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS" -+ AC_MSG_RESULT($ifelse([$2],,CLANG_COMPILER,[$2])) -+fi -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_CURSES_HEADER version: 3 updated: 2011/05/01 19:47:45 - dnl ---------------- - dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common - dnl variations of ncurses' installs. -@@ -603,10 +648,10 @@ - AC_CACHE_CHECK(if we have identified curses headers,cf_cv_ncurses_header,[ - cf_cv_ncurses_header=none - for cf_header in ifelse($1,,,[ \ -- $1/curses.h \ -- $1/ncurses.h]) \ -- curses.h \ -- ncurses.h ifelse($1,,[ncurses/curses.h ncurses/ncurses.h]) -+ $1/ncurses.h \ -+ $1/curses.h]) \ -+ ncurses.h \ -+ curses.h ifelse($1,,[ncurses/ncurses.h ncurses/curses.h]) - do - AC_TRY_COMPILE([#include <${cf_header}>], - [initscr(); tgoto("?", 0,0)], -@@ -627,6 +672,67 @@ - dnl "dirname" is not portable, so we fake it with a shell script. - AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_DISABLE_ECHO version: 12 updated: 2012/10/06 16:30:28 -+dnl --------------- -+dnl You can always use "make -n" to see the actual options, but it's hard to -+dnl pick out/analyze warning messages when the compile-line is long. -+dnl -+dnl Sets: -+dnl ECHO_LT - symbol to control if libtool is verbose -+dnl ECHO_LD - symbol to prefix "cc -o" lines -+dnl RULE_CC - symbol to put before implicit "cc -c" lines (e.g., .c.o) -+dnl SHOW_CC - symbol to put before explicit "cc -c" lines -+dnl ECHO_CC - symbol to put before any "cc" line -+dnl -+AC_DEFUN([CF_DISABLE_ECHO],[ -+AC_MSG_CHECKING(if you want to see long compiling messages) -+CF_ARG_DISABLE(echo, -+ [ --disable-echo do not display "compiling" commands], -+ [ -+ ECHO_LT='--silent' -+ ECHO_LD='@echo linking [$]@;' -+ RULE_CC='@echo compiling [$]<' -+ SHOW_CC='@echo compiling [$]@' -+ ECHO_CC='@' -+],[ -+ ECHO_LT='' -+ ECHO_LD='' -+ RULE_CC='' -+ SHOW_CC='' -+ ECHO_CC='' -+]) -+AC_MSG_RESULT($enableval) -+AC_SUBST(ECHO_LT) -+AC_SUBST(ECHO_LD) -+AC_SUBST(RULE_CC) -+AC_SUBST(SHOW_CC) -+AC_SUBST(ECHO_CC) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ENABLE_PC_FILES version: 9 updated: 2012/08/04 13:59:54 -+dnl ------------------ -+dnl This is the "--enable-pc-files" option, which is available if there is a -+dnl pkg-config configuration on the local machine. -+AC_DEFUN([CF_ENABLE_PC_FILES],[ -+AC_REQUIRE([CF_PKG_CONFIG]) -+AC_REQUIRE([CF_WITH_PKG_CONFIG_LIBDIR]) -+ -+if test "$PKG_CONFIG" != none ; then -+ AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG) -+ AC_ARG_ENABLE(pc-files, -+ [ --enable-pc-files generate and install .pc files for pkg-config], -+ [enable_pc_files=$enableval], -+ [enable_pc_files=no]) -+ AC_MSG_RESULT($enable_pc_files) -+ if test "$enable_pc_files" != no -+ then -+ CF_PATH_SYNTAX(PKG_CONFIG_LIBDIR) -+ fi -+else -+ enable_pc_files=no -+fi -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_FIND_LIBRARY version: 9 updated: 2008/03/23 14:48:54 - dnl --------------- - dnl Look for a non-standard library, given parameters for AC_TRY_LINK. We -@@ -807,7 +913,26 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_GCC_ATTRIBUTES version: 14 updated: 2010/10/23 15:52:32 -+dnl CF_FIXUP_ADAFLAGS version: 1 updated: 2012/03/31 18:48:10 -+dnl ----------------- -+dnl make ADAFLAGS consistent with CFLAGS -+AC_DEFUN([CF_FIXUP_ADAFLAGS],[ -+ AC_MSG_CHECKING(optimization options for ADAFLAGS) -+ case "$CFLAGS" in -+ *-g*) -+ CF_ADD_ADAFLAGS(-g) -+ ;; -+ esac -+ case "$CFLAGS" in -+ *-O*) -+ cf_O_flag=`echo "$CFLAGS" |sed -e 's/^.*-O/-O/' -e 's/[[ ]].*//'` -+ CF_ADD_ADAFLAGS($cf_O_flag) -+ ;; -+ esac -+ AC_MSG_RESULT($ADAFLAGS) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GCC_ATTRIBUTES version: 16 updated: 2012/10/02 20:55:03 - dnl ----------------- - dnl Test for availability of useful gcc __attribute__ directives to quiet - dnl compiler warnings. Though useful, not all are supported -- and contrary -@@ -885,27 +1010,27 @@ - test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute) - cat conftest.h >>confdefs.h - case $cf_attribute in #(vi -+ noreturn) #(vi -+ AC_DEFINE_UNQUOTED(GCC_NORETURN,$cf_directive,[Define to noreturn-attribute for gcc]) -+ ;; - printf) #(vi -- if test "$cf_printf_attribute" = no ; then -- cat >>confdefs.h <>confdefs.h <>confdefs.h <>confdefs.h < conftest.$ac_ext <conftest.$ac_ext </dev/null | sed -e 's,^.*/,,' -e 's, .*$,,' | fgrep lib$3.` -- test -z "$cf_cv_$3_soname" && cf_cv_$3_soname=unknown -- fi -- fi --rm -rf conftest* --LIBS="$cf_save_LIBS" --fi --]) --]) --dnl --------------------------------------------------------------------------- --dnl CF_LIB_SUFFIX version: 16 updated: 2008/12/27 12:30:03 -+dnl CF_LIB_SUFFIX version: 22 updated: 2013/09/07 13:54:05 - dnl ------------- - dnl Compute the library file-suffix from the given model name - dnl $1 = model name -@@ -1664,31 +1765,26 @@ - dnl The variable $LIB_SUFFIX, if set, prepends the variable to set. - AC_DEFUN([CF_LIB_SUFFIX], - [ -- AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) -- case $1 in #(vi -- libtool) #(vi -+ case X$1 in #(vi -+ Xlibtool) #(vi - $2='.la' - $3=[$]$2 - ;; -- normal) #(vi -- $2='.a' -- $3=[$]$2 -- ;; -- debug) #(vi -+ Xdebug) #(vi - $2='_g.a' - $3=[$]$2 - ;; -- profile) #(vi -+ Xprofile) #(vi - $2='_p.a' - $3=[$]$2 - ;; -- shared) #(vi -+ Xshared) #(vi - case $cf_cv_system_name in -- aix[[56]]*) #(vi -+ aix[[5-7]]*) #(vi - $2='.a' - $3=[$]$2 - ;; -- cygwin*) #(vi -+ cygwin*|msys*|mingw*) #(vi - $2='.dll' - $3='.dll.a' - ;; -@@ -1708,10 +1804,16 @@ - ;; - esac - ;; -- *) $2='.so' -+ *) #(vi -+ $2='.so' - $3=[$]$2 - ;; - esac -+ ;; -+ *) -+ $2='.a' -+ $3=[$]$2 -+ ;; - esac - test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}" - test -n "$LIB_SUFFIX" && $3="${LIB_SUFFIX}[$]{$3}" -@@ -1735,7 +1837,7 @@ - test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}" - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_LINK_DATAONLY version: 9 updated: 2009/01/01 20:21:38 -+dnl CF_LINK_DATAONLY version: 10 updated: 2012/10/06 17:41:51 - 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 -@@ -1792,81 +1894,12 @@ - AC_MSG_RESULT($cf_cv_link_dataonly) - - if test "$cf_cv_link_dataonly" = no ; then -- AC_DEFINE(BROKEN_LINKER) -+ AC_DEFINE(BROKEN_LINKER,1,[if data-only library module does not link]) - BROKEN_LINKER=1 - fi - - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_LINK_FUNCS version: 7 updated: 2006/12/16 12:33:30 --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. --dnl A few non-systems implement neither (or have nonfunctional versions). --AC_DEFUN([CF_LINK_FUNCS], --[ --AC_CHECK_FUNCS( \ -- remove \ -- unlink ) -- --if test "$cross_compiling" = yes ; then -- AC_CHECK_FUNCS( \ -- link \ -- symlink ) --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([ --#include --#include --#ifdef HAVE_UNISTD_H --#include --#endif --int main() --{ -- int fail = 0; -- char *src = "config.log"; -- char *dst = "conftest.chk"; -- struct stat src_sb; -- struct stat dst_sb; -- -- stat(src, &src_sb); -- fail = ($cf_func("config.log", "conftest.chk") < 0) -- || (stat(dst, &dst_sb) < 0) -- || (dst_sb.st_mtime != src_sb.st_mtime); --#ifdef HAVE_UNLINK -- unlink(dst); --#else -- remove(dst); --#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'],[ -- eval 'ac_cv_func_'$cf_func'=error']) -- done -- test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no -- ]) -- test "$ac_cv_func_link" = yes && AC_DEFINE(HAVE_LINK) -- test "$ac_cv_func_symlink" = yes && AC_DEFINE(HAVE_SYMLINK) --fi --])dnl --dnl --------------------------------------------------------------------------- --dnl CF_MAIN_RETURN version: 1 updated: 2006/12/10 09:51:54 --dnl -------------- --dnl Check if a return from main to the shell actually returns the same exit --dnl code. This is true for almost any POSIX environment. --dnl --dnl Some very old environments did not flush stdout, etc., on an exit. That --dnl would be a useful case to test for also. --AC_DEFUN([CF_MAIN_RETURN], --[ --cf_cv_main_return=return --])dnl --dnl --------------------------------------------------------------------------- - dnl CF_MAKEFLAGS version: 14 updated: 2011/03/31 19:29:46 - dnl ------------ - dnl Some 'make' programs support ${MAKEFLAGS}, some ${MFLAGS}, to pass 'make' -@@ -1944,7 +1977,7 @@ - AC_SUBST(MAKE_LOWER_TAGS) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55 -+dnl CF_MIXEDCASE_FILENAMES version: 6 updated: 2013/10/08 17:47:05 - dnl ---------------------- - dnl Check if the file-system supports mixed-case filenames. If we're able to - dnl create a lowercase name and see it as uppercase, it doesn't support that. -@@ -1953,7 +1986,7 @@ - AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[ - if test "$cross_compiling" = yes ; then - case $target_alias in #(vi -- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi -+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi - cf_cv_mixedcase=no - ;; - *) -@@ -1971,10 +2004,10 @@ - rm -f conftest CONFTEST - fi - ]) --test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES) -+test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES,1,[Define to 1 if filesystem supports mixed-case filenames.]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_MKSTEMP version: 7 updated: 2010/08/14 18:25:37 -+dnl CF_MKSTEMP version: 9 updated: 2012/10/03 04:34:49 - dnl ---------- - dnl Check for a working mkstemp. This creates two files, checks that they are - dnl successfully created and distinct (AmigaOS apparently fails on the last). -@@ -2016,11 +2049,13 @@ - } - ],[cf_cv_func_mkstemp=yes - ],[cf_cv_func_mkstemp=no --],[AC_CHECK_FUNC(mkstemp) --]) -+],[cf_cv_func_mkstemp=maybe]) - ]) -+if test "x$cf_cv_func_mkstemp" = xmaybe ; then -+ AC_CHECK_FUNC(mkstemp) -+fi - if test "x$cf_cv_func_mkstemp" = xyes || test "x$ac_cv_func_mkstemp" = xyes ; then -- AC_DEFINE(HAVE_MKSTEMP) -+ AC_DEFINE(HAVE_MKSTEMP,1,[Define to 1 if mkstemp() is available and working.]) - fi - ])dnl - dnl --------------------------------------------------------------------------- -@@ -2141,7 +2176,7 @@ - ,[$1=no]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NCURSES_CONFIG version: 8 updated: 2010/07/08 05:17:30 -+dnl CF_NCURSES_CONFIG version: 10 updated: 2012/10/06 08:57:51 - dnl ----------------- - dnl Tie together the configure-script macros for ncurses. - dnl Prefer the "-config" script from ncurses 6.x, to simplify analysis. -@@ -2153,7 +2188,10 @@ - cf_ncuconfig_root=ifelse($1,,ncurses,$1) - - echo "Looking for ${cf_ncuconfig_root}-config" --AC_PATH_PROGS(NCURSES_CONFIG,${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config,none) -+ -+CF_ACVERSION_CHECK(2.52, -+ [AC_CHECK_TOOLS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)], -+ [AC_PATH_PROGS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)]) - - if test "$NCURSES_CONFIG" != none ; then - -@@ -2164,7 +2202,7 @@ - CF_CURSES_HEADER(ifelse($1,,ncurses,$1)) - - dnl like CF_NCURSES_CPPFLAGS --AC_DEFINE(NCURSES) -+AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries]) - - dnl like CF_NCURSES_LIBS - CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_ncuconfig_root) -@@ -2181,7 +2219,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NCURSES_CPPFLAGS version: 20 updated: 2010/11/20 17:02:38 -+dnl CF_NCURSES_CPPFLAGS version: 21 updated: 2012/10/06 08:57:51 - dnl ------------------- - dnl Look for the SVr4 curses clone 'ncurses' in the standard places, adjusting - dnl the CPPFLAGS variable so we can include its header. -@@ -2227,12 +2265,12 @@ - CF_TERM_HEADER - - # some applications need this, but should check for NCURSES_VERSION --AC_DEFINE(NCURSES) -+AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries]) - - CF_NCURSES_VERSION - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NCURSES_HEADER version: 2 updated: 2008/03/23 14:48:54 -+dnl CF_NCURSES_HEADER version: 3 updated: 2012/10/06 08:57:51 - dnl ----------------- - dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common - dnl variations of ncurses' installs. -@@ -2283,16 +2321,16 @@ - - case $cf_cv_ncurses_header in # (vi - *ncurses.h) -- AC_DEFINE(HAVE_NCURSES_H) -+ AC_DEFINE(HAVE_NCURSES_H,1,[Define to 1 if we have ncurses.h]) - ;; - esac - - case $cf_cv_ncurses_header in # (vi - ncurses/curses.h|ncurses/ncurses.h) -- AC_DEFINE(HAVE_NCURSES_NCURSES_H) -+ AC_DEFINE(HAVE_NCURSES_NCURSES_H,1,[Define to 1 if we have ncurses/ncurses.h]) - ;; - ncursesw/curses.h|ncursesw/ncurses.h) -- AC_DEFINE(HAVE_NCURSESW_NCURSES_H) -+ AC_DEFINE(HAVE_NCURSESW_NCURSES_H,1,[Define to 1 if we have ncursesw/ncurses.h]) - ;; - esac - -@@ -2366,7 +2404,7 @@ - AC_DEFINE_UNQUOTED($cf_nculib_ROOT) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NCURSES_VERSION version: 13 updated: 2010/10/23 15:54:49 -+dnl CF_NCURSES_VERSION version: 14 updated: 2012/10/06 08:57:51 - 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 -@@ -2425,58 +2463,10 @@ - ]) - rm -f $cf_tempfile - ]) --test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES) --])dnl --dnl --------------------------------------------------------------------------- --dnl CF_NO_LEAKS_OPTION version: 4 updated: 2006/12/16 14:24:05 --dnl ------------------ --dnl see CF_WITH_NO_LEAKS --AC_DEFUN([CF_NO_LEAKS_OPTION],[ --AC_MSG_CHECKING(if you want to use $1 for testing) --AC_ARG_WITH($1, -- [$2], -- [AC_DEFINE($3)ifelse([$4],,[ -- $4 --]) -- : ${with_cflags:=-g} -- : ${with_no_leaks:=yes} -- with_$1=yes], -- [with_$1=]) --AC_MSG_RESULT(${with_$1:-no}) -- --case .$with_cflags in #(vi --.*-g*) -- case .$CFLAGS in #(vi -- .*-g*) #(vi -- ;; -- *) -- CF_ADD_CFLAGS([-g]) -- ;; -- esac -- ;; --esac --])dnl --dnl --------------------------------------------------------------------------- --dnl CF_NUMBER_SYNTAX version: 1 updated: 2003/09/20 18:12:49 --dnl ---------------- --dnl Check if the given variable is a number. If not, report an error. --dnl $1 is the variable --dnl $2 is the message --AC_DEFUN([CF_NUMBER_SYNTAX],[ --if test -n "$1" ; then -- case $1 in #(vi -- [[0-9]]*) #(vi -- ;; -- *) -- AC_MSG_ERROR($2 is not a number: $1) -- ;; -- esac --else -- AC_MSG_ERROR($2 value is empty) --fi -+test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_OBJ_SUBDIR version: 4 updated: 2002/02/23 20:38:31 -+dnl CF_OBJ_SUBDIR version: 6 updated: 2013/09/07 14:06:10 - dnl ------------- - dnl Compute the object-directory name from the given model name - AC_DEFUN([CF_OBJ_SUBDIR], -@@ -2488,7 +2478,7 @@ - profile) $2='obj_p' ;; - shared) - case $cf_cv_system_name in #(vi -- cygwin) #(vi -+ cygwin|msys) #(vi - $2='objects' ;; - *) - $2='obj_s' ;; -@@ -2496,20 +2486,23 @@ - esac - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PATHSEP version: 5 updated: 2010/05/26 05:38:42 -+dnl CF_PATHSEP version: 6 updated: 2012/09/29 18:38:12 - dnl ---------- --dnl Provide a value for the $PATH and similar separator -+dnl Provide a value for the $PATH and similar separator (or amend the value -+dnl as provided in autoconf 2.5x). - AC_DEFUN([CF_PATHSEP], - [ -+ AC_MSG_CHECKING(for PATH separator) - case $cf_cv_system_name in - os2*) PATH_SEPARATOR=';' ;; -- *) PATH_SEPARATOR=':' ;; -+ *) ${PATH_SEPARATOR:=':'} ;; - esac - ifelse([$1],,,[$1=$PATH_SEPARATOR]) - AC_SUBST(PATH_SEPARATOR) -+ AC_MSG_RESULT($PATH_SEPARATOR) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PATH_SYNTAX version: 13 updated: 2010/05/26 05:38:42 -+dnl CF_PATH_SYNTAX version: 14 updated: 2012/06/19 20:58:54 - dnl -------------- - dnl Check the argument to see that it looks like a pathname. Rewrite it if it - dnl begins with one of the prefix/exec_prefix variables, and then again if the -@@ -2529,7 +2522,7 @@ - ;; - .[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX - ;; --.\[$]{*prefix}*) #(vi -+.\[$]{*prefix}*|.\[$]{*dir}*) #(vi - eval $1="[$]$1" - case ".[$]$1" in #(vi - .NONE/*) -@@ -2546,7 +2539,7 @@ - esac - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PKG_CONFIG version: 4 updated: 2011/02/18 20:26:24 -+dnl CF_PKG_CONFIG version: 7 updated: 2011/04/29 04:53:22 - dnl ------------- - dnl Check for the package-config program, unless disabled by command-line. - AC_DEFUN([CF_PKG_CONFIG], -@@ -2563,7 +2556,9 @@ - PKG_CONFIG=none - ;; - yes) #(vi -- AC_PATH_TOOL(PKG_CONFIG, pkg-config, none) -+ CF_ACVERSION_CHECK(2.52, -+ [AC_PATH_TOOL(PKG_CONFIG, pkg-config, none)], -+ [AC_PATH_PROG(PKG_CONFIG, pkg-config, none)]) - ;; - *) - PKG_CONFIG=$withval -@@ -2667,6 +2662,19 @@ - test -z "$AWK" && AC_MSG_ERROR(No awk program found) - ])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_PROG_CC version: 3 updated: 2012/10/06 15:31:55 -+dnl ---------- -+dnl standard check for CC, plus followup sanity checks -+dnl $1 = optional parameter to pass to AC_PROG_CC to specify compiler name -+AC_DEFUN([CF_PROG_CC],[ -+ifelse($1,,[AC_PROG_CC],[AC_PROG_CC($1)]) -+CF_GCC_VERSION -+CF_ACVERSION_CHECK(2.52, -+ [AC_PROG_CC_STDC], -+ [CF_ANSI_CC_REQD]) -+CF_CC_ENV_FLAGS -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_PROG_CC_C_O version: 3 updated: 2010/08/14 18:25:37 - dnl -------------- - dnl Analogous to AC_PROG_CC_C_O, but more useful: tests only $CC, ensures that -@@ -2721,7 +2729,7 @@ - test -z "$EGREP" && AC_MSG_ERROR(No egrep program found) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18 -+dnl CF_PROG_EXT version: 11 updated: 2012/10/06 08:57:51 - dnl ----------- - dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX. - AC_DEFUN([CF_PROG_EXT], -@@ -2743,10 +2751,10 @@ - - PROG_EXT="$EXEEXT" - AC_SUBST(PROG_EXT) --test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT") -+test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT",[Define to the program extension (normally blank)]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PROG_GNAT version: 1 updated: 2010/06/19 15:22:18 -+dnl CF_PROG_GNAT version: 2 updated: 2011/10/22 14:01:47 - dnl ------------ - dnl Check for gnatmake, ensure that it is complete. - AC_DEFUN([CF_PROG_GNAT],[ -@@ -2754,6 +2762,7 @@ - AC_CHECK_PROG(gnat_exists, $cf_ada_make, yes, no) - if test "$ac_cv_prog_gnat_exists" = no; then - cf_ada_make= -+ cf_cv_prog_gnat_correct=no - else - CF_GNAT_VERSION - AC_CHECK_PROG(M4_exists, m4, yes, no) -@@ -2831,18 +2840,19 @@ - $1=`echo "$2" | sed -e 's/-l$3[[ ]]//g' -e 's/-l$3[$]//'` - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_SHARED_OPTS version: 64 updated: 2010/06/05 16:51:16 -+dnl CF_SHARED_OPTS version: 84 updated: 2013/11/03 06:26:10 - dnl -------------- - dnl -------------- - dnl Attempt to determine the appropriate CC/LD options for creating a shared - dnl library. - dnl --dnl Note: ${LOCAL_LDFLAGS} is used to link executables that will run within the --dnl build-tree, i.e., by making use of the libraries that are compiled in ../lib --dnl We avoid compiling-in a ../lib path for the shared library since that can --dnl lead to unexpected results at runtime. --dnl ${LOCAL_LDFLAGS2} has the same intention but assumes that the shared libraries --dnl are compiled in ../../lib -+dnl Notes: -+dnl a) ${LOCAL_LDFLAGS} is used to link executables that will run within -+dnl the build-tree, i.e., by making use of the libraries that are compiled in -+dnl $rel_builddir/lib We avoid compiling-in a $rel_builddir/lib path for the -+dnl shared library since that can lead to unexpected results at runtime. -+dnl b) ${LOCAL_LDFLAGS2} has the same intention but assumes that the shared -+dnl libraries are compiled in ../../lib - dnl - dnl The variable 'cf_cv_do_symlinks' is used to control whether we configure - dnl to install symbolic links to the rel/abi versions of shared libraries. -@@ -2857,12 +2867,19 @@ - dnl Some loaders leave 'so_locations' lying around. It's nice to clean up. - AC_DEFUN([CF_SHARED_OPTS], - [ -- AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) - AC_REQUIRE([CF_LD_RPATH_OPT]) -+ RM_SHARED_OPTS= - LOCAL_LDFLAGS= - LOCAL_LDFLAGS2= - LD_SHARED_OPTS= - INSTALL_LIB="-m 644" -+ : ${rel_builddir:=.} -+ -+ shlibdir=$libdir -+ AC_SUBST(shlibdir) -+ -+ MAKE_DLLS="#" -+ AC_SUBST(MAKE_DLLS) - - cf_cv_do_symlinks=no - cf_ld_rpath_opt= -@@ -2887,6 +2904,7 @@ - AC_MSG_RESULT($cf_cv_shlib_version) - - cf_cv_rm_so_locs=no -+ cf_try_cflags= - - # Some less-capable ports of gcc support only -fpic - CC_SHARED_OPTS= -@@ -2906,10 +2924,14 @@ - cf_cv_shlib_version_infix=no - - case $cf_cv_system_name in #(vi -- aix[[56]]*) #(vi -+ aix4.[3-9]*|aix[[5-7]]*) #(vi - if test "$GCC" = yes; then - CC_SHARED_OPTS= -- MK_SHARED_LIB='$(CC) -shared' -+ MK_SHARED_LIB='${CC} -shared -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@' -+ else -+ # CC_SHARED_OPTS='-qpic=large -G' -+ # perhaps "-bM:SRE -bnoentry -bexpall" -+ MK_SHARED_LIB='${CC} -G -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@' - fi - ;; - beos*) #(vi -@@ -2917,9 +2939,12 @@ - ;; - cygwin*) #(vi - CC_SHARED_OPTS= -- MK_SHARED_LIB='sh ../mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" - cf_cv_shlib_version=cygdll - cf_cv_shlib_version_infix=cygdll -+ shlibdir=$bindir -+ MAKE_DLLS= - cat >mk_shared_lib.sh <<-CF_EOF - #!/bin/sh - SHARED_LIB=\[$]1 -@@ -2930,12 +2955,34 @@ - ** SHARED_LIB \[$]SHARED_LIB - ** IMPORT_LIB \[$]IMPORT_LIB - EOF -- exec \[$]* -shared -Wl,--out-implib=../lib/\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o ../lib/\[$]{SHARED_LIB} -+ exec \[$]* -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB} -+CF_EOF -+ chmod +x mk_shared_lib.sh -+ ;; -+ msys*) #(vi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" -+ cf_cv_shlib_version=msysdll -+ cf_cv_shlib_version_infix=msysdll -+ shlibdir=$bindir -+ MAKE_DLLS= -+ cat >mk_shared_lib.sh <<-CF_EOF -+ #!/bin/sh -+ SHARED_LIB=\[$]1 -+ IMPORT_LIB=\`echo "\[$]1" | sed -e 's/msys-/lib/' -e 's/[[0-9]]*\.dll[$]/.dll.a/'\` -+ shift -+ cat <<-EOF -+ Linking shared library -+ ** SHARED_LIB \[$]SHARED_LIB -+ ** IMPORT_LIB \[$]IMPORT_LIB -+EOF -+ exec \[$]* -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB} - CF_EOF - chmod +x mk_shared_lib.sh - ;; - darwin*) #(vi -- EXTRA_CFLAGS="-no-cpp-precomp" -+ cf_try_cflags="no-cpp-precomp" - CC_SHARED_OPTS="-dynamic" - MK_SHARED_LIB='${CC} ${CFLAGS} -dynamiclib -install_name ${libdir}/`basename $[@]` -compatibility_version ${ABI_VERSION} -current_version ${ABI_VERSION} -o $[@]' - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi -@@ -2949,6 +2996,14 @@ - LDFLAGS="$LDFLAGS -Wl,-search_paths_first" - fi - ;; -+ hpux[[7-8]]*) #(vi -+ # HP-UX 8.07 ld lacks "+b" option used for libdir search-list -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='+Z' -+ fi -+ MK_SHARED_LIB='${LD} -b -o $[@]' -+ INSTALL_LIB="-m 555" -+ ;; - hpux*) #(vi - # (tested with gcc 2.7.2 -- I don't have c89) - if test "$GCC" = yes; then -@@ -2962,9 +3017,19 @@ - # readonly to exploit a quirk in the memory manager. - INSTALL_LIB="-m 555" - ;; -+ interix*) -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ if test "$cf_cv_shlib_version" = rel; then -+ cf_shared_soname='`basename $@ .${REL_VERSION}`.${ABI_VERSION}' -+ else -+ cf_shared_soname='`basename $@`' -+ fi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='${CC} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o $@' -+ ;; - irix*) #(vi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - # tested with IRIX 5.2 and 'cc'. - if test "$GCC" != yes; then -@@ -2981,18 +3046,45 @@ - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" - fi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - CF_SHARED_SONAME - MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]' - ;; -- openbsd[[2-9]].*) #(vi -+ mingw*) #(vi -+ cf_cv_shlib_version=mingw -+ cf_cv_shlib_version_infix=mingw -+ shlibdir=$bindir -+ MAKE_DLLS= -+ if test "$DFT_LWR_MODEL" = "shared" ; then -+ LOCAL_LDFLAGS="-Wl,--enable-auto-import" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ EXTRA_LDFLAGS="-Wl,--enable-auto-import $EXTRA_LDFLAGS" -+ fi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" -+ cat >mk_shared_lib.sh <<-CF_EOF -+ #!/bin/sh -+ SHARED_LIB=\[$]1 -+ IMPORT_LIB=\`echo "\[$]1" | sed -e 's/[[0-9]]*\.dll[$]/.dll.a/'\` -+ shift -+ cat <<-EOF -+ Linking shared library -+ ** SHARED_LIB \[$]SHARED_LIB -+ ** IMPORT_LIB \[$]IMPORT_LIB -+EOF -+ exec \[$]* -shared -Wl,--enable-auto-import,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB} -+CF_EOF -+ chmod +x mk_shared_lib.sh -+ ;; -+ openbsd[[2-9]].*|mirbsd*) #(vi - if test "$DFT_LWR_MODEL" = "shared" ; then - LOCAL_LDFLAGS="${LD_RPATH_OPT}\$(LOCAL_LIBDIR)" - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" - fi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" - CF_SHARED_SONAME -@@ -3003,12 +3095,12 @@ - MK_SHARED_LIB='${LD} -Bshareable -o $[@]' - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel - ;; -- freebsd*) #(vi -+ dragonfly*|freebsd*) #(vi - CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" - if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then - LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)" -- LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${libdir} $LOCAL_LDFLAGS" -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${RPATH_LIST} $LOCAL_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - CF_SHARED_SONAME - MK_SHARED_LIB='${LD} -shared -Bshareable -soname=`basename $[@]` -o $[@]' -@@ -3018,7 +3110,7 @@ - if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then - LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)" - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - if test "$cf_cv_shlib_version" = auto; then - if test -f /usr/libexec/ld.elf_so; then - cf_cv_shlib_version=abi -@@ -3029,7 +3121,7 @@ - CF_SHARED_SONAME - MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $[@]' - else -- MK_SHARED_LIB='${LD} -shared -Bshareable -o $[@]' -+ MK_SHARED_LIB='${CC} -Wl,-shared -Wl,-Bshareable -o $[@]' - fi - ;; - osf*|mls+*) #(vi -@@ -3123,20 +3215,57 @@ - ;; - esac - -- if test -n "$cf_ld_rpath_opt" ; then -- MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${libdir}" -+ if test -n "$cf_try_cflags" -+ then -+cat > conftest.$ac_ext < -+int main(int argc, char *argv[[]]) -+{ -+ printf("hello\n"); -+ return (argv[[argc-1]] == 0) ; -+} -+EOF -+ cf_save_CFLAGS="$CFLAGS" -+ for cf_opt in $cf_try_cflags -+ do -+ CFLAGS="$cf_save_CFLAGS -$cf_opt" -+ AC_MSG_CHECKING(if CFLAGS option -$cf_opt works) -+ if AC_TRY_EVAL(ac_compile); then -+ AC_MSG_RESULT(yes) -+ cf_save_CFLAGS="$CFLAGS" -+ else -+ AC_MSG_RESULT(no) -+ fi -+ done -+ CFLAGS="$cf_save_CFLAGS" - fi - -+ -+ # RPATH_LIST is a colon-separated list of directories -+ test -n "$cf_ld_rpath_opt" && MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${RPATH_LIST}" -+ test -z "$RPATH_LIST" && RPATH_LIST="\${libdir}" -+ -+ test $cf_cv_rm_so_locs = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations" -+ -+ CF_VERBOSE(CC_SHARED_OPTS: $CC_SHARED_OPTS) -+ CF_VERBOSE(MK_SHARED_LIB: $MK_SHARED_LIB) -+ - AC_SUBST(CC_SHARED_OPTS) - AC_SUBST(LD_RPATH_OPT) - AC_SUBST(LD_SHARED_OPTS) - AC_SUBST(MK_SHARED_LIB) -+ AC_SUBST(RM_SHARED_OPTS) -+ - AC_SUBST(LINK_PROGS) - AC_SUBST(LINK_TESTS) -+ - AC_SUBST(EXTRA_LDFLAGS) - AC_SUBST(LOCAL_LDFLAGS) - AC_SUBST(LOCAL_LDFLAGS2) -+ - AC_SUBST(INSTALL_LIB) -+ AC_SUBST(RPATH_LIST) - ])dnl - dnl --------------------------------------------------------------------------- - dnl CF_SHARED_SONAME version: 3 updated: 2008/09/08 18:34:43 -@@ -3180,24 +3309,7 @@ - CF_ADD_SUBDIR_PATH($1,$2,$3,[$]HOME,$prefix) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_SUBST version: 4 updated: 2006/06/17 12:33:03 --dnl -------- --dnl Shorthand macro for substituting things that the user may override --dnl with an environment variable. --dnl --dnl $1 = long/descriptive name --dnl $2 = environment variable --dnl $3 = default value --AC_DEFUN([CF_SUBST], --[AC_CACHE_VAL(cf_cv_subst_$2,[ --AC_MSG_CHECKING(for $1 (symbol $2)) --CF_SUBST_IF([-z "[$]$2"], [$2], [$3]) --cf_cv_subst_$2=[$]$2 --AC_MSG_RESULT([$]$2) --]) --])dnl --dnl --------------------------------------------------------------------------- --dnl CF_TERM_HEADER version: 2 updated: 2010/10/23 15:54:49 -+dnl CF_TERM_HEADER version: 3 updated: 2012/10/06 08:57:51 - dnl -------------- - dnl Look for term.h, which is part of X/Open curses. It defines the interface - dnl to terminfo database. Usually it is in the same include-path as curses.h, -@@ -3230,29 +3342,68 @@ - - case $cf_cv_term_header in # (vi - *term.h) -- AC_DEFINE(HAVE_TERM_H) -+ AC_DEFINE(HAVE_TERM_H,1,[Define to 1 if we have term.h]) - ;; - esac - - case $cf_cv_term_header in # (vi - ncurses/term.h) #(vi -- AC_DEFINE(HAVE_NCURSES_TERM_H) -+ AC_DEFINE(HAVE_NCURSES_TERM_H,1,[Define to 1 if we have ncurses/term.h]) - ;; - ncursesw/term.h) -- AC_DEFINE(HAVE_NCURSESW_TERM_H) -+ AC_DEFINE(HAVE_NCURSESW_TERM_H,1,[Define to 1 if we have ncursesw/term.h]) - ;; - esac - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_TOP_BUILDDIR version: 1 updated: 2006/10/15 16:33:23 -+dnl CF_TOP_BUILDDIR version: 2 updated: 2013/07/27 17:38:32 - dnl --------------- - dnl Define a top_builddir symbol, for applications that need an absolute path. - AC_DEFUN([CF_TOP_BUILDDIR], - [ --top_builddir=`pwd` -+top_builddir=ifelse($1,,`pwd`,$1) - AC_SUBST(top_builddir) - ])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_TRY_XOPEN_SOURCE version: 1 updated: 2011/10/30 17:09:50 -+dnl ------------------- -+dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we -+dnl can define it successfully. -+AC_DEFUN([CF_TRY_XOPEN_SOURCE],[ -+AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[ -+ AC_TRY_COMPILE([ -+#include -+#include -+#include -+],[ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -+ AC_TRY_COMPILE([ -+#include -+#include -+#include -+],[ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_cv_xopen_source=$cf_XOPEN_SOURCE]) -+ CPPFLAGS="$cf_save" -+ ]) -+]) -+ -+if test "$cf_cv_xopen_source" != no ; then -+ CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE) -+ CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE) -+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" -+ CF_ADD_CFLAGS($cf_temp_xopen_source) -+fi -+]) -+dnl --------------------------------------------------------------------------- - dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59 - dnl -------- - dnl Make an uppercase version of a variable -@@ -3262,7 +3413,7 @@ - $1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_UTF8_LIB version: 7 updated: 2010/06/20 09:24:28 -+dnl CF_UTF8_LIB version: 8 updated: 2012/10/06 08:57:51 - dnl ----------- - dnl Check for multibyte support, and if not found, utf8 compatibility library - AC_DEFUN([CF_UTF8_LIB], -@@ -3281,7 +3432,7 @@ - # HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between - # ncurses/ncursesw: - if test "$cf_cv_utf8_lib" = "add-on" ; then -- AC_DEFINE(HAVE_LIBUTF8_H) -+ AC_DEFINE(HAVE_LIBUTF8_H,1,[Define to 1 if we should include libutf8.h]) - CF_ADD_INCDIR($cf_cv_header_path_utf8) - CF_ADD_LIBDIR($cf_cv_library_path_utf8) - CF_ADD_LIBS($cf_cv_library_file_utf8) -@@ -3415,7 +3566,33 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_WITH_PATH version: 10 updated: 2010/10/23 15:44:18 -+dnl CF_WITH_LIB_PREFIX version: 1 updated: 2012/01/21 19:28:10 -+dnl ------------------ -+dnl Allow the library-prefix to be overridden. OS/2 EMX originally had no -+dnl "lib" prefix, e.g., because it used the dll naming convention. -+dnl -+dnl $1 = variable to set -+AC_DEFUN([CF_WITH_LIB_PREFIX], -+[ -+AC_MSG_CHECKING(if you want to have a library-prefix) -+AC_ARG_WITH(lib-prefix, -+ [ --with-lib-prefix override library-prefix], -+ [with_lib_prefix=$withval], -+ [with_lib_prefix=auto]) -+AC_MSG_RESULT($with_lib_prefix) -+ -+if test $with_lib_prefix = auto -+then -+ CF_LIB_PREFIX($1) -+elif test $with_lib_prefix = no -+then -+ LIB_PREFIX= -+else -+ LIB_PREFIX=$with_lib_prefix -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_PATH version: 11 updated: 2012/09/29 15:04:19 - dnl ------------ - dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just - dnl defaulting to yes/no. -@@ -3432,11 +3609,54 @@ - if ifelse([$5],,true,[test -n "$5"]) ; then - CF_PATH_SYNTAX(withval) - fi --$3="$withval" -+eval $3="$withval" - AC_SUBST($3)dnl - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_WITH_PTHREAD version: 3 updated: 2010/05/29 16:31:02 -+dnl CF_WITH_PKG_CONFIG_LIBDIR version: 2 updated: 2011/12/10 18:58:47 -+dnl ------------------------- -+dnl Allow the choice of the pkg-config library directory to be overridden. -+AC_DEFUN([CF_WITH_PKG_CONFIG_LIBDIR],[ -+if test "$PKG_CONFIG" != none ; then -+ AC_MSG_CHECKING(for $PKG_CONFIG library directory) -+ AC_ARG_WITH(pkg-config-libdir, -+ [ --with-pkg-config-libdir=XXX use given directory for installing pc-files], -+ [PKG_CONFIG_LIBDIR=$withval], -+ [PKG_CONFIG_LIBDIR=yes]) -+ -+ case x$PKG_CONFIG_LIBDIR in #(vi -+ x/*) #(vi -+ ;; -+ xyes) #(vi -+ # look for the library directory using the same prefix as the executable -+ cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'` -+ case x`(arch) 2>/dev/null` in #(vi -+ *64) #(vi -+ for cf_config in $cf_path/share $cf_path/lib64 $cf_path/lib32 $cf_path/lib -+ do -+ if test -d $cf_config/pkgconfig -+ then -+ PKG_CONFIG_LIBDIR=$cf_config/pkgconfig -+ break -+ fi -+ done -+ ;; -+ *) -+ PKG_CONFIG_LIBDIR=$cf_path/lib/pkgconfig -+ ;; -+ esac -+ ;; -+ *) -+ ;; -+ esac -+ -+ AC_MSG_RESULT($PKG_CONFIG_LIBDIR) -+fi -+ -+AC_SUBST(PKG_CONFIG_LIBDIR) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_PTHREAD version: 6 updated: 2012/10/06 17:41:51 - dnl --------------- - dnl Check for POSIX thread library. - AC_DEFUN([CF_WITH_PTHREAD], -@@ -3450,30 +3670,55 @@ - - if test "$with_pthread" != no ; then - AC_CHECK_HEADER(pthread.h,[ -- AC_DEFINE(HAVE_PTHREADS_H) -+ AC_DEFINE(HAVE_PTHREADS_H,1,[Define to 1 if we have pthreads.h header]) - -- AC_MSG_CHECKING(if we can link with the pthread library) -- cf_save_LIBS="$LIBS" -- CF_ADD_LIB(pthread) -- AC_TRY_LINK([ -+ for cf_lib_pthread in pthread c_r -+ do -+ AC_MSG_CHECKING(if we can link with the $cf_lib_pthread library) -+ cf_save_LIBS="$LIBS" -+ CF_ADD_LIB($cf_lib_pthread) -+ AC_TRY_LINK([ - #include - ],[ -- int rc = pthread_create(0,0,0,0); -+ int rc = pthread_create(0,0,0,0); -+ int r2 = pthread_mutexattr_settype(0, 0); - ],[with_pthread=yes],[with_pthread=no]) -- LIBS="$cf_save_LIBS" -- AC_MSG_RESULT($with_pthread) -+ LIBS="$cf_save_LIBS" -+ AC_MSG_RESULT($with_pthread) -+ test "$with_pthread" = yes && break -+ done - -- if test "$with_pthread" = yes ; then -- CF_ADD_LIB(pthread) -- AC_DEFINE(HAVE_LIBPTHREADS) -- else -- AC_MSG_ERROR(Cannot link with pthread library) -- fi -+ if test "$with_pthread" = yes ; then -+ CF_ADD_LIB($cf_lib_pthread) -+ AC_DEFINE(HAVE_LIBPTHREADS,1,[Define to 1 if we have pthreads library]) -+ else -+ AC_MSG_ERROR(Cannot link with pthread library) -+ fi - ]) - fi - ]) - dnl --------------------------------------------------------------------------- --dnl CF_XOPEN_SOURCE version: 35 updated: 2011/02/20 20:37:37 -+dnl CF_WITH_SYSTYPE version: 1 updated: 2013/01/26 16:26:12 -+dnl --------------- -+dnl For testing, override the derived host system-type which is used to decide -+dnl things such as the linker commands used to build shared libraries. This is -+dnl normally chosen automatically based on the type of system which you are -+dnl building on. We use it for testing the configure script. -+dnl -+dnl This is different from the --host option: it is used only for testing parts -+dnl of the configure script which would not be reachable with --host since that -+dnl relies on the build environment being real, rather than mocked up. -+AC_DEFUN([CF_WITH_SYSTYPE],[ -+CF_CHECK_CACHE([AC_CANONICAL_SYSTEM]) -+AC_ARG_WITH(system-type, -+ [ --with-system-type=XXX test: override derived host system-type], -+[AC_MSG_WARN(overriding system type to $withval) -+ cf_cv_system_name=$withval -+ host_os=$withval -+]) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_XOPEN_SOURCE version: 46 updated: 2014/02/09 19:30:15 - dnl --------------- - dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions, - dnl or adapt to the vendor's definitions to get equivalent functionality, -@@ -3483,16 +3728,17 @@ - dnl $1 is the nominal value for _XOPEN_SOURCE - dnl $2 is the nominal value for _POSIX_C_SOURCE - AC_DEFUN([CF_XOPEN_SOURCE],[ -+AC_REQUIRE([AC_CANONICAL_HOST]) - - cf_XOPEN_SOURCE=ifelse([$1],,500,[$1]) - cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2]) - cf_xopen_source= - - case $host_os in #(vi --aix[[456]]*) #(vi -+aix[[4-7]]*) #(vi - cf_xopen_source="-D_ALL_SOURCE" - ;; --cygwin) #(vi -+cygwin|msys) #(vi - cf_XOPEN_SOURCE=600 - ;; - darwin[[0-8]].*) #(vi -@@ -3500,6 +3746,7 @@ - ;; - darwin*) #(vi - cf_xopen_source="-D_DARWIN_C_SOURCE" -+ cf_XOPEN_SOURCE= - ;; - freebsd*|dragonfly*) #(vi - # 5.x headers associate -@@ -3517,15 +3764,23 @@ - ;; - irix[[56]].*) #(vi - cf_xopen_source="-D_SGI_SOURCE" -+ cf_XOPEN_SOURCE= - ;; - linux*|gnu*|mint*|k*bsd*-gnu) #(vi - CF_GNU_SOURCE - ;; - mirbsd*) #(vi -- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks -+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks and other headers which use u_int / u_short types -+ cf_XOPEN_SOURCE= -+ CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE) - ;; - netbsd*) #(vi -- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ ;; -+openbsd[[4-9]]*) #(vi -+ # setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw -+ cf_xopen_source="-D_BSD_SOURCE" -+ cf_XOPEN_SOURCE=600 - ;; - openbsd*) #(vi - # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw -@@ -3539,36 +3794,12 @@ - sco*) #(vi - # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer - ;; --solaris2.1[[0-9]]) #(vi -- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- ;; --solaris2.[[1-9]]) #(vi -+solaris2.*) #(vi - cf_xopen_source="-D__EXTENSIONS__" -+ cf_cv_xopen_source=broken - ;; - *) -- AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[ -- AC_TRY_COMPILE([#include ],[ --#ifndef _XOPEN_SOURCE --make an error --#endif], -- [cf_cv_xopen_source=no], -- [cf_save="$CPPFLAGS" -- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- AC_TRY_COMPILE([#include ],[ --#ifdef _XOPEN_SOURCE --make an error --#endif], -- [cf_cv_xopen_source=no], -- [cf_cv_xopen_source=$cf_XOPEN_SOURCE]) -- CPPFLAGS="$cf_save" -- ]) --]) -- if test "$cf_cv_xopen_source" != no ; then -- CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE) -- CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE) -- cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" -- CF_ADD_CFLAGS($cf_temp_xopen_source) -- fi -+ CF_TRY_XOPEN_SOURCE - CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE) - ;; - esac -@@ -3576,4 +3807,33 @@ - if test -n "$cf_xopen_source" ; then - CF_ADD_CFLAGS($cf_xopen_source) - fi -+ -+dnl In anything but the default case, we may have system-specific setting -+dnl which is still not guaranteed to provide all of the entrypoints that -+dnl _XOPEN_SOURCE would yield. -+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then -+ AC_MSG_CHECKING(if _XOPEN_SOURCE really is set) -+ AC_TRY_COMPILE([#include ],[ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_XOPEN_SOURCE_set=yes], -+ [cf_XOPEN_SOURCE_set=no]) -+ AC_MSG_RESULT($cf_XOPEN_SOURCE_set) -+ if test $cf_XOPEN_SOURCE_set = yes -+ then -+ AC_TRY_COMPILE([#include ],[ -+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE -+make an error -+#endif], -+ [cf_XOPEN_SOURCE_set_ok=yes], -+ [cf_XOPEN_SOURCE_set_ok=no]) -+ if test $cf_XOPEN_SOURCE_set_ok = no -+ then -+ AC_MSG_WARN(_XOPEN_SOURCE is lower than requested) -+ fi -+ else -+ CF_TRY_XOPEN_SOURCE -+ fi -+fi - ]) -diff -Naur ncurses-5.9/Ada95/configure ncurses-5.9.patch/Ada95/configure ---- ncurses-5.9/Ada95/configure 2011-04-01 01:34:47.000000000 +0200 -+++ ncurses-5.9.patch/Ada95/configure 2014-09-01 16:33:22.222791900 +0200 -@@ -1,7 +1,7 @@ - #! /bin/sh --# From configure.in Revision: 1.30 . -+# From configure.in Revision: 1.49 . - # Guess values for system-dependent variables and create Makefiles. --# Generated by Autoconf 2.52.20101002. -+# Generated by Autoconf 2.52.20121002. - # - # Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 - # Free Software Foundation, Inc. -@@ -135,15 +135,16 @@ - bindir='${exec_prefix}/bin' - sbindir='${exec_prefix}/sbin' - libexecdir='${exec_prefix}/libexec' --datadir='${prefix}/share' -+datarootdir='${prefix}/share' -+datadir='${datarootdir}' - sysconfdir='${prefix}/etc' - sharedstatedir='${prefix}/com' - localstatedir='${prefix}/var' - libdir='${exec_prefix}/lib' - includedir='${prefix}/include' - oldincludedir='/usr/include' --infodir='${prefix}/info' --mandir='${prefix}/man' -+infodir='${datarootdir}/info' -+mandir='${datarootdir}/man' - - # Identity of this package. - PACKAGE_NAME= -@@ -194,6 +195,13 @@ - | --da=*) - datadir=$ac_optarg ;; - -+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ -+ | --dataroo | --dataro | --datar) -+ ac_prev=datarootdir ;; -+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ -+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) -+ datarootdir=$ac_optarg ;; -+ - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. -@@ -469,7 +477,7 @@ - done - - # Be sure to have absolute paths. --for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ -+for ac_var in bindir sbindir libexecdir datarootdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir - do - eval ac_val=$`echo $ac_var` -@@ -606,15 +614,16 @@ - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] -- --datadir=DIR read-only architecture-independent data [PREFIX/share] -+ --datarootdir=DIR read-only architecture-independent data [PREFIX/share] -+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] -- --infodir=DIR info documentation [PREFIX/info] -- --mandir=DIR man documentation [PREFIX/man] -+ --infodir=DIR info documentation [DATAROOTDIR/info] -+ --mandir=DIR man documentation [DATAROOTDIR/man] - EOF - - cat <<\EOF -@@ -645,6 +654,7 @@ - - --with-system-type=XXX test: override derived host system-type - --with-pkg-config{=path} enable/disable use of pkg-config -+ --with-pkg-config-libdir=XXX use given directory for installing pc-files - --enable-pc-files generate and install .pc files for pkg-config - --without-tests suppress build with test-programs - --enable-mixed-case tic should assume mixed-case filenames -@@ -660,6 +670,7 @@ - --with-shared generate shared C-objects (needed for --with-ada-sharedlib) - --enable-widec compile with wide-char/UTF-8 code - --with-curses-dir=DIR directory in which (n)curses is installed -+ --with-lib-prefix override library-prefix - --with-shlib-version=X Specify rel or abi version for shared libs - --enable-rpath-link link sample programs with rpath option - Fine-Tuning Your Configuration: -@@ -677,7 +688,7 @@ - --enable-reentrant compile with experimental reentrant code - --with-wrap-prefix=XXX override prefix used for public variables - Testing/development Options: -- --enable-echo build: display "compiling" commands (default) -+ --disable-echo do not display "compiling" commands - --enable-warnings build: turn on GCC compiler warnings - --enable-assertions test: turn on generation of assertion code - --enable-expanded test: generate functions for certain macros -@@ -757,7 +768,7 @@ - running configure, to aid debugging if configure makes a mistake. - - It was created by $as_me, which was --generated by GNU Autoconf 2.52.20101002. Invocation command line was -+generated by GNU Autoconf 2.52.20121002. Invocation command line was - - $ $0 $@ - -@@ -881,7 +892,7 @@ - fi - for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then -- { echo "$as_me:884: loading site script $ac_site_file" >&5 -+ { echo "$as_me:895: loading site script $ac_site_file" >&5 - echo "$as_me: loading site script $ac_site_file" >&6;} - cat "$ac_site_file" >&5 - . "$ac_site_file" -@@ -892,7 +903,7 @@ - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then -- { echo "$as_me:895: loading cache $cache_file" >&5 -+ { echo "$as_me:906: loading cache $cache_file" >&5 - echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; -@@ -900,7 +911,7 @@ - esac - fi - else -- { echo "$as_me:903: creating cache $cache_file" >&5 -+ { echo "$as_me:914: creating cache $cache_file" >&5 - echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file - fi -@@ -916,21 +927,21 @@ - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) -- { echo "$as_me:919: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -+ { echo "$as_me:930: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 - echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) -- { echo "$as_me:923: error: \`$ac_var' was not set in the previous run" >&5 -+ { echo "$as_me:934: error: \`$ac_var' was not set in the previous run" >&5 - echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then -- { echo "$as_me:929: error: \`$ac_var' has changed since the previous run:" >&5 -+ { echo "$as_me:940: error: \`$ac_var' has changed since the previous run:" >&5 - echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} -- { echo "$as_me:931: former value: $ac_old_val" >&5 -+ { echo "$as_me:942: former value: $ac_old_val" >&5 - echo "$as_me: former value: $ac_old_val" >&2;} -- { echo "$as_me:933: current value: $ac_new_val" >&5 -+ { echo "$as_me:944: current value: $ac_new_val" >&5 - echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; -@@ -949,9 +960,9 @@ - fi - done - if $ac_cache_corrupted; then -- { echo "$as_me:952: error: changes in the environment can compromise the build" >&5 -+ { echo "$as_me:963: error: changes in the environment can compromise the build" >&5 - echo "$as_me: error: changes in the environment can compromise the build" >&2;} -- { { echo "$as_me:954: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -+ { { echo "$as_me:965: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 - echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -972,10 +983,10 @@ - echo "#! $SHELL" >conftest.sh - echo "exit 0" >>conftest.sh - chmod +x conftest.sh --if { (echo "$as_me:975: PATH=\".;.\"; conftest.sh") >&5 -+if { (echo "$as_me:986: PATH=\".;.\"; conftest.sh") >&5 - (PATH=".;."; conftest.sh) 2>&5 - ac_status=$? -- echo "$as_me:978: \$? = $ac_status" >&5 -+ echo "$as_me:989: \$? = $ac_status" >&5 - (exit $ac_status); }; then - ac_path_separator=';' - else -@@ -1005,7 +1016,7 @@ - fi - done - if test -z "$ac_aux_dir"; then -- { { echo "$as_me:1008: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 -+ { { echo "$as_me:1019: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 - echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} - { (exit 1); exit 1; }; } - fi -@@ -1015,11 +1026,11 @@ - - # Make sure we can run config.sub. - $ac_config_sub sun4 >/dev/null 2>&1 || -- { { echo "$as_me:1018: error: cannot run $ac_config_sub" >&5 -+ { { echo "$as_me:1029: error: cannot run $ac_config_sub" >&5 - echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - --echo "$as_me:1022: checking build system type" >&5 -+echo "$as_me:1033: checking build system type" >&5 - echo $ECHO_N "checking build system type... $ECHO_C" >&6 - if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1028,23 +1039,23 @@ - test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` - test -z "$ac_cv_build_alias" && -- { { echo "$as_me:1031: error: cannot guess build type; you must specify one" >&5 -+ { { echo "$as_me:1042: error: cannot guess build type; you must specify one" >&5 - echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } - ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || -- { { echo "$as_me:1035: error: $ac_config_sub $ac_cv_build_alias failed." >&5 -+ { { echo "$as_me:1046: error: $ac_config_sub $ac_cv_build_alias failed." >&5 - echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;} - { (exit 1); exit 1; }; } - - fi --echo "$as_me:1040: result: $ac_cv_build" >&5 -+echo "$as_me:1051: result: $ac_cv_build" >&5 - echo "${ECHO_T}$ac_cv_build" >&6 - build=$ac_cv_build - build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` - build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` - build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - --echo "$as_me:1047: checking host system type" >&5 -+echo "$as_me:1058: checking host system type" >&5 - echo $ECHO_N "checking host system type... $ECHO_C" >&6 - if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1053,12 +1064,12 @@ - test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias - ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || -- { { echo "$as_me:1056: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -+ { { echo "$as_me:1067: error: $ac_config_sub $ac_cv_host_alias failed" >&5 - echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } - - fi --echo "$as_me:1061: result: $ac_cv_host" >&5 -+echo "$as_me:1072: result: $ac_cv_host" >&5 - echo "${ECHO_T}$ac_cv_host" >&6 - host=$ac_cv_host - host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -@@ -1066,7 +1077,7 @@ - host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then -- echo "$as_me:1069: checking target system type" >&5 -+ echo "$as_me:1080: checking target system type" >&5 - echo $ECHO_N "checking target system type... $ECHO_C" >&6 - if test "${ac_cv_target+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1075,12 +1086,12 @@ - test "x$ac_cv_target_alias" = "x" && - ac_cv_target_alias=$ac_cv_host_alias - ac_cv_target=`$ac_config_sub $ac_cv_target_alias` || -- { { echo "$as_me:1078: error: $ac_config_sub $ac_cv_target_alias failed" >&5 -+ { { echo "$as_me:1089: error: $ac_config_sub $ac_cv_target_alias failed" >&5 - echo "$as_me: error: $ac_config_sub $ac_cv_target_alias failed" >&2;} - { (exit 1); exit 1; }; } - - fi --echo "$as_me:1083: result: $ac_cv_target" >&5 -+echo "$as_me:1094: result: $ac_cv_target" >&5 - echo "${ECHO_T}$ac_cv_target" >&6 - target=$ac_cv_target - target_cpu=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -@@ -1100,7 +1111,8 @@ - system_name="`(hostname) 2>/dev/null`" - fi - fi --test -n "$system_name" && cat >>confdefs.h <>confdefs.h <&5 -+test -n "$cf_cv_system_name" && echo "$as_me:1126: result: Configuring for $cf_cv_system_name" >&5 - echo "${ECHO_T}Configuring for $cf_cv_system_name" >&6 - - if test ".$system_name" != ".$cf_cv_system_name" ; then -- echo "$as_me:1118: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5 -+ echo "$as_me:1130: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5 - echo "${ECHO_T}Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&6 -- { { echo "$as_me:1120: error: \"Please remove config.cache and try again.\"" >&5 -+ { { echo "$as_me:1132: error: \"Please remove config.cache and try again.\"" >&5 - echo "$as_me: error: \"Please remove config.cache and try again.\"" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -1125,9 +1137,11 @@ - # Check whether --with-system-type or --without-system-type was given. - if test "${with_system_type+set}" = set; then - withval="$with_system_type" -- { echo "$as_me:1128: WARNING: overriding system type to $withval" >&5 -+ { echo "$as_me:1140: WARNING: overriding system type to $withval" >&5 - echo "$as_me: WARNING: overriding system type to $withval" >&2;} -- cf_cv_system_name=$withval -+ cf_cv_system_name=$withval -+ host_os=$withval -+ - fi; - - ### Save the given $CFLAGS to allow user-override. -@@ -1135,23 +1149,23 @@ - - ### Default install-location - --echo "$as_me:1138: checking for prefix" >&5 -+echo "$as_me:1152: checking for prefix" >&5 - echo $ECHO_N "checking for prefix... $ECHO_C" >&6 - if test "x$prefix" = "xNONE" ; then - case "$cf_cv_system_name" in - # non-vendor systems don't have a conflict -- openbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu) -+ openbsd*|freebsd*|mirbsd*|linux*|cygwin*|msys*|k*bsd*-gnu|mingw*) - prefix=/usr - ;; - *) prefix=$ac_default_prefix - ;; - esac - fi --echo "$as_me:1150: result: $prefix" >&5 -+echo "$as_me:1164: result: $prefix" >&5 - echo "${ECHO_T}$prefix" >&6 - - if test "x$prefix" = "xNONE" ; then --echo "$as_me:1154: checking for default include-directory" >&5 -+echo "$as_me:1168: checking for default include-directory" >&5 - echo $ECHO_N "checking for default include-directory... $ECHO_C" >&6 - test -n "$verbose" && echo 1>&6 - for cf_symbol in \ -@@ -1174,11 +1188,12 @@ - fi - test -n "$verbose" && echo " tested $cf_dir" 1>&6 - done --echo "$as_me:1177: result: $includedir" >&5 -+echo "$as_me:1191: result: $includedir" >&5 - echo "${ECHO_T}$includedir" >&6 - fi - - ### Checks for programs. -+ - ac_ext=c - ac_cpp='$CPP $CPPFLAGS' - ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -@@ -1186,213 +1201,11 @@ - ac_compiler_gnu=$ac_cv_c_compiler_gnu - ac_main_return=return - if test -n "$ac_tool_prefix"; then -- # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. --set dummy ${ac_tool_prefix}gcc; ac_word=$2 --echo "$as_me:1191: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. --else -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --ac_cv_prog_CC="${ac_tool_prefix}gcc" --echo "$as_me:1206: found $ac_dir/$ac_word" >&5 --break --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:1214: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:1217: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$ac_cv_prog_CC"; then -- ac_ct_CC=$CC -- # Extract the first word of "gcc", so it can be a program name with args. --set dummy gcc; ac_word=$2 --echo "$as_me:1226: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$ac_ct_CC"; then -- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. --else -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --ac_cv_prog_ac_ct_CC="gcc" --echo "$as_me:1241: found $ac_dir/$ac_word" >&5 --break --done -- --fi --fi --ac_ct_CC=$ac_cv_prog_ac_ct_CC --if test -n "$ac_ct_CC"; then -- echo "$as_me:1249: result: $ac_ct_CC" >&5 --echo "${ECHO_T}$ac_ct_CC" >&6 --else -- echo "$as_me:1252: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- CC=$ac_ct_CC --else -- CC="$ac_cv_prog_CC" --fi -- --if test -z "$CC"; then -- if test -n "$ac_tool_prefix"; then -- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. --set dummy ${ac_tool_prefix}cc; ac_word=$2 --echo "$as_me:1265: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. --else -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --ac_cv_prog_CC="${ac_tool_prefix}cc" --echo "$as_me:1280: found $ac_dir/$ac_word" >&5 --break --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:1288: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:1291: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$ac_cv_prog_CC"; then -- ac_ct_CC=$CC -- # Extract the first word of "cc", so it can be a program name with args. --set dummy cc; ac_word=$2 --echo "$as_me:1300: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$ac_ct_CC"; then -- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. --else -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --ac_cv_prog_ac_ct_CC="cc" --echo "$as_me:1315: found $ac_dir/$ac_word" >&5 --break --done -- --fi --fi --ac_ct_CC=$ac_cv_prog_ac_ct_CC --if test -n "$ac_ct_CC"; then -- echo "$as_me:1323: result: $ac_ct_CC" >&5 --echo "${ECHO_T}$ac_ct_CC" >&6 --else -- echo "$as_me:1326: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- CC=$ac_ct_CC --else -- CC="$ac_cv_prog_CC" --fi -- --fi --if test -z "$CC"; then -- # Extract the first word of "cc", so it can be a program name with args. --set dummy cc; ac_word=$2 --echo "$as_me:1339: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. --else -- ac_prog_rejected=no -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then -- ac_prog_rejected=yes -- continue --fi --ac_cv_prog_CC="cc" --echo "$as_me:1359: found $ac_dir/$ac_word" >&5 --break --done -- --if test $ac_prog_rejected = yes; then -- # We found a bogon in the path, so make sure we never use it. -- set dummy $ac_cv_prog_CC -- shift -- if test $# != 0; then -- # We chose a different compiler from the bogus one. -- # However, it has the same basename, so the bogon will be chosen -- # first if we set CC to just the basename; use the full file name. -- shift -- set dummy "$ac_dir/$ac_word" ${1+"$@"} -- shift -- ac_cv_prog_CC="$@" -- fi --fi --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:1381: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:1384: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$CC"; then -- if test -n "$ac_tool_prefix"; then -- for ac_prog in cl -+ for ac_prog in gnatgcc gcc cc - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. - set dummy $ac_tool_prefix$ac_prog; ac_word=$2 --echo "$as_me:1395: checking for $ac_word" >&5 -+echo "$as_me:1208: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1407,7 +1220,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" --echo "$as_me:1410: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1223: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1415,10 +1228,10 @@ - fi - CC=$ac_cv_prog_CC - if test -n "$CC"; then -- echo "$as_me:1418: result: $CC" >&5 -+ echo "$as_me:1231: result: $CC" >&5 - echo "${ECHO_T}$CC" >&6 - else -- echo "$as_me:1421: result: no" >&5 -+ echo "$as_me:1234: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1427,11 +1240,11 @@ - fi - if test -z "$CC"; then - ac_ct_CC=$CC -- for ac_prog in cl -+ for ac_prog in gnatgcc gcc cc - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:1434: checking for $ac_word" >&5 -+echo "$as_me:1247: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1446,7 +1259,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_CC="$ac_prog" --echo "$as_me:1449: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1262: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1454,10 +1267,10 @@ - fi - ac_ct_CC=$ac_cv_prog_ac_ct_CC - if test -n "$ac_ct_CC"; then -- echo "$as_me:1457: result: $ac_ct_CC" >&5 -+ echo "$as_me:1270: result: $ac_ct_CC" >&5 - echo "${ECHO_T}$ac_ct_CC" >&6 - else -- echo "$as_me:1460: result: no" >&5 -+ echo "$as_me:1273: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1467,34 +1280,32 @@ - CC=$ac_ct_CC - fi - --fi -- --test -z "$CC" && { { echo "$as_me:1472: error: no acceptable cc found in \$PATH" >&5 -+test -z "$CC" && { { echo "$as_me:1283: error: no acceptable cc found in \$PATH" >&5 - echo "$as_me: error: no acceptable cc found in \$PATH" >&2;} - { (exit 1); exit 1; }; } - - # Provide some information about the compiler. --echo "$as_me:1477:" \ -+echo "$as_me:1288:" \ - "checking for C compiler version" >&5 - ac_compiler=`set X $ac_compile; echo $2` --{ (eval echo "$as_me:1480: \"$ac_compiler --version &5\"") >&5 -+{ (eval echo "$as_me:1291: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? -- echo "$as_me:1483: \$? = $ac_status" >&5 -+ echo "$as_me:1294: \$? = $ac_status" >&5 - (exit $ac_status); } --{ (eval echo "$as_me:1485: \"$ac_compiler -v &5\"") >&5 -+{ (eval echo "$as_me:1296: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? -- echo "$as_me:1488: \$? = $ac_status" >&5 -+ echo "$as_me:1299: \$? = $ac_status" >&5 - (exit $ac_status); } --{ (eval echo "$as_me:1490: \"$ac_compiler -V &5\"") >&5 -+{ (eval echo "$as_me:1301: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 - ac_status=$? -- echo "$as_me:1493: \$? = $ac_status" >&5 -+ echo "$as_me:1304: \$? = $ac_status" >&5 - (exit $ac_status); } - - cat >conftest.$ac_ext <<_ACEOF --#line 1497 "configure" -+#line 1308 "configure" - #include "confdefs.h" - - int -@@ -1510,13 +1321,13 @@ - # Try to create an executable without -o first, disregard a.out. - # It will help us diagnose broken compilers, and finding out an intuition - # of exeext. --echo "$as_me:1513: checking for C compiler default output" >&5 -+echo "$as_me:1324: checking for C compiler default output" >&5 - echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6 - ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` --if { (eval echo "$as_me:1516: \"$ac_link_default\"") >&5 -+if { (eval echo "$as_me:1327: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 - ac_status=$? -- echo "$as_me:1519: \$? = $ac_status" >&5 -+ echo "$as_me:1330: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is - # not robust to junk in `.', hence go to wildcards (a.*) only as a last -@@ -1539,34 +1350,34 @@ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --{ { echo "$as_me:1542: error: C compiler cannot create executables" >&5 -+{ { echo "$as_me:1353: error: C compiler cannot create executables" >&5 - echo "$as_me: error: C compiler cannot create executables" >&2;} - { (exit 77); exit 77; }; } - fi - - ac_exeext=$ac_cv_exeext --echo "$as_me:1548: result: $ac_file" >&5 -+echo "$as_me:1359: result: $ac_file" >&5 - echo "${ECHO_T}$ac_file" >&6 - - # Check the compiler produces executables we can run. If not, either - # the compiler is broken, or we cross compile. --echo "$as_me:1553: checking whether the C compiler works" >&5 -+echo "$as_me:1364: checking whether the C compiler works" >&5 - echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 - # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 - # If not cross compiling, check that we can run a simple program. - if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' -- { (eval echo "$as_me:1559: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1370: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1562: \$? = $ac_status" >&5 -+ echo "$as_me:1373: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else -- { { echo "$as_me:1569: error: cannot run C compiled programs. -+ { { echo "$as_me:1380: error: cannot run C compiled programs. - If you meant to cross compile, use \`--host'." >&5 - echo "$as_me: error: cannot run C compiled programs. - If you meant to cross compile, use \`--host'." >&2;} -@@ -1574,24 +1385,24 @@ - fi - fi - fi --echo "$as_me:1577: result: yes" >&5 -+echo "$as_me:1388: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - - rm -f a.out a.exe conftest$ac_cv_exeext - ac_clean_files=$ac_clean_files_save - # Check the compiler produces executables we can run. If not, either - # the compiler is broken, or we cross compile. --echo "$as_me:1584: checking whether we are cross compiling" >&5 -+echo "$as_me:1395: checking whether we are cross compiling" >&5 - echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 --echo "$as_me:1586: result: $cross_compiling" >&5 -+echo "$as_me:1397: result: $cross_compiling" >&5 - echo "${ECHO_T}$cross_compiling" >&6 - --echo "$as_me:1589: checking for executable suffix" >&5 -+echo "$as_me:1400: checking for executable suffix" >&5 - echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6 --if { (eval echo "$as_me:1591: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:1402: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:1594: \$? = $ac_status" >&5 -+ echo "$as_me:1405: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) - # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -@@ -1607,25 +1418,25 @@ - esac - done - else -- { { echo "$as_me:1610: error: cannot compute EXEEXT: cannot compile and link" >&5 -+ { { echo "$as_me:1421: error: cannot compute EXEEXT: cannot compile and link" >&5 - echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;} - { (exit 1); exit 1; }; } - fi - - rm -f conftest$ac_cv_exeext --echo "$as_me:1616: result: $ac_cv_exeext" >&5 -+echo "$as_me:1427: result: $ac_cv_exeext" >&5 - echo "${ECHO_T}$ac_cv_exeext" >&6 - - rm -f conftest.$ac_ext - EXEEXT=$ac_cv_exeext - ac_exeext=$EXEEXT --echo "$as_me:1622: checking for object suffix" >&5 -+echo "$as_me:1433: checking for object suffix" >&5 - echo $ECHO_N "checking for object suffix... $ECHO_C" >&6 - if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 1628 "configure" -+#line 1439 "configure" - #include "confdefs.h" - - int -@@ -1637,10 +1448,10 @@ - } - _ACEOF - rm -f conftest.o conftest.obj --if { (eval echo "$as_me:1640: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1451: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1643: \$? = $ac_status" >&5 -+ echo "$as_me:1454: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do - case $ac_file in -@@ -1652,24 +1463,24 @@ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --{ { echo "$as_me:1655: error: cannot compute OBJEXT: cannot compile" >&5 -+{ { echo "$as_me:1466: error: cannot compute OBJEXT: cannot compile" >&5 - echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;} - { (exit 1); exit 1; }; } - fi - - rm -f conftest.$ac_cv_objext conftest.$ac_ext - fi --echo "$as_me:1662: result: $ac_cv_objext" >&5 -+echo "$as_me:1473: result: $ac_cv_objext" >&5 - echo "${ECHO_T}$ac_cv_objext" >&6 - OBJEXT=$ac_cv_objext - ac_objext=$OBJEXT --echo "$as_me:1666: checking whether we are using the GNU C compiler" >&5 -+echo "$as_me:1477: checking whether we are using the GNU C compiler" >&5 - echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 - if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 1672 "configure" -+#line 1483 "configure" - #include "confdefs.h" - - int -@@ -1684,16 +1495,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1687: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1498: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1690: \$? = $ac_status" >&5 -+ echo "$as_me:1501: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1693: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1504: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1696: \$? = $ac_status" >&5 -+ echo "$as_me:1507: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_compiler_gnu=yes - else -@@ -1705,19 +1516,19 @@ - ac_cv_c_compiler_gnu=$ac_compiler_gnu - - fi --echo "$as_me:1708: result: $ac_cv_c_compiler_gnu" >&5 -+echo "$as_me:1519: result: $ac_cv_c_compiler_gnu" >&5 - echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 - GCC=`test $ac_compiler_gnu = yes && echo yes` - ac_test_CFLAGS=${CFLAGS+set} - ac_save_CFLAGS=$CFLAGS - CFLAGS="-g" --echo "$as_me:1714: checking whether $CC accepts -g" >&5 -+echo "$as_me:1525: checking whether $CC accepts -g" >&5 - echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 - if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 1720 "configure" -+#line 1531 "configure" - #include "confdefs.h" - - int -@@ -1729,16 +1540,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1732: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1543: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1735: \$? = $ac_status" >&5 -+ echo "$as_me:1546: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1738: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1549: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1741: \$? = $ac_status" >&5 -+ echo "$as_me:1552: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_g=yes - else -@@ -1748,7 +1559,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:1751: result: $ac_cv_prog_cc_g" >&5 -+echo "$as_me:1562: result: $ac_cv_prog_cc_g" >&5 - echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 - if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -@@ -1775,16 +1586,16 @@ - #endif - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1778: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1589: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1781: \$? = $ac_status" >&5 -+ echo "$as_me:1592: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1784: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1595: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1787: \$? = $ac_status" >&5 -+ echo "$as_me:1598: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - ''\ -@@ -1796,7 +1607,7 @@ - 'void exit (int);' - do - cat >conftest.$ac_ext <<_ACEOF --#line 1799 "configure" -+#line 1610 "configure" - #include "confdefs.h" - #include - $ac_declaration -@@ -1809,16 +1620,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1812: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1623: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1815: \$? = $ac_status" >&5 -+ echo "$as_me:1626: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1818: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1629: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1821: \$? = $ac_status" >&5 -+ echo "$as_me:1632: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -1828,7 +1639,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF --#line 1831 "configure" -+#line 1642 "configure" - #include "confdefs.h" - $ac_declaration - int -@@ -1840,16 +1651,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1843: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1654: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1846: \$? = $ac_status" >&5 -+ echo "$as_me:1657: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1849: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1660: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1852: \$? = $ac_status" >&5 -+ echo "$as_me:1663: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -1879,68 +1690,259 @@ - - GCC_VERSION=none - if test "$GCC" = yes ; then -- echo "$as_me:1882: checking version of $CC" >&5 -+ echo "$as_me:1693: checking version of $CC" >&5 - echo $ECHO_N "checking version of $CC... $ECHO_C" >&6 -- GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`" -+ GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC[^)]*) //' -e 's/^.*(Debian[^)]*) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`" - test -z "$GCC_VERSION" && GCC_VERSION=unknown -- echo "$as_me:1886: result: $GCC_VERSION" >&5 -+ echo "$as_me:1697: result: $GCC_VERSION" >&5 - echo "${ECHO_T}$GCC_VERSION" >&6 - fi - --ac_ext=c --ac_cpp='$CPP $CPPFLAGS' --ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' --ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' --ac_compiler_gnu=$ac_cv_c_compiler_gnu --ac_main_return=return --echo "$as_me:1896: checking how to run the C preprocessor" >&5 --echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 --# On Suns, sometimes $CPP names a directory. --if test -n "$CPP" && test -d "$CPP"; then -- CPP= --fi --if test -z "$CPP"; then -- if test "${ac_cv_prog_CPP+set}" = set; then -+echo "$as_me:1701: checking for $CC option to accept ANSI C" >&5 -+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -+if test "${ac_cv_prog_cc_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- # Double quotes because CPP needs to be expanded -- for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" -- do -- ac_preproc_ok=false --for ac_c_preproc_warn_flag in '' yes --do -- # Use a header file that comes with gcc, so configuring glibc -- # with a fresh cross-compiler works. -- # On the NeXT, cc -E runs the code through the compiler's parser, -- # not just through cpp. "Syntax error" is here to catch this case. -- cat >conftest.$ac_ext <<_ACEOF --#line 1917 "configure" -+ ac_cv_prog_cc_stdc=no -+ac_save_CC=$CC -+cat >conftest.$ac_ext <<_ACEOF -+#line 1709 "configure" - #include "confdefs.h" --#include -- Syntax error -+#include -+#include -+#include -+#include -+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -+struct buf { int x; }; -+FILE * (*rcsopen) (struct buf *, struct stat *, int); -+static char *e (p, i) -+ char **p; -+ int i; -+{ -+ return p[i]; -+} -+static char *f (char * (*g) (char **, int), char **p, ...) -+{ -+ char *s; -+ va_list v; -+ va_start (v,p); -+ s = g (p, va_arg (v,int)); -+ va_end (v); -+ return s; -+} -+int test (int i, double x); -+struct s1 {int (*f) (int a);}; -+struct s2 {int (*f) (double a);}; -+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -+int argc; -+char **argv; -+int -+main () -+{ -+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; -+ ; -+ return 0; -+} - _ACEOF --if { (eval echo "$as_me:1922: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+# Don't try gcc -ansi; that turns off useful extensions and -+# breaks some systems' header files. -+# AIX -qlanglvl=ansi -+# Ultrix and OSF/1 -std1 -+# HP-UX 10.20 and later -Ae -+# HP-UX older versions -Aa -D_HPUX_SOURCE -+# SVR4 -Xc -D__EXTENSIONS__ -+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -+do -+ CC="$ac_save_CC $ac_arg" -+ rm -f conftest.$ac_objext -+if { (eval echo "$as_me:1758: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:1928: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- : -+ echo "$as_me:1761: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:1764: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:1767: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_prog_cc_stdc=$ac_arg -+break - else - echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- # Broken: fails on valid input. -+cat conftest.$ac_ext >&5 -+fi -+rm -f conftest.$ac_objext -+done -+rm -f conftest.$ac_ext conftest.$ac_objext -+CC=$ac_save_CC -+ -+fi -+ -+case "x$ac_cv_prog_cc_stdc" in -+ x|xno) -+ echo "$as_me:1784: result: none needed" >&5 -+echo "${ECHO_T}none needed" >&6 ;; -+ *) -+ echo "$as_me:1787: result: $ac_cv_prog_cc_stdc" >&5 -+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 -+ CC="$CC $ac_cv_prog_cc_stdc" ;; -+esac -+ -+# This should have been defined by AC_PROG_CC -+: ${CC:=cc} -+ -+echo "$as_me:1795: checking \$CC variable" >&5 -+echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6 -+case "$CC" in #(vi -+*[\ \ ]-[IUD]*) -+ echo "$as_me:1799: result: broken" >&5 -+echo "${ECHO_T}broken" >&6 -+ { echo "$as_me:1801: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5 -+echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;} -+ # humor him... -+ cf_flags=`echo "$CC" | sed -e 's/^[^ ]*[ ]//'` -+ CC=`echo "$CC" | sed -e 's/[ ].*//'` -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_flags -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+ ;; -+*) -+ echo "$as_me:1887: result: ok" >&5 -+echo "${ECHO_T}ok" >&6 -+ ;; -+esac -+ -+ac_ext=c -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_c_compiler_gnu -+ac_main_return=return -+echo "$as_me:1898: checking how to run the C preprocessor" >&5 -+echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 -+# On Suns, sometimes $CPP names a directory. -+if test -n "$CPP" && test -d "$CPP"; then -+ CPP= -+fi -+if test -z "$CPP"; then -+ if test "${ac_cv_prog_CPP+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ # Double quotes because CPP needs to be expanded -+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" -+ do -+ ac_preproc_ok=false -+for ac_c_preproc_warn_flag in '' yes -+do -+ # Use a header file that comes with gcc, so configuring glibc -+ # with a fresh cross-compiler works. -+ # On the NeXT, cc -E runs the code through the compiler's parser, -+ # not just through cpp. "Syntax error" is here to catch this case. -+ cat >conftest.$ac_ext <<_ACEOF -+#line 1919 "configure" -+#include "confdefs.h" -+#include -+ Syntax error -+_ACEOF -+if { (eval echo "$as_me:1924: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:1930: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ # Broken: fails on valid input. - continue - fi - rm -f conftest.err conftest.$ac_ext -@@ -1948,17 +1950,17 @@ - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF --#line 1951 "configure" -+#line 1953 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:1955: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:1957: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:1961: \$? = $ac_status" >&5 -+ echo "$as_me:1963: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -1995,7 +1997,7 @@ - else - ac_cv_prog_CPP=$CPP - fi --echo "$as_me:1998: result: $CPP" >&5 -+echo "$as_me:2000: result: $CPP" >&5 - echo "${ECHO_T}$CPP" >&6 - ac_preproc_ok=false - for ac_c_preproc_warn_flag in '' yes -@@ -2005,18 +2007,18 @@ - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF --#line 2008 "configure" -+#line 2010 "configure" - #include "confdefs.h" - #include - Syntax error - _ACEOF --if { (eval echo "$as_me:2013: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:2015: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:2019: \$? = $ac_status" >&5 -+ echo "$as_me:2021: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -2039,17 +2041,17 @@ - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF --#line 2042 "configure" -+#line 2044 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:2046: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:2048: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:2052: \$? = $ac_status" >&5 -+ echo "$as_me:2054: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -2077,7 +2079,7 @@ - if $ac_preproc_ok; then - : - else -- { { echo "$as_me:2080: error: C preprocessor \"$CPP\" fails sanity check" >&5 -+ { { echo "$as_me:2082: error: C preprocessor \"$CPP\" fails sanity check" >&5 - echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -2090,14 +2092,14 @@ - ac_main_return=return - - if test $ac_cv_c_compiler_gnu = yes; then -- echo "$as_me:2093: checking whether $CC needs -traditional" >&5 -+ echo "$as_me:2095: checking whether $CC needs -traditional" >&5 - echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6 - if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF --#line 2100 "configure" -+#line 2102 "configure" - #include "confdefs.h" - #include - int Autoconf = TIOCGETP; -@@ -2112,7 +2114,7 @@ - - if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF --#line 2115 "configure" -+#line 2117 "configure" - #include "confdefs.h" - #include - int Autoconf = TCGETA; -@@ -2125,14 +2127,14 @@ - - fi - fi --echo "$as_me:2128: result: $ac_cv_prog_gcc_traditional" >&5 -+echo "$as_me:2130: result: $ac_cv_prog_gcc_traditional" >&5 - echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6 - if test $ac_cv_prog_gcc_traditional = yes; then - CC="$CC -traditional" - fi - fi - --echo "$as_me:2135: checking whether $CC understands -c and -o together" >&5 -+echo "$as_me:2137: checking whether $CC understands -c and -o together" >&5 - echo $ECHO_N "checking whether $CC understands -c and -o together... $ECHO_C" >&6 - if test "${cf_cv_prog_CC_c_o+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2148,15 +2150,15 @@ - # We do the test twice because some compilers refuse to overwrite an - # existing .o file with -o, though they will create one. - ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&5' --if { (eval echo "$as_me:2151: \"$ac_try\"") >&5 -+if { (eval echo "$as_me:2153: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2154: \$? = $ac_status" >&5 -+ echo "$as_me:2156: \$? = $ac_status" >&5 - (exit $ac_status); } && -- test -f conftest2.$ac_objext && { (eval echo "$as_me:2156: \"$ac_try\"") >&5 -+ test -f conftest2.$ac_objext && { (eval echo "$as_me:2158: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2159: \$? = $ac_status" >&5 -+ echo "$as_me:2161: \$? = $ac_status" >&5 - (exit $ac_status); }; - then - eval cf_cv_prog_CC_c_o=yes -@@ -2167,307 +2169,13 @@ - - fi - if test $cf_cv_prog_CC_c_o = yes; then -- echo "$as_me:2170: result: yes" >&5 -+ echo "$as_me:2172: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - else -- echo "$as_me:2173: result: no" >&5 -+ echo "$as_me:2175: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - --echo "$as_me:2177: checking for POSIXized ISC" >&5 --echo $ECHO_N "checking for POSIXized ISC... $ECHO_C" >&6 --if test -d /etc/conf/kconfig.d && -- grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1 --then -- echo "$as_me:2182: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- ISC=yes # If later tests want to check for ISC. -- --cat >>confdefs.h <<\EOF --#define _POSIX_SOURCE 1 --EOF -- -- if test "$GCC" = yes; then -- CC="$CC -posix" -- else -- CC="$CC -Xp" -- fi --else -- echo "$as_me:2196: result: no" >&5 --echo "${ECHO_T}no" >&6 -- ISC= --fi -- --echo "$as_me:2201: checking for ${CC:-cc} option to accept ANSI C" >&5 --echo $ECHO_N "checking for ${CC:-cc} option to accept ANSI C... $ECHO_C" >&6 --if test "${cf_cv_ansi_cc+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- --cf_cv_ansi_cc=no --cf_save_CFLAGS="$CFLAGS" --cf_save_CPPFLAGS="$CPPFLAGS" --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX -Aa -D_HPUX_SOURCE --# SVR4 -Xc --# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes) --for cf_arg in "-DCC_HAS_PROTOS" \ -- "" \ -- -qlanglvl=ansi \ -- -std1 \ -- -Ae \ -- "-Aa -D_HPUX_SOURCE" \ -- -Xc --do -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in $cf_arg --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -- -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -- --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -- -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -- --if test -n "$cf_new_cflags" ; then -- -- CFLAGS="$CFLAGS $cf_new_cflags" --fi -- --if test -n "$cf_new_cppflags" ; then -- -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" --fi -- --if test -n "$cf_new_extra_cppflags" ; then -- -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" --fi -- -- cat >conftest.$ac_ext <<_ACEOF --#line 2305 "configure" --#include "confdefs.h" -- --#ifndef CC_HAS_PROTOS --#if !defined(__STDC__) || (__STDC__ != 1) --choke me --#endif --#endif -- --int --main () --{ -- -- int test (int i, double x); -- struct s1 {int (*f) (int a);}; -- struct s2 {int (*f) (double a);}; -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:2326: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:2329: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2332: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:2335: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_cv_ansi_cc="$cf_arg"; break --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --fi --rm -f conftest.$ac_objext conftest.$ac_ext --done --CFLAGS="$cf_save_CFLAGS" --CPPFLAGS="$cf_save_CPPFLAGS" -- --fi --echo "$as_me:2348: result: $cf_cv_ansi_cc" >&5 --echo "${ECHO_T}$cf_cv_ansi_cc" >&6 -- --if test "$cf_cv_ansi_cc" != "no"; then --if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in $cf_cv_ansi_cc --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -- -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -- --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -- -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -- --if test -n "$cf_new_cflags" ; then -- -- CFLAGS="$CFLAGS $cf_new_cflags" --fi -- --if test -n "$cf_new_cppflags" ; then -- -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" --fi -- --if test -n "$cf_new_extra_cppflags" ; then -- -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" --fi -- --else -- cat >>confdefs.h <<\EOF --#define CC_HAS_PROTOS 1 --EOF -- --fi --fi -- --if test "$cf_cv_ansi_cc" = "no"; then -- { { echo "$as_me:2441: error: Your compiler does not appear to recognize prototypes. --You have the following choices: -- a. adjust your compiler options -- b. get an up-to-date compiler -- c. use a wrapper such as unproto" >&5 --echo "$as_me: error: Your compiler does not appear to recognize prototypes. --You have the following choices: -- a. adjust your compiler options -- b. get an up-to-date compiler -- c. use a wrapper such as unproto" >&2;} -- { (exit 1); exit 1; }; } --fi -- --case $cf_cv_system_name in --os2*) -- CFLAGS="$CFLAGS -Zmt" -- CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__" -- CXXFLAGS="$CXXFLAGS -Zmt" -- # autoconf's macro sets -Zexe and suffix both, which conflict:w -- LDFLAGS="$LDFLAGS -Zmt -Zcrtdll" -- ac_cv_exeext=.exe -- ;; --esac -- --PROG_EXT="$EXEEXT" -- --test -n "$PROG_EXT" && cat >>confdefs.h <&5 -+echo "$as_me:2196: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_AWK+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2500,7 +2208,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_AWK="$ac_prog" --echo "$as_me:2503: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2211: found $ac_dir/$ac_word" >&5 - break - done - -@@ -2508,21 +2216,21 @@ - fi - AWK=$ac_cv_prog_AWK - if test -n "$AWK"; then -- echo "$as_me:2511: result: $AWK" >&5 -+ echo "$as_me:2219: result: $AWK" >&5 - echo "${ECHO_T}$AWK" >&6 - else -- echo "$as_me:2514: result: no" >&5 -+ echo "$as_me:2222: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - - test -n "$AWK" && break - done - --test -z "$AWK" && { { echo "$as_me:2521: error: No awk program found" >&5 -+test -z "$AWK" && { { echo "$as_me:2229: error: No awk program found" >&5 - echo "$as_me: error: No awk program found" >&2;} - { (exit 1); exit 1; }; } - --echo "$as_me:2525: checking for egrep" >&5 -+echo "$as_me:2233: checking for egrep" >&5 - echo $ECHO_N "checking for egrep... $ECHO_C" >&6 - if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2532,11 +2240,11 @@ - else ac_cv_prog_egrep='egrep' - fi - fi --echo "$as_me:2535: result: $ac_cv_prog_egrep" >&5 -+echo "$as_me:2243: result: $ac_cv_prog_egrep" >&5 - echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep - --test -z "$EGREP" && { { echo "$as_me:2539: error: No egrep program found" >&5 -+test -z "$EGREP" && { { echo "$as_me:2247: error: No egrep program found" >&5 - echo "$as_me: error: No egrep program found" >&2;} - { (exit 1); exit 1; }; } - -@@ -2552,7 +2260,7 @@ - # AFS /usr/afsws/bin/install, which mishandles nonexistent args - # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" - # ./install, which can be erroneously created by make from ./install.sh. --echo "$as_me:2555: checking for a BSD compatible install" >&5 -+echo "$as_me:2263: checking for a BSD compatible install" >&5 - echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6 - if test -z "$INSTALL"; then - if test "${ac_cv_path_install+set}" = set; then -@@ -2601,7 +2309,7 @@ - INSTALL=$ac_install_sh - fi - fi --echo "$as_me:2604: result: $INSTALL" >&5 -+echo "$as_me:2312: result: $INSTALL" >&5 - echo "${ECHO_T}$INSTALL" >&6 - - # Use test -z because SunOS4 sh mishandles braces in ${var-val}. -@@ -2612,18 +2320,18 @@ - - test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - --echo "$as_me:2615: checking whether ln -s works" >&5 -+echo "$as_me:2323: checking whether ln -s works" >&5 - echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6 - LN_S=$as_ln_s - if test "$LN_S" = "ln -s"; then -- echo "$as_me:2619: result: yes" >&5 -+ echo "$as_me:2327: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - else -- echo "$as_me:2622: result: no, using $LN_S" >&5 -+ echo "$as_me:2330: result: no, using $LN_S" >&5 - echo "${ECHO_T}no, using $LN_S" >&6 - fi - --echo "$as_me:2626: checking if $LN_S -f options work" >&5 -+echo "$as_me:2334: checking if $LN_S -f options work" >&5 - echo $ECHO_N "checking if $LN_S -f options work... $ECHO_C" >&6 - - rm -f conf$$.src conf$$dst -@@ -2635,12 +2343,12 @@ - cf_prog_ln_sf=no - fi - rm -f conf$$.dst conf$$src --echo "$as_me:2638: result: $cf_prog_ln_sf" >&5 -+echo "$as_me:2346: result: $cf_prog_ln_sf" >&5 - echo "${ECHO_T}$cf_prog_ln_sf" >&6 - - test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f" - --echo "$as_me:2643: checking for long file names" >&5 -+echo "$as_me:2351: checking for long file names" >&5 - echo $ECHO_N "checking for long file names... $ECHO_C" >&6 - if test "${ac_cv_sys_long_file_names+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2679,7 +2387,7 @@ - rm -rf $ac_xdir 2>/dev/null - done - fi --echo "$as_me:2682: result: $ac_cv_sys_long_file_names" >&5 -+echo "$as_me:2390: result: $ac_cv_sys_long_file_names" >&5 - echo "${ECHO_T}$ac_cv_sys_long_file_names" >&6 - if test $ac_cv_sys_long_file_names = yes; then - -@@ -2691,7 +2399,7 @@ - - # if we find pkg-config, check if we should install the ".pc" files. - --echo "$as_me:2694: checking if you want to use pkg-config" >&5 -+echo "$as_me:2402: checking if you want to use pkg-config" >&5 - echo $ECHO_N "checking if you want to use pkg-config... $ECHO_C" >&6 - - # Check whether --with-pkg-config or --without-pkg-config was given. -@@ -2701,7 +2409,7 @@ - else - cf_pkg_config=yes - fi; --echo "$as_me:2704: result: $cf_pkg_config" >&5 -+echo "$as_me:2412: result: $cf_pkg_config" >&5 - echo "${ECHO_T}$cf_pkg_config" >&6 - - case $cf_pkg_config in #(vi -@@ -2709,10 +2417,11 @@ - PKG_CONFIG=none - ;; - yes) #(vi -- if test -n "$ac_tool_prefix"; then -+ -+if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. - set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 --echo "$as_me:2715: checking for $ac_word" >&5 -+echo "$as_me:2424: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_path_PKG_CONFIG+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2729,7 +2438,7 @@ - test -z "$ac_dir" && ac_dir=. - if $as_executable_p "$ac_dir/$ac_word"; then - ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:2732: found $ac_dir/$ac_word" >&5 -+ echo "$as_me:2441: found $ac_dir/$ac_word" >&5 - break - fi - done -@@ -2740,10 +2449,10 @@ - PKG_CONFIG=$ac_cv_path_PKG_CONFIG - - if test -n "$PKG_CONFIG"; then -- echo "$as_me:2743: result: $PKG_CONFIG" >&5 -+ echo "$as_me:2452: result: $PKG_CONFIG" >&5 - echo "${ECHO_T}$PKG_CONFIG" >&6 - else -- echo "$as_me:2746: result: no" >&5 -+ echo "$as_me:2455: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -2752,7 +2461,7 @@ - ac_pt_PKG_CONFIG=$PKG_CONFIG - # Extract the first word of "pkg-config", so it can be a program name with args. - set dummy pkg-config; ac_word=$2 --echo "$as_me:2755: checking for $ac_word" >&5 -+echo "$as_me:2464: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2769,7 +2478,7 @@ - test -z "$ac_dir" && ac_dir=. - if $as_executable_p "$ac_dir/$ac_word"; then - ac_cv_path_ac_pt_PKG_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:2772: found $ac_dir/$ac_word" >&5 -+ echo "$as_me:2481: found $ac_dir/$ac_word" >&5 - break - fi - done -@@ -2781,10 +2490,10 @@ - ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG - - if test -n "$ac_pt_PKG_CONFIG"; then -- echo "$as_me:2784: result: $ac_pt_PKG_CONFIG" >&5 -+ echo "$as_me:2493: result: $ac_pt_PKG_CONFIG" >&5 - echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6 - else -- echo "$as_me:2787: result: no" >&5 -+ echo "$as_me:2496: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -2815,7 +2524,7 @@ - ;; - .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX - ;; --.\${*prefix}*) #(vi -+.\${*prefix}*|.\${*dir}*) #(vi - eval PKG_CONFIG="$PKG_CONFIG" - case ".$PKG_CONFIG" in #(vi - .NONE/*) -@@ -2827,7 +2536,7 @@ - PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%` - ;; - *) -- { { echo "$as_me:2830: error: expected a pathname, not \"$PKG_CONFIG\"" >&5 -+ { { echo "$as_me:2539: error: expected a pathname, not \"$PKG_CONFIG\"" >&5 - echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;} - { (exit 1); exit 1; }; } - ;; -@@ -2836,15 +2545,50 @@ - fi - - if test "$PKG_CONFIG" != none ; then -- echo "$as_me:2839: checking if we should install .pc files for $PKG_CONFIG" >&5 --echo $ECHO_N "checking if we should install .pc files for $PKG_CONFIG... $ECHO_C" >&6 -+ echo "$as_me:2548: checking for $PKG_CONFIG library directory" >&5 -+echo $ECHO_N "checking for $PKG_CONFIG library directory... $ECHO_C" >&6 - -- # Leave this as something that can be overridden in the environment. -- if test -z "$PKG_CONFIG_LIBDIR" ; then -- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`/lib/pkgconfig -- fi -- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'` -- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then -+# Check whether --with-pkg-config-libdir or --without-pkg-config-libdir was given. -+if test "${with_pkg_config_libdir+set}" = set; then -+ withval="$with_pkg_config_libdir" -+ PKG_CONFIG_LIBDIR=$withval -+else -+ PKG_CONFIG_LIBDIR=yes -+fi; -+ -+ case x$PKG_CONFIG_LIBDIR in #(vi -+ x/*) #(vi -+ ;; -+ xyes) #(vi -+ # look for the library directory using the same prefix as the executable -+ cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'` -+ case x`(arch) 2>/dev/null` in #(vi -+ *64) #(vi -+ for cf_config in $cf_path/share $cf_path/lib64 $cf_path/lib32 $cf_path/lib -+ do -+ if test -d $cf_config/pkgconfig -+ then -+ PKG_CONFIG_LIBDIR=$cf_config/pkgconfig -+ break -+ fi -+ done -+ ;; -+ *) -+ PKG_CONFIG_LIBDIR=$cf_path/lib/pkgconfig -+ ;; -+ esac -+ ;; -+ *) -+ ;; -+ esac -+ -+ echo "$as_me:2585: result: $PKG_CONFIG_LIBDIR" >&5 -+echo "${ECHO_T}$PKG_CONFIG_LIBDIR" >&6 -+fi -+ -+if test "$PKG_CONFIG" != none ; then -+ echo "$as_me:2590: checking if we should install .pc files for $PKG_CONFIG" >&5 -+echo $ECHO_N "checking if we should install .pc files for $PKG_CONFIG... $ECHO_C" >&6 - - # Check whether --enable-pc-files or --disable-pc-files was given. - if test "${enable_pc_files+set}" = set; then -@@ -2853,18 +2597,48 @@ - else - enable_pc_files=no - fi; -- echo "$as_me:2856: result: $enable_pc_files" >&5 -+ echo "$as_me:2600: result: $enable_pc_files" >&5 - echo "${ECHO_T}$enable_pc_files" >&6 -- else -- echo "$as_me:2859: result: no" >&5 --echo "${ECHO_T}no" >&6 -- { echo "$as_me:2861: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&5 --echo "$as_me: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&2;} -- enable_pc_files=no -+ if test "$enable_pc_files" != no -+ then -+ -+if test "x$prefix" != xNONE; then -+ cf_path_syntax="$prefix" -+else -+ cf_path_syntax="$ac_default_prefix" -+fi -+ -+case ".$PKG_CONFIG_LIBDIR" in #(vi -+.\$\(*\)*|.\'*\'*) #(vi -+ ;; -+..|./*|.\\*) #(vi -+ ;; -+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX -+ ;; -+.\${*prefix}*|.\${*dir}*) #(vi -+ eval PKG_CONFIG_LIBDIR="$PKG_CONFIG_LIBDIR" -+ case ".$PKG_CONFIG_LIBDIR" in #(vi -+ .NONE/*) -+ PKG_CONFIG_LIBDIR=`echo $PKG_CONFIG_LIBDIR | sed -e s%NONE%$cf_path_syntax%` -+ ;; -+ esac -+ ;; #(vi -+.no|.NONE/*) -+ PKG_CONFIG_LIBDIR=`echo $PKG_CONFIG_LIBDIR | sed -e s%NONE%$cf_path_syntax%` -+ ;; -+*) -+ { { echo "$as_me:2630: error: expected a pathname, not \"$PKG_CONFIG_LIBDIR\"" >&5 -+echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG_LIBDIR\"" >&2;} -+ { (exit 1); exit 1; }; } -+ ;; -+esac -+ - fi -+else -+ enable_pc_files=no - fi - --echo "$as_me:2867: checking if you want to build test-programs" >&5 -+echo "$as_me:2641: checking if you want to build test-programs" >&5 - echo $ECHO_N "checking if you want to build test-programs... $ECHO_C" >&6 - - # Check whether --with-tests or --without-tests was given. -@@ -2874,10 +2648,10 @@ - else - cf_with_tests=yes - fi; --echo "$as_me:2877: result: $cf_with_tests" >&5 -+echo "$as_me:2651: result: $cf_with_tests" >&5 - echo "${ECHO_T}$cf_with_tests" >&6 - --echo "$as_me:2880: checking if we should assume mixed-case filenames" >&5 -+echo "$as_me:2654: checking if we should assume mixed-case filenames" >&5 - echo $ECHO_N "checking if we should assume mixed-case filenames... $ECHO_C" >&6 - - # Check whether --enable-mixed-case or --disable-mixed-case was given. -@@ -2887,11 +2661,11 @@ - else - enable_mixedcase=auto - fi; --echo "$as_me:2890: result: $enable_mixedcase" >&5 -+echo "$as_me:2664: result: $enable_mixedcase" >&5 - echo "${ECHO_T}$enable_mixedcase" >&6 - if test "$enable_mixedcase" = "auto" ; then - --echo "$as_me:2894: checking if filesystem supports mixed-case filenames" >&5 -+echo "$as_me:2668: checking if filesystem supports mixed-case filenames" >&5 - echo $ECHO_N "checking if filesystem supports mixed-case filenames... $ECHO_C" >&6 - if test "${cf_cv_mixedcase+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2899,7 +2673,7 @@ - - if test "$cross_compiling" = yes ; then - case $target_alias in #(vi -- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi -+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi - cf_cv_mixedcase=no - ;; - *) -@@ -2918,9 +2692,10 @@ - fi - - fi --echo "$as_me:2921: result: $cf_cv_mixedcase" >&5 -+echo "$as_me:2695: result: $cf_cv_mixedcase" >&5 - echo "${ECHO_T}$cf_cv_mixedcase" >&6 --test "$cf_cv_mixedcase" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_mixedcase" = yes && -+cat >>confdefs.h <<\EOF - #define MIXEDCASE_FILENAMES 1 - EOF - -@@ -2935,7 +2710,7 @@ - fi - - # do this after mixed-case option (tags/TAGS is not as important as tic). --echo "$as_me:2938: checking whether ${MAKE-make} sets \${MAKE}" >&5 -+echo "$as_me:2713: checking whether ${MAKE-make} sets \${MAKE}" >&5 - echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6 - set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'` - if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then -@@ -2955,11 +2730,11 @@ - rm -f conftest.make - fi - if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then -- echo "$as_me:2958: result: yes" >&5 -+ echo "$as_me:2733: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - SET_MAKE= - else -- echo "$as_me:2962: result: no" >&5 -+ echo "$as_me:2737: result: no" >&5 - echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" - fi -@@ -2968,7 +2743,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:2971: checking for $ac_word" >&5 -+echo "$as_me:2746: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_CTAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2983,7 +2758,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_CTAGS="$ac_prog" --echo "$as_me:2986: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2761: found $ac_dir/$ac_word" >&5 - break - done - -@@ -2991,10 +2766,10 @@ - fi - CTAGS=$ac_cv_prog_CTAGS - if test -n "$CTAGS"; then -- echo "$as_me:2994: result: $CTAGS" >&5 -+ echo "$as_me:2769: result: $CTAGS" >&5 - echo "${ECHO_T}$CTAGS" >&6 - else -- echo "$as_me:2997: result: no" >&5 -+ echo "$as_me:2772: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3005,7 +2780,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:3008: checking for $ac_word" >&5 -+echo "$as_me:2783: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ETAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3020,7 +2795,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ETAGS="$ac_prog" --echo "$as_me:3023: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2798: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3028,10 +2803,10 @@ - fi - ETAGS=$ac_cv_prog_ETAGS - if test -n "$ETAGS"; then -- echo "$as_me:3031: result: $ETAGS" >&5 -+ echo "$as_me:2806: result: $ETAGS" >&5 - echo "${ECHO_T}$ETAGS" >&6 - else -- echo "$as_me:3034: result: no" >&5 -+ echo "$as_me:2809: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3040,7 +2815,7 @@ - - # Extract the first word of "${CTAGS:-ctags}", so it can be a program name with args. - set dummy ${CTAGS:-ctags}; ac_word=$2 --echo "$as_me:3043: checking for $ac_word" >&5 -+echo "$as_me:2818: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_MAKE_LOWER_TAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3055,7 +2830,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_MAKE_LOWER_TAGS="yes" --echo "$as_me:3058: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2833: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3064,17 +2839,17 @@ - fi - MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS - if test -n "$MAKE_LOWER_TAGS"; then -- echo "$as_me:3067: result: $MAKE_LOWER_TAGS" >&5 -+ echo "$as_me:2842: result: $MAKE_LOWER_TAGS" >&5 - echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6 - else -- echo "$as_me:3070: result: no" >&5 -+ echo "$as_me:2845: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - - if test "$cf_cv_mixedcase" = yes ; then - # Extract the first word of "${ETAGS:-etags}", so it can be a program name with args. - set dummy ${ETAGS:-etags}; ac_word=$2 --echo "$as_me:3077: checking for $ac_word" >&5 -+echo "$as_me:2852: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_MAKE_UPPER_TAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3089,7 +2864,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_MAKE_UPPER_TAGS="yes" --echo "$as_me:3092: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2867: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3098,10 +2873,10 @@ - fi - MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS - if test -n "$MAKE_UPPER_TAGS"; then -- echo "$as_me:3101: result: $MAKE_UPPER_TAGS" >&5 -+ echo "$as_me:2876: result: $MAKE_UPPER_TAGS" >&5 - echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6 - else -- echo "$as_me:3104: result: no" >&5 -+ echo "$as_me:2879: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3121,7 +2896,7 @@ - MAKE_LOWER_TAGS="#" - fi - --echo "$as_me:3124: checking for makeflags variable" >&5 -+echo "$as_me:2899: checking for makeflags variable" >&5 - echo $ECHO_N "checking for makeflags variable... $ECHO_C" >&6 - if test "${cf_cv_makeflags+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3155,13 +2930,13 @@ - rm -f cf_makeflags.tmp - - fi --echo "$as_me:3158: result: $cf_cv_makeflags" >&5 -+echo "$as_me:2933: result: $cf_cv_makeflags" >&5 - echo "${ECHO_T}$cf_cv_makeflags" >&6 - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. - set dummy ${ac_tool_prefix}ranlib; ac_word=$2 --echo "$as_me:3164: checking for $ac_word" >&5 -+echo "$as_me:2939: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3176,7 +2951,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" --echo "$as_me:3179: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2954: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3184,10 +2959,10 @@ - fi - RANLIB=$ac_cv_prog_RANLIB - if test -n "$RANLIB"; then -- echo "$as_me:3187: result: $RANLIB" >&5 -+ echo "$as_me:2962: result: $RANLIB" >&5 - echo "${ECHO_T}$RANLIB" >&6 - else -- echo "$as_me:3190: result: no" >&5 -+ echo "$as_me:2965: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3196,7 +2971,7 @@ - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. - set dummy ranlib; ac_word=$2 --echo "$as_me:3199: checking for $ac_word" >&5 -+echo "$as_me:2974: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3211,7 +2986,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_RANLIB="ranlib" --echo "$as_me:3214: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2989: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3220,10 +2995,10 @@ - fi - ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB - if test -n "$ac_ct_RANLIB"; then -- echo "$as_me:3223: result: $ac_ct_RANLIB" >&5 -+ echo "$as_me:2998: result: $ac_ct_RANLIB" >&5 - echo "${ECHO_T}$ac_ct_RANLIB" >&6 - else -- echo "$as_me:3226: result: no" >&5 -+ echo "$as_me:3001: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3235,7 +3010,7 @@ - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ld", so it can be a program name with args. - set dummy ${ac_tool_prefix}ld; ac_word=$2 --echo "$as_me:3238: checking for $ac_word" >&5 -+echo "$as_me:3013: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3250,7 +3025,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_LD="${ac_tool_prefix}ld" --echo "$as_me:3253: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3028: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3258,10 +3033,10 @@ - fi - LD=$ac_cv_prog_LD - if test -n "$LD"; then -- echo "$as_me:3261: result: $LD" >&5 -+ echo "$as_me:3036: result: $LD" >&5 - echo "${ECHO_T}$LD" >&6 - else -- echo "$as_me:3264: result: no" >&5 -+ echo "$as_me:3039: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3270,7 +3045,7 @@ - ac_ct_LD=$LD - # Extract the first word of "ld", so it can be a program name with args. - set dummy ld; ac_word=$2 --echo "$as_me:3273: checking for $ac_word" >&5 -+echo "$as_me:3048: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3285,7 +3060,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_LD="ld" --echo "$as_me:3288: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3063: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3294,10 +3069,10 @@ - fi - ac_ct_LD=$ac_cv_prog_ac_ct_LD - if test -n "$ac_ct_LD"; then -- echo "$as_me:3297: result: $ac_ct_LD" >&5 -+ echo "$as_me:3072: result: $ac_ct_LD" >&5 - echo "${ECHO_T}$ac_ct_LD" >&6 - else -- echo "$as_me:3300: result: no" >&5 -+ echo "$as_me:3075: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3309,7 +3084,7 @@ - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. - set dummy ${ac_tool_prefix}ar; ac_word=$2 --echo "$as_me:3312: checking for $ac_word" >&5 -+echo "$as_me:3087: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3324,7 +3099,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_AR="${ac_tool_prefix}ar" --echo "$as_me:3327: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3102: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3332,10 +3107,10 @@ - fi - AR=$ac_cv_prog_AR - if test -n "$AR"; then -- echo "$as_me:3335: result: $AR" >&5 -+ echo "$as_me:3110: result: $AR" >&5 - echo "${ECHO_T}$AR" >&6 - else -- echo "$as_me:3338: result: no" >&5 -+ echo "$as_me:3113: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3344,7 +3119,7 @@ - ac_ct_AR=$AR - # Extract the first word of "ar", so it can be a program name with args. - set dummy ar; ac_word=$2 --echo "$as_me:3347: checking for $ac_word" >&5 -+echo "$as_me:3122: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3359,7 +3134,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_AR="ar" --echo "$as_me:3362: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3137: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3368,10 +3143,10 @@ - fi - ac_ct_AR=$ac_cv_prog_ac_ct_AR - if test -n "$ac_ct_AR"; then -- echo "$as_me:3371: result: $ac_ct_AR" >&5 -+ echo "$as_me:3146: result: $ac_ct_AR" >&5 - echo "${ECHO_T}$ac_ct_AR" >&6 - else -- echo "$as_me:3374: result: no" >&5 -+ echo "$as_me:3149: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3383,7 +3158,7 @@ - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. - set dummy ${ac_tool_prefix}ar; ac_word=$2 --echo "$as_me:3386: checking for $ac_word" >&5 -+echo "$as_me:3161: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3398,7 +3173,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_AR="${ac_tool_prefix}ar" --echo "$as_me:3401: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3176: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3406,10 +3181,10 @@ - fi - AR=$ac_cv_prog_AR - if test -n "$AR"; then -- echo "$as_me:3409: result: $AR" >&5 -+ echo "$as_me:3184: result: $AR" >&5 - echo "${ECHO_T}$AR" >&6 - else -- echo "$as_me:3412: result: no" >&5 -+ echo "$as_me:3187: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3418,7 +3193,7 @@ - ac_ct_AR=$AR - # Extract the first word of "ar", so it can be a program name with args. - set dummy ar; ac_word=$2 --echo "$as_me:3421: checking for $ac_word" >&5 -+echo "$as_me:3196: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3433,7 +3208,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_AR="ar" --echo "$as_me:3436: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3211: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3442,10 +3217,10 @@ - fi - ac_ct_AR=$ac_cv_prog_ac_ct_AR - if test -n "$ac_ct_AR"; then -- echo "$as_me:3445: result: $ac_ct_AR" >&5 -+ echo "$as_me:3220: result: $ac_ct_AR" >&5 - echo "${ECHO_T}$ac_ct_AR" >&6 - else -- echo "$as_me:3448: result: no" >&5 -+ echo "$as_me:3223: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3454,7 +3229,7 @@ - AR="$ac_cv_prog_AR" - fi - --echo "$as_me:3457: checking for options to update archives" >&5 -+echo "$as_me:3232: checking for options to update archives" >&5 - echo $ECHO_N "checking for options to update archives... $ECHO_C" >&6 - if test "${cf_cv_ar_flags+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3477,13 +3252,13 @@ - rm -f conftest.a - - cat >conftest.$ac_ext <&5 -+ if { (eval echo "$as_me:3258: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3486: \$? = $ac_status" >&5 -+ echo "$as_me:3261: \$? = $ac_status" >&5 - (exit $ac_status); } ; then - echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&5 - $AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext 2>&5 1>/dev/null -@@ -3494,7 +3269,7 @@ - else - test -n "$verbose" && echo " cannot compile test-program" 1>&6 - --echo "${as_me:-configure}:3497: testing cannot compile test-program ..." 1>&5 -+echo "${as_me:-configure}:3272: testing cannot compile test-program ..." 1>&5 - - break - fi -@@ -3502,7 +3277,7 @@ - rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext - - fi --echo "$as_me:3505: result: $cf_cv_ar_flags" >&5 -+echo "$as_me:3280: result: $cf_cv_ar_flags" >&5 - echo "${ECHO_T}$cf_cv_ar_flags" >&6 - - if test -n "$ARFLAGS" ; then -@@ -3513,7 +3288,17 @@ - ARFLAGS=$cf_cv_ar_flags - fi - --echo "$as_me:3516: checking if you have specified an install-prefix" >&5 -+ echo "$as_me:3291: checking for PATH separator" >&5 -+echo $ECHO_N "checking for PATH separator... $ECHO_C" >&6 -+ case $cf_cv_system_name in -+ os2*) PATH_SEPARATOR=';' ;; -+ *) ${PATH_SEPARATOR:=':'} ;; -+ esac -+ -+ echo "$as_me:3298: result: $PATH_SEPARATOR" >&5 -+echo "${ECHO_T}$PATH_SEPARATOR" >&6 -+ -+echo "$as_me:3301: checking if you have specified an install-prefix" >&5 - echo $ECHO_N "checking if you have specified an install-prefix... $ECHO_C" >&6 - - # Check whether --with-install-prefix or --without-install-prefix was given. -@@ -3526,7 +3311,7 @@ - ;; - esac - fi; --echo "$as_me:3529: result: $DESTDIR" >&5 -+echo "$as_me:3314: result: $DESTDIR" >&5 - echo "${ECHO_T}$DESTDIR" >&6 - - ############################################################################### -@@ -3554,7 +3339,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:3557: checking for $ac_word" >&5 -+echo "$as_me:3342: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_BUILD_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3569,7 +3354,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_BUILD_CC="$ac_prog" --echo "$as_me:3572: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3357: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3577,10 +3362,10 @@ - fi - BUILD_CC=$ac_cv_prog_BUILD_CC - if test -n "$BUILD_CC"; then -- echo "$as_me:3580: result: $BUILD_CC" >&5 -+ echo "$as_me:3365: result: $BUILD_CC" >&5 - echo "${ECHO_T}$BUILD_CC" >&6 - else -- echo "$as_me:3583: result: no" >&5 -+ echo "$as_me:3368: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3588,12 +3373,12 @@ - done - - fi; -- echo "$as_me:3591: checking for native build C compiler" >&5 -+ echo "$as_me:3376: checking for native build C compiler" >&5 - echo $ECHO_N "checking for native build C compiler... $ECHO_C" >&6 -- echo "$as_me:3593: result: $BUILD_CC" >&5 -+ echo "$as_me:3378: result: $BUILD_CC" >&5 - echo "${ECHO_T}$BUILD_CC" >&6 - -- echo "$as_me:3596: checking for native build C preprocessor" >&5 -+ echo "$as_me:3381: checking for native build C preprocessor" >&5 - echo $ECHO_N "checking for native build C preprocessor... $ECHO_C" >&6 - - # Check whether --with-build-cpp or --without-build-cpp was given. -@@ -3603,10 +3388,10 @@ - else - BUILD_CPP='${BUILD_CC} -E' - fi; -- echo "$as_me:3606: result: $BUILD_CPP" >&5 -+ echo "$as_me:3391: result: $BUILD_CPP" >&5 - echo "${ECHO_T}$BUILD_CPP" >&6 - -- echo "$as_me:3609: checking for native build C flags" >&5 -+ echo "$as_me:3394: checking for native build C flags" >&5 - echo $ECHO_N "checking for native build C flags... $ECHO_C" >&6 - - # Check whether --with-build-cflags or --without-build-cflags was given. -@@ -3614,10 +3399,10 @@ - withval="$with_build_cflags" - BUILD_CFLAGS="$withval" - fi; -- echo "$as_me:3617: result: $BUILD_CFLAGS" >&5 -+ echo "$as_me:3402: result: $BUILD_CFLAGS" >&5 - echo "${ECHO_T}$BUILD_CFLAGS" >&6 - -- echo "$as_me:3620: checking for native build C preprocessor-flags" >&5 -+ echo "$as_me:3405: checking for native build C preprocessor-flags" >&5 - echo $ECHO_N "checking for native build C preprocessor-flags... $ECHO_C" >&6 - - # Check whether --with-build-cppflags or --without-build-cppflags was given. -@@ -3625,10 +3410,10 @@ - withval="$with_build_cppflags" - BUILD_CPPFLAGS="$withval" - fi; -- echo "$as_me:3628: result: $BUILD_CPPFLAGS" >&5 -+ echo "$as_me:3413: result: $BUILD_CPPFLAGS" >&5 - echo "${ECHO_T}$BUILD_CPPFLAGS" >&6 - -- echo "$as_me:3631: checking for native build linker-flags" >&5 -+ echo "$as_me:3416: checking for native build linker-flags" >&5 - echo $ECHO_N "checking for native build linker-flags... $ECHO_C" >&6 - - # Check whether --with-build-ldflags or --without-build-ldflags was given. -@@ -3636,10 +3421,10 @@ - withval="$with_build_ldflags" - BUILD_LDFLAGS="$withval" - fi; -- echo "$as_me:3639: result: $BUILD_LDFLAGS" >&5 -+ echo "$as_me:3424: result: $BUILD_LDFLAGS" >&5 - echo "${ECHO_T}$BUILD_LDFLAGS" >&6 - -- echo "$as_me:3642: checking for native build linker-libraries" >&5 -+ echo "$as_me:3427: checking for native build linker-libraries" >&5 - echo $ECHO_N "checking for native build linker-libraries... $ECHO_C" >&6 - - # Check whether --with-build-libs or --without-build-libs was given. -@@ -3647,7 +3432,7 @@ - withval="$with_build_libs" - BUILD_LIBS="$withval" - fi; -- echo "$as_me:3650: result: $BUILD_LIBS" >&5 -+ echo "$as_me:3435: result: $BUILD_LIBS" >&5 - echo "${ECHO_T}$BUILD_LIBS" >&6 - - # this assumes we're on Unix. -@@ -3657,7 +3442,7 @@ - : ${BUILD_CC:='${CC}'} - - if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then -- { { echo "$as_me:3660: error: Cross-build requires two compilers. -+ { { echo "$as_me:3445: error: Cross-build requires two compilers. - Use --with-build-cc to specify the native compiler." >&5 - echo "$as_me: error: Cross-build requires two compilers. - Use --with-build-cc to specify the native compiler." >&2;} -@@ -3682,7 +3467,7 @@ - ### shared, for example. - cf_list_models="" - --echo "$as_me:3685: checking if you want to build shared C-objects" >&5 -+echo "$as_me:3470: checking if you want to build shared C-objects" >&5 - echo $ECHO_N "checking if you want to build shared C-objects... $ECHO_C" >&6 - - # Check whether --with-shared or --without-shared was given. -@@ -3692,27 +3477,27 @@ - else - with_shared=no - fi; --echo "$as_me:3695: result: $with_shared" >&5 -+echo "$as_me:3480: result: $with_shared" >&5 - echo "${ECHO_T}$with_shared" >&6 - test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared" - --echo "$as_me:3699: checking for specified models" >&5 -+echo "$as_me:3484: checking for specified models" >&5 - echo $ECHO_N "checking for specified models... $ECHO_C" >&6 - test -z "$cf_list_models" && cf_list_models=normal --echo "$as_me:3702: result: $cf_list_models" >&5 -+echo "$as_me:3487: result: $cf_list_models" >&5 - echo "${ECHO_T}$cf_list_models" >&6 - - ### Use the first model as the default, and save its suffix for use in building - ### up test-applications. --echo "$as_me:3707: checking for default model" >&5 -+echo "$as_me:3492: checking for default model" >&5 - echo $ECHO_N "checking for default model... $ECHO_C" >&6 - DFT_LWR_MODEL=`echo "$cf_list_models" | $AWK '{print $1}'` --echo "$as_me:3710: result: $DFT_LWR_MODEL" >&5 -+echo "$as_me:3495: result: $DFT_LWR_MODEL" >&5 - echo "${ECHO_T}$DFT_LWR_MODEL" >&6 - - DFT_UPR_MODEL=`echo "$DFT_LWR_MODEL" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - --echo "$as_me:3715: checking for specific curses-directory" >&5 -+echo "$as_me:3500: checking for specific curses-directory" >&5 - echo $ECHO_N "checking for specific curses-directory... $ECHO_C" >&6 - - # Check whether --with-curses-dir or --without-curses-dir was given. -@@ -3722,7 +3507,7 @@ - else - cf_cv_curses_dir=no - fi; --echo "$as_me:3725: result: $cf_cv_curses_dir" >&5 -+echo "$as_me:3510: result: $cf_cv_curses_dir" >&5 - echo "${ECHO_T}$cf_cv_curses_dir" >&6 - - if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" ) -@@ -3741,7 +3526,7 @@ - ;; - .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX - ;; --.\${*prefix}*) #(vi -+.\${*prefix}*|.\${*dir}*) #(vi - eval withval="$withval" - case ".$withval" in #(vi - .NONE/*) -@@ -3753,7 +3538,7 @@ - withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` - ;; - *) -- { { echo "$as_me:3756: error: expected a pathname, not \"$withval\"" >&5 -+ { { echo "$as_me:3541: error: expected a pathname, not \"$withval\"" >&5 - echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} - { (exit 1); exit 1; }; } - ;; -@@ -3786,7 +3571,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 3789 "configure" -+#line 3574 "configure" - #include "confdefs.h" - #include - int -@@ -3798,16 +3583,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:3801: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:3586: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3804: \$? = $ac_status" >&5 -+ echo "$as_me:3589: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3807: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3592: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3810: \$? = $ac_status" >&5 -+ echo "$as_me:3595: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -3824,7 +3609,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:3827: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:3612: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -3858,7 +3643,7 @@ - if test "$cf_have_libdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 - --echo "${as_me:-configure}:3861: testing adding $cf_add_libdir to library-path ..." 1>&5 -+echo "${as_me:-configure}:3646: testing adding $cf_add_libdir to library-path ..." 1>&5 - - LDFLAGS="-L$cf_add_libdir $LDFLAGS" - fi -@@ -3869,7 +3654,7 @@ - fi - fi - --echo "$as_me:3872: checking if you want wide-character code" >&5 -+echo "$as_me:3657: checking if you want wide-character code" >&5 - echo $ECHO_N "checking if you want wide-character code... $ECHO_C" >&6 - - # Check whether --enable-widec or --disable-widec was given. -@@ -3879,11 +3664,11 @@ - else - with_widec=no - fi; --echo "$as_me:3882: result: $with_widec" >&5 -+echo "$as_me:3667: result: $with_widec" >&5 - echo "${ECHO_T}$with_widec" >&6 - if test "$with_widec" = yes ; then - --echo "$as_me:3886: checking for multibyte character support" >&5 -+echo "$as_me:3671: checking for multibyte character support" >&5 - echo $ECHO_N "checking for multibyte character support... $ECHO_C" >&6 - if test "${cf_cv_utf8_lib+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3891,7 +3676,7 @@ - - cf_save_LIBS="$LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 3894 "configure" -+#line 3679 "configure" - #include "confdefs.h" - - #include -@@ -3904,16 +3689,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:3907: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:3692: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:3910: \$? = $ac_status" >&5 -+ echo "$as_me:3695: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:3913: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3698: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3916: \$? = $ac_status" >&5 -+ echo "$as_me:3701: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_utf8_lib=yes - else -@@ -3925,12 +3710,12 @@ - cf_cv_header_path_utf8= - cf_cv_library_path_utf8= - --echo "${as_me:-configure}:3928: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5 -+echo "${as_me:-configure}:3713: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5 - - cf_save_LIBS="$LIBS" - - cat >conftest.$ac_ext <<_ACEOF --#line 3933 "configure" -+#line 3718 "configure" - #include "confdefs.h" - - #include -@@ -3943,16 +3728,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:3946: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:3731: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:3949: \$? = $ac_status" >&5 -+ echo "$as_me:3734: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:3952: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3737: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3955: \$? = $ac_status" >&5 -+ echo "$as_me:3740: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_find_linkage_utf8=yes -@@ -3966,7 +3751,7 @@ - LIBS="-lutf8 $cf_save_LIBS" - - cat >conftest.$ac_ext <<_ACEOF --#line 3969 "configure" -+#line 3754 "configure" - #include "confdefs.h" - - #include -@@ -3979,16 +3764,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:3982: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:3767: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:3985: \$? = $ac_status" >&5 -+ echo "$as_me:3770: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:3988: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3773: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3991: \$? = $ac_status" >&5 -+ echo "$as_me:3776: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_find_linkage_utf8=yes -@@ -4005,9 +3790,9 @@ - - test -n "$verbose" && echo " find linkage for utf8 library" 1>&6 - --echo "${as_me:-configure}:4008: testing find linkage for utf8 library ..." 1>&5 -+echo "${as_me:-configure}:3793: testing find linkage for utf8 library ..." 1>&5 - --echo "${as_me:-configure}:4010: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5 -+echo "${as_me:-configure}:3795: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5 - - cf_save_CPPFLAGS="$CPPFLAGS" - cf_test_CPPFLAGS="$CPPFLAGS" -@@ -4023,7 +3808,7 @@ - -I*) - cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'` - --test "$cf_header_path" != "NONE" && \ -+test "x$cf_header_path" != "xNONE" && \ - test -d "$cf_header_path" && \ - { - test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path" -@@ -4044,9 +3829,9 @@ - - cf_search= - --test "/usr" != "$prefix" && \ -+test "x/usr" != "x$prefix" && \ - test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /usr" - test -d /usr/include && cf_search="$cf_search /usr/include" - test -d /usr/include/utf8 && cf_search="$cf_search /usr/include/utf8" -@@ -4055,7 +3840,7 @@ - test -d /usr/utf8/include/utf8 && cf_search="$cf_search /usr/utf8/include/utf8" - } - --test "$prefix" != "NONE" && \ -+test "x$prefix" != "xNONE" && \ - test -d "$prefix" && \ - { - test -n "$verbose" && echo " ... testing for include-directories under $prefix" -@@ -4066,9 +3851,9 @@ - test -d $prefix/utf8/include/utf8 && cf_search="$cf_search $prefix/utf8/include/utf8" - } - --test "/usr/local" != "$prefix" && \ -+test "x/usr/local" != "x$prefix" && \ - test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /usr/local" - test -d /usr/local/include && cf_search="$cf_search /usr/local/include" - test -d /usr/local/include/utf8 && cf_search="$cf_search /usr/local/include/utf8" -@@ -4077,9 +3862,9 @@ - test -d /usr/local/utf8/include/utf8 && cf_search="$cf_search /usr/local/utf8/include/utf8" - } - --test "/opt" != "$prefix" && \ -+test "x/opt" != "x$prefix" && \ - test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /opt" - test -d /opt/include && cf_search="$cf_search /opt/include" - test -d /opt/include/utf8 && cf_search="$cf_search /opt/include/utf8" -@@ -4088,9 +3873,9 @@ - test -d /opt/utf8/include/utf8 && cf_search="$cf_search /opt/utf8/include/utf8" - } - --test "$HOME" != "$prefix" && \ -+test "x$HOME" != "x$prefix" && \ - test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under $HOME" - test -d $HOME/include && cf_search="$cf_search $HOME/include" - test -d $HOME/include/utf8 && cf_search="$cf_search $HOME/include/utf8" -@@ -4120,11 +3905,11 @@ - if test -d $cf_cv_header_path_utf8 ; then - test -n "$verbose" && echo " ... testing $cf_cv_header_path_utf8" 1>&6 - --echo "${as_me:-configure}:4123: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5 -+echo "${as_me:-configure}:3908: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5 - - CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_utf8" - cat >conftest.$ac_ext <<_ACEOF --#line 4127 "configure" -+#line 3912 "configure" - #include "confdefs.h" - - #include -@@ -4137,21 +3922,21 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:4140: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:3925: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:4143: \$? = $ac_status" >&5 -+ echo "$as_me:3928: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:4146: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3931: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4149: \$? = $ac_status" >&5 -+ echo "$as_me:3934: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - test -n "$verbose" && echo " ... found utf8 headers in $cf_cv_header_path_utf8" 1>&6 - --echo "${as_me:-configure}:4154: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5 -+echo "${as_me:-configure}:3939: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5 - - cf_cv_find_linkage_utf8=maybe - cf_test_CPPFLAGS="$CPPFLAGS" -@@ -4169,7 +3954,7 @@ - - if test "$cf_cv_find_linkage_utf8" = maybe ; then - --echo "${as_me:-configure}:4172: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5 -+echo "${as_me:-configure}:3957: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5 - - cf_save_LIBS="$LIBS" - cf_save_LDFLAGS="$LDFLAGS" -@@ -4185,7 +3970,7 @@ - -L*) - cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'` - --test "$cf_library_path" != "NONE" && \ -+test "x$cf_library_path" != "xNONE" && \ - test -d "$cf_library_path" && \ - { - test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path" -@@ -4204,9 +3989,9 @@ - - cf_search= - --test "/usr" != "$prefix" && \ -+test "x/usr" != "x$prefix" && \ - test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /usr" - test -d /usr/lib && cf_search="$cf_search /usr/lib" - test -d /usr/lib/utf8 && cf_search="$cf_search /usr/lib/utf8" -@@ -4215,7 +4000,7 @@ - test -d /usr/utf8/lib/utf8 && cf_search="$cf_search /usr/utf8/lib/utf8" - } - --test "$prefix" != "NONE" && \ -+test "x$prefix" != "xNONE" && \ - test -d "$prefix" && \ - { - test -n "$verbose" && echo " ... testing for lib-directories under $prefix" -@@ -4226,9 +4011,9 @@ - test -d $prefix/utf8/lib/utf8 && cf_search="$cf_search $prefix/utf8/lib/utf8" - } - --test "/usr/local" != "$prefix" && \ -+test "x/usr/local" != "x$prefix" && \ - test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /usr/local" - test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib" - test -d /usr/local/lib/utf8 && cf_search="$cf_search /usr/local/lib/utf8" -@@ -4237,9 +4022,9 @@ - test -d /usr/local/utf8/lib/utf8 && cf_search="$cf_search /usr/local/utf8/lib/utf8" - } - --test "/opt" != "$prefix" && \ -+test "x/opt" != "x$prefix" && \ - test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /opt" - test -d /opt/lib && cf_search="$cf_search /opt/lib" - test -d /opt/lib/utf8 && cf_search="$cf_search /opt/lib/utf8" -@@ -4248,9 +4033,9 @@ - test -d /opt/utf8/lib/utf8 && cf_search="$cf_search /opt/utf8/lib/utf8" - } - --test "$HOME" != "$prefix" && \ -+test "x$HOME" != "x$prefix" && \ - test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under $HOME" - test -d $HOME/lib && cf_search="$cf_search $HOME/lib" - test -d $HOME/lib/utf8 && cf_search="$cf_search $HOME/lib/utf8" -@@ -4266,13 +4051,13 @@ - if test -d $cf_cv_library_path_utf8 ; then - test -n "$verbose" && echo " ... testing $cf_cv_library_path_utf8" 1>&6 - --echo "${as_me:-configure}:4269: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5 -+echo "${as_me:-configure}:4054: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5 - - CPPFLAGS="$cf_test_CPPFLAGS" - LIBS="-lutf8 $cf_save_LIBS" - LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_utf8" - cat >conftest.$ac_ext <<_ACEOF --#line 4275 "configure" -+#line 4060 "configure" - #include "confdefs.h" - - #include -@@ -4285,21 +4070,21 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:4288: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:4073: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:4291: \$? = $ac_status" >&5 -+ echo "$as_me:4076: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:4294: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:4079: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4297: \$? = $ac_status" >&5 -+ echo "$as_me:4082: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - test -n "$verbose" && echo " ... found utf8 library in $cf_cv_library_path_utf8" 1>&6 - --echo "${as_me:-configure}:4302: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5 -+echo "${as_me:-configure}:4087: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5 - - cf_cv_find_linkage_utf8=yes - cf_cv_library_file_utf8="-lutf8" -@@ -4341,13 +4126,14 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:4344: result: $cf_cv_utf8_lib" >&5 -+echo "$as_me:4129: result: $cf_cv_utf8_lib" >&5 - echo "${ECHO_T}$cf_cv_utf8_lib" >&6 - - # HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between - # ncurses/ncursesw: - if test "$cf_cv_utf8_lib" = "add-on" ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_LIBUTF8_H 1 - EOF - -@@ -4375,7 +4161,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 4378 "configure" -+#line 4164 "configure" - #include "confdefs.h" - #include - int -@@ -4387,16 +4173,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:4390: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:4176: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:4393: \$? = $ac_status" >&5 -+ echo "$as_me:4179: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:4396: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:4182: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4399: \$? = $ac_status" >&5 -+ echo "$as_me:4185: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -4413,7 +4199,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:4416: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:4202: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -4447,7 +4233,7 @@ - if test "$cf_have_libdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 - --echo "${as_me:-configure}:4450: testing adding $cf_add_libdir to library-path ..." 1>&5 -+echo "${as_me:-configure}:4236: testing adding $cf_add_libdir to library-path ..." 1>&5 - - LDFLAGS="-L$cf_add_libdir $LDFLAGS" - fi -@@ -4461,48 +4247,87 @@ - cf_ncuconfig_root=ncursesw - - echo "Looking for ${cf_ncuconfig_root}-config" --for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config -+ -+if test -n "$ac_tool_prefix"; then -+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:4256: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$NCURSES_CONFIG"; then -+ ac_cv_prog_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog" -+echo "$as_me:4271: found $ac_dir/$ac_word" >&5 -+break -+done -+ -+fi -+fi -+NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG -+if test -n "$NCURSES_CONFIG"; then -+ echo "$as_me:4279: result: $NCURSES_CONFIG" >&5 -+echo "${ECHO_T}$NCURSES_CONFIG" >&6 -+else -+ echo "$as_me:4282: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$NCURSES_CONFIG" && break -+ done -+fi -+if test -z "$NCURSES_CONFIG"; then -+ ac_ct_NCURSES_CONFIG=$NCURSES_CONFIG -+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:4468: checking for $ac_word" >&5 -+echo "$as_me:4295: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_path_NCURSES_CONFIG+set}" = set; then -+if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- case $NCURSES_CONFIG in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test with a path. -- ;; -- *) -+ if test -n "$ac_ct_NCURSES_CONFIG"; then -+ ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_ct_NCURSES_CONFIG" # Let the user override the test. -+else - ac_save_IFS=$IFS; IFS=$ac_path_separator - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. -- if $as_executable_p "$ac_dir/$ac_word"; then -- ac_cv_path_NCURSES_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:4485: found $ac_dir/$ac_word" >&5 -- break --fi -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog" -+echo "$as_me:4310: found $ac_dir/$ac_word" >&5 -+break - done - -- ;; --esac - fi --NCURSES_CONFIG=$ac_cv_path_NCURSES_CONFIG -- --if test -n "$NCURSES_CONFIG"; then -- echo "$as_me:4496: result: $NCURSES_CONFIG" >&5 --echo "${ECHO_T}$NCURSES_CONFIG" >&6 -+fi -+ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG -+if test -n "$ac_ct_NCURSES_CONFIG"; then -+ echo "$as_me:4318: result: $ac_ct_NCURSES_CONFIG" >&5 -+echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6 - else -- echo "$as_me:4499: result: no" >&5 -+ echo "$as_me:4321: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -- test -n "$NCURSES_CONFIG" && break -+ test -n "$ac_ct_NCURSES_CONFIG" && break - done --test -n "$NCURSES_CONFIG" || NCURSES_CONFIG="none" -+test -n "$ac_ct_NCURSES_CONFIG" || ac_ct_NCURSES_CONFIG="none" -+ -+ NCURSES_CONFIG=$ac_ct_NCURSES_CONFIG -+fi - - if test "$NCURSES_CONFIG" != none ; then - -@@ -4511,7 +4336,7 @@ - - # even with config script, some packages use no-override for curses.h - --echo "$as_me:4514: checking if we have identified curses headers" >&5 -+echo "$as_me:4339: checking if we have identified curses headers" >&5 - echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6 - if test "${cf_cv_ncurses_header+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4519,13 +4344,13 @@ - - cf_cv_ncurses_header=none - for cf_header in \ -- ncursesw/curses.h \ -- ncursesw/ncurses.h \ -- curses.h \ -- ncurses.h -+ ncursesw/ncurses.h \ -+ ncursesw/curses.h \ -+ ncurses.h \ -+ curses.h - do - cat >conftest.$ac_ext <<_ACEOF --#line 4528 "configure" -+#line 4353 "configure" - #include "confdefs.h" - #include <${cf_header}> - int -@@ -4537,16 +4362,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:4540: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:4365: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:4543: \$? = $ac_status" >&5 -+ echo "$as_me:4368: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:4546: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:4371: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4549: \$? = $ac_status" >&5 -+ echo "$as_me:4374: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_ncurses_header=$cf_header; break - else -@@ -4557,11 +4382,11 @@ - done - - fi --echo "$as_me:4560: result: $cf_cv_ncurses_header" >&5 -+echo "$as_me:4385: result: $cf_cv_ncurses_header" >&5 - echo "${ECHO_T}$cf_cv_ncurses_header" >&6 - - if test "$cf_cv_ncurses_header" = none ; then -- { { echo "$as_me:4564: error: No curses header-files found" >&5 -+ { { echo "$as_me:4389: error: No curses header-files found" >&5 - echo "$as_me: error: No curses header-files found" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -4571,23 +4396,23 @@ - for ac_header in $cf_cv_ncurses_header - do - as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:4574: checking for $ac_header" >&5 -+echo "$as_me:4399: checking for $ac_header" >&5 - echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 4580 "configure" -+#line 4405 "configure" - #include "confdefs.h" - #include <$ac_header> - _ACEOF --if { (eval echo "$as_me:4584: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:4409: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:4590: \$? = $ac_status" >&5 -+ echo "$as_me:4415: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -4606,7 +4431,7 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:4609: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "$as_me:4434: result: `eval echo '${'$as_ac_Header'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <conftest.$ac_ext <<_ACEOF --#line 4662 "configure" -+#line 4487 "configure" - #include "confdefs.h" - #include - int -@@ -4671,16 +4496,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:4674: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:4499: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:4677: \$? = $ac_status" >&5 -+ echo "$as_me:4502: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:4680: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:4505: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4683: \$? = $ac_status" >&5 -+ echo "$as_me:4508: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -4697,7 +4522,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:4700: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:4525: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -4714,7 +4539,7 @@ - - } - --echo "$as_me:4717: checking for $cf_ncuhdr_root header in include-path" >&5 -+echo "$as_me:4542: checking for $cf_ncuhdr_root header in include-path" >&5 - echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6 - if test "${cf_cv_ncurses_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4726,7 +4551,7 @@ - do - - cat >conftest.$ac_ext <<_ACEOF --#line 4729 "configure" -+#line 4554 "configure" - #include "confdefs.h" - - #define _XOPEN_SOURCE_EXTENDED -@@ -4758,16 +4583,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:4761: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:4586: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:4764: \$? = $ac_status" >&5 -+ echo "$as_me:4589: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:4767: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:4592: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4770: \$? = $ac_status" >&5 -+ echo "$as_me:4595: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_ncurses_h=$cf_header - -@@ -4782,14 +4607,14 @@ - done - - fi --echo "$as_me:4785: result: $cf_cv_ncurses_h" >&5 -+echo "$as_me:4610: result: $cf_cv_ncurses_h" >&5 - echo "${ECHO_T}$cf_cv_ncurses_h" >&6 - - if test "$cf_cv_ncurses_h" != no ; then - cf_cv_ncurses_header=$cf_cv_ncurses_h - else - --echo "$as_me:4792: checking for $cf_ncuhdr_root include-path" >&5 -+echo "$as_me:4617: checking for $cf_ncuhdr_root include-path" >&5 - echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6 - if test "${cf_cv_ncurses_h2+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4808,7 +4633,7 @@ - -I*) - cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'` - --test "$cf_header_path" != "NONE" && \ -+test "x$cf_header_path" != "xNONE" && \ - test -d "$cf_header_path" && \ - { - test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path" -@@ -4829,9 +4654,9 @@ - - cf_search= - --test "/usr" != "$prefix" && \ -+test "x/usr" != "x$prefix" && \ - test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /usr" - test -d /usr/include && cf_search="$cf_search /usr/include" - test -d /usr/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/include/$cf_ncuhdr_root" -@@ -4840,7 +4665,7 @@ - test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "$prefix" != "NONE" && \ -+test "x$prefix" != "xNONE" && \ - test -d "$prefix" && \ - { - test -n "$verbose" && echo " ... testing for include-directories under $prefix" -@@ -4851,9 +4676,9 @@ - test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "/usr/local" != "$prefix" && \ -+test "x/usr/local" != "x$prefix" && \ - test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /usr/local" - test -d /usr/local/include && cf_search="$cf_search /usr/local/include" - test -d /usr/local/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root" -@@ -4862,9 +4687,9 @@ - test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "/opt" != "$prefix" && \ -+test "x/opt" != "x$prefix" && \ - test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /opt" - test -d /opt/include && cf_search="$cf_search /opt/include" - test -d /opt/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/include/$cf_ncuhdr_root" -@@ -4873,9 +4698,9 @@ - test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "$HOME" != "$prefix" && \ -+test "x$HOME" != "x$prefix" && \ - test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under $HOME" - test -d $HOME/include && cf_search="$cf_search $HOME/include" - test -d $HOME/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root" -@@ -4929,7 +4754,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 4932 "configure" -+#line 4757 "configure" - #include "confdefs.h" - #include - int -@@ -4941,16 +4766,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:4944: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:4769: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:4947: \$? = $ac_status" >&5 -+ echo "$as_me:4772: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:4950: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:4775: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4953: \$? = $ac_status" >&5 -+ echo "$as_me:4778: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -4967,7 +4792,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:4970: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:4795: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -4988,7 +4813,7 @@ - do - - cat >conftest.$ac_ext <<_ACEOF --#line 4991 "configure" -+#line 4816 "configure" - #include "confdefs.h" - - #include <$cf_header> -@@ -5012,16 +4837,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:5015: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:4840: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5018: \$? = $ac_status" >&5 -+ echo "$as_me:4843: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:5021: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:4846: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5024: \$? = $ac_status" >&5 -+ echo "$as_me:4849: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_ncurses_h2=$cf_header - -@@ -5042,12 +4867,12 @@ - CPPFLAGS="$cf_save2_CPPFLAGS" - test "$cf_cv_ncurses_h2" != no && break - done -- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:5045: error: not found" >&5 -+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:4870: error: not found" >&5 - echo "$as_me: error: not found" >&2;} - { (exit 1); exit 1; }; } - - fi --echo "$as_me:5050: result: $cf_cv_ncurses_h2" >&5 -+echo "$as_me:4875: result: $cf_cv_ncurses_h2" >&5 - echo "${ECHO_T}$cf_cv_ncurses_h2" >&6 - - cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'` -@@ -5080,7 +4905,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 5083 "configure" -+#line 4908 "configure" - #include "confdefs.h" - #include - int -@@ -5092,16 +4917,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:5095: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:4920: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5098: \$? = $ac_status" >&5 -+ echo "$as_me:4923: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:5101: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:4926: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5104: \$? = $ac_status" >&5 -+ echo "$as_me:4929: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -5118,7 +4943,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:5121: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:4946: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -5139,7 +4964,8 @@ - - case $cf_cv_ncurses_header in # (vi - *ncurses.h) -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_NCURSES_H 1 - EOF - -@@ -5148,20 +4974,22 @@ - - case $cf_cv_ncurses_header in # (vi - ncurses/curses.h|ncurses/ncurses.h) -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_NCURSES_NCURSES_H 1 - EOF - - ;; - ncursesw/curses.h|ncursesw/ncurses.h) -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_NCURSESW_NCURSES_H 1 - EOF - - ;; - esac - --echo "$as_me:5164: checking for terminfo header" >&5 -+echo "$as_me:4992: checking for terminfo header" >&5 - echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6 - if test "${cf_cv_term_header+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -5179,7 +5007,7 @@ - for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h" - do - cat >conftest.$ac_ext <<_ACEOF --#line 5182 "configure" -+#line 5010 "configure" - #include "confdefs.h" - #include - #include <${cf_cv_ncurses_header:-curses.h}> -@@ -5194,16 +5022,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:5197: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:5025: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5200: \$? = $ac_status" >&5 -+ echo "$as_me:5028: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:5203: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5031: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5206: \$? = $ac_status" >&5 -+ echo "$as_me:5034: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_term_header="$cf_test" -@@ -5219,14 +5047,15 @@ - done - - fi --echo "$as_me:5222: result: $cf_cv_term_header" >&5 -+echo "$as_me:5050: result: $cf_cv_term_header" >&5 - echo "${ECHO_T}$cf_cv_term_header" >&6 - - # Set definitions to allow ifdef'ing to accommodate subdirectories - - case $cf_cv_term_header in # (vi - *term.h) -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_TERM_H 1 - EOF - -@@ -5235,13 +5064,15 @@ - - case $cf_cv_term_header in # (vi - ncurses/term.h) #(vi -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_NCURSES_TERM_H 1 - EOF - - ;; - ncursesw/term.h) -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_NCURSESW_TERM_H 1 - EOF - -@@ -5249,11 +5080,12 @@ - esac - - # some applications need this, but should check for NCURSES_VERSION -+ - cat >>confdefs.h <<\EOF - #define NCURSES 1 - EOF - --echo "$as_me:5256: checking for ncurses version" >&5 -+echo "$as_me:5088: checking for ncurses version" >&5 - echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6 - if test "${cf_cv_ncurses_version+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -5279,10 +5111,10 @@ - #endif - EOF - cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out" -- { (eval echo "$as_me:5282: \"$cf_try\"") >&5 -+ { (eval echo "$as_me:5114: \"$cf_try\"") >&5 - (eval $cf_try) 2>&5 - ac_status=$? -- echo "$as_me:5285: \$? = $ac_status" >&5 -+ echo "$as_me:5117: \$? = $ac_status" >&5 - (exit $ac_status); } - if test -f conftest.out ; then - cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'` -@@ -5292,7 +5124,7 @@ - - else - cat >conftest.$ac_ext <<_ACEOF --#line 5295 "configure" -+#line 5127 "configure" - #include "confdefs.h" - - #include <${cf_cv_ncurses_header:-curses.h}> -@@ -5317,15 +5149,15 @@ - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:5320: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5152: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5323: \$? = $ac_status" >&5 -+ echo "$as_me:5155: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:5325: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5157: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5328: \$? = $ac_status" >&5 -+ echo "$as_me:5160: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_ncurses_version=`cat $cf_tempfile` -@@ -5339,9 +5171,10 @@ - rm -f $cf_tempfile - - fi --echo "$as_me:5342: result: $cf_cv_ncurses_version" >&5 -+echo "$as_me:5174: result: $cf_cv_ncurses_version" >&5 - echo "${ECHO_T}$cf_cv_ncurses_version" >&6 --test "$cf_cv_ncurses_version" = no || cat >>confdefs.h <<\EOF -+test "$cf_cv_ncurses_version" = no || -+cat >>confdefs.h <<\EOF - #define NCURSES 1 - EOF - -@@ -5351,7 +5184,7 @@ - # to link gpm. - cf_ncurses_LIBS="" - cf_ncurses_SAVE="$LIBS" --echo "$as_me:5354: checking for Gpm_Open in -lgpm" >&5 -+echo "$as_me:5187: checking for Gpm_Open in -lgpm" >&5 - echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6 - if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -5359,7 +5192,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lgpm $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 5362 "configure" -+#line 5195 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -5378,16 +5211,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5381: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5214: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5384: \$? = $ac_status" >&5 -+ echo "$as_me:5217: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5387: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5220: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5390: \$? = $ac_status" >&5 -+ echo "$as_me:5223: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_gpm_Gpm_Open=yes - else -@@ -5398,10 +5231,10 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:5401: result: $ac_cv_lib_gpm_Gpm_Open" >&5 -+echo "$as_me:5234: result: $ac_cv_lib_gpm_Gpm_Open" >&5 - echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6 - if test $ac_cv_lib_gpm_Gpm_Open = yes; then -- echo "$as_me:5404: checking for initscr in -lgpm" >&5 -+ echo "$as_me:5237: checking for initscr in -lgpm" >&5 - echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6 - if test "${ac_cv_lib_gpm_initscr+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -5409,7 +5242,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lgpm $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 5412 "configure" -+#line 5245 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -5428,16 +5261,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5431: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5264: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5434: \$? = $ac_status" >&5 -+ echo "$as_me:5267: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5437: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5270: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5440: \$? = $ac_status" >&5 -+ echo "$as_me:5273: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_gpm_initscr=yes - else -@@ -5448,7 +5281,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:5451: result: $ac_cv_lib_gpm_initscr" >&5 -+echo "$as_me:5284: result: $ac_cv_lib_gpm_initscr" >&5 - echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6 - if test $ac_cv_lib_gpm_initscr = yes; then - LIBS="$cf_ncurses_SAVE" -@@ -5463,7 +5296,7 @@ - # This is only necessary if you are linking against an obsolete - # version of ncurses (but it should do no harm, since it's static). - if test "$cf_nculib_root" = ncurses ; then -- echo "$as_me:5466: checking for tgoto in -lmytinfo" >&5 -+ echo "$as_me:5299: checking for tgoto in -lmytinfo" >&5 - echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6 - if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -5471,7 +5304,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lmytinfo $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 5474 "configure" -+#line 5307 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -5490,16 +5323,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5493: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5326: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5496: \$? = $ac_status" >&5 -+ echo "$as_me:5329: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5499: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5332: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5502: \$? = $ac_status" >&5 -+ echo "$as_me:5335: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_mytinfo_tgoto=yes - else -@@ -5510,7 +5343,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:5513: result: $ac_cv_lib_mytinfo_tgoto" >&5 -+echo "$as_me:5346: result: $ac_cv_lib_mytinfo_tgoto" >&5 - echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6 - if test $ac_cv_lib_mytinfo_tgoto = yes; then - cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS" -@@ -5529,13 +5362,13 @@ - - eval 'cf_cv_have_lib_'$cf_nculib_root'=no' - cf_libdir="" -- echo "$as_me:5532: checking for initscr" >&5 -+ echo "$as_me:5365: checking for initscr" >&5 - echo $ECHO_N "checking for initscr... $ECHO_C" >&6 - if test "${ac_cv_func_initscr+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 5538 "configure" -+#line 5371 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char initscr (); below. */ -@@ -5558,7 +5391,7 @@ - #if defined (__stub_initscr) || defined (__stub___initscr) - choke me - #else --f = initscr; -+f = initscr; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -5566,16 +5399,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5569: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5402: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5572: \$? = $ac_status" >&5 -+ echo "$as_me:5405: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5575: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5408: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5578: \$? = $ac_status" >&5 -+ echo "$as_me:5411: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_initscr=yes - else -@@ -5585,18 +5418,18 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:5588: result: $ac_cv_func_initscr" >&5 -+echo "$as_me:5421: result: $ac_cv_func_initscr" >&5 - echo "${ECHO_T}$ac_cv_func_initscr" >&6 - if test $ac_cv_func_initscr = yes; then - eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' - else - - cf_save_LIBS="$LIBS" -- echo "$as_me:5595: checking for initscr in -l$cf_nculib_root" >&5 -+ echo "$as_me:5428: checking for initscr in -l$cf_nculib_root" >&5 - echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6 - LIBS="-l$cf_nculib_root $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 5599 "configure" -+#line 5432 "configure" - #include "confdefs.h" - #include <${cf_cv_ncurses_header:-curses.h}> - int -@@ -5608,25 +5441,25 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5611: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5444: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5614: \$? = $ac_status" >&5 -+ echo "$as_me:5447: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5617: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5450: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5620: \$? = $ac_status" >&5 -+ echo "$as_me:5453: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:5622: result: yes" >&5 -+ echo "$as_me:5455: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' - - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:5629: result: no" >&5 -+echo "$as_me:5462: result: no" >&5 - echo "${ECHO_T}no" >&6 - - cf_search= -@@ -5638,7 +5471,7 @@ - -L*) - cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'` - --test "$cf_library_path" != "NONE" && \ -+test "x$cf_library_path" != "xNONE" && \ - test -d "$cf_library_path" && \ - { - test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path" -@@ -5657,9 +5490,9 @@ - - cf_search= - --test "/usr" != "$prefix" && \ -+test "x/usr" != "x$prefix" && \ - test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /usr" - test -d /usr/lib && cf_search="$cf_search /usr/lib" - test -d /usr/lib/$cf_nculib_root && cf_search="$cf_search /usr/lib/$cf_nculib_root" -@@ -5668,7 +5501,7 @@ - test -d /usr/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root" - } - --test "$prefix" != "NONE" && \ -+test "x$prefix" != "xNONE" && \ - test -d "$prefix" && \ - { - test -n "$verbose" && echo " ... testing for lib-directories under $prefix" -@@ -5679,9 +5512,9 @@ - test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root" - } - --test "/usr/local" != "$prefix" && \ -+test "x/usr/local" != "x$prefix" && \ - test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /usr/local" - test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib" - test -d /usr/local/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/lib/$cf_nculib_root" -@@ -5690,9 +5523,9 @@ - test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root" - } - --test "/opt" != "$prefix" && \ -+test "x/opt" != "x$prefix" && \ - test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /opt" - test -d /opt/lib && cf_search="$cf_search /opt/lib" - test -d /opt/lib/$cf_nculib_root && cf_search="$cf_search /opt/lib/$cf_nculib_root" -@@ -5701,9 +5534,9 @@ - test -d /opt/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root" - } - --test "$HOME" != "$prefix" && \ -+test "x$HOME" != "x$prefix" && \ - test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under $HOME" - test -d $HOME/lib && cf_search="$cf_search $HOME/lib" - test -d $HOME/lib/$cf_nculib_root && cf_search="$cf_search $HOME/lib/$cf_nculib_root" -@@ -5716,11 +5549,11 @@ - - for cf_libdir in $cf_search - do -- echo "$as_me:5719: checking for -l$cf_nculib_root in $cf_libdir" >&5 -+ echo "$as_me:5552: checking for -l$cf_nculib_root in $cf_libdir" >&5 - echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6 - LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 5723 "configure" -+#line 5556 "configure" - #include "confdefs.h" - #include <${cf_cv_ncurses_header:-curses.h}> - int -@@ -5732,25 +5565,25 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5735: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5568: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5738: \$? = $ac_status" >&5 -+ echo "$as_me:5571: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5741: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5574: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5744: \$? = $ac_status" >&5 -+ echo "$as_me:5577: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:5746: result: yes" >&5 -+ echo "$as_me:5579: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' - break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:5753: result: no" >&5 -+echo "$as_me:5586: result: no" >&5 - echo "${ECHO_T}no" >&6 - LIBS="$cf_save_LIBS" - fi -@@ -5765,7 +5598,7 @@ - eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root - - if test $cf_found_library = no ; then -- { { echo "$as_me:5768: error: Cannot link $cf_nculib_root library" >&5 -+ { { echo "$as_me:5601: error: Cannot link $cf_nculib_root library" >&5 - echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -5773,7 +5606,7 @@ - fi - - if test -n "$cf_ncurses_LIBS" ; then -- echo "$as_me:5776: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5 -+ echo "$as_me:5609: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5 - echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6 - cf_ncurses_SAVE="$LIBS" - for p in $cf_ncurses_LIBS ; do -@@ -5783,7 +5616,7 @@ - fi - done - cat >conftest.$ac_ext <<_ACEOF --#line 5786 "configure" -+#line 5619 "configure" - #include "confdefs.h" - #include <${cf_cv_ncurses_header:-curses.h}> - int -@@ -5795,23 +5628,23 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5798: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5631: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5801: \$? = $ac_status" >&5 -+ echo "$as_me:5634: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5804: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5637: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5807: \$? = $ac_status" >&5 -+ echo "$as_me:5640: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:5809: result: yes" >&5 -+ echo "$as_me:5642: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:5814: result: no" >&5 -+echo "$as_me:5647: result: no" >&5 - echo "${ECHO_T}no" >&6 - LIBS="$cf_ncurses_SAVE" - fi -@@ -5831,48 +5664,87 @@ - cf_ncuconfig_root=ncurses - - echo "Looking for ${cf_ncuconfig_root}-config" --for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config -+ -+if test -n "$ac_tool_prefix"; then -+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:5673: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$NCURSES_CONFIG"; then -+ ac_cv_prog_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog" -+echo "$as_me:5688: found $ac_dir/$ac_word" >&5 -+break -+done -+ -+fi -+fi -+NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG -+if test -n "$NCURSES_CONFIG"; then -+ echo "$as_me:5696: result: $NCURSES_CONFIG" >&5 -+echo "${ECHO_T}$NCURSES_CONFIG" >&6 -+else -+ echo "$as_me:5699: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$NCURSES_CONFIG" && break -+ done -+fi -+if test -z "$NCURSES_CONFIG"; then -+ ac_ct_NCURSES_CONFIG=$NCURSES_CONFIG -+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:5838: checking for $ac_word" >&5 -+echo "$as_me:5712: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_path_NCURSES_CONFIG+set}" = set; then -+if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- case $NCURSES_CONFIG in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test with a path. -- ;; -- *) -+ if test -n "$ac_ct_NCURSES_CONFIG"; then -+ ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_ct_NCURSES_CONFIG" # Let the user override the test. -+else - ac_save_IFS=$IFS; IFS=$ac_path_separator - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. -- if $as_executable_p "$ac_dir/$ac_word"; then -- ac_cv_path_NCURSES_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:5855: found $ac_dir/$ac_word" >&5 -- break --fi -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog" -+echo "$as_me:5727: found $ac_dir/$ac_word" >&5 -+break - done - -- ;; --esac - fi --NCURSES_CONFIG=$ac_cv_path_NCURSES_CONFIG -- --if test -n "$NCURSES_CONFIG"; then -- echo "$as_me:5866: result: $NCURSES_CONFIG" >&5 --echo "${ECHO_T}$NCURSES_CONFIG" >&6 -+fi -+ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG -+if test -n "$ac_ct_NCURSES_CONFIG"; then -+ echo "$as_me:5735: result: $ac_ct_NCURSES_CONFIG" >&5 -+echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6 - else -- echo "$as_me:5869: result: no" >&5 -+ echo "$as_me:5738: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -- test -n "$NCURSES_CONFIG" && break -+ test -n "$ac_ct_NCURSES_CONFIG" && break - done --test -n "$NCURSES_CONFIG" || NCURSES_CONFIG="none" -+test -n "$ac_ct_NCURSES_CONFIG" || ac_ct_NCURSES_CONFIG="none" -+ -+ NCURSES_CONFIG=$ac_ct_NCURSES_CONFIG -+fi - - if test "$NCURSES_CONFIG" != none ; then - -@@ -5881,7 +5753,7 @@ - - # even with config script, some packages use no-override for curses.h - --echo "$as_me:5884: checking if we have identified curses headers" >&5 -+echo "$as_me:5756: checking if we have identified curses headers" >&5 - echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6 - if test "${cf_cv_ncurses_header+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -5889,13 +5761,13 @@ - - cf_cv_ncurses_header=none - for cf_header in \ -- ncurses/curses.h \ -- ncurses/ncurses.h \ -- curses.h \ -- ncurses.h -+ ncurses/ncurses.h \ -+ ncurses/curses.h \ -+ ncurses.h \ -+ curses.h - do - cat >conftest.$ac_ext <<_ACEOF --#line 5898 "configure" -+#line 5770 "configure" - #include "confdefs.h" - #include <${cf_header}> - int -@@ -5907,16 +5779,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:5910: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:5782: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5913: \$? = $ac_status" >&5 -+ echo "$as_me:5785: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:5916: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5788: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5919: \$? = $ac_status" >&5 -+ echo "$as_me:5791: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_ncurses_header=$cf_header; break - else -@@ -5927,11 +5799,11 @@ - done - - fi --echo "$as_me:5930: result: $cf_cv_ncurses_header" >&5 -+echo "$as_me:5802: result: $cf_cv_ncurses_header" >&5 - echo "${ECHO_T}$cf_cv_ncurses_header" >&6 - - if test "$cf_cv_ncurses_header" = none ; then -- { { echo "$as_me:5934: error: No curses header-files found" >&5 -+ { { echo "$as_me:5806: error: No curses header-files found" >&5 - echo "$as_me: error: No curses header-files found" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -5941,23 +5813,23 @@ - for ac_header in $cf_cv_ncurses_header - do - as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:5944: checking for $ac_header" >&5 -+echo "$as_me:5816: checking for $ac_header" >&5 - echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 5950 "configure" -+#line 5822 "configure" - #include "confdefs.h" - #include <$ac_header> - _ACEOF --if { (eval echo "$as_me:5954: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:5826: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:5960: \$? = $ac_status" >&5 -+ echo "$as_me:5832: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -5976,7 +5848,7 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:5979: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "$as_me:5851: result: `eval echo '${'$as_ac_Header'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <conftest.$ac_ext <<_ACEOF --#line 6032 "configure" -+#line 5904 "configure" - #include "confdefs.h" - #include - int -@@ -6041,16 +5913,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:6044: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:5916: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:6047: \$? = $ac_status" >&5 -+ echo "$as_me:5919: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6050: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5922: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6053: \$? = $ac_status" >&5 -+ echo "$as_me:5925: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -6067,7 +5939,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:6070: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:5942: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -6084,7 +5956,7 @@ - - } - --echo "$as_me:6087: checking for $cf_ncuhdr_root header in include-path" >&5 -+echo "$as_me:5959: checking for $cf_ncuhdr_root header in include-path" >&5 - echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6 - if test "${cf_cv_ncurses_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -6096,7 +5968,7 @@ - do - - cat >conftest.$ac_ext <<_ACEOF --#line 6099 "configure" -+#line 5971 "configure" - #include "confdefs.h" - - #include <$cf_header> -@@ -6120,16 +5992,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:6123: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:5995: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:6126: \$? = $ac_status" >&5 -+ echo "$as_me:5998: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6129: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6001: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6132: \$? = $ac_status" >&5 -+ echo "$as_me:6004: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_ncurses_h=$cf_header - -@@ -6144,14 +6016,14 @@ - done - - fi --echo "$as_me:6147: result: $cf_cv_ncurses_h" >&5 -+echo "$as_me:6019: result: $cf_cv_ncurses_h" >&5 - echo "${ECHO_T}$cf_cv_ncurses_h" >&6 - - if test "$cf_cv_ncurses_h" != no ; then - cf_cv_ncurses_header=$cf_cv_ncurses_h - else - --echo "$as_me:6154: checking for $cf_ncuhdr_root include-path" >&5 -+echo "$as_me:6026: checking for $cf_ncuhdr_root include-path" >&5 - echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6 - if test "${cf_cv_ncurses_h2+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -6170,7 +6042,7 @@ - -I*) - cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'` - --test "$cf_header_path" != "NONE" && \ -+test "x$cf_header_path" != "xNONE" && \ - test -d "$cf_header_path" && \ - { - test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path" -@@ -6191,9 +6063,9 @@ - - cf_search= - --test "/usr" != "$prefix" && \ -+test "x/usr" != "x$prefix" && \ - test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /usr" - test -d /usr/include && cf_search="$cf_search /usr/include" - test -d /usr/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/include/$cf_ncuhdr_root" -@@ -6202,7 +6074,7 @@ - test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "$prefix" != "NONE" && \ -+test "x$prefix" != "xNONE" && \ - test -d "$prefix" && \ - { - test -n "$verbose" && echo " ... testing for include-directories under $prefix" -@@ -6213,9 +6085,9 @@ - test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "/usr/local" != "$prefix" && \ -+test "x/usr/local" != "x$prefix" && \ - test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /usr/local" - test -d /usr/local/include && cf_search="$cf_search /usr/local/include" - test -d /usr/local/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root" -@@ -6224,9 +6096,9 @@ - test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "/opt" != "$prefix" && \ -+test "x/opt" != "x$prefix" && \ - test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /opt" - test -d /opt/include && cf_search="$cf_search /opt/include" - test -d /opt/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/include/$cf_ncuhdr_root" -@@ -6235,9 +6107,9 @@ - test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "$HOME" != "$prefix" && \ -+test "x$HOME" != "x$prefix" && \ - test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under $HOME" - test -d $HOME/include && cf_search="$cf_search $HOME/include" - test -d $HOME/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root" -@@ -6291,7 +6163,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 6294 "configure" -+#line 6166 "configure" - #include "confdefs.h" - #include - int -@@ -6303,16 +6175,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:6306: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:6178: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:6309: \$? = $ac_status" >&5 -+ echo "$as_me:6181: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6312: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6184: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6315: \$? = $ac_status" >&5 -+ echo "$as_me:6187: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -6329,7 +6201,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:6332: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:6204: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -6350,7 +6222,7 @@ - do - - cat >conftest.$ac_ext <<_ACEOF --#line 6353 "configure" -+#line 6225 "configure" - #include "confdefs.h" - - #include <$cf_header> -@@ -6374,16 +6246,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:6377: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:6249: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:6380: \$? = $ac_status" >&5 -+ echo "$as_me:6252: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6383: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6255: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6386: \$? = $ac_status" >&5 -+ echo "$as_me:6258: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_ncurses_h2=$cf_header - -@@ -6404,12 +6276,12 @@ - CPPFLAGS="$cf_save2_CPPFLAGS" - test "$cf_cv_ncurses_h2" != no && break - done -- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:6407: error: not found" >&5 -+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:6279: error: not found" >&5 - echo "$as_me: error: not found" >&2;} - { (exit 1); exit 1; }; } - - fi --echo "$as_me:6412: result: $cf_cv_ncurses_h2" >&5 -+echo "$as_me:6284: result: $cf_cv_ncurses_h2" >&5 - echo "${ECHO_T}$cf_cv_ncurses_h2" >&6 - - cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'` -@@ -6442,7 +6314,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 6445 "configure" -+#line 6317 "configure" - #include "confdefs.h" - #include - int -@@ -6454,16 +6326,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:6457: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:6329: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:6460: \$? = $ac_status" >&5 -+ echo "$as_me:6332: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6463: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6335: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6466: \$? = $ac_status" >&5 -+ echo "$as_me:6338: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -6480,7 +6352,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:6483: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:6355: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -6501,7 +6373,8 @@ - - case $cf_cv_ncurses_header in # (vi - *ncurses.h) -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_NCURSES_H 1 - EOF - -@@ -6510,20 +6383,22 @@ - - case $cf_cv_ncurses_header in # (vi - ncurses/curses.h|ncurses/ncurses.h) -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_NCURSES_NCURSES_H 1 - EOF - - ;; - ncursesw/curses.h|ncursesw/ncurses.h) -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_NCURSESW_NCURSES_H 1 - EOF - - ;; - esac - --echo "$as_me:6526: checking for terminfo header" >&5 -+echo "$as_me:6401: checking for terminfo header" >&5 - echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6 - if test "${cf_cv_term_header+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -6541,7 +6416,7 @@ - for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h" - do - cat >conftest.$ac_ext <<_ACEOF --#line 6544 "configure" -+#line 6419 "configure" - #include "confdefs.h" - #include - #include <${cf_cv_ncurses_header:-curses.h}> -@@ -6556,16 +6431,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:6559: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:6434: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:6562: \$? = $ac_status" >&5 -+ echo "$as_me:6437: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6565: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6440: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6568: \$? = $ac_status" >&5 -+ echo "$as_me:6443: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_term_header="$cf_test" -@@ -6581,14 +6456,15 @@ - done - - fi --echo "$as_me:6584: result: $cf_cv_term_header" >&5 -+echo "$as_me:6459: result: $cf_cv_term_header" >&5 - echo "${ECHO_T}$cf_cv_term_header" >&6 - - # Set definitions to allow ifdef'ing to accommodate subdirectories - - case $cf_cv_term_header in # (vi - *term.h) -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_TERM_H 1 - EOF - -@@ -6597,13 +6473,15 @@ - - case $cf_cv_term_header in # (vi - ncurses/term.h) #(vi -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_NCURSES_TERM_H 1 - EOF - - ;; - ncursesw/term.h) -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_NCURSESW_TERM_H 1 - EOF - -@@ -6611,11 +6489,12 @@ - esac - - # some applications need this, but should check for NCURSES_VERSION -+ - cat >>confdefs.h <<\EOF - #define NCURSES 1 - EOF - --echo "$as_me:6618: checking for ncurses version" >&5 -+echo "$as_me:6497: checking for ncurses version" >&5 - echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6 - if test "${cf_cv_ncurses_version+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -6641,10 +6520,10 @@ - #endif - EOF - cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out" -- { (eval echo "$as_me:6644: \"$cf_try\"") >&5 -+ { (eval echo "$as_me:6523: \"$cf_try\"") >&5 - (eval $cf_try) 2>&5 - ac_status=$? -- echo "$as_me:6647: \$? = $ac_status" >&5 -+ echo "$as_me:6526: \$? = $ac_status" >&5 - (exit $ac_status); } - if test -f conftest.out ; then - cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'` -@@ -6654,7 +6533,7 @@ - - else - cat >conftest.$ac_ext <<_ACEOF --#line 6657 "configure" -+#line 6536 "configure" - #include "confdefs.h" - - #include <${cf_cv_ncurses_header:-curses.h}> -@@ -6679,15 +6558,15 @@ - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:6682: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6561: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6685: \$? = $ac_status" >&5 -+ echo "$as_me:6564: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:6687: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6566: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6690: \$? = $ac_status" >&5 -+ echo "$as_me:6569: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_ncurses_version=`cat $cf_tempfile` -@@ -6701,9 +6580,10 @@ - rm -f $cf_tempfile - - fi --echo "$as_me:6704: result: $cf_cv_ncurses_version" >&5 -+echo "$as_me:6583: result: $cf_cv_ncurses_version" >&5 - echo "${ECHO_T}$cf_cv_ncurses_version" >&6 --test "$cf_cv_ncurses_version" = no || cat >>confdefs.h <<\EOF -+test "$cf_cv_ncurses_version" = no || -+cat >>confdefs.h <<\EOF - #define NCURSES 1 - EOF - -@@ -6713,7 +6593,7 @@ - # to link gpm. - cf_ncurses_LIBS="" - cf_ncurses_SAVE="$LIBS" --echo "$as_me:6716: checking for Gpm_Open in -lgpm" >&5 -+echo "$as_me:6596: checking for Gpm_Open in -lgpm" >&5 - echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6 - if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -6721,7 +6601,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lgpm $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 6724 "configure" -+#line 6604 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -6740,16 +6620,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:6743: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6623: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6746: \$? = $ac_status" >&5 -+ echo "$as_me:6626: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:6749: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6629: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6752: \$? = $ac_status" >&5 -+ echo "$as_me:6632: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_gpm_Gpm_Open=yes - else -@@ -6760,10 +6640,10 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:6763: result: $ac_cv_lib_gpm_Gpm_Open" >&5 -+echo "$as_me:6643: result: $ac_cv_lib_gpm_Gpm_Open" >&5 - echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6 - if test $ac_cv_lib_gpm_Gpm_Open = yes; then -- echo "$as_me:6766: checking for initscr in -lgpm" >&5 -+ echo "$as_me:6646: checking for initscr in -lgpm" >&5 - echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6 - if test "${ac_cv_lib_gpm_initscr+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -6771,7 +6651,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lgpm $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 6774 "configure" -+#line 6654 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -6790,16 +6670,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:6793: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6673: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6796: \$? = $ac_status" >&5 -+ echo "$as_me:6676: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:6799: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6679: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6802: \$? = $ac_status" >&5 -+ echo "$as_me:6682: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_gpm_initscr=yes - else -@@ -6810,7 +6690,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:6813: result: $ac_cv_lib_gpm_initscr" >&5 -+echo "$as_me:6693: result: $ac_cv_lib_gpm_initscr" >&5 - echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6 - if test $ac_cv_lib_gpm_initscr = yes; then - LIBS="$cf_ncurses_SAVE" -@@ -6825,7 +6705,7 @@ - # This is only necessary if you are linking against an obsolete - # version of ncurses (but it should do no harm, since it's static). - if test "$cf_nculib_root" = ncurses ; then -- echo "$as_me:6828: checking for tgoto in -lmytinfo" >&5 -+ echo "$as_me:6708: checking for tgoto in -lmytinfo" >&5 - echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6 - if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -6833,7 +6713,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lmytinfo $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 6836 "configure" -+#line 6716 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -6852,16 +6732,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:6855: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6735: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6858: \$? = $ac_status" >&5 -+ echo "$as_me:6738: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:6861: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6741: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6864: \$? = $ac_status" >&5 -+ echo "$as_me:6744: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_mytinfo_tgoto=yes - else -@@ -6872,7 +6752,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:6875: result: $ac_cv_lib_mytinfo_tgoto" >&5 -+echo "$as_me:6755: result: $ac_cv_lib_mytinfo_tgoto" >&5 - echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6 - if test $ac_cv_lib_mytinfo_tgoto = yes; then - cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS" -@@ -6891,13 +6771,13 @@ - - eval 'cf_cv_have_lib_'$cf_nculib_root'=no' - cf_libdir="" -- echo "$as_me:6894: checking for initscr" >&5 -+ echo "$as_me:6774: checking for initscr" >&5 - echo $ECHO_N "checking for initscr... $ECHO_C" >&6 - if test "${ac_cv_func_initscr+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 6900 "configure" -+#line 6780 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char initscr (); below. */ -@@ -6920,7 +6800,7 @@ - #if defined (__stub_initscr) || defined (__stub___initscr) - choke me - #else --f = initscr; -+f = initscr; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -6928,16 +6808,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:6931: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6811: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6934: \$? = $ac_status" >&5 -+ echo "$as_me:6814: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:6937: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6817: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6940: \$? = $ac_status" >&5 -+ echo "$as_me:6820: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_initscr=yes - else -@@ -6947,18 +6827,18 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:6950: result: $ac_cv_func_initscr" >&5 -+echo "$as_me:6830: result: $ac_cv_func_initscr" >&5 - echo "${ECHO_T}$ac_cv_func_initscr" >&6 - if test $ac_cv_func_initscr = yes; then - eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' - else - - cf_save_LIBS="$LIBS" -- echo "$as_me:6957: checking for initscr in -l$cf_nculib_root" >&5 -+ echo "$as_me:6837: checking for initscr in -l$cf_nculib_root" >&5 - echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6 - LIBS="-l$cf_nculib_root $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 6961 "configure" -+#line 6841 "configure" - #include "confdefs.h" - #include <${cf_cv_ncurses_header:-curses.h}> - int -@@ -6970,25 +6850,25 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:6973: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6853: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6976: \$? = $ac_status" >&5 -+ echo "$as_me:6856: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:6979: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6859: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6982: \$? = $ac_status" >&5 -+ echo "$as_me:6862: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:6984: result: yes" >&5 -+ echo "$as_me:6864: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' - - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:6991: result: no" >&5 -+echo "$as_me:6871: result: no" >&5 - echo "${ECHO_T}no" >&6 - - cf_search= -@@ -7000,7 +6880,7 @@ - -L*) - cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'` - --test "$cf_library_path" != "NONE" && \ -+test "x$cf_library_path" != "xNONE" && \ - test -d "$cf_library_path" && \ - { - test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path" -@@ -7019,9 +6899,9 @@ - - cf_search= - --test "/usr" != "$prefix" && \ -+test "x/usr" != "x$prefix" && \ - test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /usr" - test -d /usr/lib && cf_search="$cf_search /usr/lib" - test -d /usr/lib/$cf_nculib_root && cf_search="$cf_search /usr/lib/$cf_nculib_root" -@@ -7030,7 +6910,7 @@ - test -d /usr/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root" - } - --test "$prefix" != "NONE" && \ -+test "x$prefix" != "xNONE" && \ - test -d "$prefix" && \ - { - test -n "$verbose" && echo " ... testing for lib-directories under $prefix" -@@ -7041,9 +6921,9 @@ - test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root" - } - --test "/usr/local" != "$prefix" && \ -+test "x/usr/local" != "x$prefix" && \ - test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /usr/local" - test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib" - test -d /usr/local/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/lib/$cf_nculib_root" -@@ -7052,9 +6932,9 @@ - test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root" - } - --test "/opt" != "$prefix" && \ -+test "x/opt" != "x$prefix" && \ - test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /opt" - test -d /opt/lib && cf_search="$cf_search /opt/lib" - test -d /opt/lib/$cf_nculib_root && cf_search="$cf_search /opt/lib/$cf_nculib_root" -@@ -7063,9 +6943,9 @@ - test -d /opt/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root" - } - --test "$HOME" != "$prefix" && \ -+test "x$HOME" != "x$prefix" && \ - test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under $HOME" - test -d $HOME/lib && cf_search="$cf_search $HOME/lib" - test -d $HOME/lib/$cf_nculib_root && cf_search="$cf_search $HOME/lib/$cf_nculib_root" -@@ -7078,11 +6958,11 @@ - - for cf_libdir in $cf_search - do -- echo "$as_me:7081: checking for -l$cf_nculib_root in $cf_libdir" >&5 -+ echo "$as_me:6961: checking for -l$cf_nculib_root in $cf_libdir" >&5 - echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6 - LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 7085 "configure" -+#line 6965 "configure" - #include "confdefs.h" - #include <${cf_cv_ncurses_header:-curses.h}> - int -@@ -7094,25 +6974,25 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7097: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6977: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:7100: \$? = $ac_status" >&5 -+ echo "$as_me:6980: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7103: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6983: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7106: \$? = $ac_status" >&5 -+ echo "$as_me:6986: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:7108: result: yes" >&5 -+ echo "$as_me:6988: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' - break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:7115: result: no" >&5 -+echo "$as_me:6995: result: no" >&5 - echo "${ECHO_T}no" >&6 - LIBS="$cf_save_LIBS" - fi -@@ -7127,7 +7007,7 @@ - eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root - - if test $cf_found_library = no ; then -- { { echo "$as_me:7130: error: Cannot link $cf_nculib_root library" >&5 -+ { { echo "$as_me:7010: error: Cannot link $cf_nculib_root library" >&5 - echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -7135,7 +7015,7 @@ - fi - - if test -n "$cf_ncurses_LIBS" ; then -- echo "$as_me:7138: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5 -+ echo "$as_me:7018: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5 - echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6 - cf_ncurses_SAVE="$LIBS" - for p in $cf_ncurses_LIBS ; do -@@ -7145,7 +7025,7 @@ - fi - done - cat >conftest.$ac_ext <<_ACEOF --#line 7148 "configure" -+#line 7028 "configure" - #include "confdefs.h" - #include <${cf_cv_ncurses_header:-curses.h}> - int -@@ -7157,23 +7037,23 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7160: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:7040: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:7163: \$? = $ac_status" >&5 -+ echo "$as_me:7043: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7166: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:7046: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7169: \$? = $ac_status" >&5 -+ echo "$as_me:7049: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:7171: result: yes" >&5 -+ echo "$as_me:7051: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:7176: result: no" >&5 -+echo "$as_me:7056: result: no" >&5 - echo "${ECHO_T}no" >&6 - LIBS="$cf_ncurses_SAVE" - fi -@@ -7210,10 +7090,10 @@ - AUTOCONF_$cf_name NCURSES_VERSION_$cf_name - CF_EOF - cf_try="$ac_cpp conftest.$ac_ext 2>&5 | fgrep AUTOCONF_$cf_name >conftest.out" -- { (eval echo "$as_me:7213: \"$cf_try\"") >&5 -+ { (eval echo "$as_me:7093: \"$cf_try\"") >&5 - (eval $cf_try) 2>&5 - ac_status=$? -- echo "$as_me:7216: \$? = $ac_status" >&5 -+ echo "$as_me:7096: \$? = $ac_status" >&5 - (exit $ac_status); } - if test -f conftest.out ; then - cf_result=`cat conftest.out | sed -e "s/^.*AUTOCONF_$cf_name[ ][ ]*//"` -@@ -7231,9 +7111,25 @@ - - cf_cv_timestamp=`date` - --echo "$as_me:7234: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5 -+echo "$as_me:7114: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5 - echo "${ECHO_T}Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&6 - -+echo "$as_me:7117: checking if you want to have a library-prefix" >&5 -+echo $ECHO_N "checking if you want to have a library-prefix... $ECHO_C" >&6 -+ -+# Check whether --with-lib-prefix or --without-lib-prefix was given. -+if test "${with_lib_prefix+set}" = set; then -+ withval="$with_lib_prefix" -+ with_lib_prefix=$withval -+else -+ with_lib_prefix=auto -+fi; -+echo "$as_me:7127: result: $with_lib_prefix" >&5 -+echo "${ECHO_T}$with_lib_prefix" >&6 -+ -+if test $with_lib_prefix = auto -+then -+ - case $cf_cv_system_name in #(vi - OS/2*|os2*) #(vi - LIB_PREFIX='' -@@ -7243,7 +7139,12 @@ - esac - cf_prefix=$LIB_PREFIX - --LIB_PREFIX=$cf_prefix -+elif test $with_lib_prefix = no -+then -+ LIB_PREFIX= -+else -+ LIB_PREFIX=$with_lib_prefix -+fi - - LIB_SUFFIX= - -@@ -7254,7 +7155,7 @@ - test -n "$GCC" && test "${ac_cv_prog_cc_g}" != yes && CC_G_OPT='' - fi - --echo "$as_me:7257: checking for default loader flags" >&5 -+echo "$as_me:7158: checking for default loader flags" >&5 - echo $ECHO_N "checking for default loader flags... $ECHO_C" >&6 - case $DFT_LWR_MODEL in - normal) LD_MODEL='' ;; -@@ -7262,11 +7163,11 @@ - profile) LD_MODEL='-pg';; - shared) LD_MODEL='' ;; - esac --echo "$as_me:7265: result: $LD_MODEL" >&5 -+echo "$as_me:7166: result: $LD_MODEL" >&5 - echo "${ECHO_T}$LD_MODEL" >&6 - - LD_RPATH_OPT= --echo "$as_me:7269: checking for an rpath option" >&5 -+echo "$as_me:7170: checking for an rpath option" >&5 - echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6 - case $cf_cv_system_name in #(vi - irix*) #(vi -@@ -7279,10 +7180,10 @@ - linux*|gnu*|k*bsd*-gnu) #(vi - LD_RPATH_OPT="-Wl,-rpath," - ;; --openbsd[2-9].*) #(vi -+openbsd[2-9].*|mirbsd*) #(vi - LD_RPATH_OPT="-Wl,-rpath," - ;; --freebsd*) #(vi -+dragonfly*|freebsd*) #(vi - LD_RPATH_OPT="-rpath " - ;; - netbsd*) #(vi -@@ -7297,17 +7198,17 @@ - *) - ;; - esac --echo "$as_me:7300: result: $LD_RPATH_OPT" >&5 -+echo "$as_me:7201: result: $LD_RPATH_OPT" >&5 - echo "${ECHO_T}$LD_RPATH_OPT" >&6 - - case "x$LD_RPATH_OPT" in #(vi - x-R*) -- echo "$as_me:7305: checking if we need a space after rpath option" >&5 -+ echo "$as_me:7206: checking if we need a space after rpath option" >&5 - echo $ECHO_N "checking if we need a space after rpath option... $ECHO_C" >&6 - cf_save_LIBS="$LIBS" - LIBS="${LD_RPATH_OPT}$libdir $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 7310 "configure" -+#line 7211 "configure" - #include "confdefs.h" - - int -@@ -7319,16 +7220,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7322: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:7223: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:7325: \$? = $ac_status" >&5 -+ echo "$as_me:7226: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7328: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:7229: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7331: \$? = $ac_status" >&5 -+ echo "$as_me:7232: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_rpath_space=no - else -@@ -7338,22 +7239,28 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS="$cf_save_LIBS" -- echo "$as_me:7341: result: $cf_rpath_space" >&5 -+ echo "$as_me:7242: result: $cf_rpath_space" >&5 - echo "${ECHO_T}$cf_rpath_space" >&6 - test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT " - ;; - esac - -+ RM_SHARED_OPTS= - LOCAL_LDFLAGS= - LOCAL_LDFLAGS2= - LD_SHARED_OPTS= - INSTALL_LIB="-m 644" -+ : ${rel_builddir:=.} -+ -+ shlibdir=$libdir -+ -+ MAKE_DLLS="#" - - cf_cv_do_symlinks=no - cf_ld_rpath_opt= - test "$cf_cv_enable_rpath" = yes && cf_ld_rpath_opt="$LD_RPATH_OPT" - -- echo "$as_me:7356: checking if release/abi version should be used for shared libs" >&5 -+ echo "$as_me:7263: checking if release/abi version should be used for shared libs" >&5 - echo $ECHO_N "checking if release/abi version should be used for shared libs... $ECHO_C" >&6 - - # Check whether --with-shlib-version or --without-shlib-version was given. -@@ -7368,7 +7275,7 @@ - cf_cv_shlib_version=$withval - ;; - *) -- { { echo "$as_me:7371: error: option value must be one of: rel, abi, auto or no" >&5 -+ { { echo "$as_me:7278: error: option value must be one of: rel, abi, auto or no" >&5 - echo "$as_me: error: option value must be one of: rel, abi, auto or no" >&2;} - { (exit 1); exit 1; }; } - ;; -@@ -7377,23 +7284,24 @@ - else - cf_cv_shlib_version=auto - fi; -- echo "$as_me:7380: result: $cf_cv_shlib_version" >&5 -+ echo "$as_me:7287: result: $cf_cv_shlib_version" >&5 - echo "${ECHO_T}$cf_cv_shlib_version" >&6 - - cf_cv_rm_so_locs=no -+ cf_try_cflags= - - # Some less-capable ports of gcc support only -fpic - CC_SHARED_OPTS= - if test "$GCC" = yes - then -- echo "$as_me:7389: checking which $CC option to use" >&5 -+ echo "$as_me:7297: checking which $CC option to use" >&5 - echo $ECHO_N "checking which $CC option to use... $ECHO_C" >&6 - cf_save_CFLAGS="$CFLAGS" - for CC_SHARED_OPTS in -fPIC -fpic '' - do - CFLAGS="$cf_save_CFLAGS $CC_SHARED_OPTS" - cat >conftest.$ac_ext <<_ACEOF --#line 7396 "configure" -+#line 7304 "configure" - #include "confdefs.h" - #include - int -@@ -7405,16 +7313,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7408: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:7316: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7411: \$? = $ac_status" >&5 -+ echo "$as_me:7319: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7414: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:7322: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7417: \$? = $ac_status" >&5 -+ echo "$as_me:7325: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -7423,7 +7331,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - done -- echo "$as_me:7426: result: $CC_SHARED_OPTS" >&5 -+ echo "$as_me:7334: result: $CC_SHARED_OPTS" >&5 - echo "${ECHO_T}$CC_SHARED_OPTS" >&6 - CFLAGS="$cf_save_CFLAGS" - fi -@@ -7431,10 +7339,14 @@ - cf_cv_shlib_version_infix=no - - case $cf_cv_system_name in #(vi -- aix[56]*) #(vi -+ aix4.3-9*|aix[5-7]*) #(vi - if test "$GCC" = yes; then - CC_SHARED_OPTS= -- MK_SHARED_LIB='$(CC) -shared' -+ MK_SHARED_LIB='${CC} -shared -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o $@' -+ else -+ # CC_SHARED_OPTS='-qpic=large -G' -+ # perhaps "-bM:SRE -bnoentry -bexpall" -+ MK_SHARED_LIB='${CC} -G -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o $@' - fi - ;; - beos*) #(vi -@@ -7442,9 +7354,12 @@ - ;; - cygwin*) #(vi - CC_SHARED_OPTS= -- MK_SHARED_LIB='sh ../mk_shared_lib.sh $@ ${CC} ${CFLAGS}' -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" - cf_cv_shlib_version=cygdll - cf_cv_shlib_version_infix=cygdll -+ shlibdir=$bindir -+ MAKE_DLLS= - cat >mk_shared_lib.sh <<-CF_EOF - #!/bin/sh - SHARED_LIB=\$1 -@@ -7455,17 +7370,39 @@ - ** SHARED_LIB \$SHARED_LIB - ** IMPORT_LIB \$IMPORT_LIB - EOF -- exec \$* -shared -Wl,--out-implib=../lib/\${IMPORT_LIB} -Wl,--export-all-symbols -o ../lib/\${SHARED_LIB} -+ exec \$* -shared -Wl,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB} -+CF_EOF -+ chmod +x mk_shared_lib.sh -+ ;; -+ msys*) #(vi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" -+ cf_cv_shlib_version=msysdll -+ cf_cv_shlib_version_infix=msysdll -+ shlibdir=$bindir -+ MAKE_DLLS= -+ cat >mk_shared_lib.sh <<-CF_EOF -+ #!/bin/sh -+ SHARED_LIB=\$1 -+ IMPORT_LIB=\`echo "\$1" | sed -e 's/msys-/lib/' -e 's/[0-9]*\.dll$/.dll.a/'\` -+ shift -+ cat <<-EOF -+ Linking shared library -+ ** SHARED_LIB \$SHARED_LIB -+ ** IMPORT_LIB \$IMPORT_LIB -+EOF -+ exec \$* -shared -Wl,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB} - CF_EOF - chmod +x mk_shared_lib.sh - ;; - darwin*) #(vi -- EXTRA_CFLAGS="-no-cpp-precomp" -+ cf_try_cflags="no-cpp-precomp" - CC_SHARED_OPTS="-dynamic" - MK_SHARED_LIB='${CC} ${CFLAGS} -dynamiclib -install_name ${libdir}/`basename $@` -compatibility_version ${ABI_VERSION} -current_version ${ABI_VERSION} -o $@' - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi - cf_cv_shlib_version_infix=yes -- echo "$as_me:7468: checking if ld -search_paths_first works" >&5 -+ echo "$as_me:7405: checking if ld -search_paths_first works" >&5 - echo $ECHO_N "checking if ld -search_paths_first works... $ECHO_C" >&6 - if test "${cf_cv_ldflags_search_paths_first+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -7474,7 +7411,7 @@ - cf_save_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-search_paths_first" - cat >conftest.$ac_ext <<_ACEOF --#line 7477 "configure" -+#line 7414 "configure" - #include "confdefs.h" - - int -@@ -7486,16 +7423,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7489: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:7426: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:7492: \$? = $ac_status" >&5 -+ echo "$as_me:7429: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7495: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:7432: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7498: \$? = $ac_status" >&5 -+ echo "$as_me:7435: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_ldflags_search_paths_first=yes - else -@@ -7506,12 +7443,20 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LDFLAGS=$cf_save_LDFLAGS - fi --echo "$as_me:7509: result: $cf_cv_ldflags_search_paths_first" >&5 -+echo "$as_me:7446: result: $cf_cv_ldflags_search_paths_first" >&5 - echo "${ECHO_T}$cf_cv_ldflags_search_paths_first" >&6 - if test $cf_cv_ldflags_search_paths_first = yes; then - LDFLAGS="$LDFLAGS -Wl,-search_paths_first" - fi - ;; -+ hpux[7-8]*) #(vi -+ # HP-UX 8.07 ld lacks "+b" option used for libdir search-list -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='+Z' -+ fi -+ MK_SHARED_LIB='${LD} -b -o $@' -+ INSTALL_LIB="-m 555" -+ ;; - hpux*) #(vi - # (tested with gcc 2.7.2 -- I don't have c89) - if test "$GCC" = yes; then -@@ -7525,9 +7470,19 @@ - # readonly to exploit a quirk in the memory manager. - INSTALL_LIB="-m 555" - ;; -+ interix*) -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ if test "$cf_cv_shlib_version" = rel; then -+ cf_shared_soname='`basename .${REL_VERSION}`.${ABI_VERSION}' -+ else -+ cf_shared_soname='`basename `' -+ fi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='${CC} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o ' -+ ;; - irix*) #(vi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - # tested with IRIX 5.2 and 'cc'. - if test "$GCC" != yes; then -@@ -7544,7 +7499,7 @@ - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" - fi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -@@ -7556,13 +7511,40 @@ - - MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@' - ;; -- openbsd[2-9].*) #(vi -+ mingw*) #(vi -+ cf_cv_shlib_version=mingw -+ cf_cv_shlib_version_infix=mingw -+ shlibdir=$bindir -+ MAKE_DLLS= -+ if test "$DFT_LWR_MODEL" = "shared" ; then -+ LOCAL_LDFLAGS="-Wl,--enable-auto-import" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ EXTRA_LDFLAGS="-Wl,--enable-auto-import $EXTRA_LDFLAGS" -+ fi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" -+ cat >mk_shared_lib.sh <<-CF_EOF -+ #!/bin/sh -+ SHARED_LIB=\$1 -+ IMPORT_LIB=\`echo "\$1" | sed -e 's/[0-9]*\.dll$/.dll.a/'\` -+ shift -+ cat <<-EOF -+ Linking shared library -+ ** SHARED_LIB \$SHARED_LIB -+ ** IMPORT_LIB \$IMPORT_LIB -+EOF -+ exec \$* -shared -Wl,--enable-auto-import,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB} -+CF_EOF -+ chmod +x mk_shared_lib.sh -+ ;; -+ openbsd[2-9].*|mirbsd*) #(vi - if test "$DFT_LWR_MODEL" = "shared" ; then - LOCAL_LDFLAGS="${LD_RPATH_OPT}\$(LOCAL_LIBDIR)" - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" - fi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" - -@@ -7580,12 +7562,12 @@ - MK_SHARED_LIB='${LD} -Bshareable -o $@' - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel - ;; -- freebsd*) #(vi -+ dragonfly*|freebsd*) #(vi - CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" - if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then - LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)" -- LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${libdir} $LOCAL_LDFLAGS" -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${RPATH_LIST} $LOCAL_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -@@ -7602,7 +7584,7 @@ - if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then - LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)" - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - if test "$cf_cv_shlib_version" = auto; then - if test -f /usr/libexec/ld.elf_so; then - cf_cv_shlib_version=abi -@@ -7620,7 +7602,7 @@ - - MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $@' - else -- MK_SHARED_LIB='${LD} -shared -Bshareable -o $@' -+ MK_SHARED_LIB='${CC} -Wl,-shared -Wl,-Bshareable -o $@' - fi - ;; - osf*|mls+*) #(vi -@@ -7686,7 +7668,7 @@ - do - CFLAGS="$cf_shared_opts $cf_save_CFLAGS" - cat >conftest.$ac_ext <<_ACEOF --#line 7689 "configure" -+#line 7671 "configure" - #include "confdefs.h" - #include - int -@@ -7698,16 +7680,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7701: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:7683: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7704: \$? = $ac_status" >&5 -+ echo "$as_me:7686: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7707: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:7689: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7710: \$? = $ac_status" >&5 -+ echo "$as_me:7692: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -7744,22 +7726,65 @@ - test "$cf_cv_do_symlinks" = no && cf_cv_do_symlinks=yes - ;; - *) -- { echo "$as_me:7747: WARNING: ignored --with-shlib-version" >&5 -+ { echo "$as_me:7729: WARNING: ignored --with-shlib-version" >&5 - echo "$as_me: WARNING: ignored --with-shlib-version" >&2;} - ;; - esac - ;; - esac - -- if test -n "$cf_ld_rpath_opt" ; then -- MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${libdir}" -+ if test -n "$cf_try_cflags" -+ then -+cat > conftest.$ac_ext < -+int main(int argc, char *argv[]) -+{ -+ printf("hello\n"); -+ return (argv[argc-1] == 0) ; -+} -+EOF -+ cf_save_CFLAGS="$CFLAGS" -+ for cf_opt in $cf_try_cflags -+ do -+ CFLAGS="$cf_save_CFLAGS -$cf_opt" -+ echo "$as_me:7751: checking if CFLAGS option -$cf_opt works" >&5 -+echo $ECHO_N "checking if CFLAGS option -$cf_opt works... $ECHO_C" >&6 -+ if { (eval echo "$as_me:7753: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:7756: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ echo "$as_me:7758: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+ cf_save_CFLAGS="$CFLAGS" -+ else -+ echo "$as_me:7762: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+ fi -+ done -+ CFLAGS="$cf_save_CFLAGS" - fi - -+ # RPATH_LIST is a colon-separated list of directories -+ test -n "$cf_ld_rpath_opt" && MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${RPATH_LIST}" -+ test -z "$RPATH_LIST" && RPATH_LIST="\${libdir}" -+ -+ test $cf_cv_rm_so_locs = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations" -+ -+ test -n "$verbose" && echo " CC_SHARED_OPTS: $CC_SHARED_OPTS" 1>&6 -+ -+echo "${as_me:-configure}:7777: testing CC_SHARED_OPTS: $CC_SHARED_OPTS ..." 1>&5 -+ -+ test -n "$verbose" && echo " MK_SHARED_LIB: $MK_SHARED_LIB" 1>&6 -+ -+echo "${as_me:-configure}:7781: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5 -+ - # The test/sample programs in the original tree link using rpath option. - # Make it optional for packagers. - if test -n "$LOCAL_LDFLAGS" - then -- echo "$as_me:7762: checking if you want to link sample programs with rpath option" >&5 -+ echo "$as_me:7787: checking if you want to link sample programs with rpath option" >&5 - echo $ECHO_N "checking if you want to link sample programs with rpath option... $ECHO_C" >&6 - - # Check whether --enable-rpath-link or --disable-rpath-link was given. -@@ -7769,7 +7794,7 @@ - else - with_rpath_link=yes - fi; -- echo "$as_me:7772: result: $with_rpath_link" >&5 -+ echo "$as_me:7797: result: $with_rpath_link" >&5 - echo "${ECHO_T}$with_rpath_link" >&6 - if test "$with_rpath_link" = no - then -@@ -7780,13 +7805,8 @@ - - ############################################################################### - -- case $cf_cv_system_name in -- os2*) PATH_SEPARATOR=';' ;; -- *) PATH_SEPARATOR=':' ;; -- esac -- - ### use option --enable-broken-linker to force on use of broken-linker support --echo "$as_me:7789: checking if you want broken-linker support code" >&5 -+echo "$as_me:7809: checking if you want broken-linker support code" >&5 - echo $ECHO_N "checking if you want broken-linker support code... $ECHO_C" >&6 - - # Check whether --enable-broken_linker or --disable-broken_linker was given. -@@ -7796,7 +7816,7 @@ - else - with_broken_linker=${BROKEN_LINKER:-no} - fi; --echo "$as_me:7799: result: $with_broken_linker" >&5 -+echo "$as_me:7819: result: $with_broken_linker" >&5 - echo "${ECHO_T}$with_broken_linker" >&6 - - BROKEN_LINKER=0 -@@ -7816,7 +7836,7 @@ - BROKEN_LINKER=1 - test -n "$verbose" && echo " cygwin linker is broken anyway" 1>&6 - --echo "${as_me:-configure}:7819: testing cygwin linker is broken anyway ..." 1>&5 -+echo "${as_me:-configure}:7839: testing cygwin linker is broken anyway ..." 1>&5 - - ;; - esac -@@ -7829,10 +7849,10 @@ - cf_xopen_source= - - case $host_os in #(vi --aix[456]*) #(vi -+aix[4-7]*) #(vi - cf_xopen_source="-D_ALL_SOURCE" - ;; --cygwin) #(vi -+cygwin|msys) #(vi - cf_XOPEN_SOURCE=600 - ;; - darwin[0-8].*) #(vi -@@ -7840,6 +7860,7 @@ - ;; - darwin*) #(vi - cf_xopen_source="-D_DARWIN_C_SOURCE" -+ cf_XOPEN_SOURCE= - ;; - freebsd*|dragonfly*) #(vi - # 5.x headers associate -@@ -7857,24 +7878,128 @@ - ;; - irix[56].*) #(vi - cf_xopen_source="-D_SGI_SOURCE" -+ cf_XOPEN_SOURCE= - ;; - linux*|gnu*|mint*|k*bsd*-gnu) #(vi - --echo "$as_me:7863: checking if we must define _GNU_SOURCE" >&5 -+echo "$as_me:7885: checking if we must define _GNU_SOURCE" >&5 - echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6 - if test "${cf_cv_gnu_source+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --cat >conftest.$ac_ext <<_ACEOF --#line 7870 "configure" -+cat >conftest.$ac_ext <<_ACEOF -+#line 7892 "configure" -+#include "confdefs.h" -+#include -+int -+main () -+{ -+ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7907: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:7910: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7913: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:7916: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_gnu_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7925 "configure" -+#include "confdefs.h" -+#include -+int -+main () -+{ -+ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7940: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:7943: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7946: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:7949: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_gnu_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_gnu_source=yes -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS="$cf_save" -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ -+fi -+echo "$as_me:7964: result: $cf_cv_gnu_source" >&5 -+echo "${ECHO_T}$cf_cv_gnu_source" >&6 -+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+ -+ ;; -+mirbsd*) #(vi -+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks and other headers which use u_int / u_short types -+ cf_XOPEN_SOURCE= -+ -+cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -+ -+cf_save_CFLAGS="$CFLAGS" -+cf_save_CPPFLAGS="$CPPFLAGS" -+ -+cf_trim_CFLAGS=`echo "$cf_save_CFLAGS" | \ -+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` -+ -+cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \ -+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` -+ -+echo "$as_me:7986: checking if we should define _POSIX_C_SOURCE" >&5 -+echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_posix_c_source+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+echo "${as_me:-configure}:7992: testing if the symbol is already defined go no further ..." 1>&5 -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7995 "configure" - #include "confdefs.h" - #include - int - main () - { - --#ifndef _XOPEN_SOURCE -+#ifndef _POSIX_C_SOURCE - make an error - #endif - ; -@@ -7882,32 +8007,87 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7885: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8010: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7888: \$? = $ac_status" >&5 -+ echo "$as_me:8013: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7891: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8016: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7894: \$? = $ac_status" >&5 -+ echo "$as_me:8019: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_gnu_source=no -+ cf_cv_posix_c_source=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_save="$CPPFLAGS" -- CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+cf_want_posix_source=no -+ case .$cf_POSIX_C_SOURCE in #(vi -+ .[12]??*) #(vi -+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" -+ ;; -+ .2) #(vi -+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" -+ cf_want_posix_source=yes -+ ;; -+ .*) -+ cf_want_posix_source=yes -+ ;; -+ esac -+ if test "$cf_want_posix_source" = yes ; then -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8040 "configure" -+#include "confdefs.h" -+#include -+int -+main () -+{ -+ -+#ifdef _POSIX_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:8055: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:8058: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:8061: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:8064: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE" -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ fi -+ -+echo "${as_me:-configure}:8075: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5 -+ -+ CFLAGS="$cf_trim_CFLAGS" -+ CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source" -+ -+echo "${as_me:-configure}:8080: testing if the second compile does not leave our definition intact error ..." 1>&5 -+ - cat >conftest.$ac_ext <<_ACEOF --#line 7903 "configure" -+#line 8083 "configure" - #include "confdefs.h" - #include - int - main () - { - --#ifdef _XOPEN_SOURCE -+#ifndef _POSIX_C_SOURCE - make an error - #endif - ; -@@ -7915,40 +8095,126 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7918: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8098: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7921: \$? = $ac_status" >&5 -+ echo "$as_me:8101: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7924: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8104: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7927: \$? = $ac_status" >&5 -+ echo "$as_me:8107: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_gnu_source=no -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_gnu_source=yes -+cf_cv_posix_c_source=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext -- CPPFLAGS="$cf_save" -+ CFLAGS="$cf_save_CFLAGS" -+ CPPFLAGS="$cf_save_CPPFLAGS" - - fi - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:7942: result: $cf_cv_gnu_source" >&5 --echo "${ECHO_T}$cf_cv_gnu_source" >&6 --test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+echo "$as_me:8123: result: $cf_cv_posix_c_source" >&5 -+echo "${ECHO_T}$cf_cv_posix_c_source" >&6 -+ -+if test "$cf_cv_posix_c_source" != no ; then -+ CFLAGS="$cf_trim_CFLAGS" -+ CPPFLAGS="$cf_trim_CPPFLAGS" -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_cv_posix_c_source -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" - -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no - ;; --mirbsd*) #(vi -- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+fi -+ - ;; - netbsd*) #(vi -- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ ;; -+openbsd[4-9]*) #(vi -+ # setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw -+ cf_xopen_source="-D_BSD_SOURCE" -+ cf_XOPEN_SOURCE=600 - ;; - openbsd*) #(vi - # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw -@@ -7962,23 +8228,26 @@ - sco*) #(vi - # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer - ;; --solaris2.1[0-9]) #(vi -- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- ;; --solaris2.[1-9]) #(vi -+solaris2.*) #(vi - cf_xopen_source="-D__EXTENSIONS__" -+ cf_cv_xopen_source=broken - ;; - *) -- echo "$as_me:7972: checking if we should define _XOPEN_SOURCE" >&5 -+ -+echo "$as_me:8237: checking if we should define _XOPEN_SOURCE" >&5 - echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6 - if test "${cf_cv_xopen_source+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 7979 "configure" -+#line 8244 "configure" - #include "confdefs.h" -+ -+#include -+#include - #include -+ - int - main () - { -@@ -7991,16 +8260,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7994: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8263: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7997: \$? = $ac_status" >&5 -+ echo "$as_me:8266: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8000: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8269: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8003: \$? = $ac_status" >&5 -+ echo "$as_me:8272: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_xopen_source=no - else -@@ -8009,9 +8278,13 @@ - cf_save="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" - cat >conftest.$ac_ext <<_ACEOF --#line 8012 "configure" -+#line 8281 "configure" - #include "confdefs.h" -+ -+#include -+#include - #include -+ - int - main () - { -@@ -8024,16 +8297,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8027: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8300: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8030: \$? = $ac_status" >&5 -+ echo "$as_me:8303: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8033: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8306: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8036: \$? = $ac_status" >&5 -+ echo "$as_me:8309: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_xopen_source=no - else -@@ -8048,9 +8321,10 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:8051: result: $cf_cv_xopen_source" >&5 -+echo "$as_me:8324: result: $cf_cv_xopen_source" >&5 - echo "${ECHO_T}$cf_cv_xopen_source" >&6 -- if test "$cf_cv_xopen_source" != no ; then -+ -+if test "$cf_cv_xopen_source" != no ; then - - CFLAGS=`echo "$CFLAGS" | \ - sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -@@ -8060,7 +8334,7 @@ - sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ - -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` - -- cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" -+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" - - cf_fix_cppflags=no - cf_new_cflags= -@@ -8140,7 +8414,7 @@ - EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi - -- fi -+fi - - cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE - -@@ -8155,16 +8429,16 @@ - sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ - -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` - --echo "$as_me:8158: checking if we should define _POSIX_C_SOURCE" >&5 -+echo "$as_me:8432: checking if we should define _POSIX_C_SOURCE" >&5 - echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6 - if test "${cf_cv_posix_c_source+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --echo "${as_me:-configure}:8164: testing if the symbol is already defined go no further ..." 1>&5 -+echo "${as_me:-configure}:8438: testing if the symbol is already defined go no further ..." 1>&5 - - cat >conftest.$ac_ext <<_ACEOF --#line 8167 "configure" -+#line 8441 "configure" - #include "confdefs.h" - #include - int -@@ -8179,16 +8453,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8182: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8456: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8185: \$? = $ac_status" >&5 -+ echo "$as_me:8459: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8188: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8462: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8191: \$? = $ac_status" >&5 -+ echo "$as_me:8465: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_posix_c_source=no - else -@@ -8209,7 +8483,7 @@ - esac - if test "$cf_want_posix_source" = yes ; then - cat >conftest.$ac_ext <<_ACEOF --#line 8212 "configure" -+#line 8486 "configure" - #include "confdefs.h" - #include - int -@@ -8224,16 +8498,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8227: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8501: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8230: \$? = $ac_status" >&5 -+ echo "$as_me:8504: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8233: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8507: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8236: \$? = $ac_status" >&5 -+ echo "$as_me:8510: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -8244,15 +8518,15 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - fi - --echo "${as_me:-configure}:8247: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5 -+echo "${as_me:-configure}:8521: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5 - - CFLAGS="$cf_trim_CFLAGS" - CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source" - --echo "${as_me:-configure}:8252: testing if the second compile does not leave our definition intact error ..." 1>&5 -+echo "${as_me:-configure}:8526: testing if the second compile does not leave our definition intact error ..." 1>&5 - - cat >conftest.$ac_ext <<_ACEOF --#line 8255 "configure" -+#line 8529 "configure" - #include "confdefs.h" - #include - int -@@ -8267,16 +8541,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8270: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8544: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8273: \$? = $ac_status" >&5 -+ echo "$as_me:8547: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8276: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8550: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8279: \$? = $ac_status" >&5 -+ echo "$as_me:8553: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -8289,22 +8563,107 @@ - CPPFLAGS="$cf_save_CPPFLAGS" - - fi --rm -f conftest.$ac_objext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+ -+fi -+echo "$as_me:8569: result: $cf_cv_posix_c_source" >&5 -+echo "${ECHO_T}$cf_cv_posix_c_source" >&6 -+ -+if test "$cf_cv_posix_c_source" != no ; then -+ CFLAGS="$cf_trim_CFLAGS" -+ CPPFLAGS="$cf_trim_CPPFLAGS" -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_cv_posix_c_source -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi - - fi --echo "$as_me:8295: result: $cf_cv_posix_c_source" >&5 --echo "${ECHO_T}$cf_cv_posix_c_source" >&6 - --if test "$cf_cv_posix_c_source" != no ; then -- CFLAGS="$cf_trim_CFLAGS" -- CPPFLAGS="$cf_trim_CPPFLAGS" -+ ;; -+esac -+ -+if test -n "$cf_xopen_source" ; then - - cf_fix_cppflags=no - cf_new_cflags= - cf_new_cppflags= - cf_new_extra_cppflags= - --for cf_add_cflags in $cf_cv_posix_c_source -+for cf_add_cflags in $cf_xopen_source - do - case $cf_fix_cppflags in - no) -@@ -8379,17 +8738,196 @@ - - fi - -- ;; --esac -+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then -+ echo "$as_me:8742: checking if _XOPEN_SOURCE really is set" >&5 -+echo $ECHO_N "checking if _XOPEN_SOURCE really is set... $ECHO_C" >&6 -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8745 "configure" -+#include "confdefs.h" -+#include -+int -+main () -+{ - --if test -n "$cf_xopen_source" ; then -+#ifndef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:8760: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:8763: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:8766: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:8769: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_XOPEN_SOURCE_set=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_XOPEN_SOURCE_set=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ echo "$as_me:8778: result: $cf_XOPEN_SOURCE_set" >&5 -+echo "${ECHO_T}$cf_XOPEN_SOURCE_set" >&6 -+ if test $cf_XOPEN_SOURCE_set = yes -+ then -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8783 "configure" -+#include "confdefs.h" -+#include -+int -+main () -+{ -+ -+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:8798: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:8801: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:8804: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:8807: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_XOPEN_SOURCE_set_ok=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_XOPEN_SOURCE_set_ok=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ if test $cf_XOPEN_SOURCE_set_ok = no -+ then -+ { echo "$as_me:8818: WARNING: _XOPEN_SOURCE is lower than requested" >&5 -+echo "$as_me: WARNING: _XOPEN_SOURCE is lower than requested" >&2;} -+ fi -+ else -+ -+echo "$as_me:8823: checking if we should define _XOPEN_SOURCE" >&5 -+echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_xopen_source+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8830 "configure" -+#include "confdefs.h" -+ -+#include -+#include -+#include -+ -+int -+main () -+{ -+ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:8849: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:8852: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:8855: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:8858: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_xopen_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8867 "configure" -+#include "confdefs.h" -+ -+#include -+#include -+#include -+ -+int -+main () -+{ -+ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:8886: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:8889: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:8892: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:8895: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_xopen_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_xopen_source=$cf_XOPEN_SOURCE -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS="$cf_save" -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ -+fi -+echo "$as_me:8910: result: $cf_cv_xopen_source" >&5 -+echo "${ECHO_T}$cf_cv_xopen_source" >&6 -+ -+if test "$cf_cv_xopen_source" != no ; then -+ -+CFLAGS=`echo "$CFLAGS" | \ -+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` -+ -+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" - - cf_fix_cppflags=no - cf_new_cflags= - cf_new_cppflags= - cf_new_extra_cppflags= - --for cf_add_cflags in $cf_xopen_source -+for cf_add_cflags in $cf_temp_xopen_source - do - case $cf_fix_cppflags in - no) -@@ -8464,6 +9002,9 @@ - - fi - -+ fi -+fi -+ - # Check whether --enable-largefile or --disable-largefile was given. - if test "${enable_largefile+set}" = set; then - enableval="$enable_largefile" -@@ -8471,7 +9012,7 @@ - fi; - if test "$enable_largefile" != no; then - -- echo "$as_me:8474: checking for special C compiler options needed for large files" >&5 -+ echo "$as_me:9015: checking for special C compiler options needed for large files" >&5 - echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6 - if test "${ac_cv_sys_largefile_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -8483,7 +9024,7 @@ - # IRIX 6.2 and later do not support large files by default, - # so use the C compiler's -n32 option if that helps. - cat >conftest.$ac_ext <<_ACEOF --#line 8486 "configure" -+#line 9027 "configure" - #include "confdefs.h" - #include - /* Check that off_t can represent 2**63 - 1 correctly. -@@ -8503,16 +9044,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8506: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9047: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8509: \$? = $ac_status" >&5 -+ echo "$as_me:9050: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8512: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9053: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8515: \$? = $ac_status" >&5 -+ echo "$as_me:9056: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -8522,16 +9063,16 @@ - rm -f conftest.$ac_objext - CC="$CC -n32" - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8525: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9066: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8528: \$? = $ac_status" >&5 -+ echo "$as_me:9069: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8531: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9072: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8534: \$? = $ac_status" >&5 -+ echo "$as_me:9075: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sys_largefile_CC=' -n32'; break - else -@@ -8545,13 +9086,13 @@ - rm -f conftest.$ac_ext - fi - fi --echo "$as_me:8548: result: $ac_cv_sys_largefile_CC" >&5 -+echo "$as_me:9089: result: $ac_cv_sys_largefile_CC" >&5 - echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6 - if test "$ac_cv_sys_largefile_CC" != no; then - CC=$CC$ac_cv_sys_largefile_CC - fi - -- echo "$as_me:8554: checking for _FILE_OFFSET_BITS value needed for large files" >&5 -+ echo "$as_me:9095: checking for _FILE_OFFSET_BITS value needed for large files" >&5 - echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6 - if test "${ac_cv_sys_file_offset_bits+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -8559,7 +9100,7 @@ - while :; do - ac_cv_sys_file_offset_bits=no - cat >conftest.$ac_ext <<_ACEOF --#line 8562 "configure" -+#line 9103 "configure" - #include "confdefs.h" - #include - /* Check that off_t can represent 2**63 - 1 correctly. -@@ -8579,16 +9120,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8582: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9123: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8585: \$? = $ac_status" >&5 -+ echo "$as_me:9126: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8588: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9129: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8591: \$? = $ac_status" >&5 -+ echo "$as_me:9132: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -8597,7 +9138,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF --#line 8600 "configure" -+#line 9141 "configure" - #include "confdefs.h" - #define _FILE_OFFSET_BITS 64 - #include -@@ -8618,16 +9159,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8621: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9162: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8624: \$? = $ac_status" >&5 -+ echo "$as_me:9165: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8627: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9168: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8630: \$? = $ac_status" >&5 -+ echo "$as_me:9171: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sys_file_offset_bits=64; break - else -@@ -8638,7 +9179,7 @@ - break - done - fi --echo "$as_me:8641: result: $ac_cv_sys_file_offset_bits" >&5 -+echo "$as_me:9182: result: $ac_cv_sys_file_offset_bits" >&5 - echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6 - if test "$ac_cv_sys_file_offset_bits" != no; then - -@@ -8648,7 +9189,7 @@ - - fi - rm -rf conftest* -- echo "$as_me:8651: checking for _LARGE_FILES value needed for large files" >&5 -+ echo "$as_me:9192: checking for _LARGE_FILES value needed for large files" >&5 - echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6 - if test "${ac_cv_sys_large_files+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -8656,7 +9197,7 @@ - while :; do - ac_cv_sys_large_files=no - cat >conftest.$ac_ext <<_ACEOF --#line 8659 "configure" -+#line 9200 "configure" - #include "confdefs.h" - #include - /* Check that off_t can represent 2**63 - 1 correctly. -@@ -8676,16 +9217,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8679: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9220: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8682: \$? = $ac_status" >&5 -+ echo "$as_me:9223: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8685: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9226: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8688: \$? = $ac_status" >&5 -+ echo "$as_me:9229: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -8694,7 +9235,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF --#line 8697 "configure" -+#line 9238 "configure" - #include "confdefs.h" - #define _LARGE_FILES 1 - #include -@@ -8715,16 +9256,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8718: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9259: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8721: \$? = $ac_status" >&5 -+ echo "$as_me:9262: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8724: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9265: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8727: \$? = $ac_status" >&5 -+ echo "$as_me:9268: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sys_large_files=1; break - else -@@ -8735,7 +9276,7 @@ - break - done - fi --echo "$as_me:8738: result: $ac_cv_sys_large_files" >&5 -+echo "$as_me:9279: result: $ac_cv_sys_large_files" >&5 - echo "${ECHO_T}$ac_cv_sys_large_files" >&6 - if test "$ac_cv_sys_large_files" != no; then - -@@ -8748,7 +9289,7 @@ - fi - - if test "$enable_largefile" != no ; then -- echo "$as_me:8751: checking for _LARGEFILE_SOURCE value needed for large files" >&5 -+ echo "$as_me:9292: checking for _LARGEFILE_SOURCE value needed for large files" >&5 - echo $ECHO_N "checking for _LARGEFILE_SOURCE value needed for large files... $ECHO_C" >&6 - if test "${ac_cv_sys_largefile_source+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -8756,7 +9297,7 @@ - while :; do - ac_cv_sys_largefile_source=no - cat >conftest.$ac_ext <<_ACEOF --#line 8759 "configure" -+#line 9300 "configure" - #include "confdefs.h" - #include - int -@@ -8768,16 +9309,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8771: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9312: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8774: \$? = $ac_status" >&5 -+ echo "$as_me:9315: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8777: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9318: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8780: \$? = $ac_status" >&5 -+ echo "$as_me:9321: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -8786,7 +9327,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF --#line 8789 "configure" -+#line 9330 "configure" - #include "confdefs.h" - #define _LARGEFILE_SOURCE 1 - #include -@@ -8799,16 +9340,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8802: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9343: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8805: \$? = $ac_status" >&5 -+ echo "$as_me:9346: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8808: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9349: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8811: \$? = $ac_status" >&5 -+ echo "$as_me:9352: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sys_largefile_source=1; break - else -@@ -8819,7 +9360,7 @@ - break - done - fi --echo "$as_me:8822: result: $ac_cv_sys_largefile_source" >&5 -+echo "$as_me:9363: result: $ac_cv_sys_largefile_source" >&5 - echo "${ECHO_T}$ac_cv_sys_largefile_source" >&6 - if test "$ac_cv_sys_largefile_source" != no; then - -@@ -8833,13 +9374,13 @@ - # We used to try defining _XOPEN_SOURCE=500 too, to work around a bug - # in glibc 2.1.3, but that breaks too many other things. - # If you want fseeko and ftello with glibc, upgrade to a fixed glibc. --echo "$as_me:8836: checking for fseeko" >&5 -+echo "$as_me:9377: checking for fseeko" >&5 - echo $ECHO_N "checking for fseeko... $ECHO_C" >&6 - if test "${ac_cv_func_fseeko+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 8842 "configure" -+#line 9383 "configure" - #include "confdefs.h" - #include - int -@@ -8851,16 +9392,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:8854: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9395: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8857: \$? = $ac_status" >&5 -+ echo "$as_me:9398: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:8860: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9401: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8863: \$? = $ac_status" >&5 -+ echo "$as_me:9404: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_fseeko=yes - else -@@ -8870,7 +9411,7 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:8873: result: $ac_cv_func_fseeko" >&5 -+echo "$as_me:9414: result: $ac_cv_func_fseeko" >&5 - echo "${ECHO_T}$ac_cv_func_fseeko" >&6 - if test $ac_cv_func_fseeko = yes; then - -@@ -8891,14 +9432,14 @@ - test "$ac_cv_sys_largefile_source" != no && CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE " - test "$ac_cv_sys_file_offset_bits" != no && CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits " - -- echo "$as_me:8894: checking whether to use struct dirent64" >&5 -+ echo "$as_me:9435: checking whether to use struct dirent64" >&5 - echo $ECHO_N "checking whether to use struct dirent64... $ECHO_C" >&6 - if test "${cf_cv_struct_dirent64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 8901 "configure" -+#line 9442 "configure" - #include "confdefs.h" - - #include -@@ -8919,16 +9460,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8922: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9463: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8925: \$? = $ac_status" >&5 -+ echo "$as_me:9466: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8928: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9469: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8931: \$? = $ac_status" >&5 -+ echo "$as_me:9472: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_struct_dirent64=yes - else -@@ -8939,16 +9480,17 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:8942: result: $cf_cv_struct_dirent64" >&5 -+echo "$as_me:9483: result: $cf_cv_struct_dirent64" >&5 - echo "${ECHO_T}$cf_cv_struct_dirent64" >&6 -- test "$cf_cv_struct_dirent64" = yes && cat >>confdefs.h <<\EOF -+ test "$cf_cv_struct_dirent64" = yes && -+cat >>confdefs.h <<\EOF - #define HAVE_STRUCT_DIRENT64 1 - EOF - - fi - - ### Enable compiling-in rcs id's --echo "$as_me:8951: checking if RCS identifiers should be compiled-in" >&5 -+echo "$as_me:9493: checking if RCS identifiers should be compiled-in" >&5 - echo $ECHO_N "checking if RCS identifiers should be compiled-in... $ECHO_C" >&6 - - # Check whether --with-rcs-ids or --without-rcs-ids was given. -@@ -8958,16 +9500,17 @@ - else - with_rcs_ids=no - fi; --echo "$as_me:8961: result: $with_rcs_ids" >&5 -+echo "$as_me:9503: result: $with_rcs_ids" >&5 - echo "${ECHO_T}$with_rcs_ids" >&6 --test "$with_rcs_ids" = yes && cat >>confdefs.h <<\EOF -+test "$with_rcs_ids" = yes && -+cat >>confdefs.h <<\EOF - #define USE_RCS_IDS 1 - EOF - - ############################################################################### - - ### Note that some functions (such as const) are normally disabled anyway. --echo "$as_me:8970: checking if you want to build with function extensions" >&5 -+echo "$as_me:9513: checking if you want to build with function extensions" >&5 - echo $ECHO_N "checking if you want to build with function extensions... $ECHO_C" >&6 - - # Check whether --enable-ext-funcs or --disable-ext-funcs was given. -@@ -8977,15 +9520,16 @@ - else - with_ext_funcs=yes - fi; --echo "$as_me:8980: result: $with_ext_funcs" >&5 -+echo "$as_me:9523: result: $with_ext_funcs" >&5 - echo "${ECHO_T}$with_ext_funcs" >&6 - if test "$with_ext_funcs" = yes ; then - NCURSES_EXT_FUNCS=1 -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_USE_DEFAULT_COLORS 1 - EOF - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define NCURSES_EXT_FUNCS 1 - EOF - -@@ -8994,7 +9538,7 @@ - fi - - ### use option --enable-const to turn on use of const beyond that in XSI. --echo "$as_me:8997: checking for extended use of const keyword" >&5 -+echo "$as_me:9541: checking for extended use of const keyword" >&5 - echo $ECHO_N "checking for extended use of const keyword... $ECHO_C" >&6 - - # Check whether --enable-const or --disable-const was given. -@@ -9004,7 +9548,7 @@ - else - with_ext_const=no - fi; --echo "$as_me:9007: result: $with_ext_const" >&5 -+echo "$as_me:9551: result: $with_ext_const" >&5 - echo "${ECHO_T}$with_ext_const" >&6 - NCURSES_CONST='/*nothing*/' - if test "$with_ext_const" = yes ; then -@@ -9014,7 +9558,7 @@ - ############################################################################### - # These options are relatively safe to experiment with. - --echo "$as_me:9017: checking if you want all development code" >&5 -+echo "$as_me:9561: checking if you want all development code" >&5 - echo $ECHO_N "checking if you want all development code... $ECHO_C" >&6 - - # Check whether --with-develop or --without-develop was given. -@@ -9024,7 +9568,7 @@ - else - with_develop=no - fi; --echo "$as_me:9027: result: $with_develop" >&5 -+echo "$as_me:9571: result: $with_develop" >&5 - echo "${ECHO_T}$with_develop" >&6 - - ############################################################################### -@@ -9033,7 +9577,7 @@ - # This is still experimental (20080329), but should ultimately be moved to - # the script-block --with-normal, etc. - --echo "$as_me:9036: checking if you want to link with the pthread library" >&5 -+echo "$as_me:9580: checking if you want to link with the pthread library" >&5 - echo $ECHO_N "checking if you want to link with the pthread library... $ECHO_C" >&6 - - # Check whether --with-pthread or --without-pthread was given. -@@ -9043,27 +9587,27 @@ - else - with_pthread=no - fi; --echo "$as_me:9046: result: $with_pthread" >&5 -+echo "$as_me:9590: result: $with_pthread" >&5 - echo "${ECHO_T}$with_pthread" >&6 - - if test "$with_pthread" != no ; then -- echo "$as_me:9050: checking for pthread.h" >&5 -+ echo "$as_me:9594: checking for pthread.h" >&5 - echo $ECHO_N "checking for pthread.h... $ECHO_C" >&6 - if test "${ac_cv_header_pthread_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 9056 "configure" -+#line 9600 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:9060: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:9604: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:9066: \$? = $ac_status" >&5 -+ echo "$as_me:9610: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -9082,20 +9626,22 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:9085: result: $ac_cv_header_pthread_h" >&5 -+echo "$as_me:9629: result: $ac_cv_header_pthread_h" >&5 - echo "${ECHO_T}$ac_cv_header_pthread_h" >&6 - if test $ac_cv_header_pthread_h = yes; then - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define HAVE_PTHREADS_H 1 - EOF - -- echo "$as_me:9093: checking if we can link with the pthread library" >&5 --echo $ECHO_N "checking if we can link with the pthread library... $ECHO_C" >&6 -- cf_save_LIBS="$LIBS" -- LIBS="-lpthread $LIBS" -- cat >conftest.$ac_ext <<_ACEOF --#line 9098 "configure" -+ for cf_lib_pthread in pthread c_r -+ do -+ echo "$as_me:9639: checking if we can link with the $cf_lib_pthread library" >&5 -+echo $ECHO_N "checking if we can link with the $cf_lib_pthread library... $ECHO_C" >&6 -+ cf_save_LIBS="$LIBS" -+ LIBS="-l$cf_lib_pthread $LIBS" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 9644 "configure" - #include "confdefs.h" - - #include -@@ -9104,23 +9650,24 @@ - main () - { - -- int rc = pthread_create(0,0,0,0); -+ int rc = pthread_create(0,0,0,0); -+ int r2 = pthread_mutexattr_settype(0, 0); - - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9114: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9661: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9117: \$? = $ac_status" >&5 -+ echo "$as_me:9664: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9120: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9667: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9123: \$? = $ac_status" >&5 -+ echo "$as_me:9670: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - with_pthread=yes - else -@@ -9129,27 +9676,30 @@ - with_pthread=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- LIBS="$cf_save_LIBS" -- echo "$as_me:9133: result: $with_pthread" >&5 -+ LIBS="$cf_save_LIBS" -+ echo "$as_me:9680: result: $with_pthread" >&5 - echo "${ECHO_T}$with_pthread" >&6 -+ test "$with_pthread" = yes && break -+ done - -- if test "$with_pthread" = yes ; then -- LIBS="-lpthread $LIBS" -- cat >>confdefs.h <<\EOF -+ if test "$with_pthread" = yes ; then -+ LIBS="-l$cf_lib_pthread $LIBS" -+ -+cat >>confdefs.h <<\EOF - #define HAVE_LIBPTHREADS 1 - EOF - -- else -- { { echo "$as_me:9143: error: Cannot link with pthread library" >&5 -+ else -+ { { echo "$as_me:9693: error: Cannot link with pthread library" >&5 - echo "$as_me: error: Cannot link with pthread library" >&2;} - { (exit 1); exit 1; }; } -- fi -+ fi - - fi - - fi - --echo "$as_me:9152: checking if you want to use weak-symbols for pthreads" >&5 -+echo "$as_me:9702: checking if you want to use weak-symbols for pthreads" >&5 - echo $ECHO_N "checking if you want to use weak-symbols for pthreads... $ECHO_C" >&6 - - # Check whether --enable-weak-symbols or --disable-weak-symbols was given. -@@ -9159,18 +9709,18 @@ - else - use_weak_symbols=no - fi; --echo "$as_me:9162: result: $use_weak_symbols" >&5 -+echo "$as_me:9712: result: $use_weak_symbols" >&5 - echo "${ECHO_T}$use_weak_symbols" >&6 - if test "$use_weak_symbols" = yes ; then - --echo "$as_me:9166: checking if $CC supports weak symbols" >&5 -+echo "$as_me:9716: checking if $CC supports weak symbols" >&5 - echo $ECHO_N "checking if $CC supports weak symbols... $ECHO_C" >&6 - if test "${cf_cv_weak_symbols+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 9173 "configure" -+#line 9723 "configure" - #include "confdefs.h" - - #include -@@ -9196,16 +9746,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:9199: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9749: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9202: \$? = $ac_status" >&5 -+ echo "$as_me:9752: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:9205: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9755: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9208: \$? = $ac_status" >&5 -+ echo "$as_me:9758: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_weak_symbols=yes - else -@@ -9216,7 +9766,7 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:9219: result: $cf_cv_weak_symbols" >&5 -+echo "$as_me:9769: result: $cf_cv_weak_symbols" >&5 - echo "${ECHO_T}$cf_cv_weak_symbols" >&6 - - else -@@ -9224,7 +9774,8 @@ - fi - - if test $cf_cv_weak_symbols = yes ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define USE_WEAK_SYMBOLS 1 - EOF - -@@ -9232,7 +9783,8 @@ - - PTHREAD= - if test "$with_pthread" = "yes" ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define USE_PTHREADS 1 - EOF - -@@ -9243,13 +9795,13 @@ - fi - - # OpenSUSE is installing ncurses6, using reentrant option. --echo "$as_me:9246: checking for _nc_TABSIZE" >&5 -+echo "$as_me:9798: checking for _nc_TABSIZE" >&5 - echo $ECHO_N "checking for _nc_TABSIZE... $ECHO_C" >&6 - if test "${ac_cv_func__nc_TABSIZE+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 9252 "configure" -+#line 9804 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char _nc_TABSIZE (); below. */ -@@ -9272,7 +9824,7 @@ - #if defined (__stub__nc_TABSIZE) || defined (__stub____nc_TABSIZE) - choke me - #else --f = _nc_TABSIZE; -+f = _nc_TABSIZE; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -9280,16 +9832,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9283: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9835: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9286: \$? = $ac_status" >&5 -+ echo "$as_me:9838: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9289: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9841: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9292: \$? = $ac_status" >&5 -+ echo "$as_me:9844: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func__nc_TABSIZE=yes - else -@@ -9299,7 +9851,7 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:9302: result: $ac_cv_func__nc_TABSIZE" >&5 -+echo "$as_me:9854: result: $ac_cv_func__nc_TABSIZE" >&5 - echo "${ECHO_T}$ac_cv_func__nc_TABSIZE" >&6 - if test $ac_cv_func__nc_TABSIZE = yes; then - assume_reentrant=yes -@@ -9311,7 +9863,7 @@ - # opaque outside of that, so there is no --enable-opaque option. We can use - # this option without --with-pthreads, but this will be always set for - # pthreads. --echo "$as_me:9314: checking if you want experimental reentrant code" >&5 -+echo "$as_me:9866: checking if you want experimental reentrant code" >&5 - echo $ECHO_N "checking if you want experimental reentrant code... $ECHO_C" >&6 - - # Check whether --enable-reentrant or --disable-reentrant was given. -@@ -9321,7 +9873,7 @@ - else - with_reentrant=$assume_reentrant - fi; --echo "$as_me:9324: result: $with_reentrant" >&5 -+echo "$as_me:9876: result: $with_reentrant" >&5 - echo "${ECHO_T}$with_reentrant" >&6 - if test "$with_reentrant" = yes ; then - cf_cv_enable_reentrant=1 -@@ -9333,7 +9885,8 @@ - elif test "$assume_reentrant" = no ; then - LIB_SUFFIX="t${LIB_SUFFIX}" - fi -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define USE_REENTRANT 1 - EOF - -@@ -9343,7 +9896,7 @@ - - ### Allow using a different wrap-prefix - if test "$cf_cv_enable_reentrant" != 0 || test "$BROKEN_LINKER" = 1 ; then -- echo "$as_me:9346: checking for prefix used to wrap public variables" >&5 -+ echo "$as_me:9899: checking for prefix used to wrap public variables" >&5 - echo $ECHO_N "checking for prefix used to wrap public variables... $ECHO_C" >&6 - - # Check whether --with-wrap-prefix or --without-wrap-prefix was given. -@@ -9353,7 +9906,7 @@ - else - NCURSES_WRAP_PREFIX=_nc_ - fi; -- echo "$as_me:9356: result: $NCURSES_WRAP_PREFIX" >&5 -+ echo "$as_me:9909: result: $NCURSES_WRAP_PREFIX" >&5 - echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6 - else - NCURSES_WRAP_PREFIX=_nc_ -@@ -9366,26 +9919,46 @@ - ############################################################################### - - ### use option --disable-echo to suppress full display compiling commands --echo "$as_me:9369: checking if you want to display full commands during build" >&5 --echo $ECHO_N "checking if you want to display full commands during build... $ECHO_C" >&6 -+ -+echo "$as_me:9923: checking if you want to see long compiling messages" >&5 -+echo $ECHO_N "checking if you want to see long compiling messages... $ECHO_C" >&6 - - # Check whether --enable-echo or --disable-echo was given. - if test "${enable_echo+set}" = set; then - enableval="$enable_echo" -- with_echo=$enableval -+ test "$enableval" != no && enableval=yes -+ if test "$enableval" != "yes" ; then -+ -+ ECHO_LT='--silent' -+ ECHO_LD='@echo linking $@;' -+ RULE_CC='@echo compiling $<' -+ SHOW_CC='@echo compiling $@' -+ ECHO_CC='@' -+ -+ else -+ -+ ECHO_LT='' -+ ECHO_LD='' -+ RULE_CC='' -+ SHOW_CC='' -+ ECHO_CC='' -+ -+ fi - else -- with_echo=yes -+ enableval=yes -+ -+ ECHO_LT='' -+ ECHO_LD='' -+ RULE_CC='' -+ SHOW_CC='' -+ ECHO_CC='' -+ - fi; --if test "$with_echo" = yes; then -- ECHO_LINK= --else -- ECHO_LINK='@ echo linking $@ ... ;' --fi --echo "$as_me:9384: result: $with_echo" >&5 --echo "${ECHO_T}$with_echo" >&6 -+echo "$as_me:9957: result: $enableval" >&5 -+echo "${ECHO_T}$enableval" >&6 - - ### use option --enable-warnings to turn on all gcc warnings --echo "$as_me:9388: checking if you want to see compiler warnings" >&5 -+echo "$as_me:9961: checking if you want to see compiler warnings" >&5 - echo $ECHO_N "checking if you want to see compiler warnings... $ECHO_C" >&6 - - # Check whether --enable-warnings or --disable-warnings was given. -@@ -9393,7 +9966,7 @@ - enableval="$enable_warnings" - with_warnings=$enableval - fi; --echo "$as_me:9396: result: $with_warnings" >&5 -+echo "$as_me:9969: result: $with_warnings" >&5 - echo "${ECHO_T}$with_warnings" >&6 - - if test "x$with_warnings" = "xyes"; then -@@ -9405,12 +9978,12 @@ - if test "$GCC" = yes ; then - case $host_os in - linux*|gnu*) -- echo "$as_me:9408: checking if this is really Intel C compiler" >&5 -+ echo "$as_me:9981: checking if this is really Intel C compiler" >&5 - echo $ECHO_N "checking if this is really Intel C compiler... $ECHO_C" >&6 - cf_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -no-gcc" - cat >conftest.$ac_ext <<_ACEOF --#line 9413 "configure" -+#line 9986 "configure" - #include "confdefs.h" - - int -@@ -9427,16 +10000,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:9430: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:10003: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9433: \$? = $ac_status" >&5 -+ echo "$as_me:10006: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:9436: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10009: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9439: \$? = $ac_status" >&5 -+ echo "$as_me:10012: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - INTEL_COMPILER=yes - cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc" -@@ -9447,14 +10020,63 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - CFLAGS="$cf_save_CFLAGS" -- echo "$as_me:9450: result: $INTEL_COMPILER" >&5 -+ echo "$as_me:10023: result: $INTEL_COMPILER" >&5 - echo "${ECHO_T}$INTEL_COMPILER" >&6 - ;; - esac - fi - -+CLANG_COMPILER=no -+ -+if test "$GCC" = yes ; then -+ echo "$as_me:10032: checking if this is really Clang C compiler" >&5 -+echo $ECHO_N "checking if this is really Clang C compiler... $ECHO_C" >&6 -+ cf_save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -Qunused-arguments" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 10037 "configure" -+#include "confdefs.h" -+ -+int -+main () -+{ -+ -+#ifdef __clang__ -+#else -+make an error -+#endif -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:10054: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:10057: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:10060: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:10063: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ CLANG_COMPILER=yes -+cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments" -+ -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CFLAGS="$cf_save_CFLAGS" -+ echo "$as_me:10074: result: $CLANG_COMPILER" >&5 -+echo "${ECHO_T}$CLANG_COMPILER" >&6 -+fi -+ - cat > conftest.$ac_ext <&5 -+ { echo "$as_me:10096: checking for $CC warning options..." >&5 - echo "$as_me: checking for $CC warning options..." >&6;} - cf_save_CFLAGS="$CFLAGS" - EXTRA_CFLAGS="-Wall" -@@ -9487,12 +10109,12 @@ - wd981 - do - CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" -- if { (eval echo "$as_me:9490: \"$ac_compile\"") >&5 -+ if { (eval echo "$as_me:10112: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9493: \$? = $ac_status" >&5 -+ echo "$as_me:10115: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:9495: result: ... -$cf_opt" >&5 -+ test -n "$verbose" && echo "$as_me:10117: result: ... -$cf_opt" >&5 - echo "${ECHO_T}... -$cf_opt" >&6 - EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt" - fi -@@ -9501,16 +10123,20 @@ - - elif test "$GCC" = yes - then -- { echo "$as_me:9504: checking for $CC warning options..." >&5 -+ { echo "$as_me:10126: checking for $CC warning options..." >&5 - echo "$as_me: checking for $CC warning options..." >&6;} - cf_save_CFLAGS="$CFLAGS" - EXTRA_CFLAGS= - cf_warn_CONST="" - test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings" -+ cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs" -+ test "x$CLANG_COMPILER" = xyes && cf_gcc_warnings= - for cf_opt in W Wall \ - Wbad-function-cast \ - Wcast-align \ - Wcast-qual \ -+ Wdeclaration-after-statement \ -+ Wextra \ - Winline \ - Wmissing-declarations \ - Wmissing-prototypes \ -@@ -9518,15 +10144,15 @@ - Wpointer-arith \ - Wshadow \ - Wstrict-prototypes \ -- Wundef $cf_warn_CONST Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum -+ Wundef $cf_gcc_warnings $cf_warn_CONST Wno-unknown-pragmas Wswitch-enum - do - CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" -- if { (eval echo "$as_me:9524: \"$ac_compile\"") >&5 -+ if { (eval echo "$as_me:10150: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9527: \$? = $ac_status" >&5 -+ echo "$as_me:10153: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:9529: result: ... -$cf_opt" >&5 -+ test -n "$verbose" && echo "$as_me:10155: result: ... -$cf_opt" >&5 - echo "${ECHO_T}... -$cf_opt" >&6 - case $cf_opt in #(vi - Wcast-qual) #(vi -@@ -9537,7 +10163,17 @@ - [34].*) - test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6 - --echo "${as_me:-configure}:9540: testing feature is broken in gcc $GCC_VERSION ..." 1>&5 -+echo "${as_me:-configure}:10166: testing feature is broken in gcc $GCC_VERSION ..." 1>&5 -+ -+ continue;; -+ esac -+ ;; -+ Wpointer-arith) #(vi -+ case $GCC_VERSION in -+ [12].*) -+ test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6 -+ -+echo "${as_me:-configure}:10176: testing feature is broken in gcc $GCC_VERSION ..." 1>&5 - - continue;; - esac -@@ -9570,10 +10206,10 @@ - EOF - if test "$GCC" = yes - then -- { echo "$as_me:9573: checking for $CC __attribute__ directives..." >&5 -+ { echo "$as_me:10209: checking for $CC __attribute__ directives..." >&5 - echo "$as_me: checking for $CC __attribute__ directives..." >&6;} - cat > conftest.$ac_ext <&5 -+ if { (eval echo "$as_me:10261: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9628: \$? = $ac_status" >&5 -+ echo "$as_me:10264: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:9630: result: ... $cf_attribute" >&5 -+ test -n "$verbose" && echo "$as_me:10266: result: ... $cf_attribute" >&5 - echo "${ECHO_T}... $cf_attribute" >&6 - cat conftest.h >>confdefs.h - case $cf_attribute in #(vi -+ noreturn) #(vi -+ -+cat >>confdefs.h <>confdefs.h <>confdefs.h <<\EOF -+#define GCC_PRINTF 1 - EOF -- else -- cat >>confdefs.h <>confdefs.h <>confdefs.h <>confdefs.h <>confdefs.h <<\EOF -+#define GCC_SCANF 1 - EOF -+ - fi -+ -+cat >>confdefs.h <>confdefs.h <&5 -+echo "$as_me:10326: checking if you want to enable runtime assertions" >&5 - echo $ECHO_N "checking if you want to enable runtime assertions... $ECHO_C" >&6 - - # Check whether --enable-assertions or --disable-assertions was given. -@@ -9673,16 +10333,12 @@ - else - with_assertions=no - fi; --echo "$as_me:9676: result: $with_assertions" >&5 -+echo "$as_me:10336: result: $with_assertions" >&5 - echo "${ECHO_T}$with_assertions" >&6 - if test -n "$GCC" - then - if test "$with_assertions" = no - then -- cat >>confdefs.h <<\EOF --#define NDEBUG 1 --EOF -- - CPPFLAGS="$CPPFLAGS -DNDEBUG" - else - -@@ -9692,6 +10348,7 @@ - fi - - ### use option --disable-leaks to suppress "permanent" leaks, for testing -+ - cat >>confdefs.h <<\EOF - #define HAVE_NC_ALLOC_H 1 - EOF -@@ -9701,7 +10358,8 @@ - # Check whether --enable-expanded or --disable-expanded was given. - if test "${enable_expanded+set}" = set; then - enableval="$enable_expanded" -- test "$enableval" = yes && cat >>confdefs.h <<\EOF -+ test "$enableval" = yes && -+cat >>confdefs.h <<\EOF - #define NCURSES_EXPANDED 1 - EOF - -@@ -9712,7 +10370,8 @@ - # Check whether --enable-macros or --disable-macros was given. - if test "${enable_macros+set}" = set; then - enableval="$enable_macros" -- test "$enableval" = no && cat >>confdefs.h <<\EOF -+ test "$enableval" = no && -+cat >>confdefs.h <<\EOF - #define NCURSES_NOMACROS 1 - EOF - -@@ -9727,7 +10386,7 @@ - ;; - esac - --echo "$as_me:9730: checking whether to add trace feature to all models" >&5 -+echo "$as_me:10389: checking whether to add trace feature to all models" >&5 - echo $ECHO_N "checking whether to add trace feature to all models... $ECHO_C" >&6 - - # Check whether --with-trace or --without-trace was given. -@@ -9737,7 +10396,7 @@ - else - cf_with_trace=$cf_all_traces - fi; --echo "$as_me:9740: result: $cf_with_trace" >&5 -+echo "$as_me:10399: result: $cf_with_trace" >&5 - echo "${ECHO_T}$cf_with_trace" >&6 - - if test "$cf_with_trace" = yes ; then -@@ -9830,13 +10489,13 @@ - *mingw32*) #(vi - ;; - *) --echo "$as_me:9833: checking for gettimeofday" >&5 -+echo "$as_me:10492: checking for gettimeofday" >&5 - echo $ECHO_N "checking for gettimeofday... $ECHO_C" >&6 - if test "${ac_cv_func_gettimeofday+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 9839 "configure" -+#line 10498 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char gettimeofday (); below. */ -@@ -9859,7 +10518,7 @@ - #if defined (__stub_gettimeofday) || defined (__stub___gettimeofday) - choke me - #else --f = gettimeofday; -+f = gettimeofday; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -9867,16 +10526,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9870: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:10529: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9873: \$? = $ac_status" >&5 -+ echo "$as_me:10532: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9876: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10535: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9879: \$? = $ac_status" >&5 -+ echo "$as_me:10538: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_gettimeofday=yes - else -@@ -9886,7 +10545,7 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:9889: result: $ac_cv_func_gettimeofday" >&5 -+echo "$as_me:10548: result: $ac_cv_func_gettimeofday" >&5 - echo "${ECHO_T}$ac_cv_func_gettimeofday" >&6 - if test $ac_cv_func_gettimeofday = yes; then - cat >>confdefs.h <<\EOF -@@ -9895,7 +10554,7 @@ - - else - --echo "$as_me:9898: checking for gettimeofday in -lbsd" >&5 -+echo "$as_me:10557: checking for gettimeofday in -lbsd" >&5 - echo $ECHO_N "checking for gettimeofday in -lbsd... $ECHO_C" >&6 - if test "${ac_cv_lib_bsd_gettimeofday+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -9903,7 +10562,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lbsd $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 9906 "configure" -+#line 10565 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -9922,16 +10581,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9925: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:10584: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9928: \$? = $ac_status" >&5 -+ echo "$as_me:10587: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9931: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10590: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9934: \$? = $ac_status" >&5 -+ echo "$as_me:10593: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_bsd_gettimeofday=yes - else -@@ -9942,10 +10601,11 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:9945: result: $ac_cv_lib_bsd_gettimeofday" >&5 -+echo "$as_me:10604: result: $ac_cv_lib_bsd_gettimeofday" >&5 - echo "${ECHO_T}$ac_cv_lib_bsd_gettimeofday" >&6 - if test $ac_cv_lib_bsd_gettimeofday = yes; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_GETTIMEOFDAY 1 - EOF - -@@ -9957,13 +10617,13 @@ - esac - - ### Checks for header files. --echo "$as_me:9960: checking for ANSI C header files" >&5 -+echo "$as_me:10620: checking for ANSI C header files" >&5 - echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 - if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 9966 "configure" -+#line 10626 "configure" - #include "confdefs.h" - #include - #include -@@ -9971,13 +10631,13 @@ - #include - - _ACEOF --if { (eval echo "$as_me:9974: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:10634: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:9980: \$? = $ac_status" >&5 -+ echo "$as_me:10640: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -9999,7 +10659,7 @@ - if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF --#line 10002 "configure" -+#line 10662 "configure" - #include "confdefs.h" - #include - -@@ -10017,7 +10677,7 @@ - if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF --#line 10020 "configure" -+#line 10680 "configure" - #include "confdefs.h" - #include - -@@ -10038,7 +10698,7 @@ - : - else - cat >conftest.$ac_ext <<_ACEOF --#line 10041 "configure" -+#line 10701 "configure" - #include "confdefs.h" - #include - #if ((' ' & 0x0FF) == 0x020) -@@ -10064,15 +10724,15 @@ - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:10067: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:10727: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10070: \$? = $ac_status" >&5 -+ echo "$as_me:10730: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:10072: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10732: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10075: \$? = $ac_status" >&5 -+ echo "$as_me:10735: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -10085,7 +10745,7 @@ - fi - fi - fi --echo "$as_me:10088: result: $ac_cv_header_stdc" >&5 -+echo "$as_me:10748: result: $ac_cv_header_stdc" >&5 - echo "${ECHO_T}$ac_cv_header_stdc" >&6 - if test $ac_cv_header_stdc = yes; then - -@@ -10098,13 +10758,13 @@ - ac_header_dirent=no - for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do - as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh` --echo "$as_me:10101: checking for $ac_hdr that defines DIR" >&5 -+echo "$as_me:10761: checking for $ac_hdr that defines DIR" >&5 - echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 10107 "configure" -+#line 10767 "configure" - #include "confdefs.h" - #include - #include <$ac_hdr> -@@ -10119,16 +10779,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:10122: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:10782: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10125: \$? = $ac_status" >&5 -+ echo "$as_me:10785: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10128: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10788: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10131: \$? = $ac_status" >&5 -+ echo "$as_me:10791: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" - else -@@ -10138,7 +10798,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:10141: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "$as_me:10801: result: `eval echo '${'$as_ac_Header'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <&5 -+ echo "$as_me:10814: checking for opendir in -ldir" >&5 - echo $ECHO_N "checking for opendir in -ldir... $ECHO_C" >&6 - if test "${ac_cv_lib_dir_opendir+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -10159,7 +10819,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-ldir $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 10162 "configure" -+#line 10822 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -10178,16 +10838,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10181: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:10841: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10184: \$? = $ac_status" >&5 -+ echo "$as_me:10844: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10187: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10847: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10190: \$? = $ac_status" >&5 -+ echo "$as_me:10850: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dir_opendir=yes - else -@@ -10198,14 +10858,14 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:10201: result: $ac_cv_lib_dir_opendir" >&5 -+echo "$as_me:10861: result: $ac_cv_lib_dir_opendir" >&5 - echo "${ECHO_T}$ac_cv_lib_dir_opendir" >&6 - if test $ac_cv_lib_dir_opendir = yes; then - LIBS="$LIBS -ldir" - fi - - else -- echo "$as_me:10208: checking for opendir in -lx" >&5 -+ echo "$as_me:10868: checking for opendir in -lx" >&5 - echo $ECHO_N "checking for opendir in -lx... $ECHO_C" >&6 - if test "${ac_cv_lib_x_opendir+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -10213,7 +10873,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lx $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 10216 "configure" -+#line 10876 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -10232,16 +10892,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10235: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:10895: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10238: \$? = $ac_status" >&5 -+ echo "$as_me:10898: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10241: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10901: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10244: \$? = $ac_status" >&5 -+ echo "$as_me:10904: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_x_opendir=yes - else -@@ -10252,7 +10912,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:10255: result: $ac_cv_lib_x_opendir" >&5 -+echo "$as_me:10915: result: $ac_cv_lib_x_opendir" >&5 - echo "${ECHO_T}$ac_cv_lib_x_opendir" >&6 - if test $ac_cv_lib_x_opendir = yes; then - LIBS="$LIBS -lx" -@@ -10260,13 +10920,13 @@ - - fi - --echo "$as_me:10263: checking whether time.h and sys/time.h may both be included" >&5 -+echo "$as_me:10923: checking whether time.h and sys/time.h may both be included" >&5 - echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6 - if test "${ac_cv_header_time+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 10269 "configure" -+#line 10929 "configure" - #include "confdefs.h" - #include - #include -@@ -10282,16 +10942,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:10285: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:10945: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10288: \$? = $ac_status" >&5 -+ echo "$as_me:10948: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10291: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10951: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10294: \$? = $ac_status" >&5 -+ echo "$as_me:10954: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_header_time=yes - else -@@ -10301,7 +10961,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:10304: result: $ac_cv_header_time" >&5 -+echo "$as_me:10964: result: $ac_cv_header_time" >&5 - echo "${ECHO_T}$ac_cv_header_time" >&6 - if test $ac_cv_header_time = yes; then - -@@ -10319,104 +10979,13 @@ - ac_compiler_gnu=$ac_cv_c_compiler_gnu - ac_main_return=return - --echo "$as_me:10322: checking for $CC option to accept ANSI C" >&5 --echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 --if test "${ac_cv_prog_cc_stdc+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_cv_prog_cc_stdc=no --ac_save_CC=$CC --cat >conftest.$ac_ext <<_ACEOF --#line 10330 "configure" --#include "confdefs.h" --#include --#include --#include --#include --/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ --struct buf { int x; }; --FILE * (*rcsopen) (struct buf *, struct stat *, int); --static char *e (p, i) -- char **p; -- int i; --{ -- return p[i]; --} --static char *f (char * (*g) (char **, int), char **p, ...) --{ -- char *s; -- va_list v; -- va_start (v,p); -- s = g (p, va_arg (v,int)); -- va_end (v); -- return s; --} --int test (int i, double x); --struct s1 {int (*f) (int a);}; --struct s2 {int (*f) (double a);}; --int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); --int argc; --char **argv; --int --main () --{ --return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; -- ; -- return 0; --} --_ACEOF --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX 10.20 and later -Ae --# HP-UX older versions -Aa -D_HPUX_SOURCE --# SVR4 -Xc -D__EXTENSIONS__ --for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" --do -- CC="$ac_save_CC $ac_arg" -- rm -f conftest.$ac_objext --if { (eval echo "$as_me:10379: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:10382: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10385: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:10388: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_prog_cc_stdc=$ac_arg --break --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --fi --rm -f conftest.$ac_objext --done --rm -f conftest.$ac_ext conftest.$ac_objext --CC=$ac_save_CC -- --fi -- --case "x$ac_cv_prog_cc_stdc" in -- x|xno) -- echo "$as_me:10405: result: none needed" >&5 --echo "${ECHO_T}none needed" >&6 ;; -- *) -- echo "$as_me:10408: result: $ac_cv_prog_cc_stdc" >&5 --echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 -- CC="$CC $ac_cv_prog_cc_stdc" ;; --esac -- --echo "$as_me:10413: checking for an ANSI C-conforming const" >&5 -+echo "$as_me:10982: checking for an ANSI C-conforming const" >&5 - echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6 - if test "${ac_cv_c_const+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 10419 "configure" -+#line 10988 "configure" - #include "confdefs.h" - - int -@@ -10474,16 +11043,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:10477: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:11046: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10480: \$? = $ac_status" >&5 -+ echo "$as_me:11049: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10483: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11052: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10486: \$? = $ac_status" >&5 -+ echo "$as_me:11055: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_c_const=yes - else -@@ -10493,7 +11062,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:10496: result: $ac_cv_c_const" >&5 -+echo "$as_me:11065: result: $ac_cv_c_const" >&5 - echo "${ECHO_T}$ac_cv_c_const" >&6 - if test $ac_cv_c_const = no; then - -@@ -10505,7 +11074,7 @@ - - ### Checks for external-data - --echo "$as_me:10508: checking if data-only library module links" >&5 -+echo "$as_me:11077: checking if data-only library module links" >&5 - echo $ECHO_N "checking if data-only library module links... $ECHO_C" >&6 - if test "${cf_cv_link_dataonly+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -10513,20 +11082,20 @@ - - rm -f conftest.a - cat >conftest.$ac_ext <&5 -+ if { (eval echo "$as_me:11088: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10522: \$? = $ac_status" >&5 -+ echo "$as_me:11091: \$? = $ac_status" >&5 - (exit $ac_status); } ; then - mv conftest.o data.o && \ - ( $AR $ARFLAGS conftest.a data.o ) 2>&5 1>/dev/null - fi - rm -f conftest.$ac_ext data.o - cat >conftest.$ac_ext <&5 -+ if { (eval echo "$as_me:11111: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10545: \$? = $ac_status" >&5 -+ echo "$as_me:11114: \$? = $ac_status" >&5 - (exit $ac_status); }; then - mv conftest.o func.o && \ - ( $AR $ARFLAGS conftest.a func.o ) 2>&5 1>/dev/null -@@ -10555,7 +11124,7 @@ - cf_cv_link_dataonly=unknown - else - cat >conftest.$ac_ext <<_ACEOF --#line 10558 "configure" -+#line 11127 "configure" - #include "confdefs.h" - - int main() -@@ -10566,15 +11135,15 @@ - - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:10569: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:11138: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10572: \$? = $ac_status" >&5 -+ echo "$as_me:11141: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:10574: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11143: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10577: \$? = $ac_status" >&5 -+ echo "$as_me:11146: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_link_dataonly=yes - else -@@ -10589,11 +11158,12 @@ - - fi - --echo "$as_me:10592: result: $cf_cv_link_dataonly" >&5 -+echo "$as_me:11161: result: $cf_cv_link_dataonly" >&5 - echo "${ECHO_T}$cf_cv_link_dataonly" >&6 - - if test "$cf_cv_link_dataonly" = no ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define BROKEN_LINKER 1 - EOF - -@@ -10602,7 +11172,7 @@ - - ### Checks for library functions. - --echo "$as_me:10605: checking for working mkstemp" >&5 -+echo "$as_me:11175: checking for working mkstemp" >&5 - echo $ECHO_N "checking for working mkstemp... $ECHO_C" >&6 - if test "${cf_cv_func_mkstemp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -10610,68 +11180,10 @@ - - rm -rf conftest* - if test "$cross_compiling" = yes; then -- echo "$as_me:10613: checking for mkstemp" >&5 --echo $ECHO_N "checking for mkstemp... $ECHO_C" >&6 --if test "${ac_cv_func_mkstemp+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 10619 "configure" --#include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char mkstemp (); below. */ --#include --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char mkstemp (); --char (*f) (); -- --int --main () --{ --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_mkstemp) || defined (__stub___mkstemp) --choke me --#else --f = mkstemp; --#endif -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10650: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:10653: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10656: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:10659: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_mkstemp=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_func_mkstemp=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:10669: result: $ac_cv_func_mkstemp" >&5 --echo "${ECHO_T}$ac_cv_func_mkstemp" >&6 -- -+ cf_cv_func_mkstemp=maybe - else - cat >conftest.$ac_ext <<_ACEOF --#line 10674 "configure" -+#line 11186 "configure" - #include "confdefs.h" - - #include -@@ -10709,15 +11221,15 @@ - - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:10712: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:11224: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10715: \$? = $ac_status" >&5 -+ echo "$as_me:11227: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:10717: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11229: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10720: \$? = $ac_status" >&5 -+ echo "$as_me:11232: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_func_mkstemp=yes - -@@ -10732,80 +11244,89 @@ - fi - - fi --echo "$as_me:10735: result: $cf_cv_func_mkstemp" >&5 -+echo "$as_me:11247: result: $cf_cv_func_mkstemp" >&5 - echo "${ECHO_T}$cf_cv_func_mkstemp" >&6 --if test "x$cf_cv_func_mkstemp" = xyes || test "x$ac_cv_func_mkstemp" = xyes ; then -- cat >>confdefs.h <<\EOF --#define HAVE_MKSTEMP 1 --EOF -- --fi -- --echo "$as_me:10744: checking return type of signal handlers" >&5 --echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6 --if test "${ac_cv_type_signal+set}" = set; then -+if test "x$cf_cv_func_mkstemp" = xmaybe ; then -+ echo "$as_me:11250: checking for mkstemp" >&5 -+echo $ECHO_N "checking for mkstemp... $ECHO_C" >&6 -+if test "${ac_cv_func_mkstemp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 10750 "configure" -+#line 11256 "configure" - #include "confdefs.h" --#include --#include --#ifdef signal --# undef signal --#endif -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char mkstemp (); below. */ -+#include -+/* Override any gcc2 internal prototype to avoid an error. */ - #ifdef __cplusplus --extern "C" void (*signal (int, void (*)(int)))(int); --#else --void (*signal ()) (); -+extern "C" - #endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char mkstemp (); -+char (*f) (); - - int - main () - { --int i; -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_mkstemp) || defined (__stub___mkstemp) -+choke me -+#else -+f = mkstemp; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:10772: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:11287: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10775: \$? = $ac_status" >&5 -+ echo "$as_me:11290: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10778: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:11293: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10781: \$? = $ac_status" >&5 -+ echo "$as_me:11296: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_type_signal=void -+ ac_cv_func_mkstemp=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_type_signal=int -+ac_cv_func_mkstemp=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:11306: result: $ac_cv_func_mkstemp" >&5 -+echo "${ECHO_T}$ac_cv_func_mkstemp" >&6 -+ - fi --echo "$as_me:10791: result: $ac_cv_type_signal" >&5 --echo "${ECHO_T}$ac_cv_type_signal" >&6 -+if test "x$cf_cv_func_mkstemp" = xyes || test "x$ac_cv_func_mkstemp" = xyes ; then - --cat >>confdefs.h <>confdefs.h <<\EOF -+#define HAVE_MKSTEMP 1 - EOF - -+fi -+ - if test -z "$cf_user_CFLAGS" && test "$with_no_leaks" = no ; then - CFLAGS=`echo ${CFLAGS} | sed -e 's%-g %%' -e 's%-g$%%'` - CXXFLAGS=`echo ${CXXFLAGS} | sed -e 's%-g %%' -e 's%-g$%%'` - fi - -+cf_with_ada=yes - if test "$cf_with_ada" != "no" ; then - - cf_ada_make=gnatmake - # Extract the first word of "$cf_ada_make", so it can be a program name with args. - set dummy $cf_ada_make; ac_word=$2 --echo "$as_me:10808: checking for $ac_word" >&5 -+echo "$as_me:11329: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_gnat_exists+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -10820,7 +11341,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_gnat_exists="yes" --echo "$as_me:10823: found $ac_dir/$ac_word" >&5 -+echo "$as_me:11344: found $ac_dir/$ac_word" >&5 - break - done - -@@ -10829,31 +11350,32 @@ - fi - gnat_exists=$ac_cv_prog_gnat_exists - if test -n "$gnat_exists"; then -- echo "$as_me:10832: result: $gnat_exists" >&5 -+ echo "$as_me:11353: result: $gnat_exists" >&5 - echo "${ECHO_T}$gnat_exists" >&6 - else -- echo "$as_me:10835: result: no" >&5 -+ echo "$as_me:11356: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - - if test "$ac_cv_prog_gnat_exists" = no; then - cf_ada_make= -+ cf_cv_prog_gnat_correct=no - else - --echo "$as_me:10843: checking for gnat version" >&5 -+echo "$as_me:11365: checking for gnat version" >&5 - echo $ECHO_N "checking for gnat version... $ECHO_C" >&6 - cf_gnat_version=`${cf_ada_make:-gnatmake} -v 2>&1 | \ - grep '[0-9].[0-9][0-9]*' |\ - sed -e '2,$d' -e 's/[^0-9 \.]//g' -e 's/^[ ]*//' -e 's/ .*//'` --echo "$as_me:10848: result: $cf_gnat_version" >&5 -+echo "$as_me:11370: result: $cf_gnat_version" >&5 - echo "${ECHO_T}$cf_gnat_version" >&6 - - case $cf_gnat_version in #(vi --3.1[1-9]*|3.[2-9]*|[4-9].*) #(vi -+3.1[1-9]*|3.[2-9]*|[4-9].*|20[0-9][0-9]) #(vi - cf_cv_prog_gnat_correct=yes - ;; - *) -- { echo "$as_me:10856: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5 -+ { echo "$as_me:11378: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5 - echo "$as_me: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&2;} - cf_cv_prog_gnat_correct=no - ;; -@@ -10861,7 +11383,7 @@ - - # Extract the first word of "m4", so it can be a program name with args. - set dummy m4; ac_word=$2 --echo "$as_me:10864: checking for $ac_word" >&5 -+echo "$as_me:11386: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_M4_exists+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -10876,7 +11398,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_M4_exists="yes" --echo "$as_me:10879: found $ac_dir/$ac_word" >&5 -+echo "$as_me:11401: found $ac_dir/$ac_word" >&5 - break - done - -@@ -10885,10 +11407,10 @@ - fi - M4_exists=$ac_cv_prog_M4_exists - if test -n "$M4_exists"; then -- echo "$as_me:10888: result: $M4_exists" >&5 -+ echo "$as_me:11410: result: $M4_exists" >&5 - echo "${ECHO_T}$M4_exists" >&6 - else -- echo "$as_me:10891: result: no" >&5 -+ echo "$as_me:11413: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -10897,7 +11419,7 @@ - echo Ada95 binding required program m4 not found. Ada95 binding disabled. - fi - if test "$cf_cv_prog_gnat_correct" = yes; then -- echo "$as_me:10900: checking if GNAT works" >&5 -+ echo "$as_me:11422: checking if GNAT works" >&5 - echo $ECHO_N "checking if GNAT works... $ECHO_C" >&6 - - rm -rf conftest* *~conftest* -@@ -10925,30 +11447,34 @@ - fi - rm -rf conftest* *~conftest* - -- echo "$as_me:10928: result: $cf_cv_prog_gnat_correct" >&5 -+ echo "$as_me:11450: result: $cf_cv_prog_gnat_correct" >&5 - echo "${ECHO_T}$cf_cv_prog_gnat_correct" >&6 - fi - fi - - if test "$cf_cv_prog_gnat_correct" = yes; then - -- # make ADAFLAGS consistent with CFLAGS -- case "$CFLAGS" in -- *-g*) -+ echo "$as_me:11457: checking optimization options for ADAFLAGS" >&5 -+echo $ECHO_N "checking optimization options for ADAFLAGS... $ECHO_C" >&6 -+ case "$CFLAGS" in -+ *-g*) - - ADAFLAGS="$ADAFLAGS -g" - -- ;; -- esac -- case "$CFLAGS" in -- *-O*) -+ ;; -+ esac -+ case "$CFLAGS" in -+ *-O*) -+ cf_O_flag=`echo "$CFLAGS" |sed -e 's/^.*-O/-O/' -e 's/[ ].*//'` - -- ADAFLAGS="$ADAFLAGS -O3" -+ ADAFLAGS="$ADAFLAGS $cf_O_flag" - -- ;; -- esac -+ ;; -+ esac -+ echo "$as_me:11474: result: $ADAFLAGS" >&5 -+echo "${ECHO_T}$ADAFLAGS" >&6 - --echo "$as_me:10951: checking if GNAT supports generics" >&5 -+echo "$as_me:11477: checking if GNAT supports generics" >&5 - echo $ECHO_N "checking if GNAT supports generics... $ECHO_C" >&6 - case $cf_gnat_version in #(vi - 3.[1-9]*|[4-9].*) #(vi -@@ -10958,7 +11484,7 @@ - cf_gnat_generics=no - ;; - esac --echo "$as_me:10961: result: $cf_gnat_generics" >&5 -+echo "$as_me:11487: result: $cf_gnat_generics" >&5 - echo "${ECHO_T}$cf_gnat_generics" >&6 - - if test "$cf_gnat_generics" = yes -@@ -10970,7 +11496,7 @@ - cf_generic_objects= - fi - --echo "$as_me:10973: checking if GNAT supports SIGINT" >&5 -+echo "$as_me:11499: checking if GNAT supports SIGINT" >&5 - echo $ECHO_N "checking if GNAT supports SIGINT... $ECHO_C" >&6 - if test "${cf_cv_gnat_sigint+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -11018,7 +11544,7 @@ - rm -rf conftest* *~conftest* - - fi --echo "$as_me:11021: result: $cf_cv_gnat_sigint" >&5 -+echo "$as_me:11547: result: $cf_cv_gnat_sigint" >&5 - echo "${ECHO_T}$cf_cv_gnat_sigint" >&6 - - if test $cf_cv_gnat_sigint = yes ; then -@@ -11027,7 +11553,7 @@ - USE_GNAT_SIGINT="#" - fi - --echo "$as_me:11030: checking if GNAT pragma Unreferenced works" >&5 -+echo "$as_me:11556: checking if GNAT pragma Unreferenced works" >&5 - echo $ECHO_N "checking if GNAT pragma Unreferenced works... $ECHO_C" >&6 - if test "${cf_cv_pragma_unreferenced+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -11058,7 +11584,7 @@ - rm -rf conftest* *~conftest* - - fi --echo "$as_me:11061: result: $cf_cv_pragma_unreferenced" >&5 -+echo "$as_me:11587: result: $cf_cv_pragma_unreferenced" >&5 - echo "${ECHO_T}$cf_cv_pragma_unreferenced" >&6 - - # if the pragma is supported, use it (needed in the Trace code). -@@ -11071,14 +11597,14 @@ - cf_gnat_libraries=no - cf_gnat_projects=no - --echo "$as_me:11074: checking if GNAT supports project files" >&5 -+echo "$as_me:11600: checking if GNAT supports project files" >&5 - echo $ECHO_N "checking if GNAT supports project files... $ECHO_C" >&6 - case $cf_gnat_version in #(vi - 3.[0-9]*) #(vi - ;; - *) - case $cf_cv_system_name in #(vi -- cygwin*) #(vi -+ cygwin*|msys*) #(vi - ;; - *) - mkdir conftest.src conftest.bin conftest.lib -@@ -11139,14 +11665,14 @@ - esac - ;; - esac --echo "$as_me:11142: result: $cf_gnat_projects" >&5 -+echo "$as_me:11668: result: $cf_gnat_projects" >&5 - echo "${ECHO_T}$cf_gnat_projects" >&6 - - if test $cf_gnat_projects = yes - then -- echo "$as_me:11147: checking if GNAT supports libraries" >&5 -+ echo "$as_me:11673: checking if GNAT supports libraries" >&5 - echo $ECHO_N "checking if GNAT supports libraries... $ECHO_C" >&6 -- echo "$as_me:11149: result: $cf_gnat_libraries" >&5 -+ echo "$as_me:11675: result: $cf_gnat_libraries" >&5 - echo "${ECHO_T}$cf_gnat_libraries" >&6 - fi - -@@ -11166,7 +11692,7 @@ - USE_GNAT_LIBRARIES="#" - fi - --echo "$as_me:11169: checking for ada-compiler" >&5 -+echo "$as_me:11695: checking for ada-compiler" >&5 - echo $ECHO_N "checking for ada-compiler... $ECHO_C" >&6 - - # Check whether --with-ada-compiler or --without-ada-compiler was given. -@@ -11177,12 +11703,12 @@ - cf_ada_compiler=gnatmake - fi; - --echo "$as_me:11180: result: $cf_ada_compiler" >&5 -+echo "$as_me:11706: result: $cf_ada_compiler" >&5 - echo "${ECHO_T}$cf_ada_compiler" >&6 - - cf_ada_package=terminal_interface - --echo "$as_me:11185: checking for ada-include" >&5 -+echo "$as_me:11711: checking for ada-include" >&5 - echo $ECHO_N "checking for ada-include... $ECHO_C" >&6 - - # Check whether --with-ada-include or --without-ada-include was given. -@@ -11206,7 +11732,7 @@ - ;; - .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX - ;; --.\${*prefix}*) #(vi -+.\${*prefix}*|.\${*dir}*) #(vi - eval withval="$withval" - case ".$withval" in #(vi - .NONE/*) -@@ -11218,19 +11744,19 @@ - withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` - ;; - *) -- { { echo "$as_me:11221: error: expected a pathname, not \"$withval\"" >&5 -+ { { echo "$as_me:11747: error: expected a pathname, not \"$withval\"" >&5 - echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} - { (exit 1); exit 1; }; } - ;; - esac - - fi --ADA_INCLUDE="$withval" -+eval ADA_INCLUDE="$withval" - --echo "$as_me:11230: result: $ADA_INCLUDE" >&5 -+echo "$as_me:11756: result: $ADA_INCLUDE" >&5 - echo "${ECHO_T}$ADA_INCLUDE" >&6 - --echo "$as_me:11233: checking for ada-objects" >&5 -+echo "$as_me:11759: checking for ada-objects" >&5 - echo $ECHO_N "checking for ada-objects... $ECHO_C" >&6 - - # Check whether --with-ada-objects or --without-ada-objects was given. -@@ -11254,7 +11780,7 @@ - ;; - .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX - ;; --.\${*prefix}*) #(vi -+.\${*prefix}*|.\${*dir}*) #(vi - eval withval="$withval" - case ".$withval" in #(vi - .NONE/*) -@@ -11266,19 +11792,19 @@ - withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` - ;; - *) -- { { echo "$as_me:11269: error: expected a pathname, not \"$withval\"" >&5 -+ { { echo "$as_me:11795: error: expected a pathname, not \"$withval\"" >&5 - echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} - { (exit 1); exit 1; }; } - ;; - esac - - fi --ADA_OBJECTS="$withval" -+eval ADA_OBJECTS="$withval" - --echo "$as_me:11278: result: $ADA_OBJECTS" >&5 -+echo "$as_me:11804: result: $ADA_OBJECTS" >&5 - echo "${ECHO_T}$ADA_OBJECTS" >&6 - --echo "$as_me:11281: checking if an Ada95 shared-library should be built" >&5 -+echo "$as_me:11807: checking if an Ada95 shared-library should be built" >&5 - echo $ECHO_N "checking if an Ada95 shared-library should be built... $ECHO_C" >&6 - - # Check whether --with-ada-sharedlib or --without-ada-sharedlib was given. -@@ -11288,7 +11814,7 @@ - else - with_ada_sharedlib=no - fi; --echo "$as_me:11291: result: $with_ada_sharedlib" >&5 -+echo "$as_me:11817: result: $with_ada_sharedlib" >&5 - echo "${ECHO_T}$with_ada_sharedlib" >&6 - - ADA_SHAREDLIB='lib$(LIB_NAME).so.1' -@@ -11304,12 +11830,12 @@ - fi - - else -- { { echo "$as_me:11307: error: No usable Ada compiler found" >&5 -+ { { echo "$as_me:11833: error: No usable Ada compiler found" >&5 - echo "$as_me: error: No usable Ada compiler found" >&2;} - { (exit 1); exit 1; }; } - fi - else -- { { echo "$as_me:11312: error: The Ada compiler is needed for this package" >&5 -+ { { echo "$as_me:11838: error: The Ada compiler is needed for this package" >&5 - echo "$as_me: error: The Ada compiler is needed for this package" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -11317,25 +11843,27 @@ - ################################################################################ - - # not needed --TINFO_ARGS2= -+TINFO_LDFLAGS2= -+ -+TINFO_LIBS= - - ### Construct the list of include-directories to be generated - --CPPFLAGS="$CPPFLAGS -I. -I../include" --if test "$srcdir" != "."; then -- CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include" --fi - if test "$GCC" != yes; then -- CPPFLAGS="$CPPFLAGS -I\${includedir}" -+ CPPFLAGS="-I\${includedir} $CPPFLAGS" - elif test "$includedir" != "/usr/include"; then - if test "$includedir" = '${prefix}/include' ; then -- if test $prefix != /usr ; then -- CPPFLAGS="$CPPFLAGS -I\${includedir}" -+ if test x$prefix != x/usr ; then -+ CPPFLAGS="-I\${includedir} $CPPFLAGS" - fi - else -- CPPFLAGS="$CPPFLAGS -I\${includedir}" -+ CPPFLAGS="-I\${includedir} $CPPFLAGS" - fi - fi -+if test "$srcdir" != "."; then -+ CPPFLAGS="-I\${srcdir}/../include $CPPFLAGS" -+fi -+CPPFLAGS="-I. -I../include $CPPFLAGS" - - ACPPFLAGS="-I. -I../include -I../../include $ACPPFLAGS" - if test "$srcdir" != "."; then -@@ -11345,7 +11873,7 @@ - ACPPFLAGS="$ACPPFLAGS -I\${includedir}" - elif test "$includedir" != "/usr/include"; then - if test "$includedir" = '${prefix}/include' ; then -- if test $prefix != /usr ; then -+ if test x$prefix != x/usr ; then - ACPPFLAGS="$ACPPFLAGS -I\${includedir}" - fi - else -@@ -11354,7 +11882,7 @@ - fi - - ### Build up pieces for makefile rules --echo "$as_me:11357: checking default library suffix" >&5 -+echo "$as_me:11885: checking default library suffix" >&5 - echo $ECHO_N "checking default library suffix... $ECHO_C" >&6 - - case $DFT_LWR_MODEL in -@@ -11365,36 +11893,32 @@ - shared) DFT_ARG_SUFFIX='' ;; - esac - test -n "$LIB_SUFFIX" && DFT_ARG_SUFFIX="${LIB_SUFFIX}${DFT_ARG_SUFFIX}" --echo "$as_me:11368: result: $DFT_ARG_SUFFIX" >&5 -+echo "$as_me:11896: result: $DFT_ARG_SUFFIX" >&5 - echo "${ECHO_T}$DFT_ARG_SUFFIX" >&6 - --echo "$as_me:11371: checking default library-dependency suffix" >&5 -+echo "$as_me:11899: checking default library-dependency suffix" >&5 - echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6 - -- case $DFT_LWR_MODEL in #(vi -- libtool) #(vi -+ case X$DFT_LWR_MODEL in #(vi -+ Xlibtool) #(vi - DFT_LIB_SUFFIX='.la' - DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX - ;; -- normal) #(vi -- DFT_LIB_SUFFIX='.a' -- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX -- ;; -- debug) #(vi -+ Xdebug) #(vi - DFT_LIB_SUFFIX='_g.a' - DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX - ;; -- profile) #(vi -+ Xprofile) #(vi - DFT_LIB_SUFFIX='_p.a' - DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX - ;; -- shared) #(vi -+ Xshared) #(vi - case $cf_cv_system_name in -- aix[56]*) #(vi -+ aix[5-7]*) #(vi - DFT_LIB_SUFFIX='.a' - DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX - ;; -- cygwin*) #(vi -+ cygwin*|msys*|mingw*) #(vi - DFT_LIB_SUFFIX='.dll' - DFT_DEP_SUFFIX='.dll.a' - ;; -@@ -11414,17 +11938,23 @@ - ;; - esac - ;; -- *) DFT_LIB_SUFFIX='.so' -+ *) #(vi -+ DFT_LIB_SUFFIX='.so' - DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX - ;; - esac -+ ;; -+ *) -+ DFT_LIB_SUFFIX='.a' -+ DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX -+ ;; - esac - test -n "$LIB_SUFFIX" && DFT_LIB_SUFFIX="${LIB_SUFFIX}${DFT_LIB_SUFFIX}" - test -n "$LIB_SUFFIX" && DFT_DEP_SUFFIX="${LIB_SUFFIX}${DFT_DEP_SUFFIX}" --echo "$as_me:11424: result: $DFT_DEP_SUFFIX" >&5 -+echo "$as_me:11954: result: $DFT_DEP_SUFFIX" >&5 - echo "${ECHO_T}$DFT_DEP_SUFFIX" >&6 - --echo "$as_me:11427: checking default object directory" >&5 -+echo "$as_me:11957: checking default object directory" >&5 - echo $ECHO_N "checking default object directory... $ECHO_C" >&6 - - case $DFT_LWR_MODEL in -@@ -11434,13 +11964,13 @@ - profile) DFT_OBJ_SUBDIR='obj_p' ;; - shared) - case $cf_cv_system_name in #(vi -- cygwin) #(vi -+ cygwin|msys) #(vi - DFT_OBJ_SUBDIR='objects' ;; - *) - DFT_OBJ_SUBDIR='obj_s' ;; - esac - esac --echo "$as_me:11443: result: $DFT_OBJ_SUBDIR" >&5 -+echo "$as_me:11973: result: $DFT_OBJ_SUBDIR" >&5 - echo "${ECHO_T}$DFT_OBJ_SUBDIR" >&6 - - ### Set up low-level terminfo dependencies for makefiles. -@@ -11450,6 +11980,9 @@ - cygwin*) - # "lib" files have ".dll.a" suffix, "cyg" files have ".dll" - ;; -+ msys*) -+ # "lib" files have ".dll.a" suffix, "msys-" files have ".dll" -+ ;; - esac - fi - -@@ -11656,7 +12189,7 @@ - : ${CONFIG_STATUS=./config.status} - ac_clean_files_save=$ac_clean_files - ac_clean_files="$ac_clean_files $CONFIG_STATUS" --{ echo "$as_me:11659: creating $CONFIG_STATUS" >&5 -+{ echo "$as_me:12192: creating $CONFIG_STATUS" >&5 - echo "$as_me: creating $CONFIG_STATUS" >&6;} - cat >$CONFIG_STATUS <<_ACEOF - #! $SHELL -@@ -11788,7 +12321,7 @@ - cat >>$CONFIG_STATUS <&5 - echo "$as_me: error: ambiguous option: $1 - Try \`$0 --help' for more information." >&2;} -@@ -11851,7 +12384,7 @@ - ac_need_defaults=false;; - - # This is an error. -- -*) { { echo "$as_me:11854: error: unrecognized option: $1 -+ -*) { { echo "$as_me:12387: 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;} -@@ -11870,7 +12403,7 @@ - ## Running config.status. ## - ## ----------------------- ## - --This file was extended by $as_me 2.52.20101002, executed with -+This file was extended by $as_me 2.52.20121002, executed with - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS -@@ -11892,8 +12425,8 @@ - AWK="$AWK" - DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX" - DFT_LWR_MODEL="$DFT_LWR_MODEL" --ECHO_LINK="$ECHO_LINK" - LIB_NAME="$LIB_NAME" -+LIB_PREFIX="$LIB_PREFIX" - LIB_SUFFIX="$LIB_SUFFIX" - LN_S="$LN_S" - NCURSES_MAJOR="$NCURSES_MAJOR" -@@ -11922,7 +12455,7 @@ - "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:11925: error: invalid argument: $ac_config_target" >&5 -+ *) { { echo "$as_me:12458: error: invalid argument: $ac_config_target" >&5 - echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -@@ -11981,6 +12514,7 @@ - s,@bindir@,$bindir,;t t - s,@sbindir@,$sbindir,;t t - s,@libexecdir@,$libexecdir,;t t -+s,@datarootdir@,$datarootdir,;t t - s,@datadir@,$datadir,;t t - s,@sysconfdir@,$sysconfdir,;t t - s,@sharedstatedir@,$sharedstatedir,;t t -@@ -12024,9 +12558,8 @@ - s,@ac_ct_CC@,$ac_ct_CC,;t t - s,@EXEEXT@,$EXEEXT,;t t - s,@OBJEXT@,$OBJEXT,;t t --s,@CPP@,$CPP,;t t - s,@EXTRA_CPPFLAGS@,$EXTRA_CPPFLAGS,;t t --s,@PROG_EXT@,$PROG_EXT,;t t -+s,@CPP@,$CPP,;t t - s,@AWK@,$AWK,;t t - s,@EGREP@,$EGREP,;t t - s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -@@ -12061,6 +12594,7 @@ - s,@DFT_LWR_MODEL@,$DFT_LWR_MODEL,;t t - s,@DFT_UPR_MODEL@,$DFT_UPR_MODEL,;t t - s,@NCURSES_CONFIG@,$NCURSES_CONFIG,;t t -+s,@ac_ct_NCURSES_CONFIG@,$ac_ct_NCURSES_CONFIG,;t t - s,@NCURSES_MAJOR@,$NCURSES_MAJOR,;t t - s,@NCURSES_MINOR@,$NCURSES_MINOR,;t t - s,@NCURSES_PATCH@,$NCURSES_PATCH,;t t -@@ -12073,23 +12607,31 @@ - s,@LIB_SUFFIX@,$LIB_SUFFIX,;t t - s,@CC_G_OPT@,$CC_G_OPT,;t t - s,@LD_MODEL@,$LD_MODEL,;t t -+s,@shlibdir@,$shlibdir,;t t -+s,@MAKE_DLLS@,$MAKE_DLLS,;t t - s,@CC_SHARED_OPTS@,$CC_SHARED_OPTS,;t t - s,@LD_RPATH_OPT@,$LD_RPATH_OPT,;t t - s,@LD_SHARED_OPTS@,$LD_SHARED_OPTS,;t t - s,@MK_SHARED_LIB@,$MK_SHARED_LIB,;t t -+s,@RM_SHARED_OPTS@,$RM_SHARED_OPTS,;t t - s,@LINK_PROGS@,$LINK_PROGS,;t t - s,@LINK_TESTS@,$LINK_TESTS,;t t - s,@EXTRA_LDFLAGS@,$EXTRA_LDFLAGS,;t t - s,@LOCAL_LDFLAGS@,$LOCAL_LDFLAGS,;t t - s,@LOCAL_LDFLAGS2@,$LOCAL_LDFLAGS2,;t t - s,@INSTALL_LIB@,$INSTALL_LIB,;t t -+s,@RPATH_LIST@,$RPATH_LIST,;t t - s,@BROKEN_LINKER@,$BROKEN_LINKER,;t t - s,@NCURSES_EXT_FUNCS@,$NCURSES_EXT_FUNCS,;t t - s,@NCURSES_CONST@,$NCURSES_CONST,;t t - s,@PTHREAD@,$PTHREAD,;t t - s,@cf_cv_enable_reentrant@,$cf_cv_enable_reentrant,;t t - s,@NCURSES_WRAP_PREFIX@,$NCURSES_WRAP_PREFIX,;t t --s,@ECHO_LINK@,$ECHO_LINK,;t t -+s,@ECHO_LT@,$ECHO_LT,;t t -+s,@ECHO_LD@,$ECHO_LD,;t t -+s,@RULE_CC@,$RULE_CC,;t t -+s,@SHOW_CC@,$SHOW_CC,;t t -+s,@ECHO_CC@,$ECHO_CC,;t t - s,@ADAFLAGS@,$ADAFLAGS,;t t - s,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t - s,@ADA_TRACE@,$ADA_TRACE,;t t -@@ -12109,7 +12651,8 @@ - s,@ADA_OBJECTS@,$ADA_OBJECTS,;t t - s,@ADA_SHAREDLIB@,$ADA_SHAREDLIB,;t t - s,@MAKE_ADA_SHAREDLIB@,$MAKE_ADA_SHAREDLIB,;t t --s,@TINFO_ARGS2@,$TINFO_ARGS2,;t t -+s,@TINFO_LDFLAGS2@,$TINFO_LDFLAGS2,;t t -+s,@TINFO_LIBS@,$TINFO_LIBS,;t t - s,@ACPPFLAGS@,$ACPPFLAGS,;t t - s,@DFT_ARG_SUFFIX@,$DFT_ARG_SUFFIX,;t t - s,@DFT_DEP_SUFFIX@,$DFT_DEP_SUFFIX,;t t -@@ -12237,7 +12780,7 @@ - esac - - if test x"$ac_file" != x-; then -- { echo "$as_me:12240: creating $ac_file" >&5 -+ { echo "$as_me:12783: creating $ac_file" >&5 - echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi -@@ -12255,7 +12798,7 @@ - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) -- test -f "$f" || { { echo "$as_me:12258: error: cannot find input file: $f" >&5 -+ test -f "$f" || { { echo "$as_me:12801: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo $f;; -@@ -12268,13 +12811,45 @@ - echo $srcdir/$f - else - # /dev/null tree -- { { echo "$as_me:12271: error: cannot find input file: $f" >&5 -+ { { echo "$as_me:12814: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - EOF -+cat >>$CONFIG_STATUS <<\EOF -+ ac_warn_datarootdir=no -+ if test x"$ac_file" != x-; then -+ for ac_item in $ac_file_inputs -+ do -+ ac_seen=`grep '@\(datadir\|mandir\|infodir\)@' $ac_item` -+ if test -n "$ac_seen"; then -+ ac_used=`grep '@datarootdir@' $ac_item` -+ if test -z "$ac_used"; then -+ { echo "$as_me:12830: 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;} -+ ac_warn_datarootdir=yes -+ fi -+ fi -+ ac_seen=`grep '${datarootdir}' $ac_item` -+ if test -n "$ac_seen"; then -+ { echo "$as_me:12839: 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;} -+ ac_warn_datarootdir=yes -+ fi -+ done -+ fi -+ -+if test "x$ac_warn_datarootdir" = xyes; then -+ ac_sed_cmds="$ac_sed_cmds | sed -e 's,@datarootdir@,\${prefix}/share,g' -e 's,\${datarootdir},\${prefix}/share,g'" -+fi -+ -+EOF - cat >>$CONFIG_STATUS <$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then -- mv $tmp/out $ac_file -+ cp $tmp/out $ac_file -+ -+ for ac_name in prefix exec_prefix datarootdir -+ do -+ ac_seen=`fgrep -n '${'$ac_name'[:=].*}' $ac_file` -+ if test -n "$ac_seen"; then -+ 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:12876: 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;} -+ fi -+ fi -+ done -+ egrep -n '@[a-z_][a-z_0-9]+@' $ac_file >$tmp/out -+ 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:12887: WARNING: Some variables may not be substituted: -+$ac_seen" >&5 -+echo "$as_me: WARNING: Some variables may not be substituted: -+$ac_seen" >&2;} -+ fi - else - cat $tmp/out -- rm -f $tmp/out - fi -+ rm -f $tmp/out - - done - EOF -@@ -12334,7 +12933,7 @@ - * ) ac_file_in=$ac_file.in ;; - esac - -- test x"$ac_file" != x- && { echo "$as_me:12337: creating $ac_file" >&5 -+ test x"$ac_file" != x- && { echo "$as_me:12936: creating $ac_file" >&5 - echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the -@@ -12345,7 +12944,7 @@ - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) -- test -f "$f" || { { echo "$as_me:12348: error: cannot find input file: $f" >&5 -+ test -f "$f" || { { echo "$as_me:12947: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo $f;; -@@ -12358,7 +12957,7 @@ - echo $srcdir/$f - else - # /dev/null tree -- { { echo "$as_me:12361: error: cannot find input file: $f" >&5 -+ { { echo "$as_me:12960: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; -@@ -12416,7 +13015,7 @@ - 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:12419: $ac_file is unchanged" >&5 -+ { echo "$as_me:13018: $ac_file is unchanged" >&5 - echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -diff -Naur ncurses-5.9/Ada95/configure.in ncurses-5.9.patch/Ada95/configure.in ---- ncurses-5.9/Ada95/configure.in 2011-04-01 00:49:22.000000000 +0200 -+++ ncurses-5.9.patch/Ada95/configure.in 2014-09-01 16:33:22.223791902 +0200 -@@ -1,5 +1,5 @@ - dnl*************************************************************************** --dnl Copyright (c) 2010,2011 Free Software Foundation, Inc. * -+dnl Copyright (c) 2010-2012,2013 Free Software Foundation, Inc. * - dnl * - dnl Permission is hereby granted, free of charge, to any person obtaining a * - dnl copy of this software and associated documentation files (the * -@@ -28,24 +28,20 @@ - dnl - dnl Author: Thomas E. Dickey - dnl --dnl $Id: configure.in,v 1.30 2011/03/31 22:49:22 tom Exp $ -+dnl $Id: configure.in,v 1.49 2013/11/16 20:06:37 tom Exp $ - dnl Process this file with autoconf to produce a configure script. - dnl - dnl See http://invisible-island.net/autoconf/ for additional information. - dnl - dnl --------------------------------------------------------------------------- --AC_PREREQ(2.13.20020210) --AC_REVISION($Revision: 1.30 $) -+AC_PREREQ(2.52.20030208) -+AC_REVISION($Revision: 1.49 $) - AC_INIT(gen/gen.c) - AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin) - - CF_TOP_BUILDDIR - --CF_CHECK_CACHE([AC_CANONICAL_SYSTEM]) --AC_ARG_WITH(system-type, --[ --with-system-type=XXX test: override derived host system-type], --[AC_MSG_WARN(overriding system type to $withval) -- cf_cv_system_name=$withval]) -+CF_WITH_SYSTYPE - - ### Save the given $CFLAGS to allow user-override. - cf_user_CFLAGS="$CFLAGS" -@@ -54,15 +50,10 @@ - CF_CFG_DEFAULTS - - ### Checks for programs. --AC_PROG_CC --CF_GCC_VERSION -- -+CF_PROG_CC(gnatgcc gcc cc) - AC_PROG_CPP - AC_PROG_GCC_TRADITIONAL - CF_PROG_CC_C_O(CC) --AC_ISC_POSIX --CF_ANSI_CC_REQD --CF_PROG_EXT - - AC_ARG_PROGRAM - -@@ -75,28 +66,8 @@ - - # if we find pkg-config, check if we should install the ".pc" files. - CF_PKG_CONFIG -- --if test "$PKG_CONFIG" != none ; then -- AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG) -- -- # Leave this as something that can be overridden in the environment. -- if test -z "$PKG_CONFIG_LIBDIR" ; then -- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`/lib/pkgconfig -- fi -- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'` -- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then -- AC_ARG_ENABLE(pc-files, -- [ --enable-pc-files generate and install .pc files for pkg-config], -- [enable_pc_files=$enableval], -- [enable_pc_files=no]) -- AC_MSG_RESULT($enable_pc_files) -- else -- AC_MSG_RESULT(no) -- AC_MSG_WARN(did not find library $PKG_CONFIG_LIBDIR) -- enable_pc_files=no -- fi --fi --AC_SUBST(PKG_CONFIG_LIBDIR) -+CF_WITH_PKG_CONFIG_LIBDIR -+CF_ENABLE_PC_FILES - - AC_MSG_CHECKING(if you want to build test-programs) - AC_ARG_WITH(tests, -@@ -130,6 +101,7 @@ - AC_CHECK_TOOL(LD, ld, ld) - AC_CHECK_TOOL(AR, ar, ar) - CF_AR_FLAGS -+CF_PATHSEP - - dnl Special option for use by system-builders: the install-prefix is used to - dnl adjust the location into which the actual install is done, so that an -@@ -186,9 +158,7 @@ - - CF_NCURSES_ADDON - --CF_LIB_PREFIX(cf_prefix) --LIB_PREFIX=$cf_prefix --AC_SUBST(LIB_PREFIX) -+CF_WITH_LIB_PREFIX(cf_prefix) - - LIB_SUFFIX= - AC_SUBST(LIB_SUFFIX) -@@ -235,8 +205,6 @@ - ############################################################################### - CF_HELP_MESSAGE(Fine-Tuning Your Configuration:) - --CF_PATHSEP -- - ### use option --enable-broken-linker to force on use of broken-linker support - AC_MSG_CHECKING(if you want broken-linker support code) - AC_ARG_ENABLE(broken_linker, -@@ -272,7 +240,7 @@ - [with_rcs_ids=$withval], - [with_rcs_ids=no]) - AC_MSG_RESULT($with_rcs_ids) --test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS) -+test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS,1,[Define to 1 if RCS identifiers should be compiled-in)]) - - ############################################################################### - CF_HELP_MESSAGE(Extensions:) -@@ -286,8 +254,8 @@ - AC_MSG_RESULT($with_ext_funcs) - if test "$with_ext_funcs" = yes ; then - NCURSES_EXT_FUNCS=1 -- AC_DEFINE(HAVE_USE_DEFAULT_COLORS) -- AC_DEFINE(NCURSES_EXT_FUNCS) -+ AC_DEFINE(HAVE_USE_DEFAULT_COLORS,1,[Define to 1 if we have use_default_colors function]) -+ AC_DEFINE(NCURSES_EXT_FUNCS,1,[Define to 1 if we have ncurses extended functions]) - else - NCURSES_EXT_FUNCS=0 - fi -@@ -337,12 +305,12 @@ - fi - - if test $cf_cv_weak_symbols = yes ; then -- AC_DEFINE(USE_WEAK_SYMBOLS) -+ AC_DEFINE(USE_WEAK_SYMBOLS,1,[Define to 1 to enable weak-symbols for pthreads]) - fi - - PTHREAD= - if test "$with_pthread" = "yes" ; then -- AC_DEFINE(USE_PTHREADS) -+ AC_DEFINE(USE_PTHREADS,1,[Define to 1 to use the pthreads library]) - enable_reentrant=yes - if test $cf_cv_weak_symbols = yes ; then - PTHREAD=-lpthread -@@ -370,7 +338,7 @@ - elif test "$assume_reentrant" = no ; then - LIB_SUFFIX="t${LIB_SUFFIX}" - fi -- AC_DEFINE(USE_REENTRANT) -+ AC_DEFINE(USE_REENTRANT,1,[Define to 1 to compile with experimental reentrant code]) - else - cf_cv_enable_reentrant=0 - fi -@@ -388,24 +356,13 @@ - NCURSES_WRAP_PREFIX=_nc_ - fi - AC_SUBST(NCURSES_WRAP_PREFIX) --AC_DEFINE_UNQUOTED(NCURSES_WRAP_PREFIX,"$NCURSES_WRAP_PREFIX") -+AC_DEFINE_UNQUOTED(NCURSES_WRAP_PREFIX,"$NCURSES_WRAP_PREFIX",[Define to override _nc_ ncurses internal prefix]) - - ############################################################################### - CF_HELP_MESSAGE(Testing/development Options:) - - ### use option --disable-echo to suppress full display compiling commands --AC_MSG_CHECKING(if you want to display full commands during build) --AC_ARG_ENABLE(echo, -- [ --enable-echo build: display "compiling" commands (default)], -- [with_echo=$enableval], -- [with_echo=yes]) --if test "$with_echo" = yes; then -- ECHO_LINK= --else -- ECHO_LINK='@ echo linking $@ ... ;' --fi --AC_MSG_RESULT($with_echo) --AC_SUBST(ECHO_LINK) -+CF_DISABLE_ECHO - - ### use option --enable-warnings to turn on all gcc warnings - AC_MSG_CHECKING(if you want to see compiler warnings) -@@ -416,7 +373,7 @@ - - if test "x$with_warnings" = "xyes"; then - CF_ADD_ADAFLAGS(-gnatg) -- CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum) -+ CF_GCC_WARNINGS(Wno-unknown-pragmas Wswitch-enum) - fi - CF_GCC_ATTRIBUTES - -@@ -431,7 +388,6 @@ - then - if test "$with_assertions" = no - then -- AC_DEFINE(NDEBUG) - CPPFLAGS="$CPPFLAGS -DNDEBUG" - else - CF_ADD_ADAFLAGS(-gnata) -@@ -439,17 +395,17 @@ - fi - - ### use option --disable-leaks to suppress "permanent" leaks, for testing --AC_DEFINE(HAVE_NC_ALLOC_H) -+AC_DEFINE(HAVE_NC_ALLOC_H,1,[Define to 1 if we have nc_alloc.h header]) - - ### use option --enable-expanded to generate certain macros as functions - AC_ARG_ENABLE(expanded, - [ --enable-expanded test: generate functions for certain macros], -- [test "$enableval" = yes && AC_DEFINE(NCURSES_EXPANDED)]) -+ [test "$enableval" = yes && AC_DEFINE(NCURSES_EXPANDED,1,[Define to 1 if ncurses macros should be expanded as functions])]) - - ### use option --disable-macros to suppress macros in favor of functions - AC_ARG_ENABLE(macros, - [ --disable-macros test: use functions rather than macros], -- [test "$enableval" = no && AC_DEFINE(NCURSES_NOMACROS)]) -+ [test "$enableval" = no && AC_DEFINE(NCURSES_NOMACROS,1,[Define to 1 if ncurses macros should be expanded as functions])]) - - # Normally we only add trace() to the debug-library. Allow this to be - # extended to all models of the ncurses library: -@@ -485,7 +441,7 @@ - AC_DEFINE(HAVE_GETTIMEOFDAY),[ - - AC_CHECK_LIB(bsd, gettimeofday, -- AC_DEFINE(HAVE_GETTIMEOFDAY) -+ AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define to 1 if we have gettimeofday]) - LIBS="$LIBS -lbsd")])dnl CLIX: bzero, select, gettimeofday - ;; - esac -@@ -505,8 +461,6 @@ - ### Checks for library functions. - CF_MKSTEMP - --AC_TYPE_SIGNAL -- - dnl We'll do our own -g libraries, unless the user's overridden via $CFLAGS - if test -z "$cf_user_CFLAGS" && test "$with_no_leaks" = no ; then - CF_STRIP_G_OPT(CFLAGS) -@@ -514,24 +468,13 @@ - fi - - CF_HELP_MESSAGE(Ada95 Binding Options:) -- -+cf_with_ada=yes - dnl Check for availability of GNU Ada Translator (GNAT). - dnl At the moment we support no other Ada95 compiler. - if test "$cf_with_ada" != "no" ; then - CF_PROG_GNAT - if test "$cf_cv_prog_gnat_correct" = yes; then -- -- # make ADAFLAGS consistent with CFLAGS -- case "$CFLAGS" in -- *-g*) -- CF_ADD_ADAFLAGS(-g) -- ;; -- esac -- case "$CFLAGS" in -- *-O*) -- CF_ADD_ADAFLAGS(-O3) -- ;; -- esac -+ CF_FIXUP_ADAFLAGS - - CF_GNAT_GENERICS - CF_GNAT_SIGINT -@@ -556,8 +499,10 @@ - ################################################################################ - - # not needed --TINFO_ARGS2= --AC_SUBST(TINFO_ARGS2) -+TINFO_LDFLAGS2= -+AC_SUBST(TINFO_LDFLAGS2) -+TINFO_LIBS= -+AC_SUBST(TINFO_LIBS) - - ### Construct the list of include-directories to be generated - CF_INCLUDE_DIRS -@@ -586,6 +531,9 @@ - cygwin*) - # "lib" files have ".dll.a" suffix, "cyg" files have ".dll" - ;; -+ msys*) -+ # "lib" files have ".dll.a" suffix, "msys-" files have ".dll" -+ ;; - esac - fi - -@@ -594,7 +542,7 @@ - - SUB_MAKEFILES="gen/adacurses${DFT_ARG_SUFFIX}-config:gen/adacurses-config.in" - --AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR') -+AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR',[Define to override ':' as the library path-separator]) - - ### Now that we're done running tests, add the compiler-warnings, if any - CF_ADD_CFLAGS($EXTRA_CFLAGS) -@@ -656,8 +604,8 @@ - AWK="$AWK" - DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX" - DFT_LWR_MODEL="$DFT_LWR_MODEL" --ECHO_LINK="$ECHO_LINK" - LIB_NAME="$LIB_NAME" -+LIB_PREFIX="$LIB_PREFIX" - LIB_SUFFIX="$LIB_SUFFIX" - LN_S="$LN_S" - NCURSES_MAJOR="$NCURSES_MAJOR" -diff -Naur ncurses-5.9/Ada95/doc/Makefile.in ncurses-5.9.patch/Ada95/doc/Makefile.in ---- ncurses-5.9/Ada95/doc/Makefile.in 2011-03-26 20:26:17.000000000 +0100 -+++ ncurses-5.9.patch/Ada95/doc/Makefile.in 2014-09-01 16:33:22.223791902 +0200 -@@ -1,4 +1,4 @@ --# $Id: Makefile.in,v 1.2 2011/03/26 19:26:17 tom Exp $ -+# $Id: Makefile.in,v 1.3 2012/08/11 21:31:56 tom Exp $ - ############################################################################## - # Copyright (c) 2011 Free Software Foundation, Inc. # - # # -@@ -38,6 +38,7 @@ - srcdir = @srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ -+datarootdir = @datarootdir@ - datadir = @datadir@ - mandir = @mandir@ - -diff -Naur ncurses-5.9/Ada95/gen/gen.c ncurses-5.9.patch/Ada95/gen/gen.c ---- ncurses-5.9/Ada95/gen/gen.c 2011-04-01 01:50:24.000000000 +0200 -+++ ncurses-5.9.patch/Ada95/gen/gen.c 2014-09-01 16:33:22.225791905 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998,2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - /* - Version Control -- $Id: gen.c,v 1.59 2011/03/31 23:50:24 tom Exp $ -+ $Id: gen.c,v 1.64 2014/02/01 19:52:47 tom Exp $ - --------------------------------------------------------------------------*/ - /* - This program generates various record structures and constants from the -@@ -57,9 +57,14 @@ - #include - #include - --#define UChar(c) ((unsigned char)(c)) -+#undef UCHAR -+#undef UINT -+#define UChar(c) ((UCHAR)(c)) - #define RES_NAME "Reserved" - -+typedef unsigned char UCHAR; -+typedef unsigned int UINT; -+ - static const char *model = ""; - static int little_endian = 0; - -@@ -70,45 +75,43 @@ - } - name_attribute_pair; - --static int --find_pos(char *s, unsigned len, int *low, int *high) --{ -- unsigned int i, j; -- int l = 0; -+static UCHAR -+bit_is_set(const UCHAR * const data, -+ const UINT offset) -+{ -+ const UCHAR byte = data[offset >> 3]; -+ UINT bit; -+ -+ if (little_endian) -+ bit = offset; /* offset */ -+ else /* or */ -+ bit = ~offset; /* 7 - offset */ -+ bit &= 7; /* modulo 8 */ -+ return byte & (UCHAR) (1 << bit); -+} - -- *high = -1; -- *low = (int)(8 * len); -+/* Find lowest and highest used offset in a byte array. */ -+/* Returns 0 if and only if all bits are unset. */ -+static int -+find_pos(const UCHAR * const data, -+ const UINT sizeof_data, -+ UINT * const low, -+ UINT * const high) -+{ -+ const UINT last = (sizeof_data << 3) - 1; -+ UINT offset; -+ -+ for (offset = last; !bit_is_set(data, offset); offset--) -+ if (!offset) /* All bits are 0. */ -+ return 0; -+ *high = offset; - -- for (i = 0; i < len; i++, s++) -+ for (offset = 0; !bit_is_set(data, offset); offset++) - { -- if (*s) -- { -- for (j = 0; j < 8 * sizeof(char); j++) -- -- { -- if (((little_endian && ((*s) & 0x01)) || -- (!little_endian && ((*s) & 0x80)))) -- { -- if (l > *high) -- *high = l; -- if (l < *low) -- *low = l; -- } -- l++; -- if (little_endian) -- { -- *s >>= 1; -- } -- else -- { -- *s = (char)(*s << 1); -- } -- } -- } -- else -- l += 8; - } -- return (*high >= 0 && (*low <= *high)) ? *low : -1; -+ *low = offset; -+ -+ return -1; - } - - /* -@@ -116,63 +119,38 @@ - * record type defined in the binding. - * We are only dealing with record types which are of 32 or 16 - * bit size, i.e. they fit into an (u)int or a (u)short. -+ * Any pair with a 0 attr field will be ignored. - */ - static void - gen_reps( - const name_attribute_pair * nap, /* array of name_attribute_pair records */ - const char *name, /* name of the represented record type */ -- int len, /* size of the record in bytes */ -- int bias) -+ const UINT len, /* size of the record in bytes */ -+ const UINT bias) - { -- const char *unused_name = "Unused"; -- int long_bits = (8 * (int)sizeof(unsigned long)); -- int len_bits = (8 * len); -- int i, j, n, l, cnt = 0, low, high; -+ const UINT len_bits = len << 3; -+ int i, l; -+ UINT low, high; - int width = strlen(RES_NAME) + 3; -- unsigned long a; -- unsigned long mask = 0; - - assert(nap != NULL); - - for (i = 0; nap[i].name != (char *)0; i++) -- { -- cnt++; -- l = (int)strlen(nap[i].name); -- if (l > width) -- width = l; -- } -+ if (nap[i].attr) -+ { -+ l = (int)strlen(nap[i].name); -+ if (l > width) -+ width = l; -+ } - assert(width > 0); - - printf(" type %s is\n", name); - printf(" record\n"); - for (i = 0; nap[i].name != (char *)0; i++) -- { -- mask |= nap[i].attr; -- printf(" %-*s : Boolean;\n", width, nap[i].name); -- } -- -- /* -- * Compute a mask for the unused bits in this target. -- */ -- mask = ~mask; -- /* -- * Bits in the biased area are unused by the target. -- */ -- for (j = 0; j < bias; ++j) -- { -- mask &= (unsigned long)(~(1L << j)); -- } -- /* -- * Bits past the target's size are really unused. -- */ -- for (j = len_bits + bias; j < long_bits; ++j) -- { -- mask &= (unsigned long)(~(1L << j)); -- } -- if (mask != 0) -- { -- printf(" %-*s : Boolean;\n", width, unused_name); -- } -+ if (nap[i].attr) -+ { -+ printf(" %-*s : Boolean;\n", width, nap[i].name); -+ } - printf(" end record;\n"); - printf(" pragma Convention (C, %s);\n\n", name); - -@@ -180,24 +158,16 @@ - printf(" record\n"); - - for (i = 0; nap[i].name != (char *)0; i++) -- { -- a = nap[i].attr; -- l = find_pos((char *)&a, sizeof(a), &low, &high); -- if (l >= 0) -- printf(" %-*s at 0 range %2d .. %2d;\n", width, nap[i].name, -- low - bias, high - bias); -- } -- if (mask != 0) -- { -- l = find_pos((char *)&mask, sizeof(mask), &low, &high); -- if (l >= 0) -- printf(" %-*s at 0 range %2d .. %2d;\n", width, unused_name, -- low - bias, high - bias); -- } -- i = 1; -- n = cnt; -+ if (nap[i].attr) -+ { -+ if (find_pos((const UCHAR *)(&(nap[i].attr)) + bias, len, &low, &high)) -+ printf(" %-*s at 0 range %2d .. %2d;\n", width, nap[i].name, -+ low, high); -+ } - printf(" end record;\n"); -+ printf(" pragma Warnings (Off);"); - printf(" for %s'Size use %d;\n", name, len_bits); -+ printf(" pragma Warnings (On);\n"); - printf(" -- Please note: this rep. clause is generated and may be\n"); - printf(" -- different on your system."); - } -@@ -207,10 +177,9 @@ - { - attr_t x = (attr_t)-1; - attr_t t = x & mask; -- int low, high; -- int l = find_pos((char *)&t, sizeof(t), &low, &high); -+ UINT low, high; - -- if (l >= 0) -+ if (find_pos((const UCHAR *)(&t), sizeof(t), &low, &high)) - printf(" %-5s at 0 range %2d .. %2d;\n", name, low, high); - } - -@@ -231,10 +200,9 @@ - static void - mrep_rep(const char *name, void *rec) - { -- int low, high; -- int l = find_pos((char *)rec, sizeof(MEVENT), &low, &high); -+ UINT low, high; - -- if (l >= 0) -+ if (find_pos((const UCHAR *)rec, sizeof(MEVENT), &low, &high)) - printf(" %-7s at 0 range %3d .. %3d;\n", name, low, high); - } - -@@ -278,54 +246,26 @@ - * 1999-2000), the ifdef's also were needed since the proposed bit-layout - * for wide characters allocated 16-bits for A_CHARTEXT, leaving too few - * bits for a few of the A_xxx symbols. -+ * Some preprocessors are not able to test the values because they -+ * now (2014) contain an explicit cast to chtype, so we avoid ifdef. - */ - static const name_attribute_pair nap[] = - { --#if A_STANDOUT - {"Stand_Out", A_STANDOUT}, --#endif --#if A_UNDERLINE - {"Under_Line", A_UNDERLINE}, --#endif --#if A_REVERSE - {"Reverse_Video", A_REVERSE}, --#endif --#if A_BLINK - {"Blink", A_BLINK}, --#endif --#if A_DIM - {"Dim_Character", A_DIM}, --#endif --#if A_BOLD - {"Bold_Character", A_BOLD}, --#endif --#if A_ALTCHARSET - {"Alternate_Character_Set", A_ALTCHARSET}, --#endif --#if A_INVIS - {"Invisible_Character", A_INVIS}, --#endif --#if A_PROTECT - {"Protected_Character", A_PROTECT}, --#endif --#if A_HORIZONTAL - {"Horizontal", A_HORIZONTAL}, --#endif --#if A_LEFT - {"Left", A_LEFT}, --#endif --#if A_LOW - {"Low", A_LOW}, --#endif --#if A_RIGHT - {"Right", A_RIGHT}, --#endif --#if A_TOP - {"Top", A_TOP}, --#endif --#if A_VERTICAL - {"Vertical", A_VERTICAL}, --#endif - {(char *)0, 0} - }; - chtype attr = A_ATTRIBUTES & ~A_COLOR; -@@ -348,7 +288,9 @@ - } - attr = attr >> 1; - } -- gen_reps(nap, name, (len + 7) / 8, little_endian ? start : 0); -+ gen_reps(nap, name, -+ (UINT) ((len + 7) / 8), -+ (UINT) (little_endian ? start >> 3 : 0)); - } - - static void -@@ -371,7 +313,9 @@ - {"Attributes_And_Colors", TRACE_ATTRS}, - {(char *)0, 0} - }; -- gen_reps(nap, name, sizeof(int), 0); -+ -+ gen_reps(nap, name, sizeof(UINT), -+ little_endian ? 0 : sizeof(nap[0].attr) - sizeof(UINT)); - } - - static void -@@ -399,7 +343,9 @@ - #endif - {(char *)0, 0} - }; -- gen_reps(nap, name, sizeof(int), 0); -+ -+ gen_reps(nap, name, sizeof(Menu_Options), -+ little_endian ? 0 : sizeof(nap[0].attr) - sizeof(Menu_Options)); - } - - static void -@@ -412,7 +358,9 @@ - #endif - {(char *)0, 0} - }; -- gen_reps(nap, name, sizeof(int), 0); -+ -+ gen_reps(nap, name, sizeof(Item_Options), -+ little_endian ? 0 : sizeof(nap[0].attr) - sizeof(Item_Options)); - } - - static void -@@ -428,7 +376,9 @@ - #endif - {(char *)0, 0} - }; -- gen_reps(nap, name, sizeof(int), 0); -+ -+ gen_reps(nap, name, sizeof(Form_Options), -+ little_endian ? 0 : sizeof(nap[0].attr) - sizeof(Form_Options)); - } - - /* -@@ -471,7 +421,9 @@ - #endif - {(char *)0, 0} - }; -- gen_reps(nap, name, sizeof(int), 0); -+ -+ gen_reps(nap, name, sizeof(Field_Options), -+ little_endian ? 0 : sizeof(nap[0].attr) - sizeof(Field_Options)); - } - - /* -diff -Naur ncurses-5.9/Ada95/gen/Makefile.in ncurses-5.9.patch/Ada95/gen/Makefile.in ---- ncurses-5.9/Ada95/gen/Makefile.in 2011-03-27 00:36:30.000000000 +0100 -+++ ncurses-5.9.patch/Ada95/gen/Makefile.in 2014-09-01 16:33:22.224791904 +0200 -@@ -1,5 +1,5 @@ - ############################################################################## --# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -28,7 +28,7 @@ - # - # Author: Juergen Pfeifer, 1996 - # --# $Id: Makefile.in,v 1.74 2011/03/26 23:36:30 tom Exp $ -+# $Id: Makefile.in,v 1.77 2012/10/06 18:58:48 tom Exp $ - # - .SUFFIXES: - -@@ -36,7 +36,7 @@ - VPATH = @srcdir@ - THIS = Makefile - --x = @PROG_EXT@ -+x = @EXEEXT@ - - top_srcdir = @top_srcdir@ - DESTDIR = @DESTDIR@ -@@ -73,7 +73,7 @@ - LOCAL_LIBDIR = @top_builddir@/lib - - LINK = $(HOST_CC) --LD_FLAGS = @LD_MODEL@ $(LOCAL_LIBS) @LDFLAGS@ @LIBS@ @LOCAL_LDFLAGS2@ $(LDFLAGS) @TINFO_ARGS2@ -+LD_FLAGS = @LD_MODEL@ $(LOCAL_LIBS) @TINFO_LDFLAGS2@ @LDFLAGS@ @LIBS@ @LOCAL_LDFLAGS2@ $(LDFLAGS) @TINFO_LIBS@ - - RANLIB = @RANLIB@ - -@@ -179,7 +179,7 @@ - -rm -f $(DESTDIR)$(bindir)/$(ADACURSES_CONFIG) - - $(PROG_GENERATE): gen.o -- @ECHO_LINK@ $(LINK) $(CFLAGS_NORMAL) gen.o $(LD_FLAGS) -o $@ -+ @ECHO_LD@ $(LINK) $(CFLAGS_NORMAL) gen.o $(LD_FLAGS) -o $@ - - gen.o: $(srcdir)/gen.c - $(HOST_CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/gen.c -@@ -411,7 +411,7 @@ - @mkdir -p $(HTML_DIR) - cp -p ../src/*.ad[sb] . && chmod +w *.ad[sb] - @USE_OLD_MAKERULES@ ln -sf ../src/*.ali . --@USE_GNAT_PROJECTS@ ln -sf ../static-ali/*.ali . -+@USE_GNAT_PROJECTS@ ln -sf ../static-ali/*.ali . - @echo "Filtering generated files" - @for f in $(GEN_SRC); do \ - h=`basename $$f` ;\ -diff -Naur ncurses-5.9/Ada95/gen/terminal_interface-curses-forms-field_types.ads.m4 ncurses-5.9.patch/Ada95/gen/terminal_interface-curses-forms-field_types.ads.m4 ---- ncurses-5.9/Ada95/gen/terminal_interface-curses-forms-field_types.ads.m4 2011-03-19 00:10:43.000000000 +0100 -+++ ncurses-5.9.patch/Ada95/gen/terminal_interface-curses-forms-field_types.ads.m4 2014-09-01 16:33:22.225791905 +0200 -@@ -38,7 +38,7 @@ - ------------------------------------------------------------------------------ - -- Author: Juergen Pfeifer, 1996 - -- Version Control: ---- $Revision: 1.16 $ -+-- $Revision: 1.17 $ - -- Binding Version 01.00 - ------------------------------------------------------------------------------ - with Interfaces.C; -diff -Naur ncurses-5.9/Ada95/include/ncurses_defs ncurses-5.9.patch/Ada95/include/ncurses_defs ---- ncurses-5.9/Ada95/include/ncurses_defs 2008-11-16 01:19:59.000000000 +0100 -+++ ncurses-5.9.patch/Ada95/include/ncurses_defs 2014-09-01 16:33:22.225791905 +0200 -@@ -1,6 +1,6 @@ --# $Id: ncurses_defs,v 1.41 2008/11/16 00:19:59 juergen Exp $ -+# $Id: ncurses_defs,v 1.44 2013/04/27 19:50:17 tom Exp $ - ############################################################################## --# Copyright (c) 2000-2007,2008 Free Software Foundation, Inc. # -+# Copyright (c) 2000-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -33,7 +33,6 @@ - - BROKEN_LINKER - BSD_TPUTS --CC_HAS_PROTOS - CPP_HAS_PARAM_INIT - CURSES_ACS_ARRAY acs_map - CURSES_WACS_ARRAY _nc_wacs -@@ -120,7 +119,6 @@ - HAVE_SIZECHANGE - HAVE_SLK_COLOR - HAVE_SLK_INIT 1 --HAVE_STRDUP - HAVE_STRSTR - HAVE_SYMLINK - HAVE_SYS_BSDTYPES_H -@@ -174,7 +172,6 @@ - NEED_PTEM_H - NO_LEAKS - PURE_TERMINFO --RETSIGTYPE - STDC_HEADERS - SVR4_ACTION - SVR4_TERMIO -diff -Naur ncurses-5.9/Ada95/make-tar.sh ncurses-5.9.patch/Ada95/make-tar.sh ---- ncurses-5.9/Ada95/make-tar.sh 2011-03-26 20:07:38.000000000 +0100 -+++ ncurses-5.9.patch/Ada95/make-tar.sh 2014-09-01 16:33:22.226791906 +0200 -@@ -1,7 +1,7 @@ - #!/bin/sh --# $Id: make-tar.sh,v 1.12 2011/03/26 19:07:38 tom Exp $ -+# $Id: make-tar.sh,v 1.14 2013/10/26 23:10:24 tom Exp $ - ############################################################################## --# Copyright (c) 2010,2011 Free Software Foundation, Inc. # -+# Copyright (c) 2010-2011,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -66,11 +66,11 @@ - make_changelog() { - test -f $1 && chmod u+w $1 - cat >$1 < - -+ - - - - -+ "HTML Tidy for Linux (vers 25 March 2009), see www.w3.org"> - - Announcing ncurses @VERSION@ - -@@ -42,12 +42,13 @@ - - - --

Announcing ncurses @VERSION@

The ncurses (new curses) -- library is a free software emulation of curses in System V -- Release 4.0, and more. It uses terminfo format, supports pads and -- color and multiple highlights and forms characters and -- function-key mapping, and has all the other SYSV-curses -- enhancements over BSD curses. -+

Announcing ncurses @VERSION@

-+ -+

The ncurses (new curses) library is a free software emulation -+ of curses in System V Release 4.0, and more. It uses terminfo -+ format, supports pads and color and multiple highlights and forms -+ characters and function-key mapping, and has all the other -+ SYSV-curses enhancements over BSD curses.

- -

In mid-June 1995, the maintainer of 4.4BSD curses declared - that he considered 4.4BSD curses obsolete, and encouraged the -@@ -73,38 +74,50 @@ - It is also available at ftp://invisible-island.net/ncurses/ .

- --

Release Notes

This release is designed to be upward -- compatible from ncurses 5.0 through 5.8; very few applications -- will require recompilation, depending on the platform. These are -- the highlights from the change-log since ncurses 5.8 release. --

-- This is a bug-fix release, correcting a small number of urgent problems -- in the ncurses library from the 5.8 release. --

-- It also improves the Ada95 binding: -+

Release Notes

-+ -+

This release is designed to be upward compatible from ncurses -+ 5.0 through 5.8; very few applications will require -+ recompilation, depending on the platform. These are the -+ highlights from the change-log since ncurses 5.8 release.

-+ -+

This is a bug-fix release, correcting a small number of urgent -+ problems in the ncurses library from the 5.8 release.

-+ -+

It also improves the Ada95 binding:

-+ -
    --
  • fixes a longstanding portability problem with its use of the -- set_field_type -- function. Because that function uses variable-length argument lists, -- its interface with gnat does not work with certain platforms. --
  • improves configurability and portability, particularly when built -- separately from the main ncurses tree. The 5.8 release introduced -- scripts which can be used to construct separate tarballs for the -- Ada95 and ncurses examples. --

    Those were a proof of concept. For the 5.9 release, those -- scripts are augmented with rpm- and dpkg-scripts used in test builds -- against a variety of gnat- and system ncurses versions as old as -- gnat 3.15 and ncurses 5.4 (see snapshots and systems tested -- here. --

  • additional improvements were made for portability of the -- ncurses examples, adding rpm- and dpkg-scripts for test-builds. -- See -- this page -- for snapshots and other information. -+
  • fixes a longstanding portability problem with its use of -+ the set_field_type -+ function. Because that function uses variable-length argument -+ lists, its interface with gnat does not work with certain -+ platforms.
  • -+ -+
  • improves configurability and portability, particularly when -+ built separately from the main ncurses tree. The 5.8 release -+ introduced scripts which can be used to construct separate -+ tarballs for the Ada95 and ncurses examples. -+ -+

    Those were a proof of concept. For the 5.9 release, those -+ scripts are augmented with rpm- and dpkg-scripts used in test -+ builds against a variety of gnat- and system ncurses versions -+ as old as gnat 3.15 and ncurses 5.4 (see snapshots and -+ systems tested here.

    -+
  • -+ -+
  • additional improvements were made for portability of the -+ ncurses examples, adding rpm- and dpkg-scripts for test-builds. -+ See this -+ page for snapshots and other information.
  • -
- --

Features of Ncurses

The ncurses package is fully -- compatible with SVr4 (System V Release 4) curses: -+

Features of Ncurses

-+ -+

The ncurses package is fully compatible with SVr4 (System V -+ Release 4) curses:

- -
    -
  • All 257 of the SVr4 calls have been implemented (and are -@@ -132,8 +145,10 @@ - entries for use with less capable - curses/terminfo versions such - as the HP/UX and AIX ports.
  • --
The ncurses package also has many useful extensions over -- SVr4: -+ -+ -+

The ncurses package also has many useful extensions over -+ SVr4:

- -
    -
  • The API is 8-bit clean and base-level conformant with the -@@ -249,12 +264,14 @@ - interface.
  • -
- --

State of the Package

Numerous bugs present in earlier -- versions have been fixed; the library is far more reliable than -- it used to be. Bounds checking in many `dangerous' entry points -- has been improved. The code is now type-safe according to gcc -- -Wall. The library has been checked for malloc leaks and arena -- corruption by the Purify memory-allocation tester. -+

State of the Package

-+ -+

Numerous bugs present in earlier versions have been fixed; the -+ library is far more reliable than it used to be. Bounds checking -+ in many `dangerous' entry points has been improved. The code is -+ now type-safe according to gcc -Wall. The library has been -+ checked for malloc leaks and arena corruption by the Purify -+ memory-allocation tester.

- -

The ncurses code has been tested with a wide variety of - applications including (versions starting with those noted):

-@@ -321,8 +338,10 @@ - -
newsreader, supporting color, MIME http://www.tin.org/
-- as well as some that use ncurses for the terminfo support -- alone: -+ -+ -+

as well as some that use ncurses for the terminfo support -+ alone:

- -
-
minicom
-@@ -341,15 +360,17 @@ -

The ncurses distribution includes a selection of test programs - (including a few games).

- --

Who's Who and What's What

Zeyd Ben-Halim started it from -- a previous package pcurses, written by Pavel Curtis. Eric S. -- Raymond continued development. Jürgen Pfeifer wrote most of -- the form and menu libraries. Ongoing work is being done by -- Thomas Dickey. -- Thomas Dickey acts as the maintainer for the Free Software -- Foundation, which holds the copyright on ncurses. Contact the -- current maintainers at bug-ncurses@gnu.org. -+

Who's Who and What's What

-+ -+

Zeyd Ben-Halim started it from a previous package pcurses, -+ written by Pavel Curtis. Eric S. Raymond continued development. -+ Jürgen Pfeifer wrote most of the form and menu libraries. -+ Ongoing work is being done by Thomas Dickey. Thomas -+ Dickey acts as the maintainer for the Free Software Foundation, -+ which holds the copyright on ncurses. Contact the current -+ maintainers at bug-ncurses@gnu.org.

- -

To join the ncurses mailing list, please write email to - bug-ncurses-request@gnu.org containing the line:

-@@ -364,6 +385,13 @@ - are made available at ftp://invisible-island.net/ncurses/ .

- -+

There is an archive of the mailing list here:

-+ -+

http://lists.gnu.org/archive/html/bug-ncurses -+ (also https)

-+ -

Future Plans

- -
    -@@ -371,15 +399,19 @@ - support. - -
  • Ports to more systems, including DOS and Windows.
  • --
We need people to help with these projects. If you are -- interested in working on them, please join the ncurses list. -+ -+ -+

We need people to help with these projects. If you are -+ interested in working on them, please join the ncurses list.

-+ -+

Other Related Resources

- --

Other Related Resources

The distribution provides a newer -- version of the terminfo-format terminal description file once -- maintained by Eric -+

The distribution provides a newer version of the -+ terminfo-format terminal description file once maintained by -+ Eric - Raymond . Unlike the older version, the termcap and - terminfo data are provided in the same file, and provides several -- user-definable extensions beyond the X/Open specification. -+ user-definable extensions beyond the X/Open specification.

- -

You can find lots of information on terminal-related topics - not covered in the terminfo file at (COLOR_PAIR(1)) : A_BOLD; - } - - // Attributes to use for menu and forms backgrounds - virtual chtype backgrounds() const { -- return b_Colors ? COLOR_PAIR(2) : A_NORMAL; -+ return b_Colors ? static_cast(COLOR_PAIR(2)) : A_NORMAL; - } - - // Attributes to use for inactive (menu) elements - virtual chtype inactives() const { -- return b_Colors ? (COLOR_PAIR(3)|A_DIM) : A_DIM; -+ return b_Colors ? static_cast(COLOR_PAIR(3)|A_DIM) : A_DIM; - } - - // Attributes to use for (form) labels and SLKs - virtual chtype labels() const { -- return b_Colors ? COLOR_PAIR(4) : A_NORMAL; -+ return b_Colors ? static_cast(COLOR_PAIR(4)) : A_NORMAL; - } - - // Attributes to use for form backgrounds - virtual chtype dialog_backgrounds() const { -- return b_Colors ? COLOR_PAIR(4) : A_NORMAL; -+ return b_Colors ? static_cast(COLOR_PAIR(4)) : A_NORMAL; - } - - // Attributes to use as default for (form) window backgrounds - virtual chtype window_backgrounds() const { -- return b_Colors ? COLOR_PAIR(5) : A_NORMAL; -+ return b_Colors ? static_cast(COLOR_PAIR(5)) : A_NORMAL; - } - - // Attributes to use for the title window - virtual chtype screen_titles() const { -- return b_Colors ? COLOR_PAIR(6) : A_BOLD; -+ return b_Colors ? static_cast(COLOR_PAIR(6)) : A_BOLD; - } - - }; -diff -Naur ncurses-5.9/c++/cursesf.cc ncurses-5.9.patch/c++/cursesf.cc ---- ncurses-5.9/c++/cursesf.cc 2005-08-13 20:09:06.000000000 +0200 -+++ ncurses-5.9.patch/c++/cursesf.cc 2014-09-01 16:33:22.238791926 +0200 -@@ -1,6 +1,6 @@ - // * this is for making emacs happy: -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2003,2005 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2005,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,7 +35,7 @@ - #include "cursesf.h" - #include "cursesapp.h" - --MODULE_ID("$Id: cursesf.cc,v 1.21 2005/08/13 18:09:06 tom Exp $") -+MODULE_ID("$Id: cursesf.cc,v 1.22 2011/09/17 22:12:10 tom Exp $") - - NCursesFormField::~NCursesFormField () - { -@@ -234,11 +234,13 @@ - void - NCursesForm::On_Field_Init(NCursesFormField& field) - { -+ (void) field; - } - - void - NCursesForm::On_Field_Termination(NCursesFormField& field) - { -+ (void) field; - } - - // call the form driver and do basic error checking. -@@ -260,16 +262,19 @@ - - void NCursesForm::On_Request_Denied(int c) const - { -+ (void) c; - ::beep(); - } - - void NCursesForm::On_Invalid_Field(int c) const - { -+ (void) c; - ::beep(); - } - - void NCursesForm::On_Unknown_Command(int c) const - { -+ (void) c; - ::beep(); - } - -@@ -373,6 +378,7 @@ - // - bool _nc_xx_fld_fcheck(FIELD *f, const void *u) - { -+ (void) f; - NCursesFormField* F = reinterpret_cast(const_cast(u)); - assert(F != 0); - UserDefinedFieldType* udf = reinterpret_cast(F->fieldtype()); -@@ -405,6 +411,7 @@ - - bool _nc_xx_next_choice(FIELD *f, const void *u) - { -+ (void) f; - NCursesFormField* F = reinterpret_cast(const_cast(u)); - assert(F != 0); - UserDefinedFieldType_With_Choice* udf = -@@ -415,6 +422,7 @@ - - bool _nc_xx_prev_choice(FIELD *f, const void *u) - { -+ (void) f; - NCursesFormField* F = reinterpret_cast(const_cast(u)); - assert(F != 0); - UserDefinedFieldType_With_Choice* udf = -diff -Naur ncurses-5.9/c++/cursesf.h ncurses-5.9.patch/c++/cursesf.h ---- ncurses-5.9/c++/cursesf.h 2005-08-13 20:08:24.000000000 +0200 -+++ ncurses-5.9.patch/c++/cursesf.h 2014-09-01 16:33:22.239791928 +0200 -@@ -1,6 +1,6 @@ - // * This makes emacs happy -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2004,2005 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -31,7 +31,7 @@ - * Author: Juergen Pfeifer, 1997 * - ****************************************************************************/ - --// $Id: cursesf.h,v 1.28 2005/08/13 18:08:24 tom Exp $ -+// $Id: cursesf.h,v 1.31 2012/12/29 21:49:58 tom Exp $ - - #ifndef NCURSES_CURSESF_H_incl - #define NCURSES_CURSESF_H_incl 1 -@@ -61,7 +61,7 @@ - protected: - FIELDTYPE* fieldtype; - -- inline void OnError(int err) const THROWS(NCursesFormException) { -+ inline void OnError(int err) const THROW2(NCursesException const, NCursesFormException) { - if (err!=E_OK) - THROW(new NCursesFormException (err)); - } -@@ -109,7 +109,7 @@ - NCursesFieldType* ftype; // Associated field type - - // Error handler -- inline void OnError (int err) const THROWS(NCursesFormException) { -+ inline void OnError (int err) const THROW2(NCursesException const, NCursesFormException) { - if (err != E_OK) - THROW(new NCursesFormException (err)); - } -@@ -391,7 +391,7 @@ - bool with_frame, - bool autoDeleteFields); - -- inline void OnError (int err) const THROWS(NCursesFormException) { -+ inline void OnError (int err) const THROW2(NCursesException const, NCursesFormException) { - if (err != E_OK) - THROW(new NCursesFormException (err)); - } -@@ -677,7 +677,7 @@ - } - - public: -- NCursesUserForm (NCursesFormField Fields[], -+ NCursesUserForm (NCursesFormField* Fields[], - const T* p_UserData = STATIC_CAST(T*)(0), - bool with_frame=FALSE, - bool autoDelete_Fields=FALSE) -@@ -686,7 +686,7 @@ - set_user (const_cast(p_UserData)); - }; - -- NCursesUserForm (NCursesFormField Fields[], -+ NCursesUserForm (NCursesFormField* Fields[], - int nlines, - int ncols, - int begin_y = 0, -diff -Naur ncurses-5.9/c++/cursesmain.cc ncurses-5.9.patch/c++/cursesmain.cc ---- ncurses-5.9/c++/cursesmain.cc 2007-04-07 19:10:11.000000000 +0200 -+++ ncurses-5.9.patch/c++/cursesmain.cc 2014-09-01 16:33:22.239791928 +0200 -@@ -1,6 +1,6 @@ - // * this is for making emacs happy: -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2003,2007 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2007,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,13 +35,15 @@ - #include "cursesapp.h" - - #if CPP_HAS_TRY_CATCH && HAVE_IOSTREAM -+#pragma GCC diagnostic ignored "-Weffc++" - #include -+#pragma GCC diagnostic warning "-Weffc++" - #else - #undef CPP_HAS_TRY_CATCH - #define CPP_HAS_TRY_CATCH 0 - #endif - --MODULE_ID("$Id: cursesmain.cc,v 1.14 2007/04/07 17:10:11 tom Exp $") -+MODULE_ID("$Id: cursesmain.cc,v 1.15 2013/09/28 20:56:47 tom Exp $") - - #if HAVE_LOCALE_H - #include -diff -Naur ncurses-5.9/c++/cursesm.cc ncurses-5.9.patch/c++/cursesm.cc ---- ncurses-5.9/c++/cursesm.cc 2005-04-02 22:39:05.000000000 +0200 -+++ ncurses-5.9.patch/c++/cursesm.cc 2014-09-01 16:33:22.239791928 +0200 -@@ -1,6 +1,6 @@ - // * this is for making emacs happy: -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2003,2005 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2005,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,7 +35,7 @@ - #include "cursesm.h" - #include "cursesapp.h" - --MODULE_ID("$Id: cursesm.cc,v 1.22 2005/04/02 20:39:05 tom Exp $") -+MODULE_ID("$Id: cursesm.cc,v 1.23 2011/09/17 22:11:32 tom Exp $") - - NCursesMenuItem::~NCursesMenuItem() - { -@@ -375,33 +375,39 @@ - void - NCursesMenu::On_Item_Init(NCursesMenuItem& item) - { -+ (void) item; - } - - void - NCursesMenu::On_Item_Termination(NCursesMenuItem& item) - { -+ (void) item; - } - - void - NCursesMenu::On_Request_Denied(int c) const - { -+ (void) c; - ::beep(); - } - - void - NCursesMenu::On_Not_Selectable(int c) const - { -+ (void) c; - ::beep(); - } - - void - NCursesMenu::On_No_Match(int c) const - { -+ (void) c; - ::beep(); - } - - void - NCursesMenu::On_Unknown_Command(int c) const - { -+ (void) c; - ::beep(); - } -diff -Naur ncurses-5.9/c++/cursesm.h ncurses-5.9.patch/c++/cursesm.h ---- ncurses-5.9/c++/cursesm.h 2005-08-13 20:10:36.000000000 +0200 -+++ ncurses-5.9.patch/c++/cursesm.h 2014-09-01 16:33:22.239791928 +0200 -@@ -1,6 +1,6 @@ - // * This makes emacs happy -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2003,2005 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -31,7 +31,7 @@ - * Author: Juergen Pfeifer, 1997 * - ****************************************************************************/ - --// $Id: cursesm.h,v 1.25 2005/08/13 18:10:36 tom Exp $ -+// $Id: cursesm.h,v 1.29 2012/12/29 21:48:33 tom Exp $ - - #ifndef NCURSES_CURSESM_H_incl - #define NCURSES_CURSESM_H_incl 1 -@@ -53,7 +53,7 @@ - protected: - ITEM *item; - -- inline void OnError (int err) const THROWS(NCursesMenuException) { -+ inline void OnError (int err) const THROW2(NCursesException const, NCursesMenuException) { - if (err != E_OK) - THROW(new NCursesMenuException (err)); - } -@@ -82,6 +82,7 @@ - NCursesMenuItem(const NCursesMenuItem& rhs) - : item(0) - { -+ (void) rhs; - } - - virtual ~NCursesMenuItem (); -@@ -252,7 +253,7 @@ - bool with_frame, - bool autoDeleteItems); - -- inline void OnError (int err) const THROWS(NCursesMenuException) { -+ inline void OnError (int err) const THROW2(NCursesException const, NCursesMenuException) { - if (err != E_OK) - THROW(new NCursesMenuException (this, err)); - } -@@ -635,7 +636,7 @@ - } - - public: -- NCursesUserMenu (NCursesMenuItem Items[], -+ NCursesUserMenu (NCursesMenuItem* Items[], - const T* p_UserData = STATIC_CAST(T*)(0), - bool with_frame=FALSE, - bool autoDelete_Items=FALSE) -@@ -644,7 +645,7 @@ - set_user (const_cast(p_UserData)); - }; - -- NCursesUserMenu (NCursesMenuItem Items[], -+ NCursesUserMenu (NCursesMenuItem* Items[], - int nlines, - int ncols, - int begin_y = 0, -diff -Naur ncurses-5.9/c++/cursespad.cc ncurses-5.9.patch/c++/cursespad.cc ---- ncurses-5.9/c++/cursespad.cc 2008-08-04 20:59:22.000000000 +0200 -+++ ncurses-5.9.patch/c++/cursespad.cc 2014-09-01 16:33:22.240791930 +0200 -@@ -1,6 +1,6 @@ - // * this is for making emacs happy: -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -33,10 +33,9 @@ - - #include "internal.h" - --#include - #include - --MODULE_ID("$Id: cursespad.cc,v 1.13 2008/08/04 18:59:22 tom Exp $") -+MODULE_ID("$Id: cursespad.cc,v 1.17 2013/03/30 19:45:36 tom Exp $") - - NCursesPad::NCursesPad(int nlines, int ncols) - : NCursesWindow(), -@@ -220,6 +219,7 @@ - - void NCursesFramedPad::OnOperation(int pad_req) - { -+ (void) pad_req; - NCursesWindow* W = Win(); - NCursesWindow* W2 = getWindow(); - -@@ -228,25 +228,45 @@ - int Height = W->height(); - int i, row, col, h_len, v_len; - -- h_len = (Width*Width + width() - 1)/width(); -- if (h_len==0) -+ int my_width = width(); -+ -+ if (my_width != 0) { -+ h_len = (Width*Width + my_width - 1) / my_width; -+ if (h_len==0) -+ h_len = 1; -+ if (h_len > Width) -+ h_len = Width; -+ } else { - h_len = 1; -- if (h_len > Width) -- h_len = Width; -+ } - -- v_len = (Height*Height + height() - 1)/height(); -- if (v_len==0) -+ int my_height = height(); -+ -+ if (my_height != 0) { -+ v_len = (Height*Height + my_height - 1) / my_height; -+ if (v_len==0) -+ v_len = 1; -+ if (v_len > Height) -+ v_len = Height; -+ } else { - v_len = 1; -- if (v_len > Height) -- v_len = Height; -+ } - -- col = (min_col * Width + width() - 1) / width(); -- if (col + h_len > Width) -- col = Width - h_len; -- -- row = (min_row * Height + height() - 1) / height(); -- if (row + v_len > Height) -- row = Height - v_len; -+ if (my_width != 0) { -+ col = (min_col * Width + my_width - 1) / my_width; -+ if (col + h_len > Width) -+ col = Width - h_len; -+ } else { -+ col = 0; -+ } -+ -+ if (my_height != 0) { -+ row = (min_row * Height + my_height - 1) / my_height; -+ if (row + v_len > Height) -+ row = Height - v_len; -+ } else { -+ row = 0; -+ } - - W2->vline(1,Width+1,Height); - W2->attron(A_REVERSE); -diff -Naur ncurses-5.9/c++/cursesp.h ncurses-5.9.patch/c++/cursesp.h ---- ncurses-5.9/c++/cursesp.h 2008-08-16 19:20:23.000000000 +0200 -+++ ncurses-5.9.patch/c++/cursesp.h 2014-09-01 16:33:22.240791930 +0200 -@@ -1,6 +1,6 @@ - // * This makes emacs happy -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2008,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,7 +34,7 @@ - #ifndef NCURSES_CURSESP_H_incl - #define NCURSES_CURSESP_H_incl 1 - --// $Id: cursesp.h,v 1.29 2008/08/16 17:20:23 tom Exp $ -+// $Id: cursesp.h,v 1.30 2012/12/29 21:50:55 tom Exp $ - - #include - -@@ -86,7 +86,7 @@ - return result; - } - -- void OnError (int err) const THROWS(NCursesPanelException) -+ void OnError (int err) const THROW2(NCursesException const, NCursesPanelException) - { - if (err==ERR) - THROW(new NCursesPanelException (this, err)); -diff -Naur ncurses-5.9/c++/cursesw.cc ncurses-5.9.patch/c++/cursesw.cc ---- ncurses-5.9/c++/cursesw.cc 2009-03-28 22:31:37.000000000 +0100 -+++ ncurses-5.9.patch/c++/cursesw.cc 2014-09-01 16:33:22.240791930 +0200 -@@ -1,6 +1,6 @@ - // * this is for making emacs happy: -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 2007-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 2007-2012,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,7 +42,7 @@ - #include "internal.h" - #include "cursesw.h" - --MODULE_ID("$Id: cursesw.cc,v 1.51 2009/03/28 21:31:37 tom Exp $") -+MODULE_ID("$Id: cursesw.cc,v 1.54 2014/02/01 22:10:42 tom Exp $") - - #define COLORS_NEED_INITIALIZATION -1 - #define COLORS_NOT_INITIALIZED 0 -@@ -192,7 +192,6 @@ - constructing(); - - w = static_cast(0); -- set_keyboard(); - } - - NCursesWindow::NCursesWindow(int nlines, int ncols, int begin_y, int begin_x) -@@ -285,12 +284,14 @@ - NCursesWindow::NCursesWindow(WINDOW *win, int ncols) - : w(0), alloced(FALSE), par(0), subwins(0), sib(0) - { -+ (void) ncols; - initialize(); - w = win; - } - - int _nc_xx_ripoff_init(WINDOW *w, int ncols) - { -+ (void) ncols; - int res = ERR; - - RIPOFFINIT init = *prip++; -@@ -400,16 +401,16 @@ - } - } - --short -+NCURSES_PAIRS_T - NCursesWindow::getPair() const - { -- return static_cast(PAIR_NUMBER(getattrs(w))); -+ return static_cast(PAIR_NUMBER(getattrs(w))); - } - --short -+NCURSES_COLOR_T - NCursesWindow::getcolor(int getback) const - { -- short fore, back; -+ NCURSES_COLOR_T fore, back; - - if (HaveColors()) { - if (::pair_content(getPair(), &fore, &back) == ERR) -@@ -427,27 +428,27 @@ - return (HaveColors()) ? COLORS : 1; - } - --short -+NCURSES_PAIRS_T - NCursesWindow::getcolor() const - { - return (HaveColors()) ? getPair() : 0; - } - - int --NCursesWindow::setpalette(short fore, short back, short pair) -+NCursesWindow::setpalette(NCURSES_COLOR_T fore, NCURSES_COLOR_T back, NCURSES_PAIRS_T pair) - { - return (HaveColors()) ? ::init_pair(pair, fore, back) : OK; - } - - int --NCursesWindow::setpalette(short fore, short back) -+NCursesWindow::setpalette(NCURSES_COLOR_T fore, NCURSES_COLOR_T back) - { - return setpalette(fore, back, getPair()); - } - - - int --NCursesWindow::setcolor(short pair) -+NCursesWindow::setcolor(NCURSES_PAIRS_T pair) - { - if (HaveColors()) { - if ((pair < 1) || (pair > COLOR_PAIRS)) -diff -Naur ncurses-5.9/c++/cursesw.h ncurses-5.9.patch/c++/cursesw.h ---- ncurses-5.9/c++/cursesw.h 2008-01-19 22:09:10.000000000 +0100 -+++ ncurses-5.9.patch/c++/cursesw.h 2014-09-01 16:33:22.241791932 +0200 -@@ -1,7 +1,7 @@ - // * This makes emacs happy -*-Mode: C++;-*- - // vile:cppmode - /**************************************************************************** -- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -31,7 +31,7 @@ - #ifndef NCURSES_CURSESW_H_incl - #define NCURSES_CURSESW_H_incl 1 - --// $Id: cursesw.h,v 1.48 2008/01/19 21:09:10 tom Exp $ -+// $Id: cursesw.h,v 1.50 2014/02/01 22:17:37 tom Exp $ - - #include - -@@ -118,7 +118,7 @@ - #endif - - #ifdef chgat --inline int UNDEF(chgat)(int n, attr_t attr, short color, const void *opts) { -+inline int UNDEF(chgat)(int n, attr_t attr, NCURSES_PAIRS_T color, const void *opts) { - return chgat(n, attr, color, opts); } - #undef chgat - #define chgat UNDEF(chgat) -@@ -151,7 +151,7 @@ - #endif - - #ifdef color_set --inline chtype UNDEF(color_set)(short p, void* opts) { return color_set(p, opts); } -+inline chtype UNDEF(color_set)(NCURSES_PAIRS_T p, void* opts) { return color_set(p, opts); } - #undef color_set - #define color_set UNDEF(color_set) - #endif -@@ -361,7 +361,7 @@ - - #ifdef mvchgat - inline int UNDEF(mvchgat)(int y, int x, int n, -- attr_t attr, short color, const void *opts) { -+ attr_t attr, NCURSES_PAIRS_T color, const void *opts) { - return mvchgat(y, x, n, attr, color, opts); } - #undef mvchgat - #define mvchgat UNDEF(mvchgat) -@@ -463,7 +463,7 @@ - - #ifdef mvwchgat - inline int UNDEF(mvwchgat)(WINDOW *win, int y, int x, int n, -- attr_t attr, short color, const void *opts) { -+ attr_t attr, NCURSES_PAIRS_T color, const void *opts) { - return mvwchgat(win, y, x, n, attr, color, opts); } - #undef mvwchgat - #define mvwchgat UNDEF(mvwchgat) -@@ -763,10 +763,10 @@ - - void set_keyboard(); - -- short getcolor(int getback) const; -- short getPair() const; -+ NCURSES_COLOR_T getcolor(int getback) const; -+ NCURSES_PAIRS_T getPair() const; - -- static int setpalette(short fore, short back, short pair); -+ static int setpalette(NCURSES_COLOR_T fore, NCURSES_COLOR_T back, NCURSES_PAIRS_T pair); - static int colorInitialized; - - // This private constructor is only used during the initialization -@@ -896,19 +896,19 @@ - int maxy() const { return getmaxy(w) == ERR ? ERR : getmaxy(w)-1; } - // Largest y coord in window - -- short getcolor() const; -+ NCURSES_PAIRS_T getcolor() const; - // Actual color pair - -- short foreground() const { return getcolor(0); } -+ NCURSES_COLOR_T foreground() const { return getcolor(0); } - // Actual foreground color - -- short background() const { return getcolor(1); } -+ NCURSES_COLOR_T background() const { return getcolor(1); } - // Actual background color - -- int setpalette(short fore, short back); -+ int setpalette(NCURSES_COLOR_T fore, NCURSES_COLOR_T back); - // Set color palette entry - -- int setcolor(short pair); -+ int setcolor(NCURSES_PAIRS_T pair); - // Set actually used palette entry - - // ------------------------------------------------------------------------- -@@ -1107,18 +1107,18 @@ - chtype attrget() { return ::getattrs(w); } - // Get the window attributes; - -- int color_set(short color_pair_number, void* opts=NULL) { -+ int color_set(NCURSES_PAIRS_T color_pair_number, void* opts=NULL) { - return ::wcolor_set(w, color_pair_number, opts); } - // Set the window color attribute; - -- int chgat(int n, attr_t attr, short color, const void *opts=NULL) { -+ int chgat(int n, attr_t attr, NCURSES_PAIRS_T color, const void *opts=NULL) { - return ::wchgat(w, n, attr, color, opts); } - // Change the attributes of the next n characters in the current line. If - // n is negative or greater than the number of remaining characters in the - // line, the attributes will be changed up to the end of the line. - - int chgat(int y, int x, -- int n, attr_t attr, short color, const void *opts=NULL) { -+ int n, attr_t attr, NCURSES_PAIRS_T color, const void *opts=NULL) { - return ::mvwchgat(w, y, x, n, attr, color, opts); } - // Move the cursor to the requested position and then perform chgat() as - // described above. -@@ -1438,16 +1438,19 @@ - // The driver translates the keystroke c into an Pad_Request - - virtual void OnUnknownOperation(int pad_req) { -+ (void) pad_req; - ::beep(); - } - // This is called if the driver returns an unknown op-code - - virtual void OnNavigationError(int pad_req) { -+ (void) pad_req; - ::beep(); - } - // This is called if a navigation request couldn't be satisfied - - virtual void OnOperation(int pad_req) { -+ (void) pad_req; - }; - // OnOperation is called if a Pad_Operation was executed and just before - // the refresh() operation is done. -@@ -1542,11 +1545,15 @@ - } - - void setWindow(NCursesWindow& view, int v_grid = 1, int h_grid = 1) { -+ (void) view; -+ (void) v_grid; -+ (void) h_grid; - err_handler("Operation not allowed"); - } - // Disable this call; the viewport is already defined - - void setSubWindow(NCursesWindow& sub) { -+ (void) sub; - err_handler("Operation not allowed"); - } - // Disable this call; the viewport subwindow is already defined -diff -Naur ncurses-5.9/c++/cursslk.cc ncurses-5.9.patch/c++/cursslk.cc ---- ncurses-5.9/c++/cursslk.cc 2005-08-07 00:12:36.000000000 +0200 -+++ ncurses-5.9.patch/c++/cursslk.cc 2014-09-01 16:33:22.241791932 +0200 -@@ -1,6 +1,6 @@ - // * this is for making emacs happy: -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2003,2005 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2005,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,14 +35,15 @@ - #include "cursslk.h" - #include "cursesapp.h" - --MODULE_ID("$Id: cursslk.cc,v 1.15 2005/08/06 22:12:36 tom Exp $") -+MODULE_ID("$Id: cursslk.cc,v 1.16 2012/02/23 10:41:56 tom Exp $") - - Soft_Label_Key_Set::Soft_Label_Key& - Soft_Label_Key_Set::Soft_Label_Key::operator=(char *text) - { - delete[] label; -- label = new char[1 + ::strlen(text)]; -- (::strcpy)(label,text); -+ size_t need = 1 + ::strlen(text); -+ label = new char[need]; -+ ::_nc_STRCPY(label,text,need); - return *this; - } - -diff -Naur ncurses-5.9/c++/demo.cc ncurses-5.9.patch/c++/demo.cc ---- ncurses-5.9/c++/demo.cc 2008-12-07 03:07:34.000000000 +0100 -+++ ncurses-5.9.patch/c++/demo.cc 2014-09-01 16:33:22.241791932 +0200 -@@ -1,6 +1,6 @@ - // * This makes emacs happy -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,7 +35,7 @@ - * Demo code for NCursesMenu and NCursesForm written by - * Juergen Pfeifer - * -- * $Id: demo.cc,v 1.39 2008/12/07 02:07:34 juergen Exp $ -+ * $Id: demo.cc,v 1.41 2012/02/23 10:41:56 tom Exp $ - */ - - #include "internal.h" -@@ -220,6 +220,7 @@ - int chk; - protected: - bool field_check(NCursesFormField& f) { -+ (void) f; - return TRUE; - } - bool char_check(int c) { -@@ -319,7 +320,7 @@ - for(int i=1; i <= S->labels(); i++) { - char buf[8]; - assert(i < 100); -- ::sprintf(buf, "Frm%02d", i); -+ ::_nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) "Frm%02d", i); - (*S)[i] = buf; // Text - (*S)[i] = Soft_Label_Key_Set::Soft_Label_Key::Left; // Justification - } -@@ -539,7 +540,7 @@ - for(int i=1; i <= S.labels(); i++) { - char buf[8]; - assert(i < 100); -- ::sprintf(buf, "Key%02d", i); -+ ::_nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) "Key%02d", i); - S[i] = buf; // Text - S[i] = Soft_Label_Key_Set::Soft_Label_Key::Left; // Justification - } -diff -Naur ncurses-5.9/c++/etip.h.in ncurses-5.9.patch/c++/etip.h.in ---- ncurses-5.9/c++/etip.h.in 2008-08-30 21:27:32.000000000 +0200 -+++ ncurses-5.9.patch/c++/etip.h.in 2014-09-01 16:33:22.242791933 +0200 -@@ -1,6 +1,6 @@ - // * This makes emacs happy -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -31,7 +31,7 @@ - * Author: Juergen Pfeifer, 1997 * - ****************************************************************************/ - --// $Id: etip.h.in,v 1.37 2008/08/30 19:27:32 tom Exp $ -+// $Id: etip.h.in,v 1.39 2012/12/29 21:50:44 tom Exp $ - - #ifndef NCURSES_ETIP_H_incl - #define NCURSES_ETIP_H_incl 1 -@@ -184,7 +184,7 @@ - - NCursesPanelException (const char *msg, int err) : - NCursesException (msg, err), -- p (NULL) -+ p (0) - {}; - - NCursesPanelException (const NCursesPanel* panel, -@@ -196,7 +196,7 @@ - - NCursesPanelException (int err) : - NCursesException ("panel library error", err), -- p (NULL) -+ p (0) - {}; - - NCursesPanelException (const NCursesPanel* panel, -@@ -235,7 +235,7 @@ - - NCursesMenuException (const char *msg, int err) : - NCursesException (msg, err), -- m (NULL) -+ m (0) - {}; - - NCursesMenuException (const NCursesMenu* menu, -@@ -247,7 +247,7 @@ - - NCursesMenuException (int err) : - NCursesException ("menu library error", err), -- m (NULL) -+ m (0) - {}; - - NCursesMenuException (const NCursesMenu* menu, -@@ -286,7 +286,7 @@ - - NCursesFormException (const char *msg, int err) : - NCursesException (msg, err), -- f (NULL) -+ f (0) - {}; - - NCursesFormException (const NCursesForm* form, -@@ -298,7 +298,7 @@ - - NCursesFormException (int err) : - NCursesException ("form library error", err), -- f (NULL) -+ f (0) - {}; - - NCursesFormException (const NCursesForm* form, -@@ -367,11 +367,13 @@ - #define NCURSES_CPP_TRY /* nothing */ - #define NCURSES_CPP_CATCH(e) if (false) - #define THROWS(s) /* nothing */ -+#define THROW2(s,t) /* nothing */ - #elif CPP_HAS_TRY_CATCH - throw *e; - #define NCURSES_CPP_TRY try - #define NCURSES_CPP_CATCH(e) catch(e) - #define THROWS(s) throw(s) -+#define THROW2(s,t) throw(s,t) - #endif - } - -diff -Naur ncurses-5.9/c++/internal.h ncurses-5.9.patch/c++/internal.h ---- ncurses-5.9/c++/internal.h 2008-12-07 03:07:34.000000000 +0100 -+++ ncurses-5.9.patch/c++/internal.h 2014-09-01 16:33:22.242791933 +0200 -@@ -1,6 +1,6 @@ - // * This makes emacs happy -*-Mode: C++;-*- - /**************************************************************************** -- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2008,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -31,7 +31,7 @@ - * Author: Juergen Pfeifer, 1997 * - ****************************************************************************/ - --// $Id: internal.h,v 1.17 2008/12/07 02:07:34 juergen Exp $ -+// $Id: internal.h,v 1.18 2012/02/23 10:41:56 tom Exp $ - - #ifndef NCURSES_CPLUS_INTERNAL_H - #define NCURSES_CPLUS_INTERNAL_H 1 -@@ -62,4 +62,6 @@ - #define NULL 0 - #endif - -+#include -+ - #endif /* NCURSES_CPLUS_INTERNAL_H */ -diff -Naur ncurses-5.9/c++/Makefile.in ncurses-5.9.patch/c++/Makefile.in ---- ncurses-5.9/c++/Makefile.in 2010-11-27 22:45:27.000000000 +0100 -+++ ncurses-5.9.patch/c++/Makefile.in 2014-09-01 16:33:22.237791925 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.93 2010/11/27 21:45:27 tom Exp $ -+# $Id: Makefile.in,v 1.106 2013/08/04 20:20:45 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -47,8 +47,12 @@ - srcdir = @srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ -+bindir = @bindir@ - libdir = @libdir@ - includedir = @includedir@ -+includesubdir = @includesubdir@ -+ -+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir) - - LIBTOOL = @LIBTOOL_CXX@ - LIBTOOL_CLEAN = @LIB_CLEAN@ -@@ -65,6 +69,9 @@ - - AR = @AR@ - ARFLAGS = @ARFLAGS@ -+AWK = @AWK@ -+LD = @LD@ -+LN_S = @LN_S@ - - CXX_AR = @CXX_AR@ - CXX_ARFLAGS = @CXX_ARFLAGS@ -@@ -109,35 +116,41 @@ - LIBNAME_NORMAL = @LIB_PREFIX@$(LIBROOT)@LIB_SUFFIX@.a - LIBNAME = @LIB_PREFIX@$(LIBROOT)@CXX_LIB_SUFFIX@ - --MY_LIBRARY = ../lib/$(LIBNAME) -+LIBRARIES = @Libs_To_Make@ - - LINK_FLAGS = @EXTRA_LDFLAGS@ -L../lib -l$(LIBROOT)@LIB_SUFFIX@ -+RPATH_LIST = @RPATH_LIST@ -+MK_SHARED_LIB = @MK_SHARED_LIB@ - --LINK_LIBTOOL = @EXTRA_LDFLAGS@ -L../lib $(MY_LIBRARY) -+LINK_LIBTOOL = @EXTRA_LDFLAGS@ -L../lib $(LIBRARIES) - LINK_NORMAL = $(LINK_FLAGS) - LINK_DEBUG = $(LINK_FLAGS) - LINK_PROFILE = $(LINK_FLAGS) - LINK_SHARED = $(LINK_FLAGS) - -+# flags for test-programs - TEST_LIBS = @TEST_LIBS@ - TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@ -- --LDFLAGS = $(TEST_ARGS) @LDFLAGS@ \ -+TEST_LDFLAGS = $(TEST_ARGS) @LDFLAGS@ \ - @LD_MODEL@ $(TEST_LIBS) @LIBS@ @LOCAL_LDFLAGS@ $(CXXLIBS) - --LDFLAGS_LIBTOOL = $(LDFLAGS) $(CFLAGS_LIBTOOL) --LDFLAGS_NORMAL = $(LDFLAGS) $(CFLAGS_NORMAL) --LDFLAGS_DEBUG = $(LDFLAGS) $(CFLAGS_DEBUG) --LDFLAGS_PROFILE = $(LDFLAGS) $(CFLAGS_PROFILE) --LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@ -+LDFLAGS_LIBTOOL = $(TEST_LDFLAGS) $(CFLAGS_LIBTOOL) -+LDFLAGS_NORMAL = $(TEST_LDFLAGS) $(CFLAGS_NORMAL) -+LDFLAGS_DEBUG = $(TEST_LDFLAGS) $(CFLAGS_DEBUG) -+LDFLAGS_PROFILE = $(TEST_LDFLAGS) $(CFLAGS_PROFILE) -+LDFLAGS_SHARED = $(TEST_LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@ - - LDFLAGS_DEFAULT = $(LINK_@DFT_UPR_MODEL@) $(LDFLAGS_@DFT_UPR_MODEL@) - -+# flags for library built by this makefile -+LDFLAGS = $(TEST_ARGS) @LDFLAGS@ \ -+ @LD_MODEL@ $(TEST_LIBS) @LIBS@ $(CXXLIBS) -+ - AUTO_SRC = \ - etip.h - - all \ --libs :: $(AUTO_SRC) $(MY_LIBRARY) -+libs :: $(AUTO_SRC) $(LIBRARIES) - - @MAKE_TESTS@all :: demo$x - -@@ -148,61 +161,16 @@ - tags: - $(CTAGS) *.[h] *.cc - --# Build a conventional library for installing, since a shared library would --# pull in all of the ncurses libraries (panel, menu, form, ncurses) as direct --# dependencies. --LIB_OBJS = \ -- $(MODEL)/cursesf$o \ -- $(MODEL)/cursesm$o \ -- $(MODEL)/cursesw$o \ -- $(MODEL)/cursespad$o \ -- $(MODEL)/cursesp$o \ -- $(MODEL)/cursslk$o \ -- $(MODEL)/cursesapp$o \ -- $(MODEL)/cursesmain$o -- --../lib/$(LIBNAME_NORMAL) : $(LIB_OBJS) -- $(CXX_AR) $(CXX_ARFLAGS) $@ $? -- $(RANLIB) $@ -- --../lib/$(LIBNAME_LIBTOOL) : $(LIB_OBJS) -- cd ../lib && $(LIBTOOL_LINK) $(CXX) $(CXXFLAGS) \ -- -o $(LIBNAME) $(LIB_OBJS:$o=.lo) \ -- -rpath $(INSTALL_PREFIX)$(libdir) \ -- $(LIBTOOL_VERSION) $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(SHLIB_LIST) -- --OBJS_DEMO = $(MODEL)/demo$o -- --$(MODEL)/demo$o : $(srcdir)/demo.cc \ -- $(cursesf_h) $(cursesm_h) $(cursesapp_h) -- --demo$x: $(OBJS_DEMO) \ -- $(MY_LIBRARY) \ -- @TEST_DEPS@ -- @ECHO_LINK@ $(LINK) -o $@ $(OBJS_DEMO) $(LDFLAGS_DEFAULT) -- --etip.h: $(srcdir)/etip.h.in $(srcdir)/edit_cfg.sh -- cp $(srcdir)/etip.h.in $@ -- sh $(srcdir)/edit_cfg.sh ../include/ncurses_cfg.h $@ -- - $(DESTDIR)$(libdir) : - mkdir -p $@ - --install \ --install.libs:: $(MY_LIBRARY) $(DESTDIR)$(libdir) -- $(LIBTOOL_INSTALL) $(INSTALL_LIB) $(MY_LIBRARY) $(DESTDIR)$(libdir)/$(LIBNAME) -- --uninstall \ --uninstall.libs:: -- -$(LIBTOOL_UNINSTALL) rm -f $(DESTDIR)$(libdir)/$(LIBNAME) -- - mostlyclean :: - -rm -f core tags TAGS *~ *.bak *.i *.ii *.ln *.atac trace - - clean :: mostlyclean - -sh -c "if test -n '$x' ; then $(MAKE) clean x=''; fi" - -rm -rf $(MODEL)/SunWS_cache -- -$(LIBTOOL_CLEAN) rm -f demo$x $(AUTO_SRC) $(MY_LIBRARY) $(LIB_OBJS) $(OBJS_DEMO) -+ -$(LIBTOOL_CLEAN) rm -f demo$x $(AUTO_SRC) $(LIBRARIES) $(OBJS_DEMO) - -rm -rf .libs - - distclean :: clean -@@ -212,8 +180,16 @@ - - ############################################################################### - -+internal_h = $(srcdir)/internal.h \ -+ $(INCDIR)/ncurses_cfg.h \ -+ $(INCDIR)/nc_mingw.h \ -+ $(INCDIR)/nc_string.h -+ -+etip_h = etip.h \ -+ $(INCDIR)/ncurses_dll.h -+ - cursesw_h = $(srcdir)/cursesw.h \ -- etip.h \ -+ $(etip_h) \ - $(INCDIR)/curses.h - - cursesp_h = $(srcdir)/cursesp.h \ -@@ -244,5 +220,26 @@ - cd ../panel && $(MAKE) $@ - - ############################################################################### -+ -+OBJS_DEMO = $(MODEL)/demo$o -+ -+$(MODEL)/demo$o : $(srcdir)/demo.cc \ -+ $(internal_h) \ -+ $(cursesf_h) \ -+ $(cursesm_h) \ -+ $(cursesapp_h) -+ @echo 'compiling demo (obj_s)' -+ @$(LIBTOOL_COMPILE) $(CXX) $(CFLAGS_DEFAULT) -c $(srcdir)/demo.cc -o $@ -+ -+demo$x: $(OBJS_DEMO) \ -+ $(LIBRARIES) \ -+ @TEST_DEPS@ -+ @ECHO_LD@ $(LINK) -o $@ $(OBJS_DEMO) $(LDFLAGS_DEFAULT) -+ -+etip.h: $(srcdir)/etip.h.in $(srcdir)/edit_cfg.sh -+ cp $(srcdir)/etip.h.in $@ -+ sh $(srcdir)/edit_cfg.sh ../include/ncurses_cfg.h $@ -+ -+############################################################################### - # The remainder of this file is automatically generated during configuration - ############################################################################### -diff -Naur ncurses-5.9/c++/modules ncurses-5.9.patch/c++/modules ---- ncurses-5.9/c++/modules 2006-12-24 01:53:08.000000000 +0100 -+++ ncurses-5.9.patch/c++/modules 2014-09-01 16:33:22.242791933 +0200 -@@ -1,7 +1,7 @@ - # Program modules --# $Id: modules,v 1.7 2006/12/24 00:53:08 tom Exp $ -+# $Id: modules,v 1.11 2013/03/30 19:41:11 tom Exp $ - ############################################################################## --# Copyright (c) 1998,2006 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2006,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -32,14 +32,13 @@ - # - - @ base --cursesf c++ $(srcdir) $(cursesf_h) $(cursesapp_h) --cursesm c++ $(srcdir) $(cursesm_h) $(cursesapp_h) --cursesp c++ $(srcdir) $(cursesp_h) --cursesw c++ $(srcdir) $(cursesw_h) --cursespad c++ $(srcdir) $(cursesw_h) --cursslk c++ $(srcdir) $(cursslk_h) $(cursesapp_h) --cursesapp c++ $(srcdir) $(cursesapp_h) --cursesmain c++ $(srcdir) $(cursesapp_h) --demo c++ $(srcdir) $(cursesf_h) $(cursesm_h) $(cursesapp_h) -+cursesf c++ $(srcdir) $(internal_h) $(cursesf_h) $(cursesapp_h) -+cursesm c++ $(srcdir) $(internal_h) $(cursesm_h) $(cursesapp_h) -+cursesw c++ $(srcdir) $(internal_h) $(cursesw_h) -+cursespad c++ $(srcdir) $(internal_h) $(cursesw_h) -+cursesp c++ $(srcdir) $(internal_h) $(cursesp_h) -+cursslk c++ $(srcdir) $(internal_h) $(cursesapp_h) -+cursesapp c++ $(srcdir) $(internal_h) $(cursesapp_h) -+cursesmain c++ $(srcdir) $(internal_h) $(cursesapp_h) $(INCDIR)/nc_alloc.h - - # vile:makemode -diff -Naur ncurses-5.9/config.guess ncurses-5.9.patch/config.guess ---- ncurses-5.9/config.guess 2010-09-29 01:11:39.000000000 +0200 -+++ ncurses-5.9.patch/config.guess 2014-09-01 16:33:22.243791935 +0200 -@@ -1,14 +1,12 @@ - #! /bin/sh - # Attempt to guess a canonical system name. --# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, --# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 --# Free Software Foundation, Inc. -+# Copyright 1992-2013 Free Software Foundation, Inc. - --timestamp='2010-09-24' -+timestamp='2013-06-10' - - # This file is free software; you can redistribute it and/or modify it - # under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 2 of the License, or -+# the Free Software Foundation; either version 3 of the License, or - # (at your option) any later version. - # - # This program is distributed in the hope that it will be useful, but -@@ -17,26 +15,22 @@ - # General Public License for more details. - # - # You should have received a copy of the GNU General Public License --# along with this program; if not, write to the Free Software --# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA --# 02110-1301, USA. -+# along with this program; if not, see . - # - # As a special exception to the GNU General Public License, if you - # distribute this file as part of a program that contains a - # configuration script generated by Autoconf, you may include it under --# the same distribution terms that you use for the rest of that program. -- -- --# Originally written by Per Bothner. Please send patches (context --# diff format) to and include a ChangeLog --# entry. -+# the same distribution terms that you use for the rest of that -+# program. This Exception is an additional permission under section 7 -+# of the GNU General Public License, version 3 ("GPLv3"). - # --# This script attempts to guess a canonical system name similar to --# config.sub. If it succeeds, it prints the system name on stdout, and --# exits with 0. Otherwise, it exits with 1. -+# Originally written by Per Bothner. - # - # You can get the latest version of this script from: - # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD -+# -+# Please send patches with a ChangeLog entry to config-patches@gnu.org. -+ - - me=`echo "$0" | sed -e 's,.*/,,'` - -@@ -56,9 +50,7 @@ - GNU config.guess ($timestamp) - - Originally written by Per Bothner. --Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, --2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free --Software Foundation, Inc. -+Copyright 1992-2013 Free Software Foundation, Inc. - - This is free software; see the source for copying conditions. There is NO - warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." -@@ -92,7 +84,7 @@ - exit 1 - fi - --trap 'exit 1' HUP INT TERM -+trap 'exit 1' 1 2 15 - - # CC_FOR_BUILD -- compiler used by this script. Note that the use of a - # compiler to aid in system detection is discouraged as it requires -@@ -106,7 +98,7 @@ - - set_cc_for_build=' - trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; --trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" HUP INT PIPE TERM ; -+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; - : ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || -@@ -140,12 +132,33 @@ - UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown - UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -+case "${UNAME_SYSTEM}" in -+Linux|GNU|GNU/*) -+ # If the system lacks a compiler, then just pick glibc. -+ # We could probably try harder. -+ LIBC=gnu -+ -+ eval $set_cc_for_build -+ cat <<-EOF > $dummy.c -+ #include -+ #if defined(__UCLIBC__) -+ LIBC=uclibc -+ #elif defined(__dietlibc__) -+ LIBC=dietlibc -+ #else -+ LIBC=gnu -+ #endif -+ EOF -+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` -+ ;; -+esac -+ - # Note: order is significant - the case branches are not exclusive. - - case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or -- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, -+ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward -@@ -202,6 +215,10 @@ - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}" - exit ;; -+ *:Bitrig:*:*) -+ UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` -+ echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} -+ exit ;; - *:OpenBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} -@@ -220,10 +237,10 @@ - exit ;; - alpha:OSF1:*:*) - case $UNAME_RELEASE in -- *4.0) -+ *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` - ;; -- *5.*) -+ *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` - ;; - esac -@@ -270,7 +287,10 @@ - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` -- exit ;; -+ # Reset EXIT trap before exiting to avoid spurious non-zero exit code. -+ exitcode=$? -+ trap '' 0 -+ exit $exitcode ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead -@@ -301,7 +321,7 @@ - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} - exit ;; -- arm:riscos:*:*|arm:RISCOS:*:*) -+ arm*:riscos:*:*|arm*:RISCOS:*:*) - echo arm-unknown-riscos - exit ;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) -@@ -326,8 +346,8 @@ - sparc) echo sparc-icl-nx7; exit ;; - esac ;; - s390x:SunOS:*:*) -- echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit ;; -+ echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -+ exit ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; -@@ -495,7 +515,7 @@ - else - echo i586-dg-dgux${UNAME_RELEASE} - fi -- exit ;; -+ exit ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 - exit ;; -@@ -597,50 +617,50 @@ - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in -- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 -- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 -- 532) # CPU_PA_RISC2_0 -- case "${sc_kernel_bits}" in -- 32) HP_ARCH="hppa2.0n" ;; -- 64) HP_ARCH="hppa2.0w" ;; -+ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 -+ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 -+ 532) # CPU_PA_RISC2_0 -+ case "${sc_kernel_bits}" in -+ 32) HP_ARCH="hppa2.0n" ;; -+ 64) HP_ARCH="hppa2.0w" ;; - '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 -- esac ;; -- esac -+ esac ;; -+ esac - fi - if [ "${HP_ARCH}" = "" ]; then - eval $set_cc_for_build -- sed 's/^ //' << EOF >$dummy.c -+ sed 's/^ //' << EOF >$dummy.c -+ -+ #define _HPUX_SOURCE -+ #include -+ #include - -- #define _HPUX_SOURCE -- #include -- #include -- -- int main () -- { -- #if defined(_SC_KERNEL_BITS) -- long bits = sysconf(_SC_KERNEL_BITS); -- #endif -- long cpu = sysconf (_SC_CPU_VERSION); -- -- switch (cpu) -- { -- case CPU_PA_RISC1_0: puts ("hppa1.0"); break; -- case CPU_PA_RISC1_1: puts ("hppa1.1"); break; -- case CPU_PA_RISC2_0: -- #if defined(_SC_KERNEL_BITS) -- switch (bits) -- { -- case 64: puts ("hppa2.0w"); break; -- case 32: puts ("hppa2.0n"); break; -- default: puts ("hppa2.0"); break; -- } break; -- #else /* !defined(_SC_KERNEL_BITS) */ -- puts ("hppa2.0"); break; -- #endif -- default: puts ("hppa1.0"); break; -- } -- exit (0); -- } -+ int main () -+ { -+ #if defined(_SC_KERNEL_BITS) -+ long bits = sysconf(_SC_KERNEL_BITS); -+ #endif -+ long cpu = sysconf (_SC_CPU_VERSION); -+ -+ switch (cpu) -+ { -+ case CPU_PA_RISC1_0: puts ("hppa1.0"); break; -+ case CPU_PA_RISC1_1: puts ("hppa1.1"); break; -+ case CPU_PA_RISC2_0: -+ #if defined(_SC_KERNEL_BITS) -+ switch (bits) -+ { -+ case 64: puts ("hppa2.0w"); break; -+ case 32: puts ("hppa2.0n"); break; -+ default: puts ("hppa2.0"); break; -+ } break; -+ #else /* !defined(_SC_KERNEL_BITS) */ -+ puts ("hppa2.0"); break; -+ #endif -+ default: puts ("hppa1.0"); break; -+ } -+ exit (0); -+ } - EOF - (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` - test -z "$HP_ARCH" && HP_ARCH=hppa -@@ -789,21 +809,26 @@ - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} - exit ;; - *:FreeBSD:*:*) -- case ${UNAME_MACHINE} in -- pc98) -- echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; -+ UNAME_PROCESSOR=`/usr/bin/uname -p` -+ case ${UNAME_PROCESSOR} in - amd64) - echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; - *) -- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; -+ echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; - esac - exit ;; - i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin - exit ;; -+ *:MINGW64*:*) -+ echo ${UNAME_MACHINE}-pc-mingw64 -+ exit ;; - *:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 - exit ;; -+ i*:MSYS*:*) -+ echo ${UNAME_MACHINE}-pc-msys -+ exit ;; - i*:windows32*:*) - # uname -m includes "-pc" on this system. - echo ${UNAME_MACHINE}-mingw32 -@@ -820,8 +845,8 @@ - echo x86_64-unknown-interix${UNAME_RELEASE} - exit ;; - IA64) -- echo ia64-unknown-interix${UNAME_RELEASE} -- exit ;; -+ echo ia64-unknown-interix${UNAME_RELEASE} -+ exit ;; - esac ;; - [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) - echo i${UNAME_MACHINE}-pc-mks -@@ -849,70 +874,81 @@ - exit ;; - *:GNU:*:*) - # the GNU system -- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` -+ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` - exit ;; - *:GNU/*:*:*) - # other systems with GNU libc and userland -- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu -+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} - exit ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix - exit ;; -+ aarch64:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} -+ exit ;; -+ aarch64_be:Linux:*:*) -+ UNAME_MACHINE=aarch64_be -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} -+ exit ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in -- EV5) UNAME_MACHINE=alphaev5 ;; -- EV56) UNAME_MACHINE=alphaev56 ;; -- PCA56) UNAME_MACHINE=alphapca56 ;; -- PCA57) UNAME_MACHINE=alphapca56 ;; -- EV6) UNAME_MACHINE=alphaev6 ;; -- EV67) UNAME_MACHINE=alphaev67 ;; -- EV68*) UNAME_MACHINE=alphaev68 ;; -+ EV5) UNAME_MACHINE=alphaev5 ;; -+ EV56) UNAME_MACHINE=alphaev56 ;; -+ PCA56) UNAME_MACHINE=alphapca56 ;; -+ PCA57) UNAME_MACHINE=alphapca56 ;; -+ EV6) UNAME_MACHINE=alphaev6 ;; -+ EV67) UNAME_MACHINE=alphaev67 ;; -+ EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep -q ld.so.1 -- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi -- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} -+ if test "$?" = 0 ; then LIBC="gnulibc1" ; fi -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} -+ exit ;; -+ arc:Linux:*:* | arceb:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - arm*:Linux:*:*) - eval $set_cc_for_build -- if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null | \ -- grep -q __ARM_EABI__ -+ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ -+ | grep -q __ARM_EABI__ - then -- echo ${UNAME_MACHINE}-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - else -- echo ${UNAME_MACHINE}-unknown-linux-gnueabi -+ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ -+ | grep -q __ARM_PCS_VFP -+ then -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi -+ else -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf -+ fi - fi - exit ;; - avr32*:Linux:*:*) -- echo ${UNAME_MACHINE}-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - cris:Linux:*:*) -- echo cris-axis-linux-gnu -+ echo ${UNAME_MACHINE}-axis-linux-${LIBC} - exit ;; - crisv32:Linux:*:*) -- echo crisv32-axis-linux-gnu -+ echo ${UNAME_MACHINE}-axis-linux-${LIBC} - exit ;; - frv:Linux:*:*) -- echo frv-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} -+ exit ;; -+ hexagon:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - i*86:Linux:*:*) -- LIBC=gnu -- eval $set_cc_for_build -- sed 's/^ //' << EOF >$dummy.c -- #ifdef __dietlibc__ -- LIBC=dietlibc -- #endif --EOF -- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` -- echo "${UNAME_MACHINE}-pc-linux-${LIBC}" -+ echo ${UNAME_MACHINE}-pc-linux-${LIBC} - exit ;; - ia64:Linux:*:*) -- echo ${UNAME_MACHINE}-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - m32r*:Linux:*:*) -- echo ${UNAME_MACHINE}-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - m68*:Linux:*:*) -- echo ${UNAME_MACHINE}-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - mips:Linux:*:* | mips64:Linux:*:*) - eval $set_cc_for_build -@@ -931,54 +967,63 @@ - #endif - EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` -- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } -+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } - ;; -+ or1k:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} -+ exit ;; - or32:Linux:*:*) -- echo or32-unknown-linux-gnu -- exit ;; -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} -+ exit ;; - padre:Linux:*:*) -- echo sparc-unknown-linux-gnu -+ echo sparc-unknown-linux-${LIBC} - exit ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) -- echo hppa64-unknown-linux-gnu -- exit ;; -+ echo hppa64-unknown-linux-${LIBC} -+ exit ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in -- PA7*) echo hppa1.1-unknown-linux-gnu ;; -- PA8*) echo hppa2.0-unknown-linux-gnu ;; -- *) echo hppa-unknown-linux-gnu ;; -+ PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; -+ PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; -+ *) echo hppa-unknown-linux-${LIBC} ;; - esac - exit ;; - ppc64:Linux:*:*) -- echo powerpc64-unknown-linux-gnu -+ echo powerpc64-unknown-linux-${LIBC} - exit ;; - ppc:Linux:*:*) -- echo powerpc-unknown-linux-gnu -+ echo powerpc-unknown-linux-${LIBC} -+ exit ;; -+ ppc64le:Linux:*:*) -+ echo powerpc64le-unknown-linux-${LIBC} -+ exit ;; -+ ppcle:Linux:*:*) -+ echo powerpcle-unknown-linux-${LIBC} - exit ;; - s390:Linux:*:* | s390x:Linux:*:*) -- echo ${UNAME_MACHINE}-ibm-linux -+ echo ${UNAME_MACHINE}-ibm-linux-${LIBC} - exit ;; - sh64*:Linux:*:*) -- echo ${UNAME_MACHINE}-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - sh*:Linux:*:*) -- echo ${UNAME_MACHINE}-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - sparc:Linux:*:* | sparc64:Linux:*:*) -- echo ${UNAME_MACHINE}-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - tile*:Linux:*:*) -- echo ${UNAME_MACHINE}-tilera-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - vax:Linux:*:*) -- echo ${UNAME_MACHINE}-dec-linux-gnu -+ echo ${UNAME_MACHINE}-dec-linux-${LIBC} - exit ;; - x86_64:Linux:*:*) -- echo x86_64-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - xtensa*:Linux:*:*) -- echo ${UNAME_MACHINE}-unknown-linux-gnu -+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. -@@ -1093,7 +1138,7 @@ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ -- && { echo i486-ncr-sysv4; exit; } ;; -+ && { echo i486-ncr-sysv4; exit; } ;; - NCR*:*:4.2:* | MPRAS*:*:4.2:*) - OS_REL='.3' - test -r /etc/.relid \ -@@ -1136,8 +1181,8 @@ - echo ns32k-sni-sysv - fi - exit ;; -- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort -- # says -+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort -+ # says - echo i586-unisys-sysv4 - exit ;; - *:UNIX_System_V:4*:FTX*) -@@ -1165,9 +1210,9 @@ - exit ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then -- echo mips-nec-sysv${UNAME_RELEASE} -+ echo mips-nec-sysv${UNAME_RELEASE} - else -- echo mips-unknown-sysv${UNAME_RELEASE} -+ echo mips-unknown-sysv${UNAME_RELEASE} - fi - exit ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. -@@ -1182,6 +1227,9 @@ - BePC:Haiku:*:*) # Haiku running on Intel PC compatible. - echo i586-pc-haiku - exit ;; -+ x86_64:Haiku:*:*) -+ echo x86_64-unknown-haiku -+ exit ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} - exit ;; -@@ -1208,26 +1256,28 @@ - exit ;; - *:Darwin:*:*) - UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown -- case $UNAME_PROCESSOR in -- i386) -- eval $set_cc_for_build -- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then -- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ -- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ -- grep IS_64BIT_ARCH >/dev/null -- then -- UNAME_PROCESSOR="x86_64" -- fi -- fi ;; -- unknown) UNAME_PROCESSOR=powerpc ;; -- esac -+ eval $set_cc_for_build -+ if test "$UNAME_PROCESSOR" = unknown ; then -+ UNAME_PROCESSOR=powerpc -+ fi -+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then -+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ -+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ -+ grep IS_64BIT_ARCH >/dev/null -+ then -+ case $UNAME_PROCESSOR in -+ i386) UNAME_PROCESSOR=x86_64 ;; -+ powerpc) UNAME_PROCESSOR=powerpc64 ;; -+ esac -+ fi -+ fi - echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} - exit ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` - if test "$UNAME_PROCESSOR" = "x86"; then -- UNAME_PROCESSOR=i386 -- UNAME_MACHINE=pc -+ UNAME_PROCESSOR=i386 -+ UNAME_MACHINE=pc - fi - echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} - exit ;; -@@ -1237,7 +1287,7 @@ - NEO-?:NONSTOP_KERNEL:*:*) - echo neo-tandem-nsk${UNAME_RELEASE} - exit ;; -- NSE-?:NONSTOP_KERNEL:*:*) -+ NSE-*:NONSTOP_KERNEL:*:*) - echo nse-tandem-nsk${UNAME_RELEASE} - exit ;; - NSR-?:NONSTOP_KERNEL:*:*) -@@ -1306,11 +1356,11 @@ - i*86:AROS:*:*) - echo ${UNAME_MACHINE}-pc-aros - exit ;; -+ x86_64:VMkernel:*:*) -+ echo ${UNAME_MACHINE}-unknown-esx -+ exit ;; - esac - --#echo '(No uname command or uname output not recognized.)' 1>&2 --#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 -- - eval $set_cc_for_build - cat >$dummy.c < - printf ("m68k-sony-newsos%s\n", - #ifdef NEWSOS4 -- "4" -+ "4" - #else -- "" -+ "" - #endif -- ); exit (0); -+ ); exit (0); - #endif - #endif - -diff -Naur ncurses-5.9/config.sub ncurses-5.9.patch/config.sub ---- ncurses-5.9/config.sub 2010-09-11 00:25:58.000000000 +0200 -+++ ncurses-5.9.patch/config.sub 2014-09-01 16:33:22.244791936 +0200 -@@ -1,38 +1,31 @@ - #! /bin/sh - # Configuration validation subroutine script. --# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, --# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 --# Free Software Foundation, Inc. -- --timestamp='2010-09-11' -- --# This file is (in principle) common to ALL GNU software. --# The presence of a machine in this file suggests that SOME GNU software --# can handle that machine. It does not imply ALL GNU software can. --# --# This file is free software; you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 2 of the License, or -+# Copyright 1992-2013 Free Software Foundation, Inc. -+ -+timestamp='2013-10-01' -+ -+# This file is free software; you can redistribute it and/or modify it -+# under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 3 of the License, or - # (at your option) any later version. - # --# This program is distributed in the hope that it will be useful, --# but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --# GNU General Public License for more details. -+# This program is distributed in the hope that it will be useful, but -+# WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# General Public License for more details. - # - # You should have received a copy of the GNU General Public License --# along with this program; if not, write to the Free Software --# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA --# 02110-1301, USA. -+# along with this program; if not, see . - # - # As a special exception to the GNU General Public License, if you - # distribute this file as part of a program that contains a - # configuration script generated by Autoconf, you may include it under --# the same distribution terms that you use for the rest of that program. -+# the same distribution terms that you use for the rest of that -+# program. This Exception is an additional permission under section 7 -+# of the GNU General Public License, version 3 ("GPLv3"). - - --# Please send patches to . Submit a context --# diff and a properly formatted GNU ChangeLog entry. -+# Please send patches with a ChangeLog entry to config-patches@gnu.org. - # - # Configuration subroutine to validate and canonicalize a configuration type. - # Supply the specified configuration type as an argument. -@@ -75,9 +68,7 @@ - version="\ - GNU config.sub ($timestamp) - --Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, --2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free --Software Foundation, Inc. -+Copyright 1992-2013 Free Software Foundation, Inc. - - This is free software; see the source for copying conditions. There is NO - warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." -@@ -125,13 +116,17 @@ - maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` - case $maybe_os in - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ -- linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ -+ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | \ - kopensolaris*-gnu* | \ - storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; -+ android-linux) -+ os=-linux-android -+ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown -+ ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] -@@ -154,7 +149,7 @@ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -- -apple | -axis | -knuth | -cray | -microblaze) -+ -apple | -axis | -knuth | -cray | -microblaze*) - os= - basic_machine=$1 - ;; -@@ -175,10 +170,10 @@ - os=-chorusos - basic_machine=$1 - ;; -- -chorusrdb) -- os=-chorusrdb -+ -chorusrdb) -+ os=-chorusrdb - basic_machine=$1 -- ;; -+ ;; - -hiux*) - os=-hiuxwe2 - ;; -@@ -223,6 +218,12 @@ - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; -+ -lynx*178) -+ os=-lynxos178 -+ ;; -+ -lynx*5) -+ os=-lynxos5 -+ ;; - -lynx*) - os=-lynxos - ;; -@@ -247,20 +248,28 @@ - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ -+ | aarch64 | aarch64_be \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ - | am33_2.0 \ -- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ -+ | arc | arceb \ -+ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ -+ | avr | avr32 \ -+ | be32 | be64 \ - | bfin \ -- | c4x | clipper \ -+ | c4x | c8051 | clipper \ - | d10v | d30v | dlx | dsp16xx \ -+ | epiphany \ - | fido | fr30 | frv \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ -+ | hexagon \ - | i370 | i860 | i960 | ia64 \ - | ip2k | iq2000 \ -+ | k1om \ -+ | le32 | le64 \ - | lm32 \ - | m32c | m32r | m32rle | m68000 | m68k | m88k \ -- | maxq | mb | microblaze | mcore | mep | metag \ -+ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ -@@ -278,30 +287,32 @@ - | mipsisa64r2 | mipsisa64r2el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ -+ | mipsr5900 | mipsr5900el \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | moxie \ - | mt \ - | msp430 \ -- | nds32 | nds32le | nds32be\ -- | nios | nios2 \ -+ | nds32 | nds32le | nds32be \ -+ | nios | nios2 | nios2eb | nios2el \ - | ns16k | ns32k \ -- | or32 \ -+ | open8 \ -+ | or1k | or32 \ - | pdp10 | pdp11 | pj | pjl \ -- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ -+ | powerpc | powerpc64 | powerpc64le | powerpcle \ - | pyramid \ -- | rx \ -+ | rl78 | rx \ - | score \ - | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ -- | spu | strongarm \ -- | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ -+ | spu \ -+ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ - | ubicom32 \ -- | v850 | v850e \ -+ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ - | we32k \ -- | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ -+ | x86 | xc16x | xstormy16 | xtensa \ - | z8k | z80) - basic_machine=$basic_machine-unknown - ;; -@@ -314,8 +325,7 @@ - c6x) - basic_machine=tic6x-unknown - ;; -- m6811 | m68hc11 | m6812 | m68hc12 | picochip) -- # Motorola 68HC11/12. -+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) - basic_machine=$basic_machine-unknown - os=-none - ;; -@@ -325,12 +335,27 @@ - basic_machine=mt-unknown - ;; - -+ strongarm | thumb | xscale) -+ basic_machine=arm-unknown -+ ;; -+ xgate) -+ basic_machine=$basic_machine-unknown -+ os=-none -+ ;; -+ xscaleeb) -+ basic_machine=armeb-unknown -+ ;; -+ -+ xscaleel) -+ basic_machine=armel-unknown -+ ;; -+ - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) -- basic_machine=$basic_machine-pc -- ;; -+ basic_machine=$basic_machine-pc -+ ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 -@@ -339,25 +364,31 @@ - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ -+ | aarch64-* | aarch64_be-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ -- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ -+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ - | avr-* | avr32-* \ -+ | be32-* | be64-* \ - | bfin-* | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* \ -- | clipper-* | craynv-* | cydra-* \ -+ | c8051-* | clipper-* | craynv-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | elxsi-* \ - | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ -+ | hexagon-* \ - | i*86-* | i860-* | i960-* | ia64-* \ - | ip2k-* | iq2000-* \ -+ | k1om-* \ -+ | le32-* | le64-* \ - | lm32-* \ - | m32c-* | m32r-* | m32rle-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ -- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ -+ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ -+ | microblaze-* | microblazeel-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ -@@ -375,31 +406,34 @@ - | mipsisa64r2-* | mipsisa64r2el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ -+ | mipsr5900-* | mipsr5900el-* \ - | mipstx39-* | mipstx39el-* \ - | mmix-* \ - | mt-* \ - | msp430-* \ - | nds32-* | nds32le-* | nds32be-* \ -- | nios-* | nios2-* \ -+ | nios-* | nios2-* | nios2eb-* | nios2el-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ -+ | open8-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ -- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ -+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ - | pyramid-* \ -- | romp-* | rs6000-* | rx-* \ -+ | rl78-* | romp-* | rs6000-* | rx-* \ - | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ - | sparclite-* \ -- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ -- | tahoe-* | thumb-* \ -+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ -+ | tahoe-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ -- | tile-* | tilegx-* \ -+ | tile*-* \ - | tron-* \ - | ubicom32-* \ -- | v850-* | v850e-* | vax-* \ -+ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ -+ | vax-* \ - | we32k-* \ -- | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ -+ | x86-* | x86_64-* | xc16x-* | xps100-* \ - | xstormy16-* | xtensa*-* \ - | ymp-* \ - | z8k-* | z80-*) -@@ -539,7 +573,7 @@ - basic_machine=craynv-cray - os=-unicosmp - ;; -- cr16) -+ cr16 | cr16-*) - basic_machine=cr16-unknown - os=-elf - ;; -@@ -697,7 +731,6 @@ - i370-ibm* | ibm*) - basic_machine=i370-ibm - ;; --# I'm not sure what "Sysv32" means. Should this be sysv3.2? - i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 -@@ -755,11 +788,15 @@ - basic_machine=ns32k-utek - os=-sysv - ;; -- microblaze) -+ microblaze*) - basic_machine=microblaze-xilinx - ;; -+ mingw64) -+ basic_machine=x86_64-pc -+ os=-mingw64 -+ ;; - mingw32) -- basic_machine=i386-pc -+ basic_machine=i686-pc - os=-mingw32 - ;; - mingw32ce) -@@ -794,10 +831,18 @@ - ms1-*) - basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` - ;; -+ msys) -+ basic_machine=i686-pc -+ os=-msys -+ ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; -+ nacl) -+ basic_machine=le32-unknown -+ os=-nacl -+ ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 -@@ -950,9 +995,10 @@ - ;; - power) basic_machine=power-ibm - ;; -- ppc) basic_machine=powerpc-unknown -+ ppc | ppcbe) basic_machine=powerpc-unknown - ;; -- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ppc-* | ppcbe-*) -+ basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown -@@ -977,7 +1023,11 @@ - basic_machine=i586-unknown - os=-pw32 - ;; -- rdos) -+ rdos | rdos64) -+ basic_machine=x86_64-pc -+ os=-rdos -+ ;; -+ rdos32) - basic_machine=i386-pc - os=-rdos - ;; -@@ -1046,6 +1096,9 @@ - basic_machine=i860-stratus - os=-sysv4 - ;; -+ strongarm-* | thumb-*) -+ basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; - sun2) - basic_machine=m68000-sun - ;; -@@ -1102,13 +1155,8 @@ - basic_machine=t90-cray - os=-unicos - ;; -- # This must be matched before tile*. -- tilegx*) -- basic_machine=tilegx-unknown -- os=-linux-gnu -- ;; - tile*) -- basic_machine=tile-unknown -+ basic_machine=$basic_machine-unknown - os=-linux-gnu - ;; - tx39) -@@ -1178,6 +1226,9 @@ - xps | xps100) - basic_machine=xps100-honeywell - ;; -+ xscale-* | xscalee[bl]-*) -+ basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` -+ ;; - ymp) - basic_machine=ymp-cray - os=-unicos -@@ -1303,21 +1354,21 @@ - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ -- | -sym* | -kopensolaris* \ -+ | -sym* | -kopensolaris* | -plan9* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* | -aros* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ -- | -openbsd* | -solidbsd* \ -+ | -bitrig* | -openbsd* | -solidbsd* \ - | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ - | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* | -cegcc* \ -- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ -- | -mingw32* | -linux-gnu* | -linux-android* \ -- | -linux-newlib* | -linux-uclibc* \ -+ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ -+ | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ -+ | -linux-newlib* | -linux-musl* | -linux-uclibc* \ - | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ -@@ -1449,9 +1500,6 @@ - -aros*) - os=-aros - ;; -- -kaos*) -- os=-kaos -- ;; - -zvmoe) - os=-zvmoe - ;; -@@ -1500,6 +1548,12 @@ - c4x-* | tic4x-*) - os=-coff - ;; -+ c8051-*) -+ os=-elf -+ ;; -+ hexagon-*) -+ os=-elf -+ ;; - tic54x-*) - os=-coff - ;; -@@ -1527,9 +1581,6 @@ - ;; - m68000-sun) - os=-sunos3 -- # This also exists in the configure program, but was not the -- # default. -- # os=-sunos4 - ;; - m68*-cisco) - os=-aout -@@ -1543,6 +1594,9 @@ - mips*-*) - os=-elf - ;; -+ or1k-*) -+ os=-elf -+ ;; - or32-*) - os=-coff - ;; -diff -Naur ncurses-5.9/configure ncurses-5.9.patch/configure ---- ncurses-5.9/configure 2011-04-01 01:35:51.000000000 +0200 -+++ ncurses-5.9.patch/configure 2014-09-01 16:34:19.468887101 +0200 -@@ -1,7 +1,7 @@ - #! /bin/sh --# From configure.in Revision: 1.520 . -+# From configure.in Revision: 1.578 . - # Guess values for system-dependent variables and create Makefiles. --# Generated by Autoconf 2.52.20101002. -+# Generated by Autoconf 2.52.20121002. - # - # Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 - # Free Software Foundation, Inc. -@@ -171,15 +171,16 @@ - bindir='${exec_prefix}/bin' - sbindir='${exec_prefix}/sbin' - libexecdir='${exec_prefix}/libexec' --datadir='${prefix}/share' -+datarootdir='${prefix}/share' -+datadir='${datarootdir}' - sysconfdir='${prefix}/etc' - sharedstatedir='${prefix}/com' - localstatedir='${prefix}/var' - libdir='${exec_prefix}/lib' - includedir='${prefix}/include' - oldincludedir='/usr/include' --infodir='${prefix}/info' --mandir='${prefix}/man' -+infodir='${datarootdir}/info' -+mandir='${datarootdir}/man' - - # Identity of this package. - PACKAGE_NAME= -@@ -230,6 +231,13 @@ - | --da=*) - datadir=$ac_optarg ;; - -+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ -+ | --dataroo | --dataro | --datar) -+ ac_prev=datarootdir ;; -+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ -+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) -+ datarootdir=$ac_optarg ;; -+ - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. -@@ -505,7 +513,7 @@ - done - - # Be sure to have absolute paths. --for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ -+for ac_var in bindir sbindir libexecdir datarootdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir - do - eval ac_val=$`echo $ac_var` -@@ -654,15 +662,16 @@ - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] -- --datadir=DIR read-only architecture-independent data [PREFIX/share] -+ --datarootdir=DIR read-only architecture-independent data [PREFIX/share] -+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] -- --infodir=DIR info documentation [PREFIX/info] -- --mandir=DIR man documentation [PREFIX/man] -+ --infodir=DIR info documentation [DATAROOTDIR/info] -+ --mandir=DIR man documentation [DATAROOTDIR/man] - EOF - - cat <<\EOF -@@ -694,14 +703,16 @@ - --with-rel-version=XXX override derived release version - --with-abi-version=XXX override derived ABI version - --with-system-type=XXX test: override derived host system-type -+ --without-ada suppress check for Ada95, don't build demo - --without-cxx do not adjust ncurses bool to match C++ - --without-cxx-binding do not build C++ binding and demo -- --without-ada suppress check for Ada95, don't build demo -+ --disable-db-install suppress install of terminal database - --without-manpages suppress install of manpages -- --without-progs suppress build with programs (e.g., tic) -- --without-tests suppress build with test-programs -+ --without-progs suppress build/install with programs (e.g., tic) -+ --without-tests suppress build/install with test-programs - --without-curses-h install curses.h as ncurses.h only - --with-pkg-config{=path} enable/disable use of pkg-config -+ --with-pkg-config-libdir=XXX use given directory for installing pc-files - --enable-pc-files generate and install .pc files for pkg-config - --enable-mixed-case tic should assume mixed-case filenames - --with-install-prefix prefixes actual install-location ($DESTDIR) -@@ -719,6 +730,8 @@ - --with-normal generate normal-libraries (default) - --with-debug generate debug-libraries (default) - --with-profile generate profile-libraries -+ --with-cxx-shared generate C++ shared-libraries -+ --with-lib-prefix override library-prefix - --with-termlib generate separate terminfo library - --with-ticlib generate separate tic library - --with-gpm use Alessandro Rubini's GPM library -@@ -735,6 +748,7 @@ - --with-hashed-db specify hashed-database library - --with-fallbacks=XXX specify list of fallback terminal descriptions - --without-xterm-new specify if xterm terminfo should be old version -+ --with-xterm-kbs=XXX specify if xterm backspace sends BS or DEL - --with-terminfo-dirs=XXX specify list of terminfo directories (default: DATADIR/terminfo) - --with-default-terminfo-dir=DIR default terminfo directory (default: DATADIR/terminfo) - --disable-big-core assume machine has little memory -@@ -759,6 +773,7 @@ - --with-ospeed=TYPE override type of ospeed variable - --with-mmask-t=TYPE override type of mmask_t - --with-ccharw-max=XXX override size CCHARW_MAX -+ --with-tparm-arg=TYPE override parameter type of tparm - --with-rcs-ids compile-in RCS identifiers - Options to Specify How Manpages are Installed: - --with-manpage-format specify manpage-format: gzip/compress/BSDI/normal and -@@ -796,8 +811,9 @@ - --disable-scroll-hints compile without scroll-hints code - --enable-wgetch-events compile with experimental wgetch-events code - Testing/development Options: -- --enable-echo build: display "compiling" commands (default) -+ --disable-echo do not display "compiling" commands - --enable-warnings build: turn on GCC compiler warnings -+ --enable-string-hacks work around bogus compiler/loader warnings - --enable-assertions test: turn on generation of assertion code - --with-dmalloc test: use Gray Watson's dmalloc library - --with-dbmalloc test: use Conor Cahill's dbmalloc library -@@ -883,7 +899,7 @@ - running configure, to aid debugging if configure makes a mistake. - - It was created by $as_me, which was --generated by GNU Autoconf 2.52.20101002. Invocation command line was -+generated by GNU Autoconf 2.52.20121002. Invocation command line was - - $ $0 $@ - -@@ -1007,7 +1023,7 @@ - fi - for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then -- { echo "$as_me:1010: loading site script $ac_site_file" >&5 -+ { echo "$as_me:1026: loading site script $ac_site_file" >&5 - echo "$as_me: loading site script $ac_site_file" >&6;} - cat "$ac_site_file" >&5 - . "$ac_site_file" -@@ -1018,7 +1034,7 @@ - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then -- { echo "$as_me:1021: loading cache $cache_file" >&5 -+ { echo "$as_me:1037: loading cache $cache_file" >&5 - echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; -@@ -1026,7 +1042,7 @@ - esac - fi - else -- { echo "$as_me:1029: creating cache $cache_file" >&5 -+ { echo "$as_me:1045: creating cache $cache_file" >&5 - echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file - fi -@@ -1042,21 +1058,21 @@ - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) -- { echo "$as_me:1045: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -+ { echo "$as_me:1061: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 - echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) -- { echo "$as_me:1049: error: \`$ac_var' was not set in the previous run" >&5 -+ { echo "$as_me:1065: error: \`$ac_var' was not set in the previous run" >&5 - echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then -- { echo "$as_me:1055: error: \`$ac_var' has changed since the previous run:" >&5 -+ { echo "$as_me:1071: error: \`$ac_var' has changed since the previous run:" >&5 - echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} -- { echo "$as_me:1057: former value: $ac_old_val" >&5 -+ { echo "$as_me:1073: former value: $ac_old_val" >&5 - echo "$as_me: former value: $ac_old_val" >&2;} -- { echo "$as_me:1059: current value: $ac_new_val" >&5 -+ { echo "$as_me:1075: current value: $ac_new_val" >&5 - echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; -@@ -1075,9 +1091,9 @@ - fi - done - if $ac_cache_corrupted; then -- { echo "$as_me:1078: error: changes in the environment can compromise the build" >&5 -+ { echo "$as_me:1094: error: changes in the environment can compromise the build" >&5 - echo "$as_me: error: changes in the environment can compromise the build" >&2;} -- { { echo "$as_me:1080: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -+ { { echo "$as_me:1096: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 - echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -1098,10 +1114,10 @@ - echo "#! $SHELL" >conftest.sh - echo "exit 0" >>conftest.sh - chmod +x conftest.sh --if { (echo "$as_me:1101: PATH=\".;.\"; conftest.sh") >&5 -+if { (echo "$as_me:1117: PATH=\".;.\"; conftest.sh") >&5 - (PATH=".;."; conftest.sh) 2>&5 - ac_status=$? -- echo "$as_me:1104: \$? = $ac_status" >&5 -+ echo "$as_me:1120: \$? = $ac_status" >&5 - (exit $ac_status); }; then - ac_path_separator=';' - else -@@ -1114,7 +1130,7 @@ - - top_builddir=`pwd` - --echo "$as_me:1117: checking for egrep" >&5 -+echo "$as_me:1133: checking for egrep" >&5 - echo $ECHO_N "checking for egrep... $ECHO_C" >&6 - if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1124,11 +1140,11 @@ - else ac_cv_prog_egrep='egrep' - fi - fi --echo "$as_me:1127: result: $ac_cv_prog_egrep" >&5 -+echo "$as_me:1143: result: $ac_cv_prog_egrep" >&5 - echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep - --test -z "$EGREP" && { { echo "$as_me:1131: error: No egrep program found" >&5 -+test -z "$EGREP" && { { echo "$as_me:1147: error: No egrep program found" >&5 - echo "$as_me: error: No egrep program found" >&2;} - { (exit 1); exit 1; }; } - -@@ -1138,7 +1154,7 @@ - cf_cv_abi_version=${NCURSES_MAJOR} - cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR} - cf_cv_timestamp=`date` --echo "$as_me:1141: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5 -+echo "$as_me:1157: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5 - echo "${ECHO_T}Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&6 - - test -z "$cf_cv_rel_version" && cf_cv_rel_version=0.0 -@@ -1146,7 +1162,7 @@ - # Check whether --with-rel-version or --without-rel-version was given. - if test "${with_rel_version+set}" = set; then - withval="$with_rel_version" -- { echo "$as_me:1149: WARNING: overriding release version $cf_cv_rel_version to $withval" >&5 -+ { echo "$as_me:1165: WARNING: overriding release version $cf_cv_rel_version to $withval" >&5 - echo "$as_me: WARNING: overriding release version $cf_cv_rel_version to $withval" >&2;} - cf_cv_rel_version=$withval - fi; -@@ -1159,13 +1175,13 @@ - [0-9]*) #(vi - ;; - *) -- { { echo "$as_me:1162: error: Release major-version is not a number: $NCURSES_MAJOR" >&5 -+ { { echo "$as_me:1178: error: Release major-version is not a number: $NCURSES_MAJOR" >&5 - echo "$as_me: error: Release major-version is not a number: $NCURSES_MAJOR" >&2;} - { (exit 1); exit 1; }; } - ;; - esac - else -- { { echo "$as_me:1168: error: Release major-version value is empty" >&5 -+ { { echo "$as_me:1184: error: Release major-version value is empty" >&5 - echo "$as_me: error: Release major-version value is empty" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -1175,13 +1191,13 @@ - [0-9]*) #(vi - ;; - *) -- { { echo "$as_me:1178: error: Release minor-version is not a number: $NCURSES_MINOR" >&5 -+ { { echo "$as_me:1194: error: Release minor-version is not a number: $NCURSES_MINOR" >&5 - echo "$as_me: error: Release minor-version is not a number: $NCURSES_MINOR" >&2;} - { (exit 1); exit 1; }; } - ;; - esac - else -- { { echo "$as_me:1184: error: Release minor-version value is empty" >&5 -+ { { echo "$as_me:1200: error: Release minor-version value is empty" >&5 - echo "$as_me: error: Release minor-version value is empty" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -1191,7 +1207,7 @@ - # Check whether --with-abi-version or --without-abi-version was given. - if test "${with_abi_version+set}" = set; then - withval="$with_abi_version" -- { echo "$as_me:1194: WARNING: overriding ABI version $cf_cv_abi_version to $withval" >&5 -+ { echo "$as_me:1210: WARNING: overriding ABI version $cf_cv_abi_version to $withval" >&5 - echo "$as_me: WARNING: overriding ABI version $cf_cv_abi_version to $withval" >&2;} - cf_cv_abi_version=$withval - fi; -@@ -1201,13 +1217,13 @@ - [0-9]*) #(vi - ;; - *) -- { { echo "$as_me:1204: error: ABI version is not a number: $cf_cv_abi_version" >&5 -+ { { echo "$as_me:1220: error: ABI version is not a number: $cf_cv_abi_version" >&5 - echo "$as_me: error: ABI version is not a number: $cf_cv_abi_version" >&2;} - { (exit 1); exit 1; }; } - ;; - esac - else -- { { echo "$as_me:1210: error: ABI version value is empty" >&5 -+ { { echo "$as_me:1226: error: ABI version value is empty" >&5 - echo "$as_me: error: ABI version value is empty" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -1229,7 +1245,7 @@ - fi - done - if test -z "$ac_aux_dir"; then -- { { echo "$as_me:1232: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 -+ { { echo "$as_me:1248: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 - echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} - { (exit 1); exit 1; }; } - fi -@@ -1239,11 +1255,11 @@ - - # Make sure we can run config.sub. - $ac_config_sub sun4 >/dev/null 2>&1 || -- { { echo "$as_me:1242: error: cannot run $ac_config_sub" >&5 -+ { { echo "$as_me:1258: error: cannot run $ac_config_sub" >&5 - echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - --echo "$as_me:1246: checking build system type" >&5 -+echo "$as_me:1262: checking build system type" >&5 - echo $ECHO_N "checking build system type... $ECHO_C" >&6 - if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1252,23 +1268,23 @@ - test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` - test -z "$ac_cv_build_alias" && -- { { echo "$as_me:1255: error: cannot guess build type; you must specify one" >&5 -+ { { echo "$as_me:1271: error: cannot guess build type; you must specify one" >&5 - echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } - ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || -- { { echo "$as_me:1259: error: $ac_config_sub $ac_cv_build_alias failed." >&5 -+ { { echo "$as_me:1275: error: $ac_config_sub $ac_cv_build_alias failed." >&5 - echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;} - { (exit 1); exit 1; }; } - - fi --echo "$as_me:1264: result: $ac_cv_build" >&5 -+echo "$as_me:1280: result: $ac_cv_build" >&5 - echo "${ECHO_T}$ac_cv_build" >&6 - build=$ac_cv_build - build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` - build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` - build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - --echo "$as_me:1271: checking host system type" >&5 -+echo "$as_me:1287: checking host system type" >&5 - echo $ECHO_N "checking host system type... $ECHO_C" >&6 - if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1277,12 +1293,12 @@ - test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias - ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || -- { { echo "$as_me:1280: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -+ { { echo "$as_me:1296: error: $ac_config_sub $ac_cv_host_alias failed" >&5 - echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } - - fi --echo "$as_me:1285: result: $ac_cv_host" >&5 -+echo "$as_me:1301: result: $ac_cv_host" >&5 - echo "${ECHO_T}$ac_cv_host" >&6 - host=$ac_cv_host - host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -@@ -1290,7 +1306,7 @@ - host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then -- echo "$as_me:1293: checking target system type" >&5 -+ echo "$as_me:1309: checking target system type" >&5 - echo $ECHO_N "checking target system type... $ECHO_C" >&6 - if test "${ac_cv_target+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1299,12 +1315,12 @@ - test "x$ac_cv_target_alias" = "x" && - ac_cv_target_alias=$ac_cv_host_alias - ac_cv_target=`$ac_config_sub $ac_cv_target_alias` || -- { { echo "$as_me:1302: error: $ac_config_sub $ac_cv_target_alias failed" >&5 -+ { { echo "$as_me:1318: error: $ac_config_sub $ac_cv_target_alias failed" >&5 - echo "$as_me: error: $ac_config_sub $ac_cv_target_alias failed" >&2;} - { (exit 1); exit 1; }; } - - fi --echo "$as_me:1307: result: $ac_cv_target" >&5 -+echo "$as_me:1323: result: $ac_cv_target" >&5 - echo "${ECHO_T}$ac_cv_target" >&6 - target=$ac_cv_target - target_cpu=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -@@ -1324,7 +1340,8 @@ - system_name="`(hostname) 2>/dev/null`" - fi - fi --test -n "$system_name" && cat >>confdefs.h <>confdefs.h <&5 -+test -n "$cf_cv_system_name" && echo "$as_me:1355: result: Configuring for $cf_cv_system_name" >&5 - echo "${ECHO_T}Configuring for $cf_cv_system_name" >&6 - - if test ".$system_name" != ".$cf_cv_system_name" ; then -- echo "$as_me:1342: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5 -+ echo "$as_me:1359: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5 - echo "${ECHO_T}Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&6 -- { { echo "$as_me:1344: error: \"Please remove config.cache and try again.\"" >&5 -+ { { echo "$as_me:1361: error: \"Please remove config.cache and try again.\"" >&5 - echo "$as_me: error: \"Please remove config.cache and try again.\"" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -1349,9 +1366,11 @@ - # Check whether --with-system-type or --without-system-type was given. - if test "${with_system_type+set}" = set; then - withval="$with_system_type" -- { echo "$as_me:1352: WARNING: overriding system type to $withval" >&5 -+ { echo "$as_me:1369: WARNING: overriding system type to $withval" >&5 - echo "$as_me: WARNING: overriding system type to $withval" >&2;} -- cf_cv_system_name=$withval -+ cf_cv_system_name=$withval -+ host_os=$withval -+ - fi; - - ### Save the given $CFLAGS to allow user-override. -@@ -1359,23 +1378,23 @@ - - ### Default install-location - --echo "$as_me:1362: checking for prefix" >&5 -+echo "$as_me:1381: checking for prefix" >&5 - echo $ECHO_N "checking for prefix... $ECHO_C" >&6 - if test "x$prefix" = "xNONE" ; then - case "$cf_cv_system_name" in - # non-vendor systems don't have a conflict -- openbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu) -+ openbsd*|freebsd*|mirbsd*|linux*|cygwin*|msys*|k*bsd*-gnu|mingw*) - prefix=/usr - ;; - *) prefix=$ac_default_prefix - ;; - esac - fi --echo "$as_me:1374: result: $prefix" >&5 -+echo "$as_me:1393: result: $prefix" >&5 - echo "${ECHO_T}$prefix" >&6 - - if test "x$prefix" = "xNONE" ; then --echo "$as_me:1378: checking for default include-directory" >&5 -+echo "$as_me:1397: checking for default include-directory" >&5 - echo $ECHO_N "checking for default include-directory... $ECHO_C" >&6 - test -n "$verbose" && echo 1>&6 - for cf_symbol in \ -@@ -1398,11 +1417,26 @@ - fi - test -n "$verbose" && echo " tested $cf_dir" 1>&6 - done --echo "$as_me:1401: result: $includedir" >&5 -+echo "$as_me:1420: result: $includedir" >&5 - echo "${ECHO_T}$includedir" >&6 - fi - - ### Checks for programs. -+ -+# Check whether --with-ada or --without-ada was given. -+if test "${with_ada+set}" = set; then -+ withval="$with_ada" -+ cf_with_ada=$withval -+else -+ cf_with_ada=yes -+fi; -+if test "x$cf_with_ada" = xyes -+then -+ cf_PROG_CC="gnatgcc gcc cc" -+else -+ cf_PROG_CC="gcc cc" -+fi -+ - ac_ext=c - ac_cpp='$CPP $CPPFLAGS' - ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -@@ -1410,213 +1444,11 @@ - ac_compiler_gnu=$ac_cv_c_compiler_gnu - ac_main_return=return - if test -n "$ac_tool_prefix"; then -- # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. --set dummy ${ac_tool_prefix}gcc; ac_word=$2 --echo "$as_me:1415: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. --else -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --ac_cv_prog_CC="${ac_tool_prefix}gcc" --echo "$as_me:1430: found $ac_dir/$ac_word" >&5 --break --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:1438: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:1441: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$ac_cv_prog_CC"; then -- ac_ct_CC=$CC -- # Extract the first word of "gcc", so it can be a program name with args. --set dummy gcc; ac_word=$2 --echo "$as_me:1450: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$ac_ct_CC"; then -- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. --else -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --ac_cv_prog_ac_ct_CC="gcc" --echo "$as_me:1465: found $ac_dir/$ac_word" >&5 --break --done -- --fi --fi --ac_ct_CC=$ac_cv_prog_ac_ct_CC --if test -n "$ac_ct_CC"; then -- echo "$as_me:1473: result: $ac_ct_CC" >&5 --echo "${ECHO_T}$ac_ct_CC" >&6 --else -- echo "$as_me:1476: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- CC=$ac_ct_CC --else -- CC="$ac_cv_prog_CC" --fi -- --if test -z "$CC"; then -- if test -n "$ac_tool_prefix"; then -- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. --set dummy ${ac_tool_prefix}cc; ac_word=$2 --echo "$as_me:1489: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. --else -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --ac_cv_prog_CC="${ac_tool_prefix}cc" --echo "$as_me:1504: found $ac_dir/$ac_word" >&5 --break --done -- --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:1512: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:1515: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$ac_cv_prog_CC"; then -- ac_ct_CC=$CC -- # Extract the first word of "cc", so it can be a program name with args. --set dummy cc; ac_word=$2 --echo "$as_me:1524: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_ac_ct_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$ac_ct_CC"; then -- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. --else -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --ac_cv_prog_ac_ct_CC="cc" --echo "$as_me:1539: found $ac_dir/$ac_word" >&5 --break --done -- --fi --fi --ac_ct_CC=$ac_cv_prog_ac_ct_CC --if test -n "$ac_ct_CC"; then -- echo "$as_me:1547: result: $ac_ct_CC" >&5 --echo "${ECHO_T}$ac_ct_CC" >&6 --else -- echo "$as_me:1550: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- CC=$ac_ct_CC --else -- CC="$ac_cv_prog_CC" --fi -- --fi --if test -z "$CC"; then -- # Extract the first word of "cc", so it can be a program name with args. --set dummy cc; ac_word=$2 --echo "$as_me:1563: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CC+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$CC"; then -- ac_cv_prog_CC="$CC" # Let the user override the test. --else -- ac_prog_rejected=no -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then -- ac_prog_rejected=yes -- continue --fi --ac_cv_prog_CC="cc" --echo "$as_me:1583: found $ac_dir/$ac_word" >&5 --break --done -- --if test $ac_prog_rejected = yes; then -- # We found a bogon in the path, so make sure we never use it. -- set dummy $ac_cv_prog_CC -- shift -- if test $# != 0; then -- # We chose a different compiler from the bogus one. -- # However, it has the same basename, so the bogon will be chosen -- # first if we set CC to just the basename; use the full file name. -- shift -- set dummy "$ac_dir/$ac_word" ${1+"$@"} -- shift -- ac_cv_prog_CC="$@" -- fi --fi --fi --fi --CC=$ac_cv_prog_CC --if test -n "$CC"; then -- echo "$as_me:1605: result: $CC" >&5 --echo "${ECHO_T}$CC" >&6 --else -- echo "$as_me:1608: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- --fi --if test -z "$CC"; then -- if test -n "$ac_tool_prefix"; then -- for ac_prog in cl -+ for ac_prog in $cf_PROG_CC - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. - set dummy $ac_tool_prefix$ac_prog; ac_word=$2 --echo "$as_me:1619: checking for $ac_word" >&5 -+echo "$as_me:1451: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1631,7 +1463,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" --echo "$as_me:1634: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1466: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1639,10 +1471,10 @@ - fi - CC=$ac_cv_prog_CC - if test -n "$CC"; then -- echo "$as_me:1642: result: $CC" >&5 -+ echo "$as_me:1474: result: $CC" >&5 - echo "${ECHO_T}$CC" >&6 - else -- echo "$as_me:1645: result: no" >&5 -+ echo "$as_me:1477: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1651,11 +1483,11 @@ - fi - if test -z "$CC"; then - ac_ct_CC=$CC -- for ac_prog in cl -+ for ac_prog in $cf_PROG_CC - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:1658: checking for $ac_word" >&5 -+echo "$as_me:1490: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1670,7 +1502,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_CC="$ac_prog" --echo "$as_me:1673: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1505: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1678,10 +1510,10 @@ - fi - ac_ct_CC=$ac_cv_prog_ac_ct_CC - if test -n "$ac_ct_CC"; then -- echo "$as_me:1681: result: $ac_ct_CC" >&5 -+ echo "$as_me:1513: result: $ac_ct_CC" >&5 - echo "${ECHO_T}$ac_ct_CC" >&6 - else -- echo "$as_me:1684: result: no" >&5 -+ echo "$as_me:1516: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1691,34 +1523,32 @@ - CC=$ac_ct_CC - fi - --fi -- --test -z "$CC" && { { echo "$as_me:1696: error: no acceptable cc found in \$PATH" >&5 -+test -z "$CC" && { { echo "$as_me:1526: error: no acceptable cc found in \$PATH" >&5 - echo "$as_me: error: no acceptable cc found in \$PATH" >&2;} - { (exit 1); exit 1; }; } - - # Provide some information about the compiler. --echo "$as_me:1701:" \ -+echo "$as_me:1531:" \ - "checking for C compiler version" >&5 - ac_compiler=`set X $ac_compile; echo $2` --{ (eval echo "$as_me:1704: \"$ac_compiler --version &5\"") >&5 -+{ (eval echo "$as_me:1534: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? -- echo "$as_me:1707: \$? = $ac_status" >&5 -+ echo "$as_me:1537: \$? = $ac_status" >&5 - (exit $ac_status); } --{ (eval echo "$as_me:1709: \"$ac_compiler -v &5\"") >&5 -+{ (eval echo "$as_me:1539: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? -- echo "$as_me:1712: \$? = $ac_status" >&5 -+ echo "$as_me:1542: \$? = $ac_status" >&5 - (exit $ac_status); } --{ (eval echo "$as_me:1714: \"$ac_compiler -V &5\"") >&5 -+{ (eval echo "$as_me:1544: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 - ac_status=$? -- echo "$as_me:1717: \$? = $ac_status" >&5 -+ echo "$as_me:1547: \$? = $ac_status" >&5 - (exit $ac_status); } - - cat >conftest.$ac_ext <<_ACEOF --#line 1721 "configure" -+#line 1551 "configure" - #include "confdefs.h" - - int -@@ -1734,13 +1564,13 @@ - # Try to create an executable without -o first, disregard a.out. - # It will help us diagnose broken compilers, and finding out an intuition - # of exeext. --echo "$as_me:1737: checking for C compiler default output" >&5 -+echo "$as_me:1567: checking for C compiler default output" >&5 - echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6 - ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` --if { (eval echo "$as_me:1740: \"$ac_link_default\"") >&5 -+if { (eval echo "$as_me:1570: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 - ac_status=$? -- echo "$as_me:1743: \$? = $ac_status" >&5 -+ echo "$as_me:1573: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is - # not robust to junk in `.', hence go to wildcards (a.*) only as a last -@@ -1763,34 +1593,34 @@ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --{ { echo "$as_me:1766: error: C compiler cannot create executables" >&5 -+{ { echo "$as_me:1596: error: C compiler cannot create executables" >&5 - echo "$as_me: error: C compiler cannot create executables" >&2;} - { (exit 77); exit 77; }; } - fi - - ac_exeext=$ac_cv_exeext --echo "$as_me:1772: result: $ac_file" >&5 -+echo "$as_me:1602: result: $ac_file" >&5 - echo "${ECHO_T}$ac_file" >&6 - - # Check the compiler produces executables we can run. If not, either - # the compiler is broken, or we cross compile. --echo "$as_me:1777: checking whether the C compiler works" >&5 -+echo "$as_me:1607: checking whether the C compiler works" >&5 - echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 - # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 - # If not cross compiling, check that we can run a simple program. - if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' -- { (eval echo "$as_me:1783: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1613: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1786: \$? = $ac_status" >&5 -+ echo "$as_me:1616: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else -- { { echo "$as_me:1793: error: cannot run C compiled programs. -+ { { echo "$as_me:1623: error: cannot run C compiled programs. - If you meant to cross compile, use \`--host'." >&5 - echo "$as_me: error: cannot run C compiled programs. - If you meant to cross compile, use \`--host'." >&2;} -@@ -1798,24 +1628,24 @@ - fi - fi - fi --echo "$as_me:1801: result: yes" >&5 -+echo "$as_me:1631: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - - rm -f a.out a.exe conftest$ac_cv_exeext - ac_clean_files=$ac_clean_files_save - # Check the compiler produces executables we can run. If not, either - # the compiler is broken, or we cross compile. --echo "$as_me:1808: checking whether we are cross compiling" >&5 -+echo "$as_me:1638: checking whether we are cross compiling" >&5 - echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 --echo "$as_me:1810: result: $cross_compiling" >&5 -+echo "$as_me:1640: result: $cross_compiling" >&5 - echo "${ECHO_T}$cross_compiling" >&6 - --echo "$as_me:1813: checking for executable suffix" >&5 -+echo "$as_me:1643: checking for executable suffix" >&5 - echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6 --if { (eval echo "$as_me:1815: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:1645: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:1818: \$? = $ac_status" >&5 -+ echo "$as_me:1648: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) - # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -@@ -1831,25 +1661,25 @@ - esac - done - else -- { { echo "$as_me:1834: error: cannot compute EXEEXT: cannot compile and link" >&5 -+ { { echo "$as_me:1664: error: cannot compute EXEEXT: cannot compile and link" >&5 - echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;} - { (exit 1); exit 1; }; } - fi - - rm -f conftest$ac_cv_exeext --echo "$as_me:1840: result: $ac_cv_exeext" >&5 -+echo "$as_me:1670: result: $ac_cv_exeext" >&5 - echo "${ECHO_T}$ac_cv_exeext" >&6 - - rm -f conftest.$ac_ext - EXEEXT=$ac_cv_exeext - ac_exeext=$EXEEXT --echo "$as_me:1846: checking for object suffix" >&5 -+echo "$as_me:1676: checking for object suffix" >&5 - echo $ECHO_N "checking for object suffix... $ECHO_C" >&6 - if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 1852 "configure" -+#line 1682 "configure" - #include "confdefs.h" - - int -@@ -1861,10 +1691,10 @@ - } - _ACEOF - rm -f conftest.o conftest.obj --if { (eval echo "$as_me:1864: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1694: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1867: \$? = $ac_status" >&5 -+ echo "$as_me:1697: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do - case $ac_file in -@@ -1876,24 +1706,24 @@ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --{ { echo "$as_me:1879: error: cannot compute OBJEXT: cannot compile" >&5 -+{ { echo "$as_me:1709: error: cannot compute OBJEXT: cannot compile" >&5 - echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;} - { (exit 1); exit 1; }; } - fi - - rm -f conftest.$ac_cv_objext conftest.$ac_ext - fi --echo "$as_me:1886: result: $ac_cv_objext" >&5 -+echo "$as_me:1716: result: $ac_cv_objext" >&5 - echo "${ECHO_T}$ac_cv_objext" >&6 - OBJEXT=$ac_cv_objext - ac_objext=$OBJEXT --echo "$as_me:1890: checking whether we are using the GNU C compiler" >&5 -+echo "$as_me:1720: checking whether we are using the GNU C compiler" >&5 - echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 - if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 1896 "configure" -+#line 1726 "configure" - #include "confdefs.h" - - int -@@ -1908,16 +1738,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1911: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1741: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1914: \$? = $ac_status" >&5 -+ echo "$as_me:1744: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1917: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1747: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1920: \$? = $ac_status" >&5 -+ echo "$as_me:1750: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_compiler_gnu=yes - else -@@ -1929,19 +1759,19 @@ - ac_cv_c_compiler_gnu=$ac_compiler_gnu - - fi --echo "$as_me:1932: result: $ac_cv_c_compiler_gnu" >&5 -+echo "$as_me:1762: result: $ac_cv_c_compiler_gnu" >&5 - echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 - GCC=`test $ac_compiler_gnu = yes && echo yes` - ac_test_CFLAGS=${CFLAGS+set} - ac_save_CFLAGS=$CFLAGS - CFLAGS="-g" --echo "$as_me:1938: checking whether $CC accepts -g" >&5 -+echo "$as_me:1768: checking whether $CC accepts -g" >&5 - echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 - if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 1944 "configure" -+#line 1774 "configure" - #include "confdefs.h" - - int -@@ -1953,16 +1783,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1956: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1786: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1959: \$? = $ac_status" >&5 -+ echo "$as_me:1789: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1962: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1792: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1965: \$? = $ac_status" >&5 -+ echo "$as_me:1795: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_g=yes - else -@@ -1972,7 +1802,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:1975: result: $ac_cv_prog_cc_g" >&5 -+echo "$as_me:1805: result: $ac_cv_prog_cc_g" >&5 - echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 - if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -@@ -1999,16 +1829,16 @@ - #endif - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:2002: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1832: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:2005: \$? = $ac_status" >&5 -+ echo "$as_me:1835: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2008: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1838: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2011: \$? = $ac_status" >&5 -+ echo "$as_me:1841: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - ''\ -@@ -2020,7 +1850,7 @@ - 'void exit (int);' - do - cat >conftest.$ac_ext <<_ACEOF --#line 2023 "configure" -+#line 1853 "configure" - #include "confdefs.h" - #include - $ac_declaration -@@ -2033,16 +1863,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:2036: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1866: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:2039: \$? = $ac_status" >&5 -+ echo "$as_me:1869: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2042: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1872: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2045: \$? = $ac_status" >&5 -+ echo "$as_me:1875: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -2052,7 +1882,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF --#line 2055 "configure" -+#line 1885 "configure" - #include "confdefs.h" - $ac_declaration - int -@@ -2064,16 +1894,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:2067: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1897: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:2070: \$? = $ac_status" >&5 -+ echo "$as_me:1900: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2073: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1903: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2076: \$? = $ac_status" >&5 -+ echo "$as_me:1906: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -2103,60 +1933,251 @@ - - GCC_VERSION=none - if test "$GCC" = yes ; then -- echo "$as_me:2106: checking version of $CC" >&5 -+ echo "$as_me:1936: checking version of $CC" >&5 - echo $ECHO_N "checking version of $CC... $ECHO_C" >&6 -- GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`" -+ GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC[^)]*) //' -e 's/^.*(Debian[^)]*) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`" - test -z "$GCC_VERSION" && GCC_VERSION=unknown -- echo "$as_me:2110: result: $GCC_VERSION" >&5 -+ echo "$as_me:1940: result: $GCC_VERSION" >&5 - echo "${ECHO_T}$GCC_VERSION" >&6 - fi - --ac_ext=c --ac_cpp='$CPP $CPPFLAGS' --ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' --ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' --ac_compiler_gnu=$ac_cv_c_compiler_gnu --ac_main_return=return --echo "$as_me:2120: checking how to run the C preprocessor" >&5 --echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 --# On Suns, sometimes $CPP names a directory. --if test -n "$CPP" && test -d "$CPP"; then -- CPP= --fi --if test -z "$CPP"; then -- if test "${ac_cv_prog_CPP+set}" = set; then -+echo "$as_me:1944: checking for $CC option to accept ANSI C" >&5 -+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -+if test "${ac_cv_prog_cc_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- # Double quotes because CPP needs to be expanded -- for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" -- do -- ac_preproc_ok=false --for ac_c_preproc_warn_flag in '' yes --do -- # Use a header file that comes with gcc, so configuring glibc -- # with a fresh cross-compiler works. -- # On the NeXT, cc -E runs the code through the compiler's parser, -- # not just through cpp. "Syntax error" is here to catch this case. -- cat >conftest.$ac_ext <<_ACEOF --#line 2141 "configure" -+ ac_cv_prog_cc_stdc=no -+ac_save_CC=$CC -+cat >conftest.$ac_ext <<_ACEOF -+#line 1952 "configure" - #include "confdefs.h" --#include -- Syntax error -+#include -+#include -+#include -+#include -+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -+struct buf { int x; }; -+FILE * (*rcsopen) (struct buf *, struct stat *, int); -+static char *e (p, i) -+ char **p; -+ int i; -+{ -+ return p[i]; -+} -+static char *f (char * (*g) (char **, int), char **p, ...) -+{ -+ char *s; -+ va_list v; -+ va_start (v,p); -+ s = g (p, va_arg (v,int)); -+ va_end (v); -+ return s; -+} -+int test (int i, double x); -+struct s1 {int (*f) (int a);}; -+struct s2 {int (*f) (double a);}; -+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -+int argc; -+char **argv; -+int -+main () -+{ -+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; -+ ; -+ return 0; -+} - _ACEOF --if { (eval echo "$as_me:2146: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+# Don't try gcc -ansi; that turns off useful extensions and -+# breaks some systems' header files. -+# AIX -qlanglvl=ansi -+# Ultrix and OSF/1 -std1 -+# HP-UX 10.20 and later -Ae -+# HP-UX older versions -Aa -D_HPUX_SOURCE -+# SVR4 -Xc -D__EXTENSIONS__ -+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -+do -+ CC="$ac_save_CC $ac_arg" -+ rm -f conftest.$ac_objext -+if { (eval echo "$as_me:2001: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:2152: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -+ echo "$as_me:2004: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:2007: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:2010: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_prog_cc_stdc=$ac_arg -+break -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+fi -+rm -f conftest.$ac_objext -+done -+rm -f conftest.$ac_ext conftest.$ac_objext -+CC=$ac_save_CC -+ -+fi -+ -+case "x$ac_cv_prog_cc_stdc" in -+ x|xno) -+ echo "$as_me:2027: result: none needed" >&5 -+echo "${ECHO_T}none needed" >&6 ;; -+ *) -+ echo "$as_me:2030: result: $ac_cv_prog_cc_stdc" >&5 -+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 -+ CC="$CC $ac_cv_prog_cc_stdc" ;; -+esac -+ -+# This should have been defined by AC_PROG_CC -+: ${CC:=cc} -+ -+echo "$as_me:2038: checking \$CC variable" >&5 -+echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6 -+case "$CC" in #(vi -+*[\ \ ]-[IUD]*) -+ echo "$as_me:2042: result: broken" >&5 -+echo "${ECHO_T}broken" >&6 -+ { echo "$as_me:2044: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5 -+echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;} -+ # humor him... -+ cf_flags=`echo "$CC" | sed -e 's/^[^ ]*[ ]//'` -+ CC=`echo "$CC" | sed -e 's/[ ].*//'` -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_flags -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+ ;; -+*) -+ echo "$as_me:2130: result: ok" >&5 -+echo "${ECHO_T}ok" >&6 -+ ;; -+esac -+ -+ac_ext=c -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_c_compiler_gnu -+ac_main_return=return -+echo "$as_me:2141: checking how to run the C preprocessor" >&5 -+echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 -+# On Suns, sometimes $CPP names a directory. -+if test -n "$CPP" && test -d "$CPP"; then -+ CPP= -+fi -+if test -z "$CPP"; then -+ if test "${ac_cv_prog_CPP+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ # Double quotes because CPP needs to be expanded -+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" -+ do -+ ac_preproc_ok=false -+for ac_c_preproc_warn_flag in '' yes -+do -+ # Use a header file that comes with gcc, so configuring glibc -+ # with a fresh cross-compiler works. -+ # On the NeXT, cc -E runs the code through the compiler's parser, -+ # not just through cpp. "Syntax error" is here to catch this case. -+ cat >conftest.$ac_ext <<_ACEOF -+#line 2162 "configure" -+#include "confdefs.h" -+#include -+ Syntax error -+_ACEOF -+if { (eval echo "$as_me:2167: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:2173: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else - ac_cpp_err=yes - fi - if test -z "$ac_cpp_err"; then -@@ -2172,17 +2193,17 @@ - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF --#line 2175 "configure" -+#line 2196 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:2179: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:2200: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:2185: \$? = $ac_status" >&5 -+ echo "$as_me:2206: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -2219,7 +2240,7 @@ - else - ac_cv_prog_CPP=$CPP - fi --echo "$as_me:2222: result: $CPP" >&5 -+echo "$as_me:2243: result: $CPP" >&5 - echo "${ECHO_T}$CPP" >&6 - ac_preproc_ok=false - for ac_c_preproc_warn_flag in '' yes -@@ -2229,18 +2250,18 @@ - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF --#line 2232 "configure" -+#line 2253 "configure" - #include "confdefs.h" - #include - Syntax error - _ACEOF --if { (eval echo "$as_me:2237: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:2258: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:2243: \$? = $ac_status" >&5 -+ echo "$as_me:2264: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -2263,17 +2284,17 @@ - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF --#line 2266 "configure" -+#line 2287 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:2270: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:2291: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:2276: \$? = $ac_status" >&5 -+ echo "$as_me:2297: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -2301,7 +2322,7 @@ - if $ac_preproc_ok; then - : - else -- { { echo "$as_me:2304: error: C preprocessor \"$CPP\" fails sanity check" >&5 -+ { { echo "$as_me:2325: error: C preprocessor \"$CPP\" fails sanity check" >&5 - echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -2314,14 +2335,14 @@ - ac_main_return=return - - if test $ac_cv_c_compiler_gnu = yes; then -- echo "$as_me:2317: checking whether $CC needs -traditional" >&5 -+ echo "$as_me:2338: checking whether $CC needs -traditional" >&5 - echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6 - if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF --#line 2324 "configure" -+#line 2345 "configure" - #include "confdefs.h" - #include - int Autoconf = TIOCGETP; -@@ -2336,7 +2357,7 @@ - - if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF --#line 2339 "configure" -+#line 2360 "configure" - #include "confdefs.h" - #include - int Autoconf = TCGETA; -@@ -2349,14 +2370,14 @@ - - fi - fi --echo "$as_me:2352: result: $ac_cv_prog_gcc_traditional" >&5 -+echo "$as_me:2373: result: $ac_cv_prog_gcc_traditional" >&5 - echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6 - if test $ac_cv_prog_gcc_traditional = yes; then - CC="$CC -traditional" - fi - fi - --echo "$as_me:2359: checking whether $CC understands -c and -o together" >&5 -+echo "$as_me:2380: checking whether $CC understands -c and -o together" >&5 - echo $ECHO_N "checking whether $CC understands -c and -o together... $ECHO_C" >&6 - if test "${cf_cv_prog_CC_c_o+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2372,15 +2393,15 @@ - # We do the test twice because some compilers refuse to overwrite an - # existing .o file with -o, though they will create one. - ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&5' --if { (eval echo "$as_me:2375: \"$ac_try\"") >&5 -+if { (eval echo "$as_me:2396: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2378: \$? = $ac_status" >&5 -+ echo "$as_me:2399: \$? = $ac_status" >&5 - (exit $ac_status); } && -- test -f conftest2.$ac_objext && { (eval echo "$as_me:2380: \"$ac_try\"") >&5 -+ test -f conftest2.$ac_objext && { (eval echo "$as_me:2401: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2383: \$? = $ac_status" >&5 -+ echo "$as_me:2404: \$? = $ac_status" >&5 - (exit $ac_status); }; - then - eval cf_cv_prog_CC_c_o=yes -@@ -2391,581 +2412,287 @@ - - fi - if test $cf_cv_prog_CC_c_o = yes; then -- echo "$as_me:2394: result: yes" >&5 -+ echo "$as_me:2415: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - else -- echo "$as_me:2397: result: no" >&5 -+ echo "$as_me:2418: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - --echo "$as_me:2401: checking for POSIXized ISC" >&5 --echo $ECHO_N "checking for POSIXized ISC... $ECHO_C" >&6 --if test -d /etc/conf/kconfig.d && -- grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1 --then -- echo "$as_me:2406: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- ISC=yes # If later tests want to check for ISC. -+if test "$cross_compiling" = yes ; then -+ LDCONFIG=: -+else -+case "$cf_cv_system_name" in #(vi -+dragonfly*|mirbsd*|freebsd*) #(vi -+ test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R" -+ ;; -+*) LDPATH=$PATH:/sbin:/usr/sbin -+ # Extract the first word of "ldconfig", so it can be a program name with args. -+set dummy ldconfig; ac_word=$2 -+echo "$as_me:2432: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_path_LDCONFIG+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ case $LDCONFIG in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_LDCONFIG="$LDCONFIG" # Let the user override the test with a path. -+ ;; -+ *) -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$LDPATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ if $as_executable_p "$ac_dir/$ac_word"; then -+ ac_cv_path_LDCONFIG="$ac_dir/$ac_word" -+ echo "$as_me:2449: found $ac_dir/$ac_word" >&5 -+ break -+fi -+done - --cat >>confdefs.h <<\EOF --#define _POSIX_SOURCE 1 --EOF -+ ;; -+esac -+fi -+LDCONFIG=$ac_cv_path_LDCONFIG - -- if test "$GCC" = yes; then -- CC="$CC -posix" -- else -- CC="$CC -Xp" -- fi -+if test -n "$LDCONFIG"; then -+ echo "$as_me:2460: result: $LDCONFIG" >&5 -+echo "${ECHO_T}$LDCONFIG" >&6 - else -- echo "$as_me:2420: result: no" >&5 -+ echo "$as_me:2463: result: no" >&5 - echo "${ECHO_T}no" >&6 -- ISC= - fi - --echo "$as_me:2425: checking for ${CC:-cc} option to accept ANSI C" >&5 --echo $ECHO_N "checking for ${CC:-cc} option to accept ANSI C... $ECHO_C" >&6 --if test "${cf_cv_ansi_cc+set}" = set; then -+ ;; -+esac -+fi -+ -+echo "$as_me:2471: checking if you want to ensure bool is consistent with C++" >&5 -+echo $ECHO_N "checking if you want to ensure bool is consistent with C++... $ECHO_C" >&6 -+ -+# Check whether --with-cxx or --without-cxx was given. -+if test "${with_cxx+set}" = set; then -+ withval="$with_cxx" -+ cf_with_cxx=$withval -+else -+ cf_with_cxx=yes -+fi; -+echo "$as_me:2481: result: $cf_with_cxx" >&5 -+echo "${ECHO_T}$cf_with_cxx" >&6 -+if test "X$cf_with_cxx" = Xno ; then -+ CXX="" -+ GXX="" -+else -+ # with autoconf 2.13, we can change the error to a warning: -+ ac_ext=cc -+ac_cpp='$CXXCPP $CPPFLAGS' -+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -+ac_main_return=return -+if test -n "$ac_tool_prefix"; then -+ for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:2499: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_CXX+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -+ if test -n "$CXX"; then -+ ac_cv_prog_CXX="$CXX" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" -+echo "$as_me:2514: found $ac_dir/$ac_word" >&5 -+break -+done - --cf_cv_ansi_cc=no --cf_save_CFLAGS="$CFLAGS" --cf_save_CPPFLAGS="$CPPFLAGS" --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX -Aa -D_HPUX_SOURCE --# SVR4 -Xc --# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes) --for cf_arg in "-DCC_HAS_PROTOS" \ -- "" \ -- -qlanglvl=ansi \ -- -std1 \ -- -Ae \ -- "-Aa -D_HPUX_SOURCE" \ -- -Xc --do -+fi -+fi -+CXX=$ac_cv_prog_CXX -+if test -n "$CXX"; then -+ echo "$as_me:2522: result: $CXX" >&5 -+echo "${ECHO_T}$CXX" >&6 -+else -+ echo "$as_me:2525: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi - --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in $cf_arg -+ test -n "$CXX" && break -+ done -+fi -+if test -z "$CXX"; then -+ ac_ct_CXX=$CXX -+ for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC - do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -- -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -- --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -- -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:2538: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_CXX"; then -+ ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_ac_ct_CXX="$ac_prog" -+echo "$as_me:2553: found $ac_dir/$ac_word" >&5 -+break - done - --if test -n "$cf_new_cflags" ; then -- -- CFLAGS="$CFLAGS $cf_new_cflags" - fi -- --if test -n "$cf_new_cppflags" ; then -- -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ac_ct_CXX=$ac_cv_prog_ac_ct_CXX -+if test -n "$ac_ct_CXX"; then -+ echo "$as_me:2561: result: $ac_ct_CXX" >&5 -+echo "${ECHO_T}$ac_ct_CXX" >&6 -+else -+ echo "$as_me:2564: result: no" >&5 -+echo "${ECHO_T}no" >&6 - fi - --if test -n "$cf_new_extra_cppflags" ; then -+ test -n "$ac_ct_CXX" && break -+done -+test -n "$ac_ct_CXX" || ac_ct_CXX="g++" - -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+ CXX=$ac_ct_CXX - fi - -- cat >conftest.$ac_ext <<_ACEOF --#line 2529 "configure" --#include "confdefs.h" -+# Provide some information about the compiler. -+echo "$as_me:2576:" \ -+ "checking for C++ compiler version" >&5 -+ac_compiler=`set X $ac_compile; echo $2` -+{ (eval echo "$as_me:2579: \"$ac_compiler --version &5\"") >&5 -+ (eval $ac_compiler --version &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:2582: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+{ (eval echo "$as_me:2584: \"$ac_compiler -v &5\"") >&5 -+ (eval $ac_compiler -v &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:2587: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+{ (eval echo "$as_me:2589: \"$ac_compiler -V &5\"") >&5 -+ (eval $ac_compiler -V &5) 2>&5 -+ ac_status=$? -+ echo "$as_me:2592: \$? = $ac_status" >&5 -+ (exit $ac_status); } - --#ifndef CC_HAS_PROTOS --#if !defined(__STDC__) || (__STDC__ != 1) --choke me --#endif --#endif -+echo "$as_me:2595: checking whether we are using the GNU C++ compiler" >&5 -+echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6 -+if test "${ac_cv_cxx_compiler_gnu+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 2601 "configure" -+#include "confdefs.h" - - int - main () - { -+#ifndef __GNUC__ -+ choke me -+#endif - -- int test (int i, double x); -- struct s1 {int (*f) (int a);}; -- struct s2 {int (*f) (double a);}; - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:2550: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:2616: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:2553: \$? = $ac_status" >&5 -+ echo "$as_me:2619: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2556: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:2622: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2559: \$? = $ac_status" >&5 -+ echo "$as_me:2625: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ansi_cc="$cf_arg"; break -+ ac_compiler_gnu=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+ac_compiler_gnu=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext --done --CFLAGS="$cf_save_CFLAGS" --CPPFLAGS="$cf_save_CPPFLAGS" -- --fi --echo "$as_me:2572: result: $cf_cv_ansi_cc" >&5 --echo "${ECHO_T}$cf_cv_ansi_cc" >&6 -- --if test "$cf_cv_ansi_cc" != "no"; then --if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in $cf_cv_ansi_cc --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -- -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -- --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -- -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -- --if test -n "$cf_new_cflags" ; then -- -- CFLAGS="$CFLAGS $cf_new_cflags" --fi -- --if test -n "$cf_new_cppflags" ; then -+ac_cv_cxx_compiler_gnu=$ac_compiler_gnu - -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" - fi -+echo "$as_me:2637: result: $ac_cv_cxx_compiler_gnu" >&5 -+echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6 -+GXX=`test $ac_compiler_gnu = yes && echo yes` -+ac_test_CXXFLAGS=${CXXFLAGS+set} -+ac_save_CXXFLAGS=$CXXFLAGS -+CXXFLAGS="-g" -+echo "$as_me:2643: checking whether $CXX accepts -g" >&5 -+echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6 -+if test "${ac_cv_prog_cxx_g+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 2649 "configure" -+#include "confdefs.h" - --if test -n "$cf_new_extra_cppflags" ; then -- -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" --fi -+int -+main () -+{ - -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:2661: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:2664: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:2667: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:2670: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_prog_cxx_g=yes - else -- cat >>confdefs.h <<\EOF --#define CC_HAS_PROTOS 1 --EOF -- -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_prog_cxx_g=no - fi -+rm -f conftest.$ac_objext conftest.$ac_ext - fi -- --if test "$cf_cv_ansi_cc" = "no"; then -- { { echo "$as_me:2665: error: Your compiler does not appear to recognize prototypes. --You have the following choices: -- a. adjust your compiler options -- b. get an up-to-date compiler -- c. use a wrapper such as unproto" >&5 --echo "$as_me: error: Your compiler does not appear to recognize prototypes. --You have the following choices: -- a. adjust your compiler options -- b. get an up-to-date compiler -- c. use a wrapper such as unproto" >&2;} -- { (exit 1); exit 1; }; } --fi -- --case $cf_cv_system_name in --os2*) -- CFLAGS="$CFLAGS -Zmt" -- CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__" -- CXXFLAGS="$CXXFLAGS -Zmt" -- # autoconf's macro sets -Zexe and suffix both, which conflict:w -- LDFLAGS="$LDFLAGS -Zmt -Zcrtdll" -- ac_cv_exeext=.exe -- ;; --esac -- --PROG_EXT="$EXEEXT" -- --test -n "$PROG_EXT" && cat >>confdefs.h <&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_path_LDCONFIG+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- case $LDCONFIG in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_LDCONFIG="$LDCONFIG" # Let the user override the test with a path. -- ;; -- *) -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$LDPATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- if $as_executable_p "$ac_dir/$ac_word"; then -- ac_cv_path_LDCONFIG="$ac_dir/$ac_word" -- echo "$as_me:2722: found $ac_dir/$ac_word" >&5 -- break --fi --done -- -- ;; --esac --fi --LDCONFIG=$ac_cv_path_LDCONFIG -- --if test -n "$LDCONFIG"; then -- echo "$as_me:2733: result: $LDCONFIG" >&5 --echo "${ECHO_T}$LDCONFIG" >&6 --else -- echo "$as_me:2736: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- ;; --esac --fi -- --echo "$as_me:2744: checking if you want to ensure bool is consistent with C++" >&5 --echo $ECHO_N "checking if you want to ensure bool is consistent with C++... $ECHO_C" >&6 -- --# Check whether --with-cxx or --without-cxx was given. --if test "${with_cxx+set}" = set; then -- withval="$with_cxx" -- cf_with_cxx=$withval --else -- cf_with_cxx=yes --fi; --echo "$as_me:2754: result: $cf_with_cxx" >&5 --echo "${ECHO_T}$cf_with_cxx" >&6 --if test "X$cf_with_cxx" = Xno ; then -- CXX="" -- GXX="" --else -- # with autoconf 2.13, we can change the error to a warning: -- ac_ext=cc --ac_cpp='$CXXCPP $CPPFLAGS' --ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' --ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' --ac_compiler_gnu=$ac_cv_cxx_compiler_gnu --ac_main_return=return --if test -n "$ac_tool_prefix"; then -- for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC -- do -- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. --set dummy $ac_tool_prefix$ac_prog; ac_word=$2 --echo "$as_me:2772: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_CXX+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$CXX"; then -- ac_cv_prog_CXX="$CXX" # Let the user override the test. --else -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" --echo "$as_me:2787: found $ac_dir/$ac_word" >&5 --break --done -- --fi --fi --CXX=$ac_cv_prog_CXX --if test -n "$CXX"; then -- echo "$as_me:2795: result: $CXX" >&5 --echo "${ECHO_T}$CXX" >&6 --else -- echo "$as_me:2798: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$CXX" && break -- done --fi --if test -z "$CXX"; then -- ac_ct_CXX=$CXX -- for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC --do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 --echo "$as_me:2811: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test -n "$ac_ct_CXX"; then -- ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. --else -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- $as_executable_p "$ac_dir/$ac_word" || continue --ac_cv_prog_ac_ct_CXX="$ac_prog" --echo "$as_me:2826: found $ac_dir/$ac_word" >&5 --break --done -- --fi --fi --ac_ct_CXX=$ac_cv_prog_ac_ct_CXX --if test -n "$ac_ct_CXX"; then -- echo "$as_me:2834: result: $ac_ct_CXX" >&5 --echo "${ECHO_T}$ac_ct_CXX" >&6 --else -- echo "$as_me:2837: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$ac_ct_CXX" && break --done --test -n "$ac_ct_CXX" || ac_ct_CXX="g++" -- -- CXX=$ac_ct_CXX --fi -- --# Provide some information about the compiler. --echo "$as_me:2849:" \ -- "checking for C++ compiler version" >&5 --ac_compiler=`set X $ac_compile; echo $2` --{ (eval echo "$as_me:2852: \"$ac_compiler --version &5\"") >&5 -- (eval $ac_compiler --version &5) 2>&5 -- ac_status=$? -- echo "$as_me:2855: \$? = $ac_status" >&5 -- (exit $ac_status); } --{ (eval echo "$as_me:2857: \"$ac_compiler -v &5\"") >&5 -- (eval $ac_compiler -v &5) 2>&5 -- ac_status=$? -- echo "$as_me:2860: \$? = $ac_status" >&5 -- (exit $ac_status); } --{ (eval echo "$as_me:2862: \"$ac_compiler -V &5\"") >&5 -- (eval $ac_compiler -V &5) 2>&5 -- ac_status=$? -- echo "$as_me:2865: \$? = $ac_status" >&5 -- (exit $ac_status); } -- --echo "$as_me:2868: checking whether we are using the GNU C++ compiler" >&5 --echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6 --if test "${ac_cv_cxx_compiler_gnu+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 2874 "configure" --#include "confdefs.h" -- --int --main () --{ --#ifndef __GNUC__ -- choke me --#endif -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:2889: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:2892: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2895: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:2898: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_compiler_gnu=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_compiler_gnu=no --fi --rm -f conftest.$ac_objext conftest.$ac_ext --ac_cv_cxx_compiler_gnu=$ac_compiler_gnu -- --fi --echo "$as_me:2910: result: $ac_cv_cxx_compiler_gnu" >&5 --echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6 --GXX=`test $ac_compiler_gnu = yes && echo yes` --ac_test_CXXFLAGS=${CXXFLAGS+set} --ac_save_CXXFLAGS=$CXXFLAGS --CXXFLAGS="-g" --echo "$as_me:2916: checking whether $CXX accepts -g" >&5 --echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6 --if test "${ac_cv_prog_cxx_g+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 2922 "configure" --#include "confdefs.h" -- --int --main () --{ -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:2934: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:2937: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2940: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:2943: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_prog_cxx_g=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_prog_cxx_g=no --fi --rm -f conftest.$ac_objext conftest.$ac_ext --fi --echo "$as_me:2953: result: $ac_cv_prog_cxx_g" >&5 --echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6 --if test "$ac_test_CXXFLAGS" = set; then -- CXXFLAGS=$ac_save_CXXFLAGS --elif test $ac_cv_prog_cxx_g = yes; then -- if test "$GXX" = yes; then -- CXXFLAGS="-g -O2" -- else -- CXXFLAGS="-g" -- fi --else -- if test "$GXX" = yes; then -- CXXFLAGS="-O2" -- else -- CXXFLAGS= -- fi -+echo "$as_me:2680: result: $ac_cv_prog_cxx_g" >&5 -+echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6 -+if test "$ac_test_CXXFLAGS" = set; then -+ CXXFLAGS=$ac_save_CXXFLAGS -+elif test $ac_cv_prog_cxx_g = yes; then -+ if test "$GXX" = yes; then -+ CXXFLAGS="-g -O2" -+ else -+ CXXFLAGS="-g" -+ fi -+else -+ if test "$GXX" = yes; then -+ CXXFLAGS="-O2" -+ else -+ CXXFLAGS= -+ fi - fi - for ac_declaration in \ - ''\ -@@ -2977,7 +2704,7 @@ - 'void exit (int);' - do - cat >conftest.$ac_ext <<_ACEOF --#line 2980 "configure" -+#line 2707 "configure" - #include "confdefs.h" - #include - $ac_declaration -@@ -2990,16 +2717,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:2993: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:2720: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:2996: \$? = $ac_status" >&5 -+ echo "$as_me:2723: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2999: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:2726: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3002: \$? = $ac_status" >&5 -+ echo "$as_me:2729: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -3009,7 +2736,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF --#line 3012 "configure" -+#line 2739 "configure" - #include "confdefs.h" - $ac_declaration - int -@@ -3021,16 +2748,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:3024: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:2751: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3027: \$? = $ac_status" >&5 -+ echo "$as_me:2754: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3030: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:2757: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3033: \$? = $ac_status" >&5 -+ echo "$as_me:2760: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -3053,11 +2780,11 @@ - ac_compiler_gnu=$ac_cv_c_compiler_gnu - ac_main_return=return - -- # autoconf 2.5x removed the error - by hardcoding it to g++. -+ # autoconf 2.5x removed the error (hardcoding it to g++, or just blank) - if test "$CXX" = "g++" ; then - # Extract the first word of "g++", so it can be a program name with args. - set dummy g++; ac_word=$2 --echo "$as_me:3060: checking for $ac_word" >&5 -+echo "$as_me:2787: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_path_CXX+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3074,7 +2801,7 @@ - test -z "$ac_dir" && ac_dir=. - if $as_executable_p "$ac_dir/$ac_word"; then - ac_cv_path_CXX="$ac_dir/$ac_word" -- echo "$as_me:3077: found $ac_dir/$ac_word" >&5 -+ echo "$as_me:2804: found $ac_dir/$ac_word" >&5 - break - fi - done -@@ -3085,28 +2812,30 @@ - CXX=$ac_cv_path_CXX - - if test -n "$CXX"; then -- echo "$as_me:3088: result: $CXX" >&5 -+ echo "$as_me:2815: result: $CXX" >&5 - echo "${ECHO_T}$CXX" >&6 - else -- echo "$as_me:3091: result: no" >&5 -+ echo "$as_me:2818: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - - fi -- if test "$CXX" = "g++" ; then -- { echo "$as_me:3097: WARNING: ignoring hardcoded g++" >&5 --echo "$as_me: WARNING: ignoring hardcoded g++" >&2;} -+ case "x$CXX" in #(vi -+ x|xg++) -+ { echo "$as_me:2825: WARNING: You don't have any C++ compiler, too bad" >&5 -+echo "$as_me: WARNING: You don't have any C++ compiler, too bad" >&2;} - cf_with_cxx=no; CXX=""; GXX=""; -- fi -+ ;; -+ esac - fi - - GXX_VERSION=none - if test "$GXX" = yes; then -- echo "$as_me:3105: checking version of g++" >&5 --echo $ECHO_N "checking version of g++... $ECHO_C" >&6 -+ echo "$as_me:2834: checking version of ${CXX:-g++}" >&5 -+echo $ECHO_N "checking version of ${CXX:-g++}... $ECHO_C" >&6 - GXX_VERSION="`${CXX:-g++} --version| sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`" - test -z "$GXX_VERSION" && GXX_VERSION=unknown -- echo "$as_me:3109: result: $GXX_VERSION" >&5 -+ echo "$as_me:2838: result: $GXX_VERSION" >&5 - echo "${ECHO_T}$GXX_VERSION" >&6 - fi - -@@ -3114,12 +2843,12 @@ - 1*|2.[0-6]*) - # GXX=""; CXX=""; ac_cv_prog_gxx=no - # cf_cxx_library=no -- { echo "$as_me:3117: WARNING: templates do not work" >&5 -+ { echo "$as_me:2846: WARNING: templates do not work" >&5 - echo "$as_me: WARNING: templates do not work" >&2;} - ;; - esac - --echo "$as_me:3122: checking if you want to build C++ binding and demo" >&5 -+echo "$as_me:2851: checking if you want to build C++ binding and demo" >&5 - echo $ECHO_N "checking if you want to build C++ binding and demo... $ECHO_C" >&6 - - # Check whether --with-cxx-binding or --without-cxx-binding was given. -@@ -3129,23 +2858,28 @@ - else - cf_with_cxx_binding=$cf_with_cxx - fi; --echo "$as_me:3132: result: $cf_with_cxx_binding" >&5 -+echo "$as_me:2861: result: $cf_with_cxx_binding" >&5 - echo "${ECHO_T}$cf_with_cxx_binding" >&6 - --echo "$as_me:3135: checking if you want to build with Ada95" >&5 -+echo "$as_me:2864: checking if you want to build with Ada95" >&5 - echo $ECHO_N "checking if you want to build with Ada95... $ECHO_C" >&6 -+echo "$as_me:2866: result: $cf_with_ada" >&5 -+echo "${ECHO_T}$cf_with_ada" >&6 - --# Check whether --with-ada or --without-ada was given. --if test "${with_ada+set}" = set; then -- withval="$with_ada" -- cf_with_ada=$withval -+echo "$as_me:2869: checking if you want to install terminal database" >&5 -+echo $ECHO_N "checking if you want to install terminal database... $ECHO_C" >&6 -+ -+# Check whether --enable-db-install or --disable-db-install was given. -+if test "${enable_db_install+set}" = set; then -+ enableval="$enable_db_install" -+ cf_with_db_install=$enableval - else -- cf_with_ada=yes -+ cf_with_db_install=yes - fi; --echo "$as_me:3145: result: $cf_with_ada" >&5 --echo "${ECHO_T}$cf_with_ada" >&6 -+echo "$as_me:2879: result: $cf_with_db_install" >&5 -+echo "${ECHO_T}$cf_with_db_install" >&6 - --echo "$as_me:3148: checking if you want to install manpages" >&5 -+echo "$as_me:2882: checking if you want to install manpages" >&5 - echo $ECHO_N "checking if you want to install manpages... $ECHO_C" >&6 - - # Check whether --with-manpages or --without-manpages was given. -@@ -3155,10 +2889,10 @@ - else - cf_with_manpages=yes - fi; --echo "$as_me:3158: result: $cf_with_manpages" >&5 -+echo "$as_me:2892: result: $cf_with_manpages" >&5 - echo "${ECHO_T}$cf_with_manpages" >&6 - --echo "$as_me:3161: checking if you want to build programs such as tic" >&5 -+echo "$as_me:2895: checking if you want to build programs such as tic" >&5 - echo $ECHO_N "checking if you want to build programs such as tic... $ECHO_C" >&6 - - # Check whether --with-progs or --without-progs was given. -@@ -3168,10 +2902,10 @@ - else - cf_with_progs=yes - fi; --echo "$as_me:3171: result: $cf_with_progs" >&5 -+echo "$as_me:2905: result: $cf_with_progs" >&5 - echo "${ECHO_T}$cf_with_progs" >&6 - --echo "$as_me:3174: checking if you want to build test-programs" >&5 -+echo "$as_me:2908: checking if you want to build test-programs" >&5 - echo $ECHO_N "checking if you want to build test-programs... $ECHO_C" >&6 - - # Check whether --with-tests or --without-tests was given. -@@ -3181,10 +2915,10 @@ - else - cf_with_tests=yes - fi; --echo "$as_me:3184: result: $cf_with_tests" >&5 -+echo "$as_me:2918: result: $cf_with_tests" >&5 - echo "${ECHO_T}$cf_with_tests" >&6 - --echo "$as_me:3187: checking if you wish to install curses.h" >&5 -+echo "$as_me:2921: checking if you wish to install curses.h" >&5 - echo $ECHO_N "checking if you wish to install curses.h... $ECHO_C" >&6 - - # Check whether --with-curses-h or --without-curses-h was given. -@@ -3194,7 +2928,7 @@ - else - with_curses_h=yes - fi; --echo "$as_me:3197: result: $with_curses_h" >&5 -+echo "$as_me:2931: result: $with_curses_h" >&5 - echo "${ECHO_T}$with_curses_h" >&6 - - modules_to_build="ncurses" -@@ -3220,7 +2954,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:3223: checking for $ac_word" >&5 -+echo "$as_me:2957: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_AWK+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3235,7 +2969,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_AWK="$ac_prog" --echo "$as_me:3238: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2972: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3243,21 +2977,21 @@ - fi - AWK=$ac_cv_prog_AWK - if test -n "$AWK"; then -- echo "$as_me:3246: result: $AWK" >&5 -+ echo "$as_me:2980: result: $AWK" >&5 - echo "${ECHO_T}$AWK" >&6 - else -- echo "$as_me:3249: result: no" >&5 -+ echo "$as_me:2983: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - - test -n "$AWK" && break - done - --test -z "$AWK" && { { echo "$as_me:3256: error: No awk program found" >&5 -+test -z "$AWK" && { { echo "$as_me:2990: error: No awk program found" >&5 - echo "$as_me: error: No awk program found" >&2;} - { (exit 1); exit 1; }; } - --echo "$as_me:3260: checking for egrep" >&5 -+echo "$as_me:2994: checking for egrep" >&5 - echo $ECHO_N "checking for egrep... $ECHO_C" >&6 - if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3267,11 +3001,11 @@ - else ac_cv_prog_egrep='egrep' - fi - fi --echo "$as_me:3270: result: $ac_cv_prog_egrep" >&5 -+echo "$as_me:3004: result: $ac_cv_prog_egrep" >&5 - echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep - --test -z "$EGREP" && { { echo "$as_me:3274: error: No egrep program found" >&5 -+test -z "$EGREP" && { { echo "$as_me:3008: error: No egrep program found" >&5 - echo "$as_me: error: No egrep program found" >&2;} - { (exit 1); exit 1; }; } - -@@ -3287,7 +3021,7 @@ - # AFS /usr/afsws/bin/install, which mishandles nonexistent args - # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" - # ./install, which can be erroneously created by make from ./install.sh. --echo "$as_me:3290: checking for a BSD compatible install" >&5 -+echo "$as_me:3024: checking for a BSD compatible install" >&5 - echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6 - if test -z "$INSTALL"; then - if test "${ac_cv_path_install+set}" = set; then -@@ -3336,7 +3070,7 @@ - INSTALL=$ac_install_sh - fi - fi --echo "$as_me:3339: result: $INSTALL" >&5 -+echo "$as_me:3073: result: $INSTALL" >&5 - echo "${ECHO_T}$INSTALL" >&6 - - # Use test -z because SunOS4 sh mishandles braces in ${var-val}. -@@ -3361,7 +3095,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:3364: checking for $ac_word" >&5 -+echo "$as_me:3098: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_LINT+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3376,7 +3110,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_LINT="$ac_prog" --echo "$as_me:3379: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3113: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3384,28 +3118,28 @@ - fi - LINT=$ac_cv_prog_LINT - if test -n "$LINT"; then -- echo "$as_me:3387: result: $LINT" >&5 -+ echo "$as_me:3121: result: $LINT" >&5 - echo "${ECHO_T}$LINT" >&6 - else -- echo "$as_me:3390: result: no" >&5 -+ echo "$as_me:3124: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - - test -n "$LINT" && break - done - --echo "$as_me:3397: checking whether ln -s works" >&5 -+echo "$as_me:3131: checking whether ln -s works" >&5 - echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6 - LN_S=$as_ln_s - if test "$LN_S" = "ln -s"; then -- echo "$as_me:3401: result: yes" >&5 -+ echo "$as_me:3135: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - else -- echo "$as_me:3404: result: no, using $LN_S" >&5 -+ echo "$as_me:3138: result: no, using $LN_S" >&5 - echo "${ECHO_T}no, using $LN_S" >&6 - fi - --echo "$as_me:3408: checking if $LN_S -f options work" >&5 -+echo "$as_me:3142: checking if $LN_S -f options work" >&5 - echo $ECHO_N "checking if $LN_S -f options work... $ECHO_C" >&6 - - rm -f conf$$.src conf$$dst -@@ -3417,12 +3151,12 @@ - cf_prog_ln_sf=no - fi - rm -f conf$$.dst conf$$src --echo "$as_me:3420: result: $cf_prog_ln_sf" >&5 -+echo "$as_me:3154: result: $cf_prog_ln_sf" >&5 - echo "${ECHO_T}$cf_prog_ln_sf" >&6 - - test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f" - --echo "$as_me:3425: checking for long file names" >&5 -+echo "$as_me:3159: checking for long file names" >&5 - echo $ECHO_N "checking for long file names... $ECHO_C" >&6 - if test "${ac_cv_sys_long_file_names+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3461,7 +3195,7 @@ - rm -rf $ac_xdir 2>/dev/null - done - fi --echo "$as_me:3464: result: $ac_cv_sys_long_file_names" >&5 -+echo "$as_me:3198: result: $ac_cv_sys_long_file_names" >&5 - echo "${ECHO_T}$ac_cv_sys_long_file_names" >&6 - if test $ac_cv_sys_long_file_names = yes; then - -@@ -3473,7 +3207,7 @@ - - # if we find pkg-config, check if we should install the ".pc" files. - --echo "$as_me:3476: checking if you want to use pkg-config" >&5 -+echo "$as_me:3210: checking if you want to use pkg-config" >&5 - echo $ECHO_N "checking if you want to use pkg-config... $ECHO_C" >&6 - - # Check whether --with-pkg-config or --without-pkg-config was given. -@@ -3483,7 +3217,7 @@ - else - cf_pkg_config=yes - fi; --echo "$as_me:3486: result: $cf_pkg_config" >&5 -+echo "$as_me:3220: result: $cf_pkg_config" >&5 - echo "${ECHO_T}$cf_pkg_config" >&6 - - case $cf_pkg_config in #(vi -@@ -3491,10 +3225,11 @@ - PKG_CONFIG=none - ;; - yes) #(vi -- if test -n "$ac_tool_prefix"; then -+ -+if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. - set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 --echo "$as_me:3497: checking for $ac_word" >&5 -+echo "$as_me:3232: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_path_PKG_CONFIG+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3511,7 +3246,7 @@ - test -z "$ac_dir" && ac_dir=. - if $as_executable_p "$ac_dir/$ac_word"; then - ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:3514: found $ac_dir/$ac_word" >&5 -+ echo "$as_me:3249: found $ac_dir/$ac_word" >&5 - break - fi - done -@@ -3522,10 +3257,10 @@ - PKG_CONFIG=$ac_cv_path_PKG_CONFIG - - if test -n "$PKG_CONFIG"; then -- echo "$as_me:3525: result: $PKG_CONFIG" >&5 -+ echo "$as_me:3260: result: $PKG_CONFIG" >&5 - echo "${ECHO_T}$PKG_CONFIG" >&6 - else -- echo "$as_me:3528: result: no" >&5 -+ echo "$as_me:3263: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3534,7 +3269,7 @@ - ac_pt_PKG_CONFIG=$PKG_CONFIG - # Extract the first word of "pkg-config", so it can be a program name with args. - set dummy pkg-config; ac_word=$2 --echo "$as_me:3537: checking for $ac_word" >&5 -+echo "$as_me:3272: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3551,7 +3286,7 @@ - test -z "$ac_dir" && ac_dir=. - if $as_executable_p "$ac_dir/$ac_word"; then - ac_cv_path_ac_pt_PKG_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:3554: found $ac_dir/$ac_word" >&5 -+ echo "$as_me:3289: found $ac_dir/$ac_word" >&5 - break - fi - done -@@ -3563,10 +3298,10 @@ - ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG - - if test -n "$ac_pt_PKG_CONFIG"; then -- echo "$as_me:3566: result: $ac_pt_PKG_CONFIG" >&5 -+ echo "$as_me:3301: result: $ac_pt_PKG_CONFIG" >&5 - echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6 - else -- echo "$as_me:3569: result: no" >&5 -+ echo "$as_me:3304: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3597,7 +3332,7 @@ - ;; - .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX - ;; --.\${*prefix}*) #(vi -+.\${*prefix}*|.\${*dir}*) #(vi - eval PKG_CONFIG="$PKG_CONFIG" - case ".$PKG_CONFIG" in #(vi - .NONE/*) -@@ -3609,7 +3344,7 @@ - PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%` - ;; - *) -- { { echo "$as_me:3612: error: expected a pathname, not \"$PKG_CONFIG\"" >&5 -+ { { echo "$as_me:3347: error: expected a pathname, not \"$PKG_CONFIG\"" >&5 - echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;} - { (exit 1); exit 1; }; } - ;; -@@ -3617,16 +3352,51 @@ - - fi - --if test "$PKG_CONFIG" != no ; then -- echo "$as_me:3621: checking if we should install .pc files for $PKG_CONFIG" >&5 --echo $ECHO_N "checking if we should install .pc files for $PKG_CONFIG... $ECHO_C" >&6 -+if test "$PKG_CONFIG" != none ; then -+ echo "$as_me:3356: checking for $PKG_CONFIG library directory" >&5 -+echo $ECHO_N "checking for $PKG_CONFIG library directory... $ECHO_C" >&6 - -- # Leave this as something that can be overridden in the environment. -- if test -z "$PKG_CONFIG_LIBDIR" ; then -- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`/lib/pkgconfig -- fi -- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'` -- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then -+# Check whether --with-pkg-config-libdir or --without-pkg-config-libdir was given. -+if test "${with_pkg_config_libdir+set}" = set; then -+ withval="$with_pkg_config_libdir" -+ PKG_CONFIG_LIBDIR=$withval -+else -+ PKG_CONFIG_LIBDIR=yes -+fi; -+ -+ case x$PKG_CONFIG_LIBDIR in #(vi -+ x/*) #(vi -+ ;; -+ xyes) #(vi -+ # look for the library directory using the same prefix as the executable -+ cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'` -+ case x`(arch) 2>/dev/null` in #(vi -+ *64) #(vi -+ for cf_config in $cf_path/share $cf_path/lib64 $cf_path/lib32 $cf_path/lib -+ do -+ if test -d $cf_config/pkgconfig -+ then -+ PKG_CONFIG_LIBDIR=$cf_config/pkgconfig -+ break -+ fi -+ done -+ ;; -+ *) -+ PKG_CONFIG_LIBDIR=$cf_path/lib/pkgconfig -+ ;; -+ esac -+ ;; -+ *) -+ ;; -+ esac -+ -+ echo "$as_me:3393: result: $PKG_CONFIG_LIBDIR" >&5 -+echo "${ECHO_T}$PKG_CONFIG_LIBDIR" >&6 -+fi -+ -+if test "$PKG_CONFIG" != none ; then -+ echo "$as_me:3398: checking if we should install .pc files for $PKG_CONFIG" >&5 -+echo $ECHO_N "checking if we should install .pc files for $PKG_CONFIG... $ECHO_C" >&6 - - # Check whether --enable-pc-files or --disable-pc-files was given. - if test "${enable_pc_files+set}" = set; then -@@ -3635,18 +3405,48 @@ - else - enable_pc_files=no - fi; -- echo "$as_me:3638: result: $enable_pc_files" >&5 -+ echo "$as_me:3408: result: $enable_pc_files" >&5 - echo "${ECHO_T}$enable_pc_files" >&6 -- else -- echo "$as_me:3641: result: no" >&5 --echo "${ECHO_T}no" >&6 -- { echo "$as_me:3643: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&5 --echo "$as_me: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&2;} -- enable_pc_files=no -+ if test "$enable_pc_files" != no -+ then -+ -+if test "x$prefix" != xNONE; then -+ cf_path_syntax="$prefix" -+else -+ cf_path_syntax="$ac_default_prefix" -+fi -+ -+case ".$PKG_CONFIG_LIBDIR" in #(vi -+.\$\(*\)*|.\'*\'*) #(vi -+ ;; -+..|./*|.\\*) #(vi -+ ;; -+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX -+ ;; -+.\${*prefix}*|.\${*dir}*) #(vi -+ eval PKG_CONFIG_LIBDIR="$PKG_CONFIG_LIBDIR" -+ case ".$PKG_CONFIG_LIBDIR" in #(vi -+ .NONE/*) -+ PKG_CONFIG_LIBDIR=`echo $PKG_CONFIG_LIBDIR | sed -e s%NONE%$cf_path_syntax%` -+ ;; -+ esac -+ ;; #(vi -+.no|.NONE/*) -+ PKG_CONFIG_LIBDIR=`echo $PKG_CONFIG_LIBDIR | sed -e s%NONE%$cf_path_syntax%` -+ ;; -+*) -+ { { echo "$as_me:3438: error: expected a pathname, not \"$PKG_CONFIG_LIBDIR\"" >&5 -+echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG_LIBDIR\"" >&2;} -+ { (exit 1); exit 1; }; } -+ ;; -+esac -+ - fi -+else -+ enable_pc_files=no - fi - --echo "$as_me:3649: checking if we should assume mixed-case filenames" >&5 -+echo "$as_me:3449: checking if we should assume mixed-case filenames" >&5 - echo $ECHO_N "checking if we should assume mixed-case filenames... $ECHO_C" >&6 - - # Check whether --enable-mixed-case or --disable-mixed-case was given. -@@ -3656,11 +3456,11 @@ - else - enable_mixedcase=auto - fi; --echo "$as_me:3659: result: $enable_mixedcase" >&5 -+echo "$as_me:3459: result: $enable_mixedcase" >&5 - echo "${ECHO_T}$enable_mixedcase" >&6 - if test "$enable_mixedcase" = "auto" ; then - --echo "$as_me:3663: checking if filesystem supports mixed-case filenames" >&5 -+echo "$as_me:3463: checking if filesystem supports mixed-case filenames" >&5 - echo $ECHO_N "checking if filesystem supports mixed-case filenames... $ECHO_C" >&6 - if test "${cf_cv_mixedcase+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3668,7 +3468,7 @@ - - if test "$cross_compiling" = yes ; then - case $target_alias in #(vi -- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi -+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi - cf_cv_mixedcase=no - ;; - *) -@@ -3687,16 +3487,18 @@ - fi - - fi --echo "$as_me:3690: result: $cf_cv_mixedcase" >&5 -+echo "$as_me:3490: result: $cf_cv_mixedcase" >&5 - echo "${ECHO_T}$cf_cv_mixedcase" >&6 --test "$cf_cv_mixedcase" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_mixedcase" = yes && -+cat >>confdefs.h <<\EOF - #define MIXEDCASE_FILENAMES 1 - EOF - - else - cf_cv_mixedcase=$enable_mixedcase -- if test "$enable_mixedcase" = "yes" ; then -- cat >>confdefs.h <<\EOF -+ if test "x$enable_mixedcase" = "xyes" ; then -+ -+cat >>confdefs.h <<\EOF - #define MIXEDCASE_FILENAMES 1 - EOF - -@@ -3704,7 +3506,7 @@ - fi - - # do this after mixed-case option (tags/TAGS is not as important as tic). --echo "$as_me:3707: checking whether ${MAKE-make} sets \${MAKE}" >&5 -+echo "$as_me:3509: checking whether ${MAKE-make} sets \${MAKE}" >&5 - echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6 - set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'` - if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then -@@ -3724,11 +3526,11 @@ - rm -f conftest.make - fi - if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then -- echo "$as_me:3727: result: yes" >&5 -+ echo "$as_me:3529: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - SET_MAKE= - else -- echo "$as_me:3731: result: no" >&5 -+ echo "$as_me:3533: result: no" >&5 - echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" - fi -@@ -3737,7 +3539,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:3740: checking for $ac_word" >&5 -+echo "$as_me:3542: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_CTAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3752,7 +3554,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_CTAGS="$ac_prog" --echo "$as_me:3755: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3557: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3760,10 +3562,10 @@ - fi - CTAGS=$ac_cv_prog_CTAGS - if test -n "$CTAGS"; then -- echo "$as_me:3763: result: $CTAGS" >&5 -+ echo "$as_me:3565: result: $CTAGS" >&5 - echo "${ECHO_T}$CTAGS" >&6 - else -- echo "$as_me:3766: result: no" >&5 -+ echo "$as_me:3568: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3774,7 +3576,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:3777: checking for $ac_word" >&5 -+echo "$as_me:3579: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ETAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3789,7 +3591,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ETAGS="$ac_prog" --echo "$as_me:3792: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3594: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3797,10 +3599,10 @@ - fi - ETAGS=$ac_cv_prog_ETAGS - if test -n "$ETAGS"; then -- echo "$as_me:3800: result: $ETAGS" >&5 -+ echo "$as_me:3602: result: $ETAGS" >&5 - echo "${ECHO_T}$ETAGS" >&6 - else -- echo "$as_me:3803: result: no" >&5 -+ echo "$as_me:3605: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3809,7 +3611,7 @@ - - # Extract the first word of "${CTAGS:-ctags}", so it can be a program name with args. - set dummy ${CTAGS:-ctags}; ac_word=$2 --echo "$as_me:3812: checking for $ac_word" >&5 -+echo "$as_me:3614: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_MAKE_LOWER_TAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3824,7 +3626,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_MAKE_LOWER_TAGS="yes" --echo "$as_me:3827: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3629: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3833,17 +3635,17 @@ - fi - MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS - if test -n "$MAKE_LOWER_TAGS"; then -- echo "$as_me:3836: result: $MAKE_LOWER_TAGS" >&5 -+ echo "$as_me:3638: result: $MAKE_LOWER_TAGS" >&5 - echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6 - else -- echo "$as_me:3839: result: no" >&5 -+ echo "$as_me:3641: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - - if test "$cf_cv_mixedcase" = yes ; then - # Extract the first word of "${ETAGS:-etags}", so it can be a program name with args. - set dummy ${ETAGS:-etags}; ac_word=$2 --echo "$as_me:3846: checking for $ac_word" >&5 -+echo "$as_me:3648: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_MAKE_UPPER_TAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3858,7 +3660,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_MAKE_UPPER_TAGS="yes" --echo "$as_me:3861: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3663: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3867,10 +3669,10 @@ - fi - MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS - if test -n "$MAKE_UPPER_TAGS"; then -- echo "$as_me:3870: result: $MAKE_UPPER_TAGS" >&5 -+ echo "$as_me:3672: result: $MAKE_UPPER_TAGS" >&5 - echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6 - else -- echo "$as_me:3873: result: no" >&5 -+ echo "$as_me:3675: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3890,7 +3692,7 @@ - MAKE_LOWER_TAGS="#" - fi - --echo "$as_me:3893: checking for makeflags variable" >&5 -+echo "$as_me:3695: checking for makeflags variable" >&5 - echo $ECHO_N "checking for makeflags variable... $ECHO_C" >&6 - if test "${cf_cv_makeflags+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3924,13 +3726,13 @@ - rm -f cf_makeflags.tmp - - fi --echo "$as_me:3927: result: $cf_cv_makeflags" >&5 -+echo "$as_me:3729: result: $cf_cv_makeflags" >&5 - echo "${ECHO_T}$cf_cv_makeflags" >&6 - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. - set dummy ${ac_tool_prefix}ranlib; ac_word=$2 --echo "$as_me:3933: checking for $ac_word" >&5 -+echo "$as_me:3735: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3945,7 +3747,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" --echo "$as_me:3948: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3750: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3953,10 +3755,10 @@ - fi - RANLIB=$ac_cv_prog_RANLIB - if test -n "$RANLIB"; then -- echo "$as_me:3956: result: $RANLIB" >&5 -+ echo "$as_me:3758: result: $RANLIB" >&5 - echo "${ECHO_T}$RANLIB" >&6 - else -- echo "$as_me:3959: result: no" >&5 -+ echo "$as_me:3761: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -3965,7 +3767,7 @@ - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. - set dummy ranlib; ac_word=$2 --echo "$as_me:3968: checking for $ac_word" >&5 -+echo "$as_me:3770: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3980,7 +3782,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_RANLIB="ranlib" --echo "$as_me:3983: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3785: found $ac_dir/$ac_word" >&5 - break - done - -@@ -3989,10 +3791,10 @@ - fi - ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB - if test -n "$ac_ct_RANLIB"; then -- echo "$as_me:3992: result: $ac_ct_RANLIB" >&5 -+ echo "$as_me:3794: result: $ac_ct_RANLIB" >&5 - echo "${ECHO_T}$ac_ct_RANLIB" >&6 - else -- echo "$as_me:3995: result: no" >&5 -+ echo "$as_me:3797: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -4004,7 +3806,7 @@ - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ld", so it can be a program name with args. - set dummy ${ac_tool_prefix}ld; ac_word=$2 --echo "$as_me:4007: checking for $ac_word" >&5 -+echo "$as_me:3809: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4019,7 +3821,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_LD="${ac_tool_prefix}ld" --echo "$as_me:4022: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3824: found $ac_dir/$ac_word" >&5 - break - done - -@@ -4027,10 +3829,10 @@ - fi - LD=$ac_cv_prog_LD - if test -n "$LD"; then -- echo "$as_me:4030: result: $LD" >&5 -+ echo "$as_me:3832: result: $LD" >&5 - echo "${ECHO_T}$LD" >&6 - else -- echo "$as_me:4033: result: no" >&5 -+ echo "$as_me:3835: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -4039,7 +3841,7 @@ - ac_ct_LD=$LD - # Extract the first word of "ld", so it can be a program name with args. - set dummy ld; ac_word=$2 --echo "$as_me:4042: checking for $ac_word" >&5 -+echo "$as_me:3844: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4054,7 +3856,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_LD="ld" --echo "$as_me:4057: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3859: found $ac_dir/$ac_word" >&5 - break - done - -@@ -4063,10 +3865,10 @@ - fi - ac_ct_LD=$ac_cv_prog_ac_ct_LD - if test -n "$ac_ct_LD"; then -- echo "$as_me:4066: result: $ac_ct_LD" >&5 -+ echo "$as_me:3868: result: $ac_ct_LD" >&5 - echo "${ECHO_T}$ac_ct_LD" >&6 - else -- echo "$as_me:4069: result: no" >&5 -+ echo "$as_me:3871: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -4078,7 +3880,7 @@ - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. - set dummy ${ac_tool_prefix}ar; ac_word=$2 --echo "$as_me:4081: checking for $ac_word" >&5 -+echo "$as_me:3883: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4093,7 +3895,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_AR="${ac_tool_prefix}ar" --echo "$as_me:4096: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3898: found $ac_dir/$ac_word" >&5 - break - done - -@@ -4101,10 +3903,10 @@ - fi - AR=$ac_cv_prog_AR - if test -n "$AR"; then -- echo "$as_me:4104: result: $AR" >&5 -+ echo "$as_me:3906: result: $AR" >&5 - echo "${ECHO_T}$AR" >&6 - else -- echo "$as_me:4107: result: no" >&5 -+ echo "$as_me:3909: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -4113,7 +3915,7 @@ - ac_ct_AR=$AR - # Extract the first word of "ar", so it can be a program name with args. - set dummy ar; ac_word=$2 --echo "$as_me:4116: checking for $ac_word" >&5 -+echo "$as_me:3918: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4128,7 +3930,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_AR="ar" --echo "$as_me:4131: found $ac_dir/$ac_word" >&5 -+echo "$as_me:3933: found $ac_dir/$ac_word" >&5 - break - done - -@@ -4137,10 +3939,10 @@ - fi - ac_ct_AR=$ac_cv_prog_ac_ct_AR - if test -n "$ac_ct_AR"; then -- echo "$as_me:4140: result: $ac_ct_AR" >&5 -+ echo "$as_me:3942: result: $ac_ct_AR" >&5 - echo "${ECHO_T}$ac_ct_AR" >&6 - else -- echo "$as_me:4143: result: no" >&5 -+ echo "$as_me:3945: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -4150,9 +3952,83 @@ - fi - - if test -n "$ac_tool_prefix"; then -+ # Extract the first word of "${ac_tool_prefix}nm", so it can be a program name with args. -+set dummy ${ac_tool_prefix}nm; ac_word=$2 -+echo "$as_me:3957: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_NM+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$NM"; then -+ ac_cv_prog_NM="$NM" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_NM="${ac_tool_prefix}nm" -+echo "$as_me:3972: found $ac_dir/$ac_word" >&5 -+break -+done -+ -+fi -+fi -+NM=$ac_cv_prog_NM -+if test -n "$NM"; then -+ echo "$as_me:3980: result: $NM" >&5 -+echo "${ECHO_T}$NM" >&6 -+else -+ echo "$as_me:3983: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+fi -+if test -z "$ac_cv_prog_NM"; then -+ ac_ct_NM=$NM -+ # Extract the first word of "nm", so it can be a program name with args. -+set dummy nm; ac_word=$2 -+echo "$as_me:3992: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_NM+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_NM"; then -+ ac_cv_prog_ac_ct_NM="$ac_ct_NM" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_ac_ct_NM="nm" -+echo "$as_me:4007: found $ac_dir/$ac_word" >&5 -+break -+done -+ -+ test -z "$ac_cv_prog_ac_ct_NM" && ac_cv_prog_ac_ct_NM="nm" -+fi -+fi -+ac_ct_NM=$ac_cv_prog_ac_ct_NM -+if test -n "$ac_ct_NM"; then -+ echo "$as_me:4016: result: $ac_ct_NM" >&5 -+echo "${ECHO_T}$ac_ct_NM" >&6 -+else -+ echo "$as_me:4019: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ NM=$ac_ct_NM -+else -+ NM="$ac_cv_prog_NM" -+fi -+ -+if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. - set dummy ${ac_tool_prefix}ar; ac_word=$2 --echo "$as_me:4155: checking for $ac_word" >&5 -+echo "$as_me:4031: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4167,7 +4043,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_AR="${ac_tool_prefix}ar" --echo "$as_me:4170: found $ac_dir/$ac_word" >&5 -+echo "$as_me:4046: found $ac_dir/$ac_word" >&5 - break - done - -@@ -4175,10 +4051,10 @@ - fi - AR=$ac_cv_prog_AR - if test -n "$AR"; then -- echo "$as_me:4178: result: $AR" >&5 -+ echo "$as_me:4054: result: $AR" >&5 - echo "${ECHO_T}$AR" >&6 - else -- echo "$as_me:4181: result: no" >&5 -+ echo "$as_me:4057: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -4187,7 +4063,7 @@ - ac_ct_AR=$AR - # Extract the first word of "ar", so it can be a program name with args. - set dummy ar; ac_word=$2 --echo "$as_me:4190: checking for $ac_word" >&5 -+echo "$as_me:4066: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4202,7 +4078,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_AR="ar" --echo "$as_me:4205: found $ac_dir/$ac_word" >&5 -+echo "$as_me:4081: found $ac_dir/$ac_word" >&5 - break - done - -@@ -4211,10 +4087,10 @@ - fi - ac_ct_AR=$ac_cv_prog_ac_ct_AR - if test -n "$ac_ct_AR"; then -- echo "$as_me:4214: result: $ac_ct_AR" >&5 -+ echo "$as_me:4090: result: $ac_ct_AR" >&5 - echo "${ECHO_T}$ac_ct_AR" >&6 - else -- echo "$as_me:4217: result: no" >&5 -+ echo "$as_me:4093: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -4223,7 +4099,7 @@ - AR="$ac_cv_prog_AR" - fi - --echo "$as_me:4226: checking for options to update archives" >&5 -+echo "$as_me:4102: checking for options to update archives" >&5 - echo $ECHO_N "checking for options to update archives... $ECHO_C" >&6 - if test "${cf_cv_ar_flags+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4246,13 +4122,13 @@ - rm -f conftest.a - - cat >conftest.$ac_ext <&5 -+ if { (eval echo "$as_me:4128: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:4255: \$? = $ac_status" >&5 -+ echo "$as_me:4131: \$? = $ac_status" >&5 - (exit $ac_status); } ; then - echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&5 - $AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext 2>&5 1>/dev/null -@@ -4263,7 +4139,7 @@ - else - test -n "$verbose" && echo " cannot compile test-program" 1>&6 - --echo "${as_me:-configure}:4266: testing cannot compile test-program ..." 1>&5 -+echo "${as_me:-configure}:4142: testing cannot compile test-program ..." 1>&5 - - break - fi -@@ -4271,7 +4147,7 @@ - rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext - - fi --echo "$as_me:4274: result: $cf_cv_ar_flags" >&5 -+echo "$as_me:4150: result: $cf_cv_ar_flags" >&5 - echo "${ECHO_T}$cf_cv_ar_flags" >&6 - - if test -n "$ARFLAGS" ; then -@@ -4282,20 +4158,20 @@ - ARFLAGS=$cf_cv_ar_flags - fi - --echo "$as_me:4285: checking if you have specified an install-prefix" >&5 -+echo "$as_me:4161: checking if you have specified an install-prefix" >&5 - echo $ECHO_N "checking if you have specified an install-prefix... $ECHO_C" >&6 - - # Check whether --with-install-prefix or --without-install-prefix was given. - if test "${with_install_prefix+set}" = set; then - withval="$with_install_prefix" -- case "$withval" in #(vi -- yes|no) #(vi -+ case "x$withval" in #(vi -+ xyes|xno) #(vi - ;; - *) DESTDIR="$withval" - ;; - esac - fi; --echo "$as_me:4298: result: $DESTDIR" >&5 -+echo "$as_me:4174: result: $DESTDIR" >&5 - echo "${ECHO_T}$DESTDIR" >&6 - - ############################################################################### -@@ -4323,7 +4199,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:4326: checking for $ac_word" >&5 -+echo "$as_me:4202: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_BUILD_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4338,7 +4214,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_BUILD_CC="$ac_prog" --echo "$as_me:4341: found $ac_dir/$ac_word" >&5 -+echo "$as_me:4217: found $ac_dir/$ac_word" >&5 - break - done - -@@ -4346,10 +4222,10 @@ - fi - BUILD_CC=$ac_cv_prog_BUILD_CC - if test -n "$BUILD_CC"; then -- echo "$as_me:4349: result: $BUILD_CC" >&5 -+ echo "$as_me:4225: result: $BUILD_CC" >&5 - echo "${ECHO_T}$BUILD_CC" >&6 - else -- echo "$as_me:4352: result: no" >&5 -+ echo "$as_me:4228: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -4357,12 +4233,12 @@ - done - - fi; -- echo "$as_me:4360: checking for native build C compiler" >&5 -+ echo "$as_me:4236: checking for native build C compiler" >&5 - echo $ECHO_N "checking for native build C compiler... $ECHO_C" >&6 -- echo "$as_me:4362: result: $BUILD_CC" >&5 -+ echo "$as_me:4238: result: $BUILD_CC" >&5 - echo "${ECHO_T}$BUILD_CC" >&6 - -- echo "$as_me:4365: checking for native build C preprocessor" >&5 -+ echo "$as_me:4241: checking for native build C preprocessor" >&5 - echo $ECHO_N "checking for native build C preprocessor... $ECHO_C" >&6 - - # Check whether --with-build-cpp or --without-build-cpp was given. -@@ -4372,10 +4248,10 @@ - else - BUILD_CPP='${BUILD_CC} -E' - fi; -- echo "$as_me:4375: result: $BUILD_CPP" >&5 -+ echo "$as_me:4251: result: $BUILD_CPP" >&5 - echo "${ECHO_T}$BUILD_CPP" >&6 - -- echo "$as_me:4378: checking for native build C flags" >&5 -+ echo "$as_me:4254: checking for native build C flags" >&5 - echo $ECHO_N "checking for native build C flags... $ECHO_C" >&6 - - # Check whether --with-build-cflags or --without-build-cflags was given. -@@ -4383,10 +4259,10 @@ - withval="$with_build_cflags" - BUILD_CFLAGS="$withval" - fi; -- echo "$as_me:4386: result: $BUILD_CFLAGS" >&5 -+ echo "$as_me:4262: result: $BUILD_CFLAGS" >&5 - echo "${ECHO_T}$BUILD_CFLAGS" >&6 - -- echo "$as_me:4389: checking for native build C preprocessor-flags" >&5 -+ echo "$as_me:4265: checking for native build C preprocessor-flags" >&5 - echo $ECHO_N "checking for native build C preprocessor-flags... $ECHO_C" >&6 - - # Check whether --with-build-cppflags or --without-build-cppflags was given. -@@ -4394,10 +4270,10 @@ - withval="$with_build_cppflags" - BUILD_CPPFLAGS="$withval" - fi; -- echo "$as_me:4397: result: $BUILD_CPPFLAGS" >&5 -+ echo "$as_me:4273: result: $BUILD_CPPFLAGS" >&5 - echo "${ECHO_T}$BUILD_CPPFLAGS" >&6 - -- echo "$as_me:4400: checking for native build linker-flags" >&5 -+ echo "$as_me:4276: checking for native build linker-flags" >&5 - echo $ECHO_N "checking for native build linker-flags... $ECHO_C" >&6 - - # Check whether --with-build-ldflags or --without-build-ldflags was given. -@@ -4405,10 +4281,10 @@ - withval="$with_build_ldflags" - BUILD_LDFLAGS="$withval" - fi; -- echo "$as_me:4408: result: $BUILD_LDFLAGS" >&5 -+ echo "$as_me:4284: result: $BUILD_LDFLAGS" >&5 - echo "${ECHO_T}$BUILD_LDFLAGS" >&6 - -- echo "$as_me:4411: checking for native build linker-libraries" >&5 -+ echo "$as_me:4287: checking for native build linker-libraries" >&5 - echo $ECHO_N "checking for native build linker-libraries... $ECHO_C" >&6 - - # Check whether --with-build-libs or --without-build-libs was given. -@@ -4416,7 +4292,7 @@ - withval="$with_build_libs" - BUILD_LIBS="$withval" - fi; -- echo "$as_me:4419: result: $BUILD_LIBS" >&5 -+ echo "$as_me:4295: result: $BUILD_LIBS" >&5 - echo "${ECHO_T}$BUILD_LIBS" >&6 - - # this assumes we're on Unix. -@@ -4426,7 +4302,7 @@ - : ${BUILD_CC:='${CC}'} - - if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then -- { { echo "$as_me:4429: error: Cross-build requires two compilers. -+ { { echo "$as_me:4305: error: Cross-build requires two compilers. - Use --with-build-cc to specify the native compiler." >&5 - echo "$as_me: error: Cross-build requires two compilers. - Use --with-build-cc to specify the native compiler." >&2;} -@@ -4451,7 +4327,7 @@ - ### shared, for example. - cf_list_models="" - --echo "$as_me:4454: checking if libtool -version-number should be used" >&5 -+echo "$as_me:4330: checking if libtool -version-number should be used" >&5 - echo $ECHO_N "checking if libtool -version-number should be used... $ECHO_C" >&6 - - # Check whether --enable-libtool-version or --disable-libtool-version was given. -@@ -4468,7 +4344,7 @@ - cf_libtool_version=yes - - fi; --echo "$as_me:4471: result: $cf_libtool_version" >&5 -+echo "$as_me:4347: result: $cf_libtool_version" >&5 - echo "${ECHO_T}$cf_libtool_version" >&6 - - if test "$cf_libtool_version" = yes ; then -@@ -4493,7 +4369,7 @@ - LIB_INSTALL= - LIB_UNINSTALL= - --echo "$as_me:4496: checking if you want to build libraries with libtool" >&5 -+echo "$as_me:4372: checking if you want to build libraries with libtool" >&5 - echo $ECHO_N "checking if you want to build libraries with libtool... $ECHO_C" >&6 - - # Check whether --with-libtool or --without-libtool was given. -@@ -4503,7 +4379,7 @@ - else - with_libtool=no - fi; --echo "$as_me:4506: result: $with_libtool" >&5 -+echo "$as_me:4382: result: $with_libtool" >&5 - echo "${ECHO_T}$with_libtool" >&6 - if test "$with_libtool" != "no"; then - -@@ -4522,7 +4398,7 @@ - ;; - .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX - ;; --.\${*prefix}*) #(vi -+.\${*prefix}*|.\${*dir}*) #(vi - eval with_libtool="$with_libtool" - case ".$with_libtool" in #(vi - .NONE/*) -@@ -4534,7 +4410,7 @@ - with_libtool=`echo $with_libtool | sed -e s%NONE%$cf_path_syntax%` - ;; - *) -- { { echo "$as_me:4537: error: expected a pathname, not \"$with_libtool\"" >&5 -+ { { echo "$as_me:4413: error: expected a pathname, not \"$with_libtool\"" >&5 - echo "$as_me: error: expected a pathname, not \"$with_libtool\"" >&2;} - { (exit 1); exit 1; }; } - ;; -@@ -4542,50 +4418,199 @@ - - LIBTOOL=$with_libtool - else -- # Extract the first word of "libtool", so it can be a program name with args. --set dummy libtool; ac_word=$2 --echo "$as_me:4547: checking for $ac_word" >&5 -+ if test -n "$ac_tool_prefix"; then -+ for ac_prog in libtool glibtool -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:4426: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_path_LIBTOOL+set}" = set; then -+if test "${ac_cv_prog_LIBTOOL+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- case $LIBTOOL in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_LIBTOOL="$LIBTOOL" # Let the user override the test with a path. -- ;; -- *) -+ if test -n "$LIBTOOL"; then -+ ac_cv_prog_LIBTOOL="$LIBTOOL" # Let the user override the test. -+else - ac_save_IFS=$IFS; IFS=$ac_path_separator - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. -- if $as_executable_p "$ac_dir/$ac_word"; then -- ac_cv_path_LIBTOOL="$ac_dir/$ac_word" -- echo "$as_me:4564: found $ac_dir/$ac_word" >&5 -- break -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_LIBTOOL="$ac_tool_prefix$ac_prog" -+echo "$as_me:4441: found $ac_dir/$ac_word" >&5 -+break -+done -+ -+fi -+fi -+LIBTOOL=$ac_cv_prog_LIBTOOL -+if test -n "$LIBTOOL"; then -+ echo "$as_me:4449: result: $LIBTOOL" >&5 -+echo "${ECHO_T}$LIBTOOL" >&6 -+else -+ echo "$as_me:4452: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$LIBTOOL" && break -+ done -+fi -+if test -z "$LIBTOOL"; then -+ ac_ct_LIBTOOL=$LIBTOOL -+ for ac_prog in libtool glibtool -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:4465: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_LIBTOOL+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_LIBTOOL"; then -+ ac_cv_prog_ac_ct_LIBTOOL="$ac_ct_LIBTOOL" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_ac_ct_LIBTOOL="$ac_prog" -+echo "$as_me:4480: found $ac_dir/$ac_word" >&5 -+break -+done -+ -+fi - fi -+ac_ct_LIBTOOL=$ac_cv_prog_ac_ct_LIBTOOL -+if test -n "$ac_ct_LIBTOOL"; then -+ echo "$as_me:4488: result: $ac_ct_LIBTOOL" >&5 -+echo "${ECHO_T}$ac_ct_LIBTOOL" >&6 -+else -+ echo "$as_me:4491: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$ac_ct_LIBTOOL" && break - done -+test -n "$ac_ct_LIBTOOL" || ac_ct_LIBTOOL="none" - -- ;; --esac -+ LIBTOOL=$ac_ct_LIBTOOL -+fi -+ -+if test -n "$LIBTOOL" && test "$LIBTOOL" != none -+then -+ cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([^)]*)//g' -e 's/^[^1-9]*//' -e 's/[^0-9.].*//'` -+else -+ cf_cv_libtool_version= - fi --LIBTOOL=$ac_cv_path_LIBTOOL -+test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version -+ -+ if test -z "$cf_cv_libtool_version" && test "$LIBTOOL" = libtool -+ then -+ -+unset ac_cv_prog_ac_ct_LIBTOOL -+unset ac_ct_LIBTOOL -+unset LIBTOOL -+ -+ if test -n "$ac_tool_prefix"; then -+ for ac_prog in glibtool -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:4522: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_LIBTOOL+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$LIBTOOL"; then -+ ac_cv_prog_LIBTOOL="$LIBTOOL" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_LIBTOOL="$ac_tool_prefix$ac_prog" -+echo "$as_me:4537: found $ac_dir/$ac_word" >&5 -+break -+done - -+fi -+fi -+LIBTOOL=$ac_cv_prog_LIBTOOL - if test -n "$LIBTOOL"; then -- echo "$as_me:4575: result: $LIBTOOL" >&5 -+ echo "$as_me:4545: result: $LIBTOOL" >&5 - echo "${ECHO_T}$LIBTOOL" >&6 - else -- echo "$as_me:4578: result: no" >&5 -+ echo "$as_me:4548: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+ test -n "$LIBTOOL" && break -+ done -+fi -+if test -z "$LIBTOOL"; then -+ ac_ct_LIBTOOL=$LIBTOOL -+ for ac_prog in glibtool -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:4561: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_LIBTOOL+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_LIBTOOL"; then -+ ac_cv_prog_ac_ct_LIBTOOL="$ac_ct_LIBTOOL" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_ac_ct_LIBTOOL="$ac_prog" -+echo "$as_me:4576: found $ac_dir/$ac_word" >&5 -+break -+done -+ -+fi -+fi -+ac_ct_LIBTOOL=$ac_cv_prog_ac_ct_LIBTOOL -+if test -n "$ac_ct_LIBTOOL"; then -+ echo "$as_me:4584: result: $ac_ct_LIBTOOL" >&5 -+echo "${ECHO_T}$ac_ct_LIBTOOL" >&6 -+else -+ echo "$as_me:4587: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -+ test -n "$ac_ct_LIBTOOL" && break -+done -+test -n "$ac_ct_LIBTOOL" || ac_ct_LIBTOOL="none" -+ -+ LIBTOOL=$ac_ct_LIBTOOL -+fi -+ -+if test -n "$LIBTOOL" && test "$LIBTOOL" != none -+then -+ cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([^)]*)//g' -e 's/^[^1-9]*//' -e 's/[^0-9.].*//'` -+else -+ cf_cv_libtool_version= -+fi -+test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version -+ -+ fi - fi - if test -z "$LIBTOOL" ; then -- { { echo "$as_me:4584: error: Cannot find libtool" >&5 -+ { { echo "$as_me:4609: error: Cannot find libtool" >&5 - echo "$as_me: error: Cannot find libtool" >&2;} - { (exit 1); exit 1; }; } - fi -- LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} -o' -+ LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} $(LIBS) -o' - LIB_OBJECT='${OBJECTS:.o=.lo}' - LIB_SUFFIX=.la - LIB_CLEAN='${LIBTOOL} --mode=clean' -@@ -4595,26 +4620,36 @@ - LIB_UNINSTALL='${LIBTOOL} --mode=uninstall' - LIB_PREP=: - -- # Show the version of libtool -- echo "$as_me:4599: checking version of libtool" >&5 --echo $ECHO_N "checking version of libtool... $ECHO_C" >&6 -- -- # Save the version in a cache variable - this is not entirely a good -- # thing, but the version string from libtool is very ugly, and for -- # bug reports it might be useful to have the original string. "(" -+if test -n "$LIBTOOL" && test "$LIBTOOL" != none -+then -+ echo "$as_me:4625: checking version of $LIBTOOL" >&5 -+echo $ECHO_N "checking version of $LIBTOOL... $ECHO_C" >&6 -+ -+if test -n "$LIBTOOL" && test "$LIBTOOL" != none -+then - cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([^)]*)//g' -e 's/^[^1-9]*//' -e 's/[^0-9.].*//'` -- echo "$as_me:4606: result: $cf_cv_libtool_version" >&5 -+else -+ cf_cv_libtool_version= -+fi -+test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version -+ -+ echo "$as_me:4636: result: $cf_cv_libtool_version" >&5 - echo "${ECHO_T}$cf_cv_libtool_version" >&6 - if test -z "$cf_cv_libtool_version" ; then -- { { echo "$as_me:4609: error: This is not GNU libtool" >&5 -+ { { echo "$as_me:4639: error: This is not GNU libtool" >&5 - echo "$as_me: error: This is not GNU libtool" >&2;} - { (exit 1); exit 1; }; } - fi -+else -+ { { echo "$as_me:4644: error: GNU libtool has not been found" >&5 -+echo "$as_me: error: GNU libtool has not been found" >&2;} -+ { (exit 1); exit 1; }; } -+fi - - # special hack to add -no-undefined (which libtool should do for itself) - LT_UNDEF= - case "$cf_cv_system_name" in #(vi -- cygwin*|mingw32*|uwin*|aix[456]) #(vi -+ cygwin*|msys*|mingw32*|uwin*|aix[4-7]) #(vi - LT_UNDEF=-no-undefined - ;; - esac -@@ -4642,7 +4677,7 @@ - - else - --echo "$as_me:4645: checking if you want to build shared libraries" >&5 -+echo "$as_me:4680: checking if you want to build shared libraries" >&5 - echo $ECHO_N "checking if you want to build shared libraries... $ECHO_C" >&6 - - # Check whether --with-shared or --without-shared was given. -@@ -4652,11 +4687,11 @@ - else - with_shared=no - fi; --echo "$as_me:4655: result: $with_shared" >&5 -+echo "$as_me:4690: result: $with_shared" >&5 - echo "${ECHO_T}$with_shared" >&6 --test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared" -+test "x$with_shared" = "xyes" && cf_list_models="$cf_list_models shared" - --echo "$as_me:4659: checking if you want to build static libraries" >&5 -+echo "$as_me:4694: checking if you want to build static libraries" >&5 - echo $ECHO_N "checking if you want to build static libraries... $ECHO_C" >&6 - - # Check whether --with-normal or --without-normal was given. -@@ -4666,11 +4701,11 @@ - else - with_normal=yes - fi; --echo "$as_me:4669: result: $with_normal" >&5 -+echo "$as_me:4704: result: $with_normal" >&5 - echo "${ECHO_T}$with_normal" >&6 --test "$with_normal" = "yes" && cf_list_models="$cf_list_models normal" -+test "x$with_normal" = "xyes" && cf_list_models="$cf_list_models normal" - --echo "$as_me:4673: checking if you want to build debug libraries" >&5 -+echo "$as_me:4708: checking if you want to build debug libraries" >&5 - echo $ECHO_N "checking if you want to build debug libraries... $ECHO_C" >&6 - - # Check whether --with-debug or --without-debug was given. -@@ -4680,11 +4715,11 @@ - else - with_debug=yes - fi; --echo "$as_me:4683: result: $with_debug" >&5 -+echo "$as_me:4718: result: $with_debug" >&5 - echo "${ECHO_T}$with_debug" >&6 --test "$with_debug" = "yes" && cf_list_models="$cf_list_models debug" -+test "x$with_debug" = "xyes" && cf_list_models="$cf_list_models debug" - --echo "$as_me:4687: checking if you want to build profiling libraries" >&5 -+echo "$as_me:4722: checking if you want to build profiling libraries" >&5 - echo $ECHO_N "checking if you want to build profiling libraries... $ECHO_C" >&6 - - # Check whether --with-profile or --without-profile was given. -@@ -4694,27 +4729,44 @@ - else - with_profile=no - fi; --echo "$as_me:4697: result: $with_profile" >&5 -+echo "$as_me:4732: result: $with_profile" >&5 - echo "${ECHO_T}$with_profile" >&6 --test "$with_profile" = "yes" && cf_list_models="$cf_list_models profile" -+test "x$with_profile" = "xyes" && cf_list_models="$cf_list_models profile" -+ -+fi -+ -+if test "X$cf_with_cxx_binding" != Xno; then -+if test "x$with_shared" = "xyes"; then -+echo "$as_me:4740: checking if you want to build C++ shared libraries" >&5 -+echo $ECHO_N "checking if you want to build C++ shared libraries... $ECHO_C" >&6 - -+# Check whether --with-cxx-shared or --without-cxx-shared was given. -+if test "${with_cxx_shared+set}" = set; then -+ withval="$with_cxx_shared" -+ with_shared_cxx=$withval -+else -+ with_shared_cxx=no -+fi; -+echo "$as_me:4750: result: $with_shared_cxx" >&5 -+echo "${ECHO_T}$with_shared_cxx" >&6 -+fi - fi - - ############################################################################### - --echo "$as_me:4705: checking for specified models" >&5 -+echo "$as_me:4757: checking for specified models" >&5 - echo $ECHO_N "checking for specified models... $ECHO_C" >&6 - test -z "$cf_list_models" && cf_list_models=normal - test "$with_libtool" != "no" && cf_list_models=libtool --echo "$as_me:4709: result: $cf_list_models" >&5 -+echo "$as_me:4761: result: $cf_list_models" >&5 - echo "${ECHO_T}$cf_list_models" >&6 - - ### Use the first model as the default, and save its suffix for use in building - ### up test-applications. --echo "$as_me:4714: checking for default model" >&5 -+echo "$as_me:4766: checking for default model" >&5 - echo $ECHO_N "checking for default model... $ECHO_C" >&6 - DFT_LWR_MODEL=`echo "$cf_list_models" | $AWK '{print $1}'` --echo "$as_me:4717: result: $DFT_LWR_MODEL" >&5 -+echo "$as_me:4769: result: $DFT_LWR_MODEL" >&5 - echo "${ECHO_T}$DFT_LWR_MODEL" >&6 - - DFT_UPR_MODEL=`echo "$DFT_LWR_MODEL" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -@@ -4728,6 +4780,22 @@ - LIB_DIR=../lib - LIB_2ND=../../lib - -+echo "$as_me:4783: checking if you want to have a library-prefix" >&5 -+echo $ECHO_N "checking if you want to have a library-prefix... $ECHO_C" >&6 -+ -+# Check whether --with-lib-prefix or --without-lib-prefix was given. -+if test "${with_lib_prefix+set}" = set; then -+ withval="$with_lib_prefix" -+ with_lib_prefix=$withval -+else -+ with_lib_prefix=auto -+fi; -+echo "$as_me:4793: result: $with_lib_prefix" >&5 -+echo "${ECHO_T}$with_lib_prefix" >&6 -+ -+if test $with_lib_prefix = auto -+then -+ - case $cf_cv_system_name in #(vi - OS/2*|os2*) #(vi - LIB_PREFIX='' -@@ -4737,13 +4805,28 @@ - esac - cf_prefix=$LIB_PREFIX - --LIB_PREFIX=$cf_prefix -+elif test $with_lib_prefix = no -+then -+ LIB_PREFIX= -+else -+ LIB_PREFIX=$with_lib_prefix -+fi - - LIB_SUFFIX= - -+ echo "$as_me:4817: checking for PATH separator" >&5 -+echo $ECHO_N "checking for PATH separator... $ECHO_C" >&6 -+ case $cf_cv_system_name in -+ os2*) PATH_SEPARATOR=';' ;; -+ *) ${PATH_SEPARATOR:=':'} ;; -+ esac -+ -+ echo "$as_me:4824: result: $PATH_SEPARATOR" >&5 -+echo "${ECHO_T}$PATH_SEPARATOR" >&6 -+ - ############################################################################### - --echo "$as_me:4746: checking if you want to build a separate terminfo library" >&5 -+echo "$as_me:4829: checking if you want to build a separate terminfo library" >&5 - echo $ECHO_N "checking if you want to build a separate terminfo library... $ECHO_C" >&6 - - # Check whether --with-termlib or --without-termlib was given. -@@ -4753,10 +4836,10 @@ - else - with_termlib=no - fi; --echo "$as_me:4756: result: $with_termlib" >&5 -+echo "$as_me:4839: result: $with_termlib" >&5 - echo "${ECHO_T}$with_termlib" >&6 - --echo "$as_me:4759: checking if you want to build a separate tic library" >&5 -+echo "$as_me:4842: checking if you want to build a separate tic library" >&5 - echo $ECHO_N "checking if you want to build a separate tic library... $ECHO_C" >&6 - - # Check whether --with-ticlib or --without-ticlib was given. -@@ -4766,13 +4849,13 @@ - else - with_ticlib=no - fi; --echo "$as_me:4769: result: $with_ticlib" >&5 -+echo "$as_me:4852: result: $with_ticlib" >&5 - echo "${ECHO_T}$with_ticlib" >&6 - - ### Checks for special libraries, must be done up-front. - SHLIB_LIST="" - --echo "$as_me:4775: checking if you want to link with the GPM mouse library" >&5 -+echo "$as_me:4858: checking if you want to link with the GPM mouse library" >&5 - echo $ECHO_N "checking if you want to link with the GPM mouse library... $ECHO_C" >&6 - - # Check whether --with-gpm or --without-gpm was given. -@@ -4782,27 +4865,27 @@ - else - with_gpm=maybe - fi; --echo "$as_me:4785: result: $with_gpm" >&5 -+echo "$as_me:4868: result: $with_gpm" >&5 - echo "${ECHO_T}$with_gpm" >&6 - - if test "$with_gpm" != no ; then -- echo "$as_me:4789: checking for gpm.h" >&5 -+ echo "$as_me:4872: checking for gpm.h" >&5 - echo $ECHO_N "checking for gpm.h... $ECHO_C" >&6 - if test "${ac_cv_header_gpm_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 4795 "configure" -+#line 4878 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:4799: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:4882: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:4805: \$? = $ac_status" >&5 -+ echo "$as_me:4888: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -4821,25 +4904,25 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:4824: result: $ac_cv_header_gpm_h" >&5 -+echo "$as_me:4907: result: $ac_cv_header_gpm_h" >&5 - echo "${ECHO_T}$ac_cv_header_gpm_h" >&6 - if test $ac_cv_header_gpm_h = yes; then - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define HAVE_GPM_H 1 - EOF - - if test "$with_gpm" != yes && test "$with_gpm" != maybe ; then - test -n "$verbose" && echo " assuming we really have GPM library" 1>&6 - --echo "${as_me:-configure}:4835: testing assuming we really have GPM library ..." 1>&5 -+echo "${as_me:-configure}:4918: testing assuming we really have GPM library ..." 1>&5 - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define HAVE_LIBGPM 1 - EOF - - else -- echo "$as_me:4842: checking for Gpm_Open in -lgpm" >&5 -+ echo "$as_me:4925: checking for Gpm_Open in -lgpm" >&5 - echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6 - if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4847,7 +4930,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lgpm $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 4850 "configure" -+#line 4933 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -4866,16 +4949,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:4869: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:4952: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:4872: \$? = $ac_status" >&5 -+ echo "$as_me:4955: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:4875: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:4958: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4878: \$? = $ac_status" >&5 -+ echo "$as_me:4961: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_gpm_Gpm_Open=yes - else -@@ -4886,13 +4969,13 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:4889: result: $ac_cv_lib_gpm_Gpm_Open" >&5 -+echo "$as_me:4972: result: $ac_cv_lib_gpm_Gpm_Open" >&5 - echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6 - if test $ac_cv_lib_gpm_Gpm_Open = yes; then - : - else - -- { { echo "$as_me:4895: error: Cannot link with GPM library" >&5 -+ { { echo "$as_me:4978: error: Cannot link with GPM library" >&5 - echo "$as_me: error: Cannot link with GPM library" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -4902,7 +4985,7 @@ - - else - -- test "$with_gpm" != maybe && { echo "$as_me:4905: WARNING: Cannot find GPM header" >&5 -+ test "$with_gpm" != maybe && { echo "$as_me:4988: WARNING: Cannot find GPM header" >&5 - echo "$as_me: WARNING: Cannot find GPM header" >&2;} - with_gpm=no - -@@ -4911,7 +4994,7 @@ - fi - - if test "$with_gpm" != no ; then -- echo "$as_me:4914: checking if you want to load GPM dynamically" >&5 -+ echo "$as_me:4997: checking if you want to load GPM dynamically" >&5 - echo $ECHO_N "checking if you want to load GPM dynamically... $ECHO_C" >&6 - - # Check whether --with-dlsym or --without-dlsym was given. -@@ -4921,18 +5004,18 @@ - else - with_dlsym=yes - fi; -- echo "$as_me:4924: result: $with_dlsym" >&5 -+ echo "$as_me:5007: result: $with_dlsym" >&5 - echo "${ECHO_T}$with_dlsym" >&6 -- if test "$with_dlsym" = yes ; then -+ if test "x$with_dlsym" = xyes ; then - - cf_have_dlsym=no --echo "$as_me:4929: checking for dlsym" >&5 -+echo "$as_me:5012: checking for dlsym" >&5 - echo $ECHO_N "checking for dlsym... $ECHO_C" >&6 - if test "${ac_cv_func_dlsym+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 4935 "configure" -+#line 5018 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char dlsym (); below. */ -@@ -4955,7 +5038,7 @@ - #if defined (__stub_dlsym) || defined (__stub___dlsym) - choke me - #else --f = dlsym; -+f = dlsym; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -4963,16 +5046,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:4966: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5049: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:4969: \$? = $ac_status" >&5 -+ echo "$as_me:5052: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:4972: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5055: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4975: \$? = $ac_status" >&5 -+ echo "$as_me:5058: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_dlsym=yes - else -@@ -4982,14 +5065,14 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:4985: result: $ac_cv_func_dlsym" >&5 -+echo "$as_me:5068: result: $ac_cv_func_dlsym" >&5 - echo "${ECHO_T}$ac_cv_func_dlsym" >&6 - if test $ac_cv_func_dlsym = yes; then - cf_have_dlsym=yes - else - - cf_have_libdl=no --echo "$as_me:4992: checking for dlsym in -ldl" >&5 -+echo "$as_me:5075: checking for dlsym in -ldl" >&5 - echo $ECHO_N "checking for dlsym in -ldl... $ECHO_C" >&6 - if test "${ac_cv_lib_dl_dlsym+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -4997,7 +5080,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-ldl $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 5000 "configure" -+#line 5083 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -5016,16 +5099,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5019: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5102: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5022: \$? = $ac_status" >&5 -+ echo "$as_me:5105: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5025: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5108: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5028: \$? = $ac_status" >&5 -+ echo "$as_me:5111: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dl_dlsym=yes - else -@@ -5036,7 +5119,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:5039: result: $ac_cv_lib_dl_dlsym" >&5 -+echo "$as_me:5122: result: $ac_cv_lib_dl_dlsym" >&5 - echo "${ECHO_T}$ac_cv_lib_dl_dlsym" >&6 - if test $ac_cv_lib_dl_dlsym = yes; then - -@@ -5049,10 +5132,10 @@ - if test "$cf_have_dlsym" = yes ; then - test "$cf_have_libdl" = yes && LIBS="-ldl $LIBS" - -- echo "$as_me:5052: checking whether able to link to dl*() functions" >&5 -+ echo "$as_me:5135: checking whether able to link to dl*() functions" >&5 - echo $ECHO_N "checking whether able to link to dl*() functions... $ECHO_C" >&6 - cat >conftest.$ac_ext <<_ACEOF --#line 5055 "configure" -+#line 5138 "configure" - #include "confdefs.h" - #include - int -@@ -5070,19 +5153,19 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5073: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5156: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5076: \$? = $ac_status" >&5 -+ echo "$as_me:5159: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5079: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5162: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5082: \$? = $ac_status" >&5 -+ echo "$as_me:5165: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define HAVE_LIBDL 1 - EOF - -@@ -5090,28 +5173,28 @@ - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - -- { { echo "$as_me:5093: error: Cannot link test program for libdl" >&5 -+ { { echo "$as_me:5176: error: Cannot link test program for libdl" >&5 - echo "$as_me: error: Cannot link test program for libdl" >&2;} - { (exit 1); exit 1; }; } - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- echo "$as_me:5098: result: ok" >&5 -+ echo "$as_me:5181: result: ok" >&5 - echo "${ECHO_T}ok" >&6 - else -- { { echo "$as_me:5101: error: Cannot find dlsym function" >&5 -+ { { echo "$as_me:5184: error: Cannot find dlsym function" >&5 - echo "$as_me: error: Cannot find dlsym function" >&2;} - { (exit 1); exit 1; }; } - fi - -- if test "$with_gpm" != yes ; then -+ if test "x$with_gpm" != xyes ; then - test -n "$verbose" && echo " assuming soname for gpm is $with_gpm" 1>&6 - --echo "${as_me:-configure}:5109: testing assuming soname for gpm is $with_gpm ..." 1>&5 -+echo "${as_me:-configure}:5192: testing assuming soname for gpm is $with_gpm ..." 1>&5 - - cf_cv_gpm_soname="$with_gpm" - else - --echo "$as_me:5114: checking for soname of gpm library" >&5 -+echo "$as_me:5197: checking for soname of gpm library" >&5 - echo $ECHO_N "checking for soname of gpm library... $ECHO_C" >&6 - if test "${cf_cv_gpm_soname+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -5129,15 +5212,15 @@ - CF_EOF - cf_save_LIBS="$LIBS" - LIBS="-lgpm $LIBS" -- if { (eval echo "$as_me:5132: \"$ac_compile\"") >&5 -+ if { (eval echo "$as_me:5215: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5135: \$? = $ac_status" >&5 -+ echo "$as_me:5218: \$? = $ac_status" >&5 - (exit $ac_status); } ; then -- if { (eval echo "$as_me:5137: \"$ac_link\"") >&5 -+ if { (eval echo "$as_me:5220: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5140: \$? = $ac_status" >&5 -+ echo "$as_me:5223: \$? = $ac_status" >&5 - (exit $ac_status); } ; then - cf_cv_gpm_soname=`ldd conftest$ac_exeext 2>/dev/null | sed -e 's,^.*/,,' -e 's, .*$,,' | fgrep libgpm.` - test -z "$cf_cv_gpm_soname" && cf_cv_gpm_soname=unknown -@@ -5148,11 +5231,12 @@ - fi - - fi --echo "$as_me:5151: result: $cf_cv_gpm_soname" >&5 -+echo "$as_me:5234: result: $cf_cv_gpm_soname" >&5 - echo "${ECHO_T}$cf_cv_gpm_soname" >&6 - - fi -- test "$cf_cv_gpm_soname" != "unknown" && cat >>confdefs.h <>confdefs.h <>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_LIBGPM 1 - EOF - --echo "$as_me:5168: checking for Gpm_Wgetch in -lgpm" >&5 -+echo "$as_me:5253: checking for Gpm_Wgetch in -lgpm" >&5 - echo $ECHO_N "checking for Gpm_Wgetch in -lgpm... $ECHO_C" >&6 - if test "${ac_cv_lib_gpm_Gpm_Wgetch+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -5173,7 +5258,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lgpm $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 5176 "configure" -+#line 5261 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -5192,16 +5277,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5195: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5280: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5198: \$? = $ac_status" >&5 -+ echo "$as_me:5283: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5201: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5286: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5204: \$? = $ac_status" >&5 -+ echo "$as_me:5289: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_gpm_Gpm_Wgetch=yes - else -@@ -5212,11 +5297,11 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:5215: result: $ac_cv_lib_gpm_Gpm_Wgetch" >&5 -+echo "$as_me:5300: result: $ac_cv_lib_gpm_Gpm_Wgetch" >&5 - echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Wgetch" >&6 - if test $ac_cv_lib_gpm_Gpm_Wgetch = yes; then - --echo "$as_me:5219: checking if GPM is weakly bound to curses library" >&5 -+echo "$as_me:5304: checking if GPM is weakly bound to curses library" >&5 - echo $ECHO_N "checking if GPM is weakly bound to curses library... $ECHO_C" >&6 - if test "${cf_cv_check_gpm_wgetch+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -5240,15 +5325,15 @@ - # to rely on the static library, noting that some packagers may not - # include it. - LIBS="-static -lgpm -dynamic $LIBS" -- if { (eval echo "$as_me:5243: \"$ac_compile\"") >&5 -+ if { (eval echo "$as_me:5328: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5246: \$? = $ac_status" >&5 -+ echo "$as_me:5331: \$? = $ac_status" >&5 - (exit $ac_status); } ; then -- if { (eval echo "$as_me:5248: \"$ac_link\"") >&5 -+ if { (eval echo "$as_me:5333: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5251: \$? = $ac_status" >&5 -+ echo "$as_me:5336: \$? = $ac_status" >&5 - (exit $ac_status); } ; then - cf_cv_check_gpm_wgetch=`nm conftest$ac_exeext | egrep '\' | egrep '\<[vVwW]\>'` - test -n "$cf_cv_check_gpm_wgetch" && cf_cv_check_gpm_wgetch=yes -@@ -5260,11 +5345,11 @@ - fi - - fi --echo "$as_me:5263: result: $cf_cv_check_gpm_wgetch" >&5 -+echo "$as_me:5348: result: $cf_cv_check_gpm_wgetch" >&5 - echo "${ECHO_T}$cf_cv_check_gpm_wgetch" >&6 - - if test "$cf_cv_check_gpm_wgetch" != yes ; then -- { echo "$as_me:5267: WARNING: GPM library is already linked with curses - read the FAQ" >&5 -+ { echo "$as_me:5352: WARNING: GPM library is already linked with curses - read the FAQ" >&5 - echo "$as_me: WARNING: GPM library is already linked with curses - read the FAQ" >&2;} - fi - -@@ -5274,7 +5359,7 @@ - - # not everyone has "test -c" - if test -c /dev/sysmouse 2>/dev/null ; then --echo "$as_me:5277: checking if you want to use sysmouse" >&5 -+echo "$as_me:5362: checking if you want to use sysmouse" >&5 - echo $ECHO_N "checking if you want to use sysmouse... $ECHO_C" >&6 - - # Check whether --with-sysmouse or --without-sysmouse was given. -@@ -5286,7 +5371,7 @@ - fi; - if test "$cf_with_sysmouse" != no ; then - cat >conftest.$ac_ext <<_ACEOF --#line 5289 "configure" -+#line 5374 "configure" - #include "confdefs.h" - - #include -@@ -5309,16 +5394,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:5312: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:5397: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5315: \$? = $ac_status" >&5 -+ echo "$as_me:5400: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:5318: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5403: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5321: \$? = $ac_status" >&5 -+ echo "$as_me:5406: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_with_sysmouse=yes - else -@@ -5328,9 +5413,10 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:5331: result: $cf_with_sysmouse" >&5 -+echo "$as_me:5416: result: $cf_with_sysmouse" >&5 - echo "${ECHO_T}$cf_with_sysmouse" >&6 --test "$cf_with_sysmouse" = yes && cat >>confdefs.h <<\EOF -+test "$cf_with_sysmouse" = yes && -+cat >>confdefs.h <<\EOF - #define USE_SYSMOUSE 1 - EOF - -@@ -5338,15 +5424,15 @@ - - if test X"$CC_G_OPT" = X"" ; then - CC_G_OPT='-g' -- test -n "$GCC" && test "${ac_cv_prog_cc_g}" != yes && CC_G_OPT='' -+ test -n "$GCC" && test "x${ac_cv_prog_cc_g}" != xyes && CC_G_OPT='' - fi - - if test X"$CXX_G_OPT" = X"" ; then - CXX_G_OPT='-g' -- test -n "$GXX" && test "${ac_cv_prog_cxx_g}" != yes && CXX_G_OPT='' -+ test -n "$GXX" && test "x${ac_cv_prog_cxx_g}" != xyes && CXX_G_OPT='' - fi - --echo "$as_me:5349: checking for default loader flags" >&5 -+echo "$as_me:5435: checking for default loader flags" >&5 - echo $ECHO_N "checking for default loader flags... $ECHO_C" >&6 - case $DFT_LWR_MODEL in - libtool) LD_MODEL='' ;; -@@ -5355,13 +5441,13 @@ - profile) LD_MODEL='-pg';; - shared) LD_MODEL='' ;; - esac --echo "$as_me:5358: result: $LD_MODEL" >&5 -+echo "$as_me:5444: result: $LD_MODEL" >&5 - echo "${ECHO_T}$LD_MODEL" >&6 - - case $DFT_LWR_MODEL in - shared) - --echo "$as_me:5364: checking if rpath option should be used" >&5 -+echo "$as_me:5450: checking if rpath option should be used" >&5 - echo $ECHO_N "checking if rpath option should be used... $ECHO_C" >&6 - - # Check whether --enable-rpath or --disable-rpath was given. -@@ -5371,10 +5457,10 @@ - else - cf_cv_enable_rpath=no - fi; --echo "$as_me:5374: result: $cf_cv_enable_rpath" >&5 -+echo "$as_me:5460: result: $cf_cv_enable_rpath" >&5 - echo "${ECHO_T}$cf_cv_enable_rpath" >&6 - --echo "$as_me:5377: checking if shared libraries should be relinked during install" >&5 -+echo "$as_me:5463: checking if shared libraries should be relinked during install" >&5 - echo $ECHO_N "checking if shared libraries should be relinked during install... $ECHO_C" >&6 - - # Check whether --enable-relink or --disable-relink was given. -@@ -5384,13 +5470,16 @@ - else - cf_cv_do_relink=yes - fi; --echo "$as_me:5387: result: $cf_cv_do_relink" >&5 -+echo "$as_me:5473: result: $cf_cv_do_relink" >&5 - echo "${ECHO_T}$cf_cv_do_relink" >&6 - ;; - esac - -+# we will build libraries one-level down. -+rel_builddir=.. -+ - LD_RPATH_OPT= --echo "$as_me:5393: checking for an rpath option" >&5 -+echo "$as_me:5482: checking for an rpath option" >&5 - echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6 - case $cf_cv_system_name in #(vi - irix*) #(vi -@@ -5403,10 +5492,10 @@ - linux*|gnu*|k*bsd*-gnu) #(vi - LD_RPATH_OPT="-Wl,-rpath," - ;; --openbsd[2-9].*) #(vi -+openbsd[2-9].*|mirbsd*) #(vi - LD_RPATH_OPT="-Wl,-rpath," - ;; --freebsd*) #(vi -+dragonfly*|freebsd*) #(vi - LD_RPATH_OPT="-rpath " - ;; - netbsd*) #(vi -@@ -5421,17 +5510,17 @@ - *) - ;; - esac --echo "$as_me:5424: result: $LD_RPATH_OPT" >&5 -+echo "$as_me:5513: result: $LD_RPATH_OPT" >&5 - echo "${ECHO_T}$LD_RPATH_OPT" >&6 - - case "x$LD_RPATH_OPT" in #(vi - x-R*) -- echo "$as_me:5429: checking if we need a space after rpath option" >&5 -+ echo "$as_me:5518: checking if we need a space after rpath option" >&5 - echo $ECHO_N "checking if we need a space after rpath option... $ECHO_C" >&6 - cf_save_LIBS="$LIBS" - LIBS="${LD_RPATH_OPT}$libdir $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 5434 "configure" -+#line 5523 "configure" - #include "confdefs.h" - - int -@@ -5443,16 +5532,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5446: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5535: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5449: \$? = $ac_status" >&5 -+ echo "$as_me:5538: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5452: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5541: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5455: \$? = $ac_status" >&5 -+ echo "$as_me:5544: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_rpath_space=no - else -@@ -5462,22 +5551,28 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS="$cf_save_LIBS" -- echo "$as_me:5465: result: $cf_rpath_space" >&5 -+ echo "$as_me:5554: result: $cf_rpath_space" >&5 - echo "${ECHO_T}$cf_rpath_space" >&6 - test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT " - ;; - esac - -+ RM_SHARED_OPTS= - LOCAL_LDFLAGS= - LOCAL_LDFLAGS2= - LD_SHARED_OPTS= - INSTALL_LIB="-m 644" -+ : ${rel_builddir:=.} -+ -+ shlibdir=$libdir -+ -+ MAKE_DLLS="#" - - cf_cv_do_symlinks=no - cf_ld_rpath_opt= - test "$cf_cv_enable_rpath" = yes && cf_ld_rpath_opt="$LD_RPATH_OPT" - -- echo "$as_me:5480: checking if release/abi version should be used for shared libs" >&5 -+ echo "$as_me:5575: checking if release/abi version should be used for shared libs" >&5 - echo $ECHO_N "checking if release/abi version should be used for shared libs... $ECHO_C" >&6 - - # Check whether --with-shlib-version or --without-shlib-version was given. -@@ -5492,7 +5587,7 @@ - cf_cv_shlib_version=$withval - ;; - *) -- { { echo "$as_me:5495: error: option value must be one of: rel, abi, auto or no" >&5 -+ { { echo "$as_me:5590: error: option value must be one of: rel, abi, auto or no" >&5 - echo "$as_me: error: option value must be one of: rel, abi, auto or no" >&2;} - { (exit 1); exit 1; }; } - ;; -@@ -5501,23 +5596,24 @@ - else - cf_cv_shlib_version=auto - fi; -- echo "$as_me:5504: result: $cf_cv_shlib_version" >&5 -+ echo "$as_me:5599: result: $cf_cv_shlib_version" >&5 - echo "${ECHO_T}$cf_cv_shlib_version" >&6 - - cf_cv_rm_so_locs=no -+ cf_try_cflags= - - # Some less-capable ports of gcc support only -fpic - CC_SHARED_OPTS= - if test "$GCC" = yes - then -- echo "$as_me:5513: checking which $CC option to use" >&5 -+ echo "$as_me:5609: checking which $CC option to use" >&5 - echo $ECHO_N "checking which $CC option to use... $ECHO_C" >&6 - cf_save_CFLAGS="$CFLAGS" - for CC_SHARED_OPTS in -fPIC -fpic '' - do - CFLAGS="$cf_save_CFLAGS $CC_SHARED_OPTS" - cat >conftest.$ac_ext <<_ACEOF --#line 5520 "configure" -+#line 5616 "configure" - #include "confdefs.h" - #include - int -@@ -5529,16 +5625,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:5532: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:5628: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5535: \$? = $ac_status" >&5 -+ echo "$as_me:5631: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:5538: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5634: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5541: \$? = $ac_status" >&5 -+ echo "$as_me:5637: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -5547,7 +5643,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - done -- echo "$as_me:5550: result: $CC_SHARED_OPTS" >&5 -+ echo "$as_me:5646: result: $CC_SHARED_OPTS" >&5 - echo "${ECHO_T}$CC_SHARED_OPTS" >&6 - CFLAGS="$cf_save_CFLAGS" - fi -@@ -5555,10 +5651,14 @@ - cf_cv_shlib_version_infix=no - - case $cf_cv_system_name in #(vi -- aix[56]*) #(vi -+ aix4.3-9*|aix[5-7]*) #(vi - if test "$GCC" = yes; then - CC_SHARED_OPTS= -- MK_SHARED_LIB='$(CC) -shared' -+ MK_SHARED_LIB='${CC} -shared -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o $@' -+ else -+ # CC_SHARED_OPTS='-qpic=large -G' -+ # perhaps "-bM:SRE -bnoentry -bexpall" -+ MK_SHARED_LIB='${CC} -G -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o $@' - fi - ;; - beos*) #(vi -@@ -5566,9 +5666,12 @@ - ;; - cygwin*) #(vi - CC_SHARED_OPTS= -- MK_SHARED_LIB='sh ../mk_shared_lib.sh $@ ${CC} ${CFLAGS}' -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" - cf_cv_shlib_version=cygdll - cf_cv_shlib_version_infix=cygdll -+ shlibdir=$bindir -+ MAKE_DLLS= - cat >mk_shared_lib.sh <<-CF_EOF - #!/bin/sh - SHARED_LIB=\$1 -@@ -5579,26 +5682,48 @@ - ** SHARED_LIB \$SHARED_LIB - ** IMPORT_LIB \$IMPORT_LIB - EOF -- exec \$* -shared -Wl,--out-implib=../lib/\${IMPORT_LIB} -Wl,--export-all-symbols -o ../lib/\${SHARED_LIB} -+ exec \$* -shared -Wl,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB} - CF_EOF - chmod +x mk_shared_lib.sh - ;; -- darwin*) #(vi -- EXTRA_CFLAGS="-no-cpp-precomp" -- CC_SHARED_OPTS="-dynamic" -- MK_SHARED_LIB='${CC} ${CFLAGS} -dynamiclib -install_name ${libdir}/`basename $@` -compatibility_version ${ABI_VERSION} -current_version ${ABI_VERSION} -o $@' -- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi -- cf_cv_shlib_version_infix=yes -- echo "$as_me:5592: checking if ld -search_paths_first works" >&5 --echo $ECHO_N "checking if ld -search_paths_first works... $ECHO_C" >&6 --if test "${cf_cv_ldflags_search_paths_first+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+ msys*) #(vi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" -+ cf_cv_shlib_version=msysdll -+ cf_cv_shlib_version_infix=msysdll -+ shlibdir=$bindir -+ MAKE_DLLS= -+ cat >mk_shared_lib.sh <<-CF_EOF -+ #!/bin/sh -+ SHARED_LIB=\$1 -+ IMPORT_LIB=\`echo "\$1" | sed -e 's/msys-/lib/' -e 's/[0-9]*\.dll$/.dll.a/'\` -+ shift -+ cat <<-EOF -+ Linking shared library -+ ** SHARED_LIB \$SHARED_LIB -+ ** IMPORT_LIB \$IMPORT_LIB -+EOF -+ exec \$* -shared -Wl,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB} -+CF_EOF -+ chmod +x mk_shared_lib.sh -+ ;; -+ darwin*) #(vi -+ cf_try_cflags="no-cpp-precomp" -+ CC_SHARED_OPTS="-dynamic" -+ MK_SHARED_LIB='${CC} ${CFLAGS} -dynamiclib -install_name ${libdir}/`basename $@` -compatibility_version ${ABI_VERSION} -current_version ${ABI_VERSION} -o $@' -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi -+ cf_cv_shlib_version_infix=yes -+ echo "$as_me:5717: checking if ld -search_paths_first works" >&5 -+echo $ECHO_N "checking if ld -search_paths_first works... $ECHO_C" >&6 -+if test "${cf_cv_ldflags_search_paths_first+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - - cf_save_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-search_paths_first" - cat >conftest.$ac_ext <<_ACEOF --#line 5601 "configure" -+#line 5726 "configure" - #include "confdefs.h" - - int -@@ -5610,16 +5735,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5613: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5738: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5616: \$? = $ac_status" >&5 -+ echo "$as_me:5741: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5619: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5744: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5622: \$? = $ac_status" >&5 -+ echo "$as_me:5747: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_ldflags_search_paths_first=yes - else -@@ -5630,12 +5755,20 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LDFLAGS=$cf_save_LDFLAGS - fi --echo "$as_me:5633: result: $cf_cv_ldflags_search_paths_first" >&5 -+echo "$as_me:5758: result: $cf_cv_ldflags_search_paths_first" >&5 - echo "${ECHO_T}$cf_cv_ldflags_search_paths_first" >&6 - if test $cf_cv_ldflags_search_paths_first = yes; then - LDFLAGS="$LDFLAGS -Wl,-search_paths_first" - fi - ;; -+ hpux[7-8]*) #(vi -+ # HP-UX 8.07 ld lacks "+b" option used for libdir search-list -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='+Z' -+ fi -+ MK_SHARED_LIB='${LD} -b -o $@' -+ INSTALL_LIB="-m 555" -+ ;; - hpux*) #(vi - # (tested with gcc 2.7.2 -- I don't have c89) - if test "$GCC" = yes; then -@@ -5649,9 +5782,19 @@ - # readonly to exploit a quirk in the memory manager. - INSTALL_LIB="-m 555" - ;; -+ interix*) -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ if test "$cf_cv_shlib_version" = rel; then -+ cf_shared_soname='`basename .${REL_VERSION}`.${ABI_VERSION}' -+ else -+ cf_shared_soname='`basename `' -+ fi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='${CC} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o ' -+ ;; - irix*) #(vi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - # tested with IRIX 5.2 and 'cc'. - if test "$GCC" != yes; then -@@ -5668,7 +5811,7 @@ - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" - fi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -@@ -5680,13 +5823,40 @@ - - MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@' - ;; -- openbsd[2-9].*) #(vi -+ mingw*) #(vi -+ cf_cv_shlib_version=mingw -+ cf_cv_shlib_version_infix=mingw -+ shlibdir=$bindir -+ MAKE_DLLS= -+ if test "$DFT_LWR_MODEL" = "shared" ; then -+ LOCAL_LDFLAGS="-Wl,--enable-auto-import" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ EXTRA_LDFLAGS="-Wl,--enable-auto-import $EXTRA_LDFLAGS" -+ fi -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}' -+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" -+ cat >mk_shared_lib.sh <<-CF_EOF -+ #!/bin/sh -+ SHARED_LIB=\$1 -+ IMPORT_LIB=\`echo "\$1" | sed -e 's/[0-9]*\.dll$/.dll.a/'\` -+ shift -+ cat <<-EOF -+ Linking shared library -+ ** SHARED_LIB \$SHARED_LIB -+ ** IMPORT_LIB \$IMPORT_LIB -+EOF -+ exec \$* -shared -Wl,--enable-auto-import,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB} -+CF_EOF -+ chmod +x mk_shared_lib.sh -+ ;; -+ openbsd[2-9].*|mirbsd*) #(vi - if test "$DFT_LWR_MODEL" = "shared" ; then - LOCAL_LDFLAGS="${LD_RPATH_OPT}\$(LOCAL_LIBDIR)" - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" - fi - if test "$cf_cv_enable_rpath" = yes ; then -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" - -@@ -5704,12 +5874,12 @@ - MK_SHARED_LIB='${LD} -Bshareable -o $@' - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel - ;; -- freebsd*) #(vi -+ dragonfly*|freebsd*) #(vi - CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" - if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then - LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)" -- LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${libdir} $LOCAL_LDFLAGS" -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${RPATH_LIST} $LOCAL_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - fi - - test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -@@ -5726,7 +5896,7 @@ - if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then - LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)" - LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS" -+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS" - if test "$cf_cv_shlib_version" = auto; then - if test -f /usr/libexec/ld.elf_so; then - cf_cv_shlib_version=abi -@@ -5744,7 +5914,7 @@ - - MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $@' - else -- MK_SHARED_LIB='${LD} -shared -Bshareable -o $@' -+ MK_SHARED_LIB='${CC} -Wl,-shared -Wl,-Bshareable -o $@' - fi - ;; - osf*|mls+*) #(vi -@@ -5810,7 +5980,7 @@ - do - CFLAGS="$cf_shared_opts $cf_save_CFLAGS" - cat >conftest.$ac_ext <<_ACEOF --#line 5813 "configure" -+#line 5983 "configure" - #include "confdefs.h" - #include - int -@@ -5822,16 +5992,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:5825: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:5995: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5828: \$? = $ac_status" >&5 -+ echo "$as_me:5998: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:5831: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6001: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5834: \$? = $ac_status" >&5 -+ echo "$as_me:6004: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -5868,21 +6038,64 @@ - test "$cf_cv_do_symlinks" = no && cf_cv_do_symlinks=yes - ;; - *) -- { echo "$as_me:5871: WARNING: ignored --with-shlib-version" >&5 -+ { echo "$as_me:6041: WARNING: ignored --with-shlib-version" >&5 - echo "$as_me: WARNING: ignored --with-shlib-version" >&2;} - ;; - esac - ;; - esac - -- if test -n "$cf_ld_rpath_opt" ; then -- MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${libdir}" -+ if test -n "$cf_try_cflags" -+ then -+cat > conftest.$ac_ext < -+int main(int argc, char *argv[]) -+{ -+ printf("hello\n"); -+ return (argv[argc-1] == 0) ; -+} -+EOF -+ cf_save_CFLAGS="$CFLAGS" -+ for cf_opt in $cf_try_cflags -+ do -+ CFLAGS="$cf_save_CFLAGS -$cf_opt" -+ echo "$as_me:6063: checking if CFLAGS option -$cf_opt works" >&5 -+echo $ECHO_N "checking if CFLAGS option -$cf_opt works... $ECHO_C" >&6 -+ if { (eval echo "$as_me:6065: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:6068: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ echo "$as_me:6070: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+ cf_save_CFLAGS="$CFLAGS" -+ else -+ echo "$as_me:6074: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+ fi -+ done -+ CFLAGS="$cf_save_CFLAGS" - fi - -+ # RPATH_LIST is a colon-separated list of directories -+ test -n "$cf_ld_rpath_opt" && MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${RPATH_LIST}" -+ test -z "$RPATH_LIST" && RPATH_LIST="\${libdir}" -+ -+ test $cf_cv_rm_so_locs = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations" -+ -+ test -n "$verbose" && echo " CC_SHARED_OPTS: $CC_SHARED_OPTS" 1>&6 -+ -+echo "${as_me:-configure}:6089: testing CC_SHARED_OPTS: $CC_SHARED_OPTS ..." 1>&5 -+ -+ test -n "$verbose" && echo " MK_SHARED_LIB: $MK_SHARED_LIB" 1>&6 -+ -+echo "${as_me:-configure}:6093: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5 -+ - if test "$CC_SHARED_OPTS" = "unknown"; then - for model in $cf_list_models; do - if test "$model" = "shared"; then -- { { echo "$as_me:5885: error: Shared libraries are not supported in this version" >&5 -+ { { echo "$as_me:6098: error: Shared libraries are not supported in this version" >&5 - echo "$as_me: error: Shared libraries are not supported in this version" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -5892,7 +6105,7 @@ - ### If we're building with rpath, try to link non-standard libs that way too. - if test "$DFT_LWR_MODEL" = "shared"; then - --echo "$as_me:5895: checking if rpath-hack should be disabled" >&5 -+echo "$as_me:6108: checking if rpath-hack should be disabled" >&5 - echo $ECHO_N "checking if rpath-hack should be disabled... $ECHO_C" >&6 - - # Check whether --enable-rpath-hack or --disable-rpath-hack was given. -@@ -5909,21 +6122,21 @@ - cf_disable_rpath_hack=no - - fi; --echo "$as_me:5912: result: $cf_disable_rpath_hack" >&5 -+echo "$as_me:6125: result: $cf_disable_rpath_hack" >&5 - echo "${ECHO_T}$cf_disable_rpath_hack" >&6 - if test "$cf_disable_rpath_hack" = no ; then - --echo "$as_me:5916: checking for updated LDFLAGS" >&5 -+echo "$as_me:6129: checking for updated LDFLAGS" >&5 - echo $ECHO_N "checking for updated LDFLAGS... $ECHO_C" >&6 - if test -n "$LD_RPATH_OPT" ; then -- echo "$as_me:5919: result: maybe" >&5 -+ echo "$as_me:6132: result: maybe" >&5 - echo "${ECHO_T}maybe" >&6 - - for ac_prog in ldd - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:5926: checking for $ac_word" >&5 -+echo "$as_me:6139: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_cf_ldd_prog+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -5938,7 +6151,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_cf_ldd_prog="$ac_prog" --echo "$as_me:5941: found $ac_dir/$ac_word" >&5 -+echo "$as_me:6154: found $ac_dir/$ac_word" >&5 - break - done - -@@ -5946,10 +6159,10 @@ - fi - cf_ldd_prog=$ac_cv_prog_cf_ldd_prog - if test -n "$cf_ldd_prog"; then -- echo "$as_me:5949: result: $cf_ldd_prog" >&5 -+ echo "$as_me:6162: result: $cf_ldd_prog" >&5 - echo "${ECHO_T}$cf_ldd_prog" >&6 - else -- echo "$as_me:5952: result: no" >&5 -+ echo "$as_me:6165: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -5963,7 +6176,7 @@ - cf_rpath_oops= - - cat >conftest.$ac_ext <<_ACEOF --#line 5966 "configure" -+#line 6179 "configure" - #include "confdefs.h" - #include - int -@@ -5975,19 +6188,19 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5978: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6191: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5981: \$? = $ac_status" >&5 -+ echo "$as_me:6194: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5984: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6197: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5987: \$? = $ac_status" >&5 -+ echo "$as_me:6200: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort -u` -- cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[ ]/%/%' -e 's%/[^/][^/]*$%%' |sort -u` -+ cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort | uniq` -+ cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[ ]/%/%' -e 's%/[^/][^/]*$%%' |sort | uniq` - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -@@ -6012,7 +6225,7 @@ - then - test -n "$verbose" && echo " ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src" 1>&6 - --echo "${as_me:-configure}:6015: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5 -+echo "${as_me:-configure}:6228: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5 - - LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib" - break -@@ -6024,11 +6237,11 @@ - - test -n "$verbose" && echo " ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6 - --echo "${as_me:-configure}:6027: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5 -+echo "${as_me:-configure}:6240: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5 - - test -n "$verbose" && echo " ...checking LDFLAGS $LDFLAGS" 1>&6 - --echo "${as_me:-configure}:6031: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5 -+echo "${as_me:-configure}:6244: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5 - - cf_rpath_dst= - for cf_rpath_src in $LDFLAGS -@@ -6065,7 +6278,7 @@ - then - test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6 - --echo "${as_me:-configure}:6068: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5 -+echo "${as_me:-configure}:6281: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5 - - EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS" - fi -@@ -6078,11 +6291,11 @@ - - test -n "$verbose" && echo " ...checked LDFLAGS $LDFLAGS" 1>&6 - --echo "${as_me:-configure}:6081: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5 -+echo "${as_me:-configure}:6294: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5 - - test -n "$verbose" && echo " ...checking LIBS $LIBS" 1>&6 - --echo "${as_me:-configure}:6085: testing ...checking LIBS $LIBS ..." 1>&5 -+echo "${as_me:-configure}:6298: testing ...checking LIBS $LIBS ..." 1>&5 - - cf_rpath_dst= - for cf_rpath_src in $LIBS -@@ -6119,7 +6332,7 @@ - then - test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6 - --echo "${as_me:-configure}:6122: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5 -+echo "${as_me:-configure}:6335: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5 - - EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS" - fi -@@ -6132,12 +6345,15 @@ - - test -n "$verbose" && echo " ...checked LIBS $LIBS" 1>&6 - --echo "${as_me:-configure}:6135: testing ...checked LIBS $LIBS ..." 1>&5 -+echo "${as_me:-configure}:6348: testing ...checked LIBS $LIBS ..." 1>&5 - - test -n "$verbose" && echo " ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6 - --echo "${as_me:-configure}:6139: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5 -+echo "${as_me:-configure}:6352: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5 - -+else -+ echo "$as_me:6355: result: no" >&5 -+echo "${ECHO_T}no" >&6 - fi - - fi -@@ -6147,7 +6363,7 @@ - ############################################################################### - - ### use option --disable-overwrite to leave out the link to -lcurses --echo "$as_me:6150: checking if you wish to install ncurses overwriting curses" >&5 -+echo "$as_me:6366: checking if you wish to install ncurses overwriting curses" >&5 - echo $ECHO_N "checking if you wish to install ncurses overwriting curses... $ECHO_C" >&6 - - # Check whether --enable-overwrite or --disable-overwrite was given. -@@ -6157,10 +6373,10 @@ - else - if test "$prefix" = "/usr" ; then with_overwrite=yes; else with_overwrite=no; fi - fi; --echo "$as_me:6160: result: $with_overwrite" >&5 -+echo "$as_me:6376: result: $with_overwrite" >&5 - echo "${ECHO_T}$with_overwrite" >&6 - --echo "$as_me:6163: checking if external terminfo-database is used" >&5 -+echo "$as_me:6379: checking if external terminfo-database is used" >&5 - echo $ECHO_N "checking if external terminfo-database is used... $ECHO_C" >&6 - - # Check whether --enable-database or --disable-database was given. -@@ -6170,7 +6386,7 @@ - else - use_database=yes - fi; --echo "$as_me:6173: result: $use_database" >&5 -+echo "$as_me:6389: result: $use_database" >&5 - echo "${ECHO_T}$use_database" >&6 - - case $host_os in #(vi -@@ -6182,17 +6398,11 @@ - ;; - esac - -- case $cf_cv_system_name in -- os2*) PATH_SEPARATOR=';' ;; -- *) PATH_SEPARATOR=':' ;; -- esac -- -+NCURSES_USE_DATABASE=0 - if test "$use_database" != no ; then -- cat >>confdefs.h <<\EOF --#define USE_DATABASE 1 --EOF -+ NCURSES_USE_DATABASE=1 - -- echo "$as_me:6195: checking which terminfo source-file will be installed" >&5 -+ echo "$as_me:6405: checking which terminfo source-file will be installed" >&5 - echo $ECHO_N "checking which terminfo source-file will be installed... $ECHO_C" >&6 - - # Check whether --with-database or --without-database was given. -@@ -6200,10 +6410,10 @@ - withval="$with_database" - TERMINFO_SRC=$withval - fi; -- echo "$as_me:6203: result: $TERMINFO_SRC" >&5 -+ echo "$as_me:6413: result: $TERMINFO_SRC" >&5 - echo "${ECHO_T}$TERMINFO_SRC" >&6 - -- echo "$as_me:6206: checking whether to use hashed database instead of directory/tree" >&5 -+ echo "$as_me:6416: checking whether to use hashed database instead of directory/tree" >&5 - echo $ECHO_N "checking whether to use hashed database instead of directory/tree... $ECHO_C" >&6 - - # Check whether --with-hashed-db or --without-hashed-db was given. -@@ -6213,13 +6423,13 @@ - else - with_hashed_db=no - fi; -- echo "$as_me:6216: result: $with_hashed_db" >&5 -+ echo "$as_me:6426: result: $with_hashed_db" >&5 - echo "${ECHO_T}$with_hashed_db" >&6 - else - with_hashed_db=no - fi - --echo "$as_me:6222: checking for list of fallback descriptions" >&5 -+echo "$as_me:6432: checking for list of fallback descriptions" >&5 - echo $ECHO_N "checking for list of fallback descriptions... $ECHO_C" >&6 - - # Check whether --with-fallbacks or --without-fallbacks was given. -@@ -6229,11 +6439,11 @@ - else - with_fallback= - fi; --echo "$as_me:6232: result: $with_fallback" >&5 -+echo "$as_me:6442: result: $with_fallback" >&5 - echo "${ECHO_T}$with_fallback" >&6 - FALLBACK_LIST=`echo "$with_fallback" | sed -e 's/,/ /g'` - --echo "$as_me:6236: checking if you want modern xterm or antique" >&5 -+echo "$as_me:6446: checking if you want modern xterm or antique" >&5 - echo $ECHO_N "checking if you want modern xterm or antique... $ECHO_C" >&6 - - # Check whether --with-xterm-new or --without-xterm-new was given. -@@ -6247,17 +6457,42 @@ - no) with_xterm_new=xterm-old;; - *) with_xterm_new=xterm-new;; - esac --echo "$as_me:6250: result: $with_xterm_new" >&5 -+echo "$as_me:6460: result: $with_xterm_new" >&5 - echo "${ECHO_T}$with_xterm_new" >&6 - WHICH_XTERM=$with_xterm_new - -+echo "$as_me:6464: checking if xterm backspace sends BS or DEL" >&5 -+echo $ECHO_N "checking if xterm backspace sends BS or DEL... $ECHO_C" >&6 -+ -+# Check whether --with-xterm-kbs or --without-xterm-kbs was given. -+if test "${with_xterm_kbs+set}" = set; then -+ withval="$with_xterm_kbs" -+ with_xterm_kbs=$withval -+else -+ with_xterm_kbs=BS -+fi; -+case x$with_xterm_kbs in -+xyes|xno|xBS|xbs|x8) -+ with_xterm_kbs=BS -+ ;; -+xDEL|xdel|x127) -+ with_xterm_kbs=DEL -+ ;; -+*) -+ with_xterm_kbs=$withval -+ ;; -+esac -+echo "$as_me:6485: result: $with_xterm_kbs" >&5 -+echo "${ECHO_T}$with_xterm_kbs" >&6 -+XTERM_KBS=$with_xterm_kbs -+ - MAKE_TERMINFO= - if test "$use_database" = no ; then - TERMINFO="${datadir}/terminfo" - MAKE_TERMINFO="#" - else - --echo "$as_me:6260: checking for list of terminfo directories" >&5 -+echo "$as_me:6495: checking for list of terminfo directories" >&5 - echo $ECHO_N "checking for list of terminfo directories... $ECHO_C" >&6 - - # Check whether --with-terminfo-dirs or --without-terminfo-dirs was given. -@@ -6285,7 +6520,7 @@ - ;; - .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX - ;; --.\${*prefix}*) #(vi -+.\${*prefix}*|.\${*dir}*) #(vi - eval cf_src_path="$cf_src_path" - case ".$cf_src_path" in #(vi - .NONE/*) -@@ -6297,26 +6532,37 @@ - cf_src_path=`echo $cf_src_path | sed -e s%NONE%$cf_path_syntax%` - ;; - *) -- { { echo "$as_me:6300: error: expected a pathname, not \"$cf_src_path\"" >&5 -+ { { echo "$as_me:6535: error: expected a pathname, not \"$cf_src_path\"" >&5 - echo "$as_me: error: expected a pathname, not \"$cf_src_path\"" >&2;} - { (exit 1); exit 1; }; } - ;; - esac - -- test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}:" -+ test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}$PATH_SEPARATOR" - cf_dst_path="${cf_dst_path}${cf_src_path}" - done - IFS="$ac_save_ifs" - --eval 'TERMINFO_DIRS="$cf_dst_path"' -+# This may use the prefix/exec_prefix symbols which will only yield "NONE" -+# so we have to check/work around. We do prefer the result of "eval"... -+eval cf_dst_eval="$cf_dst_path" -+case "x$cf_dst_eval" in #(vi -+xNONE*) #(vi -+ TERMINFO_DIRS=$cf_dst_path -+ ;; -+*) -+ TERMINFO_DIRS="$cf_dst_eval" -+ ;; -+esac - --echo "$as_me:6313: result: $TERMINFO_DIRS" >&5 -+echo "$as_me:6558: result: $TERMINFO_DIRS" >&5 - echo "${ECHO_T}$TERMINFO_DIRS" >&6 --test -n "$TERMINFO_DIRS" && cat >>confdefs.h <>confdefs.h <&5 -+echo "$as_me:6565: checking for default terminfo directory" >&5 - echo $ECHO_N "checking for default terminfo directory... $ECHO_C" >&6 - - # Check whether --with-default-terminfo-dir or --without-default-terminfo-dir was given. -@@ -6340,7 +6586,7 @@ - ;; - .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX - ;; --.\${*prefix}*) #(vi -+.\${*prefix}*|.\${*dir}*) #(vi - eval withval="$withval" - case ".$withval" in #(vi - .NONE/*) -@@ -6352,17 +6598,18 @@ - withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` - ;; - *) -- { { echo "$as_me:6355: error: expected a pathname, not \"$withval\"" >&5 -+ { { echo "$as_me:6601: error: expected a pathname, not \"$withval\"" >&5 - echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} - { (exit 1); exit 1; }; } - ;; - esac - - fi --TERMINFO="$withval" -+eval TERMINFO="$withval" - --echo "$as_me:6364: result: $TERMINFO" >&5 -+echo "$as_me:6610: result: $TERMINFO" >&5 - echo "${ECHO_T}$TERMINFO" >&6 -+ - cat >>confdefs.h <&5 -+echo "$as_me:6621: checking if big-core option selected" >&5 - echo $ECHO_N "checking if big-core option selected... $ECHO_C" >&6 - - # Check whether --enable-big-core or --disable-big-core was given. -@@ -6383,7 +6630,7 @@ - with_big_core=no - else - cat >conftest.$ac_ext <<_ACEOF --#line 6386 "configure" -+#line 6633 "configure" - #include "confdefs.h" - - #include -@@ -6397,15 +6644,15 @@ - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:6400: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6647: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6403: \$? = $ac_status" >&5 -+ echo "$as_me:6650: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:6405: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6652: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6408: \$? = $ac_status" >&5 -+ echo "$as_me:6655: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - with_big_core=yes - else -@@ -6417,16 +6664,17 @@ - rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext - fi - fi; --echo "$as_me:6420: result: $with_big_core" >&5 -+echo "$as_me:6667: result: $with_big_core" >&5 - echo "${ECHO_T}$with_big_core" >&6 --test "$with_big_core" = "yes" && cat >>confdefs.h <<\EOF -+test "x$with_big_core" = "xyes" && -+cat >>confdefs.h <<\EOF - #define HAVE_BIG_CORE 1 - EOF - - ### ISO C only guarantees 512-char strings, we have tables which load faster - ### when constructed using "big" strings. More than the C compiler, the awk - ### program is a limit on most vendor UNIX systems. Check that we can build. --echo "$as_me:6429: checking if big-strings option selected" >&5 -+echo "$as_me:6677: checking if big-strings option selected" >&5 - echo $ECHO_N "checking if big-strings option selected... $ECHO_C" >&6 - - # Check whether --enable-big-strings or --disable-big-strings was given. -@@ -6440,8 +6688,8 @@ - eval with_big_strings=no - ;; - *) #(vi -- if ( ${AWK} 'BEGIN { xx = "x"; while (length(xx) < 12000) { xx = xx "x"; }; printf("%s\n", xx); }' \ -- | $AWK '{ printf "%d\n", length($0); }' | $AWK 'BEGIN { eqls=0; recs=0; } { recs++; if ($0 == 12000) eqls++; } END { if (recs != 1 || eqls != 1) exit 1; }' 2>/dev/null >/dev/null ) ; then -+ if ( ${AWK} 'BEGIN { xx = "x"; while (length(xx) < 12000) { xx = xx "x"; }; printf("%s\n", xx); }' 2>/dev/null \ -+ | $AWK '{ printf "%d\n", length($0); }' 2>/dev/null | $AWK 'BEGIN { eqls=0; recs=0; } { recs++; if ($0 == 12000) eqls++; } END { if (recs != 1 || eqls != 1) exit 1; }' 2>/dev/null >/dev/null ) ; then - eval with_big_strings=yes - else - eval with_big_strings=no -@@ -6450,14 +6698,14 @@ - esac - - fi; --echo "$as_me:6453: result: $with_big_strings" >&5 -+echo "$as_me:6701: result: $with_big_strings" >&5 - echo "${ECHO_T}$with_big_strings" >&6 - - USE_BIG_STRINGS=0 --test "$with_big_strings" = "yes" && USE_BIG_STRINGS=1 -+test "x$with_big_strings" = "xyes" && USE_BIG_STRINGS=1 - - ### use option --enable-termcap to compile in the termcap fallback support --echo "$as_me:6460: checking if you want termcap-fallback support" >&5 -+echo "$as_me:6708: checking if you want termcap-fallback support" >&5 - echo $ECHO_N "checking if you want termcap-fallback support... $ECHO_C" >&6 - - # Check whether --enable-termcap or --disable-termcap was given. -@@ -6467,34 +6715,33 @@ - else - with_termcap=no - fi; --echo "$as_me:6470: result: $with_termcap" >&5 -+echo "$as_me:6718: result: $with_termcap" >&5 - echo "${ECHO_T}$with_termcap" >&6 - --if test "$with_termcap" != "yes" ; then -+NCURSES_USE_TERMCAP=0 -+if test "x$with_termcap" != "xyes" ; then - if test "$use_database" = no ; then - if test -z "$with_fallback" ; then -- { { echo "$as_me:6476: error: You have disabled the database w/o specifying fallbacks" >&5 -+ { { echo "$as_me:6725: error: You have disabled the database w/o specifying fallbacks" >&5 - echo "$as_me: error: You have disabled the database w/o specifying fallbacks" >&2;} - { (exit 1); exit 1; }; } - fi - fi -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define PURE_TERMINFO 1 - EOF - - else - --if test "$with_ticlib" != no ; then -- { { echo "$as_me:6488: error: Options --with-ticlib and --enable-termcap cannot be combined" >&5 -+ if test "$with_ticlib" != no ; then -+ { { echo "$as_me:6738: error: Options --with-ticlib and --enable-termcap cannot be combined" >&5 - echo "$as_me: error: Options --with-ticlib and --enable-termcap cannot be combined" >&2;} - { (exit 1); exit 1; }; } --fi -- --cat >>confdefs.h <<\EOF --#define USE_TERMCAP 1 --EOF -+ fi - --echo "$as_me:6497: checking for list of termcap files" >&5 -+ NCURSES_USE_TERMCAP=1 -+ echo "$as_me:6744: checking for list of termcap files" >&5 - echo $ECHO_N "checking for list of termcap files... $ECHO_C" >&6 - - # Check whether --with-termpath or --without-termpath was given. -@@ -6522,7 +6769,7 @@ - ;; - .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX - ;; --.\${*prefix}*) #(vi -+.\${*prefix}*|.\${*dir}*) #(vi - eval cf_src_path="$cf_src_path" - case ".$cf_src_path" in #(vi - .NONE/*) -@@ -6534,27 +6781,38 @@ - cf_src_path=`echo $cf_src_path | sed -e s%NONE%$cf_path_syntax%` - ;; - *) -- { { echo "$as_me:6537: error: expected a pathname, not \"$cf_src_path\"" >&5 -+ { { echo "$as_me:6784: error: expected a pathname, not \"$cf_src_path\"" >&5 - echo "$as_me: error: expected a pathname, not \"$cf_src_path\"" >&2;} - { (exit 1); exit 1; }; } - ;; - esac - -- test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}:" -+ test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}$PATH_SEPARATOR" - cf_dst_path="${cf_dst_path}${cf_src_path}" - done - IFS="$ac_save_ifs" - --eval 'TERMPATH="$cf_dst_path"' -+# This may use the prefix/exec_prefix symbols which will only yield "NONE" -+# so we have to check/work around. We do prefer the result of "eval"... -+eval cf_dst_eval="$cf_dst_path" -+case "x$cf_dst_eval" in #(vi -+xNONE*) #(vi -+ TERMPATH=$cf_dst_path -+ ;; -+*) -+ TERMPATH="$cf_dst_eval" -+ ;; -+esac - --echo "$as_me:6550: result: $TERMPATH" >&5 -+ echo "$as_me:6807: result: $TERMPATH" >&5 - echo "${ECHO_T}$TERMPATH" >&6 --test -n "$TERMPATH" && cat >>confdefs.h <>confdefs.h <&5 -+ ### use option --enable-getcap to use a hacked getcap for reading termcaps -+ echo "$as_me:6815: checking if fast termcap-loader is needed" >&5 - echo $ECHO_N "checking if fast termcap-loader is needed... $ECHO_C" >&6 - - # Check whether --enable-getcap or --disable-getcap was given. -@@ -6564,13 +6822,14 @@ - else - with_getcap=no - fi; --echo "$as_me:6567: result: $with_getcap" >&5 -+ echo "$as_me:6825: result: $with_getcap" >&5 - echo "${ECHO_T}$with_getcap" >&6 --test "$with_getcap" = "yes" && cat >>confdefs.h <<\EOF -+ test "x$with_getcap" = "xyes" && -+cat >>confdefs.h <<\EOF - #define USE_GETCAP 1 - EOF - --echo "$as_me:6573: checking if translated termcaps will be cached in ~/.terminfo" >&5 -+ echo "$as_me:6832: checking if translated termcaps will be cached in ~/.terminfo" >&5 - echo $ECHO_N "checking if translated termcaps will be cached in ~/.terminfo... $ECHO_C" >&6 - - # Check whether --enable-getcap-cache or --disable-getcap-cache was given. -@@ -6580,16 +6839,17 @@ - else - with_getcap_cache=no - fi; --echo "$as_me:6583: result: $with_getcap_cache" >&5 -+ echo "$as_me:6842: result: $with_getcap_cache" >&5 - echo "${ECHO_T}$with_getcap_cache" >&6 --test "$with_getcap_cache" = "yes" && cat >>confdefs.h <<\EOF -+ test "x$with_getcap_cache" = "xyes" && -+cat >>confdefs.h <<\EOF - #define USE_GETCAP_CACHE 1 - EOF - - fi - - ### Use option --disable-home-terminfo to completely remove ~/.terminfo --echo "$as_me:6592: checking if ~/.terminfo is wanted" >&5 -+echo "$as_me:6852: checking if ~/.terminfo is wanted" >&5 - echo $ECHO_N "checking if ~/.terminfo is wanted... $ECHO_C" >&6 - - # Check whether --enable-home-terminfo or --disable-home-terminfo was given. -@@ -6599,13 +6859,14 @@ - else - with_home_terminfo=yes - fi; --echo "$as_me:6602: result: $with_home_terminfo" >&5 -+echo "$as_me:6862: result: $with_home_terminfo" >&5 - echo "${ECHO_T}$with_home_terminfo" >&6 --test "$with_home_terminfo" = "yes" && cat >>confdefs.h <<\EOF -+test "x$with_home_terminfo" = "xyes" && -+cat >>confdefs.h <<\EOF - #define USE_HOME_TERMINFO 1 - EOF - --echo "$as_me:6608: checking if you want to use restricted environment when running as root" >&5 -+echo "$as_me:6869: checking if you want to use restricted environment when running as root" >&5 - echo $ECHO_N "checking if you want to use restricted environment when running as root... $ECHO_C" >&6 - - # Check whether --enable-root-environ or --disable-root-environ was given. -@@ -6615,9 +6876,10 @@ - else - with_root_environ=yes - fi; --echo "$as_me:6618: result: $with_root_environ" >&5 -+echo "$as_me:6879: result: $with_root_environ" >&5 - echo "${ECHO_T}$with_root_environ" >&6 --test "$with_root_environ" = yes && cat >>confdefs.h <<\EOF -+test "x$with_root_environ" = xyes && -+cat >>confdefs.h <<\EOF - #define USE_ROOT_ENVIRON 1 - EOF - -@@ -6629,13 +6891,13 @@ - unlink - do - as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` --echo "$as_me:6632: checking for $ac_func" >&5 -+echo "$as_me:6894: checking for $ac_func" >&5 - echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 - if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 6638 "configure" -+#line 6900 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. */ -@@ -6658,7 +6920,7 @@ - #if defined (__stub_$ac_func) || defined (__stub___$ac_func) - choke me - #else --f = $ac_func; -+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -6666,16 +6928,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:6669: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6931: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6672: \$? = $ac_status" >&5 -+ echo "$as_me:6934: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:6675: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6937: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6678: \$? = $ac_status" >&5 -+ echo "$as_me:6940: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_var=yes" - else -@@ -6685,7 +6947,7 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:6688: result: `eval echo '${'$as_ac_var'}'`" >&5 -+echo "$as_me:6950: result: `eval echo '${'$as_ac_var'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 - if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <&5 --echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 --if eval "test \"\${$as_ac_var+set}\" = set"; then -+for ac_func in \ -+ link \ -+ symlink -+do -+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -+echo "$as_me:6967: checking for $ac_func" >&5 -+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_var+set}\" = set"; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 6973 "configure" -+#include "confdefs.h" -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char $ac_func (); below. */ -+#include -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char $ac_func (); -+char (*f) (); -+ -+int -+main () -+{ -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -+choke me -+#else -+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:7004: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:7007: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:7010: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:7013: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ eval "$as_ac_var=yes" -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+eval "$as_ac_var=no" -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:7023: result: `eval echo '${'$as_ac_var'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -+if test `eval echo '${'$as_ac_var'}'` = yes; then -+ cat >>confdefs.h <&5 -+echo $ECHO_N "checking if link/symlink functions work... $ECHO_C" >&6 -+if test "${cf_cv_link_funcs+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+ cf_cv_link_funcs= -+ for cf_func in link symlink ; do -+ if test "$cross_compiling" = yes; then -+ -+ eval 'ac_cv_func_'$cf_func'=error' -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7047 "configure" -+#include "confdefs.h" -+ -+#include -+#include -+#ifdef HAVE_UNISTD_H -+#include -+#endif -+int main() -+{ -+ int fail = 0; -+ char *src = "config.log"; -+ char *dst = "conftest.chk"; -+ struct stat src_sb; -+ struct stat dst_sb; -+ -+ stat(src, &src_sb); -+ fail = ($cf_func("config.log", "conftest.chk") < 0) -+ || (stat(dst, &dst_sb) < 0) -+ || (dst_sb.st_mtime != src_sb.st_mtime); -+#ifdef HAVE_UNLINK -+ unlink(dst); -+#else -+ remove(dst); -+#endif -+ ${cf_cv_main_return:-return} (fail); -+} -+ -+_ACEOF -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:7077: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:7080: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:7082: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:7085: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ -+ cf_cv_link_funcs="$cf_cv_link_funcs $cf_func" -+ eval 'ac_cv_func_'$cf_func'=yes' -+else -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ -+ eval 'ac_cv_func_'$cf_func'=no' -+fi -+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+fi -+ done -+ test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no -+ -+fi -+echo "$as_me:7103: result: $cf_cv_link_funcs" >&5 -+echo "${ECHO_T}$cf_cv_link_funcs" >&6 -+ test "$ac_cv_func_link" = yes && -+cat >>confdefs.h <<\EOF -+#define HAVE_LINK 1 -+EOF -+ -+ test "$ac_cv_func_symlink" = yes && -+cat >>confdefs.h <<\EOF -+#define HAVE_SYMLINK 1 -+EOF -+ -+fi -+ -+with_links=no -+with_symlinks=no -+ -+# soft links (symbolic links) are useful for some systems where hard links do -+# not work, or to make it simpler to copy terminfo trees around. -+if test "x$ac_cv_func_symlink" = xyes ; then -+ echo "$as_me:7123: checking if tic should use symbolic links" >&5 -+echo $ECHO_N "checking if tic should use symbolic links... $ECHO_C" >&6 -+ -+# Check whether --enable-symlinks or --disable-symlinks was given. -+if test "${enable_symlinks+set}" = set; then -+ enableval="$enable_symlinks" -+ with_symlinks=$enableval -+else -+ with_symlinks=no -+fi; -+ echo "$as_me:7133: result: $with_symlinks" >&5 -+echo "${ECHO_T}$with_symlinks" >&6 -+fi -+ -+# If we have hard links and did not choose to use soft links instead, there is -+# no reason to make this choice optional - use the hard links. -+if test "$with_symlinks" = no ; then -+ echo "$as_me:7140: checking if tic should use hard links" >&5 -+echo $ECHO_N "checking if tic should use hard links... $ECHO_C" >&6 -+ if test "x$ac_cv_func_link" = xyes ; then -+ with_links=yes -+ else -+ with_links=no -+ fi -+ echo "$as_me:7147: result: $with_links" >&5 -+echo "${ECHO_T}$with_links" >&6 -+fi -+ -+test "x$with_links" = xyes && -+cat >>confdefs.h <<\EOF -+#define USE_LINKS 1 -+EOF -+ -+test "x$with_symlinks" = xyes && -+cat >>confdefs.h <<\EOF -+#define USE_SYMLINKS 1 -+EOF -+ -+### use option --enable-broken-linker to force on use of broken-linker support -+echo "$as_me:7162: checking if you want broken-linker support code" >&5 -+echo $ECHO_N "checking if you want broken-linker support code... $ECHO_C" >&6 -+ -+# Check whether --enable-broken_linker or --disable-broken_linker was given. -+if test "${enable_broken_linker+set}" = set; then -+ enableval="$enable_broken_linker" -+ with_broken_linker=$enableval -+else -+ with_broken_linker=${BROKEN_LINKER:-no} -+fi; -+echo "$as_me:7172: result: $with_broken_linker" >&5 -+echo "${ECHO_T}$with_broken_linker" >&6 -+ -+BROKEN_LINKER=0 -+if test "x$with_broken_linker" = xyes ; then -+ -+cat >>confdefs.h <<\EOF -+#define BROKEN_LINKER 1 -+EOF -+ -+ BROKEN_LINKER=1 -+elif test "$DFT_LWR_MODEL" = shared ; then -+ case $cf_cv_system_name in #(vi -+ cygwin*) -+ -+cat >>confdefs.h <<\EOF -+#define BROKEN_LINKER 1 -+EOF -+ -+ BROKEN_LINKER=1 -+ test -n "$verbose" && echo " cygwin linker is broken anyway" 1>&6 -+ -+echo "${as_me:-configure}:7194: testing cygwin linker is broken anyway ..." 1>&5 -+ -+ ;; -+ esac -+fi -+ -+### use option --enable-bsdpad to have tputs process BSD-style prefix padding -+echo "$as_me:7201: checking if tputs should process BSD-style prefix padding" >&5 -+echo $ECHO_N "checking if tputs should process BSD-style prefix padding... $ECHO_C" >&6 -+ -+# Check whether --enable-bsdpad or --disable-bsdpad was given. -+if test "${enable_bsdpad+set}" = set; then -+ enableval="$enable_bsdpad" -+ with_bsdpad=$enableval -+else -+ with_bsdpad=no -+fi; -+echo "$as_me:7211: result: $with_bsdpad" >&5 -+echo "${ECHO_T}$with_bsdpad" >&6 -+test "x$with_bsdpad" = xyes && -+cat >>confdefs.h <<\EOF -+#define BSD_TPUTS 1 -+EOF -+ -+### use option --enable-widec to turn on use of wide-character support -+NCURSES_CH_T=chtype -+NCURSES_LIBUTF8=0 -+ -+NEED_WCHAR_H=0 -+NCURSES_MBSTATE_T=0 -+NCURSES_WCHAR_T=0 -+NCURSES_WINT_T=0 -+ -+# Check to define _XOPEN_SOURCE "automatically" -+ -+cf_XOPEN_SOURCE=500 -+cf_POSIX_C_SOURCE=199506L -+cf_xopen_source= -+ -+case $host_os in #(vi -+aix[4-7]*) #(vi -+ cf_xopen_source="-D_ALL_SOURCE" -+ ;; -+cygwin|msys) #(vi -+ cf_XOPEN_SOURCE=600 -+ ;; -+darwin[0-8].*) #(vi -+ cf_xopen_source="-D_APPLE_C_SOURCE" -+ ;; -+darwin*) #(vi -+ cf_xopen_source="-D_DARWIN_C_SOURCE" -+ cf_XOPEN_SOURCE= -+ ;; -+freebsd*|dragonfly*) #(vi -+ # 5.x headers associate -+ # _XOPEN_SOURCE=600 with _POSIX_C_SOURCE=200112L -+ # _XOPEN_SOURCE=500 with _POSIX_C_SOURCE=199506L -+ cf_POSIX_C_SOURCE=200112L -+ cf_XOPEN_SOURCE=600 -+ cf_xopen_source="-D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -+ ;; -+hpux11*) #(vi -+ cf_xopen_source="-D_HPUX_SOURCE -D_XOPEN_SOURCE=500" -+ ;; -+hpux*) #(vi -+ cf_xopen_source="-D_HPUX_SOURCE" -+ ;; -+irix[56].*) #(vi -+ cf_xopen_source="-D_SGI_SOURCE" -+ cf_XOPEN_SOURCE= -+ ;; -+linux*|gnu*|mint*|k*bsd*-gnu) #(vi -+ -+echo "$as_me:7267: checking if we must define _GNU_SOURCE" >&5 -+echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_gnu_source+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+cat >conftest.$ac_ext <<_ACEOF -+#line 7274 "configure" -+#include "confdefs.h" -+#include -+int -+main () -+{ -+ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7289: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:7292: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7295: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:7298: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_gnu_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7307 "configure" -+#include "confdefs.h" -+#include -+int -+main () -+{ -+ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7322: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:7325: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7328: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:7331: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_gnu_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_gnu_source=yes -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS="$cf_save" -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ -+fi -+echo "$as_me:7346: result: $cf_cv_gnu_source" >&5 -+echo "${ECHO_T}$cf_cv_gnu_source" >&6 -+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+ -+ ;; -+mirbsd*) #(vi -+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks and other headers which use u_int / u_short types -+ cf_XOPEN_SOURCE= -+ -+cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -+ -+cf_save_CFLAGS="$CFLAGS" -+cf_save_CPPFLAGS="$CPPFLAGS" -+ -+cf_trim_CFLAGS=`echo "$cf_save_CFLAGS" | \ -+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` -+ -+cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \ -+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` -+ -+echo "$as_me:7368: checking if we should define _POSIX_C_SOURCE" >&5 -+echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_posix_c_source+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+echo "${as_me:-configure}:7374: testing if the symbol is already defined go no further ..." 1>&5 -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7377 "configure" -+#include "confdefs.h" -+#include -+int -+main () -+{ -+ -+#ifndef _POSIX_C_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7392: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:7395: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7398: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:7401: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_posix_c_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_want_posix_source=no -+ case .$cf_POSIX_C_SOURCE in #(vi -+ .[12]??*) #(vi -+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" -+ ;; -+ .2) #(vi -+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" -+ cf_want_posix_source=yes -+ ;; -+ .*) -+ cf_want_posix_source=yes -+ ;; -+ esac -+ if test "$cf_want_posix_source" = yes ; then -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7422 "configure" -+#include "confdefs.h" -+#include -+int -+main () -+{ -+ -+#ifdef _POSIX_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7437: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:7440: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7443: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:7446: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE" -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ fi -+ -+echo "${as_me:-configure}:7457: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5 -+ -+ CFLAGS="$cf_trim_CFLAGS" -+ CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source" -+ -+echo "${as_me:-configure}:7462: testing if the second compile does not leave our definition intact error ..." 1>&5 -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7465 "configure" -+#include "confdefs.h" -+#include -+int -+main () -+{ -+ -+#ifndef _POSIX_C_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7480: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:7483: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7486: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:7489: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_posix_c_source=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CFLAGS="$cf_save_CFLAGS" -+ CPPFLAGS="$cf_save_CPPFLAGS" -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ -+fi -+echo "$as_me:7505: result: $cf_cv_posix_c_source" >&5 -+echo "${ECHO_T}$cf_cv_posix_c_source" >&6 -+ -+if test "$cf_cv_posix_c_source" != no ; then -+ CFLAGS="$cf_trim_CFLAGS" -+ CPPFLAGS="$cf_trim_CPPFLAGS" -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_cv_posix_c_source -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+fi -+ -+ ;; -+netbsd*) #(vi -+ cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ ;; -+openbsd[4-9]*) #(vi -+ # setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw -+ cf_xopen_source="-D_BSD_SOURCE" -+ cf_XOPEN_SOURCE=600 -+ ;; -+openbsd*) #(vi -+ # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw -+ ;; -+osf[45]*) #(vi -+ cf_xopen_source="-D_OSF_SOURCE" -+ ;; -+nto-qnx*) #(vi -+ cf_xopen_source="-D_QNX_SOURCE" -+ ;; -+sco*) #(vi -+ # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer -+ ;; -+solaris2.*) #(vi -+ cf_xopen_source="-D__EXTENSIONS__" -+ cf_cv_xopen_source=broken -+ ;; -+*) -+ -+echo "$as_me:7619: checking if we should define _XOPEN_SOURCE" >&5 -+echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_xopen_source+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 6711 "configure" -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7626 "configure" - #include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char $ac_func (); below. */ --#include --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char $ac_func (); --char (*f) (); -+ -+#include -+#include -+#include - - int - main () - { --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_$ac_func) || defined (__stub___$ac_func) --choke me --#else --f = $ac_func; --#endif - -+#ifndef _XOPEN_SOURCE -+make an error -+#endif - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:6742: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7645: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:6745: \$? = $ac_status" >&5 -+ echo "$as_me:7648: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:6748: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7651: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6751: \$? = $ac_status" >&5 -+ echo "$as_me:7654: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- eval "$as_ac_var=yes" -+ cf_cv_xopen_source=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --eval "$as_ac_var=no" --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:6761: result: `eval echo '${'$as_ac_var'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 --if test `eval echo '${'$as_ac_var'}'` = yes; then -- cat >>confdefs.h <&5 --echo $ECHO_N "checking if link/symlink functions work... $ECHO_C" >&6 --if test "${cf_cv_link_funcs+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- -- cf_cv_link_funcs= -- for cf_func in link symlink ; do -- if test "$cross_compiling" = yes; then -- -- eval 'ac_cv_func_'$cf_func'=error' --else -- cat >conftest.$ac_ext <<_ACEOF --#line 6785 "configure" -+cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7663 "configure" - #include "confdefs.h" - -+#include -+#include - #include --#include --#ifdef HAVE_UNISTD_H --#include --#endif --int main() -+ -+int -+main () - { -- int fail = 0; -- char *src = "config.log"; -- char *dst = "conftest.chk"; -- struct stat src_sb; -- struct stat dst_sb; - -- stat(src, &src_sb); -- fail = ($cf_func("config.log", "conftest.chk") < 0) -- || (stat(dst, &dst_sb) < 0) -- || (dst_sb.st_mtime != src_sb.st_mtime); --#ifdef HAVE_UNLINK -- unlink(dst); --#else -- remove(dst); -+#ifdef _XOPEN_SOURCE -+make an error - #endif -- ${cf_cv_main_return:-return} (fail); -+ ; -+ return 0; - } -- - _ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:6815: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7682: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:6818: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:6820: \"$ac_try\"") >&5 -+ echo "$as_me:7685: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7688: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6823: \$? = $ac_status" >&5 -+ echo "$as_me:7691: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- -- cf_cv_link_funcs="$cf_cv_link_funcs $cf_func" -- eval 'ac_cv_func_'$cf_func'=yes' -+ cf_cv_xopen_source=no - else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 -+ echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -- -- eval 'ac_cv_func_'$cf_func'=no' -+cf_cv_xopen_source=$cf_XOPEN_SOURCE - fi --rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS="$cf_save" -+ - fi -- done -- test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no -+rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:6841: result: $cf_cv_link_funcs" >&5 --echo "${ECHO_T}$cf_cv_link_funcs" >&6 -- test "$ac_cv_func_link" = yes && cat >>confdefs.h <<\EOF --#define HAVE_LINK 1 --EOF -+echo "$as_me:7706: result: $cf_cv_xopen_source" >&5 -+echo "${ECHO_T}$cf_cv_xopen_source" >&6 - -- test "$ac_cv_func_symlink" = yes && cat >>confdefs.h <<\EOF --#define HAVE_SYMLINK 1 --EOF -+if test "$cf_cv_xopen_source" != no ; then - --fi -+CFLAGS=`echo "$CFLAGS" | \ -+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` - --with_links=no --with_symlinks=no -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` - --# soft links (symbolic links) are useful for some systems where hard links do --# not work, or to make it simpler to copy terminfo trees around. --if test "$ac_cv_func_symlink" = yes ; then -- echo "$as_me:6859: checking if tic should use symbolic links" >&5 --echo $ECHO_N "checking if tic should use symbolic links... $ECHO_C" >&6 -+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" - --# Check whether --enable-symlinks or --disable-symlinks was given. --if test "${enable_symlinks+set}" = set; then -- enableval="$enable_symlinks" -- with_symlinks=$enableval --else -- with_symlinks=no --fi; -- echo "$as_me:6869: result: $with_symlinks" >&5 --echo "${ECHO_T}$with_symlinks" >&6 --fi -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= - --# If we have hard links and did not choose to use soft links instead, there is --# no reason to make this choice optional - use the hard links. --if test "$with_symlinks" = no ; then -- echo "$as_me:6876: checking if tic should use hard links" >&5 --echo $ECHO_N "checking if tic should use hard links... $ECHO_C" >&6 -- if test "$ac_cv_func_link" = yes ; then -- with_links=yes -- else -- with_links=no -- fi -- echo "$as_me:6883: result: $with_links" >&5 --echo "${ECHO_T}$with_links" >&6 --fi -+for cf_add_cflags in $cf_temp_xopen_source -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` - --test "$with_links" = yes && cat >>confdefs.h <<\EOF --#define USE_LINKS 1 --EOF -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes - --test "$with_symlinks" = yes && cat >>confdefs.h <<\EOF --#define USE_SYMLINKS 1 --EOF -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` - --### use option --enable-broken-linker to force on use of broken-linker support --echo "$as_me:6896: checking if you want broken-linker support code" >&5 --echo $ECHO_N "checking if you want broken-linker support code... $ECHO_C" >&6 -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` - --# Check whether --enable-broken_linker or --disable-broken_linker was given. --if test "${enable_broken_linker+set}" = set; then -- enableval="$enable_broken_linker" -- with_broken_linker=$enableval --else -- with_broken_linker=${BROKEN_LINKER:-no} --fi; --echo "$as_me:6906: result: $with_broken_linker" >&5 --echo "${ECHO_T}$with_broken_linker" >&6 -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" - --BROKEN_LINKER=0 --if test "$with_broken_linker" = yes ; then -- cat >>confdefs.h <<\EOF --#define BROKEN_LINKER 1 --EOF -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` - -- BROKEN_LINKER=1 --elif test "$DFT_LWR_MODEL" = shared ; then -- case $cf_cv_system_name in #(vi -- cygwin*) -- cat >>confdefs.h <<\EOF --#define BROKEN_LINKER 1 --EOF -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done - -- BROKEN_LINKER=1 -- test -n "$verbose" && echo " cygwin linker is broken anyway" 1>&6 -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi - --echo "${as_me:-configure}:6926: testing cygwin linker is broken anyway ..." 1>&5 -+if test -n "$cf_new_cppflags" ; then - -- ;; -- esac -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" - fi - --### use option --enable-bsdpad to have tputs process BSD-style prefix padding --echo "$as_me:6933: checking if tputs should process BSD-style prefix padding" >&5 --echo $ECHO_N "checking if tputs should process BSD-style prefix padding... $ECHO_C" >&6 -+if test -n "$cf_new_extra_cppflags" ; then - --# Check whether --enable-bsdpad or --disable-bsdpad was given. --if test "${enable_bsdpad+set}" = set; then -- enableval="$enable_bsdpad" -- with_bsdpad=$enableval --else -- with_bsdpad=no --fi; --echo "$as_me:6943: result: $with_bsdpad" >&5 --echo "${ECHO_T}$with_bsdpad" >&6 --test "$with_bsdpad" = yes && cat >>confdefs.h <<\EOF --#define BSD_TPUTS 1 --EOF -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi - --### use option --enable-widec to turn on use of wide-character support --NCURSES_CH_T=chtype --NCURSES_LIBUTF8=0 -+fi - --NEED_WCHAR_H=0 --NCURSES_MBSTATE_T=0 --NCURSES_WCHAR_T=0 --NCURSES_WINT_T=0 -+cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE - --# Check to define _XOPEN_SOURCE "automatically" -+cf_save_CFLAGS="$CFLAGS" -+cf_save_CPPFLAGS="$CPPFLAGS" - --cf_XOPEN_SOURCE=500 --cf_POSIX_C_SOURCE=199506L --cf_xopen_source= -+cf_trim_CFLAGS=`echo "$cf_save_CFLAGS" | \ -+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` - --case $host_os in #(vi --aix[456]*) #(vi -- cf_xopen_source="-D_ALL_SOURCE" -- ;; --cygwin) #(vi -- cf_XOPEN_SOURCE=600 -- ;; --darwin[0-8].*) #(vi -- cf_xopen_source="-D_APPLE_C_SOURCE" -- ;; --darwin*) #(vi -- cf_xopen_source="-D_DARWIN_C_SOURCE" -- ;; --freebsd*|dragonfly*) #(vi -- # 5.x headers associate -- # _XOPEN_SOURCE=600 with _POSIX_C_SOURCE=200112L -- # _XOPEN_SOURCE=500 with _POSIX_C_SOURCE=199506L -- cf_POSIX_C_SOURCE=200112L -- cf_XOPEN_SOURCE=600 -- cf_xopen_source="-D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- ;; --hpux11*) #(vi -- cf_xopen_source="-D_HPUX_SOURCE -D_XOPEN_SOURCE=500" -- ;; --hpux*) #(vi -- cf_xopen_source="-D_HPUX_SOURCE" -- ;; --irix[56].*) #(vi -- cf_xopen_source="-D_SGI_SOURCE" -- ;; --linux*|gnu*|mint*|k*bsd*-gnu) #(vi -+cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \ -+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` - --echo "$as_me:6996: checking if we must define _GNU_SOURCE" >&5 --echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6 --if test "${cf_cv_gnu_source+set}" = set; then -+echo "$as_me:7814: checking if we should define _POSIX_C_SOURCE" >&5 -+echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_posix_c_source+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --cat >conftest.$ac_ext <<_ACEOF --#line 7003 "configure" -+echo "${as_me:-configure}:7820: testing if the symbol is already defined go no further ..." 1>&5 -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7823 "configure" - #include "confdefs.h" - #include - int - main () - { - --#ifndef _XOPEN_SOURCE -+#ifndef _POSIX_C_SOURCE - make an error - #endif - ; -@@ -7015,32 +7835,44 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7018: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:7838: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7021: \$? = $ac_status" >&5 -+ echo "$as_me:7841: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7024: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:7844: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7027: \$? = $ac_status" >&5 -+ echo "$as_me:7847: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_gnu_source=no -+ cf_cv_posix_c_source=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_save="$CPPFLAGS" -- CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -- cat >conftest.$ac_ext <<_ACEOF --#line 7036 "configure" -+cf_want_posix_source=no -+ case .$cf_POSIX_C_SOURCE in #(vi -+ .[12]??*) #(vi -+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" -+ ;; -+ .2) #(vi -+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" -+ cf_want_posix_source=yes -+ ;; -+ .*) -+ cf_want_posix_source=yes -+ ;; -+ esac -+ if test "$cf_want_posix_source" = yes ; then -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7868 "configure" - #include "confdefs.h" - #include - int - main () - { - --#ifdef _XOPEN_SOURCE -+#ifdef _POSIX_SOURCE - make an error - #endif - ; -@@ -7048,108 +7880,42 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7051: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:7883: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7054: \$? = $ac_status" >&5 -+ echo "$as_me:7886: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7057: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:7889: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7060: \$? = $ac_status" >&5 -+ echo "$as_me:7892: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_gnu_source=no -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_gnu_source=yes --fi --rm -f conftest.$ac_objext conftest.$ac_ext -- CPPFLAGS="$cf_save" -- -+cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE" - fi - rm -f conftest.$ac_objext conftest.$ac_ext -+ fi - --fi --echo "$as_me:7075: result: $cf_cv_gnu_source" >&5 --echo "${ECHO_T}$cf_cv_gnu_source" >&6 --test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+echo "${as_me:-configure}:7903: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5 - -- ;; --mirbsd*) #(vi -- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks -- ;; --netbsd*) #(vi -- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -- ;; --openbsd*) #(vi -- # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw -- ;; --osf[45]*) #(vi -- cf_xopen_source="-D_OSF_SOURCE" -- ;; --nto-qnx*) #(vi -- cf_xopen_source="-D_QNX_SOURCE" -- ;; --sco*) #(vi -- # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer -- ;; --solaris2.1[0-9]) #(vi -- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- ;; --solaris2.[1-9]) #(vi -- cf_xopen_source="-D__EXTENSIONS__" -- ;; --*) -- echo "$as_me:7105: checking if we should define _XOPEN_SOURCE" >&5 --echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6 --if test "${cf_cv_xopen_source+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+ CFLAGS="$cf_trim_CFLAGS" -+ CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source" - -- cat >conftest.$ac_ext <<_ACEOF --#line 7112 "configure" --#include "confdefs.h" --#include --int --main () --{ -+echo "${as_me:-configure}:7908: testing if the second compile does not leave our definition intact error ..." 1>&5 - --#ifndef _XOPEN_SOURCE --make an error --#endif -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:7127: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:7130: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7133: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:7136: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_cv_xopen_source=no --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --cf_save="$CPPFLAGS" -- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" - cat >conftest.$ac_ext <<_ACEOF --#line 7145 "configure" -+#line 7911 "configure" - #include "confdefs.h" - #include - int - main () - { - --#ifdef _XOPEN_SOURCE -+#ifndef _POSIX_C_SOURCE - make an error - #endif - ; -@@ -7157,50 +7923,129 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7160: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:7926: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7163: \$? = $ac_status" >&5 -+ echo "$as_me:7929: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7166: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:7932: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7169: \$? = $ac_status" >&5 -+ echo "$as_me:7935: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_xopen_source=no -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_xopen_source=$cf_XOPEN_SOURCE -+cf_cv_posix_c_source=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext -- CPPFLAGS="$cf_save" -+ CFLAGS="$cf_save_CFLAGS" -+ CPPFLAGS="$cf_save_CPPFLAGS" -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ -+fi -+echo "$as_me:7951: result: $cf_cv_posix_c_source" >&5 -+echo "${ECHO_T}$cf_cv_posix_c_source" >&6 -+ -+if test "$cf_cv_posix_c_source" != no ; then -+ CFLAGS="$cf_trim_CFLAGS" -+ CPPFLAGS="$cf_trim_CPPFLAGS" -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_cv_posix_c_source -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then - -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi --rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:7184: result: $cf_cv_xopen_source" >&5 --echo "${ECHO_T}$cf_cv_xopen_source" >&6 -- if test "$cf_cv_xopen_source" != no ; then -- --CFLAGS=`echo "$CFLAGS" | \ -- sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` - --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` -+ ;; -+esac - -- cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" -+if test -n "$cf_xopen_source" ; then - - cf_fix_cppflags=no - cf_new_cflags= - cf_new_cppflags= - cf_new_extra_cppflags= - --for cf_add_cflags in $cf_temp_xopen_source -+for cf_add_cflags in $cf_xopen_source - do - case $cf_fix_cppflags in - no) -@@ -7273,38 +8118,20 @@ - EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi - -- fi -- --cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -- --cf_save_CFLAGS="$CFLAGS" --cf_save_CPPFLAGS="$CPPFLAGS" -- --cf_trim_CFLAGS=`echo "$cf_save_CFLAGS" | \ -- sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` -- --cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \ -- sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` -- --echo "$as_me:7291: checking if we should define _POSIX_C_SOURCE" >&5 --echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6 --if test "${cf_cv_posix_c_source+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- --echo "${as_me:-configure}:7297: testing if the symbol is already defined go no further ..." 1>&5 -+fi - -+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then -+ echo "$as_me:8124: checking if _XOPEN_SOURCE really is set" >&5 -+echo $ECHO_N "checking if _XOPEN_SOURCE really is set... $ECHO_C" >&6 - cat >conftest.$ac_ext <<_ACEOF --#line 7300 "configure" -+#line 8127 "configure" - #include "confdefs.h" --#include -+#include - int - main () - { - --#ifndef _POSIX_C_SOURCE -+#ifndef _XOPEN_SOURCE - make an error - #endif - ; -@@ -7312,44 +8139,37 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7315: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8142: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7318: \$? = $ac_status" >&5 -+ echo "$as_me:8145: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7321: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8148: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7324: \$? = $ac_status" >&5 -+ echo "$as_me:8151: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_posix_c_source=no -+ cf_XOPEN_SOURCE_set=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_want_posix_source=no -- case .$cf_POSIX_C_SOURCE in #(vi -- .[12]??*) #(vi -- cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" -- ;; -- .2) #(vi -- cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" -- cf_want_posix_source=yes -- ;; -- .*) -- cf_want_posix_source=yes -- ;; -- esac -- if test "$cf_want_posix_source" = yes ; then -+cf_XOPEN_SOURCE_set=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ echo "$as_me:8160: result: $cf_XOPEN_SOURCE_set" >&5 -+echo "${ECHO_T}$cf_XOPEN_SOURCE_set" >&6 -+ if test $cf_XOPEN_SOURCE_set = yes -+ then - cat >conftest.$ac_ext <<_ACEOF --#line 7345 "configure" -+#line 8165 "configure" - #include "confdefs.h" --#include -+#include - int - main () - { - --#ifdef _POSIX_SOURCE -+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE - make an error - #endif - ; -@@ -7357,42 +8177,87 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7360: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8180: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7363: \$? = $ac_status" >&5 -+ echo "$as_me:8183: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7366: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8186: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7369: \$? = $ac_status" >&5 -+ echo "$as_me:8189: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ cf_XOPEN_SOURCE_set_ok=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE" -+cf_XOPEN_SOURCE_set_ok=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext -- fi -+ if test $cf_XOPEN_SOURCE_set_ok = no -+ then -+ { echo "$as_me:8200: WARNING: _XOPEN_SOURCE is lower than requested" >&5 -+echo "$as_me: WARNING: _XOPEN_SOURCE is lower than requested" >&2;} -+ fi -+ else -+ -+echo "$as_me:8205: checking if we should define _XOPEN_SOURCE" >&5 -+echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_xopen_source+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - --echo "${as_me:-configure}:7380: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5 -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8212 "configure" -+#include "confdefs.h" - -- CFLAGS="$cf_trim_CFLAGS" -- CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source" -+#include -+#include -+#include - --echo "${as_me:-configure}:7385: testing if the second compile does not leave our definition intact error ..." 1>&5 -+int -+main () -+{ - -+#ifndef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:8231: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:8234: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:8237: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:8240: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_xopen_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" - cat >conftest.$ac_ext <<_ACEOF --#line 7388 "configure" -+#line 8249 "configure" - #include "confdefs.h" -+ -+#include -+#include - #include -+ - int - main () - { - --#ifndef _POSIX_C_SOURCE -+#ifdef _XOPEN_SOURCE - make an error - #endif - ; -@@ -7400,129 +8265,51 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7403: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8268: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7406: \$? = $ac_status" >&5 -+ echo "$as_me:8271: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7409: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8274: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7412: \$? = $ac_status" >&5 -+ echo "$as_me:8277: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ cf_cv_xopen_source=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_posix_c_source=no -+cf_cv_xopen_source=$cf_XOPEN_SOURCE - fi - rm -f conftest.$ac_objext conftest.$ac_ext -- CFLAGS="$cf_save_CFLAGS" -- CPPFLAGS="$cf_save_CPPFLAGS" -+ CPPFLAGS="$cf_save" - - fi - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:7428: result: $cf_cv_posix_c_source" >&5 --echo "${ECHO_T}$cf_cv_posix_c_source" >&6 -- --if test "$cf_cv_posix_c_source" != no ; then -- CFLAGS="$cf_trim_CFLAGS" -- CPPFLAGS="$cf_trim_CPPFLAGS" -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in $cf_cv_posix_c_source --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+echo "$as_me:8292: result: $cf_cv_xopen_source" >&5 -+echo "${ECHO_T}$cf_cv_xopen_source" >&6 - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -+if test "$cf_cv_xopen_source" != no ; then - -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+CFLAGS=`echo "$CFLAGS" | \ -+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` - - CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -- -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -- --if test -n "$cf_new_cflags" ; then -- -- CFLAGS="$CFLAGS $cf_new_cflags" --fi -- --if test -n "$cf_new_cppflags" ; then -- -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" --fi -- --if test -n "$cf_new_extra_cppflags" ; then -- -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" --fi -- --fi -- -- ;; --esac -+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` - --if test -n "$cf_xopen_source" ; then -+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" - - cf_fix_cppflags=no - cf_new_cflags= - cf_new_cppflags= - cf_new_extra_cppflags= - --for cf_add_cflags in $cf_xopen_source -+for cf_add_cflags in $cf_temp_xopen_source - do - case $cf_fix_cppflags in - no) -@@ -7597,16 +8384,19 @@ - - fi - -+ fi -+fi -+ - # Work around breakage on OS X - --echo "$as_me:7602: checking if SIGWINCH is defined" >&5 -+echo "$as_me:8392: checking if SIGWINCH is defined" >&5 - echo $ECHO_N "checking if SIGWINCH is defined... $ECHO_C" >&6 - if test "${cf_cv_define_sigwinch+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 7609 "configure" -+#line 8399 "configure" - #include "confdefs.h" - - #include -@@ -7621,23 +8411,23 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7624: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8414: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7627: \$? = $ac_status" >&5 -+ echo "$as_me:8417: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7630: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8420: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7633: \$? = $ac_status" >&5 -+ echo "$as_me:8423: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_define_sigwinch=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - cat >conftest.$ac_ext <<_ACEOF --#line 7640 "configure" -+#line 8430 "configure" - #include "confdefs.h" - - #undef _XOPEN_SOURCE -@@ -7655,16 +8445,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7658: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8448: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7661: \$? = $ac_status" >&5 -+ echo "$as_me:8451: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7664: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8454: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7667: \$? = $ac_status" >&5 -+ echo "$as_me:8457: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_define_sigwinch=maybe - else -@@ -7678,11 +8468,11 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:7681: result: $cf_cv_define_sigwinch" >&5 -+echo "$as_me:8471: result: $cf_cv_define_sigwinch" >&5 - echo "${ECHO_T}$cf_cv_define_sigwinch" >&6 - - if test "$cf_cv_define_sigwinch" = maybe ; then --echo "$as_me:7685: checking for actual SIGWINCH definition" >&5 -+echo "$as_me:8475: checking for actual SIGWINCH definition" >&5 - echo $ECHO_N "checking for actual SIGWINCH definition... $ECHO_C" >&6 - if test "${cf_cv_fixup_sigwinch+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -7693,7 +8483,7 @@ - while test $cf_sigwinch != 1 - do - cat >conftest.$ac_ext <<_ACEOF --#line 7696 "configure" -+#line 8486 "configure" - #include "confdefs.h" - - #undef _XOPEN_SOURCE -@@ -7715,16 +8505,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7718: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8508: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7721: \$? = $ac_status" >&5 -+ echo "$as_me:8511: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7724: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8514: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7727: \$? = $ac_status" >&5 -+ echo "$as_me:8517: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_fixup_sigwinch=$cf_sigwinch - break -@@ -7738,7 +8528,7 @@ - done - - fi --echo "$as_me:7741: result: $cf_cv_fixup_sigwinch" >&5 -+echo "$as_me:8531: result: $cf_cv_fixup_sigwinch" >&5 - echo "${ECHO_T}$cf_cv_fixup_sigwinch" >&6 - - if test "$cf_cv_fixup_sigwinch" != unknown ; then -@@ -7748,13 +8538,13 @@ - - # Checks for CODESET support. - -- echo "$as_me:7751: checking for nl_langinfo and CODESET" >&5 -+ echo "$as_me:8541: checking for nl_langinfo and CODESET" >&5 - echo $ECHO_N "checking for nl_langinfo and CODESET... $ECHO_C" >&6 - if test "${am_cv_langinfo_codeset+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 7757 "configure" -+#line 8547 "configure" - #include "confdefs.h" - #include - int -@@ -7766,16 +8556,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7769: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:8559: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:7772: \$? = $ac_status" >&5 -+ echo "$as_me:8562: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7775: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8565: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7778: \$? = $ac_status" >&5 -+ echo "$as_me:8568: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - am_cv_langinfo_codeset=yes - else -@@ -7786,7 +8576,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - - fi --echo "$as_me:7789: result: $am_cv_langinfo_codeset" >&5 -+echo "$as_me:8579: result: $am_cv_langinfo_codeset" >&5 - echo "${ECHO_T}$am_cv_langinfo_codeset" >&6 - if test $am_cv_langinfo_codeset = yes; then - -@@ -7800,7 +8590,7 @@ - NCURSES_OK_WCHAR_T= - NCURSES_OK_WINT_T= - --echo "$as_me:7803: checking if you want wide-character code" >&5 -+echo "$as_me:8593: checking if you want wide-character code" >&5 - echo $ECHO_N "checking if you want wide-character code... $ECHO_C" >&6 - - # Check whether --enable-widec or --disable-widec was given. -@@ -7810,23 +8600,72 @@ - else - with_widec=no - fi; --echo "$as_me:7813: result: $with_widec" >&5 -+echo "$as_me:8603: result: $with_widec" >&5 - echo "${ECHO_T}$with_widec" >&6 --if test "$with_widec" = yes ; then -+if test "x$with_widec" = xyes ; then - LIB_SUFFIX="w${LIB_SUFFIX}" -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define USE_WIDEC_SUPPORT 1 - EOF - -- case "$CFLAGS $CPPFLAGS" in #(vi -- *-D_XOPEN_SOURCE=500) #(vi -- ;; -- *) -+cat >>confdefs.h <<\EOF -+#define NCURSES_WIDECHAR 1 -+EOF -+ -+echo "$as_me:8616: checking if wchar.h can be used as is" >&5 -+echo $ECHO_N "checking if wchar.h can be used as is... $ECHO_C" >&6 -+if test "${cf_cv_wchar_h_okay+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+cat >conftest.$ac_ext <<_ACEOF -+#line 8623 "configure" -+#include "confdefs.h" -+ -+#include -+#include -+ -+int -+main () -+{ -+ -+ wint_t foo = 0; -+ int bar = iswpunct(foo) -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:8640: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:8643: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:8646: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:8649: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_wchar_h_okay=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_wchar_h_okay=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:8659: result: $cf_cv_wchar_h_okay" >&5 -+echo "${ECHO_T}$cf_cv_wchar_h_okay" >&6 -+ -+if test $cf_cv_wchar_h_okay = no -+then - --echo "$as_me:7826: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5 -+echo "$as_me:8665: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5 - echo $ECHO_N "checking if we must define _XOPEN_SOURCE_EXTENDED... $ECHO_C" >&6 - cat >conftest.$ac_ext <<_ACEOF --#line 7829 "configure" -+#line 8668 "configure" - #include "confdefs.h" - #include - -@@ -7842,16 +8681,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7845: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8684: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7848: \$? = $ac_status" >&5 -+ echo "$as_me:8687: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7851: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8690: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7854: \$? = $ac_status" >&5 -+ echo "$as_me:8693: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_result=no - else -@@ -7860,16 +8699,16 @@ - cf_result=yes - fi - rm -f conftest.$ac_objext conftest.$ac_ext --echo "$as_me:7863: result: $cf_result" >&5 -+echo "$as_me:8702: result: $cf_result" >&5 - echo "${ECHO_T}$cf_result" >&6 - - if test "$cf_result" = yes ; then - CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED" - elif test "x" != "x" ; then -- echo "$as_me:7869: checking checking for compatible value versus " >&5 -+ echo "$as_me:8708: checking checking for compatible value versus " >&5 - echo $ECHO_N "checking checking for compatible value versus ... $ECHO_C" >&6 - cat >conftest.$ac_ext <<_ACEOF --#line 7872 "configure" -+#line 8711 "configure" - #include "confdefs.h" - #include - -@@ -7885,16 +8724,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7888: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8727: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7891: \$? = $ac_status" >&5 -+ echo "$as_me:8730: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7894: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8733: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7897: \$? = $ac_status" >&5 -+ echo "$as_me:8736: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_result=yes - else -@@ -7903,7 +8742,7 @@ - cf_result=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext -- echo "$as_me:7906: result: $cf_result" >&5 -+ echo "$as_me:8745: result: $cf_result" >&5 - echo "${ECHO_T}$cf_result" >&6 - if test "$cf_result" = no ; then - # perhaps we can override it - try... -@@ -7911,8 +8750,7 @@ - fi - fi - -- ;; -- esac -+fi - - # with_overwrite=no - NCURSES_CH_T=cchar_t -@@ -7920,13 +8758,13 @@ - for ac_func in putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc wcsrtombs mbsrtowcs wcstombs mbstowcs - do - as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` --echo "$as_me:7923: checking for $ac_func" >&5 -+echo "$as_me:8761: checking for $ac_func" >&5 - echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 - if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 7929 "configure" -+#line 8767 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. */ -@@ -7949,7 +8787,7 @@ - #if defined (__stub_$ac_func) || defined (__stub___$ac_func) - choke me - #else --f = $ac_func; -+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -7957,16 +8795,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7960: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:8798: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:7963: \$? = $ac_status" >&5 -+ echo "$as_me:8801: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7966: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8804: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7969: \$? = $ac_status" >&5 -+ echo "$as_me:8807: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_var=yes" - else -@@ -7976,7 +8814,7 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:7979: result: `eval echo '${'$as_ac_var'}'`" >&5 -+echo "$as_me:8817: result: `eval echo '${'$as_ac_var'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 - if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <&5 -+echo "$as_me:8829: checking for multibyte character support" >&5 - echo $ECHO_N "checking for multibyte character support... $ECHO_C" >&6 - if test "${cf_cv_utf8_lib+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -7996,7 +8834,7 @@ - - cf_save_LIBS="$LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 7999 "configure" -+#line 8837 "configure" - #include "confdefs.h" - - #include -@@ -8009,16 +8847,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:8012: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:8850: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8015: \$? = $ac_status" >&5 -+ echo "$as_me:8853: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:8018: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8856: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8021: \$? = $ac_status" >&5 -+ echo "$as_me:8859: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_utf8_lib=yes - else -@@ -8030,12 +8868,12 @@ - cf_cv_header_path_utf8= - cf_cv_library_path_utf8= - --echo "${as_me:-configure}:8033: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5 -+echo "${as_me:-configure}:8871: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5 - - cf_save_LIBS="$LIBS" - - cat >conftest.$ac_ext <<_ACEOF --#line 8038 "configure" -+#line 8876 "configure" - #include "confdefs.h" - - #include -@@ -8048,16 +8886,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:8051: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:8889: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8054: \$? = $ac_status" >&5 -+ echo "$as_me:8892: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:8057: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8895: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8060: \$? = $ac_status" >&5 -+ echo "$as_me:8898: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_find_linkage_utf8=yes -@@ -8071,7 +8909,7 @@ - LIBS="-lutf8 $cf_save_LIBS" - - cat >conftest.$ac_ext <<_ACEOF --#line 8074 "configure" -+#line 8912 "configure" - #include "confdefs.h" - - #include -@@ -8084,16 +8922,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:8087: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:8925: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8090: \$? = $ac_status" >&5 -+ echo "$as_me:8928: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:8093: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8931: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8096: \$? = $ac_status" >&5 -+ echo "$as_me:8934: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_find_linkage_utf8=yes -@@ -8110,9 +8948,9 @@ - - test -n "$verbose" && echo " find linkage for utf8 library" 1>&6 - --echo "${as_me:-configure}:8113: testing find linkage for utf8 library ..." 1>&5 -+echo "${as_me:-configure}:8951: testing find linkage for utf8 library ..." 1>&5 - --echo "${as_me:-configure}:8115: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5 -+echo "${as_me:-configure}:8953: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5 - - cf_save_CPPFLAGS="$CPPFLAGS" - cf_test_CPPFLAGS="$CPPFLAGS" -@@ -8128,7 +8966,7 @@ - -I*) - cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'` - --test "$cf_header_path" != "NONE" && \ -+test "x$cf_header_path" != "xNONE" && \ - test -d "$cf_header_path" && \ - { - test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path" -@@ -8149,9 +8987,9 @@ - - cf_search= - --test "/usr" != "$prefix" && \ -+test "x/usr" != "x$prefix" && \ - test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /usr" - test -d /usr/include && cf_search="$cf_search /usr/include" - test -d /usr/include/utf8 && cf_search="$cf_search /usr/include/utf8" -@@ -8160,7 +8998,7 @@ - test -d /usr/utf8/include/utf8 && cf_search="$cf_search /usr/utf8/include/utf8" - } - --test "$prefix" != "NONE" && \ -+test "x$prefix" != "xNONE" && \ - test -d "$prefix" && \ - { - test -n "$verbose" && echo " ... testing for include-directories under $prefix" -@@ -8171,9 +9009,9 @@ - test -d $prefix/utf8/include/utf8 && cf_search="$cf_search $prefix/utf8/include/utf8" - } - --test "/usr/local" != "$prefix" && \ -+test "x/usr/local" != "x$prefix" && \ - test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /usr/local" - test -d /usr/local/include && cf_search="$cf_search /usr/local/include" - test -d /usr/local/include/utf8 && cf_search="$cf_search /usr/local/include/utf8" -@@ -8182,9 +9020,9 @@ - test -d /usr/local/utf8/include/utf8 && cf_search="$cf_search /usr/local/utf8/include/utf8" - } - --test "/opt" != "$prefix" && \ -+test "x/opt" != "x$prefix" && \ - test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /opt" - test -d /opt/include && cf_search="$cf_search /opt/include" - test -d /opt/include/utf8 && cf_search="$cf_search /opt/include/utf8" -@@ -8193,9 +9031,9 @@ - test -d /opt/utf8/include/utf8 && cf_search="$cf_search /opt/utf8/include/utf8" - } - --test "$HOME" != "$prefix" && \ -+test "x$HOME" != "x$prefix" && \ - test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under $HOME" - test -d $HOME/include && cf_search="$cf_search $HOME/include" - test -d $HOME/include/utf8 && cf_search="$cf_search $HOME/include/utf8" -@@ -8225,11 +9063,11 @@ - if test -d $cf_cv_header_path_utf8 ; then - test -n "$verbose" && echo " ... testing $cf_cv_header_path_utf8" 1>&6 - --echo "${as_me:-configure}:8228: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5 -+echo "${as_me:-configure}:9066: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5 - - CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_utf8" - cat >conftest.$ac_ext <<_ACEOF --#line 8232 "configure" -+#line 9070 "configure" - #include "confdefs.h" - - #include -@@ -8242,21 +9080,21 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8245: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9083: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8248: \$? = $ac_status" >&5 -+ echo "$as_me:9086: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8251: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9089: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8254: \$? = $ac_status" >&5 -+ echo "$as_me:9092: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - test -n "$verbose" && echo " ... found utf8 headers in $cf_cv_header_path_utf8" 1>&6 - --echo "${as_me:-configure}:8259: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5 -+echo "${as_me:-configure}:9097: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5 - - cf_cv_find_linkage_utf8=maybe - cf_test_CPPFLAGS="$CPPFLAGS" -@@ -8274,7 +9112,7 @@ - - if test "$cf_cv_find_linkage_utf8" = maybe ; then - --echo "${as_me:-configure}:8277: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5 -+echo "${as_me:-configure}:9115: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5 - - cf_save_LIBS="$LIBS" - cf_save_LDFLAGS="$LDFLAGS" -@@ -8290,7 +9128,7 @@ - -L*) - cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'` - --test "$cf_library_path" != "NONE" && \ -+test "x$cf_library_path" != "xNONE" && \ - test -d "$cf_library_path" && \ - { - test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path" -@@ -8309,9 +9147,9 @@ - - cf_search= - --test "/usr" != "$prefix" && \ -+test "x/usr" != "x$prefix" && \ - test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /usr" - test -d /usr/lib && cf_search="$cf_search /usr/lib" - test -d /usr/lib/utf8 && cf_search="$cf_search /usr/lib/utf8" -@@ -8320,7 +9158,7 @@ - test -d /usr/utf8/lib/utf8 && cf_search="$cf_search /usr/utf8/lib/utf8" - } - --test "$prefix" != "NONE" && \ -+test "x$prefix" != "xNONE" && \ - test -d "$prefix" && \ - { - test -n "$verbose" && echo " ... testing for lib-directories under $prefix" -@@ -8331,9 +9169,9 @@ - test -d $prefix/utf8/lib/utf8 && cf_search="$cf_search $prefix/utf8/lib/utf8" - } - --test "/usr/local" != "$prefix" && \ -+test "x/usr/local" != "x$prefix" && \ - test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /usr/local" - test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib" - test -d /usr/local/lib/utf8 && cf_search="$cf_search /usr/local/lib/utf8" -@@ -8342,9 +9180,9 @@ - test -d /usr/local/utf8/lib/utf8 && cf_search="$cf_search /usr/local/utf8/lib/utf8" - } - --test "/opt" != "$prefix" && \ -+test "x/opt" != "x$prefix" && \ - test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /opt" - test -d /opt/lib && cf_search="$cf_search /opt/lib" - test -d /opt/lib/utf8 && cf_search="$cf_search /opt/lib/utf8" -@@ -8353,9 +9191,9 @@ - test -d /opt/utf8/lib/utf8 && cf_search="$cf_search /opt/utf8/lib/utf8" - } - --test "$HOME" != "$prefix" && \ -+test "x$HOME" != "x$prefix" && \ - test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under $HOME" - test -d $HOME/lib && cf_search="$cf_search $HOME/lib" - test -d $HOME/lib/utf8 && cf_search="$cf_search $HOME/lib/utf8" -@@ -8371,13 +9209,13 @@ - if test -d $cf_cv_library_path_utf8 ; then - test -n "$verbose" && echo " ... testing $cf_cv_library_path_utf8" 1>&6 - --echo "${as_me:-configure}:8374: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5 -+echo "${as_me:-configure}:9212: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5 - - CPPFLAGS="$cf_test_CPPFLAGS" - LIBS="-lutf8 $cf_save_LIBS" - LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_utf8" - cat >conftest.$ac_ext <<_ACEOF --#line 8380 "configure" -+#line 9218 "configure" - #include "confdefs.h" - - #include -@@ -8390,21 +9228,21 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:8393: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9231: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8396: \$? = $ac_status" >&5 -+ echo "$as_me:9234: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:8399: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9237: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8402: \$? = $ac_status" >&5 -+ echo "$as_me:9240: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - test -n "$verbose" && echo " ... found utf8 library in $cf_cv_library_path_utf8" 1>&6 - --echo "${as_me:-configure}:8407: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5 -+echo "${as_me:-configure}:9245: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5 - - cf_cv_find_linkage_utf8=yes - cf_cv_library_file_utf8="-lutf8" -@@ -8446,13 +9284,14 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:8449: result: $cf_cv_utf8_lib" >&5 -+echo "$as_me:9287: result: $cf_cv_utf8_lib" >&5 - echo "${ECHO_T}$cf_cv_utf8_lib" >&6 - - # HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between - # ncurses/ncursesw: - if test "$cf_cv_utf8_lib" = "add-on" ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_LIBUTF8_H 1 - EOF - -@@ -8480,7 +9319,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 8483 "configure" -+#line 9322 "configure" - #include "confdefs.h" - #include - int -@@ -8492,16 +9331,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8495: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9334: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8498: \$? = $ac_status" >&5 -+ echo "$as_me:9337: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8501: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9340: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8504: \$? = $ac_status" >&5 -+ echo "$as_me:9343: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -8518,7 +9357,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:8521: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:9360: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -8552,7 +9391,7 @@ - if test "$cf_have_libdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 - --echo "${as_me:-configure}:8555: testing adding $cf_add_libdir to library-path ..." 1>&5 -+echo "${as_me:-configure}:9394: testing adding $cf_add_libdir to library-path ..." 1>&5 - - LDFLAGS="-L$cf_add_libdir $LDFLAGS" - fi -@@ -8569,14 +9408,14 @@ - fi - - # This is needed on Tru64 5.0 to declare mbstate_t --echo "$as_me:8572: checking if we must include wchar.h to declare mbstate_t" >&5 -+echo "$as_me:9411: checking if we must include wchar.h to declare mbstate_t" >&5 - echo $ECHO_N "checking if we must include wchar.h to declare mbstate_t... $ECHO_C" >&6 - if test "${cf_cv_mbstate_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 8579 "configure" -+#line 9418 "configure" - #include "confdefs.h" - - #include -@@ -8594,23 +9433,23 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8597: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9436: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8600: \$? = $ac_status" >&5 -+ echo "$as_me:9439: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8603: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9442: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8606: \$? = $ac_status" >&5 -+ echo "$as_me:9445: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_mbstate_t=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - cat >conftest.$ac_ext <<_ACEOF --#line 8613 "configure" -+#line 9452 "configure" - #include "confdefs.h" - - #include -@@ -8629,16 +9468,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8632: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9471: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8635: \$? = $ac_status" >&5 -+ echo "$as_me:9474: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8638: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9477: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8641: \$? = $ac_status" >&5 -+ echo "$as_me:9480: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_mbstate_t=yes - else -@@ -8650,11 +9489,12 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:8653: result: $cf_cv_mbstate_t" >&5 -+echo "$as_me:9492: result: $cf_cv_mbstate_t" >&5 - echo "${ECHO_T}$cf_cv_mbstate_t" >&6 - - if test "$cf_cv_mbstate_t" = yes ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define NEED_WCHAR_H 1 - EOF - -@@ -8667,14 +9507,14 @@ - fi - - # This is needed on Tru64 5.0 to declare wchar_t --echo "$as_me:8670: checking if we must include wchar.h to declare wchar_t" >&5 -+echo "$as_me:9510: checking if we must include wchar.h to declare wchar_t" >&5 - echo $ECHO_N "checking if we must include wchar.h to declare wchar_t... $ECHO_C" >&6 - if test "${cf_cv_wchar_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 8677 "configure" -+#line 9517 "configure" - #include "confdefs.h" - - #include -@@ -8692,23 +9532,23 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8695: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9535: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8698: \$? = $ac_status" >&5 -+ echo "$as_me:9538: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8701: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9541: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8704: \$? = $ac_status" >&5 -+ echo "$as_me:9544: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_wchar_t=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - cat >conftest.$ac_ext <<_ACEOF --#line 8711 "configure" -+#line 9551 "configure" - #include "confdefs.h" - - #include -@@ -8727,16 +9567,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8730: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9570: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8733: \$? = $ac_status" >&5 -+ echo "$as_me:9573: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8736: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9576: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8739: \$? = $ac_status" >&5 -+ echo "$as_me:9579: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_wchar_t=yes - else -@@ -8748,11 +9588,12 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:8751: result: $cf_cv_wchar_t" >&5 -+echo "$as_me:9591: result: $cf_cv_wchar_t" >&5 - echo "${ECHO_T}$cf_cv_wchar_t" >&6 - - if test "$cf_cv_wchar_t" = yes ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define NEED_WCHAR_H 1 - EOF - -@@ -8770,14 +9611,14 @@ - fi - - # This is needed on Tru64 5.0 to declare wint_t --echo "$as_me:8773: checking if we must include wchar.h to declare wint_t" >&5 -+echo "$as_me:9614: checking if we must include wchar.h to declare wint_t" >&5 - echo $ECHO_N "checking if we must include wchar.h to declare wint_t... $ECHO_C" >&6 - if test "${cf_cv_wint_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 8780 "configure" -+#line 9621 "configure" - #include "confdefs.h" - - #include -@@ -8795,23 +9636,23 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8798: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9639: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8801: \$? = $ac_status" >&5 -+ echo "$as_me:9642: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8804: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9645: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8807: \$? = $ac_status" >&5 -+ echo "$as_me:9648: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_wint_t=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - cat >conftest.$ac_ext <<_ACEOF --#line 8814 "configure" -+#line 9655 "configure" - #include "confdefs.h" - - #include -@@ -8830,16 +9671,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8833: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9674: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8836: \$? = $ac_status" >&5 -+ echo "$as_me:9677: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8839: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9680: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8842: \$? = $ac_status" >&5 -+ echo "$as_me:9683: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_wint_t=yes - else -@@ -8851,11 +9692,12 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:8854: result: $cf_cv_wint_t" >&5 -+echo "$as_me:9695: result: $cf_cv_wint_t" >&5 - echo "${ECHO_T}$cf_cv_wint_t" >&6 - - if test "$cf_cv_wint_t" = yes ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define NEED_WCHAR_H 1 - EOF - -@@ -8873,7 +9715,8 @@ - fi - - if test "$NCURSES_MBSTATE_T" != 0; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define NEED_MBSTATE_T_DEF 1 - EOF - -@@ -8890,7 +9733,7 @@ - ;; - esac - --echo "$as_me:8893: checking whether to enable _LP64 definition in curses.h" >&5 -+echo "$as_me:9736: checking whether to enable _LP64 definition in curses.h" >&5 - echo $ECHO_N "checking whether to enable _LP64 definition in curses.h... $ECHO_C" >&6 - - # Check whether --enable-lp64 or --disable-lp64 was given. -@@ -8900,10 +9743,10 @@ - else - with_lp64=$default_with_lp64 - fi; --echo "$as_me:8903: result: $with_lp64" >&5 -+echo "$as_me:9746: result: $with_lp64" >&5 - echo "${ECHO_T}$with_lp64" >&6 - --if test "$with_lp64" = yes ; then -+if test "x$with_lp64" = xyes ; then - cf_cv_enable_lp64=1 - else - cf_cv_enable_lp64=0 -@@ -8916,7 +9759,7 @@ - fi; - if test "$enable_largefile" != no; then - -- echo "$as_me:8919: checking for special C compiler options needed for large files" >&5 -+ echo "$as_me:9762: checking for special C compiler options needed for large files" >&5 - echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6 - if test "${ac_cv_sys_largefile_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -8928,7 +9771,7 @@ - # IRIX 6.2 and later do not support large files by default, - # so use the C compiler's -n32 option if that helps. - cat >conftest.$ac_ext <<_ACEOF --#line 8931 "configure" -+#line 9774 "configure" - #include "confdefs.h" - #include - /* Check that off_t can represent 2**63 - 1 correctly. -@@ -8948,16 +9791,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8951: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9794: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8954: \$? = $ac_status" >&5 -+ echo "$as_me:9797: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8957: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9800: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8960: \$? = $ac_status" >&5 -+ echo "$as_me:9803: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -8967,16 +9810,16 @@ - rm -f conftest.$ac_objext - CC="$CC -n32" - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8970: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9813: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8973: \$? = $ac_status" >&5 -+ echo "$as_me:9816: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8976: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9819: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8979: \$? = $ac_status" >&5 -+ echo "$as_me:9822: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sys_largefile_CC=' -n32'; break - else -@@ -8990,13 +9833,13 @@ - rm -f conftest.$ac_ext - fi - fi --echo "$as_me:8993: result: $ac_cv_sys_largefile_CC" >&5 -+echo "$as_me:9836: result: $ac_cv_sys_largefile_CC" >&5 - echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6 - if test "$ac_cv_sys_largefile_CC" != no; then - CC=$CC$ac_cv_sys_largefile_CC - fi - -- echo "$as_me:8999: checking for _FILE_OFFSET_BITS value needed for large files" >&5 -+ echo "$as_me:9842: checking for _FILE_OFFSET_BITS value needed for large files" >&5 - echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6 - if test "${ac_cv_sys_file_offset_bits+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -9004,7 +9847,7 @@ - while :; do - ac_cv_sys_file_offset_bits=no - cat >conftest.$ac_ext <<_ACEOF --#line 9007 "configure" -+#line 9850 "configure" - #include "confdefs.h" - #include - /* Check that off_t can represent 2**63 - 1 correctly. -@@ -9024,16 +9867,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:9027: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9870: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9030: \$? = $ac_status" >&5 -+ echo "$as_me:9873: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:9033: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9876: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9036: \$? = $ac_status" >&5 -+ echo "$as_me:9879: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -9042,7 +9885,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF --#line 9045 "configure" -+#line 9888 "configure" - #include "confdefs.h" - #define _FILE_OFFSET_BITS 64 - #include -@@ -9063,16 +9906,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:9066: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9909: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9069: \$? = $ac_status" >&5 -+ echo "$as_me:9912: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:9072: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9915: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9075: \$? = $ac_status" >&5 -+ echo "$as_me:9918: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sys_file_offset_bits=64; break - else -@@ -9083,7 +9926,7 @@ - break - done - fi --echo "$as_me:9086: result: $ac_cv_sys_file_offset_bits" >&5 -+echo "$as_me:9929: result: $ac_cv_sys_file_offset_bits" >&5 - echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6 - if test "$ac_cv_sys_file_offset_bits" != no; then - -@@ -9093,7 +9936,7 @@ - - fi - rm -rf conftest* -- echo "$as_me:9096: checking for _LARGE_FILES value needed for large files" >&5 -+ echo "$as_me:9939: checking for _LARGE_FILES value needed for large files" >&5 - echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6 - if test "${ac_cv_sys_large_files+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -9101,7 +9944,7 @@ - while :; do - ac_cv_sys_large_files=no - cat >conftest.$ac_ext <<_ACEOF --#line 9104 "configure" -+#line 9947 "configure" - #include "confdefs.h" - #include - /* Check that off_t can represent 2**63 - 1 correctly. -@@ -9121,16 +9964,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:9124: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:9967: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9127: \$? = $ac_status" >&5 -+ echo "$as_me:9970: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:9130: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9973: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9133: \$? = $ac_status" >&5 -+ echo "$as_me:9976: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -9139,7 +9982,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF --#line 9142 "configure" -+#line 9985 "configure" - #include "confdefs.h" - #define _LARGE_FILES 1 - #include -@@ -9160,16 +10003,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:9163: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:10006: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9166: \$? = $ac_status" >&5 -+ echo "$as_me:10009: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:9169: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10012: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9172: \$? = $ac_status" >&5 -+ echo "$as_me:10015: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sys_large_files=1; break - else -@@ -9180,7 +10023,7 @@ - break - done - fi --echo "$as_me:9183: result: $ac_cv_sys_large_files" >&5 -+echo "$as_me:10026: result: $ac_cv_sys_large_files" >&5 - echo "${ECHO_T}$ac_cv_sys_large_files" >&6 - if test "$ac_cv_sys_large_files" != no; then - -@@ -9193,7 +10036,7 @@ - fi - - if test "$enable_largefile" != no ; then -- echo "$as_me:9196: checking for _LARGEFILE_SOURCE value needed for large files" >&5 -+ echo "$as_me:10039: checking for _LARGEFILE_SOURCE value needed for large files" >&5 - echo $ECHO_N "checking for _LARGEFILE_SOURCE value needed for large files... $ECHO_C" >&6 - if test "${ac_cv_sys_largefile_source+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -9201,7 +10044,7 @@ - while :; do - ac_cv_sys_largefile_source=no - cat >conftest.$ac_ext <<_ACEOF --#line 9204 "configure" -+#line 10047 "configure" - #include "confdefs.h" - #include - int -@@ -9213,16 +10056,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:9216: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:10059: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9219: \$? = $ac_status" >&5 -+ echo "$as_me:10062: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:9222: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10065: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9225: \$? = $ac_status" >&5 -+ echo "$as_me:10068: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -9231,7 +10074,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF --#line 9234 "configure" -+#line 10077 "configure" - #include "confdefs.h" - #define _LARGEFILE_SOURCE 1 - #include -@@ -9244,16 +10087,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:9247: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:10090: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9250: \$? = $ac_status" >&5 -+ echo "$as_me:10093: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:9253: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10096: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9256: \$? = $ac_status" >&5 -+ echo "$as_me:10099: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sys_largefile_source=1; break - else -@@ -9264,7 +10107,7 @@ - break - done - fi --echo "$as_me:9267: result: $ac_cv_sys_largefile_source" >&5 -+echo "$as_me:10110: result: $ac_cv_sys_largefile_source" >&5 - echo "${ECHO_T}$ac_cv_sys_largefile_source" >&6 - if test "$ac_cv_sys_largefile_source" != no; then - -@@ -9278,13 +10121,13 @@ - # We used to try defining _XOPEN_SOURCE=500 too, to work around a bug - # in glibc 2.1.3, but that breaks too many other things. - # If you want fseeko and ftello with glibc, upgrade to a fixed glibc. --echo "$as_me:9281: checking for fseeko" >&5 -+echo "$as_me:10124: checking for fseeko" >&5 - echo $ECHO_N "checking for fseeko... $ECHO_C" >&6 - if test "${ac_cv_func_fseeko+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 9287 "configure" -+#line 10130 "configure" - #include "confdefs.h" - #include - int -@@ -9296,16 +10139,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9299: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:10142: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9302: \$? = $ac_status" >&5 -+ echo "$as_me:10145: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9305: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10148: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9308: \$? = $ac_status" >&5 -+ echo "$as_me:10151: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_fseeko=yes - else -@@ -9315,7 +10158,7 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:9318: result: $ac_cv_func_fseeko" >&5 -+echo "$as_me:10161: result: $ac_cv_func_fseeko" >&5 - echo "${ECHO_T}$ac_cv_func_fseeko" >&6 - if test $ac_cv_func_fseeko = yes; then - -@@ -9336,14 +10179,14 @@ - test "$ac_cv_sys_largefile_source" != no && CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE " - test "$ac_cv_sys_file_offset_bits" != no && CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits " - -- echo "$as_me:9339: checking whether to use struct dirent64" >&5 -+ echo "$as_me:10182: checking whether to use struct dirent64" >&5 - echo $ECHO_N "checking whether to use struct dirent64... $ECHO_C" >&6 - if test "${cf_cv_struct_dirent64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 9346 "configure" -+#line 10189 "configure" - #include "confdefs.h" - - #include -@@ -9364,16 +10207,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:9367: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:10210: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:9370: \$? = $ac_status" >&5 -+ echo "$as_me:10213: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:9373: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10216: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9376: \$? = $ac_status" >&5 -+ echo "$as_me:10219: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_struct_dirent64=yes - else -@@ -9384,16 +10227,17 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:9387: result: $cf_cv_struct_dirent64" >&5 -+echo "$as_me:10230: result: $cf_cv_struct_dirent64" >&5 - echo "${ECHO_T}$cf_cv_struct_dirent64" >&6 -- test "$cf_cv_struct_dirent64" = yes && cat >>confdefs.h <<\EOF -+ test "$cf_cv_struct_dirent64" = yes && -+cat >>confdefs.h <<\EOF - #define HAVE_STRUCT_DIRENT64 1 - EOF - - fi - - ### use option --disable-tparm-varargs to make tparm() conform to X/Open --echo "$as_me:9396: checking if you want tparm not to use X/Open fixed-parameter list" >&5 -+echo "$as_me:10240: checking if you want tparm not to use X/Open fixed-parameter list" >&5 - echo $ECHO_N "checking if you want tparm not to use X/Open fixed-parameter list... $ECHO_C" >&6 - - # Check whether --enable-tparm-varargs or --disable-tparm-varargs was given. -@@ -9403,14 +10247,14 @@ - else - with_tparm_varargs=yes - fi; --echo "$as_me:9406: result: $with_tparm_varargs" >&5 -+echo "$as_me:10250: result: $with_tparm_varargs" >&5 - echo "${ECHO_T}$with_tparm_varargs" >&6 - NCURSES_TPARM_VARARGS=0 --test "$with_tparm_varargs" = yes && NCURSES_TPARM_VARARGS=1 -+test "x$with_tparm_varargs" = xyes && NCURSES_TPARM_VARARGS=1 - - ### use option --disable-tic-depends to make libtic not explicitly depend on ncurses/ncursesw - if test "$with_ticlib" != no ; then --echo "$as_me:9413: checking if you want tic library to use explicit dependency on ncurses$LIB_SUFFIX library" >&5 -+echo "$as_me:10257: checking if you want tic library to use explicit dependency on ncurses$LIB_SUFFIX library" >&5 - echo $ECHO_N "checking if you want tic library to use explicit dependency on ncurses$LIB_SUFFIX library... $ECHO_C" >&6 - - # Check whether --enable-tic-depends or --disable-tic-depends was given. -@@ -9420,14 +10264,14 @@ - else - with_tic_depends=yes - fi; --echo "$as_me:9423: result: $with_tic_depends" >&5 -+echo "$as_me:10267: result: $with_tic_depends" >&5 - echo "${ECHO_T}$with_tic_depends" >&6 - else - with_tic_depends=no - fi - - ### use option --with-bool to override bool's type --echo "$as_me:9430: checking for type of bool" >&5 -+echo "$as_me:10274: checking for type of bool" >&5 - echo $ECHO_N "checking for type of bool... $ECHO_C" >&6 - - # Check whether --with-bool or --without-bool was given. -@@ -9437,10 +10281,10 @@ - else - NCURSES_BOOL=auto - fi; --echo "$as_me:9440: result: $NCURSES_BOOL" >&5 -+echo "$as_me:10284: result: $NCURSES_BOOL" >&5 - echo "${ECHO_T}$NCURSES_BOOL" >&6 - --echo "$as_me:9443: checking for alternate terminal capabilities file" >&5 -+echo "$as_me:10287: checking for alternate terminal capabilities file" >&5 - echo $ECHO_N "checking for alternate terminal capabilities file... $ECHO_C" >&6 - - # Check whether --with-caps or --without-caps was given. -@@ -9451,11 +10295,11 @@ - TERMINFO_CAPS=Caps - fi; - test -f "${srcdir}/include/${TERMINFO_CAPS}" || TERMINFO_CAPS=Caps --echo "$as_me:9454: result: $TERMINFO_CAPS" >&5 -+echo "$as_me:10298: result: $TERMINFO_CAPS" >&5 - echo "${ECHO_T}$TERMINFO_CAPS" >&6 - - ### use option --with-chtype to override chtype's type --echo "$as_me:9458: checking for type of chtype" >&5 -+echo "$as_me:10302: checking for type of chtype" >&5 - echo $ECHO_N "checking for type of chtype... $ECHO_C" >&6 - - # Check whether --with-chtype or --without-chtype was given. -@@ -9465,11 +10309,11 @@ - else - NCURSES_CHTYPE=auto - fi; --echo "$as_me:9468: result: $NCURSES_CHTYPE" >&5 -+echo "$as_me:10312: result: $NCURSES_CHTYPE" >&5 - echo "${ECHO_T}$NCURSES_CHTYPE" >&6 - - ### use option --with-ospeed to override ospeed's type --echo "$as_me:9472: checking for type of ospeed" >&5 -+echo "$as_me:10316: checking for type of ospeed" >&5 - echo $ECHO_N "checking for type of ospeed... $ECHO_C" >&6 - - # Check whether --with-ospeed or --without-ospeed was given. -@@ -9479,11 +10323,11 @@ - else - NCURSES_OSPEED=short - fi; --echo "$as_me:9482: result: $NCURSES_OSPEED" >&5 -+echo "$as_me:10326: result: $NCURSES_OSPEED" >&5 - echo "${ECHO_T}$NCURSES_OSPEED" >&6 - - ### use option --with-mmask-t to override mmask_t's type --echo "$as_me:9486: checking for type of mmask_t" >&5 -+echo "$as_me:10330: checking for type of mmask_t" >&5 - echo $ECHO_N "checking for type of mmask_t... $ECHO_C" >&6 - - # Check whether --with-mmask-t or --without-mmask-t was given. -@@ -9493,11 +10337,11 @@ - else - NCURSES_MMASK_T=auto - fi; --echo "$as_me:9496: result: $NCURSES_MMASK_T" >&5 -+echo "$as_me:10340: result: $NCURSES_MMASK_T" >&5 - echo "${ECHO_T}$NCURSES_MMASK_T" >&6 - - ### use option --with-ccharw-max to override CCHARW_MAX size --echo "$as_me:9500: checking for size CCHARW_MAX" >&5 -+echo "$as_me:10344: checking for size CCHARW_MAX" >&5 - echo $ECHO_N "checking for size CCHARW_MAX... $ECHO_C" >&6 - - # Check whether --with-ccharw-max or --without-ccharw-max was given. -@@ -9507,11 +10351,25 @@ - else - NCURSES_CCHARW_MAX=5 - fi; --echo "$as_me:9510: result: $NCURSES_CCHARW_MAX" >&5 -+echo "$as_me:10354: result: $NCURSES_CCHARW_MAX" >&5 - echo "${ECHO_T}$NCURSES_CCHARW_MAX" >&6 - -+### use option --with-tparm-arg to override tparm's argument type -+echo "$as_me:10358: checking for type of tparm args" >&5 -+echo $ECHO_N "checking for type of tparm args... $ECHO_C" >&6 -+ -+# Check whether --with-tparm-arg or --without-tparm-arg was given. -+if test "${with_tparm_arg+set}" = set; then -+ withval="$with_tparm_arg" -+ NCURSES_TPARM_ARG="$withval" -+else -+ NCURSES_TPARM_ARG=long -+fi; -+echo "$as_me:10368: result: $NCURSES_TPARM_ARG" >&5 -+echo "${ECHO_T}$NCURSES_TPARM_ARG" >&6 -+ - ### Enable compiling-in rcs id's --echo "$as_me:9514: checking if RCS identifiers should be compiled-in" >&5 -+echo "$as_me:10372: checking if RCS identifiers should be compiled-in" >&5 - echo $ECHO_N "checking if RCS identifiers should be compiled-in... $ECHO_C" >&6 - - # Check whether --with-rcs-ids or --without-rcs-ids was given. -@@ -9521,15 +10379,16 @@ - else - with_rcs_ids=no - fi; --echo "$as_me:9524: result: $with_rcs_ids" >&5 -+echo "$as_me:10382: result: $with_rcs_ids" >&5 - echo "${ECHO_T}$with_rcs_ids" >&6 --test "$with_rcs_ids" = yes && cat >>confdefs.h <<\EOF -+test "x$with_rcs_ids" = xyes && -+cat >>confdefs.h <<\EOF - #define USE_RCS_IDS 1 - EOF - - ############################################################################### - --echo "$as_me:9532: checking format of man-pages" >&5 -+echo "$as_me:10391: checking format of man-pages" >&5 - echo $ECHO_N "checking format of man-pages... $ECHO_C" >&6 - - # Check whether --with-manpage-format or --without-manpage-format was given. -@@ -9618,14 +10477,14 @@ - ;; - esac - --echo "$as_me:9621: result: $MANPAGE_FORMAT" >&5 -+echo "$as_me:10480: result: $MANPAGE_FORMAT" >&5 - echo "${ECHO_T}$MANPAGE_FORMAT" >&6 - if test -n "$cf_unknown" ; then -- { echo "$as_me:9624: WARNING: Unexpected manpage-format $cf_unknown" >&5 -+ { echo "$as_me:10483: WARNING: Unexpected manpage-format $cf_unknown" >&5 - echo "$as_me: WARNING: Unexpected manpage-format $cf_unknown" >&2;} - fi - --echo "$as_me:9628: checking for manpage renaming" >&5 -+echo "$as_me:10487: checking for manpage renaming" >&5 - echo $ECHO_N "checking for manpage renaming... $ECHO_C" >&6 - - # Check whether --with-manpage-renames or --without-manpage-renames was given. -@@ -9653,7 +10512,7 @@ - if test -f $srcdir/man/$MANPAGE_RENAMES ; then - MANPAGE_RENAMES=`cd $srcdir/man && pwd`/$MANPAGE_RENAMES - elif test ! -f $MANPAGE_RENAMES ; then -- { { echo "$as_me:9656: error: not a filename: $MANPAGE_RENAMES" >&5 -+ { { echo "$as_me:10515: error: not a filename: $MANPAGE_RENAMES" >&5 - echo "$as_me: error: not a filename: $MANPAGE_RENAMES" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -9667,10 +10526,10 @@ - fi - fi - --echo "$as_me:9670: result: $MANPAGE_RENAMES" >&5 -+echo "$as_me:10529: result: $MANPAGE_RENAMES" >&5 - echo "${ECHO_T}$MANPAGE_RENAMES" >&6 - --echo "$as_me:9673: checking if manpage aliases will be installed" >&5 -+echo "$as_me:10532: checking if manpage aliases will be installed" >&5 - echo $ECHO_N "checking if manpage aliases will be installed... $ECHO_C" >&6 - - # Check whether --with-manpage-aliases or --without-manpage-aliases was given. -@@ -9681,7 +10540,7 @@ - MANPAGE_ALIASES=yes - fi; - --echo "$as_me:9684: result: $MANPAGE_ALIASES" >&5 -+echo "$as_me:10543: result: $MANPAGE_ALIASES" >&5 - echo "${ECHO_T}$MANPAGE_ALIASES" >&6 - - case "x$LN_S" in #(vi -@@ -9695,7 +10554,7 @@ - - MANPAGE_SYMLINKS=no - if test "$MANPAGE_ALIASES" = yes ; then --echo "$as_me:9698: checking if manpage symlinks should be used" >&5 -+echo "$as_me:10557: checking if manpage symlinks should be used" >&5 - echo $ECHO_N "checking if manpage symlinks should be used... $ECHO_C" >&6 - - # Check whether --with-manpage-symlinks or --without-manpage-symlinks was given. -@@ -9708,17 +10567,17 @@ - - if test "$$cf_use_symlinks" = no; then - if test "$MANPAGE_SYMLINKS" = yes ; then -- { echo "$as_me:9711: WARNING: cannot make symlinks" >&5 -+ { echo "$as_me:10570: WARNING: cannot make symlinks" >&5 - echo "$as_me: WARNING: cannot make symlinks" >&2;} - MANPAGE_SYMLINKS=no - fi - fi - --echo "$as_me:9717: result: $MANPAGE_SYMLINKS" >&5 -+echo "$as_me:10576: result: $MANPAGE_SYMLINKS" >&5 - echo "${ECHO_T}$MANPAGE_SYMLINKS" >&6 - fi - --echo "$as_me:9721: checking for manpage tbl" >&5 -+echo "$as_me:10580: checking for manpage tbl" >&5 - echo $ECHO_N "checking for manpage tbl... $ECHO_C" >&6 - - # Check whether --with-manpage-tbl or --without-manpage-tbl was given. -@@ -9729,7 +10588,7 @@ - MANPAGE_TBL=no - fi; - --echo "$as_me:9732: result: $MANPAGE_TBL" >&5 -+echo "$as_me:10591: result: $MANPAGE_TBL" >&5 - echo "${ECHO_T}$MANPAGE_TBL" >&6 - - if test "$prefix" = "NONE" ; then -@@ -9776,6 +10635,7 @@ - # this script is generated by the configure-script CF_MAN_PAGES macro. - - prefix="$cf_prefix" -+datarootdir="$datarootdir" - datadir="$datadir" - - NCURSES_MAJOR="$NCURSES_MAJOR" -@@ -9836,11 +10696,12 @@ - if test ! -f $cf_man_alias ; then - cat >>$cf_man_alias <<-CF_EOF2 - s,@DATADIR@,\$datadir,g -- s,@TERMINFO@,\$TERMINFO,g -- s,@NCURSES_MAJOR@,\$NCURSES_MAJOR,g -- s,@NCURSES_MINOR@,\$NCURSES_MINOR,g -- s,@NCURSES_PATCH@,\$NCURSES_PATCH,g -- s,@NCURSES_OSPEED@,\$NCURSES_OSPEED,g -+ s,@TERMINFO@,\${TERMINFO:="no default value"},g -+ s,@TERMINFO_DIRS@,\${TERMINFO_DIRS:="no default value"},g -+ s,@NCURSES_MAJOR@,\${NCURSES_MAJOR:="no default value"},g -+ s,@NCURSES_MINOR@,\${NCURSES_MINOR:="no default value"},g -+ s,@NCURSES_PATCH@,\${NCURSES_PATCH:="no default value"},g -+ s,@NCURSES_OSPEED@,\${NCURSES_OSPEED:="no default value"},g - CF_EOF - - for cf_name in captoinfo clear infocmp infotocap tabs tic toe tput tset -@@ -9869,7 +10730,9 @@ - - if test "$MANPAGE_ALIASES" != no ; then - cat >>$cf_edit_man <>$cf_edit_man <\$TMP.out -+ mv \$TMP.out \$TMP -+CF_EOF -+fi -+ - if test $with_curses_h != yes ; then - cat >>$cf_edit_man <\$TMP.out -@@ -10051,7 +10921,7 @@ - ############################################################################### - - ### Note that some functions (such as const) are normally disabled anyway. --echo "$as_me:10054: checking if you want to build with function extensions" >&5 -+echo "$as_me:10924: checking if you want to build with function extensions" >&5 - echo $ECHO_N "checking if you want to build with function extensions... $ECHO_C" >&6 - - # Check whether --enable-ext-funcs or --disable-ext-funcs was given. -@@ -10061,39 +10931,52 @@ - else - with_ext_funcs=yes - fi; --echo "$as_me:10064: result: $with_ext_funcs" >&5 -+echo "$as_me:10934: result: $with_ext_funcs" >&5 - echo "${ECHO_T}$with_ext_funcs" >&6 --if test "$with_ext_funcs" = yes ; then -+if test "x$with_ext_funcs" = xyes ; then - NCURSES_EXT_FUNCS=1 -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_ASSUME_DEFAULT_COLORS 1 -+EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_CURSES_VERSION 1 - EOF - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define HAVE_HAS_KEY 1 - EOF - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define HAVE_RESIZETERM 1 - EOF - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define HAVE_RESIZE_TERM 1 - EOF - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define HAVE_TERM_ENTRY_H 1 - EOF - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define HAVE_USE_DEFAULT_COLORS 1 - EOF - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF -+#define HAVE_USE_SCREEN 1 -+EOF -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_USE_WINDOW 1 -+EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_WRESIZE 1 - EOF - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define NCURSES_EXT_FUNCS 1 - EOF - -@@ -10103,7 +10986,7 @@ - GENERATED_EXT_FUNCS= - fi - --echo "$as_me:10106: checking if you want to build with experimental SCREEN extensions" >&5 -+echo "$as_me:10989: checking if you want to build with experimental SCREEN extensions" >&5 - echo $ECHO_N "checking if you want to build with experimental SCREEN extensions... $ECHO_C" >&6 - - # Check whether --enable-sp-funcs or --disable-sp-funcs was given. -@@ -10113,11 +10996,12 @@ - else - with_sp_funcs=no - fi; --echo "$as_me:10116: result: $with_sp_funcs" >&5 -+echo "$as_me:10999: result: $with_sp_funcs" >&5 - echo "${ECHO_T}$with_sp_funcs" >&6 --if test "$with_sp_funcs" = yes ; then -+if test "x$with_sp_funcs" = xyes ; then - NCURSES_SP_FUNCS=1 -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define NCURSES_SP_FUNCS 1 - EOF - -@@ -10127,7 +11011,7 @@ - GENERATED_SP_FUNCS= - fi - --echo "$as_me:10130: checking if you want to build with experimental terminal-driver" >&5 -+echo "$as_me:11014: checking if you want to build with experimental terminal-driver" >&5 - echo $ECHO_N "checking if you want to build with experimental terminal-driver... $ECHO_C" >&6 - - # Check whether --enable-term-driver or --disable-term-driver was given. -@@ -10137,22 +11021,23 @@ - else - with_term_driver=no - fi; --echo "$as_me:10140: result: $with_term_driver" >&5 -+echo "$as_me:11024: result: $with_term_driver" >&5 - echo "${ECHO_T}$with_term_driver" >&6 --if test "$with_term_driver" = yes ; then -- cat >>confdefs.h <<\EOF -+if test "x$with_term_driver" = xyes ; then -+ -+cat >>confdefs.h <<\EOF - #define USE_TERM_DRIVER 1 - EOF - -- if test "$with_sp_funcs" != yes ; then -- { { echo "$as_me:10148: error: The term-driver option relies upon sp-funcs" >&5 -+ if test "x$with_sp_funcs" != xyes ; then -+ { { echo "$as_me:11033: error: The term-driver option relies upon sp-funcs" >&5 - echo "$as_me: error: The term-driver option relies upon sp-funcs" >&2;} - { (exit 1); exit 1; }; } - fi - fi - - ### use option --enable-const to turn on use of const beyond that in XSI. --echo "$as_me:10155: checking for extended use of const keyword" >&5 -+echo "$as_me:11040: checking for extended use of const keyword" >&5 - echo $ECHO_N "checking for extended use of const keyword... $ECHO_C" >&6 - - # Check whether --enable-const or --disable-const was given. -@@ -10162,15 +11047,15 @@ - else - with_ext_const=no - fi; --echo "$as_me:10165: result: $with_ext_const" >&5 -+echo "$as_me:11050: result: $with_ext_const" >&5 - echo "${ECHO_T}$with_ext_const" >&6 - NCURSES_CONST='/*nothing*/' --if test "$with_ext_const" = yes ; then -+if test "x$with_ext_const" = xyes ; then - NCURSES_CONST=const - fi - - ### use option --enable-ext-colors to turn on use of colors beyond 16. --echo "$as_me:10173: checking if you want to use extended colors" >&5 -+echo "$as_me:11058: checking if you want to use extended colors" >&5 - echo $ECHO_N "checking if you want to use extended colors... $ECHO_C" >&6 - - # Check whether --enable-ext-colors or --disable-ext-colors was given. -@@ -10180,12 +11065,12 @@ - else - with_ext_colors=no - fi; --echo "$as_me:10183: result: $with_ext_colors" >&5 -+echo "$as_me:11068: result: $with_ext_colors" >&5 - echo "${ECHO_T}$with_ext_colors" >&6 - NCURSES_EXT_COLORS=0 --if test "$with_ext_colors" = yes ; then -- if test "$with_widec" != yes ; then -- { { echo "$as_me:10188: error: This option applies only to wide-character library" >&5 -+if test "x$with_ext_colors" = xyes ; then -+ if test "x$with_widec" != xyes ; then -+ { { echo "$as_me:11073: error: This option applies only to wide-character library" >&5 - echo "$as_me: error: This option applies only to wide-character library" >&2;} - { (exit 1); exit 1; }; } - else -@@ -10196,7 +11081,7 @@ - 5.*) - cf_cv_rel_version=6.0 - cf_cv_abi_version=6 -- { echo "$as_me:10199: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5 -+ { echo "$as_me:11084: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5 - echo "$as_me: WARNING: Overriding ABI version to $cf_cv_abi_version" >&2;} - ;; - esac -@@ -10204,14 +11089,15 @@ - - fi - NCURSES_EXT_COLORS=1 -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define NCURSES_EXT_COLORS 1 - EOF - - fi - - ### use option --enable-ext-mouse to modify coding to support 5-button mice --echo "$as_me:10214: checking if you want to use extended mouse encoding" >&5 -+echo "$as_me:11100: checking if you want to use extended mouse encoding" >&5 - echo $ECHO_N "checking if you want to use extended mouse encoding... $ECHO_C" >&6 - - # Check whether --enable-ext-mouse or --disable-ext-mouse was given. -@@ -10221,10 +11107,10 @@ - else - with_ext_mouse=no - fi; --echo "$as_me:10224: result: $with_ext_mouse" >&5 -+echo "$as_me:11110: result: $with_ext_mouse" >&5 - echo "${ECHO_T}$with_ext_mouse" >&6 - NCURSES_MOUSE_VERSION=1 --if test "$with_ext_mouse" = yes ; then -+if test "x$with_ext_mouse" = xyes ; then - NCURSES_MOUSE_VERSION=2 - - if test "${with_abi_version+set}" != set; then -@@ -10232,7 +11118,7 @@ - 5.*) - cf_cv_rel_version=6.0 - cf_cv_abi_version=6 -- { echo "$as_me:10235: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5 -+ { echo "$as_me:11121: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5 - echo "$as_me: WARNING: Overriding ABI version to $cf_cv_abi_version" >&2;} - ;; - esac -@@ -10240,7 +11126,7 @@ - - fi - --echo "$as_me:10243: checking if you want \$NCURSES_NO_PADDING code" >&5 -+echo "$as_me:11129: checking if you want \$NCURSES_NO_PADDING code" >&5 - echo $ECHO_N "checking if you want \$NCURSES_NO_PADDING code... $ECHO_C" >&6 - - # Check whether --enable-no-padding or --disable-no-padding was given. -@@ -10250,19 +11136,20 @@ - else - with_no_padding=$with_ext_funcs - fi; --echo "$as_me:10253: result: $with_no_padding" >&5 -+echo "$as_me:11139: result: $with_no_padding" >&5 - echo "${ECHO_T}$with_no_padding" >&6 --test "$with_no_padding" = yes && cat >>confdefs.h <<\EOF -+test "x$with_no_padding" = xyes && -+cat >>confdefs.h <<\EOF - #define NCURSES_NO_PADDING 1 - EOF - --echo "$as_me:10259: checking for ANSI C header files" >&5 -+echo "$as_me:11146: checking for ANSI C header files" >&5 - echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 - if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 10265 "configure" -+#line 11152 "configure" - #include "confdefs.h" - #include - #include -@@ -10270,13 +11157,13 @@ - #include - - _ACEOF --if { (eval echo "$as_me:10273: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:11160: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:10279: \$? = $ac_status" >&5 -+ echo "$as_me:11166: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -10298,7 +11185,7 @@ - if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF --#line 10301 "configure" -+#line 11188 "configure" - #include "confdefs.h" - #include - -@@ -10316,7 +11203,7 @@ - if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF --#line 10319 "configure" -+#line 11206 "configure" - #include "confdefs.h" - #include - -@@ -10337,7 +11224,7 @@ - : - else - cat >conftest.$ac_ext <<_ACEOF --#line 10340 "configure" -+#line 11227 "configure" - #include "confdefs.h" - #include - #if ((' ' & 0x0FF) == 0x020) -@@ -10363,15 +11250,15 @@ - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:10366: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:11253: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10369: \$? = $ac_status" >&5 -+ echo "$as_me:11256: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:10371: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11258: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10374: \$? = $ac_status" >&5 -+ echo "$as_me:11261: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -10384,7 +11271,7 @@ - fi - fi - fi --echo "$as_me:10387: result: $ac_cv_header_stdc" >&5 -+echo "$as_me:11274: result: $ac_cv_header_stdc" >&5 - echo "${ECHO_T}$ac_cv_header_stdc" >&6 - if test $ac_cv_header_stdc = yes; then - -@@ -10400,28 +11287,28 @@ - inttypes.h stdint.h unistd.h - do - as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:10403: checking for $ac_header" >&5 -+echo "$as_me:11290: checking for $ac_header" >&5 - echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 10409 "configure" -+#line 11296 "configure" - #include "confdefs.h" - $ac_includes_default - #include <$ac_header> - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:10415: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:11302: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10418: \$? = $ac_status" >&5 -+ echo "$as_me:11305: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10421: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11308: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10424: \$? = $ac_status" >&5 -+ echo "$as_me:11311: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" - else -@@ -10431,7 +11318,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:10434: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "$as_me:11321: result: `eval echo '${'$as_ac_Header'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <&5 -+echo "$as_me:11331: checking for signed char" >&5 - echo $ECHO_N "checking for signed char... $ECHO_C" >&6 - if test "${ac_cv_type_signed_char+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 10450 "configure" -+#line 11337 "configure" - #include "confdefs.h" - $ac_includes_default - int -@@ -10462,16 +11349,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:10465: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:11352: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10468: \$? = $ac_status" >&5 -+ echo "$as_me:11355: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10471: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11358: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10474: \$? = $ac_status" >&5 -+ echo "$as_me:11361: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_signed_char=yes - else -@@ -10481,10 +11368,10 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:10484: result: $ac_cv_type_signed_char" >&5 -+echo "$as_me:11371: result: $ac_cv_type_signed_char" >&5 - echo "${ECHO_T}$ac_cv_type_signed_char" >&6 - --echo "$as_me:10487: checking size of signed char" >&5 -+echo "$as_me:11374: checking size of signed char" >&5 - echo $ECHO_N "checking size of signed char... $ECHO_C" >&6 - if test "${ac_cv_sizeof_signed_char+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -10493,7 +11380,7 @@ - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. - cat >conftest.$ac_ext <<_ACEOF --#line 10496 "configure" -+#line 11383 "configure" - #include "confdefs.h" - $ac_includes_default - int -@@ -10505,21 +11392,21 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:10508: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:11395: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10511: \$? = $ac_status" >&5 -+ echo "$as_me:11398: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10514: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11401: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10517: \$? = $ac_status" >&5 -+ echo "$as_me:11404: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=0 ac_mid=0 - while :; do - cat >conftest.$ac_ext <<_ACEOF --#line 10522 "configure" -+#line 11409 "configure" - #include "confdefs.h" - $ac_includes_default - int -@@ -10531,16 +11418,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:10534: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:11421: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10537: \$? = $ac_status" >&5 -+ echo "$as_me:11424: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10540: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11427: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10543: \$? = $ac_status" >&5 -+ echo "$as_me:11430: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid; break - else -@@ -10556,7 +11443,7 @@ - ac_hi=-1 ac_mid=-1 - while :; do - cat >conftest.$ac_ext <<_ACEOF --#line 10559 "configure" -+#line 11446 "configure" - #include "confdefs.h" - $ac_includes_default - int -@@ -10568,16 +11455,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:10571: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:11458: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10574: \$? = $ac_status" >&5 -+ echo "$as_me:11461: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10577: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11464: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10580: \$? = $ac_status" >&5 -+ echo "$as_me:11467: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=$ac_mid; break - else -@@ -10593,7 +11480,7 @@ - while test "x$ac_lo" != "x$ac_hi"; do - ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` - cat >conftest.$ac_ext <<_ACEOF --#line 10596 "configure" -+#line 11483 "configure" - #include "confdefs.h" - $ac_includes_default - int -@@ -10605,16 +11492,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:10608: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:11495: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:10611: \$? = $ac_status" >&5 -+ echo "$as_me:11498: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:10614: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11501: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10617: \$? = $ac_status" >&5 -+ echo "$as_me:11504: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid - else -@@ -10627,12 +11514,12 @@ - ac_cv_sizeof_signed_char=$ac_lo - else - if test "$cross_compiling" = yes; then -- { { echo "$as_me:10630: error: cannot run test program while cross compiling" >&5 -+ { { echo "$as_me:11517: error: cannot run test program while cross compiling" >&5 - echo "$as_me: error: cannot run test program while cross compiling" >&2;} - { (exit 1); exit 1; }; } - else - cat >conftest.$ac_ext <<_ACEOF --#line 10635 "configure" -+#line 11522 "configure" - #include "confdefs.h" - $ac_includes_default - int -@@ -10648,15 +11535,15 @@ - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:10651: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:11538: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10654: \$? = $ac_status" >&5 -+ echo "$as_me:11541: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:10656: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11543: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10659: \$? = $ac_status" >&5 -+ echo "$as_me:11546: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sizeof_signed_char=`cat conftest.val` - else -@@ -10672,7 +11559,7 @@ - ac_cv_sizeof_signed_char=0 - fi - fi --echo "$as_me:10675: result: $ac_cv_sizeof_signed_char" >&5 -+echo "$as_me:11562: result: $ac_cv_sizeof_signed_char" >&5 - echo "${ECHO_T}$ac_cv_sizeof_signed_char" >&6 - cat >>confdefs.h <&5 -+echo "$as_me:11573: checking if you want to use signed Boolean array in term.h" >&5 - echo $ECHO_N "checking if you want to use signed Boolean array in term.h... $ECHO_C" >&6 - - # Check whether --enable-signed-char or --disable-signed-char was given. -@@ -10693,12 +11580,12 @@ - else - with_signed_char=no - fi; --echo "$as_me:10696: result: $with_signed_char" >&5 -+echo "$as_me:11583: result: $with_signed_char" >&5 - echo "${ECHO_T}$with_signed_char" >&6 --test "$with_signed_char" != yes && NCURSES_SBOOL="char" -+test "x$with_signed_char" != xyes && NCURSES_SBOOL="char" - - ### use option --enable-sigwinch to turn on use of SIGWINCH logic --echo "$as_me:10701: checking if you want SIGWINCH handler" >&5 -+echo "$as_me:11588: checking if you want SIGWINCH handler" >&5 - echo $ECHO_N "checking if you want SIGWINCH handler... $ECHO_C" >&6 - - # Check whether --enable-sigwinch or --disable-sigwinch was given. -@@ -10708,14 +11595,15 @@ - else - with_sigwinch=$with_ext_funcs - fi; --echo "$as_me:10711: result: $with_sigwinch" >&5 -+echo "$as_me:11598: result: $with_sigwinch" >&5 - echo "${ECHO_T}$with_sigwinch" >&6 --test "$with_sigwinch" = yes && cat >>confdefs.h <<\EOF -+test "x$with_sigwinch" = xyes && -+cat >>confdefs.h <<\EOF - #define USE_SIGWINCH 1 - EOF - - ### use option --enable-tcap-names to allow user to define new capabilities --echo "$as_me:10718: checking if you want user-definable terminal capabilities like termcap" >&5 -+echo "$as_me:11606: checking if you want user-definable terminal capabilities like termcap" >&5 - echo $ECHO_N "checking if you want user-definable terminal capabilities like termcap... $ECHO_C" >&6 - - # Check whether --enable-tcap-names or --disable-tcap-names was given. -@@ -10725,15 +11613,15 @@ - else - with_tcap_names=$with_ext_funcs - fi; --echo "$as_me:10728: result: $with_tcap_names" >&5 -+echo "$as_me:11616: result: $with_tcap_names" >&5 - echo "${ECHO_T}$with_tcap_names" >&6 - NCURSES_XNAMES=0 --test "$with_tcap_names" = yes && NCURSES_XNAMES=1 -+test "x$with_tcap_names" = xyes && NCURSES_XNAMES=1 - - ############################################################################### - # These options are relatively safe to experiment with. - --echo "$as_me:10736: checking if you want all development code" >&5 -+echo "$as_me:11624: checking if you want all development code" >&5 - echo $ECHO_N "checking if you want all development code... $ECHO_C" >&6 - - # Check whether --with-develop or --without-develop was given. -@@ -10743,11 +11631,11 @@ - else - with_develop=no - fi; --echo "$as_me:10746: result: $with_develop" >&5 -+echo "$as_me:11634: result: $with_develop" >&5 - echo "${ECHO_T}$with_develop" >&6 - - ### use option --enable-hard-tabs to turn on use of hard-tabs optimize --echo "$as_me:10750: checking if you want hard-tabs code" >&5 -+echo "$as_me:11638: checking if you want hard-tabs code" >&5 - echo $ECHO_N "checking if you want hard-tabs code... $ECHO_C" >&6 - - # Check whether --enable-hard-tabs or --disable-hard-tabs was given. -@@ -10757,14 +11645,15 @@ - else - enable_hard_tabs=$with_develop - fi; --echo "$as_me:10760: result: $enable_hard_tabs" >&5 -+echo "$as_me:11648: result: $enable_hard_tabs" >&5 - echo "${ECHO_T}$enable_hard_tabs" >&6 --test "$enable_hard_tabs" = yes && cat >>confdefs.h <<\EOF -+test "x$enable_hard_tabs" = xyes && -+cat >>confdefs.h <<\EOF - #define USE_HARD_TABS 1 - EOF - - ### use option --enable-xmc-glitch to turn on use of magic-cookie optimize --echo "$as_me:10767: checking if you want limited support for xmc" >&5 -+echo "$as_me:11656: checking if you want limited support for xmc" >&5 - echo $ECHO_N "checking if you want limited support for xmc... $ECHO_C" >&6 - - # Check whether --enable-xmc-glitch or --disable-xmc-glitch was given. -@@ -10774,16 +11663,17 @@ - else - enable_xmc_glitch=$with_develop - fi; --echo "$as_me:10777: result: $enable_xmc_glitch" >&5 -+echo "$as_me:11666: result: $enable_xmc_glitch" >&5 - echo "${ECHO_T}$enable_xmc_glitch" >&6 --test "$enable_xmc_glitch" = yes && cat >>confdefs.h <<\EOF -+test "x$enable_xmc_glitch" = xyes && -+cat >>confdefs.h <<\EOF - #define USE_XMC_SUPPORT 1 - EOF - - ############################################################################### - # These are just experimental, probably should not be in a package: - --echo "$as_me:10786: checking if you do not want to assume colors are white-on-black" >&5 -+echo "$as_me:11676: checking if you do not want to assume colors are white-on-black" >&5 - echo $ECHO_N "checking if you do not want to assume colors are white-on-black... $ECHO_C" >&6 - - # Check whether --enable-assumed-color or --disable-assumed-color was given. -@@ -10793,14 +11683,15 @@ - else - with_assumed_color=yes - fi; --echo "$as_me:10796: result: $with_assumed_color" >&5 -+echo "$as_me:11686: result: $with_assumed_color" >&5 - echo "${ECHO_T}$with_assumed_color" >&6 --test "$with_assumed_color" = yes && cat >>confdefs.h <<\EOF -+test "x$with_assumed_color" = xyes && -+cat >>confdefs.h <<\EOF - #define USE_ASSUMED_COLOR 1 - EOF - - ### use option --enable-hashmap to turn on use of hashmap scrolling logic --echo "$as_me:10803: checking if you want hashmap scrolling-optimization code" >&5 -+echo "$as_me:11694: checking if you want hashmap scrolling-optimization code" >&5 - echo $ECHO_N "checking if you want hashmap scrolling-optimization code... $ECHO_C" >&6 - - # Check whether --enable-hashmap or --disable-hashmap was given. -@@ -10810,14 +11701,15 @@ - else - with_hashmap=yes - fi; --echo "$as_me:10813: result: $with_hashmap" >&5 -+echo "$as_me:11704: result: $with_hashmap" >&5 - echo "${ECHO_T}$with_hashmap" >&6 --test "$with_hashmap" = yes && cat >>confdefs.h <<\EOF -+test "x$with_hashmap" = xyes && -+cat >>confdefs.h <<\EOF - #define USE_HASHMAP 1 - EOF - - ### use option --enable-colorfgbg to turn on use of $COLORFGBG environment --echo "$as_me:10820: checking if you want colorfgbg code" >&5 -+echo "$as_me:11712: checking if you want colorfgbg code" >&5 - echo $ECHO_N "checking if you want colorfgbg code... $ECHO_C" >&6 - - # Check whether --enable-colorfgbg or --disable-colorfgbg was given. -@@ -10827,14 +11719,15 @@ - else - with_colorfgbg=no - fi; --echo "$as_me:10830: result: $with_colorfgbg" >&5 -+echo "$as_me:11722: result: $with_colorfgbg" >&5 - echo "${ECHO_T}$with_colorfgbg" >&6 --test "$with_colorfgbg" = yes && cat >>confdefs.h <<\EOF -+test "x$with_colorfgbg" = xyes && -+cat >>confdefs.h <<\EOF - #define USE_COLORFGBG 1 - EOF - - ### use option --enable-interop to turn on use of bindings used for interop --echo "$as_me:10837: checking if you want interop bindings" >&5 -+echo "$as_me:11730: checking if you want interop bindings" >&5 - echo $ECHO_N "checking if you want interop bindings... $ECHO_C" >&6 - - # Check whether --enable-interop or --disable-interop was given. -@@ -10844,16 +11737,16 @@ - else - with_exp_interop=no - fi; --echo "$as_me:10847: result: $with_exp_interop" >&5 -+echo "$as_me:11740: result: $with_exp_interop" >&5 - echo "${ECHO_T}$with_exp_interop" >&6 - - NCURSES_INTEROP_FUNCS=0 --test "$with_exp_interop" = yes && NCURSES_INTEROP_FUNCS=1 -+test "x$with_exp_interop" = xyes && NCURSES_INTEROP_FUNCS=1 - - # This is still experimental (20080329), but should ultimately be moved to - # the script-block --with-normal, etc. - --echo "$as_me:10856: checking if you want to link with the pthread library" >&5 -+echo "$as_me:11749: checking if you want to link with the pthread library" >&5 - echo $ECHO_N "checking if you want to link with the pthread library... $ECHO_C" >&6 - - # Check whether --with-pthread or --without-pthread was given. -@@ -10863,27 +11756,27 @@ - else - with_pthread=no - fi; --echo "$as_me:10866: result: $with_pthread" >&5 -+echo "$as_me:11759: result: $with_pthread" >&5 - echo "${ECHO_T}$with_pthread" >&6 - - if test "$with_pthread" != no ; then -- echo "$as_me:10870: checking for pthread.h" >&5 -+ echo "$as_me:11763: checking for pthread.h" >&5 - echo $ECHO_N "checking for pthread.h... $ECHO_C" >&6 - if test "${ac_cv_header_pthread_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 10876 "configure" -+#line 11769 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:10880: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:11773: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:10886: \$? = $ac_status" >&5 -+ echo "$as_me:11779: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -10902,20 +11795,22 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:10905: result: $ac_cv_header_pthread_h" >&5 -+echo "$as_me:11798: result: $ac_cv_header_pthread_h" >&5 - echo "${ECHO_T}$ac_cv_header_pthread_h" >&6 - if test $ac_cv_header_pthread_h = yes; then - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define HAVE_PTHREADS_H 1 - EOF - -- echo "$as_me:10913: checking if we can link with the pthread library" >&5 --echo $ECHO_N "checking if we can link with the pthread library... $ECHO_C" >&6 -- cf_save_LIBS="$LIBS" -- LIBS="-lpthread $LIBS" -- cat >conftest.$ac_ext <<_ACEOF --#line 10918 "configure" -+ for cf_lib_pthread in pthread c_r -+ do -+ echo "$as_me:11808: checking if we can link with the $cf_lib_pthread library" >&5 -+echo $ECHO_N "checking if we can link with the $cf_lib_pthread library... $ECHO_C" >&6 -+ cf_save_LIBS="$LIBS" -+ LIBS="-l$cf_lib_pthread $LIBS" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 11813 "configure" - #include "confdefs.h" - - #include -@@ -10924,23 +11819,24 @@ - main () - { - -- int rc = pthread_create(0,0,0,0); -+ int rc = pthread_create(0,0,0,0); -+ int r2 = pthread_mutexattr_settype(0, 0); - - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10934: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:11830: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10937: \$? = $ac_status" >&5 -+ echo "$as_me:11833: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10940: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11836: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10943: \$? = $ac_status" >&5 -+ echo "$as_me:11839: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - with_pthread=yes - else -@@ -10949,34 +11845,37 @@ - with_pthread=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- LIBS="$cf_save_LIBS" -- echo "$as_me:10953: result: $with_pthread" >&5 -+ LIBS="$cf_save_LIBS" -+ echo "$as_me:11849: result: $with_pthread" >&5 - echo "${ECHO_T}$with_pthread" >&6 -+ test "$with_pthread" = yes && break -+ done - -- if test "$with_pthread" = yes ; then -- LIBS="-lpthread $LIBS" -- cat >>confdefs.h <<\EOF -+ if test "$with_pthread" = yes ; then -+ LIBS="-l$cf_lib_pthread $LIBS" -+ -+cat >>confdefs.h <<\EOF - #define HAVE_LIBPTHREADS 1 - EOF - -- else -- { { echo "$as_me:10963: error: Cannot link with pthread library" >&5 -+ else -+ { { echo "$as_me:11862: error: Cannot link with pthread library" >&5 - echo "$as_me: error: Cannot link with pthread library" >&2;} - { (exit 1); exit 1; }; } -- fi -+ fi - - fi - - fi - - if test "x$with_pthread" != xno; then -- echo "$as_me:10973: checking for pthread_kill" >&5 -+ echo "$as_me:11872: checking for pthread_kill" >&5 - echo $ECHO_N "checking for pthread_kill... $ECHO_C" >&6 - if test "${ac_cv_func_pthread_kill+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 10979 "configure" -+#line 11878 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char pthread_kill (); below. */ -@@ -10999,7 +11898,7 @@ - #if defined (__stub_pthread_kill) || defined (__stub___pthread_kill) - choke me - #else --f = pthread_kill; -+f = pthread_kill; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -11007,16 +11906,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:11010: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:11909: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:11013: \$? = $ac_status" >&5 -+ echo "$as_me:11912: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:11016: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11915: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11019: \$? = $ac_status" >&5 -+ echo "$as_me:11918: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_pthread_kill=yes - else -@@ -11026,11 +11925,11 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:11029: result: $ac_cv_func_pthread_kill" >&5 -+echo "$as_me:11928: result: $ac_cv_func_pthread_kill" >&5 - echo "${ECHO_T}$ac_cv_func_pthread_kill" >&6 - if test $ac_cv_func_pthread_kill = yes; then - -- echo "$as_me:11033: checking if you want to allow EINTR in wgetch with pthreads" >&5 -+ echo "$as_me:11932: checking if you want to allow EINTR in wgetch with pthreads" >&5 - echo $ECHO_N "checking if you want to allow EINTR in wgetch with pthreads... $ECHO_C" >&6 - - # Check whether --enable-pthreads-eintr or --disable-pthreads-eintr was given. -@@ -11040,17 +11939,18 @@ - else - use_pthreads_eintr=no - fi; -- echo "$as_me:11043: result: $use_pthreads_eintr" >&5 -+ echo "$as_me:11942: result: $use_pthreads_eintr" >&5 - echo "${ECHO_T}$use_pthreads_eintr" >&6 -- if test $use_pthreads_eintr = yes ; then -- cat >>confdefs.h <<\EOF -+ if test "x$use_pthreads_eintr" = xyes ; then -+ -+cat >>confdefs.h <<\EOF - #define USE_PTHREADS_EINTR 1 - EOF - - fi - fi - -- echo "$as_me:11053: checking if you want to use weak-symbols for pthreads" >&5 -+ echo "$as_me:11953: checking if you want to use weak-symbols for pthreads" >&5 - echo $ECHO_N "checking if you want to use weak-symbols for pthreads... $ECHO_C" >&6 - - # Check whether --enable-weak-symbols or --disable-weak-symbols was given. -@@ -11060,18 +11960,18 @@ - else - use_weak_symbols=no - fi; -- echo "$as_me:11063: result: $use_weak_symbols" >&5 -+ echo "$as_me:11963: result: $use_weak_symbols" >&5 - echo "${ECHO_T}$use_weak_symbols" >&6 -- if test "$use_weak_symbols" = yes ; then -+ if test "x$use_weak_symbols" = xyes ; then - --echo "$as_me:11067: checking if $CC supports weak symbols" >&5 -+echo "$as_me:11967: checking if $CC supports weak symbols" >&5 - echo $ECHO_N "checking if $CC supports weak symbols... $ECHO_C" >&6 - if test "${cf_cv_weak_symbols+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 11074 "configure" -+#line 11974 "configure" - #include "confdefs.h" - - #include -@@ -11097,16 +11997,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:11100: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:12000: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11103: \$? = $ac_status" >&5 -+ echo "$as_me:12003: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:11106: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:12006: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11109: \$? = $ac_status" >&5 -+ echo "$as_me:12009: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_weak_symbols=yes - else -@@ -11117,15 +12017,16 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:11120: result: $cf_cv_weak_symbols" >&5 -+echo "$as_me:12020: result: $cf_cv_weak_symbols" >&5 - echo "${ECHO_T}$cf_cv_weak_symbols" >&6 - - else - cf_cv_weak_symbols=no - fi - -- if test $cf_cv_weak_symbols = yes ; then -- cat >>confdefs.h <<\EOF -+ if test "x$cf_cv_weak_symbols" = xyes ; then -+ -+cat >>confdefs.h <<\EOF - #define USE_WEAK_SYMBOLS 1 - EOF - -@@ -11133,13 +12034,14 @@ - fi - - PTHREAD= --if test "$with_pthread" = "yes" ; then -- cat >>confdefs.h <<\EOF -+if test "x$with_pthread" = "xyes" ; then -+ -+cat >>confdefs.h <<\EOF - #define USE_PTHREADS 1 - EOF - - enable_reentrant=yes -- if test $cf_cv_weak_symbols = yes ; then -+ if test "x$cf_cv_weak_symbols" = xyes ; then - PTHREAD=-lpthread - fi - fi -@@ -11148,7 +12050,7 @@ - # opaque outside of that, so there is no --enable-opaque option. We can use - # this option without --with-pthreads, but this will be always set for - # pthreads. --echo "$as_me:11151: checking if you want experimental reentrant code" >&5 -+echo "$as_me:12053: checking if you want experimental reentrant code" >&5 - echo $ECHO_N "checking if you want experimental reentrant code... $ECHO_C" >&6 - - # Check whether --enable-reentrant or --disable-reentrant was given. -@@ -11158,14 +12060,14 @@ - else - with_reentrant=no - fi; --echo "$as_me:11161: result: $with_reentrant" >&5 -+echo "$as_me:12063: result: $with_reentrant" >&5 - echo "${ECHO_T}$with_reentrant" >&6 --if test "$with_reentrant" = yes ; then -+if test "x$with_reentrant" = xyes ; then - cf_cv_enable_reentrant=1 - cf_cv_enable_opaque="NCURSES_INTERNALS" - NCURSES_OPAQUE=1 - NCURSES_SIZE_T=int -- if test $cf_cv_weak_symbols = yes ; then -+ if test "x$cf_cv_weak_symbols" = xyes ; then - - # remove pthread library from $LIBS - LIBS=`echo "$LIBS" | sed -e 's/-lpthread[ ]//g' -e 's/-lpthread$//'` -@@ -11173,9 +12075,20 @@ - TEST_LIBS="-lpthread $TEST_LIBS" - TEST_LIBS2="-lpthread $TEST_LIBS2" - else -- LIB_SUFFIX="t${LIB_SUFFIX}" -+ # when not using weak symbols but with_reentrant, -+ # add 't' to the library suffix on all platforms -+ # except cygwin, where we only do that if ALSO -+ # compiling with full thread support. -+ case "$host" in -+ *cygwin* | *msys*) -+ if test "$with_pthread" = "yes" ; then -+ LIB_SUFFIX="t${LIB_SUFFIX}" -+ fi ;; -+ * ) LIB_SUFFIX="t${LIB_SUFFIX}" ;; -+ esac - fi -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define USE_REENTRANT 1 - EOF - -@@ -11184,7 +12097,7 @@ - 5.*) - cf_cv_rel_version=6.0 - cf_cv_abi_version=6 -- { echo "$as_me:11187: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5 -+ { echo "$as_me:12100: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5 - echo "$as_me: WARNING: Overriding ABI version to $cf_cv_abi_version" >&2;} - ;; - esac -@@ -11199,7 +12112,7 @@ - - ### Allow using a different wrap-prefix - if test "$cf_cv_enable_reentrant" != 0 || test "$BROKEN_LINKER" = 1 ; then -- echo "$as_me:11202: checking for prefix used to wrap public variables" >&5 -+ echo "$as_me:12115: checking for prefix used to wrap public variables" >&5 - echo $ECHO_N "checking for prefix used to wrap public variables... $ECHO_C" >&6 - - # Check whether --with-wrap-prefix or --without-wrap-prefix was given. -@@ -11209,7 +12122,7 @@ - else - NCURSES_WRAP_PREFIX=_nc_ - fi; -- echo "$as_me:11212: result: $NCURSES_WRAP_PREFIX" >&5 -+ echo "$as_me:12125: result: $NCURSES_WRAP_PREFIX" >&5 - echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6 - else - NCURSES_WRAP_PREFIX=_nc_ -@@ -11219,7 +12132,7 @@ - #define NCURSES_WRAP_PREFIX "$NCURSES_WRAP_PREFIX" - EOF - --echo "$as_me:11222: checking if you want experimental safe-sprintf code" >&5 -+echo "$as_me:12135: checking if you want experimental safe-sprintf code" >&5 - echo $ECHO_N "checking if you want experimental safe-sprintf code... $ECHO_C" >&6 - - # Check whether --enable-safe-sprintf or --disable-safe-sprintf was given. -@@ -11229,16 +12142,17 @@ - else - with_safe_sprintf=no - fi; --echo "$as_me:11232: result: $with_safe_sprintf" >&5 -+echo "$as_me:12145: result: $with_safe_sprintf" >&5 - echo "${ECHO_T}$with_safe_sprintf" >&6 --test "$with_safe_sprintf" = yes && cat >>confdefs.h <<\EOF -+test "x$with_safe_sprintf" = xyes && -+cat >>confdefs.h <<\EOF - #define USE_SAFE_SPRINTF 1 - EOF - - ### use option --disable-scroll-hints to turn off use of scroll-hints scrolling logic - # when hashmap is used scroll hints are useless - if test "$with_hashmap" = no ; then --echo "$as_me:11241: checking if you want to experiment without scrolling-hints code" >&5 -+echo "$as_me:12155: checking if you want to experiment without scrolling-hints code" >&5 - echo $ECHO_N "checking if you want to experiment without scrolling-hints code... $ECHO_C" >&6 - - # Check whether --enable-scroll-hints or --disable-scroll-hints was given. -@@ -11248,15 +12162,16 @@ - else - with_scroll_hints=yes - fi; --echo "$as_me:11251: result: $with_scroll_hints" >&5 -+echo "$as_me:12165: result: $with_scroll_hints" >&5 - echo "${ECHO_T}$with_scroll_hints" >&6 --test "$with_scroll_hints" = yes && cat >>confdefs.h <<\EOF -+test "x$with_scroll_hints" = xyes && -+cat >>confdefs.h <<\EOF - #define USE_SCROLL_HINTS 1 - EOF - - fi - --echo "$as_me:11259: checking if you want experimental wgetch-events code" >&5 -+echo "$as_me:12174: checking if you want experimental wgetch-events code" >&5 - echo $ECHO_N "checking if you want experimental wgetch-events code... $ECHO_C" >&6 - - # Check whether --enable-wgetch-events or --disable-wgetch-events was given. -@@ -11266,37 +12181,64 @@ - else - with_wgetch_events=no - fi; --echo "$as_me:11269: result: $with_wgetch_events" >&5 -+echo "$as_me:12184: result: $with_wgetch_events" >&5 - echo "${ECHO_T}$with_wgetch_events" >&6 --test "$with_wgetch_events" = yes && cat >>confdefs.h <<\EOF -+test "x$with_wgetch_events" = xyes && -+cat >>confdefs.h <<\EOF - #define NCURSES_WGETCH_EVENTS 1 - EOF - - ############################################################################### - - ### use option --disable-echo to suppress full display compiling commands --echo "$as_me:11278: checking if you want to display full commands during build" >&5 --echo $ECHO_N "checking if you want to display full commands during build... $ECHO_C" >&6 -+ -+echo "$as_me:12195: checking if you want to see long compiling messages" >&5 -+echo $ECHO_N "checking if you want to see long compiling messages... $ECHO_C" >&6 - - # Check whether --enable-echo or --disable-echo was given. - if test "${enable_echo+set}" = set; then - enableval="$enable_echo" -- with_echo=$enableval -+ test "$enableval" != no && enableval=yes -+ if test "$enableval" != "yes" ; then -+ -+ ECHO_LT='--silent' -+ ECHO_LD='@echo linking $@;' -+ RULE_CC='@echo compiling $<' -+ SHOW_CC='@echo compiling $@' -+ ECHO_CC='@' -+ -+ else -+ -+ ECHO_LT='' -+ ECHO_LD='' -+ RULE_CC='' -+ SHOW_CC='' -+ ECHO_CC='' -+ -+ fi - else -- with_echo=yes -+ enableval=yes -+ -+ ECHO_LT='' -+ ECHO_LD='' -+ RULE_CC='' -+ SHOW_CC='' -+ ECHO_CC='' -+ - fi; --if test "$with_echo" = yes; then -+echo "$as_me:12229: result: $enableval" >&5 -+echo "${ECHO_T}$enableval" >&6 -+ -+if test "x$enable_echo" = xyes; then - ECHO_LINK= - else - ECHO_LINK='@ echo linking $@ ... ;' - test -n "$LIBTOOL" && LIBTOOL="$LIBTOOL --silent" - test -n "$LIBTOOL_CXX" && LIBTOOL_CXX="$LIBTOOL_CXX --silent" - fi --echo "$as_me:11295: result: $with_echo" >&5 --echo "${ECHO_T}$with_echo" >&6 - - ### use option --enable-warnings to turn on all gcc warnings --echo "$as_me:11299: checking if you want to see compiler warnings" >&5 -+echo "$as_me:12241: checking if you want to see compiler warnings" >&5 - echo $ECHO_N "checking if you want to see compiler warnings... $ECHO_C" >&6 - - # Check whether --enable-warnings or --disable-warnings was given. -@@ -11304,7 +12246,7 @@ - enableval="$enable_warnings" - with_warnings=$enableval - fi; --echo "$as_me:11307: result: $with_warnings" >&5 -+echo "$as_me:12249: result: $with_warnings" >&5 - echo "${ECHO_T}$with_warnings" >&6 - - if test "x$with_warnings" = "xyes"; then -@@ -11316,12 +12258,12 @@ - if test "$GCC" = yes ; then - case $host_os in - linux*|gnu*) -- echo "$as_me:11319: checking if this is really Intel C compiler" >&5 -+ echo "$as_me:12261: checking if this is really Intel C compiler" >&5 - echo $ECHO_N "checking if this is really Intel C compiler... $ECHO_C" >&6 - cf_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -no-gcc" - cat >conftest.$ac_ext <<_ACEOF --#line 11324 "configure" -+#line 12266 "configure" - #include "confdefs.h" - - int -@@ -11338,16 +12280,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:11341: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:12283: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11344: \$? = $ac_status" >&5 -+ echo "$as_me:12286: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:11347: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:12289: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11350: \$? = $ac_status" >&5 -+ echo "$as_me:12292: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - INTEL_COMPILER=yes - cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc" -@@ -11358,14 +12300,63 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - CFLAGS="$cf_save_CFLAGS" -- echo "$as_me:11361: result: $INTEL_COMPILER" >&5 -+ echo "$as_me:12303: result: $INTEL_COMPILER" >&5 - echo "${ECHO_T}$INTEL_COMPILER" >&6 - ;; - esac - fi - -+CLANG_COMPILER=no -+ -+if test "$GCC" = yes ; then -+ echo "$as_me:12312: checking if this is really Clang C compiler" >&5 -+echo $ECHO_N "checking if this is really Clang C compiler... $ECHO_C" >&6 -+ cf_save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -Qunused-arguments" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12317 "configure" -+#include "confdefs.h" -+ -+int -+main () -+{ -+ -+#ifdef __clang__ -+#else -+make an error -+#endif -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:12334: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:12337: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:12340: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:12343: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ CLANG_COMPILER=yes -+cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments" -+ -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CFLAGS="$cf_save_CFLAGS" -+ echo "$as_me:12354: result: $CLANG_COMPILER" >&5 -+echo "${ECHO_T}$CLANG_COMPILER" >&6 -+fi -+ - cat > conftest.$ac_ext <&5 -+ { echo "$as_me:12376: checking for $CC warning options..." >&5 - echo "$as_me: checking for $CC warning options..." >&6;} - cf_save_CFLAGS="$CFLAGS" - EXTRA_CFLAGS="-Wall" -@@ -11398,12 +12389,12 @@ - wd981 - do - CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" -- if { (eval echo "$as_me:11401: \"$ac_compile\"") >&5 -+ if { (eval echo "$as_me:12392: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11404: \$? = $ac_status" >&5 -+ echo "$as_me:12395: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:11406: result: ... -$cf_opt" >&5 -+ test -n "$verbose" && echo "$as_me:12397: result: ... -$cf_opt" >&5 - echo "${ECHO_T}... -$cf_opt" >&6 - EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt" - fi -@@ -11412,16 +12403,20 @@ - - elif test "$GCC" = yes - then -- { echo "$as_me:11415: checking for $CC warning options..." >&5 -+ { echo "$as_me:12406: checking for $CC warning options..." >&5 - echo "$as_me: checking for $CC warning options..." >&6;} - cf_save_CFLAGS="$CFLAGS" - EXTRA_CFLAGS= - cf_warn_CONST="" - test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings" -+ cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs" -+ test "x$CLANG_COMPILER" = xyes && cf_gcc_warnings= - for cf_opt in W Wall \ - Wbad-function-cast \ - Wcast-align \ - Wcast-qual \ -+ Wdeclaration-after-statement \ -+ Wextra \ - Winline \ - Wmissing-declarations \ - Wmissing-prototypes \ -@@ -11429,15 +12424,15 @@ - Wpointer-arith \ - Wshadow \ - Wstrict-prototypes \ -- Wundef $cf_warn_CONST Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum -+ Wundef $cf_gcc_warnings $cf_warn_CONST Wno-unknown-pragmas Wswitch-enum - do - CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" -- if { (eval echo "$as_me:11435: \"$ac_compile\"") >&5 -+ if { (eval echo "$as_me:12430: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11438: \$? = $ac_status" >&5 -+ echo "$as_me:12433: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:11440: result: ... -$cf_opt" >&5 -+ test -n "$verbose" && echo "$as_me:12435: result: ... -$cf_opt" >&5 - echo "${ECHO_T}... -$cf_opt" >&6 - case $cf_opt in #(vi - Wcast-qual) #(vi -@@ -11448,7 +12443,17 @@ - [34].*) - test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6 - --echo "${as_me:-configure}:11451: testing feature is broken in gcc $GCC_VERSION ..." 1>&5 -+echo "${as_me:-configure}:12446: testing feature is broken in gcc $GCC_VERSION ..." 1>&5 -+ -+ continue;; -+ esac -+ ;; -+ Wpointer-arith) #(vi -+ case $GCC_VERSION in -+ [12].*) -+ test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6 -+ -+echo "${as_me:-configure}:12456: testing feature is broken in gcc $GCC_VERSION ..." 1>&5 - - continue;; - esac -@@ -11461,19 +12466,19 @@ - fi - rm -rf conftest* - -- if test "$cf_with_cxx" = yes ; then -+ if test "x$cf_with_cxx" = xyes ; then - - INTEL_CPLUSPLUS=no - - if test "$GCC" = yes ; then - case $host_os in - linux*|gnu*) -- echo "$as_me:11471: checking if this is really Intel C++ compiler" >&5 -+ echo "$as_me:12476: checking if this is really Intel C++ compiler" >&5 - echo $ECHO_N "checking if this is really Intel C++ compiler... $ECHO_C" >&6 - cf_save_CFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS -no-gcc" - cat >conftest.$ac_ext <<_ACEOF --#line 11476 "configure" -+#line 12481 "configure" - #include "confdefs.h" - - int -@@ -11490,16 +12495,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:11493: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:12498: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11496: \$? = $ac_status" >&5 -+ echo "$as_me:12501: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:11499: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:12504: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11502: \$? = $ac_status" >&5 -+ echo "$as_me:12507: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - INTEL_CPLUSPLUS=yes - cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc" -@@ -11510,12 +12515,61 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - CXXFLAGS="$cf_save_CFLAGS" -- echo "$as_me:11513: result: $INTEL_CPLUSPLUS" >&5 -+ echo "$as_me:12518: result: $INTEL_CPLUSPLUS" >&5 - echo "${ECHO_T}$INTEL_CPLUSPLUS" >&6 - ;; - esac - fi - -+CLANG_CPLUSPLUS=no -+ -+if test "$GCC" = yes ; then -+ echo "$as_me:12527: checking if this is really Clang C++ compiler" >&5 -+echo $ECHO_N "checking if this is really Clang C++ compiler... $ECHO_C" >&6 -+ cf_save_CFLAGS="$CXXFLAGS" -+ CXXFLAGS="$CXXFLAGS -Qunused-arguments" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12532 "configure" -+#include "confdefs.h" -+ -+int -+main () -+{ -+ -+#ifdef __clang__ -+#else -+make an error -+#endif -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:12549: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:12552: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:12555: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:12558: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ CLANG_CPLUSPLUS=yes -+cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments" -+ -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CXXFLAGS="$cf_save_CFLAGS" -+ echo "$as_me:12569: result: $CLANG_CPLUSPLUS" >&5 -+echo "${ECHO_T}$CLANG_CPLUSPLUS" >&6 -+fi -+ - ac_ext=cc - ac_cpp='$CXXCPP $CPPFLAGS' - ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' -@@ -11524,7 +12578,7 @@ - ac_main_return=return - - cat > conftest.$ac_ext <&5 -+ { echo "$as_me:12599: checking for $CC warning options..." >&5 - echo "$as_me: checking for $CC warning options..." >&6;} - cf_save_CXXFLAGS="$CXXFLAGS" - EXTRA_CXXFLAGS="-Wall" -@@ -11559,12 +12613,12 @@ - wd981 - do - CXXFLAGS="$cf_save_CXXFLAGS $EXTRA_CXXFLAGS -$cf_opt" -- if { (eval echo "$as_me:11562: \"$ac_compile\"") >&5 -+ if { (eval echo "$as_me:12616: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11565: \$? = $ac_status" >&5 -+ echo "$as_me:12619: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:11567: result: ... -$cf_opt" >&5 -+ test -n "$verbose" && echo "$as_me:12621: result: ... -$cf_opt" >&5 - echo "${ECHO_T}... -$cf_opt" >&6 - EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS -$cf_opt" - fi -@@ -11573,7 +12627,7 @@ - - elif test "$GXX" = yes - then -- { echo "$as_me:11576: checking for $CXX warning options..." >&5 -+ { echo "$as_me:12630: checking for $CXX warning options..." >&5 - echo "$as_me: checking for $CXX warning options..." >&6;} - cf_save_CXXFLAGS="$CXXFLAGS" - EXTRA_CXXFLAGS="-W -Wall" -@@ -11589,29 +12643,30 @@ - for cf_opt in \ - Wabi \ - fabi-version=0 \ -+ Wextra \ -+ Wignored-qualifiers \ -+ Wlogical-op \ - Woverloaded-virtual \ - Wsign-promo \ - Wsynth \ - Wold-style-cast \ - Wcast-align \ - Wcast-qual \ -- Wmissing-prototypes \ - Wpointer-arith \ - Wshadow \ -- Wstrict-prototypes \ - Wundef $cf_gxx_extra_warnings Wno-unused - do - CXXFLAGS="$cf_save_CXXFLAGS $EXTRA_CXXFLAGS -Werror -$cf_opt" -- if { (eval echo "$as_me:11605: \"$ac_compile\"") >&5 -+ if { (eval echo "$as_me:12660: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11608: \$? = $ac_status" >&5 -+ echo "$as_me:12663: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:11610: result: ... -$cf_opt" >&5 -+ test -n "$verbose" && echo "$as_me:12665: result: ... -$cf_opt" >&5 - echo "${ECHO_T}... -$cf_opt" >&6 - EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS -$cf_opt" - else -- test -n "$verbose" && echo "$as_me:11614: result: ... no -$cf_opt" >&5 -+ test -n "$verbose" && echo "$as_me:12669: result: ... no -$cf_opt" >&5 - echo "${ECHO_T}... no -$cf_opt" >&6 - fi - done -@@ -11647,10 +12702,10 @@ - EOF - if test "$GCC" = yes - then -- { echo "$as_me:11650: checking for $CC __attribute__ directives..." >&5 -+ { echo "$as_me:12705: checking for $CC __attribute__ directives..." >&5 - echo "$as_me: checking for $CC __attribute__ directives..." >&6;} - cat > conftest.$ac_ext <&5 -+ if { (eval echo "$as_me:12757: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11705: \$? = $ac_status" >&5 -+ echo "$as_me:12760: \$? = $ac_status" >&5 - (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:11707: result: ... $cf_attribute" >&5 -+ test -n "$verbose" && echo "$as_me:12762: result: ... $cf_attribute" >&5 - echo "${ECHO_T}... $cf_attribute" >&6 - cat conftest.h >>confdefs.h - case $cf_attribute in #(vi -- printf) #(vi -- if test "$cf_printf_attribute" = no ; then -- cat >>confdefs.h <>confdefs.h <>confdefs.h <>confdefs.h <<\EOF -+#define GCC_PRINTF 1 - EOF -+ - fi -+ -+cat >>confdefs.h <>confdefs.h <>confdefs.h <>confdefs.h <<\EOF -+#define GCC_SCANF 1 - EOF -+ - fi -+ -+cat >>confdefs.h <>confdefs.h <>confdefs.h -+ fgrep define conftest.i >>confdefs.h -+fi -+rm -rf conftest* -+fi -+ -+echo "$as_me:12821: checking if you want to work around bogus compiler/loader warnings" >&5 -+echo $ECHO_N "checking if you want to work around bogus compiler/loader warnings... $ECHO_C" >&6 -+ -+# Check whether --enable-string-hacks or --disable-string-hacks was given. -+if test "${enable_string_hacks+set}" = set; then -+ enableval="$enable_string_hacks" -+ with_string_hacks=$enableval -+else -+ with_string_hacks=no -+fi; -+echo "$as_me:12831: result: $with_string_hacks" >&5 -+echo "${ECHO_T}$with_string_hacks" >&6 -+ -+if test "x$with_string_hacks" = "xyes"; then -+ -+cat >>confdefs.h <<\EOF -+#define USE_STRING_HACKS 1 -+EOF -+ -+ { echo "$as_me:12840: WARNING: enabling string-hacks to work around bogus compiler/loader warnings" >&5 -+echo "$as_me: WARNING: enabling string-hacks to work around bogus compiler/loader warnings" >&2;} -+ -+for ac_func in strlcat strlcpy snprintf -+do -+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -+echo "$as_me:12846: checking for $ac_func" >&5 -+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_var+set}\" = set"; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12852 "configure" -+#include "confdefs.h" -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char $ac_func (); below. */ -+#include -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char $ac_func (); -+char (*f) (); -+ -+int -+main () -+{ -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -+choke me -+#else -+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:12883: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:12886: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:12889: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:12892: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ eval "$as_ac_var=yes" -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+eval "$as_ac_var=no" - fi --rm -rf conftest* -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:12902: result: `eval echo '${'$as_ac_var'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -+if test `eval echo '${'$as_ac_var'}'` = yes; then -+ cat >>confdefs.h <&5 -+echo "$as_me:12915: checking if you want to enable runtime assertions" >&5 - echo $ECHO_N "checking if you want to enable runtime assertions... $ECHO_C" >&6 - - # Check whether --enable-assertions or --disable-assertions was given. -@@ -11750,16 +12922,12 @@ - else - with_assertions=no - fi; --echo "$as_me:11753: result: $with_assertions" >&5 -+echo "$as_me:12925: result: $with_assertions" >&5 - echo "${ECHO_T}$with_assertions" >&6 - if test -n "$GCC" - then - if test "$with_assertions" = no - then -- cat >>confdefs.h <<\EOF --#define NDEBUG 1 --EOF -- - CPPFLAGS="$CPPFLAGS -DNDEBUG" - else - -@@ -11770,13 +12938,14 @@ - - ### use option --disable-leaks to suppress "permanent" leaks, for testing - --echo "$as_me:11773: checking if you want to use dmalloc for testing" >&5 -+echo "$as_me:12941: checking if you want to use dmalloc for testing" >&5 - echo $ECHO_N "checking if you want to use dmalloc for testing... $ECHO_C" >&6 - - # Check whether --with-dmalloc or --without-dmalloc was given. - if test "${with_dmalloc+set}" = set; then - withval="$with_dmalloc" -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <&5 -+echo "$as_me:12958: result: ${with_dmalloc:-no}" >&5 - echo "${ECHO_T}${with_dmalloc:-no}" >&6 - - case .$with_cflags in #(vi -@@ -11880,23 +13049,23 @@ - esac - - if test "$with_dmalloc" = yes ; then -- echo "$as_me:11883: checking for dmalloc.h" >&5 -+ echo "$as_me:13052: checking for dmalloc.h" >&5 - echo $ECHO_N "checking for dmalloc.h... $ECHO_C" >&6 - if test "${ac_cv_header_dmalloc_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 11889 "configure" -+#line 13058 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:11893: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:13062: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:11899: \$? = $ac_status" >&5 -+ echo "$as_me:13068: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -11915,11 +13084,11 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:11918: result: $ac_cv_header_dmalloc_h" >&5 -+echo "$as_me:13087: result: $ac_cv_header_dmalloc_h" >&5 - echo "${ECHO_T}$ac_cv_header_dmalloc_h" >&6 - if test $ac_cv_header_dmalloc_h = yes; then - --echo "$as_me:11922: checking for dmalloc_debug in -ldmalloc" >&5 -+echo "$as_me:13091: checking for dmalloc_debug in -ldmalloc" >&5 - echo $ECHO_N "checking for dmalloc_debug in -ldmalloc... $ECHO_C" >&6 - if test "${ac_cv_lib_dmalloc_dmalloc_debug+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -11927,7 +13096,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-ldmalloc $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 11930 "configure" -+#line 13099 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -11946,16 +13115,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:11949: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13118: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:11952: \$? = $ac_status" >&5 -+ echo "$as_me:13121: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:11955: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13124: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11958: \$? = $ac_status" >&5 -+ echo "$as_me:13127: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dmalloc_dmalloc_debug=yes - else -@@ -11966,7 +13135,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:11969: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5 -+echo "$as_me:13138: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5 - echo "${ECHO_T}$ac_cv_lib_dmalloc_dmalloc_debug" >&6 - if test $ac_cv_lib_dmalloc_dmalloc_debug = yes; then - cat >>confdefs.h <&5 -+echo "$as_me:13153: checking if you want to use dbmalloc for testing" >&5 - echo $ECHO_N "checking if you want to use dbmalloc for testing... $ECHO_C" >&6 - - # Check whether --with-dbmalloc or --without-dbmalloc was given. - if test "${with_dbmalloc+set}" = set; then - withval="$with_dbmalloc" -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <&5 -+echo "$as_me:13170: result: ${with_dbmalloc:-no}" >&5 - echo "${ECHO_T}${with_dbmalloc:-no}" >&6 - - case .$with_cflags in #(vi -@@ -12091,23 +13261,23 @@ - esac - - if test "$with_dbmalloc" = yes ; then -- echo "$as_me:12094: checking for dbmalloc.h" >&5 -+ echo "$as_me:13264: checking for dbmalloc.h" >&5 - echo $ECHO_N "checking for dbmalloc.h... $ECHO_C" >&6 - if test "${ac_cv_header_dbmalloc_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 12100 "configure" -+#line 13270 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:12104: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:13274: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:12110: \$? = $ac_status" >&5 -+ echo "$as_me:13280: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -12126,11 +13296,11 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:12129: result: $ac_cv_header_dbmalloc_h" >&5 -+echo "$as_me:13299: result: $ac_cv_header_dbmalloc_h" >&5 - echo "${ECHO_T}$ac_cv_header_dbmalloc_h" >&6 - if test $ac_cv_header_dbmalloc_h = yes; then - --echo "$as_me:12133: checking for debug_malloc in -ldbmalloc" >&5 -+echo "$as_me:13303: checking for debug_malloc in -ldbmalloc" >&5 - echo $ECHO_N "checking for debug_malloc in -ldbmalloc... $ECHO_C" >&6 - if test "${ac_cv_lib_dbmalloc_debug_malloc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -12138,7 +13308,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-ldbmalloc $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 12141 "configure" -+#line 13311 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -12157,16 +13327,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12160: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13330: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12163: \$? = $ac_status" >&5 -+ echo "$as_me:13333: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12166: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13336: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12169: \$? = $ac_status" >&5 -+ echo "$as_me:13339: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dbmalloc_debug_malloc=yes - else -@@ -12177,7 +13347,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:12180: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5 -+echo "$as_me:13350: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5 - echo "${ECHO_T}$ac_cv_lib_dbmalloc_debug_malloc" >&6 - if test $ac_cv_lib_dbmalloc_debug_malloc = yes; then - cat >>confdefs.h <&5 -+echo "$as_me:13365: checking if you want to use valgrind for testing" >&5 - echo $ECHO_N "checking if you want to use valgrind for testing... $ECHO_C" >&6 - - # Check whether --with-valgrind or --without-valgrind was given. - if test "${with_valgrind+set}" = set; then - withval="$with_valgrind" -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <&5 -+echo "$as_me:13382: result: ${with_valgrind:-no}" >&5 - echo "${ECHO_T}${with_valgrind:-no}" >&6 - - case .$with_cflags in #(vi -@@ -12301,7 +13472,7 @@ - ;; - esac - --echo "$as_me:12304: checking if you want to perform memory-leak testing" >&5 -+echo "$as_me:13475: checking if you want to perform memory-leak testing" >&5 - echo $ECHO_N "checking if you want to perform memory-leak testing... $ECHO_C" >&6 - - # Check whether --enable-leaks or --disable-leaks was given. -@@ -12311,15 +13482,16 @@ - else - : ${with_no_leaks:=no} - fi; --echo "$as_me:12314: result: $with_no_leaks" >&5 -+echo "$as_me:13485: result: $with_no_leaks" >&5 - echo "${ECHO_T}$with_no_leaks" >&6 - - if test "$with_no_leaks" = yes ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define NO_LEAKS 1 - EOF - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define YY_NO_LEAKS 1 - EOF - -@@ -12334,7 +13506,8 @@ - # Check whether --enable-expanded or --disable-expanded was given. - if test "${enable_expanded+set}" = set; then - enableval="$enable_expanded" -- test "$enableval" = yes && cat >>confdefs.h <<\EOF -+ test "x$enableval" = xyes && -+cat >>confdefs.h <<\EOF - #define NCURSES_EXPANDED 1 - EOF - -@@ -12345,7 +13518,8 @@ - # Check whether --enable-macros or --disable-macros was given. - if test "${enable_macros+set}" = set; then - enableval="$enable_macros" -- test "$enableval" = no && cat >>confdefs.h <<\EOF -+ test "$enableval" = no && -+cat >>confdefs.h <<\EOF - #define NCURSES_NOMACROS 1 - EOF - -@@ -12360,7 +13534,7 @@ - ;; - esac - --echo "$as_me:12363: checking whether to add trace feature to all models" >&5 -+echo "$as_me:13537: checking whether to add trace feature to all models" >&5 - echo $ECHO_N "checking whether to add trace feature to all models... $ECHO_C" >&6 - - # Check whether --with-trace or --without-trace was given. -@@ -12370,10 +13544,10 @@ - else - cf_with_trace=$cf_all_traces - fi; --echo "$as_me:12373: result: $cf_with_trace" >&5 -+echo "$as_me:13547: result: $cf_with_trace" >&5 - echo "${ECHO_T}$cf_with_trace" >&6 - --if test "$cf_with_trace" = yes ; then -+if test "x$cf_with_trace" = xyes ; then - LIB_TRACING=all - ADA_TRACE=TRUE - -@@ -12465,13 +13639,13 @@ - *mingw32*) #(vi - ;; - *) --echo "$as_me:12468: checking for gettimeofday" >&5 -+echo "$as_me:13642: checking for gettimeofday" >&5 - echo $ECHO_N "checking for gettimeofday... $ECHO_C" >&6 - if test "${ac_cv_func_gettimeofday+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 12474 "configure" -+#line 13648 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char gettimeofday (); below. */ -@@ -12494,7 +13668,7 @@ - #if defined (__stub_gettimeofday) || defined (__stub___gettimeofday) - choke me - #else --f = gettimeofday; -+f = gettimeofday; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -12502,16 +13676,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12505: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13679: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12508: \$? = $ac_status" >&5 -+ echo "$as_me:13682: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12511: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13685: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12514: \$? = $ac_status" >&5 -+ echo "$as_me:13688: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_gettimeofday=yes - else -@@ -12521,16 +13695,17 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:12524: result: $ac_cv_func_gettimeofday" >&5 -+echo "$as_me:13698: result: $ac_cv_func_gettimeofday" >&5 - echo "${ECHO_T}$ac_cv_func_gettimeofday" >&6 - if test $ac_cv_func_gettimeofday = yes; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_GETTIMEOFDAY 1 - EOF - - else - --echo "$as_me:12533: checking for gettimeofday in -lbsd" >&5 -+echo "$as_me:13708: checking for gettimeofday in -lbsd" >&5 - echo $ECHO_N "checking for gettimeofday in -lbsd... $ECHO_C" >&6 - if test "${ac_cv_lib_bsd_gettimeofday+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -12538,7 +13713,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lbsd $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 12541 "configure" -+#line 13716 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -12557,16 +13732,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12560: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13735: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12563: \$? = $ac_status" >&5 -+ echo "$as_me:13738: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12566: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13741: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12569: \$? = $ac_status" >&5 -+ echo "$as_me:13744: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_bsd_gettimeofday=yes - else -@@ -12577,10 +13752,11 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:12580: result: $ac_cv_lib_bsd_gettimeofday" >&5 -+echo "$as_me:13755: result: $ac_cv_lib_bsd_gettimeofday" >&5 - echo "${ECHO_T}$ac_cv_lib_bsd_gettimeofday" >&6 - if test $ac_cv_lib_bsd_gettimeofday = yes; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_GETTIMEOFDAY 1 - EOF - -@@ -12591,14 +13767,14 @@ - ;; - esac - --echo "$as_me:12594: checking if -lm needed for math functions" >&5 -+echo "$as_me:13770: checking if -lm needed for math functions" >&5 - echo $ECHO_N "checking if -lm needed for math functions... $ECHO_C" >&6 - if test "${cf_cv_need_libm+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 12601 "configure" -+#line 13777 "configure" - #include "confdefs.h" - - #include -@@ -12607,22 +13783,22 @@ - int - main () - { --double x = rand(); printf("result = %g\n", sin(x)) -+double x = rand(); printf("result = %g\n", pow(sin(x),x)) - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12616: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13792: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12619: \$? = $ac_status" >&5 -+ echo "$as_me:13795: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12622: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13798: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12625: \$? = $ac_status" >&5 -+ echo "$as_me:13801: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_need_libm=no - else -@@ -12632,7 +13808,7 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:12635: result: $cf_cv_need_libm" >&5 -+echo "$as_me:13811: result: $cf_cv_need_libm" >&5 - echo "${ECHO_T}$cf_cv_need_libm" >&6 - if test "$cf_cv_need_libm" = yes - then -@@ -12640,13 +13816,13 @@ - fi - - ### Checks for header files. --echo "$as_me:12643: checking for ANSI C header files" >&5 -+echo "$as_me:13819: checking for ANSI C header files" >&5 - echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 - if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 12649 "configure" -+#line 13825 "configure" - #include "confdefs.h" - #include - #include -@@ -12654,13 +13830,13 @@ - #include - - _ACEOF --if { (eval echo "$as_me:12657: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:13833: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:12663: \$? = $ac_status" >&5 -+ echo "$as_me:13839: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -12682,7 +13858,7 @@ - if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF --#line 12685 "configure" -+#line 13861 "configure" - #include "confdefs.h" - #include - -@@ -12700,7 +13876,7 @@ - if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF --#line 12703 "configure" -+#line 13879 "configure" - #include "confdefs.h" - #include - -@@ -12721,7 +13897,7 @@ - : - else - cat >conftest.$ac_ext <<_ACEOF --#line 12724 "configure" -+#line 13900 "configure" - #include "confdefs.h" - #include - #if ((' ' & 0x0FF) == 0x020) -@@ -12747,15 +13923,15 @@ - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:12750: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13926: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12753: \$? = $ac_status" >&5 -+ echo "$as_me:13929: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:12755: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13931: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12758: \$? = $ac_status" >&5 -+ echo "$as_me:13934: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -12768,7 +13944,7 @@ - fi - fi - fi --echo "$as_me:12771: result: $ac_cv_header_stdc" >&5 -+echo "$as_me:13947: result: $ac_cv_header_stdc" >&5 - echo "${ECHO_T}$ac_cv_header_stdc" >&6 - if test $ac_cv_header_stdc = yes; then - -@@ -12781,13 +13957,13 @@ - ac_header_dirent=no - for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do - as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh` --echo "$as_me:12784: checking for $ac_hdr that defines DIR" >&5 -+echo "$as_me:13960: checking for $ac_hdr that defines DIR" >&5 - echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 12790 "configure" -+#line 13966 "configure" - #include "confdefs.h" - #include - #include <$ac_hdr> -@@ -12802,16 +13978,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:12805: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:13981: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:12808: \$? = $ac_status" >&5 -+ echo "$as_me:13984: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:12811: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13987: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12814: \$? = $ac_status" >&5 -+ echo "$as_me:13990: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" - else -@@ -12821,7 +13997,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:12824: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "$as_me:14000: result: `eval echo '${'$as_ac_Header'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <&5 -+ echo "$as_me:14013: checking for opendir in -ldir" >&5 - echo $ECHO_N "checking for opendir in -ldir... $ECHO_C" >&6 - if test "${ac_cv_lib_dir_opendir+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -12842,7 +14018,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-ldir $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 12845 "configure" -+#line 14021 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -12861,16 +14037,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12864: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:14040: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12867: \$? = $ac_status" >&5 -+ echo "$as_me:14043: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12870: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14046: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12873: \$? = $ac_status" >&5 -+ echo "$as_me:14049: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dir_opendir=yes - else -@@ -12881,14 +14057,14 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:12884: result: $ac_cv_lib_dir_opendir" >&5 -+echo "$as_me:14060: result: $ac_cv_lib_dir_opendir" >&5 - echo "${ECHO_T}$ac_cv_lib_dir_opendir" >&6 - if test $ac_cv_lib_dir_opendir = yes; then - LIBS="$LIBS -ldir" - fi - - else -- echo "$as_me:12891: checking for opendir in -lx" >&5 -+ echo "$as_me:14067: checking for opendir in -lx" >&5 - echo $ECHO_N "checking for opendir in -lx... $ECHO_C" >&6 - if test "${ac_cv_lib_x_opendir+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -12896,7 +14072,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lx $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 12899 "configure" -+#line 14075 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -12915,16 +14091,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12918: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:14094: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12921: \$? = $ac_status" >&5 -+ echo "$as_me:14097: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12924: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14100: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12927: \$? = $ac_status" >&5 -+ echo "$as_me:14103: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_x_opendir=yes - else -@@ -12935,7 +14111,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:12938: result: $ac_cv_lib_x_opendir" >&5 -+echo "$as_me:14114: result: $ac_cv_lib_x_opendir" >&5 - echo "${ECHO_T}$ac_cv_lib_x_opendir" >&6 - if test $ac_cv_lib_x_opendir = yes; then - LIBS="$LIBS -lx" -@@ -12943,13 +14119,13 @@ - - fi - --echo "$as_me:12946: checking whether time.h and sys/time.h may both be included" >&5 -+echo "$as_me:14122: checking whether time.h and sys/time.h may both be included" >&5 - echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6 - if test "${ac_cv_header_time+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 12952 "configure" -+#line 14128 "configure" - #include "confdefs.h" - #include - #include -@@ -12965,16 +14141,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:12968: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:14144: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:12971: \$? = $ac_status" >&5 -+ echo "$as_me:14147: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:12974: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14150: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12977: \$? = $ac_status" >&5 -+ echo "$as_me:14153: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_header_time=yes - else -@@ -12984,7 +14160,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:12987: result: $ac_cv_header_time" >&5 -+echo "$as_me:14163: result: $ac_cv_header_time" >&5 - echo "${ECHO_T}$ac_cv_header_time" >&6 - if test $ac_cv_header_time = yes; then - -@@ -12999,17 +14175,17 @@ - cf_regex_libs="regex re" - case $host_os in #(vi - mingw*) -- cf_regex_libs="regex.dll $cf_regex_libs" -+ cf_regex_libs="gnurx $cf_regex_libs" - ;; - esac - --echo "$as_me:13006: checking for regcomp" >&5 -+echo "$as_me:14182: checking for regcomp" >&5 - echo $ECHO_N "checking for regcomp... $ECHO_C" >&6 - if test "${ac_cv_func_regcomp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 13012 "configure" -+#line 14188 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char regcomp (); below. */ -@@ -13032,7 +14208,7 @@ - #if defined (__stub_regcomp) || defined (__stub___regcomp) - choke me - #else --f = regcomp; -+f = regcomp; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -13040,16 +14216,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13043: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:14219: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13046: \$? = $ac_status" >&5 -+ echo "$as_me:14222: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13049: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14225: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13052: \$? = $ac_status" >&5 -+ echo "$as_me:14228: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_regcomp=yes - else -@@ -13059,7 +14235,7 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:13062: result: $ac_cv_func_regcomp" >&5 -+echo "$as_me:14238: result: $ac_cv_func_regcomp" >&5 - echo "${ECHO_T}$ac_cv_func_regcomp" >&6 - if test $ac_cv_func_regcomp = yes; then - cf_regex_func=regcomp -@@ -13068,7 +14244,7 @@ - for cf_regex_lib in $cf_regex_libs - do - as_ac_Lib=`echo "ac_cv_lib_$cf_regex_lib''_regcomp" | $as_tr_sh` --echo "$as_me:13071: checking for regcomp in -l$cf_regex_lib" >&5 -+echo "$as_me:14247: checking for regcomp in -l$cf_regex_lib" >&5 - echo $ECHO_N "checking for regcomp in -l$cf_regex_lib... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Lib+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -13076,7 +14252,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-l$cf_regex_lib $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 13079 "configure" -+#line 14255 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -13095,16 +14271,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13098: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:14274: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13101: \$? = $ac_status" >&5 -+ echo "$as_me:14277: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13104: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14280: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13107: \$? = $ac_status" >&5 -+ echo "$as_me:14283: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Lib=yes" - else -@@ -13115,7 +14291,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:13118: result: `eval echo '${'$as_ac_Lib'}'`" >&5 -+echo "$as_me:14294: result: `eval echo '${'$as_ac_Lib'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 - if test `eval echo '${'$as_ac_Lib'}'` = yes; then - -@@ -13129,13 +14305,13 @@ - fi - - if test "$cf_regex_func" = no ; then -- echo "$as_me:13132: checking for compile" >&5 -+ echo "$as_me:14308: checking for compile" >&5 - echo $ECHO_N "checking for compile... $ECHO_C" >&6 - if test "${ac_cv_func_compile+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 13138 "configure" -+#line 14314 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char compile (); below. */ -@@ -13158,7 +14334,7 @@ - #if defined (__stub_compile) || defined (__stub___compile) - choke me - #else --f = compile; -+f = compile; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -13166,16 +14342,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13169: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:14345: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13172: \$? = $ac_status" >&5 -+ echo "$as_me:14348: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13175: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14351: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13178: \$? = $ac_status" >&5 -+ echo "$as_me:14354: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_compile=yes - else -@@ -13185,13 +14361,13 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:13188: result: $ac_cv_func_compile" >&5 -+echo "$as_me:14364: result: $ac_cv_func_compile" >&5 - echo "${ECHO_T}$ac_cv_func_compile" >&6 - if test $ac_cv_func_compile = yes; then - cf_regex_func=compile - else - -- echo "$as_me:13194: checking for compile in -lgen" >&5 -+ echo "$as_me:14370: checking for compile in -lgen" >&5 - echo $ECHO_N "checking for compile in -lgen... $ECHO_C" >&6 - if test "${ac_cv_lib_gen_compile+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -13199,7 +14375,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lgen $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 13202 "configure" -+#line 14378 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -13218,16 +14394,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13221: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:14397: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13224: \$? = $ac_status" >&5 -+ echo "$as_me:14400: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13227: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14403: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13230: \$? = $ac_status" >&5 -+ echo "$as_me:14406: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_gen_compile=yes - else -@@ -13238,7 +14414,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:13241: result: $ac_cv_lib_gen_compile" >&5 -+echo "$as_me:14417: result: $ac_cv_lib_gen_compile" >&5 - echo "${ECHO_T}$ac_cv_lib_gen_compile" >&6 - if test $ac_cv_lib_gen_compile = yes; then - -@@ -13251,11 +14427,11 @@ - fi - - if test "$cf_regex_func" = no ; then -- { echo "$as_me:13254: WARNING: cannot find regular expression library" >&5 -+ { echo "$as_me:14430: WARNING: cannot find regular expression library" >&5 - echo "$as_me: WARNING: cannot find regular expression library" >&2;} - fi - --echo "$as_me:13258: checking for regular-expression headers" >&5 -+echo "$as_me:14434: checking for regular-expression headers" >&5 - echo $ECHO_N "checking for regular-expression headers... $ECHO_C" >&6 - if test "${cf_cv_regex_hdrs+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -13267,7 +14443,7 @@ - for cf_regex_hdr in regexp.h regexpr.h - do - cat >conftest.$ac_ext <<_ACEOF --#line 13270 "configure" -+#line 14446 "configure" - #include "confdefs.h" - #include <$cf_regex_hdr> - int -@@ -13282,16 +14458,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13285: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:14461: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13288: \$? = $ac_status" >&5 -+ echo "$as_me:14464: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13291: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14467: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13294: \$? = $ac_status" >&5 -+ echo "$as_me:14470: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_regex_hdrs=$cf_regex_hdr -@@ -13308,7 +14484,7 @@ - for cf_regex_hdr in regex.h - do - cat >conftest.$ac_ext <<_ACEOF --#line 13311 "configure" -+#line 14487 "configure" - #include "confdefs.h" - #include - #include <$cf_regex_hdr> -@@ -13326,16 +14502,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13329: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:14505: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13332: \$? = $ac_status" >&5 -+ echo "$as_me:14508: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13335: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14511: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13338: \$? = $ac_status" >&5 -+ echo "$as_me:14514: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_regex_hdrs=$cf_regex_hdr -@@ -13351,21 +14527,24 @@ - esac - - fi --echo "$as_me:13354: result: $cf_cv_regex_hdrs" >&5 -+echo "$as_me:14530: result: $cf_cv_regex_hdrs" >&5 - echo "${ECHO_T}$cf_cv_regex_hdrs" >&6 - - case $cf_cv_regex_hdrs in #(vi -- no) { echo "$as_me:13358: WARNING: no regular expression header found" >&5 -+ no) { echo "$as_me:14534: WARNING: no regular expression header found" >&5 - echo "$as_me: WARNING: no regular expression header found" >&2;} ;; #(vi -- regex.h) cat >>confdefs.h <<\EOF -+ regex.h) -+cat >>confdefs.h <<\EOF - #define HAVE_REGEX_H_FUNCS 1 - EOF - ;; #(vi -- regexp.h) cat >>confdefs.h <<\EOF -+ regexp.h) -+cat >>confdefs.h <<\EOF - #define HAVE_REGEXP_H_FUNCS 1 - EOF - ;; #(vi -- regexpr.h) cat >>confdefs.h <<\EOF -+ regexpr.h) -+cat >>confdefs.h <<\EOF - #define HAVE_REGEXPR_H_FUNCS 1 - EOF - ;; -@@ -13391,23 +14570,71 @@ - - do - as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:13394: checking for $ac_header" >&5 -+echo "$as_me:14573: checking for $ac_header" >&5 -+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Header+set}\" = set"; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 14579 "configure" -+#include "confdefs.h" -+#include <$ac_header> -+_ACEOF -+if { (eval echo "$as_me:14583: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:14589: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ eval "$as_ac_Header=yes" -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ eval "$as_ac_Header=no" -+fi -+rm -f conftest.err conftest.$ac_ext -+fi -+echo "$as_me:14608: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -+if test `eval echo '${'$as_ac_Header'}'` = yes; then -+ cat >>confdefs.h <&5 - echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 13400 "configure" -+#line 14627 "configure" - #include "confdefs.h" - #include <$ac_header> - _ACEOF --if { (eval echo "$as_me:13404: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:14631: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:13410: \$? = $ac_status" >&5 -+ echo "$as_me:14637: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -13426,7 +14653,7 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:13429: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "$as_me:14656: result: `eval echo '${'$as_ac_Header'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <&5 -+echo $ECHO_N "checking for header declaring getopt variables... $ECHO_C" >&6 -+if test "${cf_cv_getopt_header+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+cf_cv_getopt_header=none -+for cf_header in stdio.h stdlib.h unistd.h getopt.h -+do -+cat >conftest.$ac_ext <<_ACEOF -+#line 14676 "configure" -+#include "confdefs.h" -+ -+#include <$cf_header> -+int -+main () -+{ -+int x = optind; char *y = optarg -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:14689: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:14692: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:14695: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:14698: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_getopt_header=$cf_header -+ break -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+done -+ -+fi -+echo "$as_me:14710: result: $cf_cv_getopt_header" >&5 -+echo "${ECHO_T}$cf_cv_getopt_header" >&6 -+if test $cf_cv_getopt_header != none ; then -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_GETOPT_HEADER 1 -+EOF -+ -+fi -+ - # check for ISC (this may also define _POSIX_SOURCE) - # Note: even non-Posix ISC needs to declare fd_set --if test "$ISC" = yes ; then -+if test "x$ISC" = xyes ; then - --echo "$as_me:13443: checking for main in -lcposix" >&5 -+echo "$as_me:14724: checking for main in -lcposix" >&5 - echo $ECHO_N "checking for main in -lcposix... $ECHO_C" >&6 - if test "${ac_cv_lib_cposix_main+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -13448,7 +14729,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lcposix $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 13451 "configure" -+#line 14732 "configure" - #include "confdefs.h" - - int -@@ -13460,16 +14741,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13463: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:14744: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13466: \$? = $ac_status" >&5 -+ echo "$as_me:14747: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13469: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14750: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13472: \$? = $ac_status" >&5 -+ echo "$as_me:14753: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_cposix_main=yes - else -@@ -13480,7 +14761,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:13483: result: $ac_cv_lib_cposix_main" >&5 -+echo "$as_me:14764: result: $ac_cv_lib_cposix_main" >&5 - echo "${ECHO_T}$ac_cv_lib_cposix_main" >&6 - if test $ac_cv_lib_cposix_main = yes; then - cat >>confdefs.h <&5 -+ echo "$as_me:14775: checking for bzero in -linet" >&5 - echo $ECHO_N "checking for bzero in -linet... $ECHO_C" >&6 - if test "${ac_cv_lib_inet_bzero+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -13499,7 +14780,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-linet $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 13502 "configure" -+#line 14783 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -13518,16 +14799,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13521: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:14802: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13524: \$? = $ac_status" >&5 -+ echo "$as_me:14805: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13527: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14808: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13530: \$? = $ac_status" >&5 -+ echo "$as_me:14811: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_inet_bzero=yes - else -@@ -13538,21 +14819,21 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:13541: result: $ac_cv_lib_inet_bzero" >&5 -+echo "$as_me:14822: result: $ac_cv_lib_inet_bzero" >&5 - echo "${ECHO_T}$ac_cv_lib_inet_bzero" >&6 - if test $ac_cv_lib_inet_bzero = yes; then - LIBS="-linet $LIBS" - fi - fi - --echo "$as_me:13548: checking if sys/time.h works with sys/select.h" >&5 -+echo "$as_me:14829: checking if sys/time.h works with sys/select.h" >&5 - echo $ECHO_N "checking if sys/time.h works with sys/select.h... $ECHO_C" >&6 - if test "${cf_cv_sys_time_select+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 13555 "configure" -+#line 14836 "configure" - #include "confdefs.h" - - #include -@@ -13572,16 +14853,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:13575: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:14856: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13578: \$? = $ac_status" >&5 -+ echo "$as_me:14859: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13581: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14862: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13584: \$? = $ac_status" >&5 -+ echo "$as_me:14865: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_sys_time_select=yes - else -@@ -13593,9 +14874,10 @@ - - fi - --echo "$as_me:13596: result: $cf_cv_sys_time_select" >&5 -+echo "$as_me:14877: result: $cf_cv_sys_time_select" >&5 - echo "${ECHO_T}$cf_cv_sys_time_select" >&6 --test "$cf_cv_sys_time_select" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_sys_time_select" = yes && -+cat >>confdefs.h <<\EOF - #define HAVE_SYS_TIME_SELECT 1 - EOF - -@@ -13607,104 +14889,13 @@ - ac_compiler_gnu=$ac_cv_c_compiler_gnu - ac_main_return=return - --echo "$as_me:13610: checking for $CC option to accept ANSI C" >&5 --echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 --if test "${ac_cv_prog_cc_stdc+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_cv_prog_cc_stdc=no --ac_save_CC=$CC --cat >conftest.$ac_ext <<_ACEOF --#line 13618 "configure" --#include "confdefs.h" --#include --#include --#include --#include --/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ --struct buf { int x; }; --FILE * (*rcsopen) (struct buf *, struct stat *, int); --static char *e (p, i) -- char **p; -- int i; --{ -- return p[i]; --} --static char *f (char * (*g) (char **, int), char **p, ...) --{ -- char *s; -- va_list v; -- va_start (v,p); -- s = g (p, va_arg (v,int)); -- va_end (v); -- return s; --} --int test (int i, double x); --struct s1 {int (*f) (int a);}; --struct s2 {int (*f) (double a);}; --int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); --int argc; --char **argv; --int --main () --{ --return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; -- ; -- return 0; --} --_ACEOF --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX 10.20 and later -Ae --# HP-UX older versions -Aa -D_HPUX_SOURCE --# SVR4 -Xc -D__EXTENSIONS__ --for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" --do -- CC="$ac_save_CC $ac_arg" -- rm -f conftest.$ac_objext --if { (eval echo "$as_me:13667: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:13670: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13673: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:13676: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_prog_cc_stdc=$ac_arg --break --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --fi --rm -f conftest.$ac_objext --done --rm -f conftest.$ac_ext conftest.$ac_objext --CC=$ac_save_CC -- --fi -- --case "x$ac_cv_prog_cc_stdc" in -- x|xno) -- echo "$as_me:13693: result: none needed" >&5 --echo "${ECHO_T}none needed" >&6 ;; -- *) -- echo "$as_me:13696: result: $ac_cv_prog_cc_stdc" >&5 --echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 -- CC="$CC $ac_cv_prog_cc_stdc" ;; --esac -- --echo "$as_me:13701: checking for an ANSI C-conforming const" >&5 -+echo "$as_me:14892: checking for an ANSI C-conforming const" >&5 - echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6 - if test "${ac_cv_c_const+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 13707 "configure" -+#line 14898 "configure" - #include "confdefs.h" - - int -@@ -13762,16 +14953,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:13765: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:14956: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13768: \$? = $ac_status" >&5 -+ echo "$as_me:14959: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13771: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14962: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13774: \$? = $ac_status" >&5 -+ echo "$as_me:14965: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_c_const=yes - else -@@ -13781,7 +14972,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:13784: result: $ac_cv_c_const" >&5 -+echo "$as_me:14975: result: $ac_cv_c_const" >&5 - echo "${ECHO_T}$ac_cv_c_const" >&6 - if test $ac_cv_c_const = no; then - -@@ -13791,7 +14982,7 @@ - - fi - --echo "$as_me:13794: checking for inline" >&5 -+echo "$as_me:14985: checking for inline" >&5 - echo $ECHO_N "checking for inline... $ECHO_C" >&6 - if test "${ac_cv_c_inline+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -13799,7 +14990,7 @@ - ac_cv_c_inline=no - for ac_kw in inline __inline__ __inline; do - cat >conftest.$ac_ext <<_ACEOF --#line 13802 "configure" -+#line 14993 "configure" - #include "confdefs.h" - #ifndef __cplusplus - static $ac_kw int static_foo () {return 0; } -@@ -13808,16 +14999,16 @@ - - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:13811: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:15002: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13814: \$? = $ac_status" >&5 -+ echo "$as_me:15005: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13817: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15008: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13820: \$? = $ac_status" >&5 -+ echo "$as_me:15011: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_c_inline=$ac_kw; break - else -@@ -13828,7 +15019,7 @@ - done - - fi --echo "$as_me:13831: result: $ac_cv_c_inline" >&5 -+echo "$as_me:15022: result: $ac_cv_c_inline" >&5 - echo "${ECHO_T}$ac_cv_c_inline" >&6 - case $ac_cv_c_inline in - inline | yes) ;; -@@ -13849,9 +15040,12 @@ - if test "$INTEL_COMPILER" = yes - then - : -+ elif test "$CLANG_COMPILER" = yes -+ then -+ : - elif test "$GCC" = yes - then -- echo "$as_me:13854: checking if $CC supports options to tune inlining" >&5 -+ echo "$as_me:15048: checking if $CC supports options to tune inlining" >&5 - echo $ECHO_N "checking if $CC supports options to tune inlining... $ECHO_C" >&6 - if test "${cf_cv_gcc_inline+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -13860,7 +15054,7 @@ - cf_save_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS --param max-inline-insns-single=1200" - cat >conftest.$ac_ext <<_ACEOF --#line 13863 "configure" -+#line 15057 "configure" - #include "confdefs.h" - inline int foo(void) { return 1; } - int -@@ -13872,16 +15066,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:13875: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:15069: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13878: \$? = $ac_status" >&5 -+ echo "$as_me:15072: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13881: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15075: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13884: \$? = $ac_status" >&5 -+ echo "$as_me:15078: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_gcc_inline=yes - else -@@ -13893,7 +15087,7 @@ - CFLAGS=$cf_save_CFLAGS - - fi --echo "$as_me:13896: result: $cf_cv_gcc_inline" >&5 -+echo "$as_me:15090: result: $cf_cv_gcc_inline" >&5 - echo "${ECHO_T}$cf_cv_gcc_inline" >&6 - if test "$cf_cv_gcc_inline" = yes ; then - -@@ -13979,7 +15173,7 @@ - fi - fi - --echo "$as_me:13982: checking for signal global datatype" >&5 -+echo "$as_me:15176: checking for signal global datatype" >&5 - echo $ECHO_N "checking for signal global datatype... $ECHO_C" >&6 - if test "${cf_cv_sig_atomic_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -13991,7 +15185,7 @@ - "int" - do - cat >conftest.$ac_ext <<_ACEOF --#line 13994 "configure" -+#line 15188 "configure" - #include "confdefs.h" - - #include -@@ -14014,16 +15208,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14017: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:15211: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14020: \$? = $ac_status" >&5 -+ echo "$as_me:15214: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14023: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15217: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14026: \$? = $ac_status" >&5 -+ echo "$as_me:15220: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_sig_atomic_t=$cf_type - else -@@ -14037,15 +15231,16 @@ - - fi - --echo "$as_me:14040: result: $cf_cv_sig_atomic_t" >&5 -+echo "$as_me:15234: result: $cf_cv_sig_atomic_t" >&5 - echo "${ECHO_T}$cf_cv_sig_atomic_t" >&6 --test "$cf_cv_sig_atomic_t" != no && cat >>confdefs.h <>confdefs.h <&5 -+echo "$as_me:15243: checking for type of chtype" >&5 - echo $ECHO_N "checking for type of chtype... $ECHO_C" >&6 - if test "${cf_cv_typeof_chtype+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -14055,7 +15250,7 @@ - cf_cv_typeof_chtype=long - else - cat >conftest.$ac_ext <<_ACEOF --#line 14058 "configure" -+#line 15253 "configure" - #include "confdefs.h" - - #define WANT_BITS 31 -@@ -14090,15 +15285,15 @@ - - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:14093: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:15288: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14096: \$? = $ac_status" >&5 -+ echo "$as_me:15291: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:14098: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15293: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14101: \$? = $ac_status" >&5 -+ echo "$as_me:15296: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_typeof_chtype=`cat cf_test.out` - else -@@ -14113,7 +15308,7 @@ - - fi - --echo "$as_me:14116: result: $cf_cv_typeof_chtype" >&5 -+echo "$as_me:15311: result: $cf_cv_typeof_chtype" >&5 - echo "${ECHO_T}$cf_cv_typeof_chtype" >&6 - - cat >>confdefs.h <&5 -+echo "$as_me:15323: checking if unsigned literals are legal" >&5 - echo $ECHO_N "checking if unsigned literals are legal... $ECHO_C" >&6 - if test "${cf_cv_unsigned_literals+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 14135 "configure" -+#line 15330 "configure" - #include "confdefs.h" - - int -@@ -14144,16 +15339,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14147: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:15342: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14150: \$? = $ac_status" >&5 -+ echo "$as_me:15345: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14153: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15348: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14156: \$? = $ac_status" >&5 -+ echo "$as_me:15351: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_unsigned_literals=yes - else -@@ -14165,7 +15360,7 @@ - - fi - --echo "$as_me:14168: result: $cf_cv_unsigned_literals" >&5 -+echo "$as_me:15363: result: $cf_cv_unsigned_literals" >&5 - echo "${ECHO_T}$cf_cv_unsigned_literals" >&6 - - cf_cv_1UL="1" -@@ -14181,14 +15376,14 @@ - - ### Checks for external-data - --echo "$as_me:14184: checking if external errno is declared" >&5 -+echo "$as_me:15379: checking if external errno is declared" >&5 - echo $ECHO_N "checking if external errno is declared... $ECHO_C" >&6 - if test "${cf_cv_dcl_errno+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 14191 "configure" -+#line 15386 "configure" - #include "confdefs.h" - - #ifdef HAVE_STDLIB_H -@@ -14206,16 +15401,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14209: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:15404: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14212: \$? = $ac_status" >&5 -+ echo "$as_me:15407: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14215: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15410: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14218: \$? = $ac_status" >&5 -+ echo "$as_me:15413: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_dcl_errno=yes - else -@@ -14226,7 +15421,7 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:14229: result: $cf_cv_dcl_errno" >&5 -+echo "$as_me:15424: result: $cf_cv_dcl_errno" >&5 - echo "${ECHO_T}$cf_cv_dcl_errno" >&6 - - if test "$cf_cv_dcl_errno" = no ; then -@@ -14241,14 +15436,14 @@ - - # It's possible (for near-UNIX clones) that the data doesn't exist - --echo "$as_me:14244: checking if external errno exists" >&5 -+echo "$as_me:15439: checking if external errno exists" >&5 - echo $ECHO_N "checking if external errno exists... $ECHO_C" >&6 - if test "${cf_cv_have_errno+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 14251 "configure" -+#line 15446 "configure" - #include "confdefs.h" - - #undef errno -@@ -14263,16 +15458,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14266: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:15461: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14269: \$? = $ac_status" >&5 -+ echo "$as_me:15464: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:14272: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15467: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14275: \$? = $ac_status" >&5 -+ echo "$as_me:15470: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_have_errno=yes - else -@@ -14283,7 +15478,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - - fi --echo "$as_me:14286: result: $cf_cv_have_errno" >&5 -+echo "$as_me:15481: result: $cf_cv_have_errno" >&5 - echo "${ECHO_T}$cf_cv_have_errno" >&6 - - if test "$cf_cv_have_errno" = yes ; then -@@ -14296,7 +15491,7 @@ - - fi - --echo "$as_me:14299: checking if data-only library module links" >&5 -+echo "$as_me:15494: checking if data-only library module links" >&5 - echo $ECHO_N "checking if data-only library module links... $ECHO_C" >&6 - if test "${cf_cv_link_dataonly+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -14304,20 +15499,20 @@ - - rm -f conftest.a - cat >conftest.$ac_ext <&5 -+ if { (eval echo "$as_me:15505: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14313: \$? = $ac_status" >&5 -+ echo "$as_me:15508: \$? = $ac_status" >&5 - (exit $ac_status); } ; then - mv conftest.o data.o && \ - ( $AR $ARFLAGS conftest.a data.o ) 2>&5 1>/dev/null - fi - rm -f conftest.$ac_ext data.o - cat >conftest.$ac_ext <&5 -+ if { (eval echo "$as_me:15528: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14336: \$? = $ac_status" >&5 -+ echo "$as_me:15531: \$? = $ac_status" >&5 - (exit $ac_status); }; then - mv conftest.o func.o && \ - ( $AR $ARFLAGS conftest.a func.o ) 2>&5 1>/dev/null -@@ -14346,7 +15541,7 @@ - cf_cv_link_dataonly=unknown - else - cat >conftest.$ac_ext <<_ACEOF --#line 14349 "configure" -+#line 15544 "configure" - #include "confdefs.h" - - int main() -@@ -14357,15 +15552,15 @@ - - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:14360: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:15555: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14363: \$? = $ac_status" >&5 -+ echo "$as_me:15558: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:14365: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15560: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14368: \$? = $ac_status" >&5 -+ echo "$as_me:15563: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_link_dataonly=yes - else -@@ -14380,11 +15575,12 @@ - - fi - --echo "$as_me:14383: result: $cf_cv_link_dataonly" >&5 -+echo "$as_me:15578: result: $cf_cv_link_dataonly" >&5 - echo "${ECHO_T}$cf_cv_link_dataonly" >&6 - - if test "$cf_cv_link_dataonly" = no ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define BROKEN_LINKER 1 - EOF - -@@ -14400,10 +15596,12 @@ - getttynam \ - issetugid \ - poll \ -+putenv \ - remove \ - select \ - setbuf \ - setbuffer \ -+setenv \ - setvbuf \ - sigaction \ - sigvec \ -@@ -14415,13 +15613,13 @@ - - do - as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` --echo "$as_me:14418: checking for $ac_func" >&5 -+echo "$as_me:15616: checking for $ac_func" >&5 - echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 - if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 14424 "configure" -+#line 15622 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. */ -@@ -14444,7 +15642,7 @@ - #if defined (__stub_$ac_func) || defined (__stub___$ac_func) - choke me - #else --f = $ac_func; -+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -14452,45 +15650,102 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14455: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:15653: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:15656: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:15659: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:15662: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ eval "$as_ac_var=yes" -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+eval "$as_ac_var=no" -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:15672: result: `eval echo '${'$as_ac_var'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -+if test `eval echo '${'$as_ac_var'}'` = yes; then -+ cat >>confdefs.h <&5 -+echo $ECHO_N "checking for terminal-capability database functions... $ECHO_C" >&6 -+if test "${cf_cv_cgetent+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+cat >conftest.$ac_ext <<_ACEOF -+#line 15691 "configure" -+#include "confdefs.h" -+ -+#include -+int -+main () -+{ -+ -+ char temp[128]; -+ char *buf = temp; -+ char *db_array = temp; -+ cgetent(&buf, &db_array, "vt100"); -+ cgetcap(buf, "tc", '='); -+ cgetmatch(buf, "tc"); -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:15711: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14458: \$? = $ac_status" >&5 -+ echo "$as_me:15714: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:14461: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15717: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14464: \$? = $ac_status" >&5 -+ echo "$as_me:15720: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- eval "$as_ac_var=yes" -+ cf_cv_cgetent=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --eval "$as_ac_var=no" -+cf_cv_cgetent=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:14474: result: `eval echo '${'$as_ac_var'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 --if test `eval echo '${'$as_ac_var'}'` = yes; then -- cat >>confdefs.h <&5 -+echo "${ECHO_T}$cf_cv_cgetent" >&6 - --if test "$with_getcap" = "yes" ; then -+if test "$cf_cv_cgetent" = yes -+then - --echo "$as_me:14486: checking for terminal-capability database functions" >&5 --echo $ECHO_N "checking for terminal-capability database functions... $ECHO_C" >&6 --if test "${cf_cv_cgetent+set}" = set; then -+cat >>confdefs.h <<\EOF -+#define HAVE_BSD_CGETENT 1 -+EOF -+ -+echo "$as_me:15741: checking if cgetent uses const parameter" >&5 -+echo $ECHO_N "checking if cgetent uses const parameter... $ECHO_C" >&6 -+if test "${cf_cv_cgetent_const+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 14493 "configure" -+#line 15748 "configure" - #include "confdefs.h" - - #include -@@ -14500,8 +15755,10 @@ - - char temp[128]; - char *buf = temp; -- char *db_array = temp; -- cgetent(&buf, /* int *, */ &db_array, "vt100"); -+#ifndef _NETBSD_SOURCE /* given, since April 2004 in stdlib.h */ -+ const char *db_array = temp; -+ cgetent(&buf, &db_array, "vt100"); -+#endif - cgetcap(buf, "tc", '='); - cgetmatch(buf, "tc"); - -@@ -14510,43 +15767,48 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14513: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:15770: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14516: \$? = $ac_status" >&5 -+ echo "$as_me:15773: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:14519: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15776: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14522: \$? = $ac_status" >&5 -+ echo "$as_me:15779: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_cgetent=yes -+ cf_cv_cgetent_const=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_cgetent=no -+cf_cv_cgetent_const=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - - fi -+echo "$as_me:15790: result: $cf_cv_cgetent_const" >&5 -+echo "${ECHO_T}$cf_cv_cgetent_const" >&6 -+ if test "$cf_cv_cgetent_const" = yes -+ then - --echo "$as_me:14534: result: $cf_cv_cgetent" >&5 --echo "${ECHO_T}$cf_cv_cgetent" >&6 --test "$cf_cv_cgetent" = yes && cat >>confdefs.h <<\EOF --#define HAVE_BSD_CGETENT 1 -+cat >>confdefs.h <&5 -+echo "$as_me:15804: checking for isascii" >&5 - echo $ECHO_N "checking for isascii... $ECHO_C" >&6 - if test "${cf_cv_have_isascii+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 14549 "configure" -+#line 15811 "configure" - #include "confdefs.h" - #include - int -@@ -14558,16 +15820,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14561: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:15823: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14564: \$? = $ac_status" >&5 -+ echo "$as_me:15826: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:14567: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15829: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14570: \$? = $ac_status" >&5 -+ echo "$as_me:15832: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_have_isascii=yes - else -@@ -14578,17 +15840,18 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - - fi --echo "$as_me:14581: result: $cf_cv_have_isascii" >&5 -+echo "$as_me:15843: result: $cf_cv_have_isascii" >&5 - echo "${ECHO_T}$cf_cv_have_isascii" >&6 --test "$cf_cv_have_isascii" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_have_isascii" = yes && -+cat >>confdefs.h <<\EOF - #define HAVE_ISASCII 1 - EOF - - if test "$ac_cv_func_sigaction" = yes; then --echo "$as_me:14588: checking whether sigaction needs _POSIX_SOURCE" >&5 -+echo "$as_me:15851: checking whether sigaction needs _POSIX_SOURCE" >&5 - echo $ECHO_N "checking whether sigaction needs _POSIX_SOURCE... $ECHO_C" >&6 - cat >conftest.$ac_ext <<_ACEOF --#line 14591 "configure" -+#line 15854 "configure" - #include "confdefs.h" - - #include -@@ -14602,16 +15865,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14605: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:15868: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14608: \$? = $ac_status" >&5 -+ echo "$as_me:15871: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14611: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15874: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14614: \$? = $ac_status" >&5 -+ echo "$as_me:15877: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - sigact_bad=no - else -@@ -14619,7 +15882,7 @@ - cat conftest.$ac_ext >&5 - - cat >conftest.$ac_ext <<_ACEOF --#line 14622 "configure" -+#line 15885 "configure" - #include "confdefs.h" - - #define _POSIX_SOURCE -@@ -14634,20 +15897,21 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14637: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:15900: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14640: \$? = $ac_status" >&5 -+ echo "$as_me:15903: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14643: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15906: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14646: \$? = $ac_status" >&5 -+ echo "$as_me:15909: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - sigact_bad=yes -- cat >>confdefs.h <<\EOF --#define SVR4_ACTION 1 -+ -+cat >>confdefs.h <<\EOF -+#define _POSIX_SOURCE 1 - EOF - - else -@@ -14658,11 +15922,11 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - fi - rm -f conftest.$ac_objext conftest.$ac_ext --echo "$as_me:14661: result: $sigact_bad" >&5 -+echo "$as_me:15925: result: $sigact_bad" >&5 - echo "${ECHO_T}$sigact_bad" >&6 - fi - --echo "$as_me:14665: checking if nanosleep really works" >&5 -+echo "$as_me:15929: checking if nanosleep really works" >&5 - echo $ECHO_N "checking if nanosleep really works... $ECHO_C" >&6 - if test "${cf_cv_func_nanosleep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -14672,7 +15936,7 @@ - cf_cv_func_nanosleep=unknown - else - cat >conftest.$ac_ext <<_ACEOF --#line 14675 "configure" -+#line 15939 "configure" - #include "confdefs.h" - - #include -@@ -14697,15 +15961,15 @@ - - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:14700: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:15964: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14703: \$? = $ac_status" >&5 -+ echo "$as_me:15967: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:14705: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15969: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14708: \$? = $ac_status" >&5 -+ echo "$as_me:15972: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_func_nanosleep=yes - else -@@ -14717,10 +15981,11 @@ - rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext - fi - fi --echo "$as_me:14720: result: $cf_cv_func_nanosleep" >&5 -+echo "$as_me:15984: result: $cf_cv_func_nanosleep" >&5 - echo "${ECHO_T}$cf_cv_func_nanosleep" >&6 - --test "$cf_cv_func_nanosleep" = "yes" && cat >>confdefs.h <<\EOF -+test "$cf_cv_func_nanosleep" = "yes" && -+cat >>confdefs.h <<\EOF - #define HAVE_NANOSLEEP 1 - EOF - -@@ -14731,23 +15996,23 @@ - - do - as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:14734: checking for $ac_header" >&5 -+echo "$as_me:15999: checking for $ac_header" >&5 - echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 14740 "configure" -+#line 16005 "configure" - #include "confdefs.h" - #include <$ac_header> - _ACEOF --if { (eval echo "$as_me:14744: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:16009: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:14750: \$? = $ac_status" >&5 -+ echo "$as_me:16015: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -14766,7 +16031,7 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:14769: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "$as_me:16034: result: `eval echo '${'$as_ac_Header'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <&5 -+echo "$as_me:16049: checking for $ac_header" >&5 - echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 14790 "configure" -+#line 16055 "configure" - #include "confdefs.h" - #include <$ac_header> - _ACEOF --if { (eval echo "$as_me:14794: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:16059: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:14800: \$? = $ac_status" >&5 -+ echo "$as_me:16065: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -14816,7 +16081,7 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:14819: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "$as_me:16084: result: `eval echo '${'$as_ac_Header'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <&5 -+ echo "$as_me:16102: checking whether termios.h needs _POSIX_SOURCE" >&5 - echo $ECHO_N "checking whether termios.h needs _POSIX_SOURCE... $ECHO_C" >&6 - cat >conftest.$ac_ext <<_ACEOF --#line 14840 "configure" -+#line 16105 "configure" - #include "confdefs.h" - #include - int -@@ -14849,16 +16114,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14852: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:16117: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14855: \$? = $ac_status" >&5 -+ echo "$as_me:16120: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14858: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16123: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14861: \$? = $ac_status" >&5 -+ echo "$as_me:16126: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - termios_bad=no - else -@@ -14866,7 +16131,7 @@ - cat conftest.$ac_ext >&5 - - cat >conftest.$ac_ext <<_ACEOF --#line 14869 "configure" -+#line 16134 "configure" - #include "confdefs.h" - - #define _POSIX_SOURCE -@@ -14880,23 +16145,24 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14883: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:16148: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14886: \$? = $ac_status" >&5 -+ echo "$as_me:16151: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14889: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16154: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14892: \$? = $ac_status" >&5 -+ echo "$as_me:16157: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - termios_bad=unknown - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --termios_bad=yes cat >>confdefs.h <<\EOF --#define SVR4_TERMIO 1 -+termios_bad=yes -+cat >>confdefs.h <<\EOF -+#define _POSIX_SOURCE 1 - EOF - - fi -@@ -14904,19 +16170,19 @@ - - fi - rm -f conftest.$ac_objext conftest.$ac_ext -- echo "$as_me:14907: result: $termios_bad" >&5 -+ echo "$as_me:16173: result: $termios_bad" >&5 - echo "${ECHO_T}$termios_bad" >&6 - fi - fi - --echo "$as_me:14912: checking for tcgetattr" >&5 -+echo "$as_me:16178: checking for tcgetattr" >&5 - echo $ECHO_N "checking for tcgetattr... $ECHO_C" >&6 - if test "${cf_cv_have_tcgetattr+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 14919 "configure" -+#line 16185 "configure" - #include "confdefs.h" - - #include -@@ -14944,16 +16210,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14947: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:16213: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14950: \$? = $ac_status" >&5 -+ echo "$as_me:16216: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:14953: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16219: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14956: \$? = $ac_status" >&5 -+ echo "$as_me:16222: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_have_tcgetattr=yes - else -@@ -14963,20 +16229,21 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:14966: result: $cf_cv_have_tcgetattr" >&5 -+echo "$as_me:16232: result: $cf_cv_have_tcgetattr" >&5 - echo "${ECHO_T}$cf_cv_have_tcgetattr" >&6 --test "$cf_cv_have_tcgetattr" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_have_tcgetattr" = yes && -+cat >>confdefs.h <<\EOF - #define HAVE_TCGETATTR 1 - EOF - --echo "$as_me:14972: checking for vsscanf function or workaround" >&5 -+echo "$as_me:16239: checking for vsscanf function or workaround" >&5 - echo $ECHO_N "checking for vsscanf function or workaround... $ECHO_C" >&6 - if test "${cf_cv_func_vsscanf+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 14979 "configure" -+#line 16246 "configure" - #include "confdefs.h" - - #include -@@ -14992,16 +16259,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14995: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:16262: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14998: \$? = $ac_status" >&5 -+ echo "$as_me:16265: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:15001: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16268: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15004: \$? = $ac_status" >&5 -+ echo "$as_me:16271: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_func_vsscanf=vsscanf - else -@@ -15009,7 +16276,7 @@ - cat conftest.$ac_ext >&5 - - cat >conftest.$ac_ext <<_ACEOF --#line 15012 "configure" -+#line 16279 "configure" - #include "confdefs.h" - - #include -@@ -15031,16 +16298,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:15034: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:16301: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15037: \$? = $ac_status" >&5 -+ echo "$as_me:16304: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:15040: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16307: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15043: \$? = $ac_status" >&5 -+ echo "$as_me:16310: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_func_vsscanf=vfscanf - else -@@ -15048,7 +16315,7 @@ - cat conftest.$ac_ext >&5 - - cat >conftest.$ac_ext <<_ACEOF --#line 15051 "configure" -+#line 16318 "configure" - #include "confdefs.h" - - #include -@@ -15070,16 +16337,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:15073: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:16340: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15076: \$? = $ac_status" >&5 -+ echo "$as_me:16343: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:15079: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16346: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15082: \$? = $ac_status" >&5 -+ echo "$as_me:16349: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_func_vsscanf=_doscan - else -@@ -15094,25 +16361,28 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:15097: result: $cf_cv_func_vsscanf" >&5 -+echo "$as_me:16364: result: $cf_cv_func_vsscanf" >&5 - echo "${ECHO_T}$cf_cv_func_vsscanf" >&6 - - case $cf_cv_func_vsscanf in #(vi --vsscanf) cat >>confdefs.h <<\EOF -+vsscanf) -+cat >>confdefs.h <<\EOF - #define HAVE_VSSCANF 1 - EOF - ;; #(vi --vfscanf) cat >>confdefs.h <<\EOF -+vfscanf) -+cat >>confdefs.h <<\EOF - #define HAVE_VFSCANF 1 - EOF - ;; #(vi --_doscan) cat >>confdefs.h <<\EOF -+_doscan) -+cat >>confdefs.h <<\EOF - #define HAVE__DOSCAN 1 - EOF - ;; - esac - --echo "$as_me:15115: checking for working mkstemp" >&5 -+echo "$as_me:16385: checking for working mkstemp" >&5 - echo $ECHO_N "checking for working mkstemp... $ECHO_C" >&6 - if test "${cf_cv_func_mkstemp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -15120,68 +16390,10 @@ - - rm -rf conftest* - if test "$cross_compiling" = yes; then -- echo "$as_me:15123: checking for mkstemp" >&5 --echo $ECHO_N "checking for mkstemp... $ECHO_C" >&6 --if test "${ac_cv_func_mkstemp+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 15129 "configure" --#include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char mkstemp (); below. */ --#include --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char mkstemp (); --char (*f) (); -- --int --main () --{ --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_mkstemp) || defined (__stub___mkstemp) --choke me --#else --f = mkstemp; --#endif -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:15160: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:15163: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:15166: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:15169: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_mkstemp=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_func_mkstemp=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:15179: result: $ac_cv_func_mkstemp" >&5 --echo "${ECHO_T}$ac_cv_func_mkstemp" >&6 -- -+ cf_cv_func_mkstemp=maybe - else - cat >conftest.$ac_ext <<_ACEOF --#line 15184 "configure" -+#line 16396 "configure" - #include "confdefs.h" - - #include -@@ -15219,15 +16431,15 @@ - - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:15222: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:16434: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15225: \$? = $ac_status" >&5 -+ echo "$as_me:16437: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:15227: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16439: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15230: \$? = $ac_status" >&5 -+ echo "$as_me:16442: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_func_mkstemp=yes - -@@ -15242,10 +16454,72 @@ - fi - - fi --echo "$as_me:15245: result: $cf_cv_func_mkstemp" >&5 -+echo "$as_me:16457: result: $cf_cv_func_mkstemp" >&5 - echo "${ECHO_T}$cf_cv_func_mkstemp" >&6 -+if test "x$cf_cv_func_mkstemp" = xmaybe ; then -+ echo "$as_me:16460: checking for mkstemp" >&5 -+echo $ECHO_N "checking for mkstemp... $ECHO_C" >&6 -+if test "${ac_cv_func_mkstemp+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 16466 "configure" -+#include "confdefs.h" -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char mkstemp (); below. */ -+#include -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char mkstemp (); -+char (*f) (); -+ -+int -+main () -+{ -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_mkstemp) || defined (__stub___mkstemp) -+choke me -+#else -+f = mkstemp; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:16497: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:16500: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:16503: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:16506: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_func_mkstemp=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_func_mkstemp=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:16516: result: $ac_cv_func_mkstemp" >&5 -+echo "${ECHO_T}$ac_cv_func_mkstemp" >&6 -+ -+fi - if test "x$cf_cv_func_mkstemp" = xyes || test "x$ac_cv_func_mkstemp" = xyes ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_MKSTEMP 1 - EOF - -@@ -15259,22 +16533,22 @@ - HAVE_VSSCANF=0 - fi - --if test "$cross_compiling" = yes ; then -- { echo "$as_me:15263: WARNING: cross compiling: assume setvbuf params not reversed" >&5 -+if test "x$cross_compiling" = xyes ; then -+ { echo "$as_me:16537: WARNING: cross compiling: assume setvbuf params not reversed" >&5 - echo "$as_me: WARNING: cross compiling: assume setvbuf params not reversed" >&2;} - else -- echo "$as_me:15266: checking whether setvbuf arguments are reversed" >&5 -+ echo "$as_me:16540: checking whether setvbuf arguments are reversed" >&5 - echo $ECHO_N "checking whether setvbuf arguments are reversed... $ECHO_C" >&6 - if test "${ac_cv_func_setvbuf_reversed+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - if test "$cross_compiling" = yes; then -- { { echo "$as_me:15272: error: cannot run test program while cross compiling" >&5 -+ { { echo "$as_me:16546: error: cannot run test program while cross compiling" >&5 - echo "$as_me: error: cannot run test program while cross compiling" >&2;} - { (exit 1); exit 1; }; } - else - cat >conftest.$ac_ext <<_ACEOF --#line 15277 "configure" -+#line 16551 "configure" - #include "confdefs.h" - #include - /* If setvbuf has the reversed format, exit 0. */ -@@ -15291,15 +16565,15 @@ - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:15294: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:16568: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15297: \$? = $ac_status" >&5 -+ echo "$as_me:16571: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:15299: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16573: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15302: \$? = $ac_status" >&5 -+ echo "$as_me:16576: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_setvbuf_reversed=yes - else -@@ -15312,7 +16586,7 @@ - fi - rm -f core core.* *.core - fi --echo "$as_me:15315: result: $ac_cv_func_setvbuf_reversed" >&5 -+echo "$as_me:16589: result: $ac_cv_func_setvbuf_reversed" >&5 - echo "${ECHO_T}$ac_cv_func_setvbuf_reversed" >&6 - if test $ac_cv_func_setvbuf_reversed = yes; then - -@@ -15323,68 +16597,66 @@ - fi - - fi --echo "$as_me:15326: checking return type of signal handlers" >&5 --echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6 --if test "${ac_cv_type_signal+set}" = set; then -+echo "$as_me:16600: checking for intptr_t" >&5 -+echo $ECHO_N "checking for intptr_t... $ECHO_C" >&6 -+if test "${ac_cv_type_intptr_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 15332 "configure" -+#line 16606 "configure" - #include "confdefs.h" --#include --#include --#ifdef signal --# undef signal --#endif --#ifdef __cplusplus --extern "C" void (*signal (int, void (*)(int)))(int); --#else --void (*signal ()) (); --#endif -- -+$ac_includes_default - int - main () - { --int i; -+if ((intptr_t *) 0) -+ return 0; -+if (sizeof (intptr_t)) -+ return 0; - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:15354: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:16621: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:15357: \$? = $ac_status" >&5 -+ echo "$as_me:16624: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:15360: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16627: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15363: \$? = $ac_status" >&5 -+ echo "$as_me:16630: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_type_signal=void -+ ac_cv_type_intptr_t=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_type_signal=int -+ac_cv_type_intptr_t=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:15373: result: $ac_cv_type_signal" >&5 --echo "${ECHO_T}$ac_cv_type_signal" >&6 -+echo "$as_me:16640: result: $ac_cv_type_intptr_t" >&5 -+echo "${ECHO_T}$ac_cv_type_intptr_t" >&6 -+if test $ac_cv_type_intptr_t = yes; then -+ : -+else - - cat >>confdefs.h <&5 -+fi -+ -+echo "$as_me:16652: checking for type sigaction_t" >&5 - echo $ECHO_N "checking for type sigaction_t... $ECHO_C" >&6 - if test "${cf_cv_type_sigaction+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 15387 "configure" -+#line 16659 "configure" - #include "confdefs.h" - - #include -@@ -15397,16 +16669,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:15400: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:16672: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:15403: \$? = $ac_status" >&5 -+ echo "$as_me:16675: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:15406: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16678: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15409: \$? = $ac_status" >&5 -+ echo "$as_me:16681: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_type_sigaction=yes - else -@@ -15417,13 +16689,14 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - fi - --echo "$as_me:15420: result: $cf_cv_type_sigaction" >&5 -+echo "$as_me:16692: result: $cf_cv_type_sigaction" >&5 - echo "${ECHO_T}$cf_cv_type_sigaction" >&6 --test "$cf_cv_type_sigaction" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_type_sigaction" = yes && -+cat >>confdefs.h <<\EOF - #define HAVE_TYPE_SIGACTION 1 - EOF - --echo "$as_me:15426: checking declaration of size-change" >&5 -+echo "$as_me:16699: checking declaration of size-change" >&5 - echo $ECHO_N "checking declaration of size-change... $ECHO_C" >&6 - if test "${cf_cv_sizechange+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -15438,7 +16711,7 @@ - CPPFLAGS="$cf_save_CPPFLAGS" - test -n "$cf_opts" && CPPFLAGS="$CPPFLAGS -D$cf_opts" - cat >conftest.$ac_ext <<_ACEOF --#line 15441 "configure" -+#line 16714 "configure" - #include "confdefs.h" - #include - #ifdef HAVE_TERMIOS_H -@@ -15482,16 +16755,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:15485: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:16758: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:15488: \$? = $ac_status" >&5 -+ echo "$as_me:16761: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:15491: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16764: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15494: \$? = $ac_status" >&5 -+ echo "$as_me:16767: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_sizechange=yes - else -@@ -15510,10 +16783,11 @@ - done - - fi --echo "$as_me:15513: result: $cf_cv_sizechange" >&5 -+echo "$as_me:16786: result: $cf_cv_sizechange" >&5 - echo "${ECHO_T}$cf_cv_sizechange" >&6 - if test "$cf_cv_sizechange" != no ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_SIZECHANGE 1 - EOF - -@@ -15527,13 +16801,13 @@ - esac - fi - --echo "$as_me:15530: checking for memmove" >&5 -+echo "$as_me:16804: checking for memmove" >&5 - echo $ECHO_N "checking for memmove... $ECHO_C" >&6 - if test "${ac_cv_func_memmove+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 15536 "configure" -+#line 16810 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char memmove (); below. */ -@@ -15556,7 +16830,7 @@ - #if defined (__stub_memmove) || defined (__stub___memmove) - choke me - #else --f = memmove; -+f = memmove; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -15564,16 +16838,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:15567: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:16841: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15570: \$? = $ac_status" >&5 -+ echo "$as_me:16844: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:15573: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16847: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15576: \$? = $ac_status" >&5 -+ echo "$as_me:16850: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_memmove=yes - else -@@ -15583,19 +16857,19 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:15586: result: $ac_cv_func_memmove" >&5 -+echo "$as_me:16860: result: $ac_cv_func_memmove" >&5 - echo "${ECHO_T}$ac_cv_func_memmove" >&6 - if test $ac_cv_func_memmove = yes; then - : - else - --echo "$as_me:15592: checking for bcopy" >&5 -+echo "$as_me:16866: checking for bcopy" >&5 - echo $ECHO_N "checking for bcopy... $ECHO_C" >&6 - if test "${ac_cv_func_bcopy+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 15598 "configure" -+#line 16872 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char bcopy (); below. */ -@@ -15618,7 +16892,7 @@ - #if defined (__stub_bcopy) || defined (__stub___bcopy) - choke me - #else --f = bcopy; -+f = bcopy; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -15626,16 +16900,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:15629: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:16903: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15632: \$? = $ac_status" >&5 -+ echo "$as_me:16906: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:15635: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16909: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15638: \$? = $ac_status" >&5 -+ echo "$as_me:16912: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_bcopy=yes - else -@@ -15645,11 +16919,11 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:15648: result: $ac_cv_func_bcopy" >&5 -+echo "$as_me:16922: result: $ac_cv_func_bcopy" >&5 - echo "${ECHO_T}$ac_cv_func_bcopy" >&6 - if test $ac_cv_func_bcopy = yes; then - -- echo "$as_me:15652: checking if bcopy does overlapping moves" >&5 -+ echo "$as_me:16926: checking if bcopy does overlapping moves" >&5 - echo $ECHO_N "checking if bcopy does overlapping moves... $ECHO_C" >&6 - if test "${cf_cv_good_bcopy+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -15659,7 +16933,7 @@ - cf_cv_good_bcopy=unknown - else - cat >conftest.$ac_ext <<_ACEOF --#line 15662 "configure" -+#line 16936 "configure" - #include "confdefs.h" - - int main() { -@@ -15673,15 +16947,15 @@ - - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:15676: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:16950: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15679: \$? = $ac_status" >&5 -+ echo "$as_me:16953: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:15681: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:16955: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15684: \$? = $ac_status" >&5 -+ echo "$as_me:16958: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_good_bcopy=yes - else -@@ -15694,7 +16968,7 @@ - fi - - fi --echo "$as_me:15697: result: $cf_cv_good_bcopy" >&5 -+echo "$as_me:16971: result: $cf_cv_good_bcopy" >&5 - echo "${ECHO_T}$cf_cv_good_bcopy" >&6 - - else -@@ -15702,12 +16976,14 @@ - fi - - if test "$cf_cv_good_bcopy" = yes ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define USE_OK_BCOPY 1 - EOF - - else -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define USE_MY_MEMMOVE 1 - EOF - -@@ -15715,7 +16991,7 @@ - - fi - --echo "$as_me:15718: checking if poll really works" >&5 -+echo "$as_me:16994: checking if poll really works" >&5 - echo $ECHO_N "checking if poll really works... $ECHO_C" >&6 - if test "${cf_cv_working_poll+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -15725,10 +17001,13 @@ - cf_cv_working_poll=unknown - else - cat >conftest.$ac_ext <<_ACEOF --#line 15728 "configure" -+#line 17004 "configure" - #include "confdefs.h" - -+#include - #include -+#include -+#include - #ifdef HAVE_POLL_H - #include - #else -@@ -15738,23 +17017,46 @@ - struct pollfd myfds; - int ret; - -- myfds.fd = 0; -+ /* check for Darwin bug with respect to "devices" */ -+ myfds.fd = open("/dev/null", 1); /* O_WRONLY */ -+ if (myfds.fd < 0) -+ myfds.fd = 0; - myfds.events = POLLIN; -+ myfds.revents = 0; - - ret = poll(&myfds, 1, 100); -- ${cf_cv_main_return:-return}(ret != 0); -+ -+ if (ret < 0 || (myfds.revents & POLLNVAL)) { -+ ret = -1; -+ } else { -+ int fd = 0; -+ if (!isatty(fd)) { -+ fd = open("/dev/tty", 2); /* O_RDWR */ -+ } -+ -+ if (fd >= 0) { -+ /* also check with standard input */ -+ myfds.fd = fd; -+ myfds.events = POLLIN; -+ myfds.revents = 0; -+ ret = poll(&myfds, 1, 100); -+ } else { -+ ret = -1; -+ } -+ } -+ ${cf_cv_main_return:-return}(ret < 0); - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:15749: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:17051: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15752: \$? = $ac_status" >&5 -+ echo "$as_me:17054: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:15754: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17056: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15757: \$? = $ac_status" >&5 -+ echo "$as_me:17059: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_working_poll=yes - else -@@ -15766,20 +17068,21 @@ - rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext - fi - fi --echo "$as_me:15769: result: $cf_cv_working_poll" >&5 -+echo "$as_me:17071: result: $cf_cv_working_poll" >&5 - echo "${ECHO_T}$cf_cv_working_poll" >&6 --test "$cf_cv_working_poll" = "yes" && cat >>confdefs.h <<\EOF -+test "$cf_cv_working_poll" = "yes" && -+cat >>confdefs.h <<\EOF - #define HAVE_WORKING_POLL 1 - EOF - --echo "$as_me:15775: checking for va_copy" >&5 -+echo "$as_me:17078: checking for va_copy" >&5 - echo $ECHO_N "checking for va_copy... $ECHO_C" >&6 - if test "${cf_cv_have_va_copy+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 15782 "configure" -+#line 17085 "configure" - #include "confdefs.h" - - #include -@@ -15796,16 +17099,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:15799: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:17102: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15802: \$? = $ac_status" >&5 -+ echo "$as_me:17105: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:15805: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17108: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15808: \$? = $ac_status" >&5 -+ echo "$as_me:17111: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_have_va_copy=yes - else -@@ -15815,21 +17118,22 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:15818: result: $cf_cv_have_va_copy" >&5 -+echo "$as_me:17121: result: $cf_cv_have_va_copy" >&5 - echo "${ECHO_T}$cf_cv_have_va_copy" >&6 - --test "$cf_cv_have_va_copy" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_have_va_copy" = yes && -+cat >>confdefs.h <<\EOF - #define HAVE_VA_COPY 1 - EOF - --echo "$as_me:15825: checking for __va_copy" >&5 -+echo "$as_me:17129: checking for __va_copy" >&5 - echo $ECHO_N "checking for __va_copy... $ECHO_C" >&6 - if test "${cf_cv_have___va_copy+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 15832 "configure" -+#line 17136 "configure" - #include "confdefs.h" - - #include -@@ -15846,16 +17150,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:15849: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:17153: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15852: \$? = $ac_status" >&5 -+ echo "$as_me:17156: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:15855: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17159: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15858: \$? = $ac_status" >&5 -+ echo "$as_me:17162: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_have___va_copy=yes - else -@@ -15865,20 +17169,21 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:15868: result: $cf_cv_have___va_copy" >&5 -+echo "$as_me:17172: result: $cf_cv_have___va_copy" >&5 - echo "${ECHO_T}$cf_cv_have___va_copy" >&6 - --test "$cf_cv_have___va_copy" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_have___va_copy" = yes && -+cat >>confdefs.h <<\EOF - #define HAVE___VA_COPY 1 - EOF - --echo "$as_me:15875: checking for pid_t" >&5 -+echo "$as_me:17180: checking for pid_t" >&5 - echo $ECHO_N "checking for pid_t... $ECHO_C" >&6 - if test "${ac_cv_type_pid_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 15881 "configure" -+#line 17186 "configure" - #include "confdefs.h" - $ac_includes_default - int -@@ -15893,16 +17198,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:15896: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:17201: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:15899: \$? = $ac_status" >&5 -+ echo "$as_me:17204: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:15902: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17207: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15905: \$? = $ac_status" >&5 -+ echo "$as_me:17210: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_pid_t=yes - else -@@ -15912,7 +17217,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:15915: result: $ac_cv_type_pid_t" >&5 -+echo "$as_me:17220: result: $ac_cv_type_pid_t" >&5 - echo "${ECHO_T}$ac_cv_type_pid_t" >&6 - if test $ac_cv_type_pid_t = yes; then - : -@@ -15927,23 +17232,23 @@ - for ac_header in unistd.h vfork.h - do - as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:15930: checking for $ac_header" >&5 -+echo "$as_me:17235: checking for $ac_header" >&5 - echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 15936 "configure" -+#line 17241 "configure" - #include "confdefs.h" - #include <$ac_header> - _ACEOF --if { (eval echo "$as_me:15940: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:17245: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:15946: \$? = $ac_status" >&5 -+ echo "$as_me:17251: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -15962,7 +17267,7 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:15965: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "$as_me:17270: result: `eval echo '${'$as_ac_Header'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <&5 -+echo "$as_me:17283: checking for $ac_func" >&5 - echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 - if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 15984 "configure" -+#line 17289 "configure" - #include "confdefs.h" - /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. */ -@@ -16004,7 +17309,7 @@ - #if defined (__stub_$ac_func) || defined (__stub___$ac_func) - choke me - #else --f = $ac_func; -+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; - #endif - - ; -@@ -16012,16 +17317,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:16015: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:17320: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:16018: \$? = $ac_status" >&5 -+ echo "$as_me:17323: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:16021: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17326: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16024: \$? = $ac_status" >&5 -+ echo "$as_me:17329: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_var=yes" - else -@@ -16031,7 +17336,7 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:16034: result: `eval echo '${'$as_ac_var'}'`" >&5 -+echo "$as_me:17339: result: `eval echo '${'$as_ac_var'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 - if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <&5 -+ echo "$as_me:17351: checking for working fork" >&5 - echo $ECHO_N "checking for working fork... $ECHO_C" >&6 - if test "${ac_cv_func_fork_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -16066,15 +17371,15 @@ - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:16069: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:17374: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:16072: \$? = $ac_status" >&5 -+ echo "$as_me:17377: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:16074: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17379: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16077: \$? = $ac_status" >&5 -+ echo "$as_me:17382: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_fork_works=yes - else -@@ -16086,7 +17391,7 @@ - rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext - fi - fi --echo "$as_me:16089: result: $ac_cv_func_fork_works" >&5 -+echo "$as_me:17394: result: $ac_cv_func_fork_works" >&5 - echo "${ECHO_T}$ac_cv_func_fork_works" >&6 - - fi -@@ -16100,12 +17405,12 @@ - ac_cv_func_fork_works=yes - ;; - esac -- { echo "$as_me:16103: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&5 -+ { echo "$as_me:17408: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&5 - echo "$as_me: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&2;} - fi - ac_cv_func_vfork_works=$ac_cv_func_vfork - if test "x$ac_cv_func_vfork" = xyes; then -- echo "$as_me:16108: checking for working vfork" >&5 -+ echo "$as_me:17413: checking for working vfork" >&5 - echo $ECHO_N "checking for working vfork... $ECHO_C" >&6 - if test "${ac_cv_func_vfork_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -16114,7 +17419,7 @@ - ac_cv_func_vfork_works=cross - else - cat >conftest.$ac_ext <<_ACEOF --#line 16117 "configure" -+#line 17422 "configure" - #include "confdefs.h" - /* Thanks to Paul Eggert for this test. */ - #include -@@ -16211,15 +17516,15 @@ - } - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:16214: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:17519: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:16217: \$? = $ac_status" >&5 -+ echo "$as_me:17522: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:16219: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17524: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16222: \$? = $ac_status" >&5 -+ echo "$as_me:17527: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_vfork_works=yes - else -@@ -16231,13 +17536,13 @@ - rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext - fi - fi --echo "$as_me:16234: result: $ac_cv_func_vfork_works" >&5 -+echo "$as_me:17539: result: $ac_cv_func_vfork_works" >&5 - echo "${ECHO_T}$ac_cv_func_vfork_works" >&6 - - fi; - if test "x$ac_cv_func_fork_works" = xcross; then - ac_cv_func_vfork_works=ac_cv_func_vfork -- { echo "$as_me:16240: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&5 -+ { echo "$as_me:17545: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&5 - echo "$as_me: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&2;} - fi - -@@ -16264,7 +17569,7 @@ - - # special check for test/ditto.c - --echo "$as_me:16267: checking for openpty in -lutil" >&5 -+echo "$as_me:17572: checking for openpty in -lutil" >&5 - echo $ECHO_N "checking for openpty in -lutil... $ECHO_C" >&6 - if test "${ac_cv_lib_util_openpty+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -16272,7 +17577,7 @@ - ac_check_lib_save_LIBS=$LIBS - LIBS="-lutil $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 16275 "configure" -+#line 17580 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -16291,16 +17596,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:16294: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:17599: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:16297: \$? = $ac_status" >&5 -+ echo "$as_me:17602: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:16300: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17605: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16303: \$? = $ac_status" >&5 -+ echo "$as_me:17608: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_util_openpty=yes - else -@@ -16311,7 +17616,7 @@ - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:16314: result: $ac_cv_lib_util_openpty" >&5 -+echo "$as_me:17619: result: $ac_cv_lib_util_openpty" >&5 - echo "${ECHO_T}$ac_cv_lib_util_openpty" >&6 - if test $ac_cv_lib_util_openpty = yes; then - cf_cv_lib_util=yes -@@ -16319,7 +17624,7 @@ - cf_cv_lib_util=no - fi - --echo "$as_me:16322: checking for openpty header" >&5 -+echo "$as_me:17627: checking for openpty header" >&5 - echo $ECHO_N "checking for openpty header... $ECHO_C" >&6 - if test "${cf_cv_func_openpty+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -16330,7 +17635,7 @@ - for cf_header in pty.h libutil.h util.h - do - cat >conftest.$ac_ext <<_ACEOF --#line 16333 "configure" -+#line 17638 "configure" - #include "confdefs.h" - - #include <$cf_header> -@@ -16347,16 +17652,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:16350: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:17655: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:16353: \$? = $ac_status" >&5 -+ echo "$as_me:17658: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:16356: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17661: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16359: \$? = $ac_status" >&5 -+ echo "$as_me:17664: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_func_openpty=$cf_header -@@ -16374,25 +17679,27 @@ - LIBS="$cf_save_LIBS" - - fi --echo "$as_me:16377: result: $cf_cv_func_openpty" >&5 -+echo "$as_me:17682: result: $cf_cv_func_openpty" >&5 - echo "${ECHO_T}$cf_cv_func_openpty" >&6 - - if test "$cf_cv_func_openpty" != no ; then -- cat >>confdefs.h <>confdefs.h < - EOF - -- cat >>confdefs.h <<\EOF -+cat >>confdefs.h <<\EOF - #define USE_XTERM_PTY 1 - EOF - -- if test "$cf_cv_lib_util" = yes ; then -+ if test "x$cf_cv_lib_util" = xyes ; then - TEST_LIBS="-lutil $TEST_LIBS" - fi - fi - - if test "$with_hashed_db" != no ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define USE_HASHED_DB 1 - EOF - -@@ -16426,7 +17733,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 16429 "configure" -+#line 17736 "configure" - #include "confdefs.h" - #include - int -@@ -16438,16 +17745,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:16441: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:17748: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:16444: \$? = $ac_status" >&5 -+ echo "$as_me:17751: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:16447: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17754: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16450: \$? = $ac_status" >&5 -+ echo "$as_me:17757: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -16464,7 +17771,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:16467: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:17774: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -16498,7 +17805,7 @@ - if test "$cf_have_libdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 - --echo "${as_me:-configure}:16501: testing adding $cf_add_libdir to library-path ..." 1>&5 -+echo "${as_me:-configure}:17808: testing adding $cf_add_libdir to library-path ..." 1>&5 - - LDFLAGS="-L$cf_add_libdir $LDFLAGS" - fi -@@ -16509,23 +17816,23 @@ - fi - esac - --echo "$as_me:16512: checking for db.h" >&5 -+echo "$as_me:17819: checking for db.h" >&5 - echo $ECHO_N "checking for db.h... $ECHO_C" >&6 - if test "${ac_cv_header_db_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 16518 "configure" -+#line 17825 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:16522: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:17829: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:16528: \$? = $ac_status" >&5 -+ echo "$as_me:17835: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -16544,11 +17851,11 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:16547: result: $ac_cv_header_db_h" >&5 -+echo "$as_me:17854: result: $ac_cv_header_db_h" >&5 - echo "${ECHO_T}$ac_cv_header_db_h" >&6 - if test $ac_cv_header_db_h = yes; then - --echo "$as_me:16551: checking for version of db" >&5 -+echo "$as_me:17858: checking for version of db" >&5 - echo $ECHO_N "checking for version of db... $ECHO_C" >&6 - if test "${cf_cv_hashed_db_version+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -16559,10 +17866,10 @@ - for cf_db_version in 1 2 3 4 5 - do - --echo "${as_me:-configure}:16562: testing checking for db version $cf_db_version ..." 1>&5 -+echo "${as_me:-configure}:17869: testing checking for db version $cf_db_version ..." 1>&5 - - cat >conftest.$ac_ext <<_ACEOF --#line 16565 "configure" -+#line 17872 "configure" - #include "confdefs.h" - - $ac_includes_default -@@ -16592,16 +17899,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:16595: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:17902: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:16598: \$? = $ac_status" >&5 -+ echo "$as_me:17905: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:16601: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:17908: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16604: \$? = $ac_status" >&5 -+ echo "$as_me:17911: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - cf_cv_hashed_db_version=$cf_db_version -@@ -16615,16 +17922,16 @@ - done - - fi --echo "$as_me:16618: result: $cf_cv_hashed_db_version" >&5 -+echo "$as_me:17925: result: $cf_cv_hashed_db_version" >&5 - echo "${ECHO_T}$cf_cv_hashed_db_version" >&6 - - if test "$cf_cv_hashed_db_version" = unknown ; then -- { { echo "$as_me:16622: error: Cannot determine version of db" >&5 -+ { { echo "$as_me:17929: error: Cannot determine version of db" >&5 - echo "$as_me: error: Cannot determine version of db" >&2;} - { (exit 1); exit 1; }; } - else - --echo "$as_me:16627: checking for db libraries" >&5 -+echo "$as_me:17934: checking for db libraries" >&5 - echo $ECHO_N "checking for db libraries... $ECHO_C" >&6 - if test "${cf_cv_hashed_db_libs+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -16638,10 +17945,10 @@ - LIBS="-l$cf_db_libs $LIBS" - fi - --echo "${as_me:-configure}:16641: testing checking for library "$cf_db_libs" ..." 1>&5 -+echo "${as_me:-configure}:17948: testing checking for library "$cf_db_libs" ..." 1>&5 - - cat >conftest.$ac_ext <<_ACEOF --#line 16644 "configure" -+#line 17951 "configure" - #include "confdefs.h" - - $ac_includes_default -@@ -16696,16 +18003,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:16699: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:18006: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:16702: \$? = $ac_status" >&5 -+ echo "$as_me:18009: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:16705: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18012: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16708: \$? = $ac_status" >&5 -+ echo "$as_me:18015: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - if test -n "$cf_db_libs" ; then -@@ -16725,11 +18032,11 @@ - done - - fi --echo "$as_me:16728: result: $cf_cv_hashed_db_libs" >&5 -+echo "$as_me:18035: result: $cf_cv_hashed_db_libs" >&5 - echo "${ECHO_T}$cf_cv_hashed_db_libs" >&6 - - if test "$cf_cv_hashed_db_libs" = unknown ; then -- { { echo "$as_me:16732: error: Cannot determine library for db" >&5 -+ { { echo "$as_me:18039: error: Cannot determine library for db" >&5 - echo "$as_me: error: Cannot determine library for db" >&2;} - { (exit 1); exit 1; }; } - elif test "$cf_cv_hashed_db_libs" != default ; then -@@ -16739,7 +18046,7 @@ - - else - -- { { echo "$as_me:16742: error: Cannot find db.h" >&5 -+ { { echo "$as_me:18049: error: Cannot find db.h" >&5 - echo "$as_me: error: Cannot find db.h" >&2;} - { (exit 1); exit 1; }; } - -@@ -16754,7 +18061,7 @@ - - # Just in case, check if the C compiler has a bool type. - --echo "$as_me:16757: checking if we should include stdbool.h" >&5 -+echo "$as_me:18064: checking if we should include stdbool.h" >&5 - echo $ECHO_N "checking if we should include stdbool.h... $ECHO_C" >&6 - - if test "${cf_cv_header_stdbool_h+set}" = set; then -@@ -16762,7 +18069,7 @@ - else - - cat >conftest.$ac_ext <<_ACEOF --#line 16765 "configure" -+#line 18072 "configure" - #include "confdefs.h" - - int -@@ -16774,23 +18081,23 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:16777: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:18084: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:16780: \$? = $ac_status" >&5 -+ echo "$as_me:18087: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:16783: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18090: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16786: \$? = $ac_status" >&5 -+ echo "$as_me:18093: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_header_stdbool_h=0 - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - cat >conftest.$ac_ext <<_ACEOF --#line 16793 "configure" -+#line 18100 "configure" - #include "confdefs.h" - - #ifndef __BEOS__ -@@ -16806,16 +18113,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:16809: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:18116: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:16812: \$? = $ac_status" >&5 -+ echo "$as_me:18119: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:16815: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18122: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16818: \$? = $ac_status" >&5 -+ echo "$as_me:18125: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_header_stdbool_h=1 - else -@@ -16829,13 +18136,13 @@ - fi - - if test "$cf_cv_header_stdbool_h" = 1 --then echo "$as_me:16832: result: yes" >&5 -+then echo "$as_me:18139: result: yes" >&5 - echo "${ECHO_T}yes" >&6 --else echo "$as_me:16834: result: no" >&5 -+else echo "$as_me:18141: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - --echo "$as_me:16838: checking for builtin bool type" >&5 -+echo "$as_me:18145: checking for builtin bool type" >&5 - echo $ECHO_N "checking for builtin bool type... $ECHO_C" >&6 - - if test "${cf_cv_cc_bool_type+set}" = set; then -@@ -16843,7 +18150,7 @@ - else - - cat >conftest.$ac_ext <<_ACEOF --#line 16846 "configure" -+#line 18153 "configure" - #include "confdefs.h" - - #include -@@ -16858,16 +18165,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:16861: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:18168: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:16864: \$? = $ac_status" >&5 -+ echo "$as_me:18171: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:16867: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18174: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16870: \$? = $ac_status" >&5 -+ echo "$as_me:18177: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_cc_bool_type=1 - else -@@ -16880,9 +18187,9 @@ - fi - - if test "$cf_cv_cc_bool_type" = 1 --then echo "$as_me:16883: result: yes" >&5 -+then echo "$as_me:18190: result: yes" >&5 - echo "${ECHO_T}yes" >&6 --else echo "$as_me:16885: result: no" >&5 -+else echo "$as_me:18192: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -16904,7 +18211,7 @@ - cf_stdcpp_libname=stdc++ - ;; - esac --echo "$as_me:16907: checking for library $cf_stdcpp_libname" >&5 -+echo "$as_me:18214: checking for library $cf_stdcpp_libname" >&5 - echo $ECHO_N "checking for library $cf_stdcpp_libname... $ECHO_C" >&6 - if test "${cf_cv_libstdcpp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -16913,7 +18220,7 @@ - cf_save="$LIBS" - LIBS="-l$cf_stdcpp_libname $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 16916 "configure" -+#line 18223 "configure" - #include "confdefs.h" - - #include -@@ -16929,16 +18236,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:16932: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:18239: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:16935: \$? = $ac_status" >&5 -+ echo "$as_me:18242: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:16938: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18245: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16941: \$? = $ac_status" >&5 -+ echo "$as_me:18248: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_libstdcpp=yes - else -@@ -16950,12 +18257,12 @@ - LIBS="$cf_save" - - fi --echo "$as_me:16953: result: $cf_cv_libstdcpp" >&5 -+echo "$as_me:18260: result: $cf_cv_libstdcpp" >&5 - echo "${ECHO_T}$cf_cv_libstdcpp" >&6 - test "$cf_cv_libstdcpp" = yes && CXXLIBS="-l$cf_stdcpp_libname $CXXLIBS" - fi - -- echo "$as_me:16958: checking whether $CXX understands -c and -o together" >&5 -+ echo "$as_me:18265: checking whether $CXX understands -c and -o together" >&5 - echo $ECHO_N "checking whether $CXX understands -c and -o together... $ECHO_C" >&6 - if test "${cf_cv_prog_CXX_c_o+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -16971,15 +18278,15 @@ - # We do the test twice because some compilers refuse to overwrite an - # existing .o file with -o, though they will create one. - ac_try='$CXX -c conftest.$ac_ext -o conftest2.$ac_objext >&5' --if { (eval echo "$as_me:16974: \"$ac_try\"") >&5 -+if { (eval echo "$as_me:18281: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16977: \$? = $ac_status" >&5 -+ echo "$as_me:18284: \$? = $ac_status" >&5 - (exit $ac_status); } && -- test -f conftest2.$ac_objext && { (eval echo "$as_me:16979: \"$ac_try\"") >&5 -+ test -f conftest2.$ac_objext && { (eval echo "$as_me:18286: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:16982: \$? = $ac_status" >&5 -+ echo "$as_me:18289: \$? = $ac_status" >&5 - (exit $ac_status); }; - then - eval cf_cv_prog_CXX_c_o=yes -@@ -16990,10 +18297,10 @@ - - fi - if test $cf_cv_prog_CXX_c_o = yes; then -- echo "$as_me:16993: result: yes" >&5 -+ echo "$as_me:18300: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - else -- echo "$as_me:16996: result: no" >&5 -+ echo "$as_me:18303: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -17013,12 +18320,12 @@ - ;; - esac - if test "$GXX" = yes; then -- echo "$as_me:17016: checking for lib$cf_gpp_libname" >&5 -+ echo "$as_me:18323: checking for lib$cf_gpp_libname" >&5 - echo $ECHO_N "checking for lib$cf_gpp_libname... $ECHO_C" >&6 - cf_save="$LIBS" - LIBS="-l$cf_gpp_libname $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 17021 "configure" -+#line 18328 "configure" - #include "confdefs.h" - - #include <$cf_gpp_libname/builtin.h> -@@ -17032,26 +18339,28 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:17035: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:18342: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:17038: \$? = $ac_status" >&5 -+ echo "$as_me:18345: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:17041: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18348: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17044: \$? = $ac_status" >&5 -+ echo "$as_me:18351: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cxx_library=yes - CXXLIBS="-l$cf_gpp_libname $CXXLIBS" - if test "$cf_gpp_libname" = cpp ; then -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_GPP_BUILTIN_H 1 - EOF - - else -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_GXX_BUILTIN_H 1 - EOF - -@@ -17060,7 +18369,7 @@ - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - cat >conftest.$ac_ext <<_ACEOF --#line 17063 "configure" -+#line 18372 "configure" - #include "confdefs.h" - - #include -@@ -17074,20 +18383,21 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:17077: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:18386: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:17080: \$? = $ac_status" >&5 -+ echo "$as_me:18389: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:17083: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18392: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17086: \$? = $ac_status" >&5 -+ echo "$as_me:18395: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cxx_library=yes - CXXLIBS="-l$cf_gpp_libname $CXXLIBS" -- cat >>confdefs.h <<\EOF -+ -+cat >>confdefs.h <<\EOF - #define HAVE_BUILTIN_H 1 - EOF - -@@ -17100,7 +18410,7 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS="$cf_save" -- echo "$as_me:17103: result: $cf_cxx_library" >&5 -+ echo "$as_me:18413: result: $cf_cxx_library" >&5 - echo "${ECHO_T}$cf_cxx_library" >&6 - fi - -@@ -17116,7 +18426,7 @@ - ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' - ac_compiler_gnu=$ac_cv_cxx_compiler_gnu - ac_main_return=return --echo "$as_me:17119: checking how to run the C++ preprocessor" >&5 -+echo "$as_me:18429: checking how to run the C++ preprocessor" >&5 - echo $ECHO_N "checking how to run the C++ preprocessor... $ECHO_C" >&6 - if test -z "$CXXCPP"; then - if test "${ac_cv_prog_CXXCPP+set}" = set; then -@@ -17133,18 +18443,18 @@ - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF --#line 17136 "configure" -+#line 18446 "configure" - #include "confdefs.h" - #include - Syntax error - _ACEOF --if { (eval echo "$as_me:17141: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:18451: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:17147: \$? = $ac_status" >&5 -+ echo "$as_me:18457: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag -@@ -17167,17 +18477,17 @@ - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF --#line 17170 "configure" -+#line 18480 "configure" - #include "confdefs.h" - #include - _ACEOF --if { (eval echo "$as_me:17174: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:18484: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:17180: \$? = $ac_status" >&5 -+ echo "$as_me:18490: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag -@@ -17214,7 +18524,7 @@ - else - ac_cv_prog_CXXCPP=$CXXCPP - fi --echo "$as_me:17217: result: $CXXCPP" >&5 -+echo "$as_me:18527: result: $CXXCPP" >&5 - echo "${ECHO_T}$CXXCPP" >&6 - ac_preproc_ok=false - for ac_cxx_preproc_warn_flag in '' yes -@@ -17224,18 +18534,18 @@ - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF --#line 17227 "configure" -+#line 18537 "configure" - #include "confdefs.h" - #include - Syntax error - _ACEOF --if { (eval echo "$as_me:17232: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:18542: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:17238: \$? = $ac_status" >&5 -+ echo "$as_me:18548: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag -@@ -17258,17 +18568,76 @@ - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF --#line 17261 "configure" -+#line 18571 "configure" -+#include "confdefs.h" -+#include -+_ACEOF -+if { (eval echo "$as_me:18575: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:18581: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_cxx_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ # Broken: success on invalid input. -+continue -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ # Passes both tests. -+ac_preproc_ok=: -+break -+fi -+rm -f conftest.err conftest.$ac_ext -+ -+done -+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -+rm -f conftest.err conftest.$ac_ext -+if $ac_preproc_ok; then -+ : -+else -+ { { echo "$as_me:18609: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&5 -+echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+ac_ext=cc -+ac_cpp='$CXXCPP $CPPFLAGS' -+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' -+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -+ac_main_return=return -+ -+for ac_header in typeinfo -+do -+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -+echo "$as_me:18624: checking for $ac_header" >&5 -+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Header+set}\" = set"; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 18630 "configure" - #include "confdefs.h" --#include -+#include <$ac_header> - _ACEOF --if { (eval echo "$as_me:17265: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:18634: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:17271: \$? = $ac_status" >&5 -+ echo "$as_me:18640: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag -@@ -17279,55 +18648,44 @@ - ac_cpp_err=yes - fi - if test -z "$ac_cpp_err"; then -- # Broken: success on invalid input. --continue -+ eval "$as_ac_Header=yes" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -- # Passes both tests. --ac_preproc_ok=: --break -+ eval "$as_ac_Header=no" - fi - rm -f conftest.err conftest.$ac_ext -- --done --# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. --rm -f conftest.err conftest.$ac_ext --if $ac_preproc_ok; then -- : --else -- { { echo "$as_me:17299: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&5 --echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&2;} -- { (exit 1); exit 1; }; } - fi -+echo "$as_me:18659: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -+if test `eval echo '${'$as_ac_Header'}'` = yes; then -+ cat >>confdefs.h <&5 -+echo "$as_me:18672: checking for $ac_header" >&5 - echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 - if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 17320 "configure" -+#line 18678 "configure" - #include "confdefs.h" - #include <$ac_header> - _ACEOF --if { (eval echo "$as_me:17324: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:18682: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:17330: \$? = $ac_status" >&5 -+ echo "$as_me:18688: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag -@@ -17346,7 +18704,7 @@ - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:17349: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "$as_me:18707: result: `eval echo '${'$as_ac_Header'}'`" >&5 - echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <&5 -+if test x"$ac_cv_header_iostream" = xyes ; then -+ echo "$as_me:18718: checking if iostream uses std-namespace" >&5 - echo $ECHO_N "checking if iostream uses std-namespace... $ECHO_C" >&6 -- cat >conftest.$ac_ext <<_ACEOF --#line 17363 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 18721 "configure" - #include "confdefs.h" - - #include -@@ -17377,16 +18735,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:17380: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:18738: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:17383: \$? = $ac_status" >&5 -+ echo "$as_me:18741: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:17386: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18744: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17389: \$? = $ac_status" >&5 -+ echo "$as_me:18747: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_iostream_namespace=yes - else -@@ -17395,17 +18753,18 @@ - cf_iostream_namespace=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext -- echo "$as_me:17398: result: $cf_iostream_namespace" >&5 -+ echo "$as_me:18756: result: $cf_iostream_namespace" >&5 - echo "${ECHO_T}$cf_iostream_namespace" >&6 -- if test "$cf_iostream_namespace" = yes ; then -- cat >>confdefs.h <<\EOF -+ if test "$cf_iostream_namespace" = yes ; then -+ -+cat >>confdefs.h <<\EOF - #define IOSTREAM_NAMESPACE 1 - EOF - -- fi -- fi -+ fi -+fi - --echo "$as_me:17408: checking if we should include stdbool.h" >&5 -+echo "$as_me:18767: checking if we should include stdbool.h" >&5 - echo $ECHO_N "checking if we should include stdbool.h... $ECHO_C" >&6 - - if test "${cf_cv_header_stdbool_h+set}" = set; then -@@ -17413,7 +18772,7 @@ - else - - cat >conftest.$ac_ext <<_ACEOF --#line 17416 "configure" -+#line 18775 "configure" - #include "confdefs.h" - - int -@@ -17425,23 +18784,23 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:17428: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:18787: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:17431: \$? = $ac_status" >&5 -+ echo "$as_me:18790: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:17434: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18793: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17437: \$? = $ac_status" >&5 -+ echo "$as_me:18796: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_header_stdbool_h=0 - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - cat >conftest.$ac_ext <<_ACEOF --#line 17444 "configure" -+#line 18803 "configure" - #include "confdefs.h" - - #ifndef __BEOS__ -@@ -17457,16 +18816,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:17460: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:18819: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:17463: \$? = $ac_status" >&5 -+ echo "$as_me:18822: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:17466: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18825: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17469: \$? = $ac_status" >&5 -+ echo "$as_me:18828: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_header_stdbool_h=1 - else -@@ -17480,13 +18839,13 @@ - fi - - if test "$cf_cv_header_stdbool_h" = 1 --then echo "$as_me:17483: result: yes" >&5 -+then echo "$as_me:18842: result: yes" >&5 - echo "${ECHO_T}yes" >&6 --else echo "$as_me:17485: result: no" >&5 -+else echo "$as_me:18844: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - --echo "$as_me:17489: checking for builtin bool type" >&5 -+echo "$as_me:18848: checking for builtin bool type" >&5 - echo $ECHO_N "checking for builtin bool type... $ECHO_C" >&6 - - if test "${cf_cv_builtin_bool+set}" = set; then -@@ -17494,7 +18853,7 @@ - else - - cat >conftest.$ac_ext <<_ACEOF --#line 17497 "configure" -+#line 18856 "configure" - #include "confdefs.h" - - #include -@@ -17509,16 +18868,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:17512: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:18871: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:17515: \$? = $ac_status" >&5 -+ echo "$as_me:18874: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:17518: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18877: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17521: \$? = $ac_status" >&5 -+ echo "$as_me:18880: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_builtin_bool=1 - else -@@ -17531,13 +18890,13 @@ - fi - - if test "$cf_cv_builtin_bool" = 1 --then echo "$as_me:17534: result: yes" >&5 -+then echo "$as_me:18893: result: yes" >&5 - echo "${ECHO_T}yes" >&6 --else echo "$as_me:17536: result: no" >&5 -+else echo "$as_me:18895: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - --echo "$as_me:17540: checking for size of bool" >&5 -+echo "$as_me:18899: checking for size of bool" >&5 - echo $ECHO_N "checking for size of bool... $ECHO_C" >&6 - if test "${cf_cv_type_of_bool+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -17548,7 +18907,7 @@ - cf_cv_type_of_bool=unknown - else - cat >conftest.$ac_ext <<_ACEOF --#line 17551 "configure" -+#line 18910 "configure" - #include "confdefs.h" - - #include -@@ -17572,7 +18931,7 @@ - - #endif - --main() -+int main() - { - FILE *fp = fopen("cf_test.out", "w"); - if (fp != 0) { -@@ -17590,15 +18949,15 @@ - - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:17593: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:18952: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:17596: \$? = $ac_status" >&5 -+ echo "$as_me:18955: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:17598: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:18957: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17601: \$? = $ac_status" >&5 -+ echo "$as_me:18960: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_type_of_bool=`cat cf_test.out` - if test -z "$cf_cv_type_of_bool"; then -@@ -17616,30 +18975,36 @@ - fi - - rm -f cf_test.out --echo "$as_me:17619: result: $cf_cv_type_of_bool" >&5 -+echo "$as_me:18978: result: $cf_cv_type_of_bool" >&5 - echo "${ECHO_T}$cf_cv_type_of_bool" >&6 - if test "$cf_cv_type_of_bool" = unknown ; then - case .$NCURSES_BOOL in #(vi - .auto|.) NCURSES_BOOL=unsigned;; - esac -- { echo "$as_me:17625: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5 -+ { echo "$as_me:18984: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5 - echo "$as_me: WARNING: Assuming $NCURSES_BOOL for type of bool" >&2;} - cf_cv_type_of_bool=$NCURSES_BOOL - fi - --echo "$as_me:17630: checking for special defines needed for etip.h" >&5 -+echo "$as_me:18989: checking for special defines needed for etip.h" >&5 - echo $ECHO_N "checking for special defines needed for etip.h... $ECHO_C" >&6 - cf_save_CXXFLAGS="$CXXFLAGS" - cf_result="none" -+ -+# etip.h includes ncurses.h which includes ncurses_dll.h -+# But ncurses_dll.h is generated - fix here. -+test -d include || mkdir include -+test -f include/ncurses_dll.h || sed -e 's/@NCURSES_WRAP_PREFIX@/'$NCURSES_WRAP_PREFIX'/g' ${srcdir}/include/ncurses_dll.h.in >include/ncurses_dll.h -+ - for cf_math in "" MATH_H - do - for cf_excp in "" MATH_EXCEPTION - do -- CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -I${srcdir}/include" -+ CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -Iinclude -I${srcdir}/include" - test -n "$cf_math" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_math}" - test -n "$cf_excp" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_excp}" - cat >conftest.$ac_ext <<_ACEOF --#line 17642 "configure" -+#line 19007 "configure" - #include "confdefs.h" - - #include -@@ -17653,16 +19018,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:17656: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:19021: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:17659: \$? = $ac_status" >&5 -+ echo "$as_me:19024: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:17662: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:19027: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17665: \$? = $ac_status" >&5 -+ echo "$as_me:19030: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - - test -n "$cf_math" && cat >>confdefs.h <&5 -@@ -17683,12 +19048,12 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - done - done --echo "$as_me:17686: result: $cf_result" >&5 -+echo "$as_me:19051: result: $cf_result" >&5 - echo "${ECHO_T}$cf_result" >&6 - CXXFLAGS="$cf_save_CXXFLAGS" - - if test -n "$CXX"; then --echo "$as_me:17691: checking if $CXX accepts parameter initialization" >&5 -+echo "$as_me:19056: checking if $CXX accepts parameter initialization" >&5 - echo $ECHO_N "checking if $CXX accepts parameter initialization... $ECHO_C" >&6 - if test "${cf_cv_cpp_param_init+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -17705,7 +19070,7 @@ - cf_cv_cpp_param_init=unknown - else - cat >conftest.$ac_ext <<_ACEOF --#line 17708 "configure" -+#line 19073 "configure" - #include "confdefs.h" - - class TEST { -@@ -17720,19 +19085,19 @@ - { - value = x; - } --void main() { } -+int main() { } - - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:17727: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:19092: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:17730: \$? = $ac_status" >&5 -+ echo "$as_me:19095: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:17732: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:19097: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17735: \$? = $ac_status" >&5 -+ echo "$as_me:19100: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_cpp_param_init=yes - else -@@ -17751,16 +19116,17 @@ - ac_main_return=return - - fi --echo "$as_me:17754: result: $cf_cv_cpp_param_init" >&5 -+echo "$as_me:19119: result: $cf_cv_cpp_param_init" >&5 - echo "${ECHO_T}$cf_cv_cpp_param_init" >&6 - fi --test "$cf_cv_cpp_param_init" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_cpp_param_init" = yes && -+cat >>confdefs.h <<\EOF - #define CPP_HAS_PARAM_INIT 1 - EOF - - if test -n "$CXX"; then - --echo "$as_me:17763: checking if $CXX accepts static_cast" >&5 -+echo "$as_me:19129: checking if $CXX accepts static_cast" >&5 - echo $ECHO_N "checking if $CXX accepts static_cast... $ECHO_C" >&6 - if test "${cf_cv_cpp_static_cast+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -17774,7 +19140,7 @@ - ac_main_return=return - - cat >conftest.$ac_ext <<_ACEOF --#line 17777 "configure" -+#line 19143 "configure" - #include "confdefs.h" - - class NCursesPanel -@@ -17786,7 +19152,7 @@ - int begin_x = 0) - { - } -- -+ NCursesPanel(); - ~NCursesPanel(); - }; - -@@ -17818,16 +19184,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:17821: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:19187: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:17824: \$? = $ac_status" >&5 -+ echo "$as_me:19190: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:17827: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:19193: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17830: \$? = $ac_status" >&5 -+ echo "$as_me:19196: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_cpp_static_cast=yes - else -@@ -17845,12 +19211,13 @@ - ac_main_return=return - - fi --echo "$as_me:17848: result: $cf_cv_cpp_static_cast" >&5 -+echo "$as_me:19214: result: $cf_cv_cpp_static_cast" >&5 - echo "${ECHO_T}$cf_cv_cpp_static_cast" >&6 - - fi - --test "$cf_cv_cpp_static_cast" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_cpp_static_cast" = yes && -+cat >>confdefs.h <<\EOF - #define CPP_HAS_STATIC_CAST 1 - EOF - -@@ -17893,7 +19260,7 @@ - else - if test "$cf_cv_header_stdbool_h" = 1 ; then - --echo "$as_me:17896: checking for size of bool" >&5 -+echo "$as_me:19263: checking for size of bool" >&5 - echo $ECHO_N "checking for size of bool... $ECHO_C" >&6 - if test "${cf_cv_type_of_bool+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -17904,7 +19271,7 @@ - cf_cv_type_of_bool=unknown - else - cat >conftest.$ac_ext <<_ACEOF --#line 17907 "configure" -+#line 19274 "configure" - #include "confdefs.h" - - #include -@@ -17928,7 +19295,7 @@ - - #endif - --main() -+int main() - { - FILE *fp = fopen("cf_test.out", "w"); - if (fp != 0) { -@@ -17946,15 +19313,15 @@ - - _ACEOF - rm -f conftest$ac_exeext --if { (eval echo "$as_me:17949: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:19316: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:17952: \$? = $ac_status" >&5 -+ echo "$as_me:19319: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:17954: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:19321: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:17957: \$? = $ac_status" >&5 -+ echo "$as_me:19324: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_type_of_bool=`cat cf_test.out` - if test -z "$cf_cv_type_of_bool"; then -@@ -17972,25 +19339,25 @@ - fi - - rm -f cf_test.out --echo "$as_me:17975: result: $cf_cv_type_of_bool" >&5 -+echo "$as_me:19342: result: $cf_cv_type_of_bool" >&5 - echo "${ECHO_T}$cf_cv_type_of_bool" >&6 - if test "$cf_cv_type_of_bool" = unknown ; then - case .$NCURSES_BOOL in #(vi - .auto|.) NCURSES_BOOL=unsigned;; - esac -- { echo "$as_me:17981: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5 -+ { echo "$as_me:19348: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5 - echo "$as_me: WARNING: Assuming $NCURSES_BOOL for type of bool" >&2;} - cf_cv_type_of_bool=$NCURSES_BOOL - fi - - else -- echo "$as_me:17987: checking for fallback type of bool" >&5 -+ echo "$as_me:19354: checking for fallback type of bool" >&5 - echo $ECHO_N "checking for fallback type of bool... $ECHO_C" >&6 - case "$host_cpu" in #(vi - i?86) cf_cv_type_of_bool=char ;; #(vi - *) cf_cv_type_of_bool=int ;; - esac -- echo "$as_me:17993: result: $cf_cv_type_of_bool" >&5 -+ echo "$as_me:19360: result: $cf_cv_type_of_bool" >&5 - echo "${ECHO_T}$cf_cv_type_of_bool" >&6 - fi - fi -@@ -18019,7 +19386,7 @@ - - if test "$cf_with_ada" != "no" ; then - if test "$with_libtool" != "no"; then -- { echo "$as_me:18022: WARNING: libtool does not support Ada - disabling feature" >&5 -+ { echo "$as_me:19389: WARNING: libtool does not support Ada - disabling feature" >&5 - echo "$as_me: WARNING: libtool does not support Ada - disabling feature" >&2;} - cf_with_ada=no - fi -@@ -18030,7 +19397,7 @@ - cf_ada_make=gnatmake - # Extract the first word of "$cf_ada_make", so it can be a program name with args. - set dummy $cf_ada_make; ac_word=$2 --echo "$as_me:18033: checking for $ac_word" >&5 -+echo "$as_me:19400: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_gnat_exists+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -18045,7 +19412,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_gnat_exists="yes" --echo "$as_me:18048: found $ac_dir/$ac_word" >&5 -+echo "$as_me:19415: found $ac_dir/$ac_word" >&5 - break - done - -@@ -18054,31 +19421,32 @@ - fi - gnat_exists=$ac_cv_prog_gnat_exists - if test -n "$gnat_exists"; then -- echo "$as_me:18057: result: $gnat_exists" >&5 -+ echo "$as_me:19424: result: $gnat_exists" >&5 - echo "${ECHO_T}$gnat_exists" >&6 - else -- echo "$as_me:18060: result: no" >&5 -+ echo "$as_me:19427: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - - if test "$ac_cv_prog_gnat_exists" = no; then - cf_ada_make= -+ cf_cv_prog_gnat_correct=no - else - --echo "$as_me:18068: checking for gnat version" >&5 -+echo "$as_me:19436: checking for gnat version" >&5 - echo $ECHO_N "checking for gnat version... $ECHO_C" >&6 - cf_gnat_version=`${cf_ada_make:-gnatmake} -v 2>&1 | \ - grep '[0-9].[0-9][0-9]*' |\ - sed -e '2,$d' -e 's/[^0-9 \.]//g' -e 's/^[ ]*//' -e 's/ .*//'` --echo "$as_me:18073: result: $cf_gnat_version" >&5 -+echo "$as_me:19441: result: $cf_gnat_version" >&5 - echo "${ECHO_T}$cf_gnat_version" >&6 - - case $cf_gnat_version in #(vi --3.1[1-9]*|3.[2-9]*|[4-9].*) #(vi -+3.1[1-9]*|3.[2-9]*|[4-9].*|20[0-9][0-9]) #(vi - cf_cv_prog_gnat_correct=yes - ;; - *) -- { echo "$as_me:18081: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5 -+ { echo "$as_me:19449: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5 - echo "$as_me: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&2;} - cf_cv_prog_gnat_correct=no - ;; -@@ -18086,7 +19454,7 @@ - - # Extract the first word of "m4", so it can be a program name with args. - set dummy m4; ac_word=$2 --echo "$as_me:18089: checking for $ac_word" >&5 -+echo "$as_me:19457: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_M4_exists+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -18101,7 +19469,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_M4_exists="yes" --echo "$as_me:18104: found $ac_dir/$ac_word" >&5 -+echo "$as_me:19472: found $ac_dir/$ac_word" >&5 - break - done - -@@ -18110,10 +19478,10 @@ - fi - M4_exists=$ac_cv_prog_M4_exists - if test -n "$M4_exists"; then -- echo "$as_me:18113: result: $M4_exists" >&5 -+ echo "$as_me:19481: result: $M4_exists" >&5 - echo "${ECHO_T}$M4_exists" >&6 - else -- echo "$as_me:18116: result: no" >&5 -+ echo "$as_me:19484: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -18122,7 +19490,7 @@ - echo Ada95 binding required program m4 not found. Ada95 binding disabled. - fi - if test "$cf_cv_prog_gnat_correct" = yes; then -- echo "$as_me:18125: checking if GNAT works" >&5 -+ echo "$as_me:19493: checking if GNAT works" >&5 - echo $ECHO_N "checking if GNAT works... $ECHO_C" >&6 - - rm -rf conftest* *~conftest* -@@ -18150,32 +19518,36 @@ - fi - rm -rf conftest* *~conftest* - -- echo "$as_me:18153: result: $cf_cv_prog_gnat_correct" >&5 -+ echo "$as_me:19521: result: $cf_cv_prog_gnat_correct" >&5 - echo "${ECHO_T}$cf_cv_prog_gnat_correct" >&6 - fi - fi - -- if test "$cf_cv_prog_gnat_correct" = yes; then -+ if test "x$cf_cv_prog_gnat_correct" = xyes; then - - ADAFLAGS="$ADAFLAGS -gnatpn" - -- # make ADAFLAGS consistent with CFLAGS -- case "$CFLAGS" in -- *-g*) -+ echo "$as_me:19530: checking optimization options for ADAFLAGS" >&5 -+echo $ECHO_N "checking optimization options for ADAFLAGS... $ECHO_C" >&6 -+ case "$CFLAGS" in -+ *-g*) - - ADAFLAGS="$ADAFLAGS -g" - -- ;; -- esac -- case "$CFLAGS" in -- *-O*) -+ ;; -+ esac -+ case "$CFLAGS" in -+ *-O*) -+ cf_O_flag=`echo "$CFLAGS" |sed -e 's/^.*-O/-O/' -e 's/[ ].*//'` - -- ADAFLAGS="$ADAFLAGS -O3" -+ ADAFLAGS="$ADAFLAGS $cf_O_flag" - -- ;; -- esac -+ ;; -+ esac -+ echo "$as_me:19547: result: $ADAFLAGS" >&5 -+echo "${ECHO_T}$ADAFLAGS" >&6 - --echo "$as_me:18178: checking if GNAT supports generics" >&5 -+echo "$as_me:19550: checking if GNAT supports generics" >&5 - echo $ECHO_N "checking if GNAT supports generics... $ECHO_C" >&6 - case $cf_gnat_version in #(vi - 3.[1-9]*|[4-9].*) #(vi -@@ -18185,7 +19557,7 @@ - cf_gnat_generics=no - ;; - esac --echo "$as_me:18188: result: $cf_gnat_generics" >&5 -+echo "$as_me:19560: result: $cf_gnat_generics" >&5 - echo "${ECHO_T}$cf_gnat_generics" >&6 - - if test "$cf_gnat_generics" = yes -@@ -18197,7 +19569,7 @@ - cf_generic_objects= - fi - --echo "$as_me:18200: checking if GNAT supports SIGINT" >&5 -+echo "$as_me:19572: checking if GNAT supports SIGINT" >&5 - echo $ECHO_N "checking if GNAT supports SIGINT... $ECHO_C" >&6 - if test "${cf_cv_gnat_sigint+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -18245,7 +19617,7 @@ - rm -rf conftest* *~conftest* - - fi --echo "$as_me:18248: result: $cf_cv_gnat_sigint" >&5 -+echo "$as_me:19620: result: $cf_cv_gnat_sigint" >&5 - echo "${ECHO_T}$cf_cv_gnat_sigint" >&6 - - if test $cf_cv_gnat_sigint = yes ; then -@@ -18254,7 +19626,7 @@ - USE_GNAT_SIGINT="#" - fi - --echo "$as_me:18257: checking if GNAT pragma Unreferenced works" >&5 -+echo "$as_me:19629: checking if GNAT pragma Unreferenced works" >&5 - echo $ECHO_N "checking if GNAT pragma Unreferenced works... $ECHO_C" >&6 - if test "${cf_cv_pragma_unreferenced+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -18285,7 +19657,7 @@ - rm -rf conftest* *~conftest* - - fi --echo "$as_me:18288: result: $cf_cv_pragma_unreferenced" >&5 -+echo "$as_me:19660: result: $cf_cv_pragma_unreferenced" >&5 - echo "${ECHO_T}$cf_cv_pragma_unreferenced" >&6 - - # if the pragma is supported, use it (needed in the Trace code). -@@ -18298,14 +19670,14 @@ - cf_gnat_libraries=no - cf_gnat_projects=no - --echo "$as_me:18301: checking if GNAT supports project files" >&5 -+echo "$as_me:19673: checking if GNAT supports project files" >&5 - echo $ECHO_N "checking if GNAT supports project files... $ECHO_C" >&6 - case $cf_gnat_version in #(vi - 3.[0-9]*) #(vi - ;; - *) - case $cf_cv_system_name in #(vi -- cygwin*) #(vi -+ cygwin*|msys*) #(vi - ;; - *) - mkdir conftest.src conftest.bin conftest.lib -@@ -18366,14 +19738,14 @@ - esac - ;; - esac --echo "$as_me:18369: result: $cf_gnat_projects" >&5 -+echo "$as_me:19741: result: $cf_gnat_projects" >&5 - echo "${ECHO_T}$cf_gnat_projects" >&6 - - if test $cf_gnat_projects = yes - then -- echo "$as_me:18374: checking if GNAT supports libraries" >&5 -+ echo "$as_me:19746: checking if GNAT supports libraries" >&5 - echo $ECHO_N "checking if GNAT supports libraries... $ECHO_C" >&6 -- echo "$as_me:18376: result: $cf_gnat_libraries" >&5 -+ echo "$as_me:19748: result: $cf_gnat_libraries" >&5 - echo "${ECHO_T}$cf_gnat_libraries" >&6 - fi - -@@ -18393,7 +19765,7 @@ - USE_GNAT_LIBRARIES="#" - fi - --echo "$as_me:18396: checking for ada-compiler" >&5 -+echo "$as_me:19768: checking for ada-compiler" >&5 - echo $ECHO_N "checking for ada-compiler... $ECHO_C" >&6 - - # Check whether --with-ada-compiler or --without-ada-compiler was given. -@@ -18404,12 +19776,12 @@ - cf_ada_compiler=gnatmake - fi; - --echo "$as_me:18407: result: $cf_ada_compiler" >&5 -+echo "$as_me:19779: result: $cf_ada_compiler" >&5 - echo "${ECHO_T}$cf_ada_compiler" >&6 - - cf_ada_package=terminal_interface - --echo "$as_me:18412: checking for ada-include" >&5 -+echo "$as_me:19784: checking for ada-include" >&5 - echo $ECHO_N "checking for ada-include... $ECHO_C" >&6 - - # Check whether --with-ada-include or --without-ada-include was given. -@@ -18433,7 +19805,7 @@ - ;; - .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX - ;; --.\${*prefix}*) #(vi -+.\${*prefix}*|.\${*dir}*) #(vi - eval withval="$withval" - case ".$withval" in #(vi - .NONE/*) -@@ -18445,19 +19817,19 @@ - withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` - ;; - *) -- { { echo "$as_me:18448: error: expected a pathname, not \"$withval\"" >&5 -+ { { echo "$as_me:19820: error: expected a pathname, not \"$withval\"" >&5 - echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} - { (exit 1); exit 1; }; } - ;; - esac - - fi --ADA_INCLUDE="$withval" -+eval ADA_INCLUDE="$withval" - --echo "$as_me:18457: result: $ADA_INCLUDE" >&5 -+echo "$as_me:19829: result: $ADA_INCLUDE" >&5 - echo "${ECHO_T}$ADA_INCLUDE" >&6 - --echo "$as_me:18460: checking for ada-objects" >&5 -+echo "$as_me:19832: checking for ada-objects" >&5 - echo $ECHO_N "checking for ada-objects... $ECHO_C" >&6 - - # Check whether --with-ada-objects or --without-ada-objects was given. -@@ -18471,69 +19843,310 @@ - if test "x$prefix" != xNONE; then - cf_path_syntax="$prefix" - else -- cf_path_syntax="$ac_default_prefix" -+ cf_path_syntax="$ac_default_prefix" -+fi -+ -+case ".$withval" in #(vi -+.\$\(*\)*|.\'*\'*) #(vi -+ ;; -+..|./*|.\\*) #(vi -+ ;; -+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX -+ ;; -+.\${*prefix}*|.\${*dir}*) #(vi -+ eval withval="$withval" -+ case ".$withval" in #(vi -+ .NONE/*) -+ withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` -+ ;; -+ esac -+ ;; #(vi -+.no|.NONE/*) -+ withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` -+ ;; -+*) -+ { { echo "$as_me:19868: error: expected a pathname, not \"$withval\"" >&5 -+echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} -+ { (exit 1); exit 1; }; } -+ ;; -+esac -+ -+fi -+eval ADA_OBJECTS="$withval" -+ -+echo "$as_me:19877: result: $ADA_OBJECTS" >&5 -+echo "${ECHO_T}$ADA_OBJECTS" >&6 -+ -+echo "$as_me:19880: checking if an Ada95 shared-library should be built" >&5 -+echo $ECHO_N "checking if an Ada95 shared-library should be built... $ECHO_C" >&6 -+ -+# Check whether --with-ada-sharedlib or --without-ada-sharedlib was given. -+if test "${with_ada_sharedlib+set}" = set; then -+ withval="$with_ada_sharedlib" -+ with_ada_sharedlib=$withval -+else -+ with_ada_sharedlib=no -+fi; -+echo "$as_me:19890: result: $with_ada_sharedlib" >&5 -+echo "${ECHO_T}$with_ada_sharedlib" >&6 -+ -+ADA_SHAREDLIB='lib$(LIB_NAME).so.1' -+MAKE_ADA_SHAREDLIB="#" -+ -+if test "x$with_ada_sharedlib" != xno -+then -+ MAKE_ADA_SHAREDLIB= -+ if test "x$with_ada_sharedlib" != xyes -+ then -+ ADA_SHAREDLIB="$with_ada_sharedlib" -+ fi -+fi -+ -+ fi -+ fi -+else -+ cf_with_ada=no -+fi -+ -+# do this "late" to avoid conflict with header-checks -+if test "x$with_widec" = xyes ; then -+ echo "$as_me:19913: checking for wchar_t" >&5 -+echo $ECHO_N "checking for wchar_t... $ECHO_C" >&6 -+if test "${ac_cv_type_wchar_t+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 19919 "configure" -+#include "confdefs.h" -+$ac_includes_default -+int -+main () -+{ -+if ((wchar_t *) 0) -+ return 0; -+if (sizeof (wchar_t)) -+ return 0; -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:19934: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:19937: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:19940: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:19943: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_type_wchar_t=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_type_wchar_t=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:19953: result: $ac_cv_type_wchar_t" >&5 -+echo "${ECHO_T}$ac_cv_type_wchar_t" >&6 -+ -+echo "$as_me:19956: checking size of wchar_t" >&5 -+echo $ECHO_N "checking size of wchar_t... $ECHO_C" >&6 -+if test "${ac_cv_sizeof_wchar_t+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test "$ac_cv_type_wchar_t" = yes; then -+ if test "$cross_compiling" = yes; then -+ # Depending upon the size, compute the lo and hi bounds. -+cat >conftest.$ac_ext <<_ACEOF -+#line 19965 "configure" -+#include "confdefs.h" -+$ac_includes_default -+int -+main () -+{ -+int _array_ [1 - 2 * !((sizeof (wchar_t)) >= 0)] -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:19977: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:19980: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:19983: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:19986: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_lo=0 ac_mid=0 -+ while :; do -+ cat >conftest.$ac_ext <<_ACEOF -+#line 19991 "configure" -+#include "confdefs.h" -+$ac_includes_default -+int -+main () -+{ -+int _array_ [1 - 2 * !((sizeof (wchar_t)) <= $ac_mid)] -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:20003: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:20006: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:20009: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:20012: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_hi=$ac_mid; break -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_lo=`expr $ac_mid + 1`; ac_mid=`expr 2 '*' $ac_mid + 1` -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ done -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_hi=-1 ac_mid=-1 -+ while :; do -+ cat >conftest.$ac_ext <<_ACEOF -+#line 20028 "configure" -+#include "confdefs.h" -+$ac_includes_default -+int -+main () -+{ -+int _array_ [1 - 2 * !((sizeof (wchar_t)) >= $ac_mid)] -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:20040: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:20043: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:20046: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:20049: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_lo=$ac_mid; break -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_hi=`expr $ac_mid - 1`; ac_mid=`expr 2 '*' $ac_mid` -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ done -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+# Binary search between lo and hi bounds. -+while test "x$ac_lo" != "x$ac_hi"; do -+ ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` -+ cat >conftest.$ac_ext <<_ACEOF -+#line 20065 "configure" -+#include "confdefs.h" -+$ac_includes_default -+int -+main () -+{ -+int _array_ [1 - 2 * !((sizeof (wchar_t)) <= $ac_mid)] -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:20077: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:20080: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:20083: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:20086: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_hi=$ac_mid -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_lo=`expr $ac_mid + 1` - fi -- --case ".$withval" in #(vi --.\$\(*\)*|.\'*\'*) #(vi -- ;; --..|./*|.\\*) #(vi -- ;; --.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX -- ;; --.\${*prefix}*) #(vi -- eval withval="$withval" -- case ".$withval" in #(vi -- .NONE/*) -- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` -- ;; -- esac -- ;; #(vi --.no|.NONE/*) -- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` -- ;; --*) -- { { echo "$as_me:18496: error: expected a pathname, not \"$withval\"" >&5 --echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} -+rm -f conftest.$ac_objext conftest.$ac_ext -+done -+ac_cv_sizeof_wchar_t=$ac_lo -+else -+ if test "$cross_compiling" = yes; then -+ { { echo "$as_me:20099: error: cannot run test program while cross compiling" >&5 -+echo "$as_me: error: cannot run test program while cross compiling" >&2;} - { (exit 1); exit 1; }; } -- ;; --esac -- -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 20104 "configure" -+#include "confdefs.h" -+$ac_includes_default -+int -+main () -+{ -+FILE *f = fopen ("conftest.val", "w"); -+if (!f) -+ $ac_main_return (1); -+fprintf (f, "%d", (sizeof (wchar_t))); -+fclose (f); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:20120: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:20123: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:20125: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:20128: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_sizeof_wchar_t=`cat conftest.val` -+else -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 - fi --ADA_OBJECTS="$withval" -- --echo "$as_me:18505: result: $ADA_OBJECTS" >&5 --echo "${ECHO_T}$ADA_OBJECTS" >&6 -- --echo "$as_me:18508: checking if an Ada95 shared-library should be built" >&5 --echo $ECHO_N "checking if an Ada95 shared-library should be built... $ECHO_C" >&6 -- --# Check whether --with-ada-sharedlib or --without-ada-sharedlib was given. --if test "${with_ada_sharedlib+set}" = set; then -- withval="$with_ada_sharedlib" -- with_ada_sharedlib=$withval -+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+fi -+fi -+rm -f conftest.val - else -- with_ada_sharedlib=no --fi; --echo "$as_me:18518: result: $with_ada_sharedlib" >&5 --echo "${ECHO_T}$with_ada_sharedlib" >&6 -- --ADA_SHAREDLIB='lib$(LIB_NAME).so.1' --MAKE_ADA_SHAREDLIB="#" -- --if test "x$with_ada_sharedlib" != xno --then -- MAKE_ADA_SHAREDLIB= -- if test "x$with_ada_sharedlib" != xyes -- then -- ADA_SHAREDLIB="$with_ada_sharedlib" -- fi -+ ac_cv_sizeof_wchar_t=0 -+fi - fi -+echo "$as_me:20144: result: $ac_cv_sizeof_wchar_t" >&5 -+echo "${ECHO_T}$ac_cv_sizeof_wchar_t" >&6 -+cat >>confdefs.h <&5 -+echo "$as_me:20162: checking for library subsets" >&5 - echo $ECHO_N "checking for library subsets... $ECHO_C" >&6 - LIB_SUBSETS= - --if test "$cf_with_progs" = yes || test "$with_ticlib" != no || test "$with_termcap" != no; then -+if test "x$cf_with_progs" = xyes || test "$with_ticlib" != no || test "$with_termcap" != no; then - LIB_SUBSETS="${LIB_SUBSETS}ticlib" - if test "$with_ticlib" != no ; then - LIB_SUBSETS="${LIB_SUBSETS} " -@@ -18560,7 +20173,7 @@ - fi - - LIB_SUBSETS="${LIB_SUBSETS}termlib" --test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo" -+test "x$with_ext_funcs" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo" - - if test "$with_termlib" != no ; then - LIB_SUBSETS="${LIB_SUBSETS} " -@@ -18584,29 +20197,29 @@ - esac - fi - --test "$with_widec" = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar" --test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs" -+test "x$with_widec" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+widechar" -+test "x$with_ext_funcs" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs" - --echo "$as_me:18590: result: $LIB_SUBSETS" >&5 -+echo "$as_me:20203: result: $LIB_SUBSETS" >&5 - echo "${ECHO_T}$LIB_SUBSETS" >&6 - - ### Construct the list of include-directories to be generated - --CPPFLAGS="$CPPFLAGS -I. -I../include" --if test "$srcdir" != "."; then -- CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include" --fi - if test "$GCC" != yes; then -- CPPFLAGS="$CPPFLAGS -I\${includedir}" -+ CPPFLAGS="-I\${includedir} $CPPFLAGS" - elif test "$includedir" != "/usr/include"; then - if test "$includedir" = '${prefix}/include' ; then -- if test $prefix != /usr ; then -- CPPFLAGS="$CPPFLAGS -I\${includedir}" -+ if test x$prefix != x/usr ; then -+ CPPFLAGS="-I\${includedir} $CPPFLAGS" - fi - else -- CPPFLAGS="$CPPFLAGS -I\${includedir}" -+ CPPFLAGS="-I\${includedir} $CPPFLAGS" - fi - fi -+if test "$srcdir" != "."; then -+ CPPFLAGS="-I\${srcdir}/../include $CPPFLAGS" -+fi -+CPPFLAGS="-I. -I../include $CPPFLAGS" - - ACPPFLAGS="-I. -I../include -I../../include $ACPPFLAGS" - if test "$srcdir" != "."; then -@@ -18616,7 +20229,7 @@ - ACPPFLAGS="$ACPPFLAGS -I\${includedir}" - elif test "$includedir" != "/usr/include"; then - if test "$includedir" = '${prefix}/include' ; then -- if test $prefix != /usr ; then -+ if test x$prefix != x/usr ; then - ACPPFLAGS="$ACPPFLAGS -I\${includedir}" - fi - else -@@ -18625,7 +20238,7 @@ - fi - - ### Build up pieces for makefile rules --echo "$as_me:18628: checking default library suffix" >&5 -+echo "$as_me:20241: checking default library suffix" >&5 - echo $ECHO_N "checking default library suffix... $ECHO_C" >&6 - - case $DFT_LWR_MODEL in -@@ -18636,36 +20249,32 @@ - shared) DFT_ARG_SUFFIX='' ;; - esac - test -n "$LIB_SUFFIX" && DFT_ARG_SUFFIX="${LIB_SUFFIX}${DFT_ARG_SUFFIX}" --echo "$as_me:18639: result: $DFT_ARG_SUFFIX" >&5 -+echo "$as_me:20252: result: $DFT_ARG_SUFFIX" >&5 - echo "${ECHO_T}$DFT_ARG_SUFFIX" >&6 - --echo "$as_me:18642: checking default library-dependency suffix" >&5 -+echo "$as_me:20255: checking default library-dependency suffix" >&5 - echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6 - -- case $DFT_LWR_MODEL in #(vi -- libtool) #(vi -+ case X$DFT_LWR_MODEL in #(vi -+ Xlibtool) #(vi - DFT_LIB_SUFFIX='.la' - DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX - ;; -- normal) #(vi -- DFT_LIB_SUFFIX='.a' -- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX -- ;; -- debug) #(vi -+ Xdebug) #(vi - DFT_LIB_SUFFIX='_g.a' - DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX - ;; -- profile) #(vi -+ Xprofile) #(vi - DFT_LIB_SUFFIX='_p.a' - DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX - ;; -- shared) #(vi -+ Xshared) #(vi - case $cf_cv_system_name in -- aix[56]*) #(vi -+ aix[5-7]*) #(vi - DFT_LIB_SUFFIX='.a' - DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX - ;; -- cygwin*) #(vi -+ cygwin*|msys*|mingw*) #(vi - DFT_LIB_SUFFIX='.dll' - DFT_DEP_SUFFIX='.dll.a' - ;; -@@ -18685,17 +20294,23 @@ - ;; - esac - ;; -- *) DFT_LIB_SUFFIX='.so' -+ *) #(vi -+ DFT_LIB_SUFFIX='.so' - DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX - ;; - esac -+ ;; -+ *) -+ DFT_LIB_SUFFIX='.a' -+ DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX -+ ;; - esac - test -n "$LIB_SUFFIX" && DFT_LIB_SUFFIX="${LIB_SUFFIX}${DFT_LIB_SUFFIX}" - test -n "$LIB_SUFFIX" && DFT_DEP_SUFFIX="${LIB_SUFFIX}${DFT_DEP_SUFFIX}" --echo "$as_me:18695: result: $DFT_DEP_SUFFIX" >&5 -+echo "$as_me:20310: result: $DFT_DEP_SUFFIX" >&5 - echo "${ECHO_T}$DFT_DEP_SUFFIX" >&6 - --echo "$as_me:18698: checking default object directory" >&5 -+echo "$as_me:20313: checking default object directory" >&5 - echo $ECHO_N "checking default object directory... $ECHO_C" >&6 - - case $DFT_LWR_MODEL in -@@ -18705,47 +20320,47 @@ - profile) DFT_OBJ_SUBDIR='obj_p' ;; - shared) - case $cf_cv_system_name in #(vi -- cygwin) #(vi -+ cygwin|msys) #(vi - DFT_OBJ_SUBDIR='objects' ;; - *) - DFT_OBJ_SUBDIR='obj_s' ;; - esac - esac --echo "$as_me:18714: result: $DFT_OBJ_SUBDIR" >&5 -+echo "$as_me:20329: result: $DFT_OBJ_SUBDIR" >&5 - echo "${ECHO_T}$DFT_OBJ_SUBDIR" >&6 - --# libtool thinks it can make c++ shared libraries (perhaps only g++) --if test "$cf_with_cxx" = yes ; then --echo "$as_me:18719: checking c++ library-dependency suffix" >&5 -+if test "x$cf_with_cxx" = xyes ; then -+echo "$as_me:20333: checking c++ library-dependency suffix" >&5 - echo $ECHO_N "checking c++ library-dependency suffix... $ECHO_C" >&6 - if test "$with_libtool" != "no"; then -+ # libtool thinks it can make c++ shared libraries (perhaps only g++) -+ CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX -+elif test "$with_shared_cxx" != "no"; then -+ # also for g++ users... - CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX - else -+ # we normally make a static library because C/C++ library rules differ - -- case normal in #(vi -- libtool) #(vi -+ case Xnormal in #(vi -+ Xlibtool) #(vi - CXX_LIB_SUFFIX='.la' - CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX - ;; -- normal) #(vi -- CXX_LIB_SUFFIX='.a' -- CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX -- ;; -- debug) #(vi -+ Xdebug) #(vi - CXX_LIB_SUFFIX='_g.a' - CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX - ;; -- profile) #(vi -+ Xprofile) #(vi - CXX_LIB_SUFFIX='_p.a' - CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX - ;; -- shared) #(vi -+ Xshared) #(vi - case $cf_cv_system_name in -- aix[56]*) #(vi -+ aix[5-7]*) #(vi - CXX_LIB_SUFFIX='.a' - CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX - ;; -- cygwin*) #(vi -+ cygwin*|msys*|mingw*) #(vi - CXX_LIB_SUFFIX='.dll' - CXX_DEP_SUFFIX='.dll.a' - ;; -@@ -18765,21 +20380,28 @@ - ;; - esac - ;; -- *) CXX_LIB_SUFFIX='.so' -+ *) #(vi -+ CXX_LIB_SUFFIX='.so' - CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX - ;; - esac -+ ;; -+ *) -+ CXX_LIB_SUFFIX='.a' -+ CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX -+ ;; - esac - test -n "$LIB_SUFFIX" && CXX_LIB_SUFFIX="${LIB_SUFFIX}${CXX_LIB_SUFFIX}" - test -n "$LIB_SUFFIX" && CXX_DEP_SUFFIX="${LIB_SUFFIX}${CXX_DEP_SUFFIX}" -+ - fi --echo "$as_me:18776: result: $CXX_LIB_SUFFIX" >&5 -+echo "$as_me:20398: result: $CXX_LIB_SUFFIX" >&5 - echo "${ECHO_T}$CXX_LIB_SUFFIX" >&6 - - fi - - # do not want -ldl in build except as needed for -lncurses dependency --if test "$with_dlsym" = yes ; then -+if test "x$with_dlsym" = xyes ; then - if test $DFT_LWR_MODEL = shared || \ - test $DFT_LWR_MODEL = libtool ; then - -@@ -18793,7 +20415,7 @@ - # TICS_LIST and TINFO_LIST are needed to build libtic.so and libterm.so, but - # do not need libdl - TICS_LIST= --if test "$with_dlsym" = yes ; then -+if test "x$with_dlsym" = xyes ; then - - # remove dl library from $SHLIB_LIST - TINFO_LIST=`echo "$SHLIB_LIST" | sed -e 's/-ldl[ ]//g' -e 's/-ldl$//'` -@@ -18802,7 +20424,7 @@ - - if test "$with_ticlib" != no ; then - -- if test "$with_ticlib" != yes ; then -+ if test "x$with_ticlib" != xyes ; then - TICS_NAME=$with_ticlib - TICS_ARG_SUFFIX="${with_ticlib}`echo ${DFT_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" - TICS_DEP_SUFFIX="${with_ticlib}`echo ${DFT_DEP_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" -@@ -18812,14 +20434,16 @@ - TICS_DEP_SUFFIX="${TICS_NAME}${DFT_DEP_SUFFIX}" - TICS_LIB_SUFFIX="${TICS_NAME}${LIB_SUFFIX}" - fi -- TICS_ARGS="-L${LIB_DIR} -l${TICS_LIB_SUFFIX}" -+ TICS_LDFLAGS="-L${LIB_DIR}" -+ TICS_LIBS="-l${TICS_LIB_SUFFIX}" - else -- TICS_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}" -+ TICS_LDFLAGS="-L${LIB_DIR}" -+ TICS_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX}" - fi - - if test "$with_termlib" != no ; then - -- if test "$with_termlib" != yes ; then -+ if test "x$with_termlib" != xyes ; then - TINFO_NAME=$with_termlib - TINFO_SUFFIX="`echo ${DFT_LIB_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" - TINFO_ARG_SUFFIX="${with_termlib}`echo ${DFT_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" -@@ -18837,14 +20461,22 @@ - if test "$DFT_LWR_MODEL" = "libtool"; then - TEST_ARGS="${TEST_DEPS}" - TEST_ARG2="${TEST_DEP2}" -- TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS" -+ TINFO_LDFLAGS="-L${LIB_DIR}" -+ TINFO_LIBS="$TEST_ARGS" - TICS_LIST="$SHLIB_LIST $TEST_ARGS" - SHLIB_LIST="${SHLIB_LIST} $TEST_ARGS" - else - TEST_ARGS="-l${TINFO_ARG_SUFFIX}" - TEST_ARG2="-l${TINFO_ARG_SUFFIX}" -- TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" -- TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS" -+ if test "x$with_term_driver" != xno ; then -+ TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}" -+ TICS_LIBS="$TICS_LIBS -l${LIB_NAME}${DFT_ARG_SUFFIX}" -+ TINFO_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS" -+ else -+ TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" -+ TINFO_LIBS="$TEST_ARGS" -+ fi -+ TINFO_LDFLAGS="-L${LIB_DIR}" - SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" - fi - else -@@ -18852,25 +20484,26 @@ - TINFO_NAME=${LIB_NAME} - TINFO_SUFFIX=${DFT_LIB_SUFFIX} - TINFO_ARG_SUFFIX=${LIB_NAME}${DFT_ARG_SUFFIX} -- if test "$with_tic_depends" = yes ; then -+ if test "x$with_tic_depends" = xyes ; then - TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}" - else - TICS_LIST="$SHLIB_LIST" - fi - -- TINFO_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}" -+ TINFO_LDFLAGS="-L${LIB_DIR}" -+ TINFO_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX}" - fi - - if test "$DFT_LWR_MODEL" = shared ; then - case $cf_cv_system_name in #(vi -- cygwin*) -- # "lib" files have ".dll.a" suffix, "cyg" files have ".dll" -+ cygwin*|msys*) -+ # "lib" files have ".dll.a" suffix, "cyg"or "msys-" files have ".dll" - TINFO_SUFFIX=.dll - ;; - esac - fi - --if test "$with_dlsym" = yes ; then -+if test "x$with_dlsym" = xyes ; then - - # remove dl library from $TICS_LIST - TICS_LIST=`echo "$TICS_LIST" | sed -e 's/-ldl[ ]//g' -e 's/-ldl$//'` -@@ -18882,7 +20515,7 @@ - fi - - # needed for Ada95 --TINFO_ARGS2=`echo "$TINFO_ARGS" | sed -e 's,-L\.\./,-L../../,'` -+TINFO_LDFLAGS2=`echo "$TINFO_LDFLAGS" | sed -e 's,-L\.\./,-L../../,'` - - case $DFT_LWR_MODEL in - normal|debug|profile) -@@ -18900,7 +20533,7 @@ - esac - else - case $cf_cv_system_name in #( -- aix[456]*) #( from ld manpage -+ aix[4-7]*) #( from ld manpage - LDFLAGS_STATIC=-bstatic - LDFLAGS_SHARED=-bdynamic - ;; -@@ -18927,19 +20560,19 @@ - - if test -n "$LDFLAGS_STATIC" && test -n "$LDFLAGS_SHARED" - then -- echo "$as_me:18930: checking if linker supports switching between static/dynamic" >&5 -+ echo "$as_me:20563: checking if linker supports switching between static/dynamic" >&5 - echo $ECHO_N "checking if linker supports switching between static/dynamic... $ECHO_C" >&6 - - rm -f libconftest.a - cat >conftest.$ac_ext < - int cf_ldflags_static(FILE *fp) { return fflush(fp); } - EOF -- if { (eval echo "$as_me:18939: \"$ac_compile\"") >&5 -+ if { (eval echo "$as_me:20572: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:18942: \$? = $ac_status" >&5 -+ echo "$as_me:20575: \$? = $ac_status" >&5 - (exit $ac_status); } ; then - ( $AR $ARFLAGS libconftest.a conftest.o ) 2>&5 1>/dev/null - ( eval $RANLIB libconftest.a ) 2>&5 >/dev/null -@@ -18950,10 +20583,10 @@ - - LIBS="$LDFLAGS_STATIC -L`pwd` -lconftest $LDFLAGS_DYNAMIC $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 18953 "configure" -+#line 20586 "configure" - #include "confdefs.h" - --#line 18956 "configure" -+#line 20589 "configure" - #include - int cf_ldflags_static(FILE *fp); - -@@ -18968,18 +20601,28 @@ - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:18971: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:20604: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:18974: \$? = $ac_status" >&5 -+ echo "$as_me:20607: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:18977: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:20610: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:18980: \$? = $ac_status" >&5 -+ echo "$as_me:20613: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_ldflags_static=yes -+ -+ # some linkers simply ignore the -dynamic -+ case x`file conftest$ac_exeext 2>/dev/null` in #(vi -+ *static*) # (vi -+ cf_ldflags_static=no -+ ;; -+ *) -+ cf_ldflags_static=yes -+ ;; -+ esac -+ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -@@ -18990,7 +20633,7 @@ - rm -f libconftest.* - LIBS="$cf_save_LIBS" - -- echo "$as_me:18993: result: $cf_ldflags_static" >&5 -+ echo "$as_me:20636: result: $cf_ldflags_static" >&5 - echo "${ECHO_T}$cf_ldflags_static" >&6 - - if test $cf_ldflags_static != yes -@@ -19006,20 +20649,25 @@ - ;; - esac - --echo "$as_me:19009: checking where we will install curses.h" >&5 -+echo "$as_me:20652: checking where we will install curses.h" >&5 - echo $ECHO_N "checking where we will install curses.h... $ECHO_C" >&6 --test "$with_overwrite" = no && \ --test "x$includedir" = 'x${prefix}/include' && \ -- includedir='${prefix}/include/ncurses'${LIB_SUFFIX} --echo "$as_me:19014: result: $includedir" >&5 --echo "${ECHO_T}$includedir" >&6 -+ -+includesubdir= -+if test "$with_overwrite" = no && \ -+ ( test "x$includedir" = 'x${prefix}/include' || \ -+ test "x$includedir" = "x${prefix}/include" ) -+then -+ includesubdir="/ncurses${LIB_SUFFIX}" -+fi -+echo "$as_me:20662: result: ${includedir}${includesubdir}" >&5 -+echo "${ECHO_T}${includedir}${includesubdir}" >&6 - - ### Resolve a conflict between normal and wide-curses by forcing applications - ### that will need libutf8 to add it to their configure script. - if test "$with_overwrite" != no ; then - if test "$NCURSES_LIBUTF8" = 1 ; then - NCURSES_LIBUTF8='defined(HAVE_LIBUTF8_H)' -- { echo "$as_me:19022: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&5 -+ { echo "$as_me:20670: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&5 - echo "$as_me: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&2;} - fi - fi -@@ -19029,6 +20677,7 @@ - NCURSES_TREE= - - ### predefined stuff for the test programs -+ - cat >>confdefs.h <<\EOF - #define HAVE_SLK_COLOR 1 - EOF -@@ -19036,7 +20685,7 @@ - ### Construct the list of subdirectories for which we'll customize makefiles - ### with the appropriate compile-rules. - --echo "$as_me:19039: checking for src modules" >&5 -+echo "$as_me:20688: checking for src modules" >&5 - echo $ECHO_N "checking for src modules... $ECHO_C" >&6 - - # dependencies and linker-arguments for test-programs -@@ -19050,6 +20699,7 @@ - TEST_ARG2="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARG2" - fi - -+PC_MODULES_TO_MAKE="ncurses${DFT_ARG_SUFFIX}" - cf_cv_src_modules= - for cf_dir in $modules_to_build - do -@@ -19096,10 +20746,11 @@ - TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS" - TEST_ARG2="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARG2" - fi -+ PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ${cf_dir}${DFT_ARG_SUFFIX}" - fi - fi - done --echo "$as_me:19102: result: $cf_cv_src_modules" >&5 -+echo "$as_me:20753: result: $cf_cv_src_modules" >&5 - echo "${ECHO_T}$cf_cv_src_modules" >&6 - - TEST_ARGS="-L${LIB_DIR} $TEST_ARGS" -@@ -19117,11 +20768,19 @@ - if test "x$cf_with_tests" != "xno" ; then - SRC_SUBDIRS="$SRC_SUBDIRS test" - fi --test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc" --test "$cf_with_cxx_binding" != no && SRC_SUBDIRS="$SRC_SUBDIRS c++" -+if test "x$cf_with_db_install" = xyes; then -+ test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc" -+fi -+if test "$cf_with_cxx_binding" != no; then -+ PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ncurses++${DFT_ARG_SUFFIX}" -+ SRC_SUBDIRS="$SRC_SUBDIRS c++" -+fi -+ -+test "x$with_termlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TINFO_ARG_SUFFIX" -+test "x$with_ticlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TICS_ARG_SUFFIX" - - ADA_SUBDIRS= --if test "$cf_cv_prog_gnat_correct" = yes && test -f $srcdir/Ada95/Makefile.in; then -+if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = xyes && test -f $srcdir/Ada95/Makefile.in; then - SRC_SUBDIRS="$SRC_SUBDIRS Ada95" - ADA_SUBDIRS="gen src" - if test "x$cf_with_tests" != "xno" ; then -@@ -19143,7 +20802,7 @@ - - fi - --if test "$cf_with_ada" != "no" && test "$cf_cv_prog_gnat_correct" != "no"; then -+if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = "xyes"; then - SUB_MAKEFILES="$SUB_MAKEFILES Ada95/gen/adacurses${DFT_ARG_SUFFIX}-config:Ada95/gen/adacurses-config.in" - SUB_MAKEFILES="$SUB_MAKEFILES man/adacurses${DFT_ARG_SUFFIX}-config.1:man/MKada_config.in" - fi -@@ -19159,7 +20818,7 @@ - profile) cf_subdir='obj_p' ;; - shared) - case $cf_cv_system_name in #(vi -- cygwin) #(vi -+ cygwin|msys) #(vi - cf_subdir='objects' ;; - *) - cf_subdir='obj_s' ;; -@@ -19181,6 +20840,7 @@ - NCURSES_SHLIB2='sh $(top_srcdir)/misc/shlib' - - # values to use as strings -+ - cat >>confdefs.h <&5 -+echo "$as_me:20974: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_path_TIC_PATH+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -19322,7 +20988,7 @@ - test -z "$ac_dir" && ac_dir=. - if $as_executable_p "$ac_dir/$ac_word"; then - ac_cv_path_TIC_PATH="$ac_dir/$ac_word" -- echo "$as_me:19325: found $ac_dir/$ac_word" >&5 -+ echo "$as_me:20991: found $ac_dir/$ac_word" >&5 - break - fi - done -@@ -19334,10 +21000,10 @@ - TIC_PATH=$ac_cv_path_TIC_PATH - - if test -n "$TIC_PATH"; then -- echo "$as_me:19337: result: $TIC_PATH" >&5 -+ echo "$as_me:21003: result: $TIC_PATH" >&5 - echo "${ECHO_T}$TIC_PATH" >&6 - else -- echo "$as_me:19340: result: no" >&5 -+ echo "$as_me:21006: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -19345,7 +21011,7 @@ - then - if test "$TIC_PATH" = unknown - then -- { echo "$as_me:19348: WARNING: no tic program found for fallbacks" >&5 -+ { echo "$as_me:21014: WARNING: no tic program found for fallbacks" >&5 - echo "$as_me: WARNING: no tic program found for fallbacks" >&2;} - fi - fi -@@ -19358,13 +21024,56 @@ - - ADAHTML_DIR=../../doc/html/ada - --SUB_SCRIPTS= -+# these could be configurable, but are not currently -+PANEL_NAME=panel -+MENU_NAME=menu -+FORM_NAME=form -+CXX_NAME=ncurses++ -+ -+# workaround for g++ versus Solaris (20131116) - case $cf_cv_system_name in #(vi --*mingw32*) #(vi -- SUB_SCRIPTS="mk-dlls.sh" -+solaris2*) #(vi -+ case "x$CPPFLAGS" in #(vi -+ *-D_XOPEN_SOURCE_EXTENDED*) -+ test -n "$verbose" && echo " moving _XOPEN_SOURCE_EXTENDED to work around g++ problem" 1>&6 -+ -+echo "${as_me:-configure}:21040: testing moving _XOPEN_SOURCE_EXTENDED to work around g++ problem ..." 1>&5 -+ -+ CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED" -+ CPPFLAGS=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/-D_XOPEN_SOURCE_EXTENDED//'` -+ ;; -+ esac -+ ;; -+esac -+ -+# AC_CHECK_SIZEOF demands a literal parameter, no variables. So we do this. -+case "x$NCURSES_OSPEED" in #(vi -+*short*) #(vi -+ cf_compatible=1 -+ ;; -+*) -+ cf_compatible=0 -+ ;; -+esac -+ -+cat >>confdefs.h <confcache <<\_ACEOF -@@ -19446,7 +21155,7 @@ - : ${CONFIG_STATUS=./config.status} - ac_clean_files_save=$ac_clean_files - ac_clean_files="$ac_clean_files $CONFIG_STATUS" --{ echo "$as_me:19449: creating $CONFIG_STATUS" >&5 -+{ echo "$as_me:21158: creating $CONFIG_STATUS" >&5 - echo "$as_me: creating $CONFIG_STATUS" >&6;} - cat >$CONFIG_STATUS <<_ACEOF - #! $SHELL -@@ -19578,7 +21287,7 @@ - cat >>$CONFIG_STATUS <&5 - echo "$as_me: error: ambiguous option: $1 - Try \`$0 --help' for more information." >&2;} -@@ -19641,7 +21350,7 @@ - ac_need_defaults=false;; - - # This is an error. -- -*) { { echo "$as_me:19644: error: unrecognized option: $1 -+ -*) { { echo "$as_me:21353: 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;} -@@ -19660,7 +21369,7 @@ - ## Running config.status. ## - ## ----------------------- ## - --This file was extended by $as_me 2.52.20101002, executed with -+This file was extended by $as_me 2.52.20121002, executed with - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS -@@ -19682,10 +21391,11 @@ - AWK="$AWK" - DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX" - DFT_LWR_MODEL="$DFT_LWR_MODEL" --ECHO_LINK="$ECHO_LINK" -+ECHO_LD="$ECHO_LD" - LDCONFIG="$LDCONFIG" - LIBTOOL_VERSION="$LIBTOOL_VERSION" - LIB_NAME="$LIB_NAME" -+LIB_PREFIX="$LIB_PREFIX" - LIB_SUBSETS="$LIB_SUBSETS" - LIB_SUFFIX="$LIB_SUFFIX" - LIB_TRACING="$LIB_TRACING" -@@ -19707,7 +21417,7 @@ - TINFO_SUFFIX="$TINFO_SUFFIX" - USE_OLD_MAKERULES="$USE_OLD_MAKERULES" - WITH_CURSES_H="$with_curses_h" --WITH_ECHO="$with_echo" -+WITH_ECHO="${enable_echo:=yes}" - WITH_OVERWRITE="$with_overwrite" - cf_LIST_MODELS="$cf_list_models" - cf_cv_abi_version="$cf_cv_abi_version" -@@ -19717,16 +21427,20 @@ - cf_cv_enable_opaque="$cf_cv_enable_opaque" - cf_cv_prog_CC_c_o=$cf_cv_prog_CC_c_o - cf_cv_prog_CXX_c_o=$cf_cv_prog_CXX_c_o -+cf_cv_prog_gnat_correct=$cf_cv_prog_gnat_correct - cf_cv_rel_version="$cf_cv_rel_version" - cf_cv_rm_so_locs="$cf_cv_rm_so_locs" - cf_cv_shared_soname='$cf_cv_shared_soname' - cf_cv_shlib_version="$cf_cv_shlib_version" - cf_cv_shlib_version_infix="$cf_cv_shlib_version_infix" - cf_cv_system_name="$cf_cv_system_name" -+cf_cv_term_driver="$with_term_driver" - cf_with_ada="$cf_with_ada" - cf_with_cxx_binding="$cf_with_cxx_binding" -+cf_with_db_install="$cf_with_db_install" - cf_with_manpages="$cf_with_manpages" - cf_with_tests="$cf_with_tests" -+with_shared_cxx="$with_shared_cxx" - host="$host" - target="$target" - -@@ -19747,7 +21461,7 @@ - "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:19750: error: invalid argument: $ac_config_target" >&5 -+ *) { { echo "$as_me:21464: error: invalid argument: $ac_config_target" >&5 - echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -@@ -19806,6 +21520,7 @@ - s,@bindir@,$bindir,;t t - s,@sbindir@,$sbindir,;t t - s,@libexecdir@,$libexecdir,;t t -+s,@datarootdir@,$datarootdir,;t t - s,@datadir@,$datadir,;t t - s,@sysconfdir@,$sysconfdir,;t t - s,@sharedstatedir@,$sharedstatedir,;t t -@@ -19858,9 +21573,8 @@ - s,@ac_ct_CC@,$ac_ct_CC,;t t - s,@EXEEXT@,$EXEEXT,;t t - s,@OBJEXT@,$OBJEXT,;t t --s,@CPP@,$CPP,;t t - s,@EXTRA_CPPFLAGS@,$EXTRA_CPPFLAGS,;t t --s,@PROG_EXT@,$PROG_EXT,;t t -+s,@CPP@,$CPP,;t t - s,@LDCONFIG@,$LDCONFIG,;t t - s,@CXX@,$CXX,;t t - s,@CXXFLAGS@,$CXXFLAGS,;t t -@@ -19887,6 +21601,8 @@ - s,@ac_ct_LD@,$ac_ct_LD,;t t - s,@AR@,$AR,;t t - s,@ac_ct_AR@,$ac_ct_AR,;t t -+s,@NM@,$NM,;t t -+s,@ac_ct_NM@,$ac_ct_NM,;t t - s,@ARFLAGS@,$ARFLAGS,;t t - s,@DESTDIR@,$DESTDIR,;t t - s,@BUILD_CC@,$BUILD_CC,;t t -@@ -19900,6 +21616,7 @@ - s,@cf_list_models@,$cf_list_models,;t t - s,@LIBTOOL_VERSION@,$LIBTOOL_VERSION,;t t - s,@LIBTOOL@,$LIBTOOL,;t t -+s,@ac_ct_LIBTOOL@,$ac_ct_LIBTOOL,;t t - s,@LT_UNDEF@,$LT_UNDEF,;t t - s,@LIBTOOL_CXX@,$LIBTOOL_CXX,;t t - s,@LIBTOOL_OPTS@,$LIBTOOL_OPTS,;t t -@@ -19921,25 +21638,32 @@ - s,@CC_G_OPT@,$CC_G_OPT,;t t - s,@CXX_G_OPT@,$CXX_G_OPT,;t t - s,@LD_MODEL@,$LD_MODEL,;t t -+s,@shlibdir@,$shlibdir,;t t -+s,@MAKE_DLLS@,$MAKE_DLLS,;t t - s,@CC_SHARED_OPTS@,$CC_SHARED_OPTS,;t t - s,@LD_RPATH_OPT@,$LD_RPATH_OPT,;t t - s,@LD_SHARED_OPTS@,$LD_SHARED_OPTS,;t t - s,@MK_SHARED_LIB@,$MK_SHARED_LIB,;t t -+s,@RM_SHARED_OPTS@,$RM_SHARED_OPTS,;t t - s,@LINK_PROGS@,$LINK_PROGS,;t t - s,@LINK_TESTS@,$LINK_TESTS,;t t - s,@EXTRA_LDFLAGS@,$EXTRA_LDFLAGS,;t t - s,@LOCAL_LDFLAGS@,$LOCAL_LDFLAGS,;t t - s,@LOCAL_LDFLAGS2@,$LOCAL_LDFLAGS2,;t t - s,@INSTALL_LIB@,$INSTALL_LIB,;t t -+s,@RPATH_LIST@,$RPATH_LIST,;t t - s,@cf_ldd_prog@,$cf_ldd_prog,;t t - s,@TERMINFO_SRC@,$TERMINFO_SRC,;t t -+s,@NCURSES_USE_DATABASE@,$NCURSES_USE_DATABASE,;t t - s,@FALLBACK_LIST@,$FALLBACK_LIST,;t t - s,@WHICH_XTERM@,$WHICH_XTERM,;t t -+s,@XTERM_KBS@,$XTERM_KBS,;t t - s,@TERMINFO_DIRS@,$TERMINFO_DIRS,;t t - s,@TERMINFO@,$TERMINFO,;t t - s,@MAKE_TERMINFO@,$MAKE_TERMINFO,;t t - s,@USE_BIG_STRINGS@,$USE_BIG_STRINGS,;t t - s,@TERMPATH@,$TERMPATH,;t t -+s,@NCURSES_USE_TERMCAP@,$NCURSES_USE_TERMCAP,;t t - s,@BROKEN_LINKER@,$BROKEN_LINKER,;t t - s,@NCURSES_CH_T@,$NCURSES_CH_T,;t t - s,@NCURSES_LIBUTF8@,$NCURSES_LIBUTF8,;t t -@@ -19955,6 +21679,7 @@ - s,@TERMINFO_CAPS@,$TERMINFO_CAPS,;t t - s,@NCURSES_OSPEED@,$NCURSES_OSPEED,;t t - s,@NCURSES_CCHARW_MAX@,$NCURSES_CCHARW_MAX,;t t -+s,@NCURSES_TPARM_ARG@,$NCURSES_TPARM_ARG,;t t - s,@MANPAGE_RENAMES@,$MANPAGE_RENAMES,;t t - s,@NCURSES_EXT_FUNCS@,$NCURSES_EXT_FUNCS,;t t - s,@GENERATED_EXT_FUNCS@,$GENERATED_EXT_FUNCS,;t t -@@ -19972,6 +21697,11 @@ - s,@NCURSES_OPAQUE@,$NCURSES_OPAQUE,;t t - s,@NCURSES_SIZE_T@,$NCURSES_SIZE_T,;t t - s,@NCURSES_WRAP_PREFIX@,$NCURSES_WRAP_PREFIX,;t t -+s,@ECHO_LT@,$ECHO_LT,;t t -+s,@ECHO_LD@,$ECHO_LD,;t t -+s,@RULE_CC@,$RULE_CC,;t t -+s,@SHOW_CC@,$SHOW_CC,;t t -+s,@ECHO_CC@,$ECHO_CC,;t t - s,@ECHO_LINK@,$ECHO_LINK,;t t - s,@ADAFLAGS@,$ADAFLAGS,;t t - s,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t -@@ -20015,14 +21745,17 @@ - s,@TICS_ARG_SUFFIX@,$TICS_ARG_SUFFIX,;t t - s,@TICS_DEP_SUFFIX@,$TICS_DEP_SUFFIX,;t t - s,@TICS_LIB_SUFFIX@,$TICS_LIB_SUFFIX,;t t --s,@TICS_ARGS@,$TICS_ARGS,;t t -+s,@TICS_LDFLAGS@,$TICS_LDFLAGS,;t t -+s,@TICS_LIBS@,$TICS_LIBS,;t t - s,@TINFO_ARG_SUFFIX@,$TINFO_ARG_SUFFIX,;t t - s,@TINFO_DEP_SUFFIX@,$TINFO_DEP_SUFFIX,;t t - s,@TINFO_LIB_SUFFIX@,$TINFO_LIB_SUFFIX,;t t --s,@TINFO_ARGS@,$TINFO_ARGS,;t t --s,@TINFO_ARGS2@,$TINFO_ARGS2,;t t -+s,@TINFO_LDFLAGS@,$TINFO_LDFLAGS,;t t -+s,@TINFO_LIBS@,$TINFO_LIBS,;t t -+s,@TINFO_LDFLAGS2@,$TINFO_LDFLAGS2,;t t - s,@LDFLAGS_STATIC@,$LDFLAGS_STATIC,;t t - s,@LDFLAGS_SHARED@,$LDFLAGS_SHARED,;t t -+s,@includesubdir@,$includesubdir,;t t - s,@WITH_OVERWRITE@,$WITH_OVERWRITE,;t t - s,@TICS_LIST@,$TICS_LIST,;t t - s,@TINFO_LIST@,$TINFO_LIST,;t t -@@ -20032,10 +21765,12 @@ - s,@TEST_DEPS@,$TEST_DEPS,;t t - s,@TEST_ARG2@,$TEST_ARG2,;t t - s,@TEST_DEP2@,$TEST_DEP2,;t t -+s,@PC_MODULES_TO_MAKE@,$PC_MODULES_TO_MAKE,;t t - s,@ADA_SUBDIRS@,$ADA_SUBDIRS,;t t - s,@DIRS_TO_MAKE@,$DIRS_TO_MAKE,;t t - s,@NCURSES_SHLIB2@,$NCURSES_SHLIB2,;t t - s,@HAVE_TCGETATTR@,$HAVE_TCGETATTR,;t t -+s,@HAVE_STDINT_H@,$HAVE_STDINT_H,;t t - s,@HAVE_TERMIO_H@,$HAVE_TERMIO_H,;t t - s,@HAVE_TERMIOS_H@,$HAVE_TERMIOS_H,;t t - s,@MAKE_PC_FILES@,$MAKE_PC_FILES,;t t -@@ -20043,6 +21778,10 @@ - s,@TIC_PATH@,$TIC_PATH,;t t - s,@MAKE_TESTS@,$MAKE_TESTS,;t t - s,@ADAHTML_DIR@,$ADAHTML_DIR,;t t -+s,@PANEL_NAME@,$PANEL_NAME,;t t -+s,@MENU_NAME@,$MENU_NAME,;t t -+s,@FORM_NAME@,$FORM_NAME,;t t -+s,@CXX_NAME@,$CXX_NAME,;t t - CEOF - - EOF -@@ -20157,7 +21896,7 @@ - esac - - if test x"$ac_file" != x-; then -- { echo "$as_me:20160: creating $ac_file" >&5 -+ { echo "$as_me:21899: creating $ac_file" >&5 - echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi -@@ -20175,7 +21914,7 @@ - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) -- test -f "$f" || { { echo "$as_me:20178: error: cannot find input file: $f" >&5 -+ test -f "$f" || { { echo "$as_me:21917: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo $f;; -@@ -20188,13 +21927,45 @@ - echo $srcdir/$f - else - # /dev/null tree -- { { echo "$as_me:20191: error: cannot find input file: $f" >&5 -+ { { echo "$as_me:21930: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - EOF -+cat >>$CONFIG_STATUS <<\EOF -+ ac_warn_datarootdir=no -+ if test x"$ac_file" != x-; then -+ for ac_item in $ac_file_inputs -+ do -+ ac_seen=`grep '@\(datadir\|mandir\|infodir\)@' $ac_item` -+ if test -n "$ac_seen"; then -+ ac_used=`grep '@datarootdir@' $ac_item` -+ if test -z "$ac_used"; then -+ { echo "$as_me:21946: 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;} -+ ac_warn_datarootdir=yes -+ fi -+ fi -+ ac_seen=`grep '${datarootdir}' $ac_item` -+ if test -n "$ac_seen"; then -+ { echo "$as_me:21955: 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;} -+ ac_warn_datarootdir=yes -+ fi -+ done -+ fi -+ -+if test "x$ac_warn_datarootdir" = xyes; then -+ ac_sed_cmds="$ac_sed_cmds | sed -e 's,@datarootdir@,\${prefix}/share,g' -e 's,\${datarootdir},\${prefix}/share,g'" -+fi -+ -+EOF - cat >>$CONFIG_STATUS <$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then -- mv $tmp/out $ac_file -+ cp $tmp/out $ac_file -+ -+ for ac_name in prefix exec_prefix datarootdir -+ do -+ ac_seen=`fgrep -n '${'$ac_name'[:=].*}' $ac_file` -+ if test -n "$ac_seen"; then -+ 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:21992: 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;} -+ fi -+ fi -+ done -+ egrep -n '@[a-z_][a-z_0-9]+@' $ac_file >$tmp/out -+ 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:22003: WARNING: Some variables may not be substituted: -+$ac_seen" >&5 -+echo "$as_me: WARNING: Some variables may not be substituted: -+$ac_seen" >&2;} -+ fi - else - cat $tmp/out -- rm -f $tmp/out - fi -+ rm -f $tmp/out - - done - EOF -@@ -20254,7 +22049,7 @@ - * ) ac_file_in=$ac_file.in ;; - esac - -- test x"$ac_file" != x- && { echo "$as_me:20257: creating $ac_file" >&5 -+ test x"$ac_file" != x- && { echo "$as_me:22052: creating $ac_file" >&5 - echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the -@@ -20265,7 +22060,7 @@ - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) -- test -f "$f" || { { echo "$as_me:20268: error: cannot find input file: $f" >&5 -+ test -f "$f" || { { echo "$as_me:22063: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo $f;; -@@ -20278,7 +22073,7 @@ - echo $srcdir/$f - else - # /dev/null tree -- { { echo "$as_me:20281: error: cannot find input file: $f" >&5 -+ { { echo "$as_me:22076: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; -@@ -20336,7 +22131,7 @@ - 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:20339: $ac_file is unchanged" >&5 -+ { echo "$as_me:22134: $ac_file is unchanged" >&5 - echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -@@ -20394,25 +22189,20 @@ - if test ! -d $srcdir/$cf_dir; then - continue - elif test -f $srcdir/$cf_dir/programs; then -- $AWK -f $srcdir/test/mk-test.awk INSTALL=no ECHO_LINK="$ECHO_LINK" $srcdir/$cf_dir/programs >>$cf_dir/Makefile -+ $AWK -f $srcdir/test/mk-test.awk INSTALL=no ECHO_LINK="$ECHO_LD" $srcdir/$cf_dir/programs >>$cf_dir/Makefile - fi - done - - fi - -- case $cf_cv_system_name in #(vi -- OS/2*|os2*) #(vi -- LIB_PREFIX='' -- ;; -- *) LIB_PREFIX='lib' -- ;; -- esac - cf_prefix=$LIB_PREFIX - --if test $cf_cv_shlib_version = cygdll ; then -+case $cf_cv_shlib_version in #(vi -+cygdll|msysdll|mingw) - TINFO_NAME=$TINFO_ARG_SUFFIX - TINFO_SUFFIX=.dll --fi -+ ;; -+esac - - if test -n "$TINFO_SUFFIX" ; then - case $TINFO_SUFFIX in -@@ -20438,34 +22228,30 @@ - elif test -f $srcdir/$cf_dir/modules; then - - SHARED_LIB= -- LIBS_TO_MAKE= -+ Libs_To_Make= - for cf_item in $cf_LIST_MODELS - do - -- case $cf_item in #(vi -- libtool) #(vi -+ case X$cf_item in #(vi -+ Xlibtool) #(vi - cf_suffix='.la' - cf_depsuf=$cf_suffix - ;; -- normal) #(vi -- cf_suffix='.a' -- cf_depsuf=$cf_suffix -- ;; -- debug) #(vi -+ Xdebug) #(vi - cf_suffix='_g.a' - cf_depsuf=$cf_suffix - ;; -- profile) #(vi -+ Xprofile) #(vi - cf_suffix='_p.a' - cf_depsuf=$cf_suffix - ;; -- shared) #(vi -+ Xshared) #(vi - case $cf_cv_system_name in -- aix[56]*) #(vi -+ aix[5-7]*) #(vi - cf_suffix='.a' - cf_depsuf=$cf_suffix - ;; -- cygwin*) #(vi -+ cygwin*|msys*|mingw*) #(vi - cf_suffix='.dll' - cf_depsuf='.dll.a' - ;; -@@ -20485,83 +22271,88 @@ - ;; - esac - ;; -- *) cf_suffix='.so' -+ *) #(vi -+ cf_suffix='.so' - cf_depsuf=$cf_suffix - ;; - esac -+ ;; -+ *) -+ cf_suffix='.a' -+ cf_depsuf=$cf_suffix -+ ;; - esac - test -n "$LIB_SUFFIX" && cf_suffix="${LIB_SUFFIX}${cf_suffix}" - test -n "$LIB_SUFFIX" && cf_depsuf="${LIB_SUFFIX}${cf_depsuf}" - -+ cf_libname=$cf_dir -+ test "$cf_dir" = c++ && cf_libname=ncurses++ - if test $cf_item = shared ; then -- if test "$cf_cv_do_symlinks" = yes ; then -- case "$cf_cv_shlib_version" in #(vi -- rel) #(vi -- case "$cf_cv_system_name" in #(vi -- darwin*) -- case .${LIB_SUFFIX} in -- .tw*) -- cf_suffix=`echo $cf_suffix | sed 's/^tw//'` -- cf_suffix=tw'.${REL_VERSION}'"$cf_suffix" -- ;; -- .t*) -- cf_suffix=`echo $cf_suffix | sed 's/^t//'` -- cf_suffix=t'.${REL_VERSION}'"$cf_suffix" -- ;; -- .w*) -- cf_suffix=`echo $cf_suffix | sed 's/^w//'` -- cf_suffix=w'.${REL_VERSION}'"$cf_suffix" -+ if test -n "${LIB_SUFFIX}" -+ then -+ cf_shared_suffix=`echo "$cf_suffix" | sed 's/^'"${LIB_SUFFIX}"'//'` -+ else -+ cf_shared_suffix="$cf_suffix" -+ fi -+ if test "$cf_cv_do_symlinks" = yes ; then -+ cf_version_name= -+ -+ case "$cf_cv_shlib_version" in #(vi -+ rel) #(vi -+ cf_version_name=REL_VERSION - ;; -- *) -- cf_suffix='.${REL_VERSION}'"$cf_suffix" -+ abi) -+ cf_version_name=ABI_VERSION - ;; - esac -- ;; #(vi -- *) cf_suffix="$cf_suffix"'.${REL_VERSION}' ;; -- esac -+ -+ if test -n "$cf_version_name" -+ then -+ case "$cf_cv_system_name" in #(vi -+ darwin*) -+ # "w", etc? -+ cf_suffix="${LIB_SUFFIX}"'.${'$cf_version_name'}'"$cf_shared_suffix" -+ ;; #(vi -+ *) -+ cf_suffix="$cf_suffix"'.${'$cf_version_name'}' -+ ;; -+ esac -+ fi -+ if test -n "${LIB_SUFFIX}" -+ then -+ cf_shared_suffix=`echo "$cf_suffix" | sed 's/^'"${LIB_SUFFIX}"'//'` -+ else -+ cf_shared_suffix="$cf_suffix" -+ fi -+ fi -+ # cygwin needs import library, and has unique naming convention -+ # use autodetected ${cf_prefix} for import lib and static lib, but -+ # use 'cyg' prefix for shared lib. -+ case $cf_cv_shlib_version in #(vi -+ cygdll) #(vi -+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'` -+ Libs_To_Make="$Libs_To_Make ../lib/cyg${cf_libname}${cf_cygsuf}" -+ continue - ;; -- abi) -- case "$cf_cv_system_name" in #(vi -- darwin*) -- case .${LIB_SUFFIX} in -- .tw*) -- cf_suffix=`echo $cf_suffix | sed 's/^tw//'` -- cf_suffix=tw'.${ABI_VERSION}'"$cf_suffix" -- ;; -- .t*) -- cf_suffix=`echo $cf_suffix | sed 's/^t//'` -- cf_suffix=t'.${ABI_VERSION}'"$cf_suffix" -- ;; -- .w*) -- cf_suffix=`echo $cf_suffix | sed 's/^w//'` -- cf_suffix=w'.${ABI_VERSION}'"$cf_suffix" -- ;; -- *) -- cf_suffix='.${ABI_VERSION}'"$cf_suffix" -- ;; -- esac -- ;; #(vi -- *) cf_suffix="$cf_suffix"'.${ABI_VERSION}' ;; -- esac -+ msysdll) #(vi -+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'` -+ Libs_To_Make="$Libs_To_Make ../lib/msys-${cf_libname}${cf_cygsuf}" -+ continue -+ ;; -+ mingw) -+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'` -+ Libs_To_Make="$Libs_To_Make ../lib/lib${cf_libname}${cf_cygsuf}" -+ continue - ;; - esac - fi -- # cygwin needs import library, and has unique naming convention -- # use autodetected ${cf_prefix} for import lib and static lib, but -- # use 'cyg' prefix for shared lib. -- if test $cf_cv_shlib_version = cygdll ; then -- cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'` -- LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/cyg${cf_dir}${cf_cygsuf}" -- continue -- fi -- fi -- LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/${cf_prefix}${cf_dir}${cf_suffix}" -+ Libs_To_Make="$Libs_To_Make ../lib/${cf_prefix}${cf_libname}${cf_suffix}" - done - - if test $cf_dir = ncurses ; then - cf_subsets="$LIB_SUBSETS" - cf_r_parts="$cf_subsets" -- cf_liblist="$LIBS_TO_MAKE" -+ cf_liblist="$Libs_To_Make" - - while test -n "$cf_r_parts" - do -@@ -20581,7 +22372,7 @@ - ;; - esac - if test -n "$cf_item"; then -- LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE" -+ Libs_To_Make="$cf_item $Libs_To_Make" - fi - else - break -@@ -20591,13 +22382,40 @@ - cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'` - fi - -- sed -e "s%@LIBS_TO_MAKE@%$LIBS_TO_MAKE%" \ -+ if test $cf_dir = c++; then -+ if test "x$with_shared_cxx" != xyes && test -n "$cf_shared_suffix"; then -+ cf_list= -+ for cf_item in $Libs_To_Make -+ do -+ case $cf_item in -+ *.a) -+ ;; -+ *) -+ cf_item=`echo "$cf_item" | sed -e "s,"$cf_shared_suffix",.a,"` -+ ;; -+ esac -+ for cf_test in $cf_list -+ do -+ if test "$cf_test" = "$cf_item" -+ then -+ cf_LIST_MODELS=`echo "$cf_LIST_MODELS" | sed -e 's/normal//'` -+ cf_item= -+ break -+ fi -+ done -+ test -n "$cf_item" && cf_list="$cf_list $cf_item" -+ done -+ Libs_To_Make="$cf_list" -+ fi -+ fi -+ -+ sed -e "s%@Libs_To_Make@%$Libs_To_Make%" \ - -e "s%@SHARED_LIB@%$SHARED_LIB%" \ - $cf_dir/Makefile >$cf_dir/Makefile.out - mv $cf_dir/Makefile.out $cf_dir/Makefile - - $AWK -f $srcdir/mk-0th.awk \ -- libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" \ -+ libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" ticlib="$TICS_LIB_SUFFIX" termlib="$TINFO_LIB_SUFFIX" \ - $srcdir/$cf_dir/modules >>$cf_dir/Makefile - - for cf_subset in $cf_subsets -@@ -20605,34 +22423,47 @@ - cf_subdirs= - for cf_item in $cf_LIST_MODELS - do -+ - echo "Appending rules for ${cf_item} model (${cf_dir}: ${cf_subset})" - - cf_ITEM=`echo "$cf_item" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - -- case $cf_item in #(vi -- libtool) #(vi -+ CXX_MODEL=$cf_ITEM -+ if test "$CXX_MODEL" = SHARED; then -+ case $cf_cv_shlib_version in #(vi -+ cygdll|msysdll|mingw) #(vi -+ test "x$with_shared_cxx" = xno && test -n "$verbose" && echo " overriding CXX_MODEL to SHARED" 1>&6 -+ -+echo "${as_me:-configure}:22437: testing overriding CXX_MODEL to SHARED ..." 1>&5 -+ -+ with_shared_cxx=yes -+ ;; -+ *) -+ test "x$with_shared_cxx" = xno && CXX_MODEL=NORMAL -+ ;; -+ esac -+ fi -+ -+ case X$cf_item in #(vi -+ Xlibtool) #(vi - cf_suffix='.la' - cf_depsuf=$cf_suffix - ;; -- normal) #(vi -- cf_suffix='.a' -- cf_depsuf=$cf_suffix -- ;; -- debug) #(vi -+ Xdebug) #(vi - cf_suffix='_g.a' - cf_depsuf=$cf_suffix - ;; -- profile) #(vi -+ Xprofile) #(vi - cf_suffix='_p.a' - cf_depsuf=$cf_suffix - ;; -- shared) #(vi -+ Xshared) #(vi - case $cf_cv_system_name in -- aix[56]*) #(vi -+ aix[5-7]*) #(vi - cf_suffix='.a' - cf_depsuf=$cf_suffix - ;; -- cygwin*) #(vi -+ cygwin*|msys*|mingw*) #(vi - cf_suffix='.dll' - cf_depsuf='.dll.a' - ;; -@@ -20652,10 +22483,16 @@ - ;; - esac - ;; -- *) cf_suffix='.so' -+ *) #(vi -+ cf_suffix='.so' - cf_depsuf=$cf_suffix - ;; - esac -+ ;; -+ *) -+ cf_suffix='.a' -+ cf_depsuf=$cf_suffix -+ ;; - esac - test -n "$LIB_SUFFIX" && cf_suffix="${LIB_SUFFIX}${cf_suffix}" - test -n "$LIB_SUFFIX" && cf_depsuf="${LIB_SUFFIX}${cf_depsuf}" -@@ -20667,7 +22504,7 @@ - profile) cf_subdir='obj_p' ;; - shared) - case $cf_cv_system_name in #(vi -- cygwin) #(vi -+ cygwin|msys) #(vi - cf_subdir='objects' ;; - *) - cf_subdir='obj_s' ;; -@@ -20688,6 +22525,8 @@ - cf_libname=$TICS_LIB_SUFFIX - ;; - esac -+ elif test $cf_dir = c++ ; then -+ cf_libname=ncurses++$LIB_SUFFIX - else - cf_libname=${cf_libname}$LIB_SUFFIX - fi -@@ -20739,10 +22578,12 @@ - name=${cf_libname}${cf_dir_suffix} \ - traces=$LIB_TRACING \ - MODEL=$cf_ITEM \ -+ CXX_MODEL=$CXX_MODEL \ - model=$cf_subdir \ - prefix=$cf_prefix \ - suffix=$cf_suffix \ - subset=$cf_subset \ -+ driver=$cf_cv_term_driver \ - SymLink="$LN_S" \ - TermlibRoot=$TINFO_NAME \ - TermlibSuffix=$TINFO_SUFFIX \ -@@ -20781,7 +22622,7 @@ - done - fi - -- echo ' cd '$cf_dir' && ${MAKE} ${CF_MFLAGS} $@' >>Makefile -+ echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} $@' >>Makefile - done - - for cf_dir in $SRC_SUBDIRS -@@ -20796,7 +22637,7 @@ - echo 'libs \' >> Makefile - echo 'install.libs \' >> Makefile - echo 'uninstall.libs ::' >> Makefile -- echo ' cd '$cf_dir' && ${MAKE} ${CF_MFLAGS} $@' >> Makefile -+ echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} $@' >> Makefile - ;; - esac - fi -@@ -20819,7 +22660,7 @@ - uninstall.libs \\ - install.$cf_dir \\ - uninstall.$cf_dir :: -- cd $cf_dir && \${MAKE} \${CF_MFLAGS} \$@ -+ cd $cf_dir && \${MAKE} \${TOP_MFLAGS} \$@ - CF_EOF - elif test -f $srcdir/$cf_dir/headers; then - cat >> Makefile <> Makefile <> Makefile <>Ada95/src/Makefile - fi -diff -Naur ncurses-5.9/configure.in ncurses-5.9.patch/configure.in ---- ncurses-5.9/configure.in 2011-03-28 02:22:26.000000000 +0200 -+++ ncurses-5.9.patch/configure.in 2014-09-01 16:34:19.469887090 +0200 -@@ -1,5 +1,5 @@ - dnl*************************************************************************** --dnl Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+dnl Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - dnl * - dnl Permission is hereby granted, free of charge, to any person obtaining a * - dnl copy of this software and associated documentation files (the * -@@ -28,14 +28,14 @@ - dnl - dnl Author: Thomas E. Dickey 1995-on - dnl --dnl $Id: configure.in,v 1.520 2011/03/28 00:22:26 tom Exp $ -+dnl $Id: configure.in,v 1.578 2014/03/22 22:58:09 tom Exp $ - dnl Process this file with autoconf to produce a configure script. - dnl - dnl See http://invisible-island.net/autoconf/ for additional information. - dnl - dnl --------------------------------------------------------------------------- --AC_PREREQ(2.13.20020210) --AC_REVISION($Revision: 1.520 $) -+AC_PREREQ(2.52.20030208) -+AC_REVISION($Revision: 1.578 $) - AC_INIT(ncurses/base/lib_initscr.c) - AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin) - -@@ -45,11 +45,7 @@ - CF_WITH_REL_VERSION(NCURSES) - CF_WITH_ABI_VERSION - --CF_CHECK_CACHE([AC_CANONICAL_SYSTEM]) --AC_ARG_WITH(system-type, --[ --with-system-type=XXX test: override derived host system-type], --[AC_MSG_WARN(overriding system type to $withval) -- cf_cv_system_name=$withval]) -+CF_WITH_SYSTYPE - - ### Save the given $CFLAGS to allow user-override. - cf_user_CFLAGS="$CFLAGS" -@@ -58,15 +54,22 @@ - CF_CFG_DEFAULTS - - ### Checks for programs. --AC_PROG_CC --CF_GCC_VERSION -+AC_ARG_WITH(ada, -+ [ --without-ada suppress check for Ada95, don't build demo], -+ [cf_with_ada=$withval], -+ [cf_with_ada=yes]) -+if test "x$cf_with_ada" = xyes -+then -+ cf_PROG_CC="gnatgcc gcc cc" -+else -+ cf_PROG_CC="gcc cc" -+fi -+ -+CF_PROG_CC($cf_PROG_CC) - - AC_PROG_CPP - AC_PROG_GCC_TRADITIONAL - CF_PROG_CC_C_O(CC) --AC_ISC_POSIX --CF_ANSI_CC_REQD --CF_PROG_EXT - CF_PROG_LDCONFIG - - dnl DEFECT in autoconf 2.12: an attempt to set policy, this breaks the -@@ -89,14 +92,16 @@ - cf_with_cxx=no; CXX=""; GXX="";])dnl - AC_PROG_CXX - popdef([AC_MSG_ERROR])dnl -- # autoconf 2.5x removed the error - by hardcoding it to g++. -+ # autoconf 2.5x removed the error (hardcoding it to g++, or just blank) - if test "$CXX" = "g++" ; then - AC_PATH_PROG(CXX,g++) - fi -- if test "$CXX" = "g++" ; then -- AC_MSG_WARN(ignoring hardcoded g++) -+ case "x$CXX" in #(vi -+ x|xg++) -+ AC_MSG_WARN([You don't have any C++ compiler, too bad]) - cf_with_cxx=no; CXX=""; GXX=""; -- fi -+ ;; -+ esac - fi - - CF_GXX_VERSION -@@ -116,12 +121,15 @@ - AC_MSG_RESULT($cf_with_cxx_binding) - - AC_MSG_CHECKING(if you want to build with Ada95) --AC_ARG_WITH(ada, -- [ --without-ada suppress check for Ada95, don't build demo], -- [cf_with_ada=$withval], -- [cf_with_ada=yes]) - AC_MSG_RESULT($cf_with_ada) - -+AC_MSG_CHECKING(if you want to install terminal database) -+AC_ARG_ENABLE(db-install, -+ [ --disable-db-install suppress install of terminal database], -+ [cf_with_db_install=$enableval], -+ [cf_with_db_install=yes]) -+AC_MSG_RESULT($cf_with_db_install) -+ - AC_MSG_CHECKING(if you want to install manpages) - AC_ARG_WITH(manpages, - [ --without-manpages suppress install of manpages], -@@ -131,14 +139,14 @@ - - AC_MSG_CHECKING(if you want to build programs such as tic) - AC_ARG_WITH(progs, -- [ --without-progs suppress build with programs (e.g., tic)], -+ [ --without-progs suppress build/install with programs (e.g., tic)], - [cf_with_progs=$withval], - [cf_with_progs=yes]) - AC_MSG_RESULT($cf_with_progs) - - AC_MSG_CHECKING(if you want to build test-programs) - AC_ARG_WITH(tests, -- [ --without-tests suppress build with test-programs], -+ [ --without-tests suppress build/install with test-programs], - [cf_with_tests=$withval], - [cf_with_tests=yes]) - AC_MSG_RESULT($cf_with_tests) -@@ -168,28 +176,8 @@ - - # if we find pkg-config, check if we should install the ".pc" files. - CF_PKG_CONFIG -- --if test "$PKG_CONFIG" != no ; then -- AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG) -- -- # Leave this as something that can be overridden in the environment. -- if test -z "$PKG_CONFIG_LIBDIR" ; then -- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`/lib/pkgconfig -- fi -- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'` -- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then -- AC_ARG_ENABLE(pc-files, -- [ --enable-pc-files generate and install .pc files for pkg-config], -- [enable_pc_files=$enableval], -- [enable_pc_files=no]) -- AC_MSG_RESULT($enable_pc_files) -- else -- AC_MSG_RESULT(no) -- AC_MSG_WARN(did not find library $PKG_CONFIG_LIBDIR) -- enable_pc_files=no -- fi --fi --AC_SUBST(PKG_CONFIG_LIBDIR) -+CF_WITH_PKG_CONFIG_LIBDIR -+CF_ENABLE_PC_FILES - - AC_MSG_CHECKING(if we should assume mixed-case filenames) - AC_ARG_ENABLE(mixed-case, -@@ -201,8 +189,8 @@ - CF_MIXEDCASE_FILENAMES - else - cf_cv_mixedcase=$enable_mixedcase -- if test "$enable_mixedcase" = "yes" ; then -- AC_DEFINE(MIXEDCASE_FILENAMES) -+ if test "x$enable_mixedcase" = "xyes" ; then -+ AC_DEFINE(MIXEDCASE_FILENAMES,1,[Define to 1 if tic should assume mixed-case filenames]) - fi - fi - -@@ -215,6 +203,7 @@ - AC_CHECK_TOOL(RANLIB, ranlib, ':') - AC_CHECK_TOOL(LD, ld, ld) - AC_CHECK_TOOL(AR, ar, ar) -+AC_CHECK_TOOL(NM, nm, nm) - CF_AR_FLAGS - - dnl Special option for use by system-builders: the install-prefix is used to -@@ -223,8 +212,8 @@ - AC_MSG_CHECKING(if you have specified an install-prefix) - AC_ARG_WITH(install-prefix, - [ --with-install-prefix prefixes actual install-location ($DESTDIR)], -- [case "$withval" in #(vi -- yes|no) #(vi -+ [case "x$withval" in #(vi -+ xyes|xno) #(vi - ;; - *) DESTDIR="$withval" - ;; -@@ -261,7 +250,7 @@ - [with_shared=$withval], - [with_shared=no]) - AC_MSG_RESULT($with_shared) --test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared" -+test "x$with_shared" = "xyes" && cf_list_models="$cf_list_models shared" - - AC_MSG_CHECKING(if you want to build static libraries) - AC_ARG_WITH(normal, -@@ -269,7 +258,7 @@ - [with_normal=$withval], - [with_normal=yes]) - AC_MSG_RESULT($with_normal) --test "$with_normal" = "yes" && cf_list_models="$cf_list_models normal" -+test "x$with_normal" = "xyes" && cf_list_models="$cf_list_models normal" - - AC_MSG_CHECKING(if you want to build debug libraries) - AC_ARG_WITH(debug, -@@ -277,7 +266,7 @@ - [with_debug=$withval], - [with_debug=yes]) - AC_MSG_RESULT($with_debug) --test "$with_debug" = "yes" && cf_list_models="$cf_list_models debug" -+test "x$with_debug" = "xyes" && cf_list_models="$cf_list_models debug" - - AC_MSG_CHECKING(if you want to build profiling libraries) - AC_ARG_WITH(profile, -@@ -285,10 +274,21 @@ - [with_profile=$withval], - [with_profile=no]) - AC_MSG_RESULT($with_profile) --test "$with_profile" = "yes" && cf_list_models="$cf_list_models profile" -+test "x$with_profile" = "xyes" && cf_list_models="$cf_list_models profile" - - fi - -+if test "X$cf_with_cxx_binding" != Xno; then -+if test "x$with_shared" = "xyes"; then -+AC_MSG_CHECKING(if you want to build C++ shared libraries) -+AC_ARG_WITH(cxx-shared, -+ [ --with-cxx-shared generate C++ shared-libraries], -+ [with_shared_cxx=$withval], -+ [with_shared_cxx=no]) -+AC_MSG_RESULT($with_shared_cxx) -+fi -+fi -+ - ############################################################################### - - AC_MSG_CHECKING(for specified models) -@@ -321,12 +321,11 @@ - LIB_DIR=../lib - LIB_2ND=../../lib - --CF_LIB_PREFIX(cf_prefix) --LIB_PREFIX=$cf_prefix --AC_SUBST(LIB_PREFIX) -+CF_WITH_LIB_PREFIX(cf_prefix) - - LIB_SUFFIX= - AC_SUBST(LIB_SUFFIX) -+CF_PATHSEP - - ############################################################################### - -@@ -354,21 +353,21 @@ - [with_dlsym=$withval], - [with_dlsym=yes]) - AC_MSG_RESULT($with_dlsym) -- if test "$with_dlsym" = yes ; then -+ if test "x$with_dlsym" = xyes ; then - CF_FUNC_DLSYM -- if test "$with_gpm" != yes ; then -+ if test "x$with_gpm" != xyes ; then - CF_VERBOSE(assuming soname for gpm is $with_gpm) - cf_cv_gpm_soname="$with_gpm" - else - CF_LIB_SONAME([#include ],[if (Gpm_Open(0,0)) Gpm_Close();],gpm) - fi -- test "$cf_cv_gpm_soname" != "unknown" && AC_DEFINE_UNQUOTED(LIBGPM_SONAME,"$cf_cv_gpm_soname") -+ test "$cf_cv_gpm_soname" != "unknown" && AC_DEFINE_UNQUOTED(LIBGPM_SONAME,"$cf_cv_gpm_soname",[Define as needed to set the gpm share library soname]) - SHLIB_LIST="-ldl $SHLIB_LIST" - else - SHLIB_LIST="-lgpm $SHLIB_LIST" - CF_ADD_LIB(gpm,TEST_LIBS) - fi -- AC_DEFINE(HAVE_LIBGPM) -+ AC_DEFINE(HAVE_LIBGPM,1,[Define to 1 if we have the gpm library]) - CF_CHECK_GPM_WGETCH - fi - -@@ -378,13 +377,13 @@ - - if test X"$CC_G_OPT" = X"" ; then - CC_G_OPT='-g' -- test -n "$GCC" && test "${ac_cv_prog_cc_g}" != yes && CC_G_OPT='' -+ test -n "$GCC" && test "x${ac_cv_prog_cc_g}" != xyes && CC_G_OPT='' - fi - AC_SUBST(CC_G_OPT) - - if test X"$CXX_G_OPT" = X"" ; then - CXX_G_OPT='-g' -- test -n "$GXX" && test "${ac_cv_prog_cxx_g}" != yes && CXX_G_OPT='' -+ test -n "$GXX" && test "x${ac_cv_prog_cxx_g}" != xyes && CXX_G_OPT='' - fi - AC_SUBST(CXX_G_OPT) - -@@ -411,6 +410,8 @@ - ;; - esac - -+# we will build libraries one-level down. -+rel_builddir=.. - CF_SHARED_OPTS - if test "$CC_SHARED_OPTS" = "unknown"; then - for model in $cf_list_models; do -@@ -453,9 +454,9 @@ - esac - AC_SUBST(TERMINFO_SRC) - --CF_PATHSEP -+NCURSES_USE_DATABASE=0 - if test "$use_database" != no ; then -- AC_DEFINE(USE_DATABASE) -+ NCURSES_USE_DATABASE=1 - - AC_MSG_CHECKING(which terminfo source-file will be installed) - AC_ARG_WITH(database, -@@ -471,6 +472,7 @@ - else - with_hashed_db=no - fi -+AC_SUBST(NCURSES_USE_DATABASE) - - AC_MSG_CHECKING(for list of fallback descriptions) - AC_ARG_WITH(fallbacks, -@@ -494,6 +496,26 @@ - WHICH_XTERM=$with_xterm_new - AC_SUBST(WHICH_XTERM) - -+AC_MSG_CHECKING(if xterm backspace sends BS or DEL) -+AC_ARG_WITH(xterm-kbs, -+ [ --with-xterm-kbs=XXX specify if xterm backspace sends BS or DEL], -+ [with_xterm_kbs=$withval], -+ [with_xterm_kbs=BS]) -+case x$with_xterm_kbs in -+xyes|xno|xBS|xbs|x8) -+ with_xterm_kbs=BS -+ ;; -+xDEL|xdel|x127) -+ with_xterm_kbs=DEL -+ ;; -+*) -+ with_xterm_kbs=$withval -+ ;; -+esac -+AC_MSG_RESULT($with_xterm_kbs) -+XTERM_KBS=$with_xterm_kbs -+AC_SUBST(XTERM_KBS) -+ - MAKE_TERMINFO= - if test "$use_database" = no ; then - TERMINFO="${datadir}/terminfo" -@@ -507,7 +529,7 @@ - DATADIR/terminfo, - ${datadir}/terminfo) - AC_MSG_RESULT($TERMINFO_DIRS) --test -n "$TERMINFO_DIRS" && AC_DEFINE_UNQUOTED(TERMINFO_DIRS,"$TERMINFO_DIRS") -+test -n "$TERMINFO_DIRS" && AC_DEFINE_UNQUOTED(TERMINFO_DIRS,"$TERMINFO_DIRS",[Define as needed to predefine the TERMINFO_DIR searchlist]) - - AC_MSG_CHECKING(for default terminfo directory) - CF_WITH_PATH(default-terminfo-dir, -@@ -516,7 +538,7 @@ - DATADIR/terminfo, - ${datadir}/terminfo) - AC_MSG_RESULT($TERMINFO) --AC_DEFINE_UNQUOTED(TERMINFO,"$TERMINFO") -+AC_DEFINE_UNQUOTED(TERMINFO,"$TERMINFO",[Define to set the default terminal database path]) - - fi - -@@ -543,7 +565,7 @@ - [with_big_core=no], - [with_big_core=no])]) - AC_MSG_RESULT($with_big_core) --test "$with_big_core" = "yes" && AC_DEFINE(HAVE_BIG_CORE) -+test "x$with_big_core" = "xyes" && AC_DEFINE(HAVE_BIG_CORE,1,[Define to 1 if machine has ample memory for tic]) - - ### ISO C only guarantees 512-char strings, we have tables which load faster - ### when constructed using "big" strings. More than the C compiler, the awk -@@ -556,7 +578,7 @@ - AC_MSG_RESULT($with_big_strings) - - USE_BIG_STRINGS=0 --test "$with_big_strings" = "yes" && USE_BIG_STRINGS=1 -+test "x$with_big_strings" = "xyes" && USE_BIG_STRINGS=1 - AC_SUBST(USE_BIG_STRINGS) - - ### use option --enable-termcap to compile in the termcap fallback support -@@ -567,46 +589,48 @@ - [with_termcap=no]) - AC_MSG_RESULT($with_termcap) - --if test "$with_termcap" != "yes" ; then -+NCURSES_USE_TERMCAP=0 -+if test "x$with_termcap" != "xyes" ; then - if test "$use_database" = no ; then - if test -z "$with_fallback" ; then - AC_ERROR(You have disabled the database w/o specifying fallbacks) - fi - fi -- AC_DEFINE(PURE_TERMINFO) -+ AC_DEFINE(PURE_TERMINFO,1,[Define to 1 if we should support only terminfo]) - else - --if test "$with_ticlib" != no ; then -- AC_ERROR(Options --with-ticlib and --enable-termcap cannot be combined) --fi -+ if test "$with_ticlib" != no ; then -+ AC_ERROR(Options --with-ticlib and --enable-termcap cannot be combined) -+ fi - --AC_DEFINE(USE_TERMCAP) --AC_MSG_CHECKING(for list of termcap files) --CF_WITH_PATHLIST(termpath, -- [ --with-termpath=XXX specify list of termcap files], -- TERMPATH, -- /etc/termcap:/usr/share/misc/termcap) --AC_MSG_RESULT($TERMPATH) --test -n "$TERMPATH" && AC_DEFINE_UNQUOTED(TERMPATH,"$TERMPATH") -- --### use option --enable-getcap to use a hacked getcap for reading termcaps --AC_MSG_CHECKING(if fast termcap-loader is needed) --AC_ARG_ENABLE(getcap, -- [ --enable-getcap fast termcap load, no xrefs to terminfo], -- [with_getcap=$enableval], -- [with_getcap=no]) --AC_MSG_RESULT($with_getcap) --test "$with_getcap" = "yes" && AC_DEFINE(USE_GETCAP) -- --AC_MSG_CHECKING(if translated termcaps will be cached in ~/.terminfo) --AC_ARG_ENABLE(getcap-cache, -- [ --enable-getcap-cache cache translated termcaps in ~/.terminfo], -- [with_getcap_cache=$enableval], -- [with_getcap_cache=no]) --AC_MSG_RESULT($with_getcap_cache) --test "$with_getcap_cache" = "yes" && AC_DEFINE(USE_GETCAP_CACHE) -+ NCURSES_USE_TERMCAP=1 -+ AC_MSG_CHECKING(for list of termcap files) -+ CF_WITH_PATHLIST(termpath, -+ [ --with-termpath=XXX specify list of termcap files], -+ TERMPATH, -+ /etc/termcap:/usr/share/misc/termcap) -+ AC_MSG_RESULT($TERMPATH) -+ test -n "$TERMPATH" && AC_DEFINE_UNQUOTED(TERMPATH,"$TERMPATH",[Define to set the termcap searchlist]) -+ -+ ### use option --enable-getcap to use a hacked getcap for reading termcaps -+ AC_MSG_CHECKING(if fast termcap-loader is needed) -+ AC_ARG_ENABLE(getcap, -+ [ --enable-getcap fast termcap load, no xrefs to terminfo], -+ [with_getcap=$enableval], -+ [with_getcap=no]) -+ AC_MSG_RESULT($with_getcap) -+ test "x$with_getcap" = "xyes" && AC_DEFINE(USE_GETCAP,1,[Define to 1 to use fast termcap-loader]) -+ -+ AC_MSG_CHECKING(if translated termcaps will be cached in ~/.terminfo) -+ AC_ARG_ENABLE(getcap-cache, -+ [ --enable-getcap-cache cache translated termcaps in ~/.terminfo], -+ [with_getcap_cache=$enableval], -+ [with_getcap_cache=no]) -+ AC_MSG_RESULT($with_getcap_cache) -+ test "x$with_getcap_cache" = "xyes" && AC_DEFINE(USE_GETCAP_CACHE,1,[Define to 1 if translated termcap should be stored in $HOME/.terminfo]) - - fi -+AC_SUBST(NCURSES_USE_TERMCAP) - - ### Use option --disable-home-terminfo to completely remove ~/.terminfo - AC_MSG_CHECKING(if ~/.terminfo is wanted) -@@ -615,7 +639,7 @@ - [with_home_terminfo=$enableval], - [with_home_terminfo=yes]) - AC_MSG_RESULT($with_home_terminfo) --test "$with_home_terminfo" = "yes" && AC_DEFINE(USE_HOME_TERMINFO) -+test "x$with_home_terminfo" = "xyes" && AC_DEFINE(USE_HOME_TERMINFO,1,[Define to 1 if $HOME/.terminfo feature is wanted]) - - AC_MSG_CHECKING(if you want to use restricted environment when running as root) - AC_ARG_ENABLE(root-environ, -@@ -623,7 +647,7 @@ - [with_root_environ=$enableval], - [with_root_environ=yes]) - AC_MSG_RESULT($with_root_environ) --test "$with_root_environ" = yes && AC_DEFINE(USE_ROOT_ENVIRON) -+test "x$with_root_environ" = xyes && AC_DEFINE(USE_ROOT_ENVIRON,1,[Define to 1 if environment should be restricted for root user]) - - ### Use option --enable-symlinks to make tic use symlinks, not hard links - ### to reduce storage requirements for the terminfo database. -@@ -634,7 +658,7 @@ - - # soft links (symbolic links) are useful for some systems where hard links do - # not work, or to make it simpler to copy terminfo trees around. --if test "$ac_cv_func_symlink" = yes ; then -+if test "x$ac_cv_func_symlink" = xyes ; then - AC_MSG_CHECKING(if tic should use symbolic links) - AC_ARG_ENABLE(symlinks, - [ --enable-symlinks make tic use symbolic links not hard links], -@@ -647,7 +671,7 @@ - # no reason to make this choice optional - use the hard links. - if test "$with_symlinks" = no ; then - AC_MSG_CHECKING(if tic should use hard links) -- if test "$ac_cv_func_link" = yes ; then -+ if test "x$ac_cv_func_link" = xyes ; then - with_links=yes - else - with_links=no -@@ -655,8 +679,8 @@ - AC_MSG_RESULT($with_links) - fi - --test "$with_links" = yes && AC_DEFINE(USE_LINKS) --test "$with_symlinks" = yes && AC_DEFINE(USE_SYMLINKS) -+test "x$with_links" = xyes && AC_DEFINE(USE_LINKS,1,[Define to 1 if hardlinks should be used in terminfo database]) -+test "x$with_symlinks" = xyes && AC_DEFINE(USE_SYMLINKS,1,[Define to 1 if symbolic links should be used in terminfo database]) - - ### use option --enable-broken-linker to force on use of broken-linker support - AC_MSG_CHECKING(if you want broken-linker support code) -@@ -667,13 +691,13 @@ - AC_MSG_RESULT($with_broken_linker) - - BROKEN_LINKER=0 --if test "$with_broken_linker" = yes ; then -- AC_DEFINE(BROKEN_LINKER) -+if test "x$with_broken_linker" = xyes ; then -+ AC_DEFINE(BROKEN_LINKER,1,[Define to 1 to work around linkers which cannot link data-only modules]) - BROKEN_LINKER=1 - elif test "$DFT_LWR_MODEL" = shared ; then - case $cf_cv_system_name in #(vi - cygwin*) -- AC_DEFINE(BROKEN_LINKER) -+ AC_DEFINE(BROKEN_LINKER,1,[Define to 1 to work around linkers which cannot link data-only modules]) - BROKEN_LINKER=1 - CF_VERBOSE(cygwin linker is broken anyway) - ;; -@@ -688,7 +712,7 @@ - [with_bsdpad=$enableval], - [with_bsdpad=no]) - AC_MSG_RESULT($with_bsdpad) --test "$with_bsdpad" = yes && AC_DEFINE(BSD_TPUTS) -+test "x$with_bsdpad" = xyes && AC_DEFINE(BSD_TPUTS,1,[Define to 1 to recognize BSD-style prefix padding]) - - ### use option --enable-widec to turn on use of wide-character support - NCURSES_CH_T=chtype -@@ -718,22 +742,17 @@ - [with_widec=$enableval], - [with_widec=no]) - AC_MSG_RESULT($with_widec) --if test "$with_widec" = yes ; then -+if test "x$with_widec" = xyes ; then - LIB_SUFFIX="w${LIB_SUFFIX}" -- AC_DEFINE(USE_WIDEC_SUPPORT) -+ AC_DEFINE(USE_WIDEC_SUPPORT,1,[Define to 1 to compile with wide-char/UTF-8 code]) -+ AC_DEFINE(NCURSES_WIDECHAR,1,[Define to 1 to compile with wide-char/UTF-8 code]) - -- case "$CFLAGS $CPPFLAGS" in #(vi -- *-D_XOPEN_SOURCE=500) #(vi -- ;; -- *) -- CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED) -- ;; -- esac -+ CF_CHECK_WCHAR_H - - # with_overwrite=no - NCURSES_CH_T=cchar_t - AC_CHECK_FUNCS(putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc wcsrtombs mbsrtowcs wcstombs mbstowcs) -- if test "$ac_cv_func_putwc" != yes ; then -+ if test "x$ac_cv_func_putwc" != xyes ; then - CF_UTF8_LIB - if test "$cf_cv_utf8_lib" != no ; then - NCURSES_LIBUTF8=1 -@@ -744,7 +763,7 @@ - CF_WCHAR_TYPE(wint_t, NCURSES_WINT_T, NCURSES_OK_WINT_T) - - if test "$NCURSES_MBSTATE_T" != 0; then -- AC_DEFINE(NEED_MBSTATE_T_DEF) -+ AC_DEFINE(NEED_MBSTATE_T_DEF,1,[Define to 1 if we must declare mbstate_t]) - fi - fi - AC_SUBST(NCURSES_CH_T) -@@ -775,7 +794,7 @@ - [with_lp64=$default_with_lp64]) - AC_MSG_RESULT($with_lp64) - --if test "$with_lp64" = yes ; then -+if test "x$with_lp64" = xyes ; then - cf_cv_enable_lp64=1 - else - cf_cv_enable_lp64=0 -@@ -792,7 +811,7 @@ - [with_tparm_varargs=yes]) - AC_MSG_RESULT($with_tparm_varargs) - NCURSES_TPARM_VARARGS=0 --test "$with_tparm_varargs" = yes && NCURSES_TPARM_VARARGS=1 -+test "x$with_tparm_varargs" = xyes && NCURSES_TPARM_VARARGS=1 - AC_SUBST(NCURSES_TPARM_VARARGS) - - ### use option --disable-tic-depends to make libtic not explicitly depend on ncurses/ncursesw -@@ -859,6 +878,15 @@ - AC_MSG_RESULT($NCURSES_CCHARW_MAX) - AC_SUBST(NCURSES_CCHARW_MAX) - -+### use option --with-tparm-arg to override tparm's argument type -+AC_MSG_CHECKING(for type of tparm args) -+AC_ARG_WITH(tparm-arg, -+ [ --with-tparm-arg=TYPE override parameter type of tparm], -+ [NCURSES_TPARM_ARG="$withval"], -+ [NCURSES_TPARM_ARG=long]) -+AC_MSG_RESULT($NCURSES_TPARM_ARG) -+AC_SUBST(NCURSES_TPARM_ARG) -+ - ### Enable compiling-in rcs id's - AC_MSG_CHECKING(if RCS identifiers should be compiled-in) - AC_ARG_WITH(rcs-ids, -@@ -866,7 +894,7 @@ - [with_rcs_ids=$withval], - [with_rcs_ids=no]) - AC_MSG_RESULT($with_rcs_ids) --test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS) -+test "x$with_rcs_ids" = xyes && AC_DEFINE(USE_RCS_IDS,1,[Define to 1 to compile-in RCS identifiers]) - - ############################################################################### - CF_MAN_PAGES([ captoinfo clear infocmp infotocap tabs tic toe tput tset ]) -@@ -881,16 +909,19 @@ - [with_ext_funcs=$enableval], - [with_ext_funcs=yes]) - AC_MSG_RESULT($with_ext_funcs) --if test "$with_ext_funcs" = yes ; then -+if test "x$with_ext_funcs" = xyes ; then - NCURSES_EXT_FUNCS=1 -- AC_DEFINE(HAVE_CURSES_VERSION) -- AC_DEFINE(HAVE_HAS_KEY) -- AC_DEFINE(HAVE_RESIZETERM) -- AC_DEFINE(HAVE_RESIZE_TERM) -- AC_DEFINE(HAVE_TERM_ENTRY_H) -- AC_DEFINE(HAVE_USE_DEFAULT_COLORS) -- AC_DEFINE(HAVE_WRESIZE) -- AC_DEFINE(NCURSES_EXT_FUNCS) -+ AC_DEFINE(HAVE_ASSUME_DEFAULT_COLORS,1,[Define to 1 to enable assume_default_colors() function]) -+ AC_DEFINE(HAVE_CURSES_VERSION,1,[Define to 1 to enable curses_version() function]) -+ AC_DEFINE(HAVE_HAS_KEY,1,[Define to 1 to enable has_key() function]) -+ AC_DEFINE(HAVE_RESIZETERM,1,[Define to 1 to enable resizeterm() function]) -+ AC_DEFINE(HAVE_RESIZE_TERM,1,[Define to 1 to enable resize_term() function]) -+ AC_DEFINE(HAVE_TERM_ENTRY_H,1,[Define to 1 to enable term_entry() function]) -+ AC_DEFINE(HAVE_USE_DEFAULT_COLORS,1,[Define to 1 to enable use_default_colors() function]) -+ AC_DEFINE(HAVE_USE_SCREEN,1,[Define to 1 to enable use_screen() function]) -+ AC_DEFINE(HAVE_USE_WINDOW,1,[Define to 1 to enable use_window() function]) -+ AC_DEFINE(HAVE_WRESIZE,1,[Define to 1 to enable wresize() function]) -+ AC_DEFINE(NCURSES_EXT_FUNCS,1,[Define to 1 to enable ncurses extended functions]) - GENERATED_EXT_FUNCS=generated - else - NCURSES_EXT_FUNCS=0 -@@ -905,9 +936,9 @@ - [with_sp_funcs=$enableval], - [with_sp_funcs=no]) - AC_MSG_RESULT($with_sp_funcs) --if test "$with_sp_funcs" = yes ; then -+if test "x$with_sp_funcs" = xyes ; then - NCURSES_SP_FUNCS=1 -- AC_DEFINE(NCURSES_SP_FUNCS) -+ AC_DEFINE(NCURSES_SP_FUNCS,1,[Define to 1 to enable experimental SCREEN-extensions]) - GENERATED_SP_FUNCS=generated - else - NCURSES_SP_FUNCS=0 -@@ -922,9 +953,9 @@ - [with_term_driver=$enableval], - [with_term_driver=no]) - AC_MSG_RESULT($with_term_driver) --if test "$with_term_driver" = yes ; then -- AC_DEFINE(USE_TERM_DRIVER) -- if test "$with_sp_funcs" != yes ; then -+if test "x$with_term_driver" = xyes ; then -+ AC_DEFINE(USE_TERM_DRIVER,1,[Define to 1 to enable experimental terminal-driver]) -+ if test "x$with_sp_funcs" != xyes ; then - AC_MSG_ERROR(The term-driver option relies upon sp-funcs) - fi - fi -@@ -937,7 +968,7 @@ - [with_ext_const=no]) - AC_MSG_RESULT($with_ext_const) - NCURSES_CONST='/*nothing*/' --if test "$with_ext_const" = yes ; then -+if test "x$with_ext_const" = xyes ; then - NCURSES_CONST=const - fi - AC_SUBST(NCURSES_CONST) -@@ -950,15 +981,15 @@ - [with_ext_colors=no]) - AC_MSG_RESULT($with_ext_colors) - NCURSES_EXT_COLORS=0 --if test "$with_ext_colors" = yes ; then -- if test "$with_widec" != yes ; then -+if test "x$with_ext_colors" = xyes ; then -+ if test "x$with_widec" != xyes ; then - AC_MSG_ERROR(This option applies only to wide-character library) - else - # cannot be ABI 5 since it changes sizeof(cchar_t) - CF_NCURSES_ABI_6 - fi - NCURSES_EXT_COLORS=1 -- AC_DEFINE(NCURSES_EXT_COLORS) -+ AC_DEFINE(NCURSES_EXT_COLORS,1,[Define to 1 to compile for 256-color support]) - fi - AC_SUBST(NCURSES_EXT_COLORS) - -@@ -970,7 +1001,7 @@ - [with_ext_mouse=no]) - AC_MSG_RESULT($with_ext_mouse) - NCURSES_MOUSE_VERSION=1 --if test "$with_ext_mouse" = yes ; then -+if test "x$with_ext_mouse" = xyes ; then - NCURSES_MOUSE_VERSION=2 - CF_NCURSES_ABI_6 - fi -@@ -982,7 +1013,7 @@ - [with_no_padding=$enableval], - [with_no_padding=$with_ext_funcs]) - AC_MSG_RESULT($with_no_padding) --test "$with_no_padding" = yes && AC_DEFINE(NCURSES_NO_PADDING) -+test "x$with_no_padding" = xyes && AC_DEFINE(NCURSES_NO_PADDING,1,[Define to 1 to compile with $NCURSES_NO_PADDING code]) - - AC_CHECK_SIZEOF([signed char], 0) - if test "$ac_cv_sizeof_signed_char" = 1 ; then -@@ -996,7 +1027,7 @@ - [with_signed_char=$enableval], - [with_signed_char=no]) - AC_MSG_RESULT($with_signed_char) --test "$with_signed_char" != yes && NCURSES_SBOOL="char" -+test "x$with_signed_char" != xyes && NCURSES_SBOOL="char" - AC_SUBST(NCURSES_SBOOL) - - ### use option --enable-sigwinch to turn on use of SIGWINCH logic -@@ -1006,7 +1037,7 @@ - [with_sigwinch=$enableval], - [with_sigwinch=$with_ext_funcs]) - AC_MSG_RESULT($with_sigwinch) --test "$with_sigwinch" = yes && AC_DEFINE(USE_SIGWINCH) -+test "x$with_sigwinch" = xyes && AC_DEFINE(USE_SIGWINCH,1,[Define to 1 to compile with SIGWINCH handler]) - - ### use option --enable-tcap-names to allow user to define new capabilities - AC_MSG_CHECKING(if you want user-definable terminal capabilities like termcap) -@@ -1016,7 +1047,7 @@ - [with_tcap_names=$with_ext_funcs]) - AC_MSG_RESULT($with_tcap_names) - NCURSES_XNAMES=0 --test "$with_tcap_names" = yes && NCURSES_XNAMES=1 -+test "x$with_tcap_names" = xyes && NCURSES_XNAMES=1 - AC_SUBST(NCURSES_XNAMES) - - ############################################################################### -@@ -1035,7 +1066,7 @@ - [ --enable-hard-tabs compile with hard-tabs code],, - [enable_hard_tabs=$with_develop]) - AC_MSG_RESULT($enable_hard_tabs) --test "$enable_hard_tabs" = yes && AC_DEFINE(USE_HARD_TABS) -+test "x$enable_hard_tabs" = xyes && AC_DEFINE(USE_HARD_TABS,1,[Define to 1 to compile with hard-tabs code]) - - ### use option --enable-xmc-glitch to turn on use of magic-cookie optimize - AC_MSG_CHECKING(if you want limited support for xmc) -@@ -1043,7 +1074,7 @@ - [ --enable-xmc-glitch compile with support for xmc (magic-cookie)],, - [enable_xmc_glitch=$with_develop]) - AC_MSG_RESULT($enable_xmc_glitch) --test "$enable_xmc_glitch" = yes && AC_DEFINE(USE_XMC_SUPPORT) -+test "x$enable_xmc_glitch" = xyes && AC_DEFINE(USE_XMC_SUPPORT,1,[Define to 1 to compile with support for xmc (magic-cookie)]) - - ############################################################################### - # These are just experimental, probably should not be in a package: -@@ -1055,7 +1086,7 @@ - [with_assumed_color=$enableval], - [with_assumed_color=yes]) - AC_MSG_RESULT($with_assumed_color) --test "$with_assumed_color" = yes && AC_DEFINE(USE_ASSUMED_COLOR) -+test "x$with_assumed_color" = xyes && AC_DEFINE(USE_ASSUMED_COLOR,1,[Define to 1 to assume things about default-colors]) - - ### use option --enable-hashmap to turn on use of hashmap scrolling logic - AC_MSG_CHECKING(if you want hashmap scrolling-optimization code) -@@ -1064,7 +1095,7 @@ - [with_hashmap=$enableval], - [with_hashmap=yes]) - AC_MSG_RESULT($with_hashmap) --test "$with_hashmap" = yes && AC_DEFINE(USE_HASHMAP) -+test "x$with_hashmap" = xyes && AC_DEFINE(USE_HASHMAP,1,[Define to 1 to compile with hashmap scrolling-optimization]) - - ### use option --enable-colorfgbg to turn on use of $COLORFGBG environment - AC_MSG_CHECKING(if you want colorfgbg code) -@@ -1073,7 +1104,7 @@ - [with_colorfgbg=$enableval], - [with_colorfgbg=no]) - AC_MSG_RESULT($with_colorfgbg) --test "$with_colorfgbg" = yes && AC_DEFINE(USE_COLORFGBG) -+test "x$with_colorfgbg" = xyes && AC_DEFINE(USE_COLORFGBG,1,[Define to 1 to compile-in experimental $COLORFGBG code]) - - ### use option --enable-interop to turn on use of bindings used for interop - AC_MSG_CHECKING(if you want interop bindings) -@@ -1084,7 +1115,7 @@ - AC_MSG_RESULT($with_exp_interop) - - NCURSES_INTEROP_FUNCS=0 --test "$with_exp_interop" = yes && NCURSES_INTEROP_FUNCS=1 -+test "x$with_exp_interop" = xyes && NCURSES_INTEROP_FUNCS=1 - AC_SUBST(NCURSES_INTEROP_FUNCS) - - # This is still experimental (20080329), but should ultimately be moved to -@@ -1099,8 +1130,8 @@ - [use_pthreads_eintr=$enableval], - [use_pthreads_eintr=no]) - AC_MSG_RESULT($use_pthreads_eintr) -- if test $use_pthreads_eintr = yes ; then -- AC_DEFINE(USE_PTHREADS_EINTR) -+ if test "x$use_pthreads_eintr" = xyes ; then -+ AC_DEFINE(USE_PTHREADS_EINTR,1,[Define to 1 to enable EINTR in wgetch with pthreads]) - fi]) - - AC_MSG_CHECKING(if you want to use weak-symbols for pthreads) -@@ -1109,22 +1140,22 @@ - [use_weak_symbols=$enableval], - [use_weak_symbols=no]) - AC_MSG_RESULT($use_weak_symbols) -- if test "$use_weak_symbols" = yes ; then -+ if test "x$use_weak_symbols" = xyes ; then - CF_WEAK_SYMBOLS - else - cf_cv_weak_symbols=no - fi - -- if test $cf_cv_weak_symbols = yes ; then -- AC_DEFINE(USE_WEAK_SYMBOLS) -+ if test "x$cf_cv_weak_symbols" = xyes ; then -+ AC_DEFINE(USE_WEAK_SYMBOLS,1,[Define to 1 to enable weak-symbols for pthreads]) - fi - fi - - PTHREAD= --if test "$with_pthread" = "yes" ; then -- AC_DEFINE(USE_PTHREADS) -+if test "x$with_pthread" = "xyes" ; then -+ AC_DEFINE(USE_PTHREADS,1,[Define to 1 to use pthreads feature]) - enable_reentrant=yes -- if test $cf_cv_weak_symbols = yes ; then -+ if test "x$cf_cv_weak_symbols" = xyes ; then - PTHREAD=-lpthread - fi - fi -@@ -1140,19 +1171,29 @@ - [with_reentrant=$enableval], - [with_reentrant=no]) - AC_MSG_RESULT($with_reentrant) --if test "$with_reentrant" = yes ; then -+if test "x$with_reentrant" = xyes ; then - cf_cv_enable_reentrant=1 - cf_cv_enable_opaque="NCURSES_INTERNALS" - NCURSES_OPAQUE=1 - NCURSES_SIZE_T=int -- if test $cf_cv_weak_symbols = yes ; then -+ if test "x$cf_cv_weak_symbols" = xyes ; then - CF_REMOVE_LIB(LIBS,$LIBS,pthread) - CF_ADD_LIB(pthread,TEST_LIBS) - CF_ADD_LIB(pthread,TEST_LIBS2) - else -- LIB_SUFFIX="t${LIB_SUFFIX}" -+ # when not using weak symbols but with_reentrant, -+ # add 't' to the library suffix on all platforms -+ # except cygwin, where we only do that if ALSO -+ # compiling with full thread support. -+ case "$host" in -+ *cygwin* | *msys*) -+ if test "$with_pthread" = "yes" ; then -+ LIB_SUFFIX="t${LIB_SUFFIX}" -+ fi ;; -+ * ) LIB_SUFFIX="t${LIB_SUFFIX}" ;; -+ esac - fi -- AC_DEFINE(USE_REENTRANT) -+ AC_DEFINE(USE_REENTRANT,1,[Define to 1 to use experimental reentrant feature]) - CF_NCURSES_ABI_6 - else - cf_cv_enable_reentrant=0 -@@ -1177,7 +1218,7 @@ - NCURSES_WRAP_PREFIX=_nc_ - fi - AC_SUBST(NCURSES_WRAP_PREFIX) --AC_DEFINE_UNQUOTED(NCURSES_WRAP_PREFIX,"$NCURSES_WRAP_PREFIX") -+AC_DEFINE_UNQUOTED(NCURSES_WRAP_PREFIX,"$NCURSES_WRAP_PREFIX",[Define to override _nc_ prefix]) - - AC_MSG_CHECKING(if you want experimental safe-sprintf code) - AC_ARG_ENABLE(safe-sprintf, -@@ -1185,7 +1226,7 @@ - [with_safe_sprintf=$enableval], - [with_safe_sprintf=no]) - AC_MSG_RESULT($with_safe_sprintf) --test "$with_safe_sprintf" = yes && AC_DEFINE(USE_SAFE_SPRINTF) -+test "x$with_safe_sprintf" = xyes && AC_DEFINE(USE_SAFE_SPRINTF,1,[Define to 1 to compile with experimental safe-sprintf code]) - - ### use option --disable-scroll-hints to turn off use of scroll-hints scrolling logic - # when hashmap is used scroll hints are useless -@@ -1196,7 +1237,7 @@ - [with_scroll_hints=$enableval], - [with_scroll_hints=yes]) - AC_MSG_RESULT($with_scroll_hints) --test "$with_scroll_hints" = yes && AC_DEFINE(USE_SCROLL_HINTS) -+test "x$with_scroll_hints" = xyes && AC_DEFINE(USE_SCROLL_HINTS,1,[Define to 1 to compile without scroll-hints code]) - fi - - AC_MSG_CHECKING(if you want experimental wgetch-events code) -@@ -1205,25 +1246,20 @@ - [with_wgetch_events=$enableval], - [with_wgetch_events=no]) - AC_MSG_RESULT($with_wgetch_events) --test "$with_wgetch_events" = yes && AC_DEFINE(NCURSES_WGETCH_EVENTS) -+test "x$with_wgetch_events" = xyes && AC_DEFINE(NCURSES_WGETCH_EVENTS,1,[Define to 1 to compile with experimental wgetch-events code]) - - ############################################################################### - CF_HELP_MESSAGE(Testing/development Options:) - - ### use option --disable-echo to suppress full display compiling commands --AC_MSG_CHECKING(if you want to display full commands during build) --AC_ARG_ENABLE(echo, -- [ --enable-echo build: display "compiling" commands (default)], -- [with_echo=$enableval], -- [with_echo=yes]) --if test "$with_echo" = yes; then -+CF_DISABLE_ECHO -+if test "x$enable_echo" = xyes; then - ECHO_LINK= - else - ECHO_LINK='@ echo linking $@ ... ;' - test -n "$LIBTOOL" && LIBTOOL="$LIBTOOL --silent" - test -n "$LIBTOOL_CXX" && LIBTOOL_CXX="$LIBTOOL_CXX --silent" - fi --AC_MSG_RESULT($with_echo) - AC_SUBST(ECHO_LINK) - - ### use option --enable-warnings to turn on all gcc warnings -@@ -1235,12 +1271,13 @@ - - if test "x$with_warnings" = "xyes"; then - CF_ADD_ADAFLAGS(-gnatg) -- CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum) -- if test "$cf_with_cxx" = yes ; then -+ CF_GCC_WARNINGS(Wno-unknown-pragmas Wswitch-enum) -+ if test "x$cf_with_cxx" = xyes ; then - CF_GXX_WARNINGS(Wno-unused) - fi - fi - CF_GCC_ATTRIBUTES -+CF_ENABLE_STRING_HACKS - - ### use option --enable-assertions to turn on generation of assertion code - AC_MSG_CHECKING(if you want to enable runtime assertions) -@@ -1253,7 +1290,6 @@ - then - if test "$with_assertions" = no - then -- AC_DEFINE(NDEBUG) - CPPFLAGS="$CPPFLAGS -DNDEBUG" - else - CF_ADD_ADAFLAGS(-gnata) -@@ -1262,17 +1298,17 @@ - - ### use option --disable-leaks to suppress "permanent" leaks, for testing - CF_DISABLE_LEAKS --AC_DEFINE(HAVE_NC_ALLOC_H) -+AC_DEFINE(HAVE_NC_ALLOC_H,1,[Define to 1 if we have nc_alloc.h header]) - - ### use option --enable-expanded to generate certain macros as functions - AC_ARG_ENABLE(expanded, - [ --enable-expanded test: generate functions for certain macros], -- [test "$enableval" = yes && AC_DEFINE(NCURSES_EXPANDED)]) -+ [test "x$enableval" = xyes && AC_DEFINE(NCURSES_EXPANDED,1,[Define to 1 to generate functions for certain macros])]) - - ### use option --disable-macros to suppress macros in favor of functions - AC_ARG_ENABLE(macros, - [ --disable-macros test: use functions rather than macros], -- [test "$enableval" = no && AC_DEFINE(NCURSES_NOMACROS)]) -+ [test "$enableval" = no && AC_DEFINE(NCURSES_NOMACROS,1,[Define to 1 to use functions rather than macros])]) - - # Normally we only add trace() to the debug-library. Allow this to be - # extended to all models of the ncurses library: -@@ -1290,7 +1326,7 @@ - [cf_with_trace=$cf_all_traces]) - AC_MSG_RESULT($cf_with_trace) - --if test "$cf_with_trace" = yes ; then -+if test "x$cf_with_trace" = xyes ; then - LIB_TRACING=all - ADA_TRACE=TRUE - CF_ADD_CFLAGS(-DTRACE) -@@ -1307,15 +1343,15 @@ - ;; - *) - AC_CHECK_FUNC(gettimeofday, -- AC_DEFINE(HAVE_GETTIMEOFDAY),[ -+ AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define to 1 if we have gettimeofday function]),[ - - AC_CHECK_LIB(bsd, gettimeofday, -- AC_DEFINE(HAVE_GETTIMEOFDAY) -+ AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define to 1 if we have gettimeofday function]) - CF_ADD_LIB(bsd))])dnl CLIX: bzero, select, gettimeofday - ;; - esac - --CF_MATH_LIB(MATH_LIB,sin(x)) -+CF_MATH_LIB(MATH_LIB,pow(sin(x),x)) - AC_SUBST(MATH_LIB) - - ### Checks for header files. -@@ -1344,9 +1380,11 @@ - wctype.h \ - ) - -+CF_GETOPT_HEADER -+ - # check for ISC (this may also define _POSIX_SOURCE) - # Note: even non-Posix ISC needs to declare fd_set --if test "$ISC" = yes ; then -+if test "x$ISC" = xyes ; then - AC_CHECK_LIB(cposix,main) - AC_CHECK_LIB(inet,bzero,CF_ADD_LIB(inet))dnl also 'select()' - fi -@@ -1393,10 +1431,12 @@ - getttynam \ - issetugid \ - poll \ -+putenv \ - remove \ - select \ - setbuf \ - setbuffer \ -+setenv \ - setvbuf \ - sigaction \ - sigvec \ -@@ -1406,7 +1446,7 @@ - times \ - vsnprintf \ - ) --if test "$with_getcap" = "yes" ; then -+if test "x$with_getcap" = "xyes" ; then - CF_CGETENT - fi - -@@ -1421,12 +1461,12 @@ - CF_SUBST_IF(["$cf_cv_func_vsscanf" = vsscanf], HAVE_VSSCANF, 1, 0) - - dnl FIXME (may need this) AC_SYS_RESTARTABLE_SYSCALLS --if test "$cross_compiling" = yes ; then -+if test "x$cross_compiling" = xyes ; then - AC_MSG_WARN(cross compiling: assume setvbuf params not reversed) - else - AC_FUNC_SETVBUF_REVERSED - fi --AC_TYPE_SIGNAL -+AC_CHECK_TYPE(intptr_t, long) - CF_TYPE_SIGACTION - CF_SIZECHANGE - CF_FUNC_MEMMOVE -@@ -1437,9 +1477,9 @@ - # special check for test/ditto.c - CF_FUNC_OPENPTY - if test "$cf_cv_func_openpty" != no ; then -- AC_DEFINE_UNQUOTED(USE_OPENPTY_HEADER,<$cf_cv_func_openpty>) -- AC_DEFINE(USE_XTERM_PTY) -- if test "$cf_cv_lib_util" = yes ; then -+ AC_DEFINE_UNQUOTED(USE_OPENPTY_HEADER,<$cf_cv_func_openpty>,[Define to actual header for openpty function]) -+ AC_DEFINE(USE_XTERM_PTY,1,[Define to 1 if we should assume xterm pseudoterminal interface]) -+ if test "x$cf_cv_lib_util" = xyes ; then - CF_ADD_LIB(util,TEST_LIBS) - fi - fi -@@ -1447,7 +1487,7 @@ - AC_SUBST(TEST_LIBS2) - - if test "$with_hashed_db" != no ; then -- AC_DEFINE(USE_HASHED_DB) -+ AC_DEFINE(USE_HASHED_DB,1,[Define to 1 if we should build terminfo in hashed database]) - CF_HASHED_DB($with_hashed_db) - fi - -@@ -1478,50 +1518,14 @@ - ;; - esac - -- AC_CHECK_HEADERS(iostream typeinfo) -- -- if test x"$ac_cv_header_iostream" = xyes ; then -- AC_MSG_CHECKING(if iostream uses std-namespace) -- AC_TRY_COMPILE([ --#include --using std::endl; --using std::cerr;],[ --cerr << "testing" << endl; --],[cf_iostream_namespace=yes],[cf_iostream_namespace=no]) -- AC_MSG_RESULT($cf_iostream_namespace) -- if test "$cf_iostream_namespace" = yes ; then -- AC_DEFINE(IOSTREAM_NAMESPACE) -- fi -- fi -- -+ AC_CHECK_HEADERS(typeinfo) -+ CF_CXX_IOSTREAM_NAMESPACE - CF_BOOL_DECL - CF_BOOL_SIZE - CF_ETIP_DEFINES - CF_CPP_PARAM_INIT - CF_CPP_STATIC_CAST -- -- CXX_AR='$(AR)' -- CXX_ARFLAGS='$(ARFLAGS)' -- case $cf_cv_system_name in #(vi -- irix*) #(vi -- if test "$GXX" != yes ; then -- CXX_AR='$(CXX)' -- CXX_ARFLAGS='-ar -o' -- fi -- ;; -- sco3.2v5*) #(vi -- CXXLDFLAGS="-u main" -- ;; -- solaris2*) -- if test "$GXX" != yes ; then -- CXX_AR='$(CXX)' -- CXX_ARFLAGS='-xar -o' -- fi -- ;; -- esac -- AC_SUBST(CXXLDFLAGS) -- AC_SUBST(CXX_AR) -- AC_SUBST(CXX_ARFLAGS) -+ CF_CXX_AR_FLAGS - else - cf_cxx_library=no - cf_cv_builtin_bool=1 -@@ -1593,20 +1597,9 @@ - dnl At the moment we support no other Ada95 compiler. - if test "$cf_with_ada" != "no" ; then - CF_PROG_GNAT -- if test "$cf_cv_prog_gnat_correct" = yes; then -+ if test "x$cf_cv_prog_gnat_correct" = xyes; then - CF_ADD_ADAFLAGS(-gnatpn) -- -- # make ADAFLAGS consistent with CFLAGS -- case "$CFLAGS" in -- *-g*) -- CF_ADD_ADAFLAGS(-g) -- ;; -- esac -- case "$CFLAGS" in -- *-O*) -- CF_ADD_ADAFLAGS(-O3) -- ;; -- esac -+ CF_FIXUP_ADAFLAGS - - CF_GNAT_GENERICS - CF_GNAT_SIGINT -@@ -1627,6 +1620,11 @@ - cf_with_ada=no - fi - -+# do this "late" to avoid conflict with header-checks -+if test "x$with_widec" = xyes ; then -+ AC_CHECK_SIZEOF(wchar_t) -+fi -+ - ### Construct the ncurses library-subsets, if any, from this set of keywords: - ### none, base, ext_funcs, ext_tinfo, ticlib, termlib, widechar - ### -@@ -1640,7 +1638,7 @@ - AC_MSG_CHECKING(for library subsets) - LIB_SUBSETS= - --if test "$cf_with_progs" = yes || test "$with_ticlib" != no || test "$with_termcap" != no; then -+if test "x$cf_with_progs" = xyes || test "$with_ticlib" != no || test "$with_termcap" != no; then - LIB_SUBSETS="${LIB_SUBSETS}ticlib" - if test "$with_ticlib" != no ; then - LIB_SUBSETS="${LIB_SUBSETS} " -@@ -1650,7 +1648,7 @@ - fi - - LIB_SUBSETS="${LIB_SUBSETS}termlib" --test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo" -+test "x$with_ext_funcs" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo" - - if test "$with_termlib" != no ; then - LIB_SUBSETS="${LIB_SUBSETS} " -@@ -1674,8 +1672,8 @@ - esac - fi - --test "$with_widec" = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar" --test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs" -+test "x$with_widec" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+widechar" -+test "x$with_ext_funcs" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs" - - AC_MSG_RESULT($LIB_SUBSETS) - -@@ -1699,20 +1697,24 @@ - AC_SUBST(DFT_OBJ_SUBDIR)dnl the default object-directory ("obj") - AC_MSG_RESULT($DFT_OBJ_SUBDIR) - --# libtool thinks it can make c++ shared libraries (perhaps only g++) --if test "$cf_with_cxx" = yes ; then -+if test "x$cf_with_cxx" = xyes ; then - AC_MSG_CHECKING(c++ library-dependency suffix) - if test "$with_libtool" != "no"; then -+ # libtool thinks it can make c++ shared libraries (perhaps only g++) -+ CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX -+elif test "$with_shared_cxx" != "no"; then -+ # also for g++ users... - CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX - else -- CF_LIB_SUFFIX(normal,CXX_LIB_SUFFIX,CXX_DEP_SUFFIX)dnl we normally make a static library -+ # we normally make a static library because C/C++ library rules differ -+ CF_LIB_SUFFIX(normal,CXX_LIB_SUFFIX,CXX_DEP_SUFFIX) - fi - AC_MSG_RESULT($CXX_LIB_SUFFIX) - AC_SUBST(CXX_LIB_SUFFIX) - fi - - # do not want -ldl in build except as needed for -lncurses dependency --if test "$with_dlsym" = yes ; then -+if test "x$with_dlsym" = xyes ; then - if test $DFT_LWR_MODEL = shared || \ - test $DFT_LWR_MODEL = libtool ; then - CF_REMOVE_LIB(LIBS,$LIBS,dl) -@@ -1723,13 +1725,13 @@ - # TICS_LIST and TINFO_LIST are needed to build libtic.so and libterm.so, but - # do not need libdl - TICS_LIST= --if test "$with_dlsym" = yes ; then -+if test "x$with_dlsym" = xyes ; then - CF_REMOVE_LIB(TINFO_LIST,$SHLIB_LIST,dl) - fi - - if test "$with_ticlib" != no ; then - -- if test "$with_ticlib" != yes ; then -+ if test "x$with_ticlib" != xyes ; then - TICS_NAME=$with_ticlib - TICS_ARG_SUFFIX="${with_ticlib}`echo ${DFT_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" - TICS_DEP_SUFFIX="${with_ticlib}`echo ${DFT_DEP_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" -@@ -1739,18 +1741,21 @@ - TICS_DEP_SUFFIX="${TICS_NAME}${DFT_DEP_SUFFIX}" - TICS_LIB_SUFFIX="${TICS_NAME}${LIB_SUFFIX}" - fi -- TICS_ARGS="-L${LIB_DIR} -l${TICS_LIB_SUFFIX}" -+ TICS_LDFLAGS="-L${LIB_DIR}" -+ TICS_LIBS="-l${TICS_LIB_SUFFIX}" - else -- TICS_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}" -+ TICS_LDFLAGS="-L${LIB_DIR}" -+ TICS_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX}" - fi - AC_SUBST(TICS_ARG_SUFFIX) - AC_SUBST(TICS_DEP_SUFFIX) - AC_SUBST(TICS_LIB_SUFFIX) --AC_SUBST(TICS_ARGS) -+AC_SUBST(TICS_LDFLAGS) -+AC_SUBST(TICS_LIBS) - - if test "$with_termlib" != no ; then - -- if test "$with_termlib" != yes ; then -+ if test "x$with_termlib" != xyes ; then - TINFO_NAME=$with_termlib - TINFO_SUFFIX="`echo ${DFT_LIB_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" - TINFO_ARG_SUFFIX="${with_termlib}`echo ${DFT_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" -@@ -1768,14 +1773,22 @@ - if test "$DFT_LWR_MODEL" = "libtool"; then - TEST_ARGS="${TEST_DEPS}" - TEST_ARG2="${TEST_DEP2}" -- TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS" -+ TINFO_LDFLAGS="-L${LIB_DIR}" -+ TINFO_LIBS="$TEST_ARGS" - TICS_LIST="$SHLIB_LIST $TEST_ARGS" - SHLIB_LIST="${SHLIB_LIST} $TEST_ARGS" - else - TEST_ARGS="-l${TINFO_ARG_SUFFIX}" - TEST_ARG2="-l${TINFO_ARG_SUFFIX}" -- TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" -- TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS" -+ if test "x$with_term_driver" != xno ; then -+ TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}" -+ TICS_LIBS="$TICS_LIBS -l${LIB_NAME}${DFT_ARG_SUFFIX}" -+ TINFO_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS" -+ else -+ TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" -+ TINFO_LIBS="$TEST_ARGS" -+ fi -+ TINFO_LDFLAGS="-L${LIB_DIR}" - SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" - fi - else -@@ -1783,19 +1796,20 @@ - TINFO_NAME=${LIB_NAME} - TINFO_SUFFIX=${DFT_LIB_SUFFIX} - TINFO_ARG_SUFFIX=${LIB_NAME}${DFT_ARG_SUFFIX} -- if test "$with_tic_depends" = yes ; then -+ if test "x$with_tic_depends" = xyes ; then - TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}" - else - TICS_LIST="$SHLIB_LIST" - fi - -- TINFO_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}" -+ TINFO_LDFLAGS="-L${LIB_DIR}" -+ TINFO_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX}" - fi - - if test "$DFT_LWR_MODEL" = shared ; then - case $cf_cv_system_name in #(vi -- cygwin*) -- # "lib" files have ".dll.a" suffix, "cyg" files have ".dll" -+ cygwin*|msys*) -+ # "lib" files have ".dll.a" suffix, "cyg"or "msys-" files have ".dll" - TINFO_SUFFIX=.dll - ;; - esac -@@ -1804,9 +1818,10 @@ - AC_SUBST(TINFO_ARG_SUFFIX) - AC_SUBST(TINFO_DEP_SUFFIX) - AC_SUBST(TINFO_LIB_SUFFIX) --AC_SUBST(TINFO_ARGS) -+AC_SUBST(TINFO_LDFLAGS) -+AC_SUBST(TINFO_LIBS) - --if test "$with_dlsym" = yes ; then -+if test "x$with_dlsym" = xyes ; then - CF_REMOVE_LIB(TICS_LIST,$TICS_LIST,dl) - fi - -@@ -1815,8 +1830,8 @@ - fi - - # needed for Ada95 --TINFO_ARGS2=`echo "$TINFO_ARGS" | sed -e 's,-L\.\./,-L../../,'` --AC_SUBST(TINFO_ARGS2) -+TINFO_LDFLAGS2=`echo "$TINFO_LDFLAGS" | sed -e 's,-L\.\./,-L../../,'` -+AC_SUBST(TINFO_LDFLAGS2) - - case $DFT_LWR_MODEL in - normal|debug|profile) -@@ -1825,10 +1840,15 @@ - esac - - AC_MSG_CHECKING(where we will install curses.h) --test "$with_overwrite" = no && \ --test "x$includedir" = 'x${prefix}/include' && \ -- includedir='${prefix}/include/ncurses'${LIB_SUFFIX} --AC_MSG_RESULT($includedir) -+AC_SUBST(includesubdir) -+includesubdir= -+if test "$with_overwrite" = no && \ -+ ( test "x$includedir" = 'x${prefix}/include' || \ -+ test "x$includedir" = "x${prefix}/include" ) -+then -+ includesubdir="/ncurses${LIB_SUFFIX}" -+fi -+AC_MSG_RESULT(${includedir}${includesubdir}) - - ### Resolve a conflict between normal and wide-curses by forcing applications - ### that will need libutf8 to add it to their configure script. -@@ -1850,14 +1870,14 @@ - AC_SUBST(NCURSES_TREE) - - ### predefined stuff for the test programs --AC_DEFINE(HAVE_SLK_COLOR) -+AC_DEFINE(HAVE_SLK_COLOR,1,[Define to 1 if we have slk_color for test-programs]) - - ### Construct the list of subdirectories for which we'll customize makefiles - ### with the appropriate compile-rules. - - CF_SRC_MODULES($modules_to_build) - --if test "$cf_with_ada" != "no" && test "$cf_cv_prog_gnat_correct" != "no"; then -+if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = "xyes"; then - SUB_MAKEFILES="$SUB_MAKEFILES Ada95/gen/adacurses${DFT_ARG_SUFFIX}-config:Ada95/gen/adacurses-config.in" - SUB_MAKEFILES="$SUB_MAKEFILES man/adacurses${DFT_ARG_SUFFIX}-config.1:man/MKada_config.in" - fi -@@ -1869,26 +1889,27 @@ - AC_SUBST(NCURSES_SHLIB2) - - # values to use as strings --AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR') -+AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR',[Define to override ':' as library path-separator]) - --AC_DEFINE_UNQUOTED(NCURSES_VERSION_STRING, "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}") -+AC_DEFINE_UNQUOTED(NCURSES_VERSION_STRING, "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}",[Define to 1 if machine has ample memory for tic]) - - ### Now that we're done running tests, add the compiler-warnings, if any - CF_ADD_CFLAGS($EXTRA_CFLAGS) - - ### Define substitutions for header files to avoid name-pollution --CF_SUBST_IF(["$cf_cv_have_tcgetattr" = yes], HAVE_TCGETATTR, 1, 0) --CF_SUBST_IF(["$ac_cv_header_termio_h" = yes], HAVE_TERMIO_H, 1, 0) --CF_SUBST_IF(["$ac_cv_header_termios_h" = yes], HAVE_TERMIOS_H, 1, 0) -+CF_SUBST_IF(["x$cf_cv_have_tcgetattr" = xyes], HAVE_TCGETATTR, 1, 0) -+CF_SUBST_IF(["x$ac_cv_header_stdint_h" = xyes], HAVE_STDINT_H, 1, 0) -+CF_SUBST_IF(["x$ac_cv_header_termio_h" = xyes], HAVE_TERMIO_H, 1, 0) -+CF_SUBST_IF(["x$ac_cv_header_termios_h" = xyes], HAVE_TERMIOS_H, 1, 0) - - ################################################################################ --test "$use_database" = yes && \ -+test "x$use_database" = xyes && \ - SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in" - - SUB_MAKEFILES="$SUB_MAKEFILES misc/ncurses-config:misc/ncurses-config.in" - SUB_MAKEFILES="$SUB_MAKEFILES man/ncurses${DFT_ARG_SUFFIX}${cf_cv_abi_version}-config.1:man/MKncu_config.in" - --if test x"$enable_pc_files" = xyes ; then \ -+if test "x$enable_pc_files" = xyes ; then \ - SUB_MAKEFILES="$SUB_MAKEFILES misc/gen-pkgconfig:misc/gen-pkgconfig.in" - MAKE_PC_FILES= - else -@@ -1917,13 +1938,55 @@ - ADAHTML_DIR=../../doc/html/ada - AC_SUBST(ADAHTML_DIR) - --SUB_SCRIPTS= -+# these could be configurable, but are not currently -+PANEL_NAME=panel -+MENU_NAME=menu -+FORM_NAME=form -+CXX_NAME=ncurses++ -+ -+AC_SUBST(PANEL_NAME) -+AC_SUBST(MENU_NAME) -+AC_SUBST(FORM_NAME) -+AC_SUBST(CXX_NAME) -+ -+# workaround for g++ versus Solaris (20131116) - case $cf_cv_system_name in #(vi --*mingw32*) #(vi -- SUB_SCRIPTS="mk-dlls.sh" -+solaris2*) #(vi -+ case "x$CPPFLAGS" in #(vi -+ *-D_XOPEN_SOURCE_EXTENDED*) -+ CF_VERBOSE(moving _XOPEN_SOURCE_EXTENDED to work around g++ problem) -+ CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED" -+ CPPFLAGS=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/-D_XOPEN_SOURCE_EXTENDED//'` -+ ;; -+ esac - ;; - esac - -+# AC_CHECK_SIZEOF demands a literal parameter, no variables. So we do this. -+case "x$NCURSES_OSPEED" in #(vi -+*short*) #(vi -+ cf_compatible=1 -+ ;; -+*) -+ cf_compatible=0 -+ ;; -+esac -+AC_DEFINE_UNQUOTED(NCURSES_OSPEED_COMPAT,$cf_compatible,[Define to 1 if termcap variable ospeed is short]) -+ -+case "x$cf_cv_typeof_chtype" in -+xshort|xint|xlong) -+ cf_cv_typeof_chtype="unsigned $cf_cv_typeof_chtype" -+ ;; -+esac -+ -+case "x$cf_cv_typeof_mmask_t" in -+xshort|xint|xlong) -+ cf_cv_typeof_mmask_t="unsigned $cf_cv_typeof_mmask_t" -+ ;; -+esac -+ -+SUB_SCRIPTS= -+ - AC_OUTPUT( \ - include/MKterm.h.awk \ - include/curses.head:include/curses.h.in \ -@@ -1934,11 +1997,11 @@ - $SUB_MAKEFILES \ - Makefile,[ - if test "x$cf_with_tests" != xno ; then -- CF_PRG_RULES([$srcdir/test/mk-test.awk INSTALL=no ECHO_LINK="$ECHO_LINK"], test) -+ CF_PRG_RULES([$srcdir/test/mk-test.awk INSTALL=no ECHO_LINK="$ECHO_LD"], test) - fi - CF_LIB_RULES($SRC_SUBDIRS) - --if test "x$cf_with_ada" != xno ; then -+if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = "xyes"; then - if test -z "$USE_OLD_MAKERULES" ; then - $AWK -f $srcdir/Ada95/mk-1st.awk <$srcdir/Ada95/src/modules >>Ada95/src/Makefile - fi -@@ -1950,10 +2013,11 @@ - AWK="$AWK" - DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX" - DFT_LWR_MODEL="$DFT_LWR_MODEL" --ECHO_LINK="$ECHO_LINK" -+ECHO_LD="$ECHO_LD" - LDCONFIG="$LDCONFIG" - LIBTOOL_VERSION="$LIBTOOL_VERSION" - LIB_NAME="$LIB_NAME" -+LIB_PREFIX="$LIB_PREFIX" - LIB_SUBSETS="$LIB_SUBSETS" - LIB_SUFFIX="$LIB_SUFFIX" - LIB_TRACING="$LIB_TRACING" -@@ -1975,7 +2039,7 @@ - TINFO_SUFFIX="$TINFO_SUFFIX" - USE_OLD_MAKERULES="$USE_OLD_MAKERULES" - WITH_CURSES_H="$with_curses_h" --WITH_ECHO="$with_echo" -+WITH_ECHO="${enable_echo:=yes}" - WITH_OVERWRITE="$with_overwrite" - cf_LIST_MODELS="$cf_list_models" - cf_cv_abi_version="$cf_cv_abi_version" -@@ -1985,16 +2049,20 @@ - cf_cv_enable_opaque="$cf_cv_enable_opaque" - cf_cv_prog_CC_c_o=$cf_cv_prog_CC_c_o - cf_cv_prog_CXX_c_o=$cf_cv_prog_CXX_c_o -+cf_cv_prog_gnat_correct=$cf_cv_prog_gnat_correct - cf_cv_rel_version="$cf_cv_rel_version" - cf_cv_rm_so_locs="$cf_cv_rm_so_locs" - cf_cv_shared_soname='$cf_cv_shared_soname' - cf_cv_shlib_version="$cf_cv_shlib_version" - cf_cv_shlib_version_infix="$cf_cv_shlib_version_infix" - cf_cv_system_name="$cf_cv_system_name" -+cf_cv_term_driver="$with_term_driver" - cf_with_ada="$cf_with_ada" - cf_with_cxx_binding="$cf_with_cxx_binding" -+cf_with_db_install="$cf_with_db_install" - cf_with_manpages="$cf_with_manpages" - cf_with_tests="$cf_with_tests" -+with_shared_cxx="$with_shared_cxx" - host="$host" - target="$target" - -diff -Naur ncurses-5.9/COPYING ncurses-5.9.patch/COPYING ---- ncurses-5.9/COPYING 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/COPYING 2014-09-01 16:33:22.227791908 +0200 -@@ -0,0 +1,28 @@ -+Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. -+ -+Permission is hereby granted, free of charge, to any person obtaining a -+copy of this software and associated documentation files (the -+"Software"), to deal in the Software without restriction, including -+without limitation the rights to use, copy, modify, merge, publish, -+distribute, distribute with modifications, sublicense, and/or sell -+copies of the Software, and to permit persons to whom the Software is -+furnished to do so, subject to the following conditions: -+ -+The above copyright notice and this permission notice shall be included -+in all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -+IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -+DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -+OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR -+THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name(s) of the above copyright -+holders shall not be used in advertising or otherwise to promote the -+sale, use or other dealings in this Software without prior written -+authorization. -+ -+-- vile:txtmode fc=72 -+-- $Id: COPYING,v 1.2 2014/01/18 23:59:29 tom Exp $ -diff -Naur ncurses-5.9/dist.mk ncurses-5.9.patch/dist.mk ---- ncurses-5.9/dist.mk 2011-04-05 00:42:20.000000000 +0200 -+++ ncurses-5.9.patch/dist.mk 2014-09-01 16:34:19.474887043 +0200 -@@ -1,5 +1,5 @@ - ############################################################################## --# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -25,7 +25,7 @@ - # use or other dealings in this Software without prior written # - # authorization. # - ############################################################################## --# $Id: dist.mk,v 1.810 2011/04/04 22:42:20 tom Exp $ -+# $Id: dist.mk,v 1.978 2014/03/23 20:59:54 tom Exp $ - # Makefile for creating ncurses distributions. - # - # This only needs to be used directly as a makefile by developers, but -@@ -37,20 +37,21 @@ - # These define the major/minor/patch versions of ncurses. - NCURSES_MAJOR = 5 - NCURSES_MINOR = 9 --NCURSES_PATCH = 20110404 -+NCURSES_PATCH = 20140323 - - # We don't append the patch to the version, since this only applies to releases - VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR) - --# The most recent html files were generated with lynx 2.8.6, using ncurses --# configured with -+# The most recent html files were generated with lynx 2.8.6 (or later), using -+# ncurses configured with - # --without-manpage-renames - # on Debian/testing. The -scrollbar and -width options are used to make lynx - # use 79 columns as it did in 2.8.5 and before. - DUMP = lynx -dump -scrollbar=0 -width=79 - DUMP2 = $(DUMP) -nolist - --GNATHTML= `type -p gnathtml || type -p gnathtml.pl` -+# gcc's file is "gnathtml.pl" -+GNATHTML= gnathtml - - # man2html 3.0.1 is a Perl script which assumes that pages are fixed size. - # Not all man programs agree with this assumption; some use half-spacing, which -@@ -98,7 +99,13 @@ - MANPROG = tbl | nroff -mandoc -rLL=65n -rLT=71n -Tascii - - manhtml: -- @rm -f doc/html/man/*.html -+ @for f in doc/html/man/*.html; do \ -+ test -f $$f || continue; \ -+ case $$f in \ -+ */index.html) ;; \ -+ *) rm -f $$f ;; \ -+ esac; \ -+ done - @mkdir -p doc/html/man - @rm -f subst.tmp ; - @for f in man/*.[0-9]*; do \ -@@ -126,7 +133,7 @@ - g=$${m}.html ;\ - if [ -f doc/html/$$g ]; then chmod +w doc/html/$$g; fi;\ - echo "Converting $$m to HTML" ;\ -- echo '' > doc/html/man/$$g ;\ -+ echo '' > doc/html/man/$$g ;\ - echo '' >> doc/html/man/$$g ;\ -- ./edit_man.sh normal editing /usr/man man $$f | $(MANPROG) | tr '\255' '-' | $(MAN2HTML) -title "$$T" | \ -- sed -f subst.sed |\ -- sed -e 's/"curses.3x.html"/"ncurses.3x.html"/g' \ -+ ./edit_man.sh normal editing /usr/man man $$f | \ -+ $(MANPROG) | \ -+ tr '\255' '-' | \ -+ $(MAN2HTML) \ -+ -title "$$T" \ -+ -aliases man/manhtml.aliases \ -+ -externs man/manhtml.externs | \ -+ sed -f subst.sed |\ -+ sed -e 's/"curses.3x.html"/"ncurses.3x.html"/g' \ - >> doc/html/man/$$g ;\ - done - @rm -f subst.sed -@@ -149,7 +162,7 @@ - # .ali files contain cross referencing information required by gnathtml. - adahtml: - if [ ! -z "$(GNATHTML)" ]; then \ -- (cd ./Ada95/gen ; make html) ;\ -+ (cd ./Ada95/gen ; make html GNATHTML=$(GNATHTML) ) ;\ - fi - - # This only works on a clean source tree, of course. -diff -Naur ncurses-5.9/doc/html/ada/files/T.htm ncurses-5.9.patch/doc/html/ada/files/T.htm ---- ncurses-5.9/doc/html/ada/files/T.htm 2005-05-14 18:28:37.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/ada/files/T.htm 2014-09-01 16:33:22.266791973 +0200 -@@ -1,5 +1,9 @@ - --T -+ -+ -+T -+ -+ - -

Files - T

- [index] -diff -Naur ncurses-5.9/doc/html/ada/files.htm ncurses-5.9.patch/doc/html/ada/files.htm ---- ncurses-5.9/doc/html/ada/files.htm 2005-05-14 18:28:37.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/ada/files.htm 2014-09-01 16:33:22.266791973 +0200 -@@ -1,5 +1,17 @@ -- -- -+ -+ -+ -+ -+ -+ -+ - -

Files

- [T] -diff -Naur ncurses-5.9/doc/html/ada/funcs/A.htm ncurses-5.9.patch/doc/html/ada/funcs/A.htm ---- ncurses-5.9/doc/html/ada/funcs/A.htm 2011-03-20 00:18:38.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/A.htm 2014-09-01 16:33:22.266791973 +0200 -@@ -1,24 +1,28 @@ - --A -+ -+ -+A -+ -+ - -

Functions - A

- [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/B.htm ncurses-5.9.patch/doc/html/ada/funcs/B.htm ---- ncurses-5.9/doc/html/ada/funcs/B.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/B.htm 2014-09-01 16:33:22.267791975 +0200 -@@ -1,21 +1,25 @@ - --B -+ -+ -+B -+ -+ - -

Functions - B

- [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/C.htm ncurses-5.9.patch/doc/html/ada/funcs/C.htm ---- ncurses-5.9/doc/html/ada/funcs/C.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/C.htm 2014-09-01 16:33:22.267791975 +0200 -@@ -1,50 +1,54 @@ - --C -+ -+ -+C -+ -+ - -

Functions - C

- [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/H.htm ncurses-5.9.patch/doc/html/ada/funcs/H.htm ---- ncurses-5.9/doc/html/ada/funcs/H.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/H.htm 2014-09-01 16:33:22.268791976 +0200 -@@ -1,22 +1,26 @@ - --H -+ -+ -+H -+ -+ - -

Functions - H

- [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/I.htm ncurses-5.9.patch/doc/html/ada/funcs/I.htm ---- ncurses-5.9/doc/html/ada/funcs/I.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/I.htm 2014-09-01 16:33:22.268791976 +0200 -@@ -1,45 +1,49 @@ - --I -+ -+ -+I -+ -+ - -

Functions - I

- [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/L.htm ncurses-5.9.patch/doc/html/ada/funcs/L.htm ---- ncurses-5.9/doc/html/ada/funcs/L.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/L.htm 2014-09-01 16:33:22.269791978 +0200 -@@ -1,20 +1,24 @@ - --L -+ -+ -+L -+ -+ - -

Functions - L

- [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/M.htm ncurses-5.9.patch/doc/html/ada/funcs/M.htm ---- ncurses-5.9/doc/html/ada/funcs/M.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/M.htm 2014-09-01 16:33:22.269791978 +0200 -@@ -1,12 +1,16 @@ - --M -+ -+ -+M -+ -+ - -

Functions - M

- [index] -
    -
  • Make_Arg --
  • Mark - terminal_interface-curses-menus.ads:413 --
  • Mark - terminal_interface-curses-menus.ads:417 -+
  • Mark - terminal_interface-curses-menus.ads:411 -+
  • Mark - terminal_interface-curses-menus.ads:415 -
  • Menu_Back - terminal_interface-curses-menus.adb:608 -
  • Menu_Back - terminal_interface-curses-menus.adb:618 -
  • Menu_Fmt -@@ -28,13 +32,13 @@ -
  • Mouseinterval -
  • Mouse_Avail -
  • Mouse_Interval --
  • Move - terminal_interface-curses-forms.ads:616 -+
  • Move - terminal_interface-curses-forms.ads:614 -
  • Move - terminal_interface-curses-panels.ads:117 -
  • Move - terminal_interface-curses-forms.adb:786 -
  • Move - terminal_interface-curses-panels.adb:132 --
  • Move_Cursor --
  • Move_Derived_Window --
  • Move_Window -+
  • Move_Cursor -+
  • Move_Derived_Window -+
  • Move_Window -
  • Mvderwin -
  • mvwaddch -
  • Mvwdelch -diff -Naur ncurses-5.9/doc/html/ada/funcs/N.htm ncurses-5.9.patch/doc/html/ada/funcs/N.htm ---- ncurses-5.9/doc/html/ada/funcs/N.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/N.htm 2014-09-01 16:33:22.269791978 +0200 -@@ -1,13 +1,17 @@ - --N -+ -+ -+N -+ -+ - -

    Functions - N

    - [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/O.htm ncurses-5.9.patch/doc/html/ada/funcs/O.htm ---- ncurses-5.9/doc/html/ada/funcs/O.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/O.htm 2014-09-01 16:33:22.269791978 +0200 -@@ -1,12 +1,16 @@ - --O -+ -+ -+O -+ -+ - -

    Functions - O

    - [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/P.htm ncurses-5.9.patch/doc/html/ada/funcs/P.htm ---- ncurses-5.9/doc/html/ada/funcs/P.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/P.htm 2014-09-01 16:33:22.270791980 +0200 -@@ -1,32 +1,36 @@ - --P -+ -+ -+P -+ -+ - -

    Functions - P

    - [index] -
      --
    • Pad_Character - terminal_interface-curses-forms.ads:476 --
    • Pad_Character - terminal_interface-curses-menus.ads:494 --
    • Page -+
    • Pad_Character - terminal_interface-curses-forms.ads:474 -+
    • Pad_Character - terminal_interface-curses-menus.ads:492 -+
    • Page -
    • Page_Length - terminal_interface-curses-text_io.ads:80 -
    • Page_Length - terminal_interface-curses-text_io.ads:81 -
    • Paircontent --
    • Pair_Content -+
    • Pair_Content -
    • Panel_Hidden -
    • Panel_Userptr -
    • Panel_Win --
    • Pattern -+
    • Pattern -
    • Pechochar --
    • Peek - terminal_interface-curses.ads:1354 --
    • Peek - terminal_interface-curses.ads:1360 --
    • Peek - terminal_interface-curses.ads:1416 --
    • Peek - terminal_interface-curses.ads:1425 --
    • Peek - terminal_interface-curses.ads:1440 --
    • Peek - terminal_interface-curses.ads:1449 -+
    • Peek - terminal_interface-curses.ads:1353 -+
    • Peek - terminal_interface-curses.ads:1359 -+
    • Peek - terminal_interface-curses.ads:1415 -+
    • Peek - terminal_interface-curses.ads:1424 -+
    • Peek - terminal_interface-curses.ads:1439 -+
    • Peek - terminal_interface-curses.ads:1448 -
    • Pnoutrefresh --
    • Position_Cursor - terminal_interface-curses-forms.ads:687 --
    • Position_Cursor - terminal_interface-curses-menus.ads:398 --
    • Post - terminal_interface-curses-forms.ads:676 --
    • Post - terminal_interface-curses-menus.ads:326 -+
    • Position_Cursor - terminal_interface-curses-forms.ads:685 -+
    • Position_Cursor - terminal_interface-curses-menus.ads:396 -+
    • Post - terminal_interface-curses-forms.ads:674 -+
    • Post - terminal_interface-curses-menus.ads:324 -
    • Pos_Form_Cursor -
    • Pos_Menu_Cursor -
    • Prefresh -diff -Naur ncurses-5.9/doc/html/ada/funcs/Q.htm ncurses-5.9.patch/doc/html/ada/funcs/Q.htm ---- ncurses-5.9/doc/html/ada/funcs/Q.htm 2007-05-05 22:35:19.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/ada/funcs/Q.htm 2014-09-01 16:33:22.270791980 +0200 -@@ -1,5 +1,9 @@ - --Q -+ -+ -+Q -+ -+ - -

      Functions - Q

      - [index] -diff -Naur ncurses-5.9/doc/html/ada/funcs/R.htm ncurses-5.9.patch/doc/html/ada/funcs/R.htm ---- ncurses-5.9/doc/html/ada/funcs/R.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/R.htm 2014-09-01 16:33:22.270791980 +0200 -@@ -1,39 +1,43 @@ - --R -+ -+ -+R -+ -+ - -

      Functions - R

      - [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/S.htm ncurses-5.9.patch/doc/html/ada/funcs/S.htm ---- ncurses-5.9/doc/html/ada/funcs/S.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/S.htm 2014-09-01 16:33:22.270791980 +0200 -@@ -1,54 +1,58 @@ - --S -+ -+ -+S -+ -+ - -

      Functions - S

      - [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/T.htm ncurses-5.9.patch/doc/html/ada/funcs/T.htm ---- ncurses-5.9/doc/html/ada/funcs/T.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/T.htm 2014-09-01 16:33:22.271791981 +0200 -@@ -1,13 +1,17 @@ - --T -+ -+ -+T -+ -+ - -

      Functions - T

      - [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/U.htm ncurses-5.9.patch/doc/html/ada/funcs/U.htm ---- ncurses-5.9/doc/html/ada/funcs/U.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/U.htm 2014-09-01 16:33:22.271791981 +0200 -@@ -1,23 +1,27 @@ - --U -+ -+ -+U -+ -+ - -

      Functions - U

      - [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/V.htm ncurses-5.9.patch/doc/html/ada/funcs/V.htm ---- ncurses-5.9/doc/html/ada/funcs/V.htm 2011-03-20 00:18:38.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/V.htm 2014-09-01 16:33:22.271791981 +0200 -@@ -1,11 +1,15 @@ - --V -+ -+ -+V -+ -+ - -

      Functions - V

      - [index] - -diff -Naur ncurses-5.9/doc/html/ada/funcs/W.htm ncurses-5.9.patch/doc/html/ada/funcs/W.htm ---- ncurses-5.9/doc/html/ada/funcs/W.htm 2011-03-26 22:54:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/funcs/W.htm 2014-09-01 16:33:22.271791981 +0200 -@@ -1,5 +1,9 @@ - --W -+ -+ -+W -+ -+ - -

      Functions - W

      - [index] -diff -Naur ncurses-5.9/doc/html/ada/funcs.htm ncurses-5.9.patch/doc/html/ada/funcs.htm ---- ncurses-5.9/doc/html/ada/funcs.htm 2005-05-14 18:28:39.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/ada/funcs.htm 2014-09-01 16:33:22.266791973 +0200 -@@ -1,5 +1,17 @@ -- -- -+ -+ -+ -+ -+ -+ -+ - -

      Functions/Procedures

      - [A] -diff -Naur ncurses-5.9/doc/html/ada/index.htm ncurses-5.9.patch/doc/html/ada/index.htm ---- ncurses-5.9/doc/html/ada/index.htm 2005-05-14 18:28:37.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/ada/index.htm 2014-09-01 16:33:22.271791981 +0200 -@@ -1,6 +1,9 @@ - - --Source Browser -+ -+Source Browser -+ -+ - - - <H2 ALIGN=CENTER>Files</H2> -diff -Naur ncurses-5.9/doc/html/ada/main.htm ncurses-5.9.patch/doc/html/ada/main.htm ---- ncurses-5.9/doc/html/ada/main.htm 2011-02-26 00:43:50.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/main.htm 2014-09-01 16:33:22.271791981 +0200 -@@ -1,5 +1,17 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE></TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE></TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> - <P ALIGN=right><A HREF="main.htm" TARGET="_top">[No frame version is here]</A><P><H2 ALIGN=CENTER>Files</H2> - <A HREF="files/T.htm">[T]</A> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface__ads.htm 2006-09-23 22:31:33.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface__ads.htm 2014-09-01 16:33:22.315792055 +0200 -@@ -1,53 +1,65 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998,2006 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.14 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2006/06/25 14:30:22 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>package</b> <FONT COLOR=red><A NAME="ref_42_9">Terminal_Interface</A></FONT> <b>is</b> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998,2006 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.14 @</EM></span> -+<span class="comment"><EM>-- @Date: 2006/06/25 14:30:22 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>package</b> <span class="symbol"><A NAME="ref_42_9">Terminal_Interface</A></span> <b>is</b> - <b>pragma</b> Pure (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>); --<FONT COLOR=green><EM>--</EM></FONT> --<FONT COLOR=green><EM>-- Everything is in the child units</EM></FONT> --<FONT COLOR=green><EM>--</EM></FONT> -+<span class="comment"><EM>--</EM></span> -+<span class="comment"><EM>-- Everything is in the child units</EM></span> -+<span class="comment"><EM>--</EM></span> - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses__adb.htm 2011-03-26 22:54:31.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses__adb.htm 2014-09-01 16:33:22.311792048 +0200 -@@ -1,85 +1,97 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.8 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:02:14 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.8 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/22 23:02:14 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> System; - - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; - <b>with</b> Ada.Characters.Handling; <b>use</b> Ada.Characters.Handling; - <b>with</b> Ada.Strings.Fixed; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<FONT COLOR=red><A NAME="ref_50_33" HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<span class="symbol"><A NAME="ref_50_33" HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A></span> <b>is</b> - - <b>use</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - <b>use</b> <b>type</b> System.Bit_Order; - -- <b>package</b> <FONT COLOR=red><A NAME="ref_55_12">ASF</A></FONT> <b>renames</b> Ada.Strings.Fixed; -+ <b>package</b> <span class="symbol"><A NAME="ref_55_12">ASF</A></span> <b>renames</b> Ada.Strings.Fixed; - - <b>type</b> chtype_array <b>is</b> <b>array</b> (size_t <b>range</b> &lt;&gt;) -- <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>; -+ <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>; - <b>pragma</b> Convention (C, chtype_array); - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_62_13" HREF="terminal_interface-curses__ads.htm#ref_1618_13">Key_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_62_23" HREF="terminal_interface-curses__ads.htm#ref_1618_23">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) <b>return</b> String -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_62_13" HREF="terminal_interface-curses__ads.htm#ref_1617_13">Key_Name</A></span> (<span class="symbol"><A NAME="ref_62_23" HREF="terminal_interface-curses__ads.htm#ref_1617_23">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_64_16">Keyname</A></FONT> (<FONT COLOR=red><A NAME="ref_64_25" HREF="terminal_interface-curses__adb.htm#ref_64_16">K</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_64_16">Keyname</A></span> (<span class="symbol"><A NAME="ref_64_25" HREF="terminal_interface-curses__adb.htm#ref_64_16">K</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Keyname, "keyname"); - -- <FONT COLOR=red><A NAME="ref_67_7">Ch</A></FONT> : Character; -+ <span class="symbol"><A NAME="ref_67_7">Ch</A></span> : Character; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1618_23">Key</A> &lt;= Character'Pos (Character'Last) <b>then</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A> := Character'Val (<A HREF="terminal_interface-curses__ads.htm#ref_1618_23">Key</A>); -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1617_23">Key</A> &lt;= Character'Pos (Character'Last) <b>then</b> -+ <A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A> := Character'Val (<A HREF="terminal_interface-curses__ads.htm#ref_1617_23">Key</A>); - <b>if</b> Is_Control (<A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A>) <b>then</b> -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1629_13">Un_Control</A> (<A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>)); -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1628_13">Un_Control</A> (<A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>)); - <b>elsif</b> Is_Graphic (<A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A>) <b>then</b> - <b>declare</b> -- <FONT COLOR=red><A NAME="ref_77_16">S</A></FONT> : String (1 .. 1); -+ <span class="symbol"><A NAME="ref_77_16">S</A></span> : String (1 .. 1); - <b>begin</b> - <A HREF="terminal_interface-curses__adb.htm#ref_77_16">S</A> (1) := <A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A>; - <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_77_16">S</A>; -@@ -88,2475 +100,2475 @@ - <b>return</b> ""; - <b>end</b> <b>if</b>; - <b>else</b> -- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_64_16">Keyname</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1618_23">Key</A>))); -+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_64_16">Keyname</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1617_23">Key</A>))); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1618_13">Key_Name</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1617_13">Key_Name</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_90_14" HREF="terminal_interface-curses__ads.htm#ref_1612_14">Key_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_90_24" HREF="terminal_interface-curses__ads.htm#ref_1612_24">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>; -- <FONT COLOR=red><A NAME="ref_91_24" HREF="terminal_interface-curses__ads.htm#ref_1613_24">Name</A></FONT> : <b>out</b> String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_90_14" HREF="terminal_interface-curses__ads.htm#ref_1611_14">Key_Name</A></span> (<span class="symbol"><A NAME="ref_90_24" HREF="terminal_interface-curses__ads.htm#ref_1611_24">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>; -+ <span class="symbol"><A NAME="ref_91_24" HREF="terminal_interface-curses__ads.htm#ref_1612_24">Name</A></span> : <b>out</b> String) - <b>is</b> - <b>begin</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_55_12">ASF</A>.Move (<A HREF="terminal_interface-curses__ads.htm#ref_1618_13">Key_Name</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1612_24">Key</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1613_24">Name</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1612_14">Key_Name</A>; -+ <A HREF="terminal_interface-curses__adb.htm#ref_55_12">ASF</A>.Move (<A HREF="terminal_interface-curses__ads.htm#ref_1617_13">Key_Name</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1611_24">Key</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1612_24">Name</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1611_14">Key_Name</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_98_14" HREF="terminal_interface-curses__ads.htm#ref_488_14">Init_Screen</A></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_98_14" HREF="terminal_interface-curses__ads.htm#ref_487_14">Init_Screen</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_100_16">Initscr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_100_16">Initscr</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Initscr, "initscr"); - -- <FONT COLOR=red><A NAME="ref_103_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_103_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>begin</b> - <A HREF="terminal_interface-curses__adb.htm#ref_103_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_100_16">Initscr</A>; - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_103_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_488_14">Init_Screen</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_14">Init_Screen</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_111_14" HREF="terminal_interface-curses__ads.htm#ref_497_14">End_Windows</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_111_14" HREF="terminal_interface-curses__ads.htm#ref_496_14">End_Windows</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_113_16">Endwin</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_113_16">Endwin</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Endwin, "endwin"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_113_16">Endwin</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_497_14">End_Windows</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_496_14">End_Windows</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_121_13" HREF="terminal_interface-curses__ads.htm#ref_504_13">Is_End_Window</A></FONT> <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_121_13" HREF="terminal_interface-curses__ads.htm#ref_503_13">Is_End_Window</A></span> <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_123_16">Isendwin</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_123_16">Isendwin</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, Isendwin, "isendwin"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_123_16">Isendwin</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_123_16">Isendwin</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_504_13">Is_End_Window</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_133_14" HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_133_27" HREF="terminal_interface-curses__ads.htm#ref_513_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_134_27" HREF="terminal_interface-curses__ads.htm#ref_514_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_135_27" HREF="terminal_interface-curses__ads.htm#ref_515_27">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_137_16">Wmove</A></FONT> (<FONT COLOR=red><A NAME="ref_137_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_138_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_139_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_503_13">Is_End_Window</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_133_14" HREF="terminal_interface-curses__ads.htm#ref_512_14">Move_Cursor</A></span> (<span class="symbol"><A NAME="ref_133_27" HREF="terminal_interface-curses__ads.htm#ref_512_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_134_27" HREF="terminal_interface-curses__ads.htm#ref_513_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_135_27" HREF="terminal_interface-curses__ads.htm#ref_514_27">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_137_16">Wmove</A></span> (<span class="symbol"><A NAME="ref_137_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_138_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_139_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> - ) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wmove, "wmove"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_137_16">Wmove</A> (<A HREF="terminal_interface-curses__ads.htm#ref_513_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_514_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_515_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_137_16">Wmove</A> (<A HREF="terminal_interface-curses__ads.htm#ref_512_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_513_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_514_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_148_14" HREF="terminal_interface-curses__ads.htm#ref_525_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_148_19" HREF="terminal_interface-curses__ads.htm#ref_525_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_149_19" HREF="terminal_interface-curses__ads.htm#ref_526_19">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_512_14">Move_Cursor</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_148_14" HREF="terminal_interface-curses__ads.htm#ref_524_14">Add</A></span> (<span class="symbol"><A NAME="ref_148_19" HREF="terminal_interface-curses__ads.htm#ref_524_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_149_19" HREF="terminal_interface-curses__ads.htm#ref_525_19">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_151_16">Waddch</A></FONT> (<FONT COLOR=red><A NAME="ref_151_24" HREF="terminal_interface-curses__adb.htm#ref_151_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_152_24" HREF="terminal_interface-curses__adb.htm#ref_151_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_151_16">Waddch</A></span> (<span class="symbol"><A NAME="ref_151_24" HREF="terminal_interface-curses__adb.htm#ref_151_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_152_24" HREF="terminal_interface-curses__adb.htm#ref_151_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Waddch, "waddch"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_151_16">Waddch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_525_19">Win</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_526_19">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_151_16">Waddch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_524_19">Win</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_525_19">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_525_14">Add</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_524_14">Add</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_160_14" HREF="terminal_interface-curses__ads.htm#ref_530_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_160_19" HREF="terminal_interface-curses__ads.htm#ref_530_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_161_19" HREF="terminal_interface-curses__ads.htm#ref_531_19">Ch</A></FONT> : Character) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_160_14" HREF="terminal_interface-curses__ads.htm#ref_529_14">Add</A></span> (<span class="symbol"><A NAME="ref_160_19" HREF="terminal_interface-curses__ads.htm#ref_529_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_161_19" HREF="terminal_interface-curses__ads.htm#ref_530_19">Ch</A></span> : Character) - <b>is</b> - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_525_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_530_19">Win</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_531_19">Ch</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>)); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_530_14">Add</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_170_14" HREF="terminal_interface-curses__ads.htm#ref_536_14">Add</A></FONT> -- (<FONT COLOR=red><A NAME="ref_171_7" HREF="terminal_interface-curses__ads.htm#ref_537_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_172_7" HREF="terminal_interface-curses__ads.htm#ref_538_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_173_7" HREF="terminal_interface-curses__ads.htm#ref_539_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_174_7" HREF="terminal_interface-curses__ads.htm#ref_540_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_176_16">mvwaddch</A></FONT> (<FONT COLOR=red><A NAME="ref_176_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_177_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_178_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_179_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <A HREF="terminal_interface-curses__ads.htm#ref_524_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_529_19">Win</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_530_19">Ch</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_529_14">Add</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_170_14" HREF="terminal_interface-curses__ads.htm#ref_535_14">Add</A></span> -+ (<span class="symbol"><A NAME="ref_171_7" HREF="terminal_interface-curses__ads.htm#ref_536_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_172_7" HREF="terminal_interface-curses__ads.htm#ref_537_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_173_7" HREF="terminal_interface-curses__ads.htm#ref_538_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_174_7" HREF="terminal_interface-curses__ads.htm#ref_539_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_176_16">mvwaddch</A></span> (<span class="symbol"><A NAME="ref_176_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_177_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">Y</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_178_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">X</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_179_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, mvwaddch, "mvwaddch"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_176_16">mvwaddch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_537_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_538_7">Line</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_539_7">Column</A>), -- AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_540_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_536_14">Add</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_189_14" HREF="terminal_interface-curses__ads.htm#ref_544_14">Add</A></FONT> -- (<FONT COLOR=red><A NAME="ref_190_7" HREF="terminal_interface-curses__ads.htm#ref_545_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_191_7" HREF="terminal_interface-curses__ads.htm#ref_546_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_192_7" HREF="terminal_interface-curses__ads.htm#ref_547_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_193_7" HREF="terminal_interface-curses__ads.htm#ref_548_7">Ch</A></FONT> : Character) -- <b>is</b> -- <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_536_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_545_7">Win</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_546_7">Line</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_547_7">Column</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_548_7">Ch</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>)); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_544_14">Add</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_204_14" HREF="terminal_interface-curses__ads.htm#ref_553_14">Add_With_Immediate_Echo</A></FONT> -- (<FONT COLOR=red><A NAME="ref_205_7" HREF="terminal_interface-curses__ads.htm#ref_554_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_206_7" HREF="terminal_interface-curses__ads.htm#ref_555_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_176_16">mvwaddch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_536_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_537_7">Line</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_538_7">Column</A>), -+ AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_539_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_535_14">Add</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_189_14" HREF="terminal_interface-curses__ads.htm#ref_543_14">Add</A></span> -+ (<span class="symbol"><A NAME="ref_190_7" HREF="terminal_interface-curses__ads.htm#ref_544_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_191_7" HREF="terminal_interface-curses__ads.htm#ref_545_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_192_7" HREF="terminal_interface-curses__ads.htm#ref_546_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_193_7" HREF="terminal_interface-curses__ads.htm#ref_547_7">Ch</A></span> : Character) -+ <b>is</b> -+ <b>begin</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_535_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_544_7">Win</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_545_7">Line</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_546_7">Column</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_547_7">Ch</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_543_14">Add</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_204_14" HREF="terminal_interface-curses__ads.htm#ref_552_14">Add_With_Immediate_Echo</A></span> -+ (<span class="symbol"><A NAME="ref_205_7" HREF="terminal_interface-curses__ads.htm#ref_553_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_206_7" HREF="terminal_interface-curses__ads.htm#ref_554_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_208_16">Wechochar</A></FONT> (<FONT COLOR=red><A NAME="ref_208_27" HREF="terminal_interface-curses__adb.htm#ref_208_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_209_27" HREF="terminal_interface-curses__adb.htm#ref_208_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_208_16">Wechochar</A></span> (<span class="symbol"><A NAME="ref_208_27" HREF="terminal_interface-curses__adb.htm#ref_208_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_209_27" HREF="terminal_interface-curses__adb.htm#ref_208_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wechochar, "wechochar"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_208_16">Wechochar</A> (<A HREF="terminal_interface-curses__ads.htm#ref_554_7">Win</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_555_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_208_16">Wechochar</A> (<A HREF="terminal_interface-curses__ads.htm#ref_553_7">Win</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_554_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_553_14">Add_With_Immediate_Echo</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_552_14">Add_With_Immediate_Echo</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_217_14" HREF="terminal_interface-curses__ads.htm#ref_559_14">Add_With_Immediate_Echo</A></FONT> -- (<FONT COLOR=red><A NAME="ref_218_7" HREF="terminal_interface-curses__ads.htm#ref_560_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_219_7" HREF="terminal_interface-curses__ads.htm#ref_561_7">Ch</A></FONT> : Character) -- <b>is</b> -- <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_553_14">Add_With_Immediate_Echo</A> -- (<A HREF="terminal_interface-curses__ads.htm#ref_560_7">Win</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_561_7">Ch</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>)); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_559_14">Add_With_Immediate_Echo</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_229_13" HREF="terminal_interface-curses__ads.htm#ref_571_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_229_21" HREF="terminal_interface-curses__ads.htm#ref_572_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_230_21" HREF="terminal_interface-curses__ads.htm#ref_573_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_231_21" HREF="terminal_interface-curses__ads.htm#ref_574_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_232_21" HREF="terminal_interface-curses__ads.htm#ref_575_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_234_16">Newwin</A></FONT> (<FONT COLOR=red><A NAME="ref_234_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_235_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_236_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_237_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_217_14" HREF="terminal_interface-curses__ads.htm#ref_558_14">Add_With_Immediate_Echo</A></span> -+ (<span class="symbol"><A NAME="ref_218_7" HREF="terminal_interface-curses__ads.htm#ref_559_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_219_7" HREF="terminal_interface-curses__ads.htm#ref_560_7">Ch</A></span> : Character) -+ <b>is</b> -+ <b>begin</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_552_14">Add_With_Immediate_Echo</A> -+ (<A HREF="terminal_interface-curses__ads.htm#ref_559_7">Win</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_560_7">Ch</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_558_14">Add_With_Immediate_Echo</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_229_13" HREF="terminal_interface-curses__ads.htm#ref_570_13">Create</A></span> (<span class="symbol"><A NAME="ref_229_21" HREF="terminal_interface-curses__ads.htm#ref_571_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_230_21" HREF="terminal_interface-curses__ads.htm#ref_572_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_231_21" HREF="terminal_interface-curses__ads.htm#ref_573_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_232_21" HREF="terminal_interface-curses__ads.htm#ref_574_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_234_16">Newwin</A></span> (<span class="symbol"><A NAME="ref_234_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_235_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_236_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">First_Line_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_237_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">First_Column_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Newwin, "newwin"); - -- <FONT COLOR=red><A NAME="ref_240_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_240_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_240_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_234_16">Newwin</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_572_7">Number_Of_Lines</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_573_7">Number_Of_Columns</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_574_7">First_Line_Position</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_575_7">First_Column_Position</A>)); -+ <A HREF="terminal_interface-curses__adb.htm#ref_240_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_234_16">Newwin</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_571_7">Number_Of_Lines</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_572_7">Number_Of_Columns</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_573_7">First_Line_Position</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_574_7">First_Column_Position</A>)); - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_240_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_240_7">W</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_571_13">Create</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_570_13">Create</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_252_14" HREF="terminal_interface-curses__ads.htm#ref_590_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_252_22" HREF="terminal_interface-curses__ads.htm#ref_590_22">Win</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_252_14" HREF="terminal_interface-curses__ads.htm#ref_589_14">Delete</A></span> (<span class="symbol"><A NAME="ref_252_22" HREF="terminal_interface-curses__ads.htm#ref_589_22">Win</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_254_16">Wdelwin</A></FONT> (<FONT COLOR=red><A NAME="ref_254_25" HREF="terminal_interface-curses__adb.htm#ref_254_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_254_16">Wdelwin</A></span> (<span class="symbol"><A NAME="ref_254_25" HREF="terminal_interface-curses__adb.htm#ref_254_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wdelwin, "delwin"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_254_16">Wdelwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_590_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_254_16">Wdelwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_589_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses__ads.htm#ref_590_22">Win</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_590_14">Delete</A>; -+ <A HREF="terminal_interface-curses__ads.htm#ref_589_22">Win</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_589_14">Delete</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_263_13" HREF="terminal_interface-curses__ads.htm#ref_596_13">Sub_Window</A></FONT> -- (<FONT COLOR=red><A NAME="ref_264_7" HREF="terminal_interface-curses__ads.htm#ref_597_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_265_7" HREF="terminal_interface-curses__ads.htm#ref_598_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_266_7" HREF="terminal_interface-curses__ads.htm#ref_599_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_267_7" HREF="terminal_interface-curses__ads.htm#ref_600_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_268_7" HREF="terminal_interface-curses__ads.htm#ref_601_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_270_16">Subwin</A></FONT> -- (<FONT COLOR=red><A NAME="ref_271_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_272_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_273_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_274_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_275_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_263_13" HREF="terminal_interface-curses__ads.htm#ref_595_13">Sub_Window</A></span> -+ (<span class="symbol"><A NAME="ref_264_7" HREF="terminal_interface-curses__ads.htm#ref_596_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_265_7" HREF="terminal_interface-curses__ads.htm#ref_597_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_266_7" HREF="terminal_interface-curses__ads.htm#ref_598_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_267_7" HREF="terminal_interface-curses__ads.htm#ref_599_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_268_7" HREF="terminal_interface-curses__ads.htm#ref_600_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_270_16">Subwin</A></span> -+ (<span class="symbol"><A NAME="ref_271_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_272_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_273_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_274_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">First_Line_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_275_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">First_Column_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Subwin, "subwin"); - -- <FONT COLOR=red><A NAME="ref_278_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_278_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_278_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_270_16">Subwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_597_7">Win</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_598_7">Number_Of_Lines</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_599_7">Number_Of_Columns</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_600_7">First_Line_Position</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_601_7">First_Column_Position</A>)); -+ <A HREF="terminal_interface-curses__adb.htm#ref_278_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_270_16">Subwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_596_7">Win</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_597_7">Number_Of_Lines</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_598_7">Number_Of_Columns</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_599_7">First_Line_Position</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_600_7">First_Column_Position</A>)); - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_278_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_278_7">W</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_596_13">Sub_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_595_13">Sub_Window</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_291_13" HREF="terminal_interface-curses__ads.htm#ref_606_13">Derived_Window</A></FONT> -- (<FONT COLOR=red><A NAME="ref_292_7" HREF="terminal_interface-curses__ads.htm#ref_607_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_293_7" HREF="terminal_interface-curses__ads.htm#ref_608_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_294_7" HREF="terminal_interface-curses__ads.htm#ref_609_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_295_7" HREF="terminal_interface-curses__ads.htm#ref_610_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_296_7" HREF="terminal_interface-curses__ads.htm#ref_611_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_298_16">Derwin</A></FONT> -- (<FONT COLOR=red><A NAME="ref_299_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_300_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_301_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_302_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_303_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_291_13" HREF="terminal_interface-curses__ads.htm#ref_605_13">Derived_Window</A></span> -+ (<span class="symbol"><A NAME="ref_292_7" HREF="terminal_interface-curses__ads.htm#ref_606_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_293_7" HREF="terminal_interface-curses__ads.htm#ref_607_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_294_7" HREF="terminal_interface-curses__ads.htm#ref_608_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_295_7" HREF="terminal_interface-curses__ads.htm#ref_609_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_296_7" HREF="terminal_interface-curses__ads.htm#ref_610_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_298_16">Derwin</A></span> -+ (<span class="symbol"><A NAME="ref_299_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_300_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_301_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_302_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">First_Line_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_303_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">First_Column_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Derwin, "derwin"); - -- <FONT COLOR=red><A NAME="ref_306_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_306_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_306_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_298_16">Derwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_607_7">Win</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_608_7">Number_Of_Lines</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_609_7">Number_Of_Columns</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_610_7">First_Line_Position</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_611_7">First_Column_Position</A>)); -+ <A HREF="terminal_interface-curses__adb.htm#ref_306_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_298_16">Derwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_606_7">Win</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_607_7">Number_Of_Lines</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_608_7">Number_Of_Columns</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_609_7">First_Line_Position</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_610_7">First_Column_Position</A>)); - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_306_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_306_7">W</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_606_13">Derived_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_605_13">Derived_Window</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_319_13" HREF="terminal_interface-curses__ads.htm#ref_616_13">Duplicate</A></FONT> (<FONT COLOR=red><A NAME="ref_319_24" HREF="terminal_interface-curses__ads.htm#ref_616_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_319_13" HREF="terminal_interface-curses__ads.htm#ref_615_13">Duplicate</A></span> (<span class="symbol"><A NAME="ref_319_24" HREF="terminal_interface-curses__ads.htm#ref_615_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_321_16">Dupwin</A></FONT> (<FONT COLOR=red><A NAME="ref_321_24" HREF="terminal_interface-curses__adb.htm#ref_321_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_321_16">Dupwin</A></span> (<span class="symbol"><A NAME="ref_321_24" HREF="terminal_interface-curses__adb.htm#ref_321_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Dupwin, "dupwin"); - -- <FONT COLOR=red><A NAME="ref_324_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__adb.htm#ref_321_16">Dupwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_616_24">Win</A>); -+ <span class="symbol"><A NAME="ref_324_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__adb.htm#ref_321_16">Dupwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_615_24">Win</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_324_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_324_7">W</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_616_13">Duplicate</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_615_13">Duplicate</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_332_14" HREF="terminal_interface-curses__ads.htm#ref_621_14">Move_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_332_27" HREF="terminal_interface-curses__ads.htm#ref_621_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_333_27" HREF="terminal_interface-curses__ads.htm#ref_622_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_334_27" HREF="terminal_interface-curses__ads.htm#ref_623_27">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_336_16">Mvwin</A></FONT> (<FONT COLOR=red><A NAME="ref_336_23" HREF="terminal_interface-curses__adb.htm#ref_336_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_337_23" HREF="terminal_interface-curses__adb.htm#ref_336_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_338_23" HREF="terminal_interface-curses__adb.htm#ref_336_16">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_332_14" HREF="terminal_interface-curses__ads.htm#ref_620_14">Move_Window</A></span> (<span class="symbol"><A NAME="ref_332_27" HREF="terminal_interface-curses__ads.htm#ref_620_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_333_27" HREF="terminal_interface-curses__ads.htm#ref_621_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_334_27" HREF="terminal_interface-curses__ads.htm#ref_622_27">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_336_16">Mvwin</A></span> (<span class="symbol"><A NAME="ref_336_23" HREF="terminal_interface-curses__adb.htm#ref_336_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_337_23" HREF="terminal_interface-curses__adb.htm#ref_336_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_338_23" HREF="terminal_interface-curses__adb.htm#ref_336_16">Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Mvwin, "mvwin"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_336_16">Mvwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_621_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_622_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_623_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_336_16">Mvwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_620_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_621_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_622_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_621_14">Move_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_620_14">Move_Window</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_346_14" HREF="terminal_interface-curses__ads.htm#ref_628_14">Move_Derived_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_346_35" HREF="terminal_interface-curses__ads.htm#ref_628_35">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_347_35" HREF="terminal_interface-curses__ads.htm#ref_629_35">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_348_35" HREF="terminal_interface-curses__ads.htm#ref_630_35">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_350_16">Mvderwin</A></FONT> (<FONT COLOR=red><A NAME="ref_350_26" HREF="terminal_interface-curses__adb.htm#ref_350_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_351_26" HREF="terminal_interface-curses__adb.htm#ref_350_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_352_26" HREF="terminal_interface-curses__adb.htm#ref_350_16">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_346_14" HREF="terminal_interface-curses__ads.htm#ref_627_14">Move_Derived_Window</A></span> (<span class="symbol"><A NAME="ref_346_35" HREF="terminal_interface-curses__ads.htm#ref_627_35">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_347_35" HREF="terminal_interface-curses__ads.htm#ref_628_35">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_348_35" HREF="terminal_interface-curses__ads.htm#ref_629_35">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_350_16">Mvderwin</A></span> (<span class="symbol"><A NAME="ref_350_26" HREF="terminal_interface-curses__adb.htm#ref_350_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_351_26" HREF="terminal_interface-curses__adb.htm#ref_350_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_352_26" HREF="terminal_interface-curses__adb.htm#ref_350_16">Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Mvderwin, "mvderwin"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_350_16">Mvderwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_628_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_629_35">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_630_35">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_350_16">Mvderwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_627_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_628_35">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_629_35">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_628_14">Move_Derived_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_627_14">Move_Derived_Window</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_360_14" HREF="terminal_interface-curses__ads.htm#ref_645_14">Set_Synch_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_360_30" HREF="terminal_interface-curses__ads.htm#ref_645_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_361_30" HREF="terminal_interface-curses__ads.htm#ref_646_30">Mode</A></FONT> : Boolean := False) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_360_14" HREF="terminal_interface-curses__ads.htm#ref_644_14">Set_Synch_Mode</A></span> (<span class="symbol"><A NAME="ref_360_30" HREF="terminal_interface-curses__ads.htm#ref_644_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_361_30" HREF="terminal_interface-curses__ads.htm#ref_645_30">Mode</A></span> : Boolean := False) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_363_16">Syncok</A></FONT> (<FONT COLOR=red><A NAME="ref_363_24" HREF="terminal_interface-curses__adb.htm#ref_363_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_364_24" HREF="terminal_interface-curses__adb.htm#ref_363_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_363_16">Syncok</A></span> (<span class="symbol"><A NAME="ref_363_24" HREF="terminal_interface-curses__adb.htm#ref_363_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_364_24" HREF="terminal_interface-curses__adb.htm#ref_363_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Syncok, "syncok"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_363_16">Syncok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_645_30">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_646_30">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_363_16">Syncok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_644_30">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_645_30">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_645_14">Set_Synch_Mode</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_372_14" HREF="terminal_interface-curses__ads.htm#ref_655_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_372_19" HREF="terminal_interface-curses__ads.htm#ref_655_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_373_19" HREF="terminal_interface-curses__ads.htm#ref_656_19">Str</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_374_19" HREF="terminal_interface-curses__ads.htm#ref_657_19">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_376_16">Waddnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_376_26" HREF="terminal_interface-curses__adb.htm#ref_376_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_377_26" HREF="terminal_interface-curses__adb.htm#ref_376_16">Str</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_378_26" HREF="terminal_interface-curses__adb.htm#ref_376_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_644_14">Set_Synch_Mode</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_372_14" HREF="terminal_interface-curses__ads.htm#ref_654_14">Add</A></span> (<span class="symbol"><A NAME="ref_372_19" HREF="terminal_interface-curses__ads.htm#ref_654_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_373_19" HREF="terminal_interface-curses__ads.htm#ref_655_19">Str</A></span> : String; -+ <span class="symbol"><A NAME="ref_374_19" HREF="terminal_interface-curses__ads.htm#ref_656_19">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_376_16">Waddnstr</A></span> (<span class="symbol"><A NAME="ref_376_26" HREF="terminal_interface-curses__adb.htm#ref_376_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_377_26" HREF="terminal_interface-curses__adb.htm#ref_376_16">Str</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_378_26" HREF="terminal_interface-curses__adb.htm#ref_376_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Waddnstr, "waddnstr"); - -- <FONT COLOR=red><A NAME="ref_381_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_656_19">Str</A>'Length); -- <FONT COLOR=red><A NAME="ref_382_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_381_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_655_19">Str</A>'Length); -+ <span class="symbol"><A NAME="ref_382_7">Length</A></span> : size_t; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_656_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_381_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_382_7">Length</A>); -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_376_16">Waddnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_655_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_381_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_657_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_655_14">Add</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_390_14" HREF="terminal_interface-curses__ads.htm#ref_664_14">Add</A></FONT> -- (<FONT COLOR=red><A NAME="ref_391_7" HREF="terminal_interface-curses__ads.htm#ref_664_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_392_7" HREF="terminal_interface-curses__ads.htm#ref_665_19">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_393_7" HREF="terminal_interface-curses__ads.htm#ref_666_19">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_394_7" HREF="terminal_interface-curses__ads.htm#ref_667_19">Str</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_395_7" HREF="terminal_interface-curses__ads.htm#ref_668_19">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_664_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_665_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_666_19">Column</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_655_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_664_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_667_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_668_19">Len</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_664_14">Add</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_402_14" HREF="terminal_interface-curses__ads.htm#ref_679_14">Add</A></FONT> -- (<FONT COLOR=red><A NAME="ref_403_7" HREF="terminal_interface-curses__ads.htm#ref_679_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_404_7" HREF="terminal_interface-curses__ads.htm#ref_680_19">Str</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Attributed_String</A>; -- <FONT COLOR=red><A NAME="ref_405_7" HREF="terminal_interface-curses__ads.htm#ref_681_19">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_407_16">Waddchnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_407_28" HREF="terminal_interface-curses__adb.htm#ref_407_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_408_28" HREF="terminal_interface-curses__adb.htm#ref_407_16">Str</A></FONT> : chtype_array; -- <FONT COLOR=red><A NAME="ref_409_28" HREF="terminal_interface-curses__adb.htm#ref_407_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_655_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_381_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_382_7">Length</A>); -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_376_16">Waddnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_654_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_381_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_656_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_654_14">Add</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_390_14" HREF="terminal_interface-curses__ads.htm#ref_663_14">Add</A></span> -+ (<span class="symbol"><A NAME="ref_391_7" HREF="terminal_interface-curses__ads.htm#ref_663_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_392_7" HREF="terminal_interface-curses__ads.htm#ref_664_19">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_393_7" HREF="terminal_interface-curses__ads.htm#ref_665_19">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_394_7" HREF="terminal_interface-curses__ads.htm#ref_666_19">Str</A></span> : String; -+ <span class="symbol"><A NAME="ref_395_7" HREF="terminal_interface-curses__ads.htm#ref_667_19">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>begin</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_512_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_663_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_664_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_665_19">Column</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_654_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_663_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_666_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_667_19">Len</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_663_14">Add</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_402_14" HREF="terminal_interface-curses__ads.htm#ref_678_14">Add</A></span> -+ (<span class="symbol"><A NAME="ref_403_7" HREF="terminal_interface-curses__ads.htm#ref_678_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_404_7" HREF="terminal_interface-curses__ads.htm#ref_679_19">Str</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Attributed_String</A>; -+ <span class="symbol"><A NAME="ref_405_7" HREF="terminal_interface-curses__ads.htm#ref_680_19">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_407_16">Waddchnstr</A></span> (<span class="symbol"><A NAME="ref_407_28" HREF="terminal_interface-curses__adb.htm#ref_407_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_408_28" HREF="terminal_interface-curses__adb.htm#ref_407_16">Str</A></span> : chtype_array; -+ <span class="symbol"><A NAME="ref_409_28" HREF="terminal_interface-curses__adb.htm#ref_407_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Waddchnstr, "waddchnstr"); - -- <FONT COLOR=red><A NAME="ref_412_7">Txt</A></FONT> : chtype_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_680_19">Str</A>'Length); -+ <span class="symbol"><A NAME="ref_412_7">Txt</A></span> : chtype_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_679_19">Str</A>'Length); - <b>begin</b> -- <b>for</b> <FONT COLOR=red><A NAME="ref_414_11">Length</A></FONT> <b>in</b> 1 .. size_t (<A HREF="terminal_interface-curses__ads.htm#ref_680_19">Str</A>'Length) <b>loop</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_412_7">Txt</A> (<A HREF="terminal_interface-curses__adb.htm#ref_414_11">Length</A> - 1) := <A HREF="terminal_interface-curses__ads.htm#ref_680_19">Str</A> (Natural (<A HREF="terminal_interface-curses__adb.htm#ref_414_11">Length</A>)); -+ <b>for</b> <span class="symbol"><A NAME="ref_414_11">Length</A></span> <b>in</b> 1 .. size_t (<A HREF="terminal_interface-curses__ads.htm#ref_679_19">Str</A>'Length) <b>loop</b> -+ <A HREF="terminal_interface-curses__adb.htm#ref_412_7">Txt</A> (<A HREF="terminal_interface-curses__adb.htm#ref_414_11">Length</A> - 1) := <A HREF="terminal_interface-curses__ads.htm#ref_679_19">Str</A> (Natural (<A HREF="terminal_interface-curses__adb.htm#ref_414_11">Length</A>)); - <b>end</b> <b>loop</b>; -- <A HREF="terminal_interface-curses__adb.htm#ref_412_7">Txt</A> (<A HREF="terminal_interface-curses__ads.htm#ref_680_19">Str</A>'Length) := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_407_16">Waddchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_679_19">Win</A>, -+ <A HREF="terminal_interface-curses__adb.htm#ref_412_7">Txt</A> (<A HREF="terminal_interface-curses__ads.htm#ref_679_19">Str</A>'Length) := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_407_16">Waddchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_678_19">Win</A>, - <A HREF="terminal_interface-curses__adb.htm#ref_412_7">Txt</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_681_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_680_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_679_14">Add</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_678_14">Add</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_425_14" HREF="terminal_interface-curses__ads.htm#ref_688_14">Add</A></FONT> -- (<FONT COLOR=red><A NAME="ref_426_7" HREF="terminal_interface-curses__ads.htm#ref_688_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_427_7" HREF="terminal_interface-curses__ads.htm#ref_689_19">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_428_7" HREF="terminal_interface-curses__ads.htm#ref_690_19">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_429_7" HREF="terminal_interface-curses__ads.htm#ref_691_19">Str</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Attributed_String</A>; -- <FONT COLOR=red><A NAME="ref_430_7" HREF="terminal_interface-curses__ads.htm#ref_692_19">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_688_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_689_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_690_19">Column</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_679_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_688_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_691_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_692_19">Len</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_688_14">Add</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_437_14" HREF="terminal_interface-curses__ads.htm#ref_706_14">Border</A></FONT> -- (<FONT COLOR=red><A NAME="ref_438_7" HREF="terminal_interface-curses__ads.htm#ref_707_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_439_7" HREF="terminal_interface-curses__ads.htm#ref_708_7">Left_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_440_7" HREF="terminal_interface-curses__ads.htm#ref_709_7">Right_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_441_7" HREF="terminal_interface-curses__ads.htm#ref_710_7">Top_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_442_7" HREF="terminal_interface-curses__ads.htm#ref_711_7">Bottom_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_443_7" HREF="terminal_interface-curses__ads.htm#ref_712_7">Upper_Left_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_444_7" HREF="terminal_interface-curses__ads.htm#ref_713_7">Upper_Right_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_445_7" HREF="terminal_interface-curses__ads.htm#ref_714_7">Lower_Left_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_446_7" HREF="terminal_interface-curses__ads.htm#ref_715_7">Lower_Right_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_448_16">Wborder</A></FONT> (<FONT COLOR=red><A NAME="ref_448_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_449_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">LS</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -- <FONT COLOR=red><A NAME="ref_450_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">RS</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -- <FONT COLOR=red><A NAME="ref_451_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">TS</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -- <FONT COLOR=red><A NAME="ref_452_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">BS</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -- <FONT COLOR=red><A NAME="ref_453_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">ULC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -- <FONT COLOR=red><A NAME="ref_454_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">URC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -- <FONT COLOR=red><A NAME="ref_455_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">LLC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -- <FONT COLOR=red><A NAME="ref_456_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">LRC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_425_14" HREF="terminal_interface-curses__ads.htm#ref_687_14">Add</A></span> -+ (<span class="symbol"><A NAME="ref_426_7" HREF="terminal_interface-curses__ads.htm#ref_687_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_427_7" HREF="terminal_interface-curses__ads.htm#ref_688_19">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_428_7" HREF="terminal_interface-curses__ads.htm#ref_689_19">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_429_7" HREF="terminal_interface-curses__ads.htm#ref_690_19">Str</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Attributed_String</A>; -+ <span class="symbol"><A NAME="ref_430_7" HREF="terminal_interface-curses__ads.htm#ref_691_19">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>begin</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_512_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_687_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_688_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_689_19">Column</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_678_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_687_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_690_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_691_19">Len</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_687_14">Add</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_437_14" HREF="terminal_interface-curses__ads.htm#ref_705_14">Border</A></span> -+ (<span class="symbol"><A NAME="ref_438_7" HREF="terminal_interface-curses__ads.htm#ref_706_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_439_7" HREF="terminal_interface-curses__ads.htm#ref_707_7">Left_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_440_7" HREF="terminal_interface-curses__ads.htm#ref_708_7">Right_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_441_7" HREF="terminal_interface-curses__ads.htm#ref_709_7">Top_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_442_7" HREF="terminal_interface-curses__ads.htm#ref_710_7">Bottom_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_443_7" HREF="terminal_interface-curses__ads.htm#ref_711_7">Upper_Left_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_444_7" HREF="terminal_interface-curses__ads.htm#ref_712_7">Upper_Right_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_445_7" HREF="terminal_interface-curses__ads.htm#ref_713_7">Lower_Left_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_446_7" HREF="terminal_interface-curses__ads.htm#ref_714_7">Lower_Right_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_448_16">Wborder</A></span> (<span class="symbol"><A NAME="ref_448_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_449_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">LS</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <span class="symbol"><A NAME="ref_450_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">RS</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <span class="symbol"><A NAME="ref_451_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">TS</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <span class="symbol"><A NAME="ref_452_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">BS</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <span class="symbol"><A NAME="ref_453_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">ULC</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <span class="symbol"><A NAME="ref_454_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">URC</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <span class="symbol"><A NAME="ref_455_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">LLC</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <span class="symbol"><A NAME="ref_456_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">LRC</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wborder, "wborder"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_448_16">Wborder</A> (<A HREF="terminal_interface-curses__ads.htm#ref_707_7">Win</A>, -- AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_708_7">Left_Side_Symbol</A>), -- AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_709_7">Right_Side_Symbol</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_710_7">Top_Side_Symbol</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_711_7">Bottom_Side_Symbol</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_712_7">Upper_Left_Corner_Symbol</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_713_7">Upper_Right_Corner_Symbol</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_714_7">Lower_Left_Corner_Symbol</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_715_7">Lower_Right_Corner_Symbol</A>) -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_448_16">Wborder</A> (<A HREF="terminal_interface-curses__ads.htm#ref_706_7">Win</A>, -+ AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_707_7">Left_Side_Symbol</A>), -+ AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_708_7">Right_Side_Symbol</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_709_7">Top_Side_Symbol</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_710_7">Bottom_Side_Symbol</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_711_7">Upper_Left_Corner_Symbol</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_712_7">Upper_Right_Corner_Symbol</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_713_7">Lower_Left_Corner_Symbol</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_714_7">Lower_Right_Corner_Symbol</A>) - ) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> - <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_706_14">Border</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_705_14">Border</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_474_14" HREF="terminal_interface-curses__ads.htm#ref_722_14">Box</A></FONT> -- (<FONT COLOR=red><A NAME="ref_475_7" HREF="terminal_interface-curses__ads.htm#ref_723_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_476_7" HREF="terminal_interface-curses__ads.htm#ref_724_7">Vertical_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_477_7" HREF="terminal_interface-curses__ads.htm#ref_725_7">Horizontal_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_474_14" HREF="terminal_interface-curses__ads.htm#ref_721_14">Box</A></span> -+ (<span class="symbol"><A NAME="ref_475_7" HREF="terminal_interface-curses__ads.htm#ref_722_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_476_7" HREF="terminal_interface-curses__ads.htm#ref_723_7">Vertical_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_477_7" HREF="terminal_interface-curses__ads.htm#ref_724_7">Horizontal_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>) - <b>is</b> - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_706_14">Border</A> (<A HREF="terminal_interface-curses__ads.htm#ref_723_7">Win</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_724_7">Vertical_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#ref_724_7">Vertical_Symbol</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_725_7">Horizontal_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#ref_725_7">Horizontal_Symbol</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_722_14">Box</A>; -+ <A HREF="terminal_interface-curses__ads.htm#ref_705_14">Border</A> (<A HREF="terminal_interface-curses__ads.htm#ref_722_7">Win</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_723_7">Vertical_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#ref_723_7">Vertical_Symbol</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_724_7">Horizontal_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#ref_724_7">Horizontal_Symbol</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_721_14">Box</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_485_14" HREF="terminal_interface-curses__ads.htm#ref_730_14">Horizontal_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_486_7" HREF="terminal_interface-curses__ads.htm#ref_731_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_487_7" HREF="terminal_interface-curses__ads.htm#ref_732_7">Line_Size</A></FONT> : Natural; -- <FONT COLOR=red><A NAME="ref_488_7" HREF="terminal_interface-curses__ads.htm#ref_733_7">Line_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_485_14" HREF="terminal_interface-curses__ads.htm#ref_729_14">Horizontal_Line</A></span> -+ (<span class="symbol"><A NAME="ref_486_7" HREF="terminal_interface-curses__ads.htm#ref_730_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_487_7" HREF="terminal_interface-curses__ads.htm#ref_731_7">Line_Size</A></span> : Natural; -+ <span class="symbol"><A NAME="ref_488_7" HREF="terminal_interface-curses__ads.htm#ref_732_7">Line_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_490_16">Whline</A></FONT> (<FONT COLOR=red><A NAME="ref_490_24" HREF="terminal_interface-curses__adb.htm#ref_490_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_491_24" HREF="terminal_interface-curses__adb.htm#ref_490_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -- <FONT COLOR=red><A NAME="ref_492_24" HREF="terminal_interface-curses__adb.htm#ref_490_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_490_16">Whline</A></span> (<span class="symbol"><A NAME="ref_490_24" HREF="terminal_interface-curses__adb.htm#ref_490_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_491_24" HREF="terminal_interface-curses__adb.htm#ref_490_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <span class="symbol"><A NAME="ref_492_24" HREF="terminal_interface-curses__adb.htm#ref_490_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Whline, "whline"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_490_16">Whline</A> (<A HREF="terminal_interface-curses__ads.htm#ref_731_7">Win</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_733_7">Line_Symbol</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_732_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_730_14">Horizontal_Line</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_502_14" HREF="terminal_interface-curses__ads.htm#ref_739_14">Vertical_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_503_7" HREF="terminal_interface-curses__ads.htm#ref_740_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_504_7" HREF="terminal_interface-curses__ads.htm#ref_741_7">Line_Size</A></FONT> : Natural; -- <FONT COLOR=red><A NAME="ref_505_7" HREF="terminal_interface-curses__ads.htm#ref_742_7">Line_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_507_16">Wvline</A></FONT> (<FONT COLOR=red><A NAME="ref_507_24" HREF="terminal_interface-curses__adb.htm#ref_507_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_508_24" HREF="terminal_interface-curses__adb.htm#ref_507_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -- <FONT COLOR=red><A NAME="ref_509_24" HREF="terminal_interface-curses__adb.htm#ref_507_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_490_16">Whline</A> (<A HREF="terminal_interface-curses__ads.htm#ref_730_7">Win</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_732_7">Line_Symbol</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_731_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_729_14">Horizontal_Line</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_502_14" HREF="terminal_interface-curses__ads.htm#ref_738_14">Vertical_Line</A></span> -+ (<span class="symbol"><A NAME="ref_503_7" HREF="terminal_interface-curses__ads.htm#ref_739_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_504_7" HREF="terminal_interface-curses__ads.htm#ref_740_7">Line_Size</A></span> : Natural; -+ <span class="symbol"><A NAME="ref_505_7" HREF="terminal_interface-curses__ads.htm#ref_741_7">Line_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_507_16">Wvline</A></span> (<span class="symbol"><A NAME="ref_507_24" HREF="terminal_interface-curses__adb.htm#ref_507_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_508_24" HREF="terminal_interface-curses__adb.htm#ref_507_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <span class="symbol"><A NAME="ref_509_24" HREF="terminal_interface-curses__adb.htm#ref_507_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wvline, "wvline"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_507_16">Wvline</A> (<A HREF="terminal_interface-curses__ads.htm#ref_740_7">Win</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_742_7">Line_Symbol</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_741_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_507_16">Wvline</A> (<A HREF="terminal_interface-curses__ads.htm#ref_739_7">Win</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_741_7">Line_Symbol</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_740_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_739_14">Vertical_Line</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_738_14">Vertical_Line</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_520_13" HREF="terminal_interface-curses__ads.htm#ref_753_13">Get_Keystroke</A></FONT> (<FONT COLOR=red><A NAME="ref_520_28" HREF="terminal_interface-curses__ads.htm#ref_753_28">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_520_13" HREF="terminal_interface-curses__ads.htm#ref_752_13">Get_Keystroke</A></span> (<span class="symbol"><A NAME="ref_520_28" HREF="terminal_interface-curses__ads.htm#ref_752_28">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_523_16">Wgetch</A></FONT> (<FONT COLOR=red><A NAME="ref_523_24" HREF="terminal_interface-curses__adb.htm#ref_523_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_523_16">Wgetch</A></span> (<span class="symbol"><A NAME="ref_523_24" HREF="terminal_interface-curses__adb.htm#ref_523_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wgetch, "wgetch"); - -- <FONT COLOR=red><A NAME="ref_526_7">C</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_523_16">Wgetch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_753_28">Win</A>); -+ <span class="symbol"><A NAME="ref_526_7">C</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_523_16">Wgetch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_752_28">Win</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_526_7">C</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> - <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_88_4">Key_None</A>; - <b>else</b> - <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> (<A HREF="terminal_interface-curses__adb.htm#ref_526_7">C</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_753_13">Get_Keystroke</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_752_13">Get_Keystroke</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_535_14" HREF="terminal_interface-curses__ads.htm#ref_764_14">Undo_Keystroke</A></FONT> (<FONT COLOR=red><A NAME="ref_535_30" HREF="terminal_interface-curses__ads.htm#ref_764_30">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_535_14" HREF="terminal_interface-curses__ads.htm#ref_763_14">Undo_Keystroke</A></span> (<span class="symbol"><A NAME="ref_535_30" HREF="terminal_interface-curses__ads.htm#ref_763_30">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_537_16">Ungetch</A></FONT> (<FONT COLOR=red><A NAME="ref_537_25" HREF="terminal_interface-curses__adb.htm#ref_537_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_537_16">Ungetch</A></span> (<span class="symbol"><A NAME="ref_537_25" HREF="terminal_interface-curses__adb.htm#ref_537_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Ungetch, "ungetch"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_537_16">Ungetch</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_764_30">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_537_16">Ungetch</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_763_30">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_764_14">Undo_Keystroke</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_763_14">Undo_Keystroke</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_545_13" HREF="terminal_interface-curses__ads.htm#ref_769_13">Has_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_545_22" HREF="terminal_interface-curses__ads.htm#ref_769_22">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_545_13" HREF="terminal_interface-curses__ads.htm#ref_768_13">Has_Key</A></span> (<span class="symbol"><A NAME="ref_545_22" HREF="terminal_interface-curses__ads.htm#ref_768_22">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_547_16">Haskey</A></FONT> (<FONT COLOR=red><A NAME="ref_547_24" HREF="terminal_interface-curses__adb.htm#ref_547_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_547_16">Haskey</A></span> (<span class="symbol"><A NAME="ref_547_24" HREF="terminal_interface-curses__adb.htm#ref_547_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Haskey, "has_key"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_547_16">Haskey</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_769_22">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_547_16">Haskey</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_768_22">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_769_13">Has_Key</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_768_13">Has_Key</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_557_13" HREF="terminal_interface-curses__ads.htm#ref_776_13">Is_Function_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_557_30" HREF="terminal_interface-curses__ads.htm#ref_776_30">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_557_13" HREF="terminal_interface-curses__ads.htm#ref_775_13">Is_Function_Key</A></span> (<span class="symbol"><A NAME="ref_557_30" HREF="terminal_interface-curses__ads.htm#ref_775_30">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean - <b>is</b> -- <FONT COLOR=red><A NAME="ref_559_7">L</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>) + -- Natural (<A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A>'Last)); -+ <span class="symbol"><A NAME="ref_559_7">L</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>) + -+ Natural (<A HREF="terminal_interface-curses__ads.htm#ref_779_12">Function_Key_Number</A>'Last)); - <b>begin</b> -- <b>if</b> (<A HREF="terminal_interface-curses__ads.htm#ref_776_30">Key</A> &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>) <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses__ads.htm#ref_776_30">Key</A> &lt;= <A HREF="terminal_interface-curses__adb.htm#ref_559_7">L</A>) <b>then</b> -+ <b>if</b> (<A HREF="terminal_interface-curses__ads.htm#ref_775_30">Key</A> &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>) <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses__ads.htm#ref_775_30">Key</A> &lt;= <A HREF="terminal_interface-curses__adb.htm#ref_559_7">L</A>) <b>then</b> - <b>return</b> True; - <b>else</b> - <b>return</b> False; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_776_13">Is_Function_Key</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_775_13">Is_Function_Key</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_569_13" HREF="terminal_interface-curses__ads.htm#ref_783_13">Function_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_569_27" HREF="terminal_interface-curses__ads.htm#ref_783_27">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_569_13" HREF="terminal_interface-curses__ads.htm#ref_782_13">Function_Key</A></span> (<span class="symbol"><A NAME="ref_569_27" HREF="terminal_interface-curses__ads.htm#ref_782_27">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_779_12">Function_Key_Number</A> - <b>is</b> - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_776_13">Is_Function_Key</A> (<A HREF="terminal_interface-curses__ads.htm#ref_783_27">Key</A>) <b>then</b> -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A> (<A HREF="terminal_interface-curses__ads.htm#ref_783_27">Key</A> - <A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>); -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_775_13">Is_Function_Key</A> (<A HREF="terminal_interface-curses__ads.htm#ref_782_27">Key</A>) <b>then</b> -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_779_12">Function_Key_Number</A> (<A HREF="terminal_interface-curses__ads.htm#ref_782_27">Key</A> - <A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>); - <b>else</b> - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_783_13">Function_Key</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_782_13">Function_Key</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_580_13" HREF="terminal_interface-curses__ads.htm#ref_788_13">Function_Key_Code</A></FONT> (<FONT COLOR=red><A NAME="ref_580_32" HREF="terminal_interface-curses__ads.htm#ref_788_32">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_580_13" HREF="terminal_interface-curses__ads.htm#ref_787_13">Function_Key_Code</A></span> (<span class="symbol"><A NAME="ref_580_32" HREF="terminal_interface-curses__ads.htm#ref_787_32">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_779_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> - <b>is</b> - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>) + Natural (<A HREF="terminal_interface-curses__ads.htm#ref_788_32">Key</A>)); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_788_13">Function_Key_Code</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_586_14" HREF="terminal_interface-curses__ads.htm#ref_802_14">Standout</A></FONT> (<FONT COLOR=red><A NAME="ref_586_24" HREF="terminal_interface-curses__ads.htm#ref_802_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_587_24" HREF="terminal_interface-curses__ads.htm#ref_803_24">On</A></FONT> : Boolean := True) -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>) + Natural (<A HREF="terminal_interface-curses__ads.htm#ref_787_32">Key</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_787_13">Function_Key_Code</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_586_14" HREF="terminal_interface-curses__ads.htm#ref_801_14">Standout</A></span> (<span class="symbol"><A NAME="ref_586_24" HREF="terminal_interface-curses__ads.htm#ref_801_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_587_24" HREF="terminal_interface-curses__ads.htm#ref_802_24">On</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_589_16">wstandout</A></FONT> (<FONT COLOR=red><A NAME="ref_589_27" HREF="terminal_interface-curses__adb.htm#ref_589_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_589_16">wstandout</A></span> (<span class="symbol"><A NAME="ref_589_27" HREF="terminal_interface-curses__adb.htm#ref_589_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, wstandout, "wstandout"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_591_16">wstandend</A></FONT> (<FONT COLOR=red><A NAME="ref_591_27" HREF="terminal_interface-curses__adb.htm#ref_591_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_591_16">wstandend</A></span> (<span class="symbol"><A NAME="ref_591_27" HREF="terminal_interface-curses__adb.htm#ref_591_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, wstandend, "wstandend"); - -- <FONT COLOR=red><A NAME="ref_594_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_594_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_803_24">On</A> <b>then</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_594_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_589_16">wstandout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_802_24">Win</A>); -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_802_24">On</A> <b>then</b> -+ <A HREF="terminal_interface-curses__adb.htm#ref_594_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_589_16">wstandout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_801_24">Win</A>); - <b>else</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_594_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_591_16">wstandend</A> (<A HREF="terminal_interface-curses__ads.htm#ref_802_24">Win</A>); -+ <A HREF="terminal_interface-curses__adb.htm#ref_594_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_591_16">wstandend</A> (<A HREF="terminal_interface-curses__ads.htm#ref_801_24">Win</A>); - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_594_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_802_14">Standout</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_801_14">Standout</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_606_14" HREF="terminal_interface-curses__ads.htm#ref_808_14">Switch_Character_Attribute</A></FONT> -- (<FONT COLOR=red><A NAME="ref_607_7" HREF="terminal_interface-curses__ads.htm#ref_809_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_608_7" HREF="terminal_interface-curses__ads.htm#ref_810_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_609_7" HREF="terminal_interface-curses__ads.htm#ref_811_7">On</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_606_14" HREF="terminal_interface-curses__ads.htm#ref_807_14">Switch_Character_Attribute</A></span> -+ (<span class="symbol"><A NAME="ref_607_7" HREF="terminal_interface-curses__ads.htm#ref_808_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_608_7" HREF="terminal_interface-curses__ads.htm#ref_809_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_609_7" HREF="terminal_interface-curses__ads.htm#ref_810_7">On</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_611_16">Wattron</A></FONT> (<FONT COLOR=red><A NAME="ref_611_25" HREF="terminal_interface-curses__adb.htm#ref_611_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_612_25" HREF="terminal_interface-curses__adb.htm#ref_611_16">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_611_16">Wattron</A></span> (<span class="symbol"><A NAME="ref_611_25" HREF="terminal_interface-curses__adb.htm#ref_611_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_612_25" HREF="terminal_interface-curses__adb.htm#ref_611_16">C_Attr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wattron, "wattr_on"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_614_16">Wattroff</A></FONT> (<FONT COLOR=red><A NAME="ref_614_26" HREF="terminal_interface-curses__adb.htm#ref_614_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_615_26" HREF="terminal_interface-curses__adb.htm#ref_614_16">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_614_16">Wattroff</A></span> (<span class="symbol"><A NAME="ref_614_26" HREF="terminal_interface-curses__adb.htm#ref_614_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_615_26" HREF="terminal_interface-curses__adb.htm#ref_614_16">C_Attr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wattroff, "wattr_off"); -- <FONT COLOR=green><EM>-- In Ada we use the On Boolean to control whether or not we want to</EM></FONT> -- <FONT COLOR=green><EM>-- switch on or off the attributes in the set.</EM></FONT> -- <FONT COLOR=red><A NAME="ref_619_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_620_7">AC</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_810_7">Attr</A>); -+ <span class="comment"><EM>-- In Ada we use the On Boolean to control whether or not we want to</EM></span> -+ <span class="comment"><EM>-- switch on or off the attributes in the set.</EM></span> -+ <span class="symbol"><A NAME="ref_619_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_620_7">AC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_809_7">Attr</A>); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_811_7">On</A> <b>then</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_619_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_611_16">Wattron</A> (<A HREF="terminal_interface-curses__ads.htm#ref_809_7">Win</A>, AttrChar_To_AttrType (<A HREF="terminal_interface-curses__adb.htm#ref_620_7">AC</A>)); -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_810_7">On</A> <b>then</b> -+ <A HREF="terminal_interface-curses__adb.htm#ref_619_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_611_16">Wattron</A> (<A HREF="terminal_interface-curses__ads.htm#ref_808_7">Win</A>, AttrChar_To_AttrType (<A HREF="terminal_interface-curses__adb.htm#ref_620_7">AC</A>)); - <b>else</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_619_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_614_16">Wattroff</A> (<A HREF="terminal_interface-curses__ads.htm#ref_809_7">Win</A>, AttrChar_To_AttrType (<A HREF="terminal_interface-curses__adb.htm#ref_620_7">AC</A>)); -+ <A HREF="terminal_interface-curses__adb.htm#ref_619_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_614_16">Wattroff</A> (<A HREF="terminal_interface-curses__ads.htm#ref_808_7">Win</A>, AttrChar_To_AttrType (<A HREF="terminal_interface-curses__adb.htm#ref_620_7">AC</A>)); - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_619_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_808_14">Switch_Character_Attribute</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_807_14">Switch_Character_Attribute</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_634_14" HREF="terminal_interface-curses__ads.htm#ref_819_14">Set_Character_Attributes</A></FONT> -- (<FONT COLOR=red><A NAME="ref_635_7" HREF="terminal_interface-curses__ads.htm#ref_820_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_636_7" HREF="terminal_interface-curses__ads.htm#ref_821_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_637_7" HREF="terminal_interface-curses__ads.htm#ref_822_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_634_14" HREF="terminal_interface-curses__ads.htm#ref_818_14">Set_Character_Attributes</A></span> -+ (<span class="symbol"><A NAME="ref_635_7" HREF="terminal_interface-curses__ads.htm#ref_819_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_636_7" HREF="terminal_interface-curses__ads.htm#ref_820_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_637_7" HREF="terminal_interface-curses__ads.htm#ref_821_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_639_16">Wattrset</A></FONT> (<FONT COLOR=red><A NAME="ref_639_26" HREF="terminal_interface-curses__adb.htm#ref_639_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_640_26" HREF="terminal_interface-curses__adb.htm#ref_639_16">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <b>pragma</b> Import (C, Wattrset, "wattrset"); <FONT COLOR=green><EM>-- ??? wattr_set</EM></FONT> -+ <b>function</b> <span class="symbol"><A NAME="ref_639_16">Wattrset</A></span> (<span class="symbol"><A NAME="ref_639_26" HREF="terminal_interface-curses__adb.htm#ref_639_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_640_26" HREF="terminal_interface-curses__adb.htm#ref_639_16">C_Attr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>pragma</b> Import (C, Wattrset, "wattrset"); <span class="comment"><EM>-- ??? wattr_set</EM></span> - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_639_16">Wattrset</A> (<A HREF="terminal_interface-curses__ads.htm#ref_820_7">Win</A>, -- AttrChar_To_AttrType (<A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>' -- (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_822_7">Color</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_821_7">Attr</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_639_16">Wattrset</A> (<A HREF="terminal_interface-curses__ads.htm#ref_819_7">Win</A>, -+ AttrChar_To_AttrType (<A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>' -+ (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_821_7">Color</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_820_7">Attr</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_819_14">Set_Character_Attributes</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_818_14">Set_Character_Attributes</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_652_13" HREF="terminal_interface-curses__ads.htm#ref_828_13">Get_Character_Attribute</A></FONT> (<FONT COLOR=red><A NAME="ref_652_38" HREF="terminal_interface-curses__ads.htm#ref_829_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_652_13" HREF="terminal_interface-curses__ads.htm#ref_827_13">Get_Character_Attribute</A></span> (<span class="symbol"><A NAME="ref_652_38" HREF="terminal_interface-curses__ads.htm#ref_828_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_655_16">Wattrget</A></FONT> (<FONT COLOR=red><A NAME="ref_655_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_656_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Atr</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>; -- <FONT COLOR=red><A NAME="ref_657_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Col</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_658_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Opt</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_655_16">Wattrget</A></span> (<span class="symbol"><A NAME="ref_655_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_656_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Atr</A></span> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>; -+ <span class="symbol"><A NAME="ref_657_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Col</A></span> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_658_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Opt</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wattrget, "wattr_get"); - -- <FONT COLOR=red><A NAME="ref_661_7">Attr</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>; -- <FONT COLOR=red><A NAME="ref_662_7">Col</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_663_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_655_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#ref_829_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_661_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_662_7">Col</A>'<b>Access</b>, -+ <span class="symbol"><A NAME="ref_661_7">Attr</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>; -+ <span class="symbol"><A NAME="ref_662_7">Col</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_663_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_655_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#ref_828_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_661_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_662_7">Col</A>'<b>Access</b>, - System.Null_Address); -- <FONT COLOR=red><A NAME="ref_665_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>; -+ <span class="symbol"><A NAME="ref_665_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_663_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_4">Curses_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses__adb.htm#ref_665_7">Ch</A> := AttrType_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_661_7">Attr</A>); -- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_665_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_665_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; - <b>else</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_828_13">Get_Character_Attribute</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_827_13">Get_Character_Attribute</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_675_13" HREF="terminal_interface-curses__ads.htm#ref_834_13">Get_Character_Attribute</A></FONT> (<FONT COLOR=red><A NAME="ref_675_38" HREF="terminal_interface-curses__ads.htm#ref_835_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_675_13" HREF="terminal_interface-curses__ads.htm#ref_833_13">Get_Character_Attribute</A></span> (<span class="symbol"><A NAME="ref_675_38" HREF="terminal_interface-curses__ads.htm#ref_834_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_678_16">Wattrget</A></FONT> (<FONT COLOR=red><A NAME="ref_678_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_679_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Atr</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>; -- <FONT COLOR=red><A NAME="ref_680_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Col</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_681_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Opt</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_678_16">Wattrget</A></span> (<span class="symbol"><A NAME="ref_678_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_679_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Atr</A></span> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>; -+ <span class="symbol"><A NAME="ref_680_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Col</A></span> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_681_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Opt</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wattrget, "wattr_get"); - -- <FONT COLOR=red><A NAME="ref_684_7">Attr</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>; -- <FONT COLOR=red><A NAME="ref_685_7">Col</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_686_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_678_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#ref_835_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_684_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_685_7">Col</A>'<b>Access</b>, -+ <span class="symbol"><A NAME="ref_684_7">Attr</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>; -+ <span class="symbol"><A NAME="ref_685_7">Col</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_686_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_678_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#ref_834_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_684_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_685_7">Col</A>'<b>Access</b>, - System.Null_Address); -- <FONT COLOR=red><A NAME="ref_688_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>; -+ <span class="symbol"><A NAME="ref_688_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_686_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_4">Curses_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses__adb.htm#ref_688_7">Ch</A> := AttrType_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_684_7">Attr</A>); -- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_688_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>; -+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_688_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A>; - <b>else</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_834_13">Get_Character_Attribute</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_833_13">Get_Character_Attribute</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_698_14" HREF="terminal_interface-curses__ads.htm#ref_840_14">Set_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_698_25" HREF="terminal_interface-curses__ads.htm#ref_840_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_699_25" HREF="terminal_interface-curses__ads.htm#ref_841_25">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_698_14" HREF="terminal_interface-curses__ads.htm#ref_839_14">Set_Color</A></span> (<span class="symbol"><A NAME="ref_698_25" HREF="terminal_interface-curses__ads.htm#ref_839_25">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_699_25" HREF="terminal_interface-curses__ads.htm#ref_840_25">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_701_16">Wset_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_701_28" HREF="terminal_interface-curses__adb.htm#ref_701_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_702_28" HREF="terminal_interface-curses__adb.htm#ref_701_16">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_703_28" HREF="terminal_interface-curses__adb.htm#ref_701_16">Opts</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_62_12">C_Void_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_701_16">Wset_Color</A></span> (<span class="symbol"><A NAME="ref_701_28" HREF="terminal_interface-curses__adb.htm#ref_701_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_702_28" HREF="terminal_interface-curses__adb.htm#ref_701_16">Color</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_703_28" HREF="terminal_interface-curses__adb.htm#ref_701_16">Opts</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_62_12">C_Void_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wset_Color, "wcolor_set"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_701_16">Wset_Color</A> (<A HREF="terminal_interface-curses__ads.htm#ref_840_25">Win</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_841_25">Pair</A>), -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_701_16">Wset_Color</A> (<A HREF="terminal_interface-curses__ads.htm#ref_839_25">Win</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_840_25">Pair</A>), - <A HREF="terminal_interface-curses-aux__ads.htm#ref_62_12">C_Void_Ptr</A> (System.Null_Address)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_840_14">Set_Color</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_839_14">Set_Color</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_713_14" HREF="terminal_interface-curses__ads.htm#ref_847_14">Change_Attributes</A></FONT> -- (<FONT COLOR=red><A NAME="ref_714_7" HREF="terminal_interface-curses__ads.htm#ref_848_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_715_7" HREF="terminal_interface-curses__ads.htm#ref_849_7">Count</A></FONT> : Integer := -1; -- <FONT COLOR=red><A NAME="ref_716_7" HREF="terminal_interface-curses__ads.htm#ref_850_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_717_7" HREF="terminal_interface-curses__ads.htm#ref_851_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_719_16">Wchgat</A></FONT> (<FONT COLOR=red><A NAME="ref_719_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_720_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Cnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_721_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>; -- <FONT COLOR=red><A NAME="ref_722_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_723_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Opts</A></FONT> : System.Address := System.Null_Address) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_713_14" HREF="terminal_interface-curses__ads.htm#ref_846_14">Change_Attributes</A></span> -+ (<span class="symbol"><A NAME="ref_714_7" HREF="terminal_interface-curses__ads.htm#ref_847_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_715_7" HREF="terminal_interface-curses__ads.htm#ref_848_7">Count</A></span> : Integer := -1; -+ <span class="symbol"><A NAME="ref_716_7" HREF="terminal_interface-curses__ads.htm#ref_849_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_717_7" HREF="terminal_interface-curses__ads.htm#ref_850_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_719_16">Wchgat</A></span> (<span class="symbol"><A NAME="ref_719_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_720_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Cnt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_721_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Attr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>; -+ <span class="symbol"><A NAME="ref_722_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Color</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_723_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Opts</A></span> : System.Address := System.Null_Address) - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wchgat, "wchgat"); - -- <FONT COLOR=red><A NAME="ref_727_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := -- (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_850_7">Attr</A>); -+ <span class="symbol"><A NAME="ref_727_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := -+ (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_849_7">Attr</A>); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_719_16">Wchgat</A> (<A HREF="terminal_interface-curses__ads.htm#ref_848_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_849_7">Count</A>), AttrChar_To_AttrType (<A HREF="terminal_interface-curses__adb.htm#ref_727_7">Ch</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_851_7">Color</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_847_14">Change_Attributes</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_736_14" HREF="terminal_interface-curses__ads.htm#ref_856_14">Change_Attributes</A></FONT> -- (<FONT COLOR=red><A NAME="ref_737_7" HREF="terminal_interface-curses__ads.htm#ref_857_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_738_7" HREF="terminal_interface-curses__ads.htm#ref_858_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'First; -- <FONT COLOR=red><A NAME="ref_739_7" HREF="terminal_interface-curses__ads.htm#ref_859_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'First; -- <FONT COLOR=red><A NAME="ref_740_7" HREF="terminal_interface-curses__ads.htm#ref_860_7">Count</A></FONT> : Integer := -1; -- <FONT COLOR=red><A NAME="ref_741_7" HREF="terminal_interface-curses__ads.htm#ref_861_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_742_7" HREF="terminal_interface-curses__ads.htm#ref_862_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -- <b>is</b> -- <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_857_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_858_7">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_859_7">Column</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_847_14">Change_Attributes</A> (<A HREF="terminal_interface-curses__ads.htm#ref_857_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_860_7">Count</A>, <A HREF="terminal_interface-curses__ads.htm#ref_861_7">Attr</A>, <A HREF="terminal_interface-curses__ads.htm#ref_862_7">Color</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_856_14">Change_Attributes</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_749_14" HREF="terminal_interface-curses__ads.htm#ref_872_14">Beep</A></FONT> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_719_16">Wchgat</A> (<A HREF="terminal_interface-curses__ads.htm#ref_847_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_848_7">Count</A>), AttrChar_To_AttrType (<A HREF="terminal_interface-curses__adb.htm#ref_727_7">Ch</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_850_7">Color</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_846_14">Change_Attributes</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_736_14" HREF="terminal_interface-curses__ads.htm#ref_855_14">Change_Attributes</A></span> -+ (<span class="symbol"><A NAME="ref_737_7" HREF="terminal_interface-curses__ads.htm#ref_856_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_738_7" HREF="terminal_interface-curses__ads.htm#ref_857_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'First; -+ <span class="symbol"><A NAME="ref_739_7" HREF="terminal_interface-curses__ads.htm#ref_858_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'First; -+ <span class="symbol"><A NAME="ref_740_7" HREF="terminal_interface-curses__ads.htm#ref_859_7">Count</A></span> : Integer := -1; -+ <span class="symbol"><A NAME="ref_741_7" HREF="terminal_interface-curses__ads.htm#ref_860_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_742_7" HREF="terminal_interface-curses__ads.htm#ref_861_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -+ <b>is</b> -+ <b>begin</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_512_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_856_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_857_7">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_858_7">Column</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_846_14">Change_Attributes</A> (<A HREF="terminal_interface-curses__ads.htm#ref_856_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_859_7">Count</A>, <A HREF="terminal_interface-curses__ads.htm#ref_860_7">Attr</A>, <A HREF="terminal_interface-curses__ads.htm#ref_861_7">Color</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_855_14">Change_Attributes</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_749_14" HREF="terminal_interface-curses__ads.htm#ref_871_14">Beep</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_751_16">Beeper</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_751_16">Beeper</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Beeper, "beep"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_751_16">Beeper</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_872_14">Beep</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_871_14">Beep</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_759_14" HREF="terminal_interface-curses__ads.htm#ref_877_14">Flash_Screen</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_759_14" HREF="terminal_interface-curses__ads.htm#ref_876_14">Flash_Screen</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_761_16">Flash</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_761_16">Flash</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Flash, "flash"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_761_16">Flash</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_877_14">Flash_Screen</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_769_14" HREF="terminal_interface-curses__ads.htm#ref_888_14">Set_Cbreak_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_769_31" HREF="terminal_interface-curses__ads.htm#ref_888_31">SwitchOn</A></FONT> : Boolean := True) -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_876_14">Flash_Screen</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_769_14" HREF="terminal_interface-curses__ads.htm#ref_887_14">Set_Cbreak_Mode</A></span> (<span class="symbol"><A NAME="ref_769_31" HREF="terminal_interface-curses__ads.htm#ref_887_31">SwitchOn</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_771_16">Cbreak</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_771_16">Cbreak</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Cbreak, "cbreak"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_773_16">NoCbreak</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_773_16">NoCbreak</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, NoCbreak, "nocbreak"); - -- <FONT COLOR=red><A NAME="ref_776_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_776_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_888_31">SwitchOn</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_887_31">SwitchOn</A> <b>then</b> - <A HREF="terminal_interface-curses__adb.htm#ref_776_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_771_16">Cbreak</A>; - <b>else</b> - <A HREF="terminal_interface-curses__adb.htm#ref_776_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_773_16">NoCbreak</A>; - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_776_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_888_14">Set_Cbreak_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_887_14">Set_Cbreak_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_788_14" HREF="terminal_interface-curses__ads.htm#ref_894_14">Set_Raw_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_788_28" HREF="terminal_interface-curses__ads.htm#ref_894_28">SwitchOn</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_788_14" HREF="terminal_interface-curses__ads.htm#ref_893_14">Set_Raw_Mode</A></span> (<span class="symbol"><A NAME="ref_788_28" HREF="terminal_interface-curses__ads.htm#ref_893_28">SwitchOn</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_790_16">Raw</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_790_16">Raw</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Raw, "raw"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_792_16">NoRaw</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_792_16">NoRaw</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, NoRaw, "noraw"); - -- <FONT COLOR=red><A NAME="ref_795_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_795_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_894_28">SwitchOn</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_893_28">SwitchOn</A> <b>then</b> - <A HREF="terminal_interface-curses__adb.htm#ref_795_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_790_16">Raw</A>; - <b>else</b> - <A HREF="terminal_interface-curses__adb.htm#ref_795_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_792_16">NoRaw</A>; - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_795_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_894_14">Set_Raw_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_893_14">Set_Raw_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_807_14" HREF="terminal_interface-curses__ads.htm#ref_900_14">Set_Echo_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_807_29" HREF="terminal_interface-curses__ads.htm#ref_900_29">SwitchOn</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_807_14" HREF="terminal_interface-curses__ads.htm#ref_899_14">Set_Echo_Mode</A></span> (<span class="symbol"><A NAME="ref_807_29" HREF="terminal_interface-curses__ads.htm#ref_899_29">SwitchOn</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_809_16">Echo</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_809_16">Echo</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Echo, "echo"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_811_16">NoEcho</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_811_16">NoEcho</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, NoEcho, "noecho"); - -- <FONT COLOR=red><A NAME="ref_814_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_814_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_900_29">SwitchOn</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_899_29">SwitchOn</A> <b>then</b> - <A HREF="terminal_interface-curses__adb.htm#ref_814_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_809_16">Echo</A>; - <b>else</b> - <A HREF="terminal_interface-curses__adb.htm#ref_814_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_811_16">NoEcho</A>; - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_814_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_900_14">Set_Echo_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_899_14">Set_Echo_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_826_14" HREF="terminal_interface-curses__ads.htm#ref_906_14">Set_Meta_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_826_29" HREF="terminal_interface-curses__ads.htm#ref_906_29">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_827_29" HREF="terminal_interface-curses__ads.htm#ref_907_29">SwitchOn</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_826_14" HREF="terminal_interface-curses__ads.htm#ref_905_14">Set_Meta_Mode</A></span> (<span class="symbol"><A NAME="ref_826_29" HREF="terminal_interface-curses__ads.htm#ref_905_29">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_827_29" HREF="terminal_interface-curses__ads.htm#ref_906_29">SwitchOn</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_829_16">Meta</A></FONT> (<FONT COLOR=red><A NAME="ref_829_22" HREF="terminal_interface-curses__adb.htm#ref_829_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_829_34" HREF="terminal_interface-curses__adb.htm#ref_829_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_829_16">Meta</A></span> (<span class="symbol"><A NAME="ref_829_22" HREF="terminal_interface-curses__adb.htm#ref_829_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_829_34" HREF="terminal_interface-curses__adb.htm#ref_829_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Meta, "meta"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_829_16">Meta</A> (<A HREF="terminal_interface-curses__ads.htm#ref_906_29">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_907_29">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_829_16">Meta</A> (<A HREF="terminal_interface-curses__ads.htm#ref_905_29">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_906_29">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_906_14">Set_Meta_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_905_14">Set_Meta_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_837_14" HREF="terminal_interface-curses__ads.htm#ref_912_14">Set_KeyPad_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_837_31" HREF="terminal_interface-curses__ads.htm#ref_912_31">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_838_31" HREF="terminal_interface-curses__ads.htm#ref_913_31">SwitchOn</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_837_14" HREF="terminal_interface-curses__ads.htm#ref_911_14">Set_KeyPad_Mode</A></span> (<span class="symbol"><A NAME="ref_837_31" HREF="terminal_interface-curses__ads.htm#ref_911_31">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_838_31" HREF="terminal_interface-curses__ads.htm#ref_912_31">SwitchOn</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_840_16">Keypad</A></FONT> (<FONT COLOR=red><A NAME="ref_840_24" HREF="terminal_interface-curses__adb.htm#ref_840_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_840_36" HREF="terminal_interface-curses__adb.htm#ref_840_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_840_16">Keypad</A></span> (<span class="symbol"><A NAME="ref_840_24" HREF="terminal_interface-curses__adb.htm#ref_840_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_840_36" HREF="terminal_interface-curses__adb.htm#ref_840_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Keypad, "keypad"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_840_16">Keypad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_912_31">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_913_31">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_840_16">Keypad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_911_31">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_912_31">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_912_14">Set_KeyPad_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_911_14">Set_KeyPad_Mode</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_848_13" HREF="terminal_interface-curses__ads.htm#ref_917_13">Get_KeyPad_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_848_30" HREF="terminal_interface-curses__ads.htm#ref_917_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_848_13" HREF="terminal_interface-curses__ads.htm#ref_916_13">Get_KeyPad_Mode</A></span> (<span class="symbol"><A NAME="ref_848_30" HREF="terminal_interface-curses__ads.htm#ref_916_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_851_16">Is_Keypad</A></FONT> (<FONT COLOR=red><A NAME="ref_851_27" HREF="terminal_interface-curses__adb.htm#ref_851_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_851_16">Is_Keypad</A></span> (<span class="symbol"><A NAME="ref_851_27" HREF="terminal_interface-curses__adb.htm#ref_851_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, Is_Keypad, "is_keypad"); - <b>begin</b> -- <b>return</b> (<A HREF="terminal_interface-curses__adb.htm#ref_851_16">Is_Keypad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_917_30">Win</A>) /= <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_917_13">Get_KeyPad_Mode</A>; -+ <b>return</b> (<A HREF="terminal_interface-curses__adb.htm#ref_851_16">Is_Keypad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_916_30">Win</A>) /= <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_916_13">Get_KeyPad_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_857_14" HREF="terminal_interface-curses__ads.htm#ref_925_14">Half_Delay</A></FONT> (<FONT COLOR=red><A NAME="ref_857_26" HREF="terminal_interface-curses__ads.htm#ref_925_26">Amount</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_922_9">Half_Delay_Amount</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_857_14" HREF="terminal_interface-curses__ads.htm#ref_924_14">Half_Delay</A></span> (<span class="symbol"><A NAME="ref_857_26" HREF="terminal_interface-curses__ads.htm#ref_924_26">Amount</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_921_9">Half_Delay_Amount</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_859_16">Halfdelay</A></FONT> (<FONT COLOR=red><A NAME="ref_859_27" HREF="terminal_interface-curses__adb.htm#ref_859_16">Amount</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_859_16">Halfdelay</A></span> (<span class="symbol"><A NAME="ref_859_27" HREF="terminal_interface-curses__adb.htm#ref_859_16">Amount</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Halfdelay, "halfdelay"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_859_16">Halfdelay</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_925_26">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_859_16">Halfdelay</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_924_26">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_925_14">Half_Delay</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_924_14">Half_Delay</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_867_14" HREF="terminal_interface-curses__ads.htm#ref_930_14">Set_Flush_On_Interrupt_Mode</A></FONT> -- (<FONT COLOR=red><A NAME="ref_868_7" HREF="terminal_interface-curses__ads.htm#ref_931_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_869_7" HREF="terminal_interface-curses__ads.htm#ref_932_7">Mode</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_867_14" HREF="terminal_interface-curses__ads.htm#ref_929_14">Set_Flush_On_Interrupt_Mode</A></span> -+ (<span class="symbol"><A NAME="ref_868_7" HREF="terminal_interface-curses__ads.htm#ref_930_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_869_7" HREF="terminal_interface-curses__ads.htm#ref_931_7">Mode</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_871_16">Intrflush</A></FONT> (<FONT COLOR=red><A NAME="ref_871_27" HREF="terminal_interface-curses__adb.htm#ref_871_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_871_41" HREF="terminal_interface-curses__adb.htm#ref_871_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_871_16">Intrflush</A></span> (<span class="symbol"><A NAME="ref_871_27" HREF="terminal_interface-curses__adb.htm#ref_871_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_871_41" HREF="terminal_interface-curses__adb.htm#ref_871_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Intrflush, "intrflush"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_871_16">Intrflush</A> (<A HREF="terminal_interface-curses__ads.htm#ref_931_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_932_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_871_16">Intrflush</A> (<A HREF="terminal_interface-curses__ads.htm#ref_930_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_931_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_930_14">Set_Flush_On_Interrupt_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_929_14">Set_Flush_On_Interrupt_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_879_14" HREF="terminal_interface-curses__ads.htm#ref_937_14">Set_Queue_Interrupt_Mode</A></FONT> -- (<FONT COLOR=red><A NAME="ref_880_7" HREF="terminal_interface-curses__ads.htm#ref_938_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_881_7" HREF="terminal_interface-curses__ads.htm#ref_939_7">Flush</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_879_14" HREF="terminal_interface-curses__ads.htm#ref_936_14">Set_Queue_Interrupt_Mode</A></span> -+ (<span class="symbol"><A NAME="ref_880_7" HREF="terminal_interface-curses__ads.htm#ref_937_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_881_7" HREF="terminal_interface-curses__ads.htm#ref_938_7">Flush</A></span> : Boolean := True) - <b>is</b> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_883_17">Qiflush</A></FONT>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_883_17">Qiflush</A></span>; - <b>pragma</b> Import (C, Qiflush, "qiflush"); -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_885_17">No_Qiflush</A></FONT>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_885_17">No_Qiflush</A></span>; - <b>pragma</b> Import (C, No_Qiflush, "noqiflush"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_938_7">Win</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_937_7">Win</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_939_7">Flush</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_938_7">Flush</A> <b>then</b> - <A HREF="terminal_interface-curses__adb.htm#ref_883_17">Qiflush</A>; - <b>else</b> - <A HREF="terminal_interface-curses__adb.htm#ref_885_17">No_Qiflush</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_937_14">Set_Queue_Interrupt_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_936_14">Set_Queue_Interrupt_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_898_14" HREF="terminal_interface-curses__ads.htm#ref_945_14">Set_NoDelay_Mode</A></FONT> -- (<FONT COLOR=red><A NAME="ref_899_7" HREF="terminal_interface-curses__ads.htm#ref_946_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_900_7" HREF="terminal_interface-curses__ads.htm#ref_947_7">Mode</A></FONT> : Boolean := False) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_898_14" HREF="terminal_interface-curses__ads.htm#ref_944_14">Set_NoDelay_Mode</A></span> -+ (<span class="symbol"><A NAME="ref_899_7" HREF="terminal_interface-curses__ads.htm#ref_945_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_900_7" HREF="terminal_interface-curses__ads.htm#ref_946_7">Mode</A></span> : Boolean := False) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_902_16">Nodelay</A></FONT> (<FONT COLOR=red><A NAME="ref_902_25" HREF="terminal_interface-curses__adb.htm#ref_902_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_902_39" HREF="terminal_interface-curses__adb.htm#ref_902_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_902_16">Nodelay</A></span> (<span class="symbol"><A NAME="ref_902_25" HREF="terminal_interface-curses__adb.htm#ref_902_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_902_39" HREF="terminal_interface-curses__adb.htm#ref_902_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Nodelay, "nodelay"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_902_16">Nodelay</A> (<A HREF="terminal_interface-curses__ads.htm#ref_946_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_947_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_902_16">Nodelay</A> (<A HREF="terminal_interface-curses__ads.htm#ref_945_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_946_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_945_14">Set_NoDelay_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_944_14">Set_NoDelay_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_910_14" HREF="terminal_interface-curses__ads.htm#ref_954_14">Set_Timeout_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_910_32" HREF="terminal_interface-curses__ads.htm#ref_954_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_911_32" HREF="terminal_interface-curses__ads.htm#ref_955_32">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_951_9">Timeout_Mode</A>; -- <FONT COLOR=red><A NAME="ref_912_32" HREF="terminal_interface-curses__ads.htm#ref_956_32">Amount</A></FONT> : Natural) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_910_14" HREF="terminal_interface-curses__ads.htm#ref_953_14">Set_Timeout_Mode</A></span> (<span class="symbol"><A NAME="ref_910_32" HREF="terminal_interface-curses__ads.htm#ref_953_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_911_32" HREF="terminal_interface-curses__ads.htm#ref_954_32">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_950_9">Timeout_Mode</A>; -+ <span class="symbol"><A NAME="ref_912_32" HREF="terminal_interface-curses__ads.htm#ref_955_32">Amount</A></span> : Natural) - <b>is</b> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_914_17">Wtimeout</A></FONT> (<FONT COLOR=red><A NAME="ref_914_27" HREF="terminal_interface-curses__adb.htm#ref_914_17">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_914_41" HREF="terminal_interface-curses__adb.htm#ref_914_17">Amount</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_914_17">Wtimeout</A></span> (<span class="symbol"><A NAME="ref_914_27" HREF="terminal_interface-curses__adb.htm#ref_914_17">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_914_41" HREF="terminal_interface-curses__adb.htm#ref_914_17">Amount</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>); - <b>pragma</b> Import (C, Wtimeout, "wtimeout"); - -- <FONT COLOR=red><A NAME="ref_917_7">Time</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_917_7">Time</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> -- <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_955_32">Mode</A> <b>is</b> -- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_951_26">Blocking</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A> := -1; -- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_951_36">Non_Blocking</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A> := 0; -- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_951_50">Delayed</A> =&gt; -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_956_32">Amount</A> = 0 <b>then</b> -+ <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_954_32">Mode</A> <b>is</b> -+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_950_26">Blocking</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A> := -1; -+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_950_36">Non_Blocking</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A> := 0; -+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_950_50">Delayed</A> =&gt; -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_955_32">Amount</A> = 0 <b>then</b> - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_956_32">Amount</A>); -+ <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_955_32">Amount</A>); - <b>end</b> <b>case</b>; -- <A HREF="terminal_interface-curses__adb.htm#ref_914_17">Wtimeout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_954_32">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_954_14">Set_Timeout_Mode</A>; -+ <A HREF="terminal_interface-curses__adb.htm#ref_914_17">Wtimeout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_953_32">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_953_14">Set_Timeout_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_931_14" HREF="terminal_interface-curses__ads.htm#ref_966_14">Set_Escape_Timer_Mode</A></FONT> -- (<FONT COLOR=red><A NAME="ref_932_7" HREF="terminal_interface-curses__ads.htm#ref_967_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_933_7" HREF="terminal_interface-curses__ads.htm#ref_968_7">Timer_Off</A></FONT> : Boolean := False) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_931_14" HREF="terminal_interface-curses__ads.htm#ref_965_14">Set_Escape_Timer_Mode</A></span> -+ (<span class="symbol"><A NAME="ref_932_7" HREF="terminal_interface-curses__ads.htm#ref_966_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_933_7" HREF="terminal_interface-curses__ads.htm#ref_967_7">Timer_Off</A></span> : Boolean := False) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_935_16">Notimeout</A></FONT> (<FONT COLOR=red><A NAME="ref_935_27" HREF="terminal_interface-curses__adb.htm#ref_935_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_935_41" HREF="terminal_interface-curses__adb.htm#ref_935_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_935_16">Notimeout</A></span> (<span class="symbol"><A NAME="ref_935_27" HREF="terminal_interface-curses__adb.htm#ref_935_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_935_41" HREF="terminal_interface-curses__adb.htm#ref_935_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Notimeout, "notimeout"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_935_16">Notimeout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_967_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_968_7">Timer_Off</A>))) -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_935_16">Notimeout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_966_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_967_7">Timer_Off</A>))) - = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_966_14">Set_Escape_Timer_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_965_14">Set_Escape_Timer_Mode</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_945_14" HREF="terminal_interface-curses__ads.htm#ref_977_14">Set_NL_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_945_27" HREF="terminal_interface-curses__ads.htm#ref_977_27">SwitchOn</A></FONT> : Boolean := True) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_945_14" HREF="terminal_interface-curses__ads.htm#ref_976_14">Set_NL_Mode</A></span> (<span class="symbol"><A NAME="ref_945_27" HREF="terminal_interface-curses__ads.htm#ref_976_27">SwitchOn</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_947_16">NL</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_947_16">NL</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, NL, "nl"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_949_16">NoNL</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_949_16">NoNL</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, NoNL, "nonl"); - -- <FONT COLOR=red><A NAME="ref_952_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_952_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_977_27">SwitchOn</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_976_27">SwitchOn</A> <b>then</b> - <A HREF="terminal_interface-curses__adb.htm#ref_952_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_947_16">NL</A>; - <b>else</b> - <A HREF="terminal_interface-curses__adb.htm#ref_952_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_949_16">NoNL</A>; - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_952_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_977_14">Set_NL_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_976_14">Set_NL_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_964_14" HREF="terminal_interface-curses__ads.htm#ref_983_14">Clear_On_Next_Update</A></FONT> -- (<FONT COLOR=red><A NAME="ref_965_7" HREF="terminal_interface-curses__ads.htm#ref_984_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_966_7" HREF="terminal_interface-curses__ads.htm#ref_985_7">Do_Clear</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_964_14" HREF="terminal_interface-curses__ads.htm#ref_982_14">Clear_On_Next_Update</A></span> -+ (<span class="symbol"><A NAME="ref_965_7" HREF="terminal_interface-curses__ads.htm#ref_983_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_966_7" HREF="terminal_interface-curses__ads.htm#ref_984_7">Do_Clear</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_968_16">Clear_Ok</A></FONT> (<FONT COLOR=red><A NAME="ref_968_26" HREF="terminal_interface-curses__adb.htm#ref_968_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_968_38" HREF="terminal_interface-curses__adb.htm#ref_968_16">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_968_16">Clear_Ok</A></span> (<span class="symbol"><A NAME="ref_968_26" HREF="terminal_interface-curses__adb.htm#ref_968_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_968_38" HREF="terminal_interface-curses__adb.htm#ref_968_16">Flag</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Clear_Ok, "clearok"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_968_16">Clear_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_984_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_985_7">Do_Clear</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_968_16">Clear_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_983_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_984_7">Do_Clear</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_983_14">Clear_On_Next_Update</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_982_14">Clear_On_Next_Update</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_976_14" HREF="terminal_interface-curses__ads.htm#ref_990_14">Use_Insert_Delete_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_977_7" HREF="terminal_interface-curses__ads.htm#ref_991_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_978_7" HREF="terminal_interface-curses__ads.htm#ref_992_7">Do_Idl</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_976_14" HREF="terminal_interface-curses__ads.htm#ref_989_14">Use_Insert_Delete_Line</A></span> -+ (<span class="symbol"><A NAME="ref_977_7" HREF="terminal_interface-curses__ads.htm#ref_990_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_978_7" HREF="terminal_interface-curses__ads.htm#ref_991_7">Do_Idl</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_980_16">IDL_Ok</A></FONT> (<FONT COLOR=red><A NAME="ref_980_24" HREF="terminal_interface-curses__adb.htm#ref_980_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_980_36" HREF="terminal_interface-curses__adb.htm#ref_980_16">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_980_16">IDL_Ok</A></span> (<span class="symbol"><A NAME="ref_980_24" HREF="terminal_interface-curses__adb.htm#ref_980_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_980_36" HREF="terminal_interface-curses__adb.htm#ref_980_16">Flag</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, IDL_Ok, "idlok"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_980_16">IDL_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_991_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_992_7">Do_Idl</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_980_16">IDL_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_990_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_991_7">Do_Idl</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_990_14">Use_Insert_Delete_Line</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_989_14">Use_Insert_Delete_Line</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_988_14" HREF="terminal_interface-curses__ads.htm#ref_997_14">Use_Insert_Delete_Character</A></FONT> -- (<FONT COLOR=red><A NAME="ref_989_7" HREF="terminal_interface-curses__ads.htm#ref_998_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_990_7" HREF="terminal_interface-curses__ads.htm#ref_999_7">Do_Idc</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_988_14" HREF="terminal_interface-curses__ads.htm#ref_996_14">Use_Insert_Delete_Character</A></span> -+ (<span class="symbol"><A NAME="ref_989_7" HREF="terminal_interface-curses__ads.htm#ref_997_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_990_7" HREF="terminal_interface-curses__ads.htm#ref_998_7">Do_Idc</A></span> : Boolean := True) - <b>is</b> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_992_17">IDC_Ok</A></FONT> (<FONT COLOR=red><A NAME="ref_992_25" HREF="terminal_interface-curses__adb.htm#ref_992_17">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_992_37" HREF="terminal_interface-curses__adb.htm#ref_992_17">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_992_17">IDC_Ok</A></span> (<span class="symbol"><A NAME="ref_992_25" HREF="terminal_interface-curses__adb.htm#ref_992_17">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_992_37" HREF="terminal_interface-curses__adb.htm#ref_992_17">Flag</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>); - <b>pragma</b> Import (C, IDC_Ok, "idcok"); - <b>begin</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_992_17">IDC_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_998_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_999_7">Do_Idc</A>))); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_997_14">Use_Insert_Delete_Character</A>; -+ <A HREF="terminal_interface-curses__adb.htm#ref_992_17">IDC_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_997_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_998_7">Do_Idc</A>))); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_996_14">Use_Insert_Delete_Character</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_998_14" HREF="terminal_interface-curses__ads.htm#ref_1004_14">Leave_Cursor_After_Update</A></FONT> -- (<FONT COLOR=red><A NAME="ref_999_7" HREF="terminal_interface-curses__ads.htm#ref_1005_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1000_7" HREF="terminal_interface-curses__ads.htm#ref_1006_7">Do_Leave</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_998_14" HREF="terminal_interface-curses__ads.htm#ref_1003_14">Leave_Cursor_After_Update</A></span> -+ (<span class="symbol"><A NAME="ref_999_7" HREF="terminal_interface-curses__ads.htm#ref_1004_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1000_7" HREF="terminal_interface-curses__ads.htm#ref_1005_7">Do_Leave</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1002_16">Leave_Ok</A></FONT> (<FONT COLOR=red><A NAME="ref_1002_26" HREF="terminal_interface-curses__adb.htm#ref_1002_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1002_38" HREF="terminal_interface-curses__adb.htm#ref_1002_16">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1002_16">Leave_Ok</A></span> (<span class="symbol"><A NAME="ref_1002_26" HREF="terminal_interface-curses__adb.htm#ref_1002_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1002_38" HREF="terminal_interface-curses__adb.htm#ref_1002_16">Flag</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Leave_Ok, "leaveok"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1002_16">Leave_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1005_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1006_7">Do_Leave</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1002_16">Leave_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1004_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1005_7">Do_Leave</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1004_14">Leave_Cursor_After_Update</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1003_14">Leave_Cursor_After_Update</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1010_14" HREF="terminal_interface-curses__ads.htm#ref_1011_14">Immediate_Update_Mode</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1011_7" HREF="terminal_interface-curses__ads.htm#ref_1012_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1012_7" HREF="terminal_interface-curses__ads.htm#ref_1013_7">Mode</A></FONT> : Boolean := False) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1010_14" HREF="terminal_interface-curses__ads.htm#ref_1010_14">Immediate_Update_Mode</A></span> -+ (<span class="symbol"><A NAME="ref_1011_7" HREF="terminal_interface-curses__ads.htm#ref_1011_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1012_7" HREF="terminal_interface-curses__ads.htm#ref_1012_7">Mode</A></span> : Boolean := False) - <b>is</b> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1014_17">Immedok</A></FONT> (<FONT COLOR=red><A NAME="ref_1014_26" HREF="terminal_interface-curses__adb.htm#ref_1014_17">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1014_40" HREF="terminal_interface-curses__adb.htm#ref_1014_17">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1014_17">Immedok</A></span> (<span class="symbol"><A NAME="ref_1014_26" HREF="terminal_interface-curses__adb.htm#ref_1014_17">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1014_40" HREF="terminal_interface-curses__adb.htm#ref_1014_17">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>); - <b>pragma</b> Import (C, Immedok, "immedok"); - <b>begin</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_1014_17">Immedok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1012_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1013_7">Mode</A>))); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1011_14">Immediate_Update_Mode</A>; -+ <A HREF="terminal_interface-curses__adb.htm#ref_1014_17">Immedok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1011_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1012_7">Mode</A>))); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1010_14">Immediate_Update_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1020_14" HREF="terminal_interface-curses__ads.htm#ref_1018_14">Allow_Scrolling</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1021_7" HREF="terminal_interface-curses__ads.htm#ref_1019_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1022_7" HREF="terminal_interface-curses__ads.htm#ref_1020_7">Mode</A></FONT> : Boolean := False) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1020_14" HREF="terminal_interface-curses__ads.htm#ref_1017_14">Allow_Scrolling</A></span> -+ (<span class="symbol"><A NAME="ref_1021_7" HREF="terminal_interface-curses__ads.htm#ref_1018_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1022_7" HREF="terminal_interface-curses__ads.htm#ref_1019_7">Mode</A></span> : Boolean := False) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1024_16">Scrollok</A></FONT> (<FONT COLOR=red><A NAME="ref_1024_26" HREF="terminal_interface-curses__adb.htm#ref_1024_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1024_40" HREF="terminal_interface-curses__adb.htm#ref_1024_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1024_16">Scrollok</A></span> (<span class="symbol"><A NAME="ref_1024_26" HREF="terminal_interface-curses__adb.htm#ref_1024_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1024_40" HREF="terminal_interface-curses__adb.htm#ref_1024_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Scrollok, "scrollok"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1024_16">Scrollok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1019_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1020_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1024_16">Scrollok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1018_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1019_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1018_14">Allow_Scrolling</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1017_14">Allow_Scrolling</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1032_13" HREF="terminal_interface-curses__ads.htm#ref_1024_13">Scrolling_Allowed</A></FONT> (<FONT COLOR=red><A NAME="ref_1032_32" HREF="terminal_interface-curses__ads.htm#ref_1024_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_1032_13" HREF="terminal_interface-curses__ads.htm#ref_1023_13">Scrolling_Allowed</A></span> (<span class="symbol"><A NAME="ref_1032_32" HREF="terminal_interface-curses__ads.htm#ref_1023_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1035_16">Is_Scroll_Ok</A></FONT> (<FONT COLOR=red><A NAME="ref_1035_30" HREF="terminal_interface-curses__adb.htm#ref_1035_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1035_16">Is_Scroll_Ok</A></span> (<span class="symbol"><A NAME="ref_1035_30" HREF="terminal_interface-curses__adb.htm#ref_1035_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, Is_Scroll_Ok, "is_scrollok"); - <b>begin</b> -- <b>return</b> (<A HREF="terminal_interface-curses__adb.htm#ref_1035_16">Is_Scroll_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1024_32">Win</A>) /= <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1024_13">Scrolling_Allowed</A>; -+ <b>return</b> (<A HREF="terminal_interface-curses__adb.htm#ref_1035_16">Is_Scroll_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1023_32">Win</A>) /= <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1023_13">Scrolling_Allowed</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1041_14" HREF="terminal_interface-curses__ads.htm#ref_1029_14">Set_Scroll_Region</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1042_7" HREF="terminal_interface-curses__ads.htm#ref_1030_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1043_7" HREF="terminal_interface-curses__ads.htm#ref_1031_7">Top_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1044_7" HREF="terminal_interface-curses__ads.htm#ref_1032_7">Bottom_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1046_16">Wsetscrreg</A></FONT> (<FONT COLOR=red><A NAME="ref_1046_28" HREF="terminal_interface-curses__adb.htm#ref_1046_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1047_28" HREF="terminal_interface-curses__adb.htm#ref_1046_16">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1048_28" HREF="terminal_interface-curses__adb.htm#ref_1046_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1041_14" HREF="terminal_interface-curses__ads.htm#ref_1028_14">Set_Scroll_Region</A></span> -+ (<span class="symbol"><A NAME="ref_1042_7" HREF="terminal_interface-curses__ads.htm#ref_1029_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1043_7" HREF="terminal_interface-curses__ads.htm#ref_1030_7">Top_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1044_7" HREF="terminal_interface-curses__ads.htm#ref_1031_7">Bottom_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1046_16">Wsetscrreg</A></span> (<span class="symbol"><A NAME="ref_1046_28" HREF="terminal_interface-curses__adb.htm#ref_1046_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1047_28" HREF="terminal_interface-curses__adb.htm#ref_1046_16">Lin</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1048_28" HREF="terminal_interface-curses__adb.htm#ref_1046_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wsetscrreg, "wsetscrreg"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1046_16">Wsetscrreg</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1030_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1031_7">Top_Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1032_7">Bottom_Line</A>)) -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1046_16">Wsetscrreg</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1029_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1030_7">Top_Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1031_7">Bottom_Line</A>)) - = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1029_14">Set_Scroll_Region</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1057_14" HREF="terminal_interface-curses__ads.htm#ref_1042_14">Update_Screen</A></FONT> -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1028_14">Set_Scroll_Region</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1057_14" HREF="terminal_interface-curses__ads.htm#ref_1041_14">Update_Screen</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1059_16">Do_Update</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1059_16">Do_Update</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Do_Update, "doupdate"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1059_16">Do_Update</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1042_14">Update_Screen</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1041_14">Update_Screen</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1067_14" HREF="terminal_interface-curses__ads.htm#ref_1047_14">Refresh</A></FONT> (<FONT COLOR=red><A NAME="ref_1067_23" HREF="terminal_interface-curses__ads.htm#ref_1047_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1067_14" HREF="terminal_interface-curses__ads.htm#ref_1046_14">Refresh</A></span> (<span class="symbol"><A NAME="ref_1067_23" HREF="terminal_interface-curses__ads.htm#ref_1046_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1069_16">Wrefresh</A></FONT> (<FONT COLOR=red><A NAME="ref_1069_26" HREF="terminal_interface-curses__adb.htm#ref_1069_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1069_16">Wrefresh</A></span> (<span class="symbol"><A NAME="ref_1069_26" HREF="terminal_interface-curses__adb.htm#ref_1069_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wrefresh, "wrefresh"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1069_16">Wrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1047_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1069_16">Wrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1046_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1047_14">Refresh</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1046_14">Refresh</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1077_14" HREF="terminal_interface-curses__ads.htm#ref_1054_14">Refresh_Without_Update</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1078_7" HREF="terminal_interface-curses__ads.htm#ref_1055_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1077_14" HREF="terminal_interface-curses__ads.htm#ref_1053_14">Refresh_Without_Update</A></span> -+ (<span class="symbol"><A NAME="ref_1078_7" HREF="terminal_interface-curses__ads.htm#ref_1054_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1080_16">Wnoutrefresh</A></FONT> (<FONT COLOR=red><A NAME="ref_1080_30" HREF="terminal_interface-curses__adb.htm#ref_1080_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1080_16">Wnoutrefresh</A></span> (<span class="symbol"><A NAME="ref_1080_30" HREF="terminal_interface-curses__adb.htm#ref_1080_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wnoutrefresh, "wnoutrefresh"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1080_16">Wnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1055_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1080_16">Wnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1054_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1054_14">Refresh_Without_Update</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1053_14">Refresh_Without_Update</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1088_14" HREF="terminal_interface-curses__ads.htm#ref_1061_14">Redraw</A></FONT> (<FONT COLOR=red><A NAME="ref_1088_22" HREF="terminal_interface-curses__ads.htm#ref_1061_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1088_14" HREF="terminal_interface-curses__ads.htm#ref_1060_14">Redraw</A></span> (<span class="symbol"><A NAME="ref_1088_22" HREF="terminal_interface-curses__ads.htm#ref_1060_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1090_16">Redrawwin</A></FONT> (<FONT COLOR=red><A NAME="ref_1090_27" HREF="terminal_interface-curses__adb.htm#ref_1090_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1090_16">Redrawwin</A></span> (<span class="symbol"><A NAME="ref_1090_27" HREF="terminal_interface-curses__adb.htm#ref_1090_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Redrawwin, "redrawwin"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1090_16">Redrawwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1061_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1090_16">Redrawwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1060_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1061_14">Redraw</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1060_14">Redraw</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1098_14" HREF="terminal_interface-curses__ads.htm#ref_1065_14">Redraw</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1099_7" HREF="terminal_interface-curses__ads.htm#ref_1065_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1100_7" HREF="terminal_interface-curses__ads.htm#ref_1066_22">Begin_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1101_7" HREF="terminal_interface-curses__ads.htm#ref_1067_22">Line_Count</A></FONT> : Positive) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1098_14" HREF="terminal_interface-curses__ads.htm#ref_1064_14">Redraw</A></span> -+ (<span class="symbol"><A NAME="ref_1099_7" HREF="terminal_interface-curses__ads.htm#ref_1064_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1100_7" HREF="terminal_interface-curses__ads.htm#ref_1065_22">Begin_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1101_7" HREF="terminal_interface-curses__ads.htm#ref_1066_22">Line_Count</A></span> : Positive) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1103_16">Wredrawln</A></FONT> (<FONT COLOR=red><A NAME="ref_1103_27" HREF="terminal_interface-curses__adb.htm#ref_1103_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1103_41" HREF="terminal_interface-curses__adb.htm#ref_1103_16">First</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <FONT COLOR=red><A NAME="ref_1103_56" HREF="terminal_interface-curses__adb.htm#ref_1103_16">Cnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_1103_16">Wredrawln</A></span> (<span class="symbol"><A NAME="ref_1103_27" HREF="terminal_interface-curses__adb.htm#ref_1103_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1103_41" HREF="terminal_interface-curses__adb.htm#ref_1103_16">First</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <span class="symbol"><A NAME="ref_1103_56" HREF="terminal_interface-curses__adb.htm#ref_1103_16">Cnt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wredrawln, "wredrawln"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1103_16">Wredrawln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1065_22">Win</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1066_22">Begin_Line</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1067_22">Line_Count</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1103_16">Wredrawln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1064_22">Win</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1065_22">Begin_Line</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1066_22">Line_Count</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1065_14">Redraw</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1064_14">Redraw</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1115_14" HREF="terminal_interface-curses__ads.htm#ref_1076_14">Erase</A></FONT> (<FONT COLOR=red><A NAME="ref_1115_21" HREF="terminal_interface-curses__ads.htm#ref_1076_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1115_14" HREF="terminal_interface-curses__ads.htm#ref_1075_14">Erase</A></span> (<span class="symbol"><A NAME="ref_1115_21" HREF="terminal_interface-curses__ads.htm#ref_1075_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1117_16">Werase</A></FONT> (<FONT COLOR=red><A NAME="ref_1117_24" HREF="terminal_interface-curses__adb.htm#ref_1117_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1117_16">Werase</A></span> (<span class="symbol"><A NAME="ref_1117_24" HREF="terminal_interface-curses__adb.htm#ref_1117_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Werase, "werase"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1117_16">Werase</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1076_21">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1117_16">Werase</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1075_21">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1076_14">Erase</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1075_14">Erase</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1125_14" HREF="terminal_interface-curses__ads.htm#ref_1082_14">Clear</A></FONT> (<FONT COLOR=red><A NAME="ref_1125_21" HREF="terminal_interface-curses__ads.htm#ref_1083_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1125_14" HREF="terminal_interface-curses__ads.htm#ref_1081_14">Clear</A></span> (<span class="symbol"><A NAME="ref_1125_21" HREF="terminal_interface-curses__ads.htm#ref_1082_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1127_16">Wclear</A></FONT> (<FONT COLOR=red><A NAME="ref_1127_24" HREF="terminal_interface-curses__adb.htm#ref_1127_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1127_16">Wclear</A></span> (<span class="symbol"><A NAME="ref_1127_24" HREF="terminal_interface-curses__adb.htm#ref_1127_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wclear, "wclear"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1127_16">Wclear</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1083_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1127_16">Wclear</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1082_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1082_14">Clear</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1081_14">Clear</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1135_14" HREF="terminal_interface-curses__ads.htm#ref_1089_14">Clear_To_End_Of_Screen</A></FONT> (<FONT COLOR=red><A NAME="ref_1135_38" HREF="terminal_interface-curses__ads.htm#ref_1090_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1135_14" HREF="terminal_interface-curses__ads.htm#ref_1088_14">Clear_To_End_Of_Screen</A></span> (<span class="symbol"><A NAME="ref_1135_38" HREF="terminal_interface-curses__ads.htm#ref_1089_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1137_16">Wclearbot</A></FONT> (<FONT COLOR=red><A NAME="ref_1137_27" HREF="terminal_interface-curses__adb.htm#ref_1137_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1137_16">Wclearbot</A></span> (<span class="symbol"><A NAME="ref_1137_27" HREF="terminal_interface-curses__adb.htm#ref_1137_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wclearbot, "wclrtobot"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1137_16">Wclearbot</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1090_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1137_16">Wclearbot</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1089_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1089_14">Clear_To_End_Of_Screen</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1088_14">Clear_To_End_Of_Screen</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1145_14" HREF="terminal_interface-curses__ads.htm#ref_1096_14">Clear_To_End_Of_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_1145_36" HREF="terminal_interface-curses__ads.htm#ref_1097_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1145_14" HREF="terminal_interface-curses__ads.htm#ref_1095_14">Clear_To_End_Of_Line</A></span> (<span class="symbol"><A NAME="ref_1145_36" HREF="terminal_interface-curses__ads.htm#ref_1096_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1147_16">Wcleareol</A></FONT> (<FONT COLOR=red><A NAME="ref_1147_27" HREF="terminal_interface-curses__adb.htm#ref_1147_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1147_16">Wcleareol</A></span> (<span class="symbol"><A NAME="ref_1147_27" HREF="terminal_interface-curses__adb.htm#ref_1147_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wcleareol, "wclrtoeol"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1147_16">Wcleareol</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1097_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1147_16">Wcleareol</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1096_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1096_14">Clear_To_End_Of_Line</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1155_14" HREF="terminal_interface-curses__ads.htm#ref_1110_14">Set_Background</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1156_7" HREF="terminal_interface-curses__ads.htm#ref_1111_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1157_7" HREF="terminal_interface-curses__ads.htm#ref_1112_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1095_14">Clear_To_End_Of_Line</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1155_14" HREF="terminal_interface-curses__ads.htm#ref_1109_14">Set_Background</A></span> -+ (<span class="symbol"><A NAME="ref_1156_7" HREF="terminal_interface-curses__ads.htm#ref_1110_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1157_7" HREF="terminal_interface-curses__ads.htm#ref_1111_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>) - <b>is</b> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1159_17">WBackground</A></FONT> (<FONT COLOR=red><A NAME="ref_1159_30" HREF="terminal_interface-curses__adb.htm#ref_1159_17">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1159_42" HREF="terminal_interface-curses__adb.htm#ref_1159_17">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1159_17">WBackground</A></span> (<span class="symbol"><A NAME="ref_1159_30" HREF="terminal_interface-curses__adb.htm#ref_1159_17">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1159_42" HREF="terminal_interface-curses__adb.htm#ref_1159_17">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>); - <b>pragma</b> Import (C, WBackground, "wbkgdset"); - <b>begin</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_1159_17">WBackground</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1111_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1112_7">Ch</A>)); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1110_14">Set_Background</A>; -+ <A HREF="terminal_interface-curses__adb.htm#ref_1159_17">WBackground</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1110_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1111_7">Ch</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1109_14">Set_Background</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1165_14" HREF="terminal_interface-curses__ads.htm#ref_1118_14">Change_Background</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1166_7" HREF="terminal_interface-curses__ads.htm#ref_1119_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1167_7" HREF="terminal_interface-curses__ads.htm#ref_1120_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1165_14" HREF="terminal_interface-curses__ads.htm#ref_1117_14">Change_Background</A></span> -+ (<span class="symbol"><A NAME="ref_1166_7" HREF="terminal_interface-curses__ads.htm#ref_1118_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1167_7" HREF="terminal_interface-curses__ads.htm#ref_1119_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1169_16">WChangeBkgd</A></FONT> (<FONT COLOR=red><A NAME="ref_1169_29" HREF="terminal_interface-curses__adb.htm#ref_1169_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1169_41" HREF="terminal_interface-curses__adb.htm#ref_1169_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1169_16">WChangeBkgd</A></span> (<span class="symbol"><A NAME="ref_1169_29" HREF="terminal_interface-curses__adb.htm#ref_1169_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1169_41" HREF="terminal_interface-curses__adb.htm#ref_1169_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, WChangeBkgd, "wbkgd"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1169_16">WChangeBkgd</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1119_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1120_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1169_16">WChangeBkgd</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1118_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1119_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1118_14">Change_Background</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1117_14">Change_Background</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1177_13" HREF="terminal_interface-curses__ads.htm#ref_1127_13">Get_Background</A></FONT> (<FONT COLOR=red><A NAME="ref_1177_29" HREF="terminal_interface-curses__ads.htm#ref_1127_29">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_1177_13" HREF="terminal_interface-curses__ads.htm#ref_1126_13">Get_Background</A></span> (<span class="symbol"><A NAME="ref_1177_29" HREF="terminal_interface-curses__ads.htm#ref_1126_29">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1180_16">Wgetbkgd</A></FONT> (<FONT COLOR=red><A NAME="ref_1180_26" HREF="terminal_interface-curses__adb.htm#ref_1180_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1180_16">Wgetbkgd</A></span> (<span class="symbol"><A NAME="ref_1180_26" HREF="terminal_interface-curses__adb.htm#ref_1180_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Wgetbkgd, "getbkgd"); - <b>begin</b> -- <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1180_16">Wgetbkgd</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1127_29">Win</A>)); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1127_13">Get_Background</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1186_14" HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_1186_35" HREF="terminal_interface-curses__ads.htm#ref_1154_35">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1187_35" HREF="terminal_interface-curses__ads.htm#ref_1155_35">Start</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1188_35" HREF="terminal_interface-curses__ads.htm#ref_1156_35">Count</A></FONT> : Positive; -- <FONT COLOR=red><A NAME="ref_1189_35" HREF="terminal_interface-curses__ads.htm#ref_1157_35">State</A></FONT> : Boolean) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1191_16">Wtouchln</A></FONT> (<FONT COLOR=red><A NAME="ref_1191_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1192_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Sta</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1193_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Cnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1194_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Chg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1180_16">Wgetbkgd</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1126_29">Win</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1126_13">Get_Background</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1186_14" HREF="terminal_interface-curses__ads.htm#ref_1153_14">Change_Lines_Status</A></span> (<span class="symbol"><A NAME="ref_1186_35" HREF="terminal_interface-curses__ads.htm#ref_1153_35">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1187_35" HREF="terminal_interface-curses__ads.htm#ref_1154_35">Start</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1188_35" HREF="terminal_interface-curses__ads.htm#ref_1155_35">Count</A></span> : Positive; -+ <span class="symbol"><A NAME="ref_1189_35" HREF="terminal_interface-curses__ads.htm#ref_1156_35">State</A></span> : Boolean) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1191_16">Wtouchln</A></span> (<span class="symbol"><A NAME="ref_1191_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1192_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Sta</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1193_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Cnt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1194_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Chg</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wtouchln, "wtouchln"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1191_16">Wtouchln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1154_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1155_35">Start</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1156_35">Count</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1157_35">State</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1191_16">Wtouchln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1153_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1154_35">Start</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1155_35">Count</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1156_35">State</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1153_14">Change_Lines_Status</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1203_14" HREF="terminal_interface-curses__ads.htm#ref_1143_14">Touch</A></FONT> (<FONT COLOR=red><A NAME="ref_1203_21" HREF="terminal_interface-curses__ads.htm#ref_1143_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1203_14" HREF="terminal_interface-curses__ads.htm#ref_1142_14">Touch</A></span> (<span class="symbol"><A NAME="ref_1203_21" HREF="terminal_interface-curses__ads.htm#ref_1142_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_1205_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1206_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1205_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1206_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1143_21">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1205_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1206_7">X</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1229_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1142_21">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1205_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1206_7">X</A>); - <b>pragma</b> Unreferenced (<A HREF="terminal_interface-curses__adb.htm#ref_1206_7">X</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1143_21">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#ref_1205_7">Y</A>), True); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1143_14">Touch</A>; -+ <A HREF="terminal_interface-curses__ads.htm#ref_1153_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1142_21">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#ref_1205_7">Y</A>), True); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1142_14">Touch</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1213_14" HREF="terminal_interface-curses__ads.htm#ref_1138_14">Untouch</A></FONT> (<FONT COLOR=red><A NAME="ref_1213_23" HREF="terminal_interface-curses__ads.htm#ref_1138_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1213_14" HREF="terminal_interface-curses__ads.htm#ref_1137_14">Untouch</A></span> (<span class="symbol"><A NAME="ref_1213_23" HREF="terminal_interface-curses__ads.htm#ref_1137_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_1215_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1216_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1215_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1216_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1138_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1215_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1216_7">X</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1229_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1137_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1215_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1216_7">X</A>); - <b>pragma</b> Unreferenced (<A HREF="terminal_interface-curses__adb.htm#ref_1216_7">X</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1138_23">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#ref_1215_7">Y</A>), False); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1138_14">Untouch</A>; -+ <A HREF="terminal_interface-curses__ads.htm#ref_1153_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1137_23">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#ref_1215_7">Y</A>), False); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1137_14">Untouch</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1223_14" HREF="terminal_interface-curses__ads.htm#ref_1147_14">Touch</A></FONT> (<FONT COLOR=red><A NAME="ref_1223_21" HREF="terminal_interface-curses__ads.htm#ref_1147_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1224_21" HREF="terminal_interface-curses__ads.htm#ref_1148_21">Start</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1225_21" HREF="terminal_interface-curses__ads.htm#ref_1149_21">Count</A></FONT> : Positive) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1223_14" HREF="terminal_interface-curses__ads.htm#ref_1146_14">Touch</A></span> (<span class="symbol"><A NAME="ref_1223_21" HREF="terminal_interface-curses__ads.htm#ref_1146_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1224_21" HREF="terminal_interface-curses__ads.htm#ref_1147_21">Start</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1225_21" HREF="terminal_interface-curses__ads.htm#ref_1148_21">Count</A></span> : Positive) - <b>is</b> - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1147_21">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1148_21">Start</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1149_21">Count</A>, True); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1147_14">Touch</A>; -+ <A HREF="terminal_interface-curses__ads.htm#ref_1153_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1146_21">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1147_21">Start</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1148_21">Count</A>, True); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1146_14">Touch</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1231_13" HREF="terminal_interface-curses__ads.htm#ref_1162_13">Is_Touched</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1232_7" HREF="terminal_interface-curses__ads.htm#ref_1162_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1233_7" HREF="terminal_interface-curses__ads.htm#ref_1163_25">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_1231_13" HREF="terminal_interface-curses__ads.htm#ref_1161_13">Is_Touched</A></span> -+ (<span class="symbol"><A NAME="ref_1232_7" HREF="terminal_interface-curses__ads.htm#ref_1161_25">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1233_7" HREF="terminal_interface-curses__ads.htm#ref_1162_25">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1235_16">WLineTouched</A></FONT> (<FONT COLOR=red><A NAME="ref_1235_30" HREF="terminal_interface-curses__adb.htm#ref_1235_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1235_42" HREF="terminal_interface-curses__adb.htm#ref_1235_16">L</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1235_16">WLineTouched</A></span> (<span class="symbol"><A NAME="ref_1235_30" HREF="terminal_interface-curses__adb.htm#ref_1235_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1235_42" HREF="terminal_interface-curses__adb.htm#ref_1235_16">L</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, WLineTouched, "is_linetouched"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1235_16">WLineTouched</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1162_25">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1163_25">Line</A>)) = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1235_16">WLineTouched</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1161_25">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1162_25">Line</A>)) = <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1162_13">Is_Touched</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1161_13">Is_Touched</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1245_13" HREF="terminal_interface-curses__ads.htm#ref_1167_13">Is_Touched</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1246_7" HREF="terminal_interface-curses__ads.htm#ref_1167_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_1245_13" HREF="terminal_interface-curses__ads.htm#ref_1166_13">Is_Touched</A></span> -+ (<span class="symbol"><A NAME="ref_1246_7" HREF="terminal_interface-curses__ads.htm#ref_1166_25">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1248_16">WWinTouched</A></FONT> (<FONT COLOR=red><A NAME="ref_1248_29" HREF="terminal_interface-curses__adb.htm#ref_1248_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1248_16">WWinTouched</A></span> (<span class="symbol"><A NAME="ref_1248_29" HREF="terminal_interface-curses__adb.htm#ref_1248_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, WWinTouched, "is_wintouched"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1248_16">WWinTouched</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1167_25">Win</A>) = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1248_16">WWinTouched</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1166_25">Win</A>) = <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1167_13">Is_Touched</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1258_14" HREF="terminal_interface-curses__ads.htm#ref_1176_14">Copy</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1259_7" HREF="terminal_interface-curses__ads.htm#ref_1177_7">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1260_7" HREF="terminal_interface-curses__ads.htm#ref_1178_7">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1261_7" HREF="terminal_interface-curses__ads.htm#ref_1179_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1262_7" HREF="terminal_interface-curses__ads.htm#ref_1180_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1263_7" HREF="terminal_interface-curses__ads.htm#ref_1181_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1264_7" HREF="terminal_interface-curses__ads.htm#ref_1182_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1265_7" HREF="terminal_interface-curses__ads.htm#ref_1183_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1266_7" HREF="terminal_interface-curses__ads.htm#ref_1184_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1267_7" HREF="terminal_interface-curses__ads.htm#ref_1185_7">Non_Destructive_Mode</A></FONT> : Boolean := True) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1269_16">Copywin</A></FONT> (<FONT COLOR=red><A NAME="ref_1269_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1270_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1271_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Str</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1272_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Slc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1273_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dtr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1274_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dlc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1275_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dbr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1276_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Drc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1277_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Ndm</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1166_13">Is_Touched</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1258_14" HREF="terminal_interface-curses__ads.htm#ref_1175_14">Copy</A></span> -+ (<span class="symbol"><A NAME="ref_1259_7" HREF="terminal_interface-curses__ads.htm#ref_1176_7">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1260_7" HREF="terminal_interface-curses__ads.htm#ref_1177_7">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1261_7" HREF="terminal_interface-curses__ads.htm#ref_1178_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1262_7" HREF="terminal_interface-curses__ads.htm#ref_1179_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1263_7" HREF="terminal_interface-curses__ads.htm#ref_1180_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1264_7" HREF="terminal_interface-curses__ads.htm#ref_1181_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1265_7" HREF="terminal_interface-curses__ads.htm#ref_1182_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1266_7" HREF="terminal_interface-curses__ads.htm#ref_1183_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1267_7" HREF="terminal_interface-curses__ads.htm#ref_1184_7">Non_Destructive_Mode</A></span> : Boolean := True) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1269_16">Copywin</A></span> (<span class="symbol"><A NAME="ref_1269_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Src</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1270_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dst</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1271_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Str</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1272_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Slc</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1273_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dtr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1274_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dlc</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1275_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dbr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1276_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Drc</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1277_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Ndm</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Copywin, "copywin"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1269_16">Copywin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1177_7">Source_Window</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_1178_7">Destination_Window</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1179_7">Source_Top_Row</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1180_7">Source_Left_Column</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1181_7">Destination_Top_Row</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1182_7">Destination_Left_Column</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1183_7">Destination_Bottom_Row</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1184_7">Destination_Right_Column</A>), -- Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1185_7">Non_Destructive_Mode</A>) -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1269_16">Copywin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1176_7">Source_Window</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_1177_7">Destination_Window</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1178_7">Source_Top_Row</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1179_7">Source_Left_Column</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1180_7">Destination_Top_Row</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1181_7">Destination_Left_Column</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1182_7">Destination_Bottom_Row</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1183_7">Destination_Right_Column</A>), -+ Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1184_7">Non_Destructive_Mode</A>) - ) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1176_14">Copy</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1175_14">Copy</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1294_14" HREF="terminal_interface-curses__ads.htm#ref_1190_14">Overwrite</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1295_7" HREF="terminal_interface-curses__ads.htm#ref_1190_25">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1296_7" HREF="terminal_interface-curses__ads.htm#ref_1191_25">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1294_14" HREF="terminal_interface-curses__ads.htm#ref_1189_14">Overwrite</A></span> -+ (<span class="symbol"><A NAME="ref_1295_7" HREF="terminal_interface-curses__ads.htm#ref_1189_25">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1296_7" HREF="terminal_interface-curses__ads.htm#ref_1190_25">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1298_16">Overwrite</A></FONT> (<FONT COLOR=red><A NAME="ref_1298_27" HREF="terminal_interface-curses__adb.htm#ref_1298_16">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1298_41" HREF="terminal_interface-curses__adb.htm#ref_1298_16">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1298_16">Overwrite</A></span> (<span class="symbol"><A NAME="ref_1298_27" HREF="terminal_interface-curses__adb.htm#ref_1298_16">Src</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1298_41" HREF="terminal_interface-curses__adb.htm#ref_1298_16">Dst</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Overwrite, "overwrite"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1298_16">Overwrite</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1190_25">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1191_25">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1298_16">Overwrite</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1189_25">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1190_25">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1190_14">Overwrite</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1189_14">Overwrite</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1306_14" HREF="terminal_interface-curses__ads.htm#ref_1196_14">Overlay</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1307_7" HREF="terminal_interface-curses__ads.htm#ref_1196_23">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1308_7" HREF="terminal_interface-curses__ads.htm#ref_1197_23">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1306_14" HREF="terminal_interface-curses__ads.htm#ref_1195_14">Overlay</A></span> -+ (<span class="symbol"><A NAME="ref_1307_7" HREF="terminal_interface-curses__ads.htm#ref_1195_23">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1308_7" HREF="terminal_interface-curses__ads.htm#ref_1196_23">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1310_16">Overlay</A></FONT> (<FONT COLOR=red><A NAME="ref_1310_25" HREF="terminal_interface-curses__adb.htm#ref_1310_16">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1310_39" HREF="terminal_interface-curses__adb.htm#ref_1310_16">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1310_16">Overlay</A></span> (<span class="symbol"><A NAME="ref_1310_25" HREF="terminal_interface-curses__adb.htm#ref_1310_16">Src</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1310_39" HREF="terminal_interface-curses__adb.htm#ref_1310_16">Dst</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Overlay, "overlay"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1310_16">Overlay</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1196_23">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1197_23">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1310_16">Overlay</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1195_23">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1196_23">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1196_14">Overlay</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1195_14">Overlay</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1319_14" HREF="terminal_interface-curses__ads.htm#ref_1206_14">Insert_Delete_Lines</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1320_7" HREF="terminal_interface-curses__ads.htm#ref_1207_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1321_7" HREF="terminal_interface-curses__ads.htm#ref_1208_7">Lines</A></FONT> : Integer := 1) <FONT COLOR=green><EM>-- default is to insert one line above</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1319_14" HREF="terminal_interface-curses__ads.htm#ref_1205_14">Insert_Delete_Lines</A></span> -+ (<span class="symbol"><A NAME="ref_1320_7" HREF="terminal_interface-curses__ads.htm#ref_1206_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1321_7" HREF="terminal_interface-curses__ads.htm#ref_1207_7">Lines</A></span> : Integer := 1) <span class="comment"><EM>-- default is to insert one line above</EM></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1323_16">Winsdelln</A></FONT> (<FONT COLOR=red><A NAME="ref_1323_27" HREF="terminal_interface-curses__adb.htm#ref_1323_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1323_39" HREF="terminal_interface-curses__adb.htm#ref_1323_16">N</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1323_16">Winsdelln</A></span> (<span class="symbol"><A NAME="ref_1323_27" HREF="terminal_interface-curses__adb.htm#ref_1323_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1323_39" HREF="terminal_interface-curses__adb.htm#ref_1323_16">N</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Winsdelln, "winsdelln"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1323_16">Winsdelln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1207_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1208_7">Lines</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1323_16">Winsdelln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1206_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1207_7">Lines</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1206_14">Insert_Delete_Lines</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1205_14">Insert_Delete_Lines</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1331_14" HREF="terminal_interface-curses__ads.htm#ref_1214_14">Delete_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_1331_27" HREF="terminal_interface-curses__ads.htm#ref_1214_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1331_14" HREF="terminal_interface-curses__ads.htm#ref_1213_14">Delete_Line</A></span> (<span class="symbol"><A NAME="ref_1331_27" HREF="terminal_interface-curses__ads.htm#ref_1213_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1206_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1214_27">Win</A>, -1); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1214_14">Delete_Line</A>; -+ <A HREF="terminal_interface-curses__ads.htm#ref_1205_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1213_27">Win</A>, -1); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1213_14">Delete_Line</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1337_14" HREF="terminal_interface-curses__ads.htm#ref_1220_14">Insert_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_1337_27" HREF="terminal_interface-curses__ads.htm#ref_1220_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1337_14" HREF="terminal_interface-curses__ads.htm#ref_1219_14">Insert_Line</A></span> (<span class="symbol"><A NAME="ref_1337_27" HREF="terminal_interface-curses__ads.htm#ref_1219_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1206_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1220_27">Win</A>, 1); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1220_14">Insert_Line</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+ <A HREF="terminal_interface-curses__ads.htm#ref_1205_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1219_27">Win</A>, 1); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1219_14">Insert_Line</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1344_14" HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1345_7" HREF="terminal_interface-curses__ads.htm#ref_1231_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1346_7" HREF="terminal_interface-curses__ads.htm#ref_1232_7">Number_Of_Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_1347_7" HREF="terminal_interface-curses__ads.htm#ref_1233_7">Number_Of_Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1344_14" HREF="terminal_interface-curses__ads.htm#ref_1229_14">Get_Size</A></span> -+ (<span class="symbol"><A NAME="ref_1345_7" HREF="terminal_interface-curses__ads.htm#ref_1230_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1346_7" HREF="terminal_interface-curses__ads.htm#ref_1231_7">Number_Of_Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_1347_7" HREF="terminal_interface-curses__ads.htm#ref_1232_7">Number_Of_Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1349_16">GetMaxY</A></FONT> (<FONT COLOR=red><A NAME="ref_1349_25" HREF="terminal_interface-curses__adb.htm#ref_1349_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1349_16">GetMaxY</A></span> (<span class="symbol"><A NAME="ref_1349_25" HREF="terminal_interface-curses__adb.htm#ref_1349_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, GetMaxY, "getmaxy"); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1352_16">GetMaxX</A></FONT> (<FONT COLOR=red><A NAME="ref_1352_25" HREF="terminal_interface-curses__adb.htm#ref_1352_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1352_16">GetMaxX</A></span> (<span class="symbol"><A NAME="ref_1352_25" HREF="terminal_interface-curses__adb.htm#ref_1352_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, GetMaxX, "getmaxx"); - -- <FONT COLOR=red><A NAME="ref_1355_7">Y</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1349_16">GetMaxY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1231_7">Win</A>); -- <FONT COLOR=red><A NAME="ref_1356_7">X</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1352_16">GetMaxX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1231_7">Win</A>); -+ <span class="symbol"><A NAME="ref_1355_7">Y</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1349_16">GetMaxY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1230_7">Win</A>); -+ <span class="symbol"><A NAME="ref_1356_7">X</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1352_16">GetMaxX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1230_7">Win</A>); - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1232_7">Number_Of_Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1355_7">Y</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1233_7">Number_Of_Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1356_7">X</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1362_14" HREF="terminal_interface-curses__ads.htm#ref_1238_14">Get_Window_Position</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1363_7" HREF="terminal_interface-curses__ads.htm#ref_1239_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1364_7" HREF="terminal_interface-curses__ads.htm#ref_1240_7">Top_Left_Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1365_7" HREF="terminal_interface-curses__ads.htm#ref_1241_7">Top_Left_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <A HREF="terminal_interface-curses__ads.htm#ref_1231_7">Number_Of_Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1355_7">Y</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1232_7">Number_Of_Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1356_7">X</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1229_14">Get_Size</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1362_14" HREF="terminal_interface-curses__ads.htm#ref_1237_14">Get_Window_Position</A></span> -+ (<span class="symbol"><A NAME="ref_1363_7" HREF="terminal_interface-curses__ads.htm#ref_1238_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1364_7" HREF="terminal_interface-curses__ads.htm#ref_1239_7">Top_Left_Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1365_7" HREF="terminal_interface-curses__ads.htm#ref_1240_7">Top_Left_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1367_16">GetBegY</A></FONT> (<FONT COLOR=red><A NAME="ref_1367_25" HREF="terminal_interface-curses__adb.htm#ref_1367_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1367_16">GetBegY</A></span> (<span class="symbol"><A NAME="ref_1367_25" HREF="terminal_interface-curses__adb.htm#ref_1367_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, GetBegY, "getbegy"); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1370_16">GetBegX</A></FONT> (<FONT COLOR=red><A NAME="ref_1370_25" HREF="terminal_interface-curses__adb.htm#ref_1370_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1370_16">GetBegX</A></span> (<span class="symbol"><A NAME="ref_1370_25" HREF="terminal_interface-curses__adb.htm#ref_1370_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, GetBegX, "getbegx"); - -- <FONT COLOR=red><A NAME="ref_1373_7">Y</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1367_16">GetBegY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1239_7">Win</A>)); -- <FONT COLOR=red><A NAME="ref_1374_7">X</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1370_16">GetBegX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1239_7">Win</A>)); -+ <span class="symbol"><A NAME="ref_1373_7">Y</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1367_16">GetBegY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1238_7">Win</A>)); -+ <span class="symbol"><A NAME="ref_1374_7">X</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1370_16">GetBegX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1238_7">Win</A>)); - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1240_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1373_7">Y</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1241_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1374_7">X</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1238_14">Get_Window_Position</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1380_14" HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1381_7" HREF="terminal_interface-curses__ads.htm#ref_1247_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1382_7" HREF="terminal_interface-curses__ads.htm#ref_1248_7">Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1383_7" HREF="terminal_interface-curses__ads.htm#ref_1249_7">Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <A HREF="terminal_interface-curses__ads.htm#ref_1239_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1373_7">Y</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1240_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1374_7">X</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1237_14">Get_Window_Position</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1380_14" HREF="terminal_interface-curses__ads.htm#ref_1245_14">Get_Cursor_Position</A></span> -+ (<span class="symbol"><A NAME="ref_1381_7" HREF="terminal_interface-curses__ads.htm#ref_1246_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1382_7" HREF="terminal_interface-curses__ads.htm#ref_1247_7">Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1383_7" HREF="terminal_interface-curses__ads.htm#ref_1248_7">Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1385_16">GetCurY</A></FONT> (<FONT COLOR=red><A NAME="ref_1385_25" HREF="terminal_interface-curses__adb.htm#ref_1385_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1385_16">GetCurY</A></span> (<span class="symbol"><A NAME="ref_1385_25" HREF="terminal_interface-curses__adb.htm#ref_1385_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, GetCurY, "getcury"); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1388_16">GetCurX</A></FONT> (<FONT COLOR=red><A NAME="ref_1388_25" HREF="terminal_interface-curses__adb.htm#ref_1388_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1388_16">GetCurX</A></span> (<span class="symbol"><A NAME="ref_1388_25" HREF="terminal_interface-curses__adb.htm#ref_1388_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, GetCurX, "getcurx"); - -- <FONT COLOR=red><A NAME="ref_1391_7">Y</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1385_16">GetCurY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1247_7">Win</A>)); -- <FONT COLOR=red><A NAME="ref_1392_7">X</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1388_16">GetCurX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1247_7">Win</A>)); -+ <span class="symbol"><A NAME="ref_1391_7">Y</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1385_16">GetCurY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1246_7">Win</A>)); -+ <span class="symbol"><A NAME="ref_1392_7">X</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1388_16">GetCurX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1246_7">Win</A>)); - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1248_7">Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1391_7">Y</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1249_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1392_7">X</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1398_14" HREF="terminal_interface-curses__ads.htm#ref_1254_14">Get_Origin_Relative_To_Parent</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1399_7" HREF="terminal_interface-curses__ads.htm#ref_1255_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1400_7" HREF="terminal_interface-curses__ads.htm#ref_1256_7">Top_Left_Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1401_7" HREF="terminal_interface-curses__ads.htm#ref_1257_7">Top_Left_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1402_7" HREF="terminal_interface-curses__ads.htm#ref_1258_7">Is_Not_A_Subwindow</A></FONT> : <b>out</b> Boolean) -+ <A HREF="terminal_interface-curses__ads.htm#ref_1247_7">Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1391_7">Y</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1248_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1392_7">X</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1245_14">Get_Cursor_Position</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1398_14" HREF="terminal_interface-curses__ads.htm#ref_1253_14">Get_Origin_Relative_To_Parent</A></span> -+ (<span class="symbol"><A NAME="ref_1399_7" HREF="terminal_interface-curses__ads.htm#ref_1254_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1400_7" HREF="terminal_interface-curses__ads.htm#ref_1255_7">Top_Left_Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1401_7" HREF="terminal_interface-curses__ads.htm#ref_1256_7">Top_Left_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1402_7" HREF="terminal_interface-curses__ads.htm#ref_1257_7">Is_Not_A_Subwindow</A></span> : <b>out</b> Boolean) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1404_16">GetParY</A></FONT> (<FONT COLOR=red><A NAME="ref_1404_25" HREF="terminal_interface-curses__adb.htm#ref_1404_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1404_16">GetParY</A></span> (<span class="symbol"><A NAME="ref_1404_25" HREF="terminal_interface-curses__adb.htm#ref_1404_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, GetParY, "getpary"); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1407_16">GetParX</A></FONT> (<FONT COLOR=red><A NAME="ref_1407_25" HREF="terminal_interface-curses__adb.htm#ref_1407_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1407_16">GetParX</A></span> (<span class="symbol"><A NAME="ref_1407_25" HREF="terminal_interface-curses__adb.htm#ref_1407_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, GetParX, "getparx"); - -- <FONT COLOR=red><A NAME="ref_1410_7">Y</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1404_16">GetParY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1255_7">Win</A>); -- <FONT COLOR=red><A NAME="ref_1411_7">X</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1407_16">GetParX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1255_7">Win</A>); -+ <span class="symbol"><A NAME="ref_1410_7">Y</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1404_16">GetParY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1254_7">Win</A>); -+ <span class="symbol"><A NAME="ref_1411_7">X</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1407_16">GetParX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1254_7">Win</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1410_7">Y</A> = -1 <b>then</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1256_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'Last; -- <A HREF="terminal_interface-curses__ads.htm#ref_1257_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'Last; -- <A HREF="terminal_interface-curses__ads.htm#ref_1258_7">Is_Not_A_Subwindow</A> := True; -- <b>else</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1256_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1410_7">Y</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1257_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1411_7">X</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1258_7">Is_Not_A_Subwindow</A> := False; -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1254_14">Get_Origin_Relative_To_Parent</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1424_13" HREF="terminal_interface-curses__ads.htm#ref_1269_13">New_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_1424_22" HREF="terminal_interface-curses__ads.htm#ref_1269_22">Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_1425_22" HREF="terminal_interface-curses__ads.htm#ref_1270_22">Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <A HREF="terminal_interface-curses__ads.htm#ref_1255_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'Last; -+ <A HREF="terminal_interface-curses__ads.htm#ref_1256_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'Last; -+ <A HREF="terminal_interface-curses__ads.htm#ref_1257_7">Is_Not_A_Subwindow</A> := True; -+ <b>else</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_1255_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1410_7">Y</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1256_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1411_7">X</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1257_7">Is_Not_A_Subwindow</A> := False; -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1253_14">Get_Origin_Relative_To_Parent</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1424_13" HREF="terminal_interface-curses__ads.htm#ref_1268_13">New_Pad</A></span> (<span class="symbol"><A NAME="ref_1424_22" HREF="terminal_interface-curses__ads.htm#ref_1268_22">Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_1425_22" HREF="terminal_interface-curses__ads.htm#ref_1269_22">Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1427_16">Newpad</A></FONT> (<FONT COLOR=red><A NAME="ref_1427_24" HREF="terminal_interface-curses__adb.htm#ref_1427_16">Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <FONT COLOR=red><A NAME="ref_1427_39" HREF="terminal_interface-curses__adb.htm#ref_1427_16">Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1427_16">Newpad</A></span> (<span class="symbol"><A NAME="ref_1427_24" HREF="terminal_interface-curses__adb.htm#ref_1427_16">Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <span class="symbol"><A NAME="ref_1427_39" HREF="terminal_interface-curses__adb.htm#ref_1427_16">Columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Newpad, "newpad"); - -- <FONT COLOR=red><A NAME="ref_1430_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1430_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_1430_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1427_16">Newpad</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1269_22">Lines</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1270_22">Columns</A>)); -+ <A HREF="terminal_interface-curses__adb.htm#ref_1430_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1427_16">Newpad</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1268_22">Lines</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1269_22">Columns</A>)); - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1430_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1430_7">W</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1269_13">New_Pad</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1268_13">New_Pad</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1439_13" HREF="terminal_interface-curses__ads.htm#ref_1275_13">Sub_Pad</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1440_7" HREF="terminal_interface-curses__ads.htm#ref_1276_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1441_7" HREF="terminal_interface-curses__ads.htm#ref_1277_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_1442_7" HREF="terminal_interface-curses__ads.htm#ref_1278_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_1443_7" HREF="terminal_interface-curses__ads.htm#ref_1279_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1444_7" HREF="terminal_interface-curses__ads.htm#ref_1280_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1446_16">Subpad</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1447_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1448_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1449_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1450_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1451_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1439_13" HREF="terminal_interface-curses__ads.htm#ref_1274_13">Sub_Pad</A></span> -+ (<span class="symbol"><A NAME="ref_1440_7" HREF="terminal_interface-curses__ads.htm#ref_1275_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1441_7" HREF="terminal_interface-curses__ads.htm#ref_1276_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_1442_7" HREF="terminal_interface-curses__ads.htm#ref_1277_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_1443_7" HREF="terminal_interface-curses__ads.htm#ref_1278_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1444_7" HREF="terminal_interface-curses__ads.htm#ref_1279_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1446_16">Subpad</A></span> -+ (<span class="symbol"><A NAME="ref_1447_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1448_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1449_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1450_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">First_Line_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1451_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">First_Column_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Subpad, "subpad"); - -- <FONT COLOR=red><A NAME="ref_1454_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1454_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_1454_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1446_16">Subpad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1276_7">Pad</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1277_7">Number_Of_Lines</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1278_7">Number_Of_Columns</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1279_7">First_Line_Position</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1280_7">First_Column_Position</A>)); -+ <A HREF="terminal_interface-curses__adb.htm#ref_1454_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1446_16">Subpad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1275_7">Pad</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1276_7">Number_Of_Lines</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1277_7">Number_Of_Columns</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1278_7">First_Line_Position</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1279_7">First_Column_Position</A>)); - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1454_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1454_7">W</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1275_13">Sub_Pad</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1274_13">Sub_Pad</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1467_14" HREF="terminal_interface-curses__ads.htm#ref_1285_14">Refresh</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1468_7" HREF="terminal_interface-curses__ads.htm#ref_1286_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1469_7" HREF="terminal_interface-curses__ads.htm#ref_1287_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1470_7" HREF="terminal_interface-curses__ads.htm#ref_1288_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1471_7" HREF="terminal_interface-curses__ads.htm#ref_1289_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1472_7" HREF="terminal_interface-curses__ads.htm#ref_1290_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1473_7" HREF="terminal_interface-curses__ads.htm#ref_1291_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1474_7" HREF="terminal_interface-curses__ads.htm#ref_1292_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1476_16">Prefresh</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1477_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1478_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1479_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1480_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1481_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1482_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1483_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1467_14" HREF="terminal_interface-curses__ads.htm#ref_1284_14">Refresh</A></span> -+ (<span class="symbol"><A NAME="ref_1468_7" HREF="terminal_interface-curses__ads.htm#ref_1285_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1469_7" HREF="terminal_interface-curses__ads.htm#ref_1286_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1470_7" HREF="terminal_interface-curses__ads.htm#ref_1287_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1471_7" HREF="terminal_interface-curses__ads.htm#ref_1288_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1472_7" HREF="terminal_interface-curses__ads.htm#ref_1289_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1473_7" HREF="terminal_interface-curses__ads.htm#ref_1290_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1474_7" HREF="terminal_interface-curses__ads.htm#ref_1291_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1476_16">Prefresh</A></span> -+ (<span class="symbol"><A NAME="ref_1477_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1478_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1479_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1480_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1481_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1482_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1483_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Prefresh, "prefresh"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1476_16">Prefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1286_7">Pad</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1287_7">Source_Top_Row</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1288_7">Source_Left_Column</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1289_7">Destination_Top_Row</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1290_7">Destination_Left_Column</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1291_7">Destination_Bottom_Row</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1292_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1285_14">Refresh</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1497_14" HREF="terminal_interface-curses__ads.htm#ref_1297_14">Refresh_Without_Update</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1498_7" HREF="terminal_interface-curses__ads.htm#ref_1298_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1499_7" HREF="terminal_interface-curses__ads.htm#ref_1299_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1500_7" HREF="terminal_interface-curses__ads.htm#ref_1300_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1501_7" HREF="terminal_interface-curses__ads.htm#ref_1301_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1502_7" HREF="terminal_interface-curses__ads.htm#ref_1302_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1503_7" HREF="terminal_interface-curses__ads.htm#ref_1303_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1504_7" HREF="terminal_interface-curses__ads.htm#ref_1304_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1506_16">Pnoutrefresh</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1507_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1508_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1509_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1510_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1511_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1512_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1513_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1476_16">Prefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1285_7">Pad</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1286_7">Source_Top_Row</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1287_7">Source_Left_Column</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1288_7">Destination_Top_Row</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1289_7">Destination_Left_Column</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1290_7">Destination_Bottom_Row</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1291_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1284_14">Refresh</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1497_14" HREF="terminal_interface-curses__ads.htm#ref_1296_14">Refresh_Without_Update</A></span> -+ (<span class="symbol"><A NAME="ref_1498_7" HREF="terminal_interface-curses__ads.htm#ref_1297_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1499_7" HREF="terminal_interface-curses__ads.htm#ref_1298_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1500_7" HREF="terminal_interface-curses__ads.htm#ref_1299_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1501_7" HREF="terminal_interface-curses__ads.htm#ref_1300_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1502_7" HREF="terminal_interface-curses__ads.htm#ref_1301_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1503_7" HREF="terminal_interface-curses__ads.htm#ref_1302_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1504_7" HREF="terminal_interface-curses__ads.htm#ref_1303_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1506_16">Pnoutrefresh</A></span> -+ (<span class="symbol"><A NAME="ref_1507_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1508_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1509_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1510_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1511_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1512_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1513_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Pnoutrefresh, "pnoutrefresh"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1506_16">Pnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1298_7">Pad</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1299_7">Source_Top_Row</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1300_7">Source_Left_Column</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1301_7">Destination_Top_Row</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1302_7">Destination_Left_Column</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1303_7">Destination_Bottom_Row</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1304_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1297_14">Refresh_Without_Update</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1527_14" HREF="terminal_interface-curses__ads.htm#ref_1309_14">Add_Character_To_Pad_And_Echo_It</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1528_7" HREF="terminal_interface-curses__ads.htm#ref_1310_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1529_7" HREF="terminal_interface-curses__ads.htm#ref_1311_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1506_16">Pnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1297_7">Pad</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1298_7">Source_Top_Row</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1299_7">Source_Left_Column</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1300_7">Destination_Top_Row</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1301_7">Destination_Left_Column</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1302_7">Destination_Bottom_Row</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1303_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1296_14">Refresh_Without_Update</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1527_14" HREF="terminal_interface-curses__ads.htm#ref_1308_14">Add_Character_To_Pad_And_Echo_It</A></span> -+ (<span class="symbol"><A NAME="ref_1528_7" HREF="terminal_interface-curses__ads.htm#ref_1309_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1529_7" HREF="terminal_interface-curses__ads.htm#ref_1310_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1531_16">Pechochar</A></FONT> (<FONT COLOR=red><A NAME="ref_1531_27" HREF="terminal_interface-curses__adb.htm#ref_1531_16">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1531_41" HREF="terminal_interface-curses__adb.htm#ref_1531_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_1531_16">Pechochar</A></span> (<span class="symbol"><A NAME="ref_1531_27" HREF="terminal_interface-curses__adb.htm#ref_1531_16">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1531_41" HREF="terminal_interface-curses__adb.htm#ref_1531_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Pechochar, "pechochar"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1531_16">Pechochar</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1310_7">Pad</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1311_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1531_16">Pechochar</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1309_7">Pad</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1310_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1309_14">Add_Character_To_Pad_And_Echo_It</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1308_14">Add_Character_To_Pad_And_Echo_It</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1540_14" HREF="terminal_interface-curses__ads.htm#ref_1314_14">Add_Character_To_Pad_And_Echo_It</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1541_7" HREF="terminal_interface-curses__ads.htm#ref_1315_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1542_7" HREF="terminal_interface-curses__ads.htm#ref_1316_7">Ch</A></FONT> : Character) -- <b>is</b> -- <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1309_14">Add_Character_To_Pad_And_Echo_It</A> -- (<A HREF="terminal_interface-curses__ads.htm#ref_1315_7">Pad</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1316_7">Ch</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>)); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1314_14">Add_Character_To_Pad_And_Echo_It</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1552_14" HREF="terminal_interface-curses__ads.htm#ref_1324_14">Scroll</A></FONT> (<FONT COLOR=red><A NAME="ref_1552_22" HREF="terminal_interface-curses__ads.htm#ref_1324_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1553_22" HREF="terminal_interface-curses__ads.htm#ref_1325_22">Amount</A></FONT> : Integer := 1) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1540_14" HREF="terminal_interface-curses__ads.htm#ref_1313_14">Add_Character_To_Pad_And_Echo_It</A></span> -+ (<span class="symbol"><A NAME="ref_1541_7" HREF="terminal_interface-curses__ads.htm#ref_1314_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1542_7" HREF="terminal_interface-curses__ads.htm#ref_1315_7">Ch</A></span> : Character) -+ <b>is</b> -+ <b>begin</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_1308_14">Add_Character_To_Pad_And_Echo_It</A> -+ (<A HREF="terminal_interface-curses__ads.htm#ref_1314_7">Pad</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1315_7">Ch</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1313_14">Add_Character_To_Pad_And_Echo_It</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1552_14" HREF="terminal_interface-curses__ads.htm#ref_1323_14">Scroll</A></span> (<span class="symbol"><A NAME="ref_1552_22" HREF="terminal_interface-curses__ads.htm#ref_1323_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1553_22" HREF="terminal_interface-curses__ads.htm#ref_1324_22">Amount</A></span> : Integer := 1) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1555_16">Wscrl</A></FONT> (<FONT COLOR=red><A NAME="ref_1555_23" HREF="terminal_interface-curses__adb.htm#ref_1555_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1555_37" HREF="terminal_interface-curses__adb.htm#ref_1555_16">N</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1555_16">Wscrl</A></span> (<span class="symbol"><A NAME="ref_1555_23" HREF="terminal_interface-curses__adb.htm#ref_1555_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1555_37" HREF="terminal_interface-curses__adb.htm#ref_1555_16">N</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wscrl, "wscrl"); - - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1555_16">Wscrl</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1324_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1325_22">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1555_16">Wscrl</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1323_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1324_22">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1324_14">Scroll</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1323_14">Scroll</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1565_14" HREF="terminal_interface-curses__ads.htm#ref_1336_14">Delete_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_1565_32" HREF="terminal_interface-curses__ads.htm#ref_1336_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1565_14" HREF="terminal_interface-curses__ads.htm#ref_1335_14">Delete_Character</A></span> (<span class="symbol"><A NAME="ref_1565_32" HREF="terminal_interface-curses__ads.htm#ref_1335_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1567_16">Wdelch</A></FONT> (<FONT COLOR=red><A NAME="ref_1567_24" HREF="terminal_interface-curses__adb.htm#ref_1567_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1567_16">Wdelch</A></span> (<span class="symbol"><A NAME="ref_1567_24" HREF="terminal_interface-curses__adb.htm#ref_1567_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wdelch, "wdelch"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1567_16">Wdelch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1336_32">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1567_16">Wdelch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1335_32">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1336_14">Delete_Character</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1335_14">Delete_Character</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1575_14" HREF="terminal_interface-curses__ads.htm#ref_1341_14">Delete_Character</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1576_7" HREF="terminal_interface-curses__ads.htm#ref_1342_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1577_7" HREF="terminal_interface-curses__ads.htm#ref_1343_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1578_7" HREF="terminal_interface-curses__ads.htm#ref_1344_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1580_16">Mvwdelch</A></FONT> (<FONT COLOR=red><A NAME="ref_1580_26" HREF="terminal_interface-curses__adb.htm#ref_1580_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1581_26" HREF="terminal_interface-curses__adb.htm#ref_1580_16">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1582_26" HREF="terminal_interface-curses__adb.htm#ref_1580_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1575_14" HREF="terminal_interface-curses__ads.htm#ref_1340_14">Delete_Character</A></span> -+ (<span class="symbol"><A NAME="ref_1576_7" HREF="terminal_interface-curses__ads.htm#ref_1341_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1577_7" HREF="terminal_interface-curses__ads.htm#ref_1342_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1578_7" HREF="terminal_interface-curses__ads.htm#ref_1343_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1580_16">Mvwdelch</A></span> (<span class="symbol"><A NAME="ref_1580_26" HREF="terminal_interface-curses__adb.htm#ref_1580_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1581_26" HREF="terminal_interface-curses__adb.htm#ref_1580_16">Lin</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1582_26" HREF="terminal_interface-curses__adb.htm#ref_1580_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Mvwdelch, "mvwdelch"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1580_16">Mvwdelch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1342_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1343_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1344_7">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1580_16">Mvwdelch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1341_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1342_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1343_7">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1341_14">Delete_Character</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1590_13" HREF="terminal_interface-curses__ads.htm#ref_1354_13">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1590_19" HREF="terminal_interface-curses__ads.htm#ref_1354_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1340_14">Delete_Character</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1590_13" HREF="terminal_interface-curses__ads.htm#ref_1353_13">Peek</A></span> (<span class="symbol"><A NAME="ref_1590_19" HREF="terminal_interface-curses__ads.htm#ref_1353_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1593_16">Winch</A></FONT> (<FONT COLOR=red><A NAME="ref_1593_23" HREF="terminal_interface-curses__adb.htm#ref_1593_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1593_16">Winch</A></span> (<span class="symbol"><A NAME="ref_1593_23" HREF="terminal_interface-curses__adb.htm#ref_1593_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Winch, "winch"); - <b>begin</b> -- <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1593_16">Winch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1354_19">Win</A>)); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1354_13">Peek</A>; -+ <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1593_16">Winch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1353_19">Win</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1353_13">Peek</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1599_13" HREF="terminal_interface-curses__ads.htm#ref_1360_13">Peek</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1600_7" HREF="terminal_interface-curses__ads.htm#ref_1361_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1601_7" HREF="terminal_interface-curses__ads.htm#ref_1362_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1602_7" HREF="terminal_interface-curses__ads.htm#ref_1363_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1604_16">Mvwinch</A></FONT> (<FONT COLOR=red><A NAME="ref_1604_25" HREF="terminal_interface-curses__adb.htm#ref_1604_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1605_25" HREF="terminal_interface-curses__adb.htm#ref_1604_16">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1606_25" HREF="terminal_interface-curses__adb.htm#ref_1604_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1599_13" HREF="terminal_interface-curses__ads.htm#ref_1359_13">Peek</A></span> -+ (<span class="symbol"><A NAME="ref_1600_7" HREF="terminal_interface-curses__ads.htm#ref_1360_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1601_7" HREF="terminal_interface-curses__ads.htm#ref_1361_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1602_7" HREF="terminal_interface-curses__ads.htm#ref_1362_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1604_16">Mvwinch</A></span> (<span class="symbol"><A NAME="ref_1604_25" HREF="terminal_interface-curses__adb.htm#ref_1604_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1605_25" HREF="terminal_interface-curses__adb.htm#ref_1604_16">Lin</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1606_25" HREF="terminal_interface-curses__adb.htm#ref_1604_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Mvwinch, "mvwinch"); - <b>begin</b> -- <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1604_16">Mvwinch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1361_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1362_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1363_7">Column</A>))); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1360_13">Peek</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1612_14" HREF="terminal_interface-curses__ads.htm#ref_1373_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1612_22" HREF="terminal_interface-curses__ads.htm#ref_1373_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1613_22" HREF="terminal_interface-curses__ads.htm#ref_1374_22">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) -+ <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1604_16">Mvwinch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1360_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1361_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1362_7">Column</A>))); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1359_13">Peek</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1612_14" HREF="terminal_interface-curses__ads.htm#ref_1372_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1612_22" HREF="terminal_interface-curses__ads.htm#ref_1372_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1613_22" HREF="terminal_interface-curses__ads.htm#ref_1373_22">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1615_16">Winsch</A></FONT> (<FONT COLOR=red><A NAME="ref_1615_24" HREF="terminal_interface-curses__adb.htm#ref_1615_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1615_38" HREF="terminal_interface-curses__adb.htm#ref_1615_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1615_16">Winsch</A></span> (<span class="symbol"><A NAME="ref_1615_24" HREF="terminal_interface-curses__adb.htm#ref_1615_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_1615_38" HREF="terminal_interface-curses__adb.htm#ref_1615_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Winsch, "winsch"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1615_16">Winsch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1373_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1374_22">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1615_16">Winsch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1372_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1373_22">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1373_14">Insert</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1372_14">Insert</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1623_14" HREF="terminal_interface-curses__ads.htm#ref_1379_14">Insert</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1624_7" HREF="terminal_interface-curses__ads.htm#ref_1379_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1625_7" HREF="terminal_interface-curses__ads.htm#ref_1380_22">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1626_7" HREF="terminal_interface-curses__ads.htm#ref_1381_22">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1627_7" HREF="terminal_interface-curses__ads.htm#ref_1382_22">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1629_16">Mvwinsch</A></FONT> (<FONT COLOR=red><A NAME="ref_1629_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1630_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1631_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1632_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1623_14" HREF="terminal_interface-curses__ads.htm#ref_1378_14">Insert</A></span> -+ (<span class="symbol"><A NAME="ref_1624_7" HREF="terminal_interface-curses__ads.htm#ref_1378_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1625_7" HREF="terminal_interface-curses__ads.htm#ref_1379_22">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1626_7" HREF="terminal_interface-curses__ads.htm#ref_1380_22">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1627_7" HREF="terminal_interface-curses__ads.htm#ref_1381_22">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1629_16">Mvwinsch</A></span> (<span class="symbol"><A NAME="ref_1629_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1630_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Lin</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1631_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1632_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Mvwinsch, "mvwinsch"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1629_16">Mvwinsch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1379_22">Win</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1380_22">Line</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1381_22">Column</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1382_22">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1379_14">Insert</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1643_14" HREF="terminal_interface-curses__ads.htm#ref_1391_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1643_22" HREF="terminal_interface-curses__ads.htm#ref_1391_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1644_22" HREF="terminal_interface-curses__ads.htm#ref_1392_22">Str</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_1645_22" HREF="terminal_interface-curses__ads.htm#ref_1393_22">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1647_16">Winsnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_1647_26" HREF="terminal_interface-curses__adb.htm#ref_1647_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1648_26" HREF="terminal_interface-curses__adb.htm#ref_1647_16">Str</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_1649_26" HREF="terminal_interface-curses__adb.htm#ref_1647_16">Len</A></FONT> : Integer := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1629_16">Mvwinsch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1378_22">Win</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1379_22">Line</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1380_22">Column</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1381_22">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1378_14">Insert</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1643_14" HREF="terminal_interface-curses__ads.htm#ref_1390_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1643_22" HREF="terminal_interface-curses__ads.htm#ref_1390_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1644_22" HREF="terminal_interface-curses__ads.htm#ref_1391_22">Str</A></span> : String; -+ <span class="symbol"><A NAME="ref_1645_22" HREF="terminal_interface-curses__ads.htm#ref_1392_22">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1647_16">Winsnstr</A></span> (<span class="symbol"><A NAME="ref_1647_26" HREF="terminal_interface-curses__adb.htm#ref_1647_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1648_26" HREF="terminal_interface-curses__adb.htm#ref_1647_16">Str</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_1649_26" HREF="terminal_interface-curses__adb.htm#ref_1647_16">Len</A></span> : Integer := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Winsnstr, "winsnstr"); - -- <FONT COLOR=red><A NAME="ref_1652_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1392_22">Str</A>'Length); -- <FONT COLOR=red><A NAME="ref_1653_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_1652_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1391_22">Str</A>'Length); -+ <span class="symbol"><A NAME="ref_1653_7">Length</A></span> : size_t; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1392_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1652_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1653_7">Length</A>); -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1647_16">Winsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1391_22">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1652_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1393_22">Len</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1391_14">Insert</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1661_14" HREF="terminal_interface-curses__ads.htm#ref_1400_14">Insert</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1662_7" HREF="terminal_interface-curses__ads.htm#ref_1400_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1663_7" HREF="terminal_interface-curses__ads.htm#ref_1401_22">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1664_7" HREF="terminal_interface-curses__ads.htm#ref_1402_22">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1665_7" HREF="terminal_interface-curses__ads.htm#ref_1403_22">Str</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_1666_7" HREF="terminal_interface-curses__ads.htm#ref_1404_22">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1668_16">Mvwinsnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_1668_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1669_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1670_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1671_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Str</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_1672_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1391_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1652_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1653_7">Length</A>); -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1647_16">Winsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1390_22">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1652_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1392_22">Len</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1390_14">Insert</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1661_14" HREF="terminal_interface-curses__ads.htm#ref_1399_14">Insert</A></span> -+ (<span class="symbol"><A NAME="ref_1662_7" HREF="terminal_interface-curses__ads.htm#ref_1399_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1663_7" HREF="terminal_interface-curses__ads.htm#ref_1400_22">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1664_7" HREF="terminal_interface-curses__ads.htm#ref_1401_22">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1665_7" HREF="terminal_interface-curses__ads.htm#ref_1402_22">Str</A></span> : String; -+ <span class="symbol"><A NAME="ref_1666_7" HREF="terminal_interface-curses__ads.htm#ref_1403_22">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1668_16">Mvwinsnstr</A></span> (<span class="symbol"><A NAME="ref_1668_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1669_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1670_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1671_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Str</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_1672_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Mvwinsnstr, "mvwinsnstr"); - -- <FONT COLOR=red><A NAME="ref_1675_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1403_22">Str</A>'Length); -- <FONT COLOR=red><A NAME="ref_1676_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_1675_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1402_22">Str</A>'Length); -+ <span class="symbol"><A NAME="ref_1676_7">Length</A></span> : size_t; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1403_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1675_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1676_7">Length</A>); -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1668_16">Mvwinsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1400_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1401_22">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1402_22">Column</A>), <A HREF="terminal_interface-curses__adb.htm#ref_1675_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1404_22">Len</A>)) -+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1402_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1675_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1676_7">Length</A>); -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1668_16">Mvwinsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1399_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1400_22">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1401_22">Column</A>), <A HREF="terminal_interface-curses__adb.htm#ref_1675_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1403_22">Len</A>)) - = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1400_14">Insert</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1685_14" HREF="terminal_interface-curses__ads.htm#ref_1416_14">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1685_20" HREF="terminal_interface-curses__ads.htm#ref_1416_20">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1686_20" HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A></FONT> : <b>out</b> String; -- <FONT COLOR=red><A NAME="ref_1687_20" HREF="terminal_interface-curses__ads.htm#ref_1418_20">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1689_16">Winnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_1689_25" HREF="terminal_interface-curses__adb.htm#ref_1689_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1690_25" HREF="terminal_interface-curses__adb.htm#ref_1689_16">Str</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_1691_25" HREF="terminal_interface-curses__adb.htm#ref_1689_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1399_14">Insert</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1685_14" HREF="terminal_interface-curses__ads.htm#ref_1415_14">Peek</A></span> (<span class="symbol"><A NAME="ref_1685_20" HREF="terminal_interface-curses__ads.htm#ref_1415_20">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1686_20" HREF="terminal_interface-curses__ads.htm#ref_1416_20">Str</A></span> : <b>out</b> String; -+ <span class="symbol"><A NAME="ref_1687_20" HREF="terminal_interface-curses__ads.htm#ref_1417_20">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1689_16">Winnstr</A></span> (<span class="symbol"><A NAME="ref_1689_25" HREF="terminal_interface-curses__adb.htm#ref_1689_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1690_25" HREF="terminal_interface-curses__adb.htm#ref_1689_16">Str</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_1691_25" HREF="terminal_interface-curses__adb.htm#ref_1689_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Winnstr, "winnstr"); - -- <FONT COLOR=red><A NAME="ref_1694_7">N</A></FONT> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1418_20">Len</A>; -- <FONT COLOR=red><A NAME="ref_1695_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'Length); -- <FONT COLOR=red><A NAME="ref_1696_7">Cnt</A></FONT> : Natural; -+ <span class="symbol"><A NAME="ref_1694_7">N</A></span> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Len</A>; -+ <span class="symbol"><A NAME="ref_1695_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1416_20">Str</A>'Length); -+ <span class="symbol"><A NAME="ref_1696_7">Cnt</A></span> : Natural; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A> &lt; 0 <b>then</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'Length; -+ <A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1416_20">Str</A>'Length; - <b>end</b> <b>if</b>; -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'Length <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1416_20">Str</A>'Length <b>then</b> - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses__adb.htm#ref_1695_7">Txt</A> (0) := <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char'First; -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1689_16">Winnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1416_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1695_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- To_Ada (<A HREF="terminal_interface-curses__adb.htm#ref_1695_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1696_7">Cnt</A>, True); -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1696_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'Length <b>then</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1696_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'Last) := (<b>others</b> =&gt; ' '); -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1416_14">Peek</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1714_14" HREF="terminal_interface-curses__ads.htm#ref_1425_14">Peek</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1715_7" HREF="terminal_interface-curses__ads.htm#ref_1425_20">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1716_7" HREF="terminal_interface-curses__ads.htm#ref_1426_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1717_7" HREF="terminal_interface-curses__ads.htm#ref_1427_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1718_7" HREF="terminal_interface-curses__ads.htm#ref_1428_20">Str</A></FONT> : <b>out</b> String; -- <FONT COLOR=red><A NAME="ref_1719_7" HREF="terminal_interface-curses__ads.htm#ref_1429_20">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1425_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1426_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1427_20">Column</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1416_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1425_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1428_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1429_20">Len</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1425_14">Peek</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1726_14" HREF="terminal_interface-curses__ads.htm#ref_1440_14">Peek</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1727_7" HREF="terminal_interface-curses__ads.htm#ref_1440_20">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1728_7" HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Attributed_String</A>; -- <FONT COLOR=red><A NAME="ref_1729_7" HREF="terminal_interface-curses__ads.htm#ref_1442_20">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1731_16">Winchnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_1731_27" HREF="terminal_interface-curses__adb.htm#ref_1731_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1732_27" HREF="terminal_interface-curses__adb.htm#ref_1731_16">Str</A></FONT> : chtype_array; <FONT COLOR=green><EM>-- out</EM></FONT> -- <FONT COLOR=red><A NAME="ref_1733_27" HREF="terminal_interface-curses__adb.htm#ref_1731_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <A HREF="terminal_interface-curses__adb.htm#ref_1695_7">Txt</A> (0) := <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char'First; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1689_16">Winnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1415_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1695_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ To_Ada (<A HREF="terminal_interface-curses__adb.htm#ref_1695_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1416_20">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1696_7">Cnt</A>, True); -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1696_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1416_20">Str</A>'Length <b>then</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_1416_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1416_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1696_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1416_20">Str</A>'Last) := (<b>others</b> =&gt; ' '); -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1415_14">Peek</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1714_14" HREF="terminal_interface-curses__ads.htm#ref_1424_14">Peek</A></span> -+ (<span class="symbol"><A NAME="ref_1715_7" HREF="terminal_interface-curses__ads.htm#ref_1424_20">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1716_7" HREF="terminal_interface-curses__ads.htm#ref_1425_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1717_7" HREF="terminal_interface-curses__ads.htm#ref_1426_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1718_7" HREF="terminal_interface-curses__ads.htm#ref_1427_20">Str</A></span> : <b>out</b> String; -+ <span class="symbol"><A NAME="ref_1719_7" HREF="terminal_interface-curses__ads.htm#ref_1428_20">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>begin</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_512_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1424_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1425_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1426_20">Column</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1415_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1424_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1427_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1428_20">Len</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1424_14">Peek</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1726_14" HREF="terminal_interface-curses__ads.htm#ref_1439_14">Peek</A></span> -+ (<span class="symbol"><A NAME="ref_1727_7" HREF="terminal_interface-curses__ads.htm#ref_1439_20">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1728_7" HREF="terminal_interface-curses__ads.htm#ref_1440_20">Str</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Attributed_String</A>; -+ <span class="symbol"><A NAME="ref_1729_7" HREF="terminal_interface-curses__ads.htm#ref_1441_20">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1731_16">Winchnstr</A></span> (<span class="symbol"><A NAME="ref_1731_27" HREF="terminal_interface-curses__adb.htm#ref_1731_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1732_27" HREF="terminal_interface-curses__adb.htm#ref_1731_16">Str</A></span> : chtype_array; <span class="comment"><EM>-- out</EM></span> -+ <span class="symbol"><A NAME="ref_1733_27" HREF="terminal_interface-curses__adb.htm#ref_1731_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Winchnstr, "winchnstr"); - -- <FONT COLOR=red><A NAME="ref_1736_7">N</A></FONT> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1442_20">Len</A>; -- <FONT COLOR=red><A NAME="ref_1737_7">Txt</A></FONT> : <b>constant</b> chtype_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'Length) -- := (0 =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>); -- <FONT COLOR=red><A NAME="ref_1739_7">Cnt</A></FONT> : Natural := 0; -+ <span class="symbol"><A NAME="ref_1736_7">N</A></span> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Len</A>; -+ <span class="symbol"><A NAME="ref_1737_7">Txt</A></span> : <b>constant</b> chtype_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Str</A>'Length) -+ := (0 =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>); -+ <span class="symbol"><A NAME="ref_1739_7">Cnt</A></span> : Natural := 0; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A> &lt; 0 <b>then</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'Length; -+ <A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Str</A>'Length; - <b>end</b> <b>if</b>; -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'Length <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Str</A>'Length <b>then</b> - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1731_16">Winchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1737_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1731_16">Winchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1439_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1737_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>for</b> <FONT COLOR=red><A NAME="ref_1750_11">To</A></FONT> <b>in</b> <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'<b>Range</b> <b>loop</b> -- <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses__adb.htm#ref_1737_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A>)) = <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1750_11">To</A>) := <A HREF="terminal_interface-curses__adb.htm#ref_1737_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A>)); -+ <b>for</b> <span class="symbol"><A NAME="ref_1750_11">To</A></span> <b>in</b> <A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Str</A>'<b>Range</b> <b>loop</b> -+ <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses__adb.htm#ref_1737_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A>)) = <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Str</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1750_11">To</A>) := <A HREF="terminal_interface-curses__adb.htm#ref_1737_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A>)); - <A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A> + 1; - <b>end</b> <b>loop</b>; -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'Length <b>then</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'Last) := -- (<b>others</b> =&gt; (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; ' ', -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>)); -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1440_14">Peek</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1763_14" HREF="terminal_interface-curses__ads.htm#ref_1449_14">Peek</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1764_7" HREF="terminal_interface-curses__ads.htm#ref_1449_20">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1765_7" HREF="terminal_interface-curses__ads.htm#ref_1450_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1766_7" HREF="terminal_interface-curses__ads.htm#ref_1451_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1767_7" HREF="terminal_interface-curses__ads.htm#ref_1452_20">Str</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Attributed_String</A>; -- <FONT COLOR=red><A NAME="ref_1768_7" HREF="terminal_interface-curses__ads.htm#ref_1453_20">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1449_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1450_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1451_20">Column</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1440_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1449_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1452_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1453_20">Len</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1449_14">Peek</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1775_14" HREF="terminal_interface-curses__ads.htm#ref_1465_14">Get</A></FONT> (<FONT COLOR=red><A NAME="ref_1775_19" HREF="terminal_interface-curses__ads.htm#ref_1465_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1776_19" HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A></FONT> : <b>out</b> String; -- <FONT COLOR=red><A NAME="ref_1777_19" HREF="terminal_interface-curses__ads.htm#ref_1467_19">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1779_16">Wgetnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_1779_26" HREF="terminal_interface-curses__adb.htm#ref_1779_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1780_26" HREF="terminal_interface-curses__adb.htm#ref_1779_16">Str</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_1781_26" HREF="terminal_interface-curses__adb.htm#ref_1779_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Str</A>'Length <b>then</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Str</A>'Last) := -+ (<b>others</b> =&gt; (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; ' ', -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>)); -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1439_14">Peek</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1763_14" HREF="terminal_interface-curses__ads.htm#ref_1448_14">Peek</A></span> -+ (<span class="symbol"><A NAME="ref_1764_7" HREF="terminal_interface-curses__ads.htm#ref_1448_20">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1765_7" HREF="terminal_interface-curses__ads.htm#ref_1449_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1766_7" HREF="terminal_interface-curses__ads.htm#ref_1450_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1767_7" HREF="terminal_interface-curses__ads.htm#ref_1451_20">Str</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Attributed_String</A>; -+ <span class="symbol"><A NAME="ref_1768_7" HREF="terminal_interface-curses__ads.htm#ref_1452_20">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>begin</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_512_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1448_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1449_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1450_20">Column</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1439_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1448_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1451_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1452_20">Len</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1448_14">Peek</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1775_14" HREF="terminal_interface-curses__ads.htm#ref_1464_14">Get</A></span> (<span class="symbol"><A NAME="ref_1775_19" HREF="terminal_interface-curses__ads.htm#ref_1464_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1776_19" HREF="terminal_interface-curses__ads.htm#ref_1465_19">Str</A></span> : <b>out</b> String; -+ <span class="symbol"><A NAME="ref_1777_19" HREF="terminal_interface-curses__ads.htm#ref_1466_19">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1779_16">Wgetnstr</A></span> (<span class="symbol"><A NAME="ref_1779_26" HREF="terminal_interface-curses__adb.htm#ref_1779_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1780_26" HREF="terminal_interface-curses__adb.htm#ref_1779_16">Str</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_1781_26" HREF="terminal_interface-curses__adb.htm#ref_1779_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Wgetnstr, "wgetnstr"); - -- <FONT COLOR=red><A NAME="ref_1784_7">N</A></FONT> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1467_19">Len</A>; -- <FONT COLOR=red><A NAME="ref_1785_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'Length); -- <FONT COLOR=red><A NAME="ref_1786_7">Cnt</A></FONT> : Natural; -+ <span class="symbol"><A NAME="ref_1784_7">N</A></span> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Len</A>; -+ <span class="symbol"><A NAME="ref_1785_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1465_19">Str</A>'Length); -+ <span class="symbol"><A NAME="ref_1786_7">Cnt</A></span> : Natural; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A> &lt; 0 <b>then</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'Length; -+ <A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1465_19">Str</A>'Length; - <b>end</b> <b>if</b>; -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'Length <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1465_19">Str</A>'Length <b>then</b> - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses__adb.htm#ref_1785_7">Txt</A> (0) := <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char'First; -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1779_16">Wgetnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1465_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1785_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- To_Ada (<A HREF="terminal_interface-curses__adb.htm#ref_1785_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1786_7">Cnt</A>, True); -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1786_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'Length <b>then</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1786_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'Last) := (<b>others</b> =&gt; ' '); -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1465_14">Get</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1804_14" HREF="terminal_interface-curses__ads.htm#ref_1476_14">Get</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1805_7" HREF="terminal_interface-curses__ads.htm#ref_1476_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1806_7" HREF="terminal_interface-curses__ads.htm#ref_1477_19">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1807_7" HREF="terminal_interface-curses__ads.htm#ref_1478_19">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1808_7" HREF="terminal_interface-curses__ads.htm#ref_1479_19">Str</A></FONT> : <b>out</b> String; -- <FONT COLOR=red><A NAME="ref_1809_7" HREF="terminal_interface-curses__ads.htm#ref_1480_19">Len</A></FONT> : Integer := -1) -- <b>is</b> -- <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1476_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1477_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1478_19">Column</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1465_14">Get</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1476_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1479_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1480_19">Len</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1476_14">Get</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1816_14" HREF="terminal_interface-curses__ads.htm#ref_1501_14">Init_Soft_Label_Keys</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1817_7" HREF="terminal_interface-curses__ads.htm#ref_1502_7">Format</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1493_9">Soft_Label_Key_Format</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1493_35">Three_Two_Three</A>) -+ <A HREF="terminal_interface-curses__adb.htm#ref_1785_7">Txt</A> (0) := <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char'First; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1779_16">Wgetnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1464_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1785_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ To_Ada (<A HREF="terminal_interface-curses__adb.htm#ref_1785_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1465_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1786_7">Cnt</A>, True); -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1786_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1465_19">Str</A>'Length <b>then</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_1465_19">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1465_19">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1786_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1465_19">Str</A>'Last) := (<b>others</b> =&gt; ' '); -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1464_14">Get</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1804_14" HREF="terminal_interface-curses__ads.htm#ref_1475_14">Get</A></span> -+ (<span class="symbol"><A NAME="ref_1805_7" HREF="terminal_interface-curses__ads.htm#ref_1475_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1806_7" HREF="terminal_interface-curses__ads.htm#ref_1476_19">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1807_7" HREF="terminal_interface-curses__ads.htm#ref_1477_19">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1808_7" HREF="terminal_interface-curses__ads.htm#ref_1478_19">Str</A></span> : <b>out</b> String; -+ <span class="symbol"><A NAME="ref_1809_7" HREF="terminal_interface-curses__ads.htm#ref_1479_19">Len</A></span> : Integer := -1) -+ <b>is</b> -+ <b>begin</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_512_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1475_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1476_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1477_19">Column</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1464_14">Get</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1475_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1478_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1479_19">Len</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1475_14">Get</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1816_14" HREF="terminal_interface-curses__ads.htm#ref_1500_14">Init_Soft_Label_Keys</A></span> -+ (<span class="symbol"><A NAME="ref_1817_7" HREF="terminal_interface-curses__ads.htm#ref_1501_7">Format</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1492_9">Soft_Label_Key_Format</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1492_35">Three_Two_Three</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1819_16">Slk_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_1819_26" HREF="terminal_interface-curses__adb.htm#ref_1819_16">Fmt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1819_16">Slk_Init</A></span> (<span class="symbol"><A NAME="ref_1819_26" HREF="terminal_interface-curses__adb.htm#ref_1819_16">Fmt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Init, "slk_init"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1819_16">Slk_Init</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1493_9">Soft_Label_Key_Format</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1502_7">Format</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1819_16">Slk_Init</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1492_9">Soft_Label_Key_Format</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1501_7">Format</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1501_14">Init_Soft_Label_Keys</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1500_14">Init_Soft_Label_Keys</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1827_14" HREF="terminal_interface-curses__ads.htm#ref_1507_14">Set_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1827_34" HREF="terminal_interface-curses__ads.htm#ref_1507_34">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>; -- <FONT COLOR=red><A NAME="ref_1828_34" HREF="terminal_interface-curses__ads.htm#ref_1508_34">Text</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_1829_34" HREF="terminal_interface-curses__ads.htm#ref_1509_34">Fmt</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1498_9">Label_Justification</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1498_33">Left</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1831_16">Slk_Set</A></FONT> (<FONT COLOR=red><A NAME="ref_1831_25" HREF="terminal_interface-curses__adb.htm#ref_1831_16">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1832_25" HREF="terminal_interface-curses__adb.htm#ref_1831_16">Txt</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_1833_25" HREF="terminal_interface-curses__adb.htm#ref_1831_16">Fmt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1827_14" HREF="terminal_interface-curses__ads.htm#ref_1506_14">Set_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1827_34" HREF="terminal_interface-curses__ads.htm#ref_1506_34">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1496_9">Label_Number</A>; -+ <span class="symbol"><A NAME="ref_1828_34" HREF="terminal_interface-curses__ads.htm#ref_1507_34">Text</A></span> : String; -+ <span class="symbol"><A NAME="ref_1829_34" HREF="terminal_interface-curses__ads.htm#ref_1508_34">Fmt</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Justification</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1497_33">Left</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_1831_16">Slk_Set</A></span> (<span class="symbol"><A NAME="ref_1831_25" HREF="terminal_interface-curses__adb.htm#ref_1831_16">Label</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1832_25" HREF="terminal_interface-curses__adb.htm#ref_1831_16">Txt</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_1833_25" HREF="terminal_interface-curses__adb.htm#ref_1831_16">Fmt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Set, "slk_set"); - -- <FONT COLOR=red><A NAME="ref_1836_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1508_34">Text</A>'Length); -- <FONT COLOR=red><A NAME="ref_1837_7">Len</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_1836_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1507_34">Text</A>'Length); -+ <span class="symbol"><A NAME="ref_1837_7">Len</A></span> : size_t; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1508_34">Text</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1836_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1837_7">Len</A>); -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1831_16">Slk_Set</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1507_34">Label</A>), <A HREF="terminal_interface-curses__adb.htm#ref_1836_7">Txt</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1498_9">Label_Justification</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1509_34">Fmt</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1507_34">Text</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1836_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1837_7">Len</A>); -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1831_16">Slk_Set</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1506_34">Label</A>), <A HREF="terminal_interface-curses__adb.htm#ref_1836_7">Txt</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Justification</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1508_34">Fmt</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1507_14">Set_Soft_Label_Key</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1506_14">Set_Soft_Label_Key</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1846_14" HREF="terminal_interface-curses__ads.htm#ref_1514_14">Refresh_Soft_Label_Keys</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1846_14" HREF="terminal_interface-curses__ads.htm#ref_1513_14">Refresh_Soft_Label_Keys</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1848_16">Slk_Refresh</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1848_16">Slk_Refresh</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Refresh, "slk_refresh"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1848_16">Slk_Refresh</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1514_14">Refresh_Soft_Label_Keys</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1513_14">Refresh_Soft_Label_Keys</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1856_14" HREF="terminal_interface-curses__ads.htm#ref_1519_14">Refresh_Soft_Label_Keys_Without_Update</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1856_14" HREF="terminal_interface-curses__ads.htm#ref_1518_14">Refresh_Soft_Label_Keys_Without_Update</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1858_16">Slk_Noutrefresh</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1858_16">Slk_Noutrefresh</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Noutrefresh, "slk_noutrefresh"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1858_16">Slk_Noutrefresh</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1519_14">Refresh_Soft_Label_Keys_Without_Update</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1518_14">Refresh_Soft_Label_Keys_Without_Update</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1866_14" HREF="terminal_interface-curses__ads.htm#ref_1524_14">Get_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1866_34" HREF="terminal_interface-curses__ads.htm#ref_1524_34">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>; -- <FONT COLOR=red><A NAME="ref_1867_34" HREF="terminal_interface-curses__ads.htm#ref_1525_34">Text</A></FONT> : <b>out</b> String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1866_14" HREF="terminal_interface-curses__ads.htm#ref_1523_14">Get_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1866_34" HREF="terminal_interface-curses__ads.htm#ref_1523_34">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1496_9">Label_Number</A>; -+ <span class="symbol"><A NAME="ref_1867_34" HREF="terminal_interface-curses__ads.htm#ref_1524_34">Text</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1869_16">Slk_Label</A></FONT> (<FONT COLOR=red><A NAME="ref_1869_27" HREF="terminal_interface-curses__adb.htm#ref_1869_16">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_1869_16">Slk_Label</A></span> (<span class="symbol"><A NAME="ref_1869_27" HREF="terminal_interface-curses__adb.htm#ref_1869_16">Label</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Slk_Label, "slk_label"); - <b>begin</b> -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1869_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1524_34">Label</A>)), <A HREF="terminal_interface-curses__ads.htm#ref_1525_34">Text</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1524_14">Get_Soft_Label_Key</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1869_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1523_34">Label</A>)), <A HREF="terminal_interface-curses__ads.htm#ref_1524_34">Text</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1523_14">Get_Soft_Label_Key</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1875_13" HREF="terminal_interface-curses__ads.htm#ref_1529_13">Get_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1875_33" HREF="terminal_interface-curses__ads.htm#ref_1529_33">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>) <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_1875_13" HREF="terminal_interface-curses__ads.htm#ref_1528_13">Get_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1875_33" HREF="terminal_interface-curses__ads.htm#ref_1528_33">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1496_9">Label_Number</A>) <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1877_16">Slk_Label</A></FONT> (<FONT COLOR=red><A NAME="ref_1877_27" HREF="terminal_interface-curses__adb.htm#ref_1877_16">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_1877_16">Slk_Label</A></span> (<span class="symbol"><A NAME="ref_1877_27" HREF="terminal_interface-curses__adb.htm#ref_1877_16">Label</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Slk_Label, "slk_label"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1877_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1529_33">Label</A>))); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1529_13">Get_Soft_Label_Key</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1877_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1528_33">Label</A>))); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1528_13">Get_Soft_Label_Key</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1883_14" HREF="terminal_interface-curses__ads.htm#ref_1535_14">Clear_Soft_Label_Keys</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1883_14" HREF="terminal_interface-curses__ads.htm#ref_1534_14">Clear_Soft_Label_Keys</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1885_16">Slk_Clear</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1885_16">Slk_Clear</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Clear, "slk_clear"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1885_16">Slk_Clear</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1535_14">Clear_Soft_Label_Keys</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1534_14">Clear_Soft_Label_Keys</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1893_14" HREF="terminal_interface-curses__ads.htm#ref_1540_14">Restore_Soft_Label_Keys</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1893_14" HREF="terminal_interface-curses__ads.htm#ref_1539_14">Restore_Soft_Label_Keys</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1895_16">Slk_Restore</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1895_16">Slk_Restore</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Restore, "slk_restore"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1895_16">Slk_Restore</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1540_14">Restore_Soft_Label_Keys</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1539_14">Restore_Soft_Label_Keys</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1903_14" HREF="terminal_interface-curses__ads.htm#ref_1545_14">Touch_Soft_Label_Keys</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1903_14" HREF="terminal_interface-curses__ads.htm#ref_1544_14">Touch_Soft_Label_Keys</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1905_16">Slk_Touch</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1905_16">Slk_Touch</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Touch, "slk_touch"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1905_16">Slk_Touch</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1545_14">Touch_Soft_Label_Keys</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1544_14">Touch_Soft_Label_Keys</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1913_14" HREF="terminal_interface-curses__ads.htm#ref_1550_14">Switch_Soft_Label_Key_Attributes</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1914_7" HREF="terminal_interface-curses__ads.htm#ref_1551_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_1915_7" HREF="terminal_interface-curses__ads.htm#ref_1552_7">On</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1913_14" HREF="terminal_interface-curses__ads.htm#ref_1549_14">Switch_Soft_Label_Key_Attributes</A></span> -+ (<span class="symbol"><A NAME="ref_1914_7" HREF="terminal_interface-curses__ads.htm#ref_1550_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_1915_7" HREF="terminal_interface-curses__ads.htm#ref_1551_7">On</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1917_16">Slk_Attron</A></FONT> (<FONT COLOR=red><A NAME="ref_1917_28" HREF="terminal_interface-curses__adb.htm#ref_1917_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1917_16">Slk_Attron</A></span> (<span class="symbol"><A NAME="ref_1917_28" HREF="terminal_interface-curses__adb.htm#ref_1917_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Attron, "slk_attron"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_1919_16">Slk_Attroff</A></FONT> (<FONT COLOR=red><A NAME="ref_1919_29" HREF="terminal_interface-curses__adb.htm#ref_1919_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1919_16">Slk_Attroff</A></span> (<span class="symbol"><A NAME="ref_1919_29" HREF="terminal_interface-curses__adb.htm#ref_1919_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Attroff, "slk_attroff"); - -- <FONT COLOR=red><A NAME="ref_1922_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1923_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1551_7">Attr</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -+ <span class="symbol"><A NAME="ref_1922_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1923_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1550_7">Attr</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1552_7">On</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1551_7">On</A> <b>then</b> - <A HREF="terminal_interface-curses__adb.htm#ref_1922_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1917_16">Slk_Attron</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1923_7">Ch</A>)); - <b>else</b> - <A HREF="terminal_interface-curses__adb.htm#ref_1922_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1919_16">Slk_Attroff</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1923_7">Ch</A>)); - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1922_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1550_14">Switch_Soft_Label_Key_Attributes</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1549_14">Switch_Soft_Label_Key_Attributes</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1937_14" HREF="terminal_interface-curses__ads.htm#ref_1558_14">Set_Soft_Label_Key_Attributes</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1938_7" HREF="terminal_interface-curses__ads.htm#ref_1559_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_1939_7" HREF="terminal_interface-curses__ads.htm#ref_1560_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1937_14" HREF="terminal_interface-curses__ads.htm#ref_1557_14">Set_Soft_Label_Key_Attributes</A></span> -+ (<span class="symbol"><A NAME="ref_1938_7" HREF="terminal_interface-curses__ads.htm#ref_1558_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_1939_7" HREF="terminal_interface-curses__ads.htm#ref_1559_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1941_16">Slk_Attrset</A></FONT> (<FONT COLOR=red><A NAME="ref_1941_29" HREF="terminal_interface-curses__adb.htm#ref_1941_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1941_16">Slk_Attrset</A></span> (<span class="symbol"><A NAME="ref_1941_29" HREF="terminal_interface-curses__adb.htm#ref_1941_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Attrset, "slk_attrset"); - -- <FONT COLOR=red><A NAME="ref_1944_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1559_7">Attr</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1560_7">Color</A>); -+ <span class="symbol"><A NAME="ref_1944_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1558_7">Attr</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1559_7">Color</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1941_16">Slk_Attrset</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1944_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1558_14">Set_Soft_Label_Key_Attributes</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1557_14">Set_Soft_Label_Key_Attributes</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1953_13" HREF="terminal_interface-curses__ads.htm#ref_1565_13">Get_Soft_Label_Key_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_1953_13" HREF="terminal_interface-curses__ads.htm#ref_1564_13">Get_Soft_Label_Key_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1955_16">Slk_Attr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1955_16">Slk_Attr</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Slk_Attr, "slk_attr"); - -- <FONT COLOR=red><A NAME="ref_1958_7">Attr</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1955_16">Slk_Attr</A>; -+ <span class="symbol"><A NAME="ref_1958_7">Attr</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1955_16">Slk_Attr</A>; - <b>begin</b> -- <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1958_7">Attr</A>).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1565_13">Get_Soft_Label_Key_Attributes</A>; -+ <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1958_7">Attr</A>).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1564_13">Get_Soft_Label_Key_Attributes</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1963_13" HREF="terminal_interface-curses__ads.htm#ref_1569_13">Get_Soft_Label_Key_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_1963_13" HREF="terminal_interface-curses__ads.htm#ref_1568_13">Get_Soft_Label_Key_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1965_16">Slk_Attr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1965_16">Slk_Attr</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Slk_Attr, "slk_attr"); - -- <FONT COLOR=red><A NAME="ref_1968_7">Attr</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1965_16">Slk_Attr</A>; -+ <span class="symbol"><A NAME="ref_1968_7">Attr</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1965_16">Slk_Attr</A>; - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1968_7">Attr</A>).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1569_13">Get_Soft_Label_Key_Attributes</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1968_7">Attr</A>).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1568_13">Get_Soft_Label_Key_Attributes</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1973_14" HREF="terminal_interface-curses__ads.htm#ref_1574_14">Set_Soft_Label_Key_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_1973_40" HREF="terminal_interface-curses__ads.htm#ref_1574_40">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1973_14" HREF="terminal_interface-curses__ads.htm#ref_1573_14">Set_Soft_Label_Key_Color</A></span> (<span class="symbol"><A NAME="ref_1973_40" HREF="terminal_interface-curses__ads.htm#ref_1573_40">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1975_16">Slk_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_1975_27" HREF="terminal_interface-curses__adb.htm#ref_1975_16">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1975_16">Slk_Color</A></span> (<span class="symbol"><A NAME="ref_1975_27" HREF="terminal_interface-curses__adb.htm#ref_1975_16">Color</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Slk_Color, "slk_color"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1975_16">Slk_Color</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1574_40">Pair</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1975_16">Slk_Color</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1573_40">Pair</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1574_14">Set_Soft_Label_Key_Color</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1573_14">Set_Soft_Label_Key_Color</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1984_14" HREF="terminal_interface-curses__ads.htm#ref_1588_14">Enable_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1984_26" HREF="terminal_interface-curses__ads.htm#ref_1588_26">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>; -- <FONT COLOR=red><A NAME="ref_1985_26" HREF="terminal_interface-curses__ads.htm#ref_1589_26">Enable</A></FONT> : Boolean := True) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1984_14" HREF="terminal_interface-curses__ads.htm#ref_1587_14">Enable_Key</A></span> (<span class="symbol"><A NAME="ref_1984_26" HREF="terminal_interface-curses__ads.htm#ref_1587_26">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>; -+ <span class="symbol"><A NAME="ref_1985_26" HREF="terminal_interface-curses__ads.htm#ref_1588_26">Enable</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1987_16">Keyok</A></FONT> (<FONT COLOR=red><A NAME="ref_1987_23" HREF="terminal_interface-curses__adb.htm#ref_1987_16">Keycode</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_1988_23" HREF="terminal_interface-curses__adb.htm#ref_1987_16">On_Off</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1987_16">Keyok</A></span> (<span class="symbol"><A NAME="ref_1987_23" HREF="terminal_interface-curses__adb.htm#ref_1987_16">Keycode</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_1988_23" HREF="terminal_interface-curses__adb.htm#ref_1987_16">On_Off</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Keyok, "keyok"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1987_16">Keyok</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1588_26">Key</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1589_26">Enable</A>))) -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1987_16">Keyok</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1587_26">Key</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1588_26">Enable</A>))) - = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1588_14">Enable_Key</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1997_14" HREF="terminal_interface-curses__ads.htm#ref_1598_14">Define_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1997_26" HREF="terminal_interface-curses__ads.htm#ref_1598_26">Definition</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_1998_26" HREF="terminal_interface-curses__ads.htm#ref_1599_26">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1587_14">Enable_Key</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1997_14" HREF="terminal_interface-curses__ads.htm#ref_1597_14">Define_Key</A></span> (<span class="symbol"><A NAME="ref_1997_26" HREF="terminal_interface-curses__ads.htm#ref_1597_26">Definition</A></span> : String; -+ <span class="symbol"><A NAME="ref_1998_26" HREF="terminal_interface-curses__ads.htm#ref_1598_26">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2000_16">Defkey</A></FONT> (<FONT COLOR=red><A NAME="ref_2000_24" HREF="terminal_interface-curses__adb.htm#ref_2000_16">Def</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_2001_24" HREF="terminal_interface-curses__adb.htm#ref_2000_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2000_16">Defkey</A></span> (<span class="symbol"><A NAME="ref_2000_24" HREF="terminal_interface-curses__adb.htm#ref_2000_16">Def</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_2001_24" HREF="terminal_interface-curses__adb.htm#ref_2000_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Defkey, "define_key"); - -- <FONT COLOR=red><A NAME="ref_2004_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1598_26">Definition</A>'Length); -- <FONT COLOR=red><A NAME="ref_2005_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_2004_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1597_26">Definition</A>'Length); -+ <span class="symbol"><A NAME="ref_2005_7">Length</A></span> : size_t; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1598_26">Definition</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2004_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2005_7">Length</A>); -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2000_16">Defkey</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2004_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1599_26">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1598_14">Define_Key</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2013_14" HREF="terminal_interface-curses__ads.htm#ref_1624_14">Un_Control</A></FONT> (<FONT COLOR=red><A NAME="ref_2013_26" HREF="terminal_interface-curses__ads.htm#ref_1624_26">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>; -- <FONT COLOR=red><A NAME="ref_2014_26" HREF="terminal_interface-curses__ads.htm#ref_1625_26">Str</A></FONT> : <b>out</b> String) -+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1597_26">Definition</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2004_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2005_7">Length</A>); -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2000_16">Defkey</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2004_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1598_26">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1597_14">Define_Key</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2013_14" HREF="terminal_interface-curses__ads.htm#ref_1623_14">Un_Control</A></span> (<span class="symbol"><A NAME="ref_2013_26" HREF="terminal_interface-curses__ads.htm#ref_1623_26">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>; -+ <span class="symbol"><A NAME="ref_2014_26" HREF="terminal_interface-curses__ads.htm#ref_1624_26">Str</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2016_16">Unctrl</A></FONT> (<FONT COLOR=red><A NAME="ref_2016_24" HREF="terminal_interface-curses__adb.htm#ref_2016_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_2016_16">Unctrl</A></span> (<span class="symbol"><A NAME="ref_2016_24" HREF="terminal_interface-curses__adb.htm#ref_2016_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Unctrl, "unctrl"); - <b>begin</b> -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2016_16">Unctrl</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1624_26">Ch</A>)), <A HREF="terminal_interface-curses__ads.htm#ref_1625_26">Str</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1624_14">Un_Control</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2016_16">Unctrl</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1623_26">Ch</A>)), <A HREF="terminal_interface-curses__ads.htm#ref_1624_26">Str</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1623_14">Un_Control</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2022_13" HREF="terminal_interface-curses__ads.htm#ref_1629_13">Un_Control</A></FONT> (<FONT COLOR=red><A NAME="ref_2022_25" HREF="terminal_interface-curses__ads.htm#ref_1629_25">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_2022_13" HREF="terminal_interface-curses__ads.htm#ref_1628_13">Un_Control</A></span> (<span class="symbol"><A NAME="ref_2022_25" HREF="terminal_interface-curses__ads.htm#ref_1628_25">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>) <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2024_16">Unctrl</A></FONT> (<FONT COLOR=red><A NAME="ref_2024_24" HREF="terminal_interface-curses__adb.htm#ref_2024_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_2024_16">Unctrl</A></span> (<span class="symbol"><A NAME="ref_2024_24" HREF="terminal_interface-curses__adb.htm#ref_2024_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Unctrl, "unctrl"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2024_16">Unctrl</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1629_25">Ch</A>))); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1629_13">Un_Control</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2024_16">Unctrl</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1628_25">Ch</A>))); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1628_13">Un_Control</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2030_14" HREF="terminal_interface-curses__ads.htm#ref_1635_14">Delay_Output</A></FONT> (<FONT COLOR=red><A NAME="ref_2030_28" HREF="terminal_interface-curses__ads.htm#ref_1635_28">Msecs</A></FONT> : Natural) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2030_14" HREF="terminal_interface-curses__ads.htm#ref_1634_14">Delay_Output</A></span> (<span class="symbol"><A NAME="ref_2030_28" HREF="terminal_interface-curses__ads.htm#ref_1634_28">Msecs</A></span> : Natural) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2032_16">Delayoutput</A></FONT> (<FONT COLOR=red><A NAME="ref_2032_29" HREF="terminal_interface-curses__adb.htm#ref_2032_16">Msecs</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2032_16">Delayoutput</A></span> (<span class="symbol"><A NAME="ref_2032_29" HREF="terminal_interface-curses__adb.htm#ref_2032_16">Msecs</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Delayoutput, "delay_output"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2032_16">Delayoutput</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1635_28">Msecs</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2032_16">Delayoutput</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1634_28">Msecs</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1635_14">Delay_Output</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1634_14">Delay_Output</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2040_14" HREF="terminal_interface-curses__ads.htm#ref_1640_14">Flush_Input</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2040_14" HREF="terminal_interface-curses__ads.htm#ref_1639_14">Flush_Input</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2042_16">Flushinp</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2042_16">Flushinp</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Flushinp, "flushinp"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2042_16">Flushinp</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> <FONT COLOR=green><EM>-- docu says that never happens, but...</EM></FONT> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2042_16">Flushinp</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> <span class="comment"><EM>-- docu says that never happens, but...</EM></span> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1640_14">Flush_Input</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2050_13" HREF="terminal_interface-curses__ads.htm#ref_1649_13">Baudrate</A></FONT> <b>return</b> Natural -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1639_14">Flush_Input</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_2050_13" HREF="terminal_interface-curses__ads.htm#ref_1648_13">Baudrate</A></span> <b>return</b> Natural - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2052_16">Baud</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2052_16">Baud</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Baud, "baudrate"); - <b>begin</b> - <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2052_16">Baud</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1649_13">Baudrate</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1648_13">Baudrate</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2058_13" HREF="terminal_interface-curses__ads.htm#ref_1654_13">Erase_Character</A></FONT> <b>return</b> Character -+ <b>function</b> <span class="symbol"><A NAME="ref_2058_13" HREF="terminal_interface-curses__ads.htm#ref_1653_13">Erase_Character</A></span> <b>return</b> Character - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2060_16">Erasechar</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2060_16">Erasechar</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Erasechar, "erasechar"); - <b>begin</b> - <b>return</b> Character'Val (<A HREF="terminal_interface-curses__adb.htm#ref_2060_16">Erasechar</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1654_13">Erase_Character</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1653_13">Erase_Character</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2066_13" HREF="terminal_interface-curses__ads.htm#ref_1659_13">Kill_Character</A></FONT> <b>return</b> Character -+ <b>function</b> <span class="symbol"><A NAME="ref_2066_13" HREF="terminal_interface-curses__ads.htm#ref_1658_13">Kill_Character</A></span> <b>return</b> Character - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2068_16">Killchar</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2068_16">Killchar</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Killchar, "killchar"); - <b>begin</b> - <b>return</b> Character'Val (<A HREF="terminal_interface-curses__adb.htm#ref_2068_16">Killchar</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1659_13">Kill_Character</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1658_13">Kill_Character</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2074_13" HREF="terminal_interface-curses__ads.htm#ref_1664_13">Has_Insert_Character</A></FONT> <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_2074_13" HREF="terminal_interface-curses__ads.htm#ref_1663_13">Has_Insert_Character</A></span> <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2076_16">Has_Ic</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2076_16">Has_Ic</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, Has_Ic, "has_ic"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2076_16">Has_Ic</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2076_16">Has_Ic</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1664_13">Has_Insert_Character</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1663_13">Has_Insert_Character</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2086_13" HREF="terminal_interface-curses__ads.htm#ref_1669_13">Has_Insert_Line</A></FONT> <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_2086_13" HREF="terminal_interface-curses__ads.htm#ref_1668_13">Has_Insert_Line</A></span> <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2088_16">Has_Il</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2088_16">Has_Il</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, Has_Il, "has_il"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2088_16">Has_Il</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2088_16">Has_Il</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1669_13">Has_Insert_Line</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1668_13">Has_Insert_Line</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2098_13" HREF="terminal_interface-curses__ads.htm#ref_1674_13">Supported_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_2098_13" HREF="terminal_interface-curses__ads.htm#ref_1673_13">Supported_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2100_16">Termattrs</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2100_16">Termattrs</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Termattrs, "termattrs"); - -- <FONT COLOR=red><A NAME="ref_2103_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2100_16">Termattrs</A>); -+ <span class="symbol"><A NAME="ref_2103_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2100_16">Termattrs</A>); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_2103_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1674_13">Supported_Attributes</A>; -+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_2103_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1673_13">Supported_Attributes</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2108_14" HREF="terminal_interface-curses__ads.htm#ref_1679_14">Long_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_2108_25" HREF="terminal_interface-curses__ads.htm#ref_1679_25">Name</A></FONT> : <b>out</b> String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2108_14" HREF="terminal_interface-curses__ads.htm#ref_1678_14">Long_Name</A></span> (<span class="symbol"><A NAME="ref_2108_25" HREF="terminal_interface-curses__ads.htm#ref_1678_25">Name</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2110_16">Longname</A></FONT> <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_2110_16">Longname</A></span> <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Longname, "longname"); - <b>begin</b> -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2110_16">Longname</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1679_25">Name</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1679_14">Long_Name</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2110_16">Longname</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1678_25">Name</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1678_14">Long_Name</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2116_13" HREF="terminal_interface-curses__ads.htm#ref_1683_13">Long_Name</A></FONT> <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_2116_13" HREF="terminal_interface-curses__ads.htm#ref_1682_13">Long_Name</A></span> <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2118_16">Longname</A></FONT> <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_2118_16">Longname</A></span> <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Longname, "longname"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2118_16">Longname</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1683_13">Long_Name</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1682_13">Long_Name</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2124_14" HREF="terminal_interface-curses__ads.htm#ref_1689_14">Terminal_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_2124_29" HREF="terminal_interface-curses__ads.htm#ref_1689_29">Name</A></FONT> : <b>out</b> String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2124_14" HREF="terminal_interface-curses__ads.htm#ref_1688_14">Terminal_Name</A></span> (<span class="symbol"><A NAME="ref_2124_29" HREF="terminal_interface-curses__ads.htm#ref_1688_29">Name</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2126_16">Termname</A></FONT> <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_2126_16">Termname</A></span> <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Termname, "termname"); - <b>begin</b> -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2126_16">Termname</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1689_29">Name</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1689_14">Terminal_Name</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2126_16">Termname</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1688_29">Name</A>); -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1688_14">Terminal_Name</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2132_13" HREF="terminal_interface-curses__ads.htm#ref_1693_13">Terminal_Name</A></FONT> <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_2132_13" HREF="terminal_interface-curses__ads.htm#ref_1692_13">Terminal_Name</A></span> <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2134_16">Termname</A></FONT> <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_2134_16">Termname</A></span> <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Termname, "termname"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2134_16">Termname</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1693_13">Terminal_Name</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2140_14" HREF="terminal_interface-curses__ads.htm#ref_1714_14">Init_Pair</A></FONT> (<FONT COLOR=red><A NAME="ref_2140_25" HREF="terminal_interface-curses__ads.htm#ref_1714_25">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_301_12">Redefinable_Color_Pair</A>; -- <FONT COLOR=red><A NAME="ref_2141_25" HREF="terminal_interface-curses__ads.htm#ref_1715_25">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -- <FONT COLOR=red><A NAME="ref_2142_25" HREF="terminal_interface-curses__ads.htm#ref_1716_25">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2144_16">Initpair</A></FONT> (<FONT COLOR=red><A NAME="ref_2144_26" HREF="terminal_interface-curses__adb.htm#ref_2144_16">Pair</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_2145_26" HREF="terminal_interface-curses__adb.htm#ref_2144_16">Fore</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_2146_26" HREF="terminal_interface-curses__adb.htm#ref_2144_16">Back</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1692_13">Terminal_Name</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2140_14" HREF="terminal_interface-curses__ads.htm#ref_1713_14">Init_Pair</A></span> (<span class="symbol"><A NAME="ref_2140_25" HREF="terminal_interface-curses__ads.htm#ref_1713_25">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_301_12">Redefinable_Color_Pair</A>; -+ <span class="symbol"><A NAME="ref_2141_25" HREF="terminal_interface-curses__ads.htm#ref_1714_25">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -+ <span class="symbol"><A NAME="ref_2142_25" HREF="terminal_interface-curses__ads.htm#ref_1715_25">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_2144_16">Initpair</A></span> (<span class="symbol"><A NAME="ref_2144_26" HREF="terminal_interface-curses__adb.htm#ref_2144_16">Pair</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_2145_26" HREF="terminal_interface-curses__adb.htm#ref_2144_16">Fore</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_2146_26" HREF="terminal_interface-curses__adb.htm#ref_2144_16">Back</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Initpair, "init_pair"); - <b>begin</b> -- <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1714_25">Pair</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_426_13">Number_Of_Color_Pairs</A> <b>then</b> -+ <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1713_25">Pair</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_425_13">Number_Of_Color_Pairs</A> <b>then</b> - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; -- <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1715_25">Fore</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_423_13">Number_Of_Colors</A> <b>or</b> <b>else</b> -- Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1716_25">Back</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_423_13">Number_Of_Colors</A> <b>then</b> -+ <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1714_25">Fore</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_422_13">Number_Of_Colors</A> <b>or</b> <b>else</b> -+ Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1715_25">Back</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_422_13">Number_Of_Colors</A> <b>then</b> - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2144_16">Initpair</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1714_25">Pair</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1715_25">Fore</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1716_25">Back</A>)) -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2144_16">Initpair</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1713_25">Pair</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1714_25">Fore</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1715_25">Back</A>)) - = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1714_14">Init_Pair</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1713_14">Init_Pair</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2162_14" HREF="terminal_interface-curses__ads.htm#ref_1721_14">Pair_Content</A></FONT> (<FONT COLOR=red><A NAME="ref_2162_28" HREF="terminal_interface-curses__ads.htm#ref_1721_28">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>; -- <FONT COLOR=red><A NAME="ref_2163_28" HREF="terminal_interface-curses__ads.htm#ref_1722_28">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -- <FONT COLOR=red><A NAME="ref_2164_28" HREF="terminal_interface-curses__ads.htm#ref_1723_28">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>) -- <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_2166_12">C_Short_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_2167_16">Paircontent</A></FONT> (<FONT COLOR=red><A NAME="ref_2167_29" HREF="terminal_interface-curses__adb.htm#ref_2167_16">Pair</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_2168_29" HREF="terminal_interface-curses__adb.htm#ref_2167_16">Fp</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#ref_2166_12">C_Short_Access</A>; -- <FONT COLOR=red><A NAME="ref_2169_29" HREF="terminal_interface-curses__adb.htm#ref_2167_16">Bp</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#ref_2166_12">C_Short_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2162_14" HREF="terminal_interface-curses__ads.htm#ref_1720_14">Pair_Content</A></span> (<span class="symbol"><A NAME="ref_2162_28" HREF="terminal_interface-curses__ads.htm#ref_1720_28">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>; -+ <span class="symbol"><A NAME="ref_2163_28" HREF="terminal_interface-curses__ads.htm#ref_1721_28">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -+ <span class="symbol"><A NAME="ref_2164_28" HREF="terminal_interface-curses__ads.htm#ref_1722_28">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>) -+ <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_2166_12">C_Short_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2167_16">Paircontent</A></span> (<span class="symbol"><A NAME="ref_2167_29" HREF="terminal_interface-curses__adb.htm#ref_2167_16">Pair</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_2168_29" HREF="terminal_interface-curses__adb.htm#ref_2167_16">Fp</A></span> : <A HREF="terminal_interface-curses__adb.htm#ref_2166_12">C_Short_Access</A>; -+ <span class="symbol"><A NAME="ref_2169_29" HREF="terminal_interface-curses__adb.htm#ref_2167_16">Bp</A></span> : <A HREF="terminal_interface-curses__adb.htm#ref_2166_12">C_Short_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Paircontent, "pair_content"); - -- <FONT COLOR=red><A NAME="ref_2172_7">F</A></FONT>, <FONT COLOR=red><A NAME="ref_2172_10">B</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_2172_7">F</A></span>, <span class="symbol"><A NAME="ref_2172_10">B</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2167_16">Paircontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1721_28">Pair</A>), <A HREF="terminal_interface-curses__adb.htm#ref_2172_7">F</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2172_10">B</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2167_16">Paircontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1720_28">Pair</A>), <A HREF="terminal_interface-curses__adb.htm#ref_2172_7">F</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2172_10">B</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>else</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1722_28">Fore</A> := <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2172_7">F</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1723_28">Back</A> := <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2172_10">B</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1721_28">Fore</A> := <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2172_7">F</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1722_28">Back</A> := <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2172_10">B</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1721_14">Pair_Content</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1720_14">Pair_Content</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2182_13" HREF="terminal_interface-curses__ads.htm#ref_1728_13">Has_Colors</A></FONT> <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_2182_13" HREF="terminal_interface-curses__ads.htm#ref_1727_13">Has_Colors</A></span> <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2184_16">Hascolors</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2184_16">Hascolors</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, Hascolors, "has_colors"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2184_16">Hascolors</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2184_16">Hascolors</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1728_13">Has_Colors</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1727_13">Has_Colors</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2194_14" HREF="terminal_interface-curses__ads.htm#ref_1733_14">Init_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_2194_26" HREF="terminal_interface-curses__ads.htm#ref_1733_26">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -- <FONT COLOR=red><A NAME="ref_2195_26" HREF="terminal_interface-curses__ads.htm#ref_1734_26">Red</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -- <FONT COLOR=red><A NAME="ref_2196_26" HREF="terminal_interface-curses__ads.htm#ref_1735_26">Green</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -- <FONT COLOR=red><A NAME="ref_2197_26" HREF="terminal_interface-curses__ads.htm#ref_1736_26">Blue</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2199_16">Initcolor</A></FONT> (<FONT COLOR=red><A NAME="ref_2199_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_2200_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Red</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_2201_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Green</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -- <FONT COLOR=red><A NAME="ref_2202_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Blue</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2194_14" HREF="terminal_interface-curses__ads.htm#ref_1732_14">Init_Color</A></span> (<span class="symbol"><A NAME="ref_2194_26" HREF="terminal_interface-curses__ads.htm#ref_1732_26">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -+ <span class="symbol"><A NAME="ref_2195_26" HREF="terminal_interface-curses__ads.htm#ref_1733_26">Red</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -+ <span class="symbol"><A NAME="ref_2196_26" HREF="terminal_interface-curses__ads.htm#ref_1734_26">Green</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -+ <span class="symbol"><A NAME="ref_2197_26" HREF="terminal_interface-curses__ads.htm#ref_1735_26">Blue</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_2199_16">Initcolor</A></span> (<span class="symbol"><A NAME="ref_2199_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_2200_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Red</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_2201_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Green</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_2202_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Blue</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Initcolor, "init_color"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2199_16">Initcolor</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1733_26">Color</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1734_26">Red</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1735_26">Green</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1736_26">Blue</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2199_16">Initcolor</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1732_26">Color</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1733_26">Red</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1734_26">Green</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1735_26">Blue</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1733_14">Init_Color</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1732_14">Init_Color</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2211_13" HREF="terminal_interface-curses__ads.htm#ref_1741_13">Can_Change_Color</A></FONT> <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_2211_13" HREF="terminal_interface-curses__ads.htm#ref_1740_13">Can_Change_Color</A></span> <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2213_16">Canchangecolor</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2213_16">Canchangecolor</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, Canchangecolor, "can_change_color"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2213_16">Canchangecolor</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2213_16">Canchangecolor</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1741_13">Can_Change_Color</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1740_13">Can_Change_Color</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2223_14" HREF="terminal_interface-curses__ads.htm#ref_1746_14">Color_Content</A></FONT> (<FONT COLOR=red><A NAME="ref_2223_29" HREF="terminal_interface-curses__ads.htm#ref_1746_29">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -- <FONT COLOR=red><A NAME="ref_2224_29" HREF="terminal_interface-curses__ads.htm#ref_1747_29">Red</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -- <FONT COLOR=red><A NAME="ref_2225_29" HREF="terminal_interface-curses__ads.htm#ref_1748_29">Green</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -- <FONT COLOR=red><A NAME="ref_2226_29" HREF="terminal_interface-curses__ads.htm#ref_1749_29">Blue</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2223_14" HREF="terminal_interface-curses__ads.htm#ref_1745_14">Color_Content</A></span> (<span class="symbol"><A NAME="ref_2223_29" HREF="terminal_interface-curses__ads.htm#ref_1745_29">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -+ <span class="symbol"><A NAME="ref_2224_29" HREF="terminal_interface-curses__ads.htm#ref_1746_29">Red</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -+ <span class="symbol"><A NAME="ref_2225_29" HREF="terminal_interface-curses__ads.htm#ref_1747_29">Green</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -+ <span class="symbol"><A NAME="ref_2226_29" HREF="terminal_interface-curses__ads.htm#ref_1748_29">Blue</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>) - <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_2228_12">C_Short_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_2228_12">C_Short_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2230_16">Colorcontent</A></FONT> (<FONT COLOR=red><A NAME="ref_2230_30" HREF="terminal_interface-curses__adb.htm#ref_2230_16">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; <FONT COLOR=red><A NAME="ref_2230_47" HREF="terminal_interface-curses__adb.htm#ref_2230_16">R</A></FONT>, <FONT COLOR=red><A NAME="ref_2230_50" HREF="terminal_interface-curses__adb.htm#ref_2230_16">G</A></FONT>, <FONT COLOR=red><A NAME="ref_2230_53" HREF="terminal_interface-curses__adb.htm#ref_2230_16">B</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#ref_2228_12">C_Short_Access</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_2230_16">Colorcontent</A></span> (<span class="symbol"><A NAME="ref_2230_30" HREF="terminal_interface-curses__adb.htm#ref_2230_16">Color</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; <span class="symbol"><A NAME="ref_2230_47" HREF="terminal_interface-curses__adb.htm#ref_2230_16">R</A></span>, <span class="symbol"><A NAME="ref_2230_50" HREF="terminal_interface-curses__adb.htm#ref_2230_16">G</A></span>, <span class="symbol"><A NAME="ref_2230_53" HREF="terminal_interface-curses__adb.htm#ref_2230_16">B</A></span> : <A HREF="terminal_interface-curses__adb.htm#ref_2228_12">C_Short_Access</A>) - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Colorcontent, "color_content"); - -- <FONT COLOR=red><A NAME="ref_2234_7">R</A></FONT>, <FONT COLOR=red><A NAME="ref_2234_10">G</A></FONT>, <FONT COLOR=red><A NAME="ref_2234_13">B</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; -+ <span class="symbol"><A NAME="ref_2234_7">R</A></span>, <span class="symbol"><A NAME="ref_2234_10">G</A></span>, <span class="symbol"><A NAME="ref_2234_13">B</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2230_16">Colorcontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1746_29">Color</A>), <A HREF="terminal_interface-curses__adb.htm#ref_2234_7">R</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2234_10">G</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2234_13">B</A>'<b>Access</b>) = -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2230_16">Colorcontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1745_29">Color</A>), <A HREF="terminal_interface-curses__adb.htm#ref_2234_7">R</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2234_10">G</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2234_13">B</A>'<b>Access</b>) = - <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>else</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1747_29">Red</A> := <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2234_7">R</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1748_29">Green</A> := <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2234_10">G</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1749_29">Blue</A> := <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2234_13">B</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1746_29">Red</A> := <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2234_7">R</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1747_29">Green</A> := <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2234_10">G</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1748_29">Blue</A> := <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2234_13">B</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1746_14">Color_Content</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1745_14">Color_Content</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2247_14" HREF="terminal_interface-curses__ads.htm#ref_1761_14">Save_Curses_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_2247_32" HREF="terminal_interface-curses__ads.htm#ref_1761_32">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1758_9">Curses_Mode</A>) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2247_14" HREF="terminal_interface-curses__ads.htm#ref_1760_14">Save_Curses_Mode</A></span> (<span class="symbol"><A NAME="ref_2247_32" HREF="terminal_interface-curses__ads.htm#ref_1760_32">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1757_9">Curses_Mode</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2249_16">Def_Prog_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2249_16">Def_Prog_Mode</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Def_Prog_Mode, "def_prog_mode"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_2251_16">Def_Shell_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2251_16">Def_Shell_Mode</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Def_Shell_Mode, "def_shell_mode"); - -- <FONT COLOR=red><A NAME="ref_2254_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2254_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> -- <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_1761_32">Mode</A> <b>is</b> -- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1758_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2254_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2249_16">Def_Prog_Mode</A>; -- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1758_33">Shell</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2254_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2251_16">Def_Shell_Mode</A>; -+ <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_1760_32">Mode</A> <b>is</b> -+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1757_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2254_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2249_16">Def_Prog_Mode</A>; -+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1757_33">Shell</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2254_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2251_16">Def_Shell_Mode</A>; - <b>end</b> <b>case</b>; - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2254_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1761_14">Save_Curses_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1760_14">Save_Curses_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2265_14" HREF="terminal_interface-curses__ads.htm#ref_1767_14">Reset_Curses_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_2265_33" HREF="terminal_interface-curses__ads.htm#ref_1767_33">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1758_9">Curses_Mode</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2265_14" HREF="terminal_interface-curses__ads.htm#ref_1766_14">Reset_Curses_Mode</A></span> (<span class="symbol"><A NAME="ref_2265_33" HREF="terminal_interface-curses__ads.htm#ref_1766_33">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1757_9">Curses_Mode</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2267_16">Reset_Prog_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2267_16">Reset_Prog_Mode</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Reset_Prog_Mode, "reset_prog_mode"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_2269_16">Reset_Shell_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2269_16">Reset_Shell_Mode</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Reset_Shell_Mode, "reset_shell_mode"); - -- <FONT COLOR=red><A NAME="ref_2272_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2272_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> -- <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_1767_33">Mode</A> <b>is</b> -- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1758_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2272_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2267_16">Reset_Prog_Mode</A>; -- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1758_33">Shell</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2272_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2269_16">Reset_Shell_Mode</A>; -+ <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_1766_33">Mode</A> <b>is</b> -+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1757_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2272_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2267_16">Reset_Prog_Mode</A>; -+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1757_33">Shell</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2272_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2269_16">Reset_Shell_Mode</A>; - <b>end</b> <b>case</b>; - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2272_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1767_14">Reset_Curses_Mode</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1766_14">Reset_Curses_Mode</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2283_14" HREF="terminal_interface-curses__ads.htm#ref_1773_14">Save_Terminal_State</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2283_14" HREF="terminal_interface-curses__ads.htm#ref_1772_14">Save_Terminal_State</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2285_16">Savetty</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2285_16">Savetty</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Savetty, "savetty"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2285_16">Savetty</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1773_14">Save_Terminal_State</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1772_14">Save_Terminal_State</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2293_14" HREF="terminal_interface-curses__ads.htm#ref_1778_14">Reset_Terminal_State</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2293_14" HREF="terminal_interface-curses__ads.htm#ref_1777_14">Reset_Terminal_State</A></span> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2295_16">Resetty</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2295_16">Resetty</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Resetty, "resetty"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2295_16">Resetty</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1778_14">Reset_Terminal_State</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1777_14">Reset_Terminal_State</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2303_14" HREF="terminal_interface-curses__ads.htm#ref_1791_14">Rip_Off_Lines</A></FONT> (<FONT COLOR=red><A NAME="ref_2303_29" HREF="terminal_interface-curses__ads.htm#ref_1791_29">Lines</A></FONT> : Integer; -- <FONT COLOR=red><A NAME="ref_2304_29" HREF="terminal_interface-curses__ads.htm#ref_1792_29">Proc</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1782_9">Stdscr_Init_Proc</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2303_14" HREF="terminal_interface-curses__ads.htm#ref_1790_14">Rip_Off_Lines</A></span> (<span class="symbol"><A NAME="ref_2303_29" HREF="terminal_interface-curses__ads.htm#ref_1790_29">Lines</A></span> : Integer; -+ <span class="symbol"><A NAME="ref_2304_29" HREF="terminal_interface-curses__ads.htm#ref_1791_29">Proc</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1781_9">Stdscr_Init_Proc</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2306_16">Ripoffline</A></FONT> (<FONT COLOR=red><A NAME="ref_2306_28" HREF="terminal_interface-curses__adb.htm#ref_2306_16">Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_2307_28" HREF="terminal_interface-curses__adb.htm#ref_2306_16">Proc</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1782_9">Stdscr_Init_Proc</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2306_16">Ripoffline</A></span> (<span class="symbol"><A NAME="ref_2306_28" HREF="terminal_interface-curses__adb.htm#ref_2306_16">Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2307_28" HREF="terminal_interface-curses__adb.htm#ref_2306_16">Proc</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1781_9">Stdscr_Init_Proc</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Ripoffline, "_nc_ripoffline"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2306_16">Ripoffline</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1791_29">Lines</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1792_29">Proc</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2306_16">Ripoffline</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1790_29">Lines</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1791_29">Proc</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1791_14">Rip_Off_Lines</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1790_14">Rip_Off_Lines</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2315_14" HREF="terminal_interface-curses__ads.htm#ref_1803_14">Set_Cursor_Visibility</A></FONT> (<FONT COLOR=red><A NAME="ref_2315_37" HREF="terminal_interface-curses__ads.htm#ref_1803_37">Visibility</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_1800_9">Cursor_Visibility</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2315_14" HREF="terminal_interface-curses__ads.htm#ref_1802_14">Set_Cursor_Visibility</A></span> (<span class="symbol"><A NAME="ref_2315_37" HREF="terminal_interface-curses__ads.htm#ref_1802_37">Visibility</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_1799_9">Cursor_Visibility</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2317_16">Curs_Set</A></FONT> (<FONT COLOR=red><A NAME="ref_2317_26" HREF="terminal_interface-curses__adb.htm#ref_2317_16">Curs</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2317_16">Curs_Set</A></span> (<span class="symbol"><A NAME="ref_2317_26" HREF="terminal_interface-curses__adb.htm#ref_2317_16">Curs</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Curs_Set, "curs_set"); - -- <FONT COLOR=red><A NAME="ref_2320_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2320_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses__adb.htm#ref_2320_7">Res</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2317_16">Curs_Set</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1800_9">Cursor_Visibility</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1803_37">Visibility</A>)); -+ <A HREF="terminal_interface-curses__adb.htm#ref_2320_7">Res</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2317_16">Curs_Set</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1799_9">Cursor_Visibility</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1802_37">Visibility</A>)); - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2320_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1803_37">Visibility</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1800_9">Cursor_Visibility</A>'Val (<A HREF="terminal_interface-curses__adb.htm#ref_2320_7">Res</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1802_37">Visibility</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1799_9">Cursor_Visibility</A>'Val (<A HREF="terminal_interface-curses__adb.htm#ref_2320_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1803_14">Set_Cursor_Visibility</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1802_14">Set_Cursor_Visibility</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2328_14" HREF="terminal_interface-curses__ads.htm#ref_1808_14">Nap_Milli_Seconds</A></FONT> (<FONT COLOR=red><A NAME="ref_2328_33" HREF="terminal_interface-curses__ads.htm#ref_1808_33">Ms</A></FONT> : Natural) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2328_14" HREF="terminal_interface-curses__ads.htm#ref_1807_14">Nap_Milli_Seconds</A></span> (<span class="symbol"><A NAME="ref_2328_33" HREF="terminal_interface-curses__ads.htm#ref_1807_33">Ms</A></span> : Natural) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2330_16">Napms</A></FONT> (<FONT COLOR=red><A NAME="ref_2330_23" HREF="terminal_interface-curses__adb.htm#ref_2330_16">Ms</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2330_16">Napms</A></span> (<span class="symbol"><A NAME="ref_2330_23" HREF="terminal_interface-curses__adb.htm#ref_2330_16">Ms</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Napms, "napms"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2330_16">Napms</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1808_33">Ms</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2330_16">Napms</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1807_33">Ms</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1808_14">Nap_Milli_Seconds</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1807_14">Nap_Milli_Seconds</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2339_13" HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_2339_13" HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_2341_7">Result</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_2341_7">Result</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2341_7">Result</A>, "stdscr"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_2341_7">Result</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2347_13" HREF="terminal_interface-curses__ads.htm#ref_483_13">Current_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_2347_13" HREF="terminal_interface-curses__ads.htm#ref_482_13">Current_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_2349_7">Result</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_2349_7">Result</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2349_7">Result</A>, "curscr"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_2349_7">Result</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_483_13">Current_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_482_13">Current_Window</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2355_13" HREF="terminal_interface-curses__ads.htm#ref_414_13">Lines</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_2355_13" HREF="terminal_interface-curses__ads.htm#ref_413_13">Lines</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_2357_7">Result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2357_7">Result</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2357_7">Result</A>, "LINES"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2357_7">Result</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_414_13">Lines</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_413_13">Lines</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2363_13" HREF="terminal_interface-curses__ads.htm#ref_417_13">Columns</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_2363_13" HREF="terminal_interface-curses__ads.htm#ref_416_13">Columns</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_2365_7">Result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2365_7">Result</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2365_7">Result</A>, "COLS"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2365_7">Result</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_13">Columns</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_416_13">Columns</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2371_13" HREF="terminal_interface-curses__ads.htm#ref_420_13">Tab_Size</A></FONT> <b>return</b> Natural -+ <b>function</b> <span class="symbol"><A NAME="ref_2371_13" HREF="terminal_interface-curses__ads.htm#ref_419_13">Tab_Size</A></span> <b>return</b> Natural - <b>is</b> -- <FONT COLOR=red><A NAME="ref_2373_7">Result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2373_7">Result</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2373_7">Result</A>, "TABSIZE"); - <b>begin</b> - <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2373_7">Result</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_420_13">Tab_Size</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_419_13">Tab_Size</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2379_13" HREF="terminal_interface-curses__ads.htm#ref_423_13">Number_Of_Colors</A></FONT> <b>return</b> Natural -+ <b>function</b> <span class="symbol"><A NAME="ref_2379_13" HREF="terminal_interface-curses__ads.htm#ref_422_13">Number_Of_Colors</A></span> <b>return</b> Natural - <b>is</b> -- <FONT COLOR=red><A NAME="ref_2381_7">Result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2381_7">Result</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2381_7">Result</A>, "COLORS"); - <b>begin</b> - <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2381_7">Result</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_423_13">Number_Of_Colors</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_422_13">Number_Of_Colors</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_2387_13" HREF="terminal_interface-curses__ads.htm#ref_426_13">Number_Of_Color_Pairs</A></FONT> <b>return</b> Natural -+ <b>function</b> <span class="symbol"><A NAME="ref_2387_13" HREF="terminal_interface-curses__ads.htm#ref_425_13">Number_Of_Color_Pairs</A></span> <b>return</b> Natural - <b>is</b> -- <FONT COLOR=red><A NAME="ref_2389_7">Result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2389_7">Result</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2389_7">Result</A>, "COLOR_PAIRS"); - <b>begin</b> - <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2389_7">Result</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_426_13">Number_Of_Color_Pairs</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_425_13">Number_Of_Color_Pairs</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2396_14" HREF="terminal_interface-curses__ads.htm#ref_1816_14">Transform_Coordinates</A></FONT> -- (<FONT COLOR=red><A NAME="ref_2397_7" HREF="terminal_interface-curses__ads.htm#ref_1817_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_2398_7" HREF="terminal_interface-curses__ads.htm#ref_1818_7">Line</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_2399_7" HREF="terminal_interface-curses__ads.htm#ref_1819_7">Column</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_2400_7" HREF="terminal_interface-curses__ads.htm#ref_1820_7">Dir</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1815_9">Transform_Direction</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1815_33">From_Screen</A>) -- <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_2402_12">Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_2403_16">Transform</A></FONT> (<FONT COLOR=red><A NAME="ref_2403_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_2404_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">Y</A></FONT>, <FONT COLOR=red><A NAME="ref_2404_30" HREF="terminal_interface-curses__adb.htm#ref_2403_16">X</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#ref_2402_12">Int_Access</A>; -- <FONT COLOR=red><A NAME="ref_2405_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">Dir</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2396_14" HREF="terminal_interface-curses__ads.htm#ref_1815_14">Transform_Coordinates</A></span> -+ (<span class="symbol"><A NAME="ref_2397_7" HREF="terminal_interface-curses__ads.htm#ref_1816_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_2398_7" HREF="terminal_interface-curses__ads.htm#ref_1817_7">Line</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_2399_7" HREF="terminal_interface-curses__ads.htm#ref_1818_7">Column</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_2400_7" HREF="terminal_interface-curses__ads.htm#ref_1819_7">Dir</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1814_9">Transform_Direction</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1814_33">From_Screen</A>) -+ <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_2402_12">Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2403_16">Transform</A></span> (<span class="symbol"><A NAME="ref_2403_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_2404_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">Y</A></span>, <span class="symbol"><A NAME="ref_2404_30" HREF="terminal_interface-curses__adb.htm#ref_2403_16">X</A></span> : <A HREF="terminal_interface-curses__adb.htm#ref_2402_12">Int_Access</A>; -+ <span class="symbol"><A NAME="ref_2405_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">Dir</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Transform, "wmouse_trafo"); - -- <FONT COLOR=red><A NAME="ref_2408_7">X</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1819_7">Column</A>); -- <FONT COLOR=red><A NAME="ref_2409_7">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1818_7">Line</A>); -- <FONT COLOR=red><A NAME="ref_2410_7">D</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A>; -- <FONT COLOR=red><A NAME="ref_2411_7">R</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2408_7">X</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1818_7">Column</A>); -+ <span class="symbol"><A NAME="ref_2409_7">Y</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1817_7">Line</A>); -+ <span class="symbol"><A NAME="ref_2410_7">D</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A>; -+ <span class="symbol"><A NAME="ref_2411_7">R</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1820_7">Dir</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1815_46">To_Screen</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1819_7">Dir</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1814_46">To_Screen</A> <b>then</b> - <A HREF="terminal_interface-curses__adb.htm#ref_2410_7">D</A> := 1; - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses__adb.htm#ref_2411_7">R</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2403_16">Transform</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1817_7">W</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2409_7">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2408_7">X</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2410_7">D</A>); -+ <A HREF="terminal_interface-curses__adb.htm#ref_2411_7">R</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2403_16">Transform</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1816_7">W</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2409_7">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2408_7">X</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2410_7">D</A>); - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2411_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>else</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1818_7">Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2409_7">Y</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1819_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2408_7">X</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1817_7">Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2409_7">Y</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1818_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2408_7">X</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1816_14">Transform_Coordinates</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2425_14" HREF="terminal_interface-curses__ads.htm#ref_1833_14">Use_Default_Colors</A></FONT> <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2426_16">C_Use_Default_Colors</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1815_14">Transform_Coordinates</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2425_14" HREF="terminal_interface-curses__ads.htm#ref_1832_14">Use_Default_Colors</A></span> <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_2426_16">C_Use_Default_Colors</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, C_Use_Default_Colors, "use_default_colors"); -- <FONT COLOR=red><A NAME="ref_2428_7">Err</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2426_16">C_Use_Default_Colors</A>; -+ <span class="symbol"><A NAME="ref_2428_7">Err</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2426_16">C_Use_Default_Colors</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2428_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1833_14">Use_Default_Colors</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1832_14">Use_Default_Colors</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2435_14" HREF="terminal_interface-curses__ads.htm#ref_1838_14">Assume_Default_Colors</A></FONT> (<FONT COLOR=red><A NAME="ref_2435_37" HREF="terminal_interface-curses__ads.htm#ref_1838_37">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>; -- <FONT COLOR=red><A NAME="ref_2436_37" HREF="terminal_interface-curses__ads.htm#ref_1839_37">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2435_14" HREF="terminal_interface-curses__ads.htm#ref_1837_14">Assume_Default_Colors</A></span> (<span class="symbol"><A NAME="ref_2435_37" HREF="terminal_interface-curses__ads.htm#ref_1837_37">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>; -+ <span class="symbol"><A NAME="ref_2436_37" HREF="terminal_interface-curses__ads.htm#ref_1838_37">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2438_16">C_Assume_Default_Colors</A></FONT> (<FONT COLOR=red><A NAME="ref_2438_41" HREF="terminal_interface-curses__adb.htm#ref_2438_16">Fore</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_2439_41" HREF="terminal_interface-curses__adb.htm#ref_2438_16">Back</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2438_16">C_Assume_Default_Colors</A></span> (<span class="symbol"><A NAME="ref_2438_41" HREF="terminal_interface-curses__adb.htm#ref_2438_16">Fore</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2439_41" HREF="terminal_interface-curses__adb.htm#ref_2438_16">Back</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, C_Assume_Default_Colors, "assume_default_colors"); - -- <FONT COLOR=red><A NAME="ref_2442_7">Err</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2438_16">C_Assume_Default_Colors</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1838_37">Fore</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1839_37">Back</A>)); -+ <span class="symbol"><A NAME="ref_2442_7">Err</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2438_16">C_Assume_Default_Colors</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1837_37">Fore</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1838_37">Back</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2442_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1838_14">Assume_Default_Colors</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2450_13" HREF="terminal_interface-curses__ads.htm#ref_1848_13">Curses_Version</A></FONT> <b>return</b> String -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1837_14">Assume_Default_Colors</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_2450_13" HREF="terminal_interface-curses__ads.htm#ref_1847_13">Curses_Version</A></span> <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2452_16">curses_versionC</A></FONT> <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_2452_16">curses_versionC</A></span> <b>return</b> chars_ptr; - <b>pragma</b> Import (C, curses_versionC, "curses_version"); -- <FONT COLOR=red><A NAME="ref_2454_7">Result</A></FONT> : <b>constant</b> chars_ptr := <A HREF="terminal_interface-curses__adb.htm#ref_2452_16">curses_versionC</A>; -+ <span class="symbol"><A NAME="ref_2454_7">Result</A></span> : <b>constant</b> chars_ptr := <A HREF="terminal_interface-curses__adb.htm#ref_2452_16">curses_versionC</A>; - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2454_7">Result</A>); -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1848_13">Curses_Version</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2459_14" HREF="terminal_interface-curses__ads.htm#ref_1861_14">Curses_Free_All</A></FONT> <b>is</b> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2460_17">curses_freeall</A></FONT>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1847_13">Curses_Version</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2459_14" HREF="terminal_interface-curses__ads.htm#ref_1860_14">Curses_Free_All</A></span> <b>is</b> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2460_17">curses_freeall</A></span>; - <b>pragma</b> Import (C, curses_freeall, "_nc_freeall"); - <b>begin</b> -- <FONT COLOR=green><EM>-- Use this only for testing: you cannot use curses after calling it,</EM></FONT> -- <FONT COLOR=green><EM>-- so it has to be the "last" thing done before exiting the program.</EM></FONT> -- <FONT COLOR=green><EM>-- This will not really free ALL of memory used by curses. That is</EM></FONT> -- <FONT COLOR=green><EM>-- because it cannot free the memory used for stdout's setbuf. The</EM></FONT> -- <FONT COLOR=green><EM>-- _nc_free_and_exit() procedure can do that, but it can be invoked</EM></FONT> -- <FONT COLOR=green><EM>-- safely only from C - and again, that only as the "last" thing done</EM></FONT> -- <FONT COLOR=green><EM>-- before exiting the program.</EM></FONT> -+ <span class="comment"><EM>-- Use this only for testing: you cannot use curses after calling it,</EM></span> -+ <span class="comment"><EM>-- so it has to be the "last" thing done before exiting the program.</EM></span> -+ <span class="comment"><EM>-- This will not really free ALL of memory used by curses. That is</EM></span> -+ <span class="comment"><EM>-- because it cannot free the memory used for stdout's setbuf. The</EM></span> -+ <span class="comment"><EM>-- _nc_free_and_exit() procedure can do that, but it can be invoked</EM></span> -+ <span class="comment"><EM>-- safely only from C - and again, that only as the "last" thing done</EM></span> -+ <span class="comment"><EM>-- before exiting the program.</EM></span> - <A HREF="terminal_interface-curses__adb.htm#ref_2460_17">curses_freeall</A>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1861_14">Curses_Free_All</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2473_13" HREF="terminal_interface-curses__ads.htm#ref_1853_13">Use_Extended_Names</A></FONT> (<FONT COLOR=red><A NAME="ref_2473_33" HREF="terminal_interface-curses__ads.htm#ref_1853_33">Enable</A></FONT> : Boolean) <b>return</b> Boolean -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1860_14">Curses_Free_All</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_2473_13" HREF="terminal_interface-curses__ads.htm#ref_1852_13">Use_Extended_Names</A></span> (<span class="symbol"><A NAME="ref_2473_33" HREF="terminal_interface-curses__ads.htm#ref_1852_33">Enable</A></span> : Boolean) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2475_16">use_extended_namesC</A></FONT> (<FONT COLOR=red><A NAME="ref_2475_37" HREF="terminal_interface-curses__adb.htm#ref_2475_16">e</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2475_16">use_extended_namesC</A></span> (<span class="symbol"><A NAME="ref_2475_37" HREF="terminal_interface-curses__adb.htm#ref_2475_16">e</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, use_extended_namesC, "use_extended_names"); - -- <FONT COLOR=red><A NAME="ref_2478_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -- <A HREF="terminal_interface-curses__adb.htm#ref_2475_16">use_extended_namesC</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1853_33">Enable</A>))); -+ <span class="symbol"><A NAME="ref_2478_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -+ <A HREF="terminal_interface-curses__adb.htm#ref_2475_16">use_extended_namesC</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1852_33">Enable</A>))); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2478_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A>) <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2478_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A>) <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1853_13">Use_Extended_Names</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2488_14" HREF="terminal_interface-curses__ads.htm#ref_1869_14">Screen_Dump_To_File</A></FONT> (<FONT COLOR=red><A NAME="ref_2488_35" HREF="terminal_interface-curses__ads.htm#ref_1869_35">Filename</A></FONT> : String) -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1852_13">Use_Extended_Names</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2488_14" HREF="terminal_interface-curses__ads.htm#ref_1868_14">Screen_Dump_To_File</A></span> (<span class="symbol"><A NAME="ref_2488_35" HREF="terminal_interface-curses__ads.htm#ref_1868_35">Filename</A></span> : String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2490_16">scr_dump</A></FONT> (<FONT COLOR=red><A NAME="ref_2490_26" HREF="terminal_interface-curses__adb.htm#ref_2490_16">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2490_16">scr_dump</A></span> (<span class="symbol"><A NAME="ref_2490_26" HREF="terminal_interface-curses__adb.htm#ref_2490_16">f</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, scr_dump, "scr_dump"); -- <FONT COLOR=red><A NAME="ref_2492_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1869_35">Filename</A>'Length); -- <FONT COLOR=red><A NAME="ref_2493_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_2492_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1868_35">Filename</A>'Length); -+ <span class="symbol"><A NAME="ref_2493_7">Length</A></span> : size_t; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1869_35">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2492_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2493_7">Length</A>); -+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1868_35">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2492_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2493_7">Length</A>); - <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2490_16">scr_dump</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2492_7">Txt</A>) <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1869_14">Screen_Dump_To_File</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1868_14">Screen_Dump_To_File</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2501_14" HREF="terminal_interface-curses__ads.htm#ref_1873_14">Screen_Restore_From_File</A></FONT> (<FONT COLOR=red><A NAME="ref_2501_40" HREF="terminal_interface-curses__ads.htm#ref_1873_40">Filename</A></FONT> : String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2501_14" HREF="terminal_interface-curses__ads.htm#ref_1872_14">Screen_Restore_From_File</A></span> (<span class="symbol"><A NAME="ref_2501_40" HREF="terminal_interface-curses__ads.htm#ref_1872_40">Filename</A></span> : String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2503_16">scr_restore</A></FONT> (<FONT COLOR=red><A NAME="ref_2503_29" HREF="terminal_interface-curses__adb.htm#ref_2503_16">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2503_16">scr_restore</A></span> (<span class="symbol"><A NAME="ref_2503_29" HREF="terminal_interface-curses__adb.htm#ref_2503_16">f</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, scr_restore, "scr_restore"); -- <FONT COLOR=red><A NAME="ref_2505_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1873_40">Filename</A>'Length); -- <FONT COLOR=red><A NAME="ref_2506_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_2505_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1872_40">Filename</A>'Length); -+ <span class="symbol"><A NAME="ref_2506_7">Length</A></span> : size_t; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1873_40">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2505_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2506_7">Length</A>); -+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1872_40">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2505_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2506_7">Length</A>); - <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2503_16">scr_restore</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2505_7">Txt</A>) <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1873_14">Screen_Restore_From_File</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1872_14">Screen_Restore_From_File</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2514_14" HREF="terminal_interface-curses__ads.htm#ref_1877_14">Screen_Init_From_File</A></FONT> (<FONT COLOR=red><A NAME="ref_2514_37" HREF="terminal_interface-curses__ads.htm#ref_1877_37">Filename</A></FONT> : String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2514_14" HREF="terminal_interface-curses__ads.htm#ref_1876_14">Screen_Init_From_File</A></span> (<span class="symbol"><A NAME="ref_2514_37" HREF="terminal_interface-curses__ads.htm#ref_1876_37">Filename</A></span> : String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2516_16">scr_init</A></FONT> (<FONT COLOR=red><A NAME="ref_2516_26" HREF="terminal_interface-curses__adb.htm#ref_2516_16">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2516_16">scr_init</A></span> (<span class="symbol"><A NAME="ref_2516_26" HREF="terminal_interface-curses__adb.htm#ref_2516_16">f</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, scr_init, "scr_init"); -- <FONT COLOR=red><A NAME="ref_2518_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1877_37">Filename</A>'Length); -- <FONT COLOR=red><A NAME="ref_2519_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_2518_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1876_37">Filename</A>'Length); -+ <span class="symbol"><A NAME="ref_2519_7">Length</A></span> : size_t; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1877_37">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2518_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2519_7">Length</A>); -+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1876_37">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2518_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2519_7">Length</A>); - <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2516_16">scr_init</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2518_7">Txt</A>) <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1877_14">Screen_Init_From_File</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1876_14">Screen_Init_From_File</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2527_14" HREF="terminal_interface-curses__ads.htm#ref_1881_14">Screen_Set_File</A></FONT> (<FONT COLOR=red><A NAME="ref_2527_31" HREF="terminal_interface-curses__ads.htm#ref_1881_31">Filename</A></FONT> : String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2527_14" HREF="terminal_interface-curses__ads.htm#ref_1880_14">Screen_Set_File</A></span> (<span class="symbol"><A NAME="ref_2527_31" HREF="terminal_interface-curses__ads.htm#ref_1880_31">Filename</A></span> : String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2529_16">scr_set</A></FONT> (<FONT COLOR=red><A NAME="ref_2529_25" HREF="terminal_interface-curses__adb.htm#ref_2529_16">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_2529_16">scr_set</A></span> (<span class="symbol"><A NAME="ref_2529_25" HREF="terminal_interface-curses__adb.htm#ref_2529_16">f</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, scr_set, "scr_set"); -- <FONT COLOR=red><A NAME="ref_2531_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1881_31">Filename</A>'Length); -- <FONT COLOR=red><A NAME="ref_2532_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_2531_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1880_31">Filename</A>'Length); -+ <span class="symbol"><A NAME="ref_2532_7">Length</A></span> : size_t; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1881_31">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2531_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2532_7">Length</A>); -+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1880_31">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2531_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2532_7">Length</A>); - <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2529_16">scr_set</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2531_7">Txt</A>) <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1881_14">Screen_Set_File</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2540_14" HREF="terminal_interface-curses__ads.htm#ref_1913_14">Resize</A></FONT> (<FONT COLOR=red><A NAME="ref_2540_22" HREF="terminal_interface-curses__ads.htm#ref_1913_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_2541_22" HREF="terminal_interface-curses__ads.htm#ref_1914_22">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_2542_22" HREF="terminal_interface-curses__ads.htm#ref_1915_22">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_2543_16">wresize</A></FONT> (<FONT COLOR=red><A NAME="ref_2543_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_2544_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_2545_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1880_14">Screen_Set_File</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_2540_14" HREF="terminal_interface-curses__ads.htm#ref_1912_14">Resize</A></span> (<span class="symbol"><A NAME="ref_2540_22" HREF="terminal_interface-curses__ads.htm#ref_1912_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_2541_22" HREF="terminal_interface-curses__ads.htm#ref_1913_22">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_2542_22" HREF="terminal_interface-curses__ads.htm#ref_1914_22">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_2543_16">wresize</A></span> (<span class="symbol"><A NAME="ref_2543_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_2544_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_2545_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, wresize); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2543_16">wresize</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1913_22">Win</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1914_22">Number_Of_Lines</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1915_22">Number_Of_Columns</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2543_16">wresize</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1912_22">Win</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1913_22">Number_Of_Lines</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1914_22">Number_Of_Columns</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1913_14">Resize</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1912_14">Resize</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses__ads.htm 2011-04-02 21:53:41.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses__ads.htm 2014-09-01 16:33:22.314792053 +0200 -@@ -1,225 +1,237 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.44 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/19 23:05:56 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- curses binding.</EM></FONT> --<FONT COLOR=green><EM>-- This module is generated. Please don't change it manually!</EM></FONT> --<FONT COLOR=green><EM>-- Run the generator instead.</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.44 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/19 23:05:56 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- curses binding.</EM></span> -+<span class="comment"><EM>-- This module is generated. Please don't change it manually!</EM></span> -+<span class="comment"><EM>-- Run the generator instead.</EM></span> -+<span class="comment"><EM>-- |</EM></span> - <b>with</b> System.Storage_Elements; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <FONT COLOR=green><EM>-- We need this for some assertions.</EM></FONT> -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <span class="comment"><EM>-- We need this for some assertions.</EM></span> - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<FONT COLOR=red><A NAME="ref_49_28" HREF="terminal_interface-curses__adb.htm#ref_50_33">Curses</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<span class="symbol"><A NAME="ref_49_28" HREF="terminal_interface-curses__adb.htm#ref_50_33">Curses</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>); - <b>pragma</b> Linker_Options ("-lncurses"); - -- <FONT COLOR=red><A NAME="ref_53_4">NC_Major_Version</A></FONT> : <b>constant</b> := 5; <FONT COLOR=green><EM>-- Major version of the library</EM></FONT> -- <FONT COLOR=red><A NAME="ref_54_4">NC_Minor_Version</A></FONT> : <b>constant</b> := 9; <FONT COLOR=green><EM>-- Minor version of the library</EM></FONT> -- <FONT COLOR=red><A NAME="ref_55_4">NC_Version</A></FONT> : <b>constant</b> String := "5.9"; <FONT COLOR=green><EM>-- Version of library</EM></FONT> -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_57_9">Window</A></FONT> <b>is</b> <b>private</b>; -- <FONT COLOR=red><A NAME="ref_58_4">Null_Window</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_60_9">Line_Position</A></FONT> <b>is</b> <b>new</b> Integer; <FONT COLOR=green><EM>-- line coordinate</EM></FONT> -- <b>type</b> <FONT COLOR=red><A NAME="ref_61_9">Column_Position</A></FONT> <b>is</b> <b>new</b> Integer; <FONT COLOR=green><EM>-- column coordinate</EM></FONT> -- -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_63_12">Line_Count</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'Last; -- <FONT COLOR=green><EM>-- Type to count lines. We do not allow null windows, so must be positive</EM></FONT> -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_65_12">Column_Count</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'Last; -- <FONT COLOR=green><EM>-- Type to count columns. We do not allow null windows, so must be positive</EM></FONT> -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_68_9">Key_Code</A></FONT> <b>is</b> <b>new</b> Integer; -- <FONT COLOR=green><EM>-- That is anything including real characters, special keys and logical</EM></FONT> -- <FONT COLOR=green><EM>-- request codes.</EM></FONT> -- -- <FONT COLOR=green><EM>-- FIXME: The "-1" should be Curses_Err</EM></FONT> -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_73_12">Real_Key_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A> <b>range</b> -1 .. 8#777#; -- <FONT COLOR=green><EM>-- This are the codes that potentially represent a real keystroke.</EM></FONT> -- <FONT COLOR=green><EM>-- Not all codes may be possible on a specific terminal. To check the</EM></FONT> -- <FONT COLOR=green><EM>-- availability of a special key, the Has_Key function is provided.</EM></FONT> -+ <span class="symbol"><A NAME="ref_53_4">NC_Major_Version</A></span> : <b>constant</b> := 5; <span class="comment"><EM>-- Major version of the library</EM></span> -+ <span class="symbol"><A NAME="ref_54_4">NC_Minor_Version</A></span> : <b>constant</b> := 9; <span class="comment"><EM>-- Minor version of the library</EM></span> -+ <span class="symbol"><A NAME="ref_55_4">NC_Version</A></span> : <b>constant</b> String := "5.9"; <span class="comment"><EM>-- Version of library</EM></span> -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_57_9">Window</A></span> <b>is</b> <b>private</b>; -+ <span class="symbol"><A NAME="ref_58_4">Null_Window</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_60_9">Line_Position</A></span> <b>is</b> <b>new</b> Integer; <span class="comment"><EM>-- line coordinate</EM></span> -+ <b>type</b> <span class="symbol"><A NAME="ref_61_9">Column_Position</A></span> <b>is</b> <b>new</b> Integer; <span class="comment"><EM>-- column coordinate</EM></span> -+ -+ <b>subtype</b> <span class="symbol"><A NAME="ref_63_12">Line_Count</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'Last; -+ <span class="comment"><EM>-- Type to count lines. We do not allow null windows, so must be positive</EM></span> -+ <b>subtype</b> <span class="symbol"><A NAME="ref_65_12">Column_Count</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'Last; -+ <span class="comment"><EM>-- Type to count columns. We do not allow null windows, so must be positive</EM></span> -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_68_9">Key_Code</A></span> <b>is</b> <b>new</b> Integer; -+ <span class="comment"><EM>-- That is anything including real characters, special keys and logical</EM></span> -+ <span class="comment"><EM>-- request codes.</EM></span> -+ -+ <span class="comment"><EM>-- FIXME: The "-1" should be Curses_Err</EM></span> -+ <b>subtype</b> <span class="symbol"><A NAME="ref_73_12">Real_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A> <b>range</b> -1 .. 8#777#; -+ <span class="comment"><EM>-- This are the codes that potentially represent a real keystroke.</EM></span> -+ <span class="comment"><EM>-- Not all codes may be possible on a specific terminal. To check the</EM></span> -+ <span class="comment"><EM>-- availability of a special key, the Has_Key function is provided.</EM></span> - -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_78_12">Special_Key_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> -+ <b>subtype</b> <span class="symbol"><A NAME="ref_78_12">Special_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> - <b>range</b> 8#400# .. <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>'Last; -- <FONT COLOR=green><EM>-- Type for a function- or special key number</EM></FONT> -+ <span class="comment"><EM>-- Type for a function- or special key number</EM></span> - -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_82_12">Normal_Key_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> <b>range</b> -+ <b>subtype</b> <span class="symbol"><A NAME="ref_82_12">Normal_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> <b>range</b> - Character'Pos (Character'First) .. Character'Pos (Character'Last); -- <FONT COLOR=green><EM>-- This are the codes for regular (incl. non-graphical) characters.</EM></FONT> -+ <span class="comment"><EM>-- This are the codes for regular (incl. non-graphical) characters.</EM></span> - -- <FONT COLOR=green><EM>-- Constants for function- and special keys</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=red><A NAME="ref_88_4">Key_None</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#400#; -- <FONT COLOR=red><A NAME="ref_89_4">Key_Code_Yes</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#400#; -- <FONT COLOR=red><A NAME="ref_90_4">Key_Min</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#401#; -- <FONT COLOR=red><A NAME="ref_91_4">Key_Break</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#401#; -- <FONT COLOR=red><A NAME="ref_92_4">Key_Cursor_Down</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#402#; -- <FONT COLOR=red><A NAME="ref_93_4">Key_Cursor_Up</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#403#; -- <FONT COLOR=red><A NAME="ref_94_4">Key_Cursor_Left</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#404#; -- <FONT COLOR=red><A NAME="ref_95_4">Key_Cursor_Right</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#405#; -- <FONT COLOR=red><A NAME="ref_96_4">Key_Home</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#406#; -- <FONT COLOR=red><A NAME="ref_97_4">Key_Backspace</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#407#; -- <FONT COLOR=red><A NAME="ref_98_4">Key_F0</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#410#; -- <FONT COLOR=red><A NAME="ref_99_4">Key_F1</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#411#; -- <FONT COLOR=red><A NAME="ref_100_4">Key_F2</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#412#; -- <FONT COLOR=red><A NAME="ref_101_4">Key_F3</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#413#; -- <FONT COLOR=red><A NAME="ref_102_4">Key_F4</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#414#; -- <FONT COLOR=red><A NAME="ref_103_4">Key_F5</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#415#; -- <FONT COLOR=red><A NAME="ref_104_4">Key_F6</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#416#; -- <FONT COLOR=red><A NAME="ref_105_4">Key_F7</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#417#; -- <FONT COLOR=red><A NAME="ref_106_4">Key_F8</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#420#; -- <FONT COLOR=red><A NAME="ref_107_4">Key_F9</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#421#; -- <FONT COLOR=red><A NAME="ref_108_4">Key_F10</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#422#; -- <FONT COLOR=red><A NAME="ref_109_4">Key_F11</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#423#; -- <FONT COLOR=red><A NAME="ref_110_4">Key_F12</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#424#; -- <FONT COLOR=red><A NAME="ref_111_4">Key_F13</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#425#; -- <FONT COLOR=red><A NAME="ref_112_4">Key_F14</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#426#; -- <FONT COLOR=red><A NAME="ref_113_4">Key_F15</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#427#; -- <FONT COLOR=red><A NAME="ref_114_4">Key_F16</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#430#; -- <FONT COLOR=red><A NAME="ref_115_4">Key_F17</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#431#; -- <FONT COLOR=red><A NAME="ref_116_4">Key_F18</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#432#; -- <FONT COLOR=red><A NAME="ref_117_4">Key_F19</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#433#; -- <FONT COLOR=red><A NAME="ref_118_4">Key_F20</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#434#; -- <FONT COLOR=red><A NAME="ref_119_4">Key_F21</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#435#; -- <FONT COLOR=red><A NAME="ref_120_4">Key_F22</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#436#; -- <FONT COLOR=red><A NAME="ref_121_4">Key_F23</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#437#; -- <FONT COLOR=red><A NAME="ref_122_4">Key_F24</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#440#; -- <FONT COLOR=red><A NAME="ref_123_4">Key_Delete_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#510#; -- <FONT COLOR=red><A NAME="ref_124_4">Key_Insert_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#511#; -- <FONT COLOR=red><A NAME="ref_125_4">Key_Delete_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#512#; -- <FONT COLOR=red><A NAME="ref_126_4">Key_Insert_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#513#; -- <FONT COLOR=red><A NAME="ref_127_4">Key_Exit_Insert_Mode</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#514#; -- <FONT COLOR=red><A NAME="ref_128_4">Key_Clear_Screen</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#515#; -- <FONT COLOR=red><A NAME="ref_129_4">Key_Clear_End_Of_Screen</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#516#; -- <FONT COLOR=red><A NAME="ref_130_4">Key_Clear_End_Of_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#517#; -- <FONT COLOR=red><A NAME="ref_131_4">Key_Scroll_1_Forward</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#520#; -- <FONT COLOR=red><A NAME="ref_132_4">Key_Scroll_1_Backward</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#521#; -- <FONT COLOR=red><A NAME="ref_133_4">Key_Next_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#522#; -- <FONT COLOR=red><A NAME="ref_134_4">Key_Previous_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#523#; -- <FONT COLOR=red><A NAME="ref_135_4">Key_Set_Tab</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#524#; -- <FONT COLOR=red><A NAME="ref_136_4">Key_Clear_Tab</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#525#; -- <FONT COLOR=red><A NAME="ref_137_4">Key_Clear_All_Tabs</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#526#; -- <FONT COLOR=red><A NAME="ref_138_4">Key_Enter_Or_Send</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#527#; -- <FONT COLOR=red><A NAME="ref_139_4">Key_Soft_Reset</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#530#; -- <FONT COLOR=red><A NAME="ref_140_4">Key_Reset</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#531#; -- <FONT COLOR=red><A NAME="ref_141_4">Key_Print</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#532#; -- <FONT COLOR=red><A NAME="ref_142_4">Key_Bottom</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#533#; -- <FONT COLOR=red><A NAME="ref_143_4">Key_Upper_Left_Of_Keypad</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#534#; -- <FONT COLOR=red><A NAME="ref_144_4">Key_Upper_Right_Of_Keypad</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#535#; -- <FONT COLOR=red><A NAME="ref_145_4">Key_Center_Of_Keypad</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#536#; -- <FONT COLOR=red><A NAME="ref_146_4">Key_Lower_Left_Of_Keypad</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#537#; -- <FONT COLOR=red><A NAME="ref_147_4">Key_Lower_Right_Of_Keypad</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#540#; -- <FONT COLOR=red><A NAME="ref_148_4">Key_Back_Tab</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#541#; -- <FONT COLOR=red><A NAME="ref_149_4">Key_Beginning</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#542#; -- <FONT COLOR=red><A NAME="ref_150_4">Key_Cancel</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#543#; -- <FONT COLOR=red><A NAME="ref_151_4">Key_Close</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#544#; -- <FONT COLOR=red><A NAME="ref_152_4">Key_Command</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#545#; -- <FONT COLOR=red><A NAME="ref_153_4">Key_Copy</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#546#; -- <FONT COLOR=red><A NAME="ref_154_4">Key_Create</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#547#; -- <FONT COLOR=red><A NAME="ref_155_4">Key_End</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#550#; -- <FONT COLOR=red><A NAME="ref_156_4">Key_Exit</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#551#; -- <FONT COLOR=red><A NAME="ref_157_4">Key_Find</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#552#; -- <FONT COLOR=red><A NAME="ref_158_4">Key_Help</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#553#; -- <FONT COLOR=red><A NAME="ref_159_4">Key_Mark</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#554#; -- <FONT COLOR=red><A NAME="ref_160_4">Key_Message</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#555#; -- <FONT COLOR=red><A NAME="ref_161_4">Key_Move</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#556#; -- <FONT COLOR=red><A NAME="ref_162_4">Key_Next</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#557#; -- <FONT COLOR=red><A NAME="ref_163_4">Key_Open</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#560#; -- <FONT COLOR=red><A NAME="ref_164_4">Key_Options</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#561#; -- <FONT COLOR=red><A NAME="ref_165_4">Key_Previous</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#562#; -- <FONT COLOR=red><A NAME="ref_166_4">Key_Redo</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#563#; -- <FONT COLOR=red><A NAME="ref_167_4">Key_Reference</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#564#; -- <FONT COLOR=red><A NAME="ref_168_4">Key_Refresh</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#565#; -- <FONT COLOR=red><A NAME="ref_169_4">Key_Replace</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#566#; -- <FONT COLOR=red><A NAME="ref_170_4">Key_Restart</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#567#; -- <FONT COLOR=red><A NAME="ref_171_4">Key_Resume</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#570#; -- <FONT COLOR=red><A NAME="ref_172_4">Key_Save</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#571#; -- <FONT COLOR=red><A NAME="ref_173_4">Key_Shift_Begin</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#572#; -- <FONT COLOR=red><A NAME="ref_174_4">Key_Shift_Cancel</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#573#; -- <FONT COLOR=red><A NAME="ref_175_4">Key_Shift_Command</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#574#; -- <FONT COLOR=red><A NAME="ref_176_4">Key_Shift_Copy</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#575#; -- <FONT COLOR=red><A NAME="ref_177_4">Key_Shift_Create</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#576#; -- <FONT COLOR=red><A NAME="ref_178_4">Key_Shift_Delete_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#577#; -- <FONT COLOR=red><A NAME="ref_179_4">Key_Shift_Delete_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#600#; -- <FONT COLOR=red><A NAME="ref_180_4">Key_Select</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#601#; -- <FONT COLOR=red><A NAME="ref_181_4">Key_Shift_End</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#602#; -- <FONT COLOR=red><A NAME="ref_182_4">Key_Shift_Clear_End_Of_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#603#; -- <FONT COLOR=red><A NAME="ref_183_4">Key_Shift_Exit</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#604#; -- <FONT COLOR=red><A NAME="ref_184_4">Key_Shift_Find</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#605#; -- <FONT COLOR=red><A NAME="ref_185_4">Key_Shift_Help</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#606#; -- <FONT COLOR=red><A NAME="ref_186_4">Key_Shift_Home</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#607#; -- <FONT COLOR=red><A NAME="ref_187_4">Key_Shift_Insert_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#610#; -- <FONT COLOR=red><A NAME="ref_188_4">Key_Shift_Cursor_Left</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#611#; -- <FONT COLOR=red><A NAME="ref_189_4">Key_Shift_Message</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#612#; -- <FONT COLOR=red><A NAME="ref_190_4">Key_Shift_Move</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#613#; -- <FONT COLOR=red><A NAME="ref_191_4">Key_Shift_Next_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#614#; -- <FONT COLOR=red><A NAME="ref_192_4">Key_Shift_Options</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#615#; -- <FONT COLOR=red><A NAME="ref_193_4">Key_Shift_Previous_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#616#; -- <FONT COLOR=red><A NAME="ref_194_4">Key_Shift_Print</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#617#; -- <FONT COLOR=red><A NAME="ref_195_4">Key_Shift_Redo</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#620#; -- <FONT COLOR=red><A NAME="ref_196_4">Key_Shift_Replace</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#621#; -- <FONT COLOR=red><A NAME="ref_197_4">Key_Shift_Cursor_Right</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#622#; -- <FONT COLOR=red><A NAME="ref_198_4">Key_Shift_Resume</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#623#; -- <FONT COLOR=red><A NAME="ref_199_4">Key_Shift_Save</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#624#; -- <FONT COLOR=red><A NAME="ref_200_4">Key_Shift_Suspend</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#625#; -- <FONT COLOR=red><A NAME="ref_201_4">Key_Shift_Undo</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#626#; -- <FONT COLOR=red><A NAME="ref_202_4">Key_Suspend</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#627#; -- <FONT COLOR=red><A NAME="ref_203_4">Key_Undo</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#630#; -- <FONT COLOR=red><A NAME="ref_204_4">Key_Mouse</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#631#; -- <FONT COLOR=red><A NAME="ref_205_4">Key_Resize</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#632#; -+ <span class="comment"><EM>-- Constants for function- and special keys</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="symbol"><A NAME="ref_88_4">Key_None</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#400#; -+ <span class="symbol"><A NAME="ref_89_4">Key_Code_Yes</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#400#; -+ <span class="symbol"><A NAME="ref_90_4">Key_Min</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#401#; -+ <span class="symbol"><A NAME="ref_91_4">Key_Break</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#401#; -+ <span class="symbol"><A NAME="ref_92_4">Key_Cursor_Down</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#402#; -+ <span class="symbol"><A NAME="ref_93_4">Key_Cursor_Up</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#403#; -+ <span class="symbol"><A NAME="ref_94_4">Key_Cursor_Left</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#404#; -+ <span class="symbol"><A NAME="ref_95_4">Key_Cursor_Right</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#405#; -+ <span class="symbol"><A NAME="ref_96_4">Key_Home</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#406#; -+ <span class="symbol"><A NAME="ref_97_4">Key_Backspace</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#407#; -+ <span class="symbol"><A NAME="ref_98_4">Key_F0</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#410#; -+ <span class="symbol"><A NAME="ref_99_4">Key_F1</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#411#; -+ <span class="symbol"><A NAME="ref_100_4">Key_F2</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#412#; -+ <span class="symbol"><A NAME="ref_101_4">Key_F3</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#413#; -+ <span class="symbol"><A NAME="ref_102_4">Key_F4</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#414#; -+ <span class="symbol"><A NAME="ref_103_4">Key_F5</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#415#; -+ <span class="symbol"><A NAME="ref_104_4">Key_F6</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#416#; -+ <span class="symbol"><A NAME="ref_105_4">Key_F7</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#417#; -+ <span class="symbol"><A NAME="ref_106_4">Key_F8</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#420#; -+ <span class="symbol"><A NAME="ref_107_4">Key_F9</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#421#; -+ <span class="symbol"><A NAME="ref_108_4">Key_F10</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#422#; -+ <span class="symbol"><A NAME="ref_109_4">Key_F11</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#423#; -+ <span class="symbol"><A NAME="ref_110_4">Key_F12</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#424#; -+ <span class="symbol"><A NAME="ref_111_4">Key_F13</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#425#; -+ <span class="symbol"><A NAME="ref_112_4">Key_F14</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#426#; -+ <span class="symbol"><A NAME="ref_113_4">Key_F15</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#427#; -+ <span class="symbol"><A NAME="ref_114_4">Key_F16</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#430#; -+ <span class="symbol"><A NAME="ref_115_4">Key_F17</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#431#; -+ <span class="symbol"><A NAME="ref_116_4">Key_F18</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#432#; -+ <span class="symbol"><A NAME="ref_117_4">Key_F19</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#433#; -+ <span class="symbol"><A NAME="ref_118_4">Key_F20</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#434#; -+ <span class="symbol"><A NAME="ref_119_4">Key_F21</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#435#; -+ <span class="symbol"><A NAME="ref_120_4">Key_F22</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#436#; -+ <span class="symbol"><A NAME="ref_121_4">Key_F23</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#437#; -+ <span class="symbol"><A NAME="ref_122_4">Key_F24</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#440#; -+ <span class="symbol"><A NAME="ref_123_4">Key_Delete_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#510#; -+ <span class="symbol"><A NAME="ref_124_4">Key_Insert_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#511#; -+ <span class="symbol"><A NAME="ref_125_4">Key_Delete_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#512#; -+ <span class="symbol"><A NAME="ref_126_4">Key_Insert_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#513#; -+ <span class="symbol"><A NAME="ref_127_4">Key_Exit_Insert_Mode</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#514#; -+ <span class="symbol"><A NAME="ref_128_4">Key_Clear_Screen</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#515#; -+ <span class="symbol"><A NAME="ref_129_4">Key_Clear_End_Of_Screen</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#516#; -+ <span class="symbol"><A NAME="ref_130_4">Key_Clear_End_Of_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#517#; -+ <span class="symbol"><A NAME="ref_131_4">Key_Scroll_1_Forward</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#520#; -+ <span class="symbol"><A NAME="ref_132_4">Key_Scroll_1_Backward</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#521#; -+ <span class="symbol"><A NAME="ref_133_4">Key_Next_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#522#; -+ <span class="symbol"><A NAME="ref_134_4">Key_Previous_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#523#; -+ <span class="symbol"><A NAME="ref_135_4">Key_Set_Tab</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#524#; -+ <span class="symbol"><A NAME="ref_136_4">Key_Clear_Tab</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#525#; -+ <span class="symbol"><A NAME="ref_137_4">Key_Clear_All_Tabs</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#526#; -+ <span class="symbol"><A NAME="ref_138_4">Key_Enter_Or_Send</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#527#; -+ <span class="symbol"><A NAME="ref_139_4">Key_Soft_Reset</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#530#; -+ <span class="symbol"><A NAME="ref_140_4">Key_Reset</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#531#; -+ <span class="symbol"><A NAME="ref_141_4">Key_Print</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#532#; -+ <span class="symbol"><A NAME="ref_142_4">Key_Bottom</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#533#; -+ <span class="symbol"><A NAME="ref_143_4">Key_Upper_Left_Of_Keypad</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#534#; -+ <span class="symbol"><A NAME="ref_144_4">Key_Upper_Right_Of_Keypad</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#535#; -+ <span class="symbol"><A NAME="ref_145_4">Key_Center_Of_Keypad</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#536#; -+ <span class="symbol"><A NAME="ref_146_4">Key_Lower_Left_Of_Keypad</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#537#; -+ <span class="symbol"><A NAME="ref_147_4">Key_Lower_Right_Of_Keypad</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#540#; -+ <span class="symbol"><A NAME="ref_148_4">Key_Back_Tab</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#541#; -+ <span class="symbol"><A NAME="ref_149_4">Key_Beginning</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#542#; -+ <span class="symbol"><A NAME="ref_150_4">Key_Cancel</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#543#; -+ <span class="symbol"><A NAME="ref_151_4">Key_Close</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#544#; -+ <span class="symbol"><A NAME="ref_152_4">Key_Command</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#545#; -+ <span class="symbol"><A NAME="ref_153_4">Key_Copy</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#546#; -+ <span class="symbol"><A NAME="ref_154_4">Key_Create</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#547#; -+ <span class="symbol"><A NAME="ref_155_4">Key_End</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#550#; -+ <span class="symbol"><A NAME="ref_156_4">Key_Exit</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#551#; -+ <span class="symbol"><A NAME="ref_157_4">Key_Find</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#552#; -+ <span class="symbol"><A NAME="ref_158_4">Key_Help</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#553#; -+ <span class="symbol"><A NAME="ref_159_4">Key_Mark</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#554#; -+ <span class="symbol"><A NAME="ref_160_4">Key_Message</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#555#; -+ <span class="symbol"><A NAME="ref_161_4">Key_Move</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#556#; -+ <span class="symbol"><A NAME="ref_162_4">Key_Next</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#557#; -+ <span class="symbol"><A NAME="ref_163_4">Key_Open</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#560#; -+ <span class="symbol"><A NAME="ref_164_4">Key_Options</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#561#; -+ <span class="symbol"><A NAME="ref_165_4">Key_Previous</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#562#; -+ <span class="symbol"><A NAME="ref_166_4">Key_Redo</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#563#; -+ <span class="symbol"><A NAME="ref_167_4">Key_Reference</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#564#; -+ <span class="symbol"><A NAME="ref_168_4">Key_Refresh</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#565#; -+ <span class="symbol"><A NAME="ref_169_4">Key_Replace</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#566#; -+ <span class="symbol"><A NAME="ref_170_4">Key_Restart</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#567#; -+ <span class="symbol"><A NAME="ref_171_4">Key_Resume</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#570#; -+ <span class="symbol"><A NAME="ref_172_4">Key_Save</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#571#; -+ <span class="symbol"><A NAME="ref_173_4">Key_Shift_Begin</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#572#; -+ <span class="symbol"><A NAME="ref_174_4">Key_Shift_Cancel</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#573#; -+ <span class="symbol"><A NAME="ref_175_4">Key_Shift_Command</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#574#; -+ <span class="symbol"><A NAME="ref_176_4">Key_Shift_Copy</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#575#; -+ <span class="symbol"><A NAME="ref_177_4">Key_Shift_Create</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#576#; -+ <span class="symbol"><A NAME="ref_178_4">Key_Shift_Delete_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#577#; -+ <span class="symbol"><A NAME="ref_179_4">Key_Shift_Delete_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#600#; -+ <span class="symbol"><A NAME="ref_180_4">Key_Select</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#601#; -+ <span class="symbol"><A NAME="ref_181_4">Key_Shift_End</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#602#; -+ <span class="symbol"><A NAME="ref_182_4">Key_Shift_Clear_End_Of_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#603#; -+ <span class="symbol"><A NAME="ref_183_4">Key_Shift_Exit</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#604#; -+ <span class="symbol"><A NAME="ref_184_4">Key_Shift_Find</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#605#; -+ <span class="symbol"><A NAME="ref_185_4">Key_Shift_Help</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#606#; -+ <span class="symbol"><A NAME="ref_186_4">Key_Shift_Home</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#607#; -+ <span class="symbol"><A NAME="ref_187_4">Key_Shift_Insert_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#610#; -+ <span class="symbol"><A NAME="ref_188_4">Key_Shift_Cursor_Left</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#611#; -+ <span class="symbol"><A NAME="ref_189_4">Key_Shift_Message</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#612#; -+ <span class="symbol"><A NAME="ref_190_4">Key_Shift_Move</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#613#; -+ <span class="symbol"><A NAME="ref_191_4">Key_Shift_Next_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#614#; -+ <span class="symbol"><A NAME="ref_192_4">Key_Shift_Options</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#615#; -+ <span class="symbol"><A NAME="ref_193_4">Key_Shift_Previous_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#616#; -+ <span class="symbol"><A NAME="ref_194_4">Key_Shift_Print</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#617#; -+ <span class="symbol"><A NAME="ref_195_4">Key_Shift_Redo</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#620#; -+ <span class="symbol"><A NAME="ref_196_4">Key_Shift_Replace</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#621#; -+ <span class="symbol"><A NAME="ref_197_4">Key_Shift_Cursor_Right</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#622#; -+ <span class="symbol"><A NAME="ref_198_4">Key_Shift_Resume</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#623#; -+ <span class="symbol"><A NAME="ref_199_4">Key_Shift_Save</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#624#; -+ <span class="symbol"><A NAME="ref_200_4">Key_Shift_Suspend</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#625#; -+ <span class="symbol"><A NAME="ref_201_4">Key_Shift_Undo</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#626#; -+ <span class="symbol"><A NAME="ref_202_4">Key_Suspend</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#627#; -+ <span class="symbol"><A NAME="ref_203_4">Key_Undo</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#630#; -+ <span class="symbol"><A NAME="ref_204_4">Key_Mouse</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#631#; -+ <span class="symbol"><A NAME="ref_205_4">Key_Resize</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#632#; - -- <FONT COLOR=red><A NAME="ref_207_4">Key_Max</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> -+ <span class="symbol"><A NAME="ref_207_4">Key_Max</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> - := <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>'Last; - -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_210_12">User_Key_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A> -+ <b>subtype</b> <span class="symbol"><A NAME="ref_210_12">User_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A> - <b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 129) .. <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>'Last; -- <FONT COLOR=green><EM>-- This is reserved for user defined key codes. The range between Key_Max</EM></FONT> -- <FONT COLOR=green><EM>-- and the first user code is reserved for subsystems like menu and forms.</EM></FONT> -+ <span class="comment"><EM>-- This is reserved for user defined key codes. The range between Key_Max</EM></span> -+ <span class="comment"><EM>-- and the first user code is reserved for subsystems like menu and forms.</EM></span> - -- <FONT COLOR=green><EM>-- For those who like to use the original key names we produce them were</EM></FONT> -- <FONT COLOR=green><EM>-- they differ from the original. Please note that they may differ in</EM></FONT> -- <FONT COLOR=green><EM>-- lower/upper case.</EM></FONT> -+ <span class="comment"><EM>-- For those who like to use the original key names we produce them were</EM></span> -+ <span class="comment"><EM>-- they differ from the original. Please note that they may differ in</EM></span> -+ <span class="comment"><EM>-- lower/upper case.</EM></span> - KEY_DOWN : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_92_4">Key_Cursor_Down</A>; - KEY_UP : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_93_4">Key_Cursor_Up</A>; - KEY_LEFT : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_94_4">Key_Cursor_Left</A>; -@@ -278,55 +290,54 @@ - KEY_SSUSPEND : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_200_4">Key_Shift_Suspend</A>; - KEY_SUNDO : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_201_4">Key_Shift_Undo</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - -- <b>type</b> <FONT COLOR=red><A NAME="ref_278_9">Color_Number</A></FONT> <b>is</b> <b>range</b> -1 .. Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'Last); -- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>'Size <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'Size; -- <FONT COLOR=green><EM>-- (n)curses uses a short for the color index</EM></FONT> -- <FONT COLOR=green><EM>-- The model is, that a Color_Number is an index into an array of</EM></FONT> -- <FONT COLOR=green><EM>-- (potentially) definable colors. Some of those indices are</EM></FONT> -- <FONT COLOR=green><EM>-- predefined (see below), although they may not really exist.</EM></FONT> -- -- <FONT COLOR=red><A NAME="ref_285_4">Default_Color</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := -1; -- <FONT COLOR=red><A NAME="ref_286_4">Black</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 0; -- <FONT COLOR=red><A NAME="ref_287_4">Red</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 1; -- <FONT COLOR=red><A NAME="ref_288_4">Green</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 2; -- <FONT COLOR=red><A NAME="ref_289_4">Yellow</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 3; -- <FONT COLOR=red><A NAME="ref_290_4">Blue</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 4; -- <FONT COLOR=red><A NAME="ref_291_4">Magenta</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 5; -- <FONT COLOR=red><A NAME="ref_292_4">Cyan</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 6; -- <FONT COLOR=red><A NAME="ref_293_4">White</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 7; -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_295_9">RGB_Value</A></FONT> <b>is</b> <b>range</b> 0 .. Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'Last); -- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>'Size <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'Size; -- <FONT COLOR=green><EM>-- Some system may allow to redefine a color by setting RGB values.</EM></FONT> -+ <b>type</b> <span class="symbol"><A NAME="ref_278_9">Color_Number</A></span> <b>is</b> <b>range</b> -1 .. Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Last); -+ <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>'Size <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Size; -+ <span class="comment"><EM>-- (n)curses uses a short for the color index</EM></span> -+ <span class="comment"><EM>-- The model is, that a Color_Number is an index into an array of</EM></span> -+ <span class="comment"><EM>-- (potentially) definable colors. Some of those indices are</EM></span> -+ <span class="comment"><EM>-- predefined (see below), although they may not really exist.</EM></span> -+ -+ <span class="symbol"><A NAME="ref_285_4">Default_Color</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := -1; -+ <span class="symbol"><A NAME="ref_286_4">Black</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 0; -+ <span class="symbol"><A NAME="ref_287_4">Red</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 1; -+ <span class="symbol"><A NAME="ref_288_4">Green</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 2; -+ <span class="symbol"><A NAME="ref_289_4">Yellow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 3; -+ <span class="symbol"><A NAME="ref_290_4">Blue</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 4; -+ <span class="symbol"><A NAME="ref_291_4">Magenta</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 5; -+ <span class="symbol"><A NAME="ref_292_4">Cyan</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 6; -+ <span class="symbol"><A NAME="ref_293_4">White</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 7; -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_295_9">RGB_Value</A></span> <b>is</b> <b>range</b> 0 .. Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Last); -+ <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>'Size <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Size; -+ <span class="comment"><EM>-- Some system may allow to redefine a color by setting RGB values.</EM></span> - -- <b>type</b> <FONT COLOR=red><A NAME="ref_299_9">Color_Pair</A></FONT> <b>is</b> <b>range</b> 0 .. 255; -+ <b>type</b> <span class="symbol"><A NAME="ref_299_9">Color_Pair</A></span> <b>is</b> <b>range</b> 0 .. 255; - <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'Size <b>use</b> 8; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_301_12">Redefinable_Color_Pair</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> <b>range</b> 1 .. 255; -- <FONT COLOR=green><EM>-- (n)curses reserves 1 Byte for the color-pair number. Color Pair 0</EM></FONT> -- <FONT COLOR=green><EM>-- is fixed (Black &amp; White). A color pair is simply a combination of</EM></FONT> -- <FONT COLOR=green><EM>-- two colors described by Color_Numbers, one for the foreground and</EM></FONT> -- <FONT COLOR=green><EM>-- the other for the background</EM></FONT> -+ <b>subtype</b> <span class="symbol"><A NAME="ref_301_12">Redefinable_Color_Pair</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> <b>range</b> 1 .. 255; -+ <span class="comment"><EM>-- (n)curses reserves 1 Byte for the color-pair number. Color Pair 0</EM></span> -+ <span class="comment"><EM>-- is fixed (Black &amp; White). A color pair is simply a combination of</EM></span> -+ <span class="comment"><EM>-- two colors described by Color_Numbers, one for the foreground and</EM></span> -+ <span class="comment"><EM>-- the other for the background</EM></span> - -- <b>type</b> <FONT COLOR=red><A NAME="ref_307_9">Character_Attribute_Set</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_307_9">Character_Attribute_Set</A></span> <b>is</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_309_10">Stand_Out</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_310_10">Under_Line</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_311_10">Reverse_Video</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_312_10">Blink</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_313_10">Dim_Character</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_314_10">Bold_Character</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_315_10">Alternate_Character_Set</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_316_10">Invisible_Character</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_317_10">Protected_Character</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_318_10">Horizontal</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_319_10">Left</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_320_10">Low</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_321_10">Right</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_322_10">Top</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_323_10">Vertical</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_324_10">Unused</A></FONT> : Boolean; -+ <span class="symbol"><A NAME="ref_309_10">Stand_Out</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_310_10">Under_Line</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_311_10">Reverse_Video</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_312_10">Blink</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_313_10">Dim_Character</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_314_10">Bold_Character</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_315_10">Alternate_Character_Set</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_316_10">Invisible_Character</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_317_10">Protected_Character</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_318_10">Horizontal</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_319_10">Left</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_320_10">Low</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_321_10">Right</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_322_10">Top</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_323_10">Vertical</A></span> : Boolean; - <b>end</b> <b>record</b>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); - -@@ -347,1589 +358,1589 @@ - <A HREF="terminal_interface-curses__ads.htm#ref_321_10">Right</A> <b>at</b> 0 <b>range</b> 12 .. 12; - <A HREF="terminal_interface-curses__ads.htm#ref_322_10">Top</A> <b>at</b> 0 <b>range</b> 13 .. 13; - <A HREF="terminal_interface-curses__ads.htm#ref_323_10">Vertical</A> <b>at</b> 0 <b>range</b> 14 .. 14; -- <A HREF="terminal_interface-curses__ads.htm#ref_324_10">Unused</A> <b>at</b> 0 <b>range</b> 15 .. 15; - <b>end</b> <b>record</b>; -- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>'Size <b>use</b> 16; -- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT> -- <FONT COLOR=green><EM>-- different on your system.</EM></FONT> -- <FONT COLOR=green><EM>-- (n)curses uses all but the lowest 16 Bits for Attributes.</EM></FONT> -+ <b>pragma</b> Warnings (Off); <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>'Size <b>use</b> 16; -+ <b>pragma</b> Warnings (On); -+ <span class="comment"><EM>-- Please note: this rep. clause is generated and may be</EM></span> -+ <span class="comment"><EM>-- different on your system.</EM></span> -+ <span class="comment"><EM>-- (n)curses uses all but the lowest 16 Bits for Attributes.</EM></span> - -- <FONT COLOR=red><A NAME="ref_352_4">Normal_Video</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := (<b>others</b> =&gt; False); -+ <span class="symbol"><A NAME="ref_351_4">Normal_Video</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := (<b>others</b> =&gt; False); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_354_9">Attributed_Character</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_353_9">Attributed_Character</A></span> <b>is</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_356_10">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_357_10">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>; -- <FONT COLOR=red><A NAME="ref_358_10">Ch</A></FONT> : Character; -+ <span class="symbol"><A NAME="ref_355_10">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_356_10">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>; -+ <span class="symbol"><A NAME="ref_357_10">Ch</A></span> : Character; - <b>end</b> <b>record</b>; -- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -- <FONT COLOR=green><EM>-- This is the counterpart for the chtype in C.</EM></FONT> -+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); -+ <span class="comment"><EM>-- This is the counterpart for the chtype in C.</EM></span> - -- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> <b>use</b> -+ <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> <b>use</b> - <b>record</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> <b>at</b> 0 <b>range</b> 0 .. 7; -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> <b>at</b> 0 <b>range</b> 8 .. 15; -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> <b>at</b> 0 <b>range</b> 16 .. 31; -+ <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> <b>at</b> 0 <b>range</b> 0 .. 7; -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> <b>at</b> 0 <b>range</b> 8 .. 15; -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> <b>at</b> 0 <b>range</b> 16 .. 31; - <b>end</b> <b>record</b>; -- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'Size <b>use</b> 32; -- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT> -- <FONT COLOR=green><EM>-- different on your system.</EM></FONT> -- -- <FONT COLOR=red><A NAME="ref_373_4">Default_Character</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> -- := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; (<b>others</b> =&gt; False)); <FONT COLOR=green><EM>-- preelaboratable Normal_Video</EM></FONT> -+ <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>'Size <b>use</b> 32; -+ <span class="comment"><EM>-- Please note: this rep. clause is generated and may be</EM></span> -+ <span class="comment"><EM>-- different on your system.</EM></span> -+ -+ <span class="symbol"><A NAME="ref_372_4">Default_Character</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> -+ := (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; (<b>others</b> =&gt; False)); <span class="comment"><EM>-- preelaboratable Normal_Video</EM></span> - -- <b>type</b> Attributed_String <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>; -+ <b>type</b> Attributed_String <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>; - <b>pragma</b> Pack (Attributed_String); -- <FONT COLOR=green><EM>-- In this binding we allow strings of attributed characters.</EM></FONT> -+ <span class="comment"><EM>-- In this binding we allow strings of attributed characters.</EM></span> - -- <FONT COLOR=green><EM>------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Exceptions --</EM></FONT> -- <FONT COLOR=green><EM>------------------</EM></FONT> -- <FONT COLOR=red><A NAME="ref_385_4">Curses_Exception</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_386_4">Wrong_Curses_Version</A></FONT> : <b>exception</b>; -- -- <FONT COLOR=green><EM>-- Those exceptions are raised by the ETI (Extended Terminal Interface)</EM></FONT> -- <FONT COLOR=green><EM>-- subpackets for Menu and Forms handling.</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=red><A NAME="ref_391_4">Eti_System_Error</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_392_4">Eti_Bad_Argument</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_393_4">Eti_Posted</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_394_4">Eti_Connected</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_395_4">Eti_Bad_State</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_396_4">Eti_No_Room</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_397_4">Eti_Not_Posted</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_398_4">Eti_Unknown_Command</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_399_4">Eti_No_Match</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_400_4">Eti_Not_Selectable</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_401_4">Eti_Not_Connected</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_402_4">Eti_Request_Denied</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_403_4">Eti_Invalid_Field</A></FONT> : <b>exception</b>; -- <FONT COLOR=red><A NAME="ref_404_4">Eti_Current</A></FONT> : <b>exception</b>; -- -- <FONT COLOR=green><EM>--------------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- External C variables</EM></FONT> -- <FONT COLOR=green><EM>-- Conceptually even in C this are kind of constants, but they are</EM></FONT> -- <FONT COLOR=green><EM>-- initialized and sometimes changed by the library routines at runtime</EM></FONT> -- <FONT COLOR=green><EM>-- depending on the type of terminal. I believe the best way to model</EM></FONT> -- <FONT COLOR=green><EM>-- this is to use functions.</EM></FONT> -- <FONT COLOR=green><EM>--------------------------------------------------------------------------</EM></FONT> -- -- <b>function</b> <FONT COLOR=red><A NAME="ref_414_13" HREF="terminal_interface-curses__adb.htm#ref_2355_13">Lines</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_414_13">Lines</A>); -- -- <b>function</b> <FONT COLOR=red><A NAME="ref_417_13" HREF="terminal_interface-curses__adb.htm#ref_2363_13">Columns</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_417_13">Columns</A>); -+ <span class="comment"><EM>------------------</EM></span> -+ <span class="comment"><EM>-- Exceptions --</EM></span> -+ <span class="comment"><EM>------------------</EM></span> -+ <span class="symbol"><A NAME="ref_384_4">Curses_Exception</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_385_4">Wrong_Curses_Version</A></span> : <b>exception</b>; -+ -+ <span class="comment"><EM>-- Those exceptions are raised by the ETI (Extended Terminal Interface)</EM></span> -+ <span class="comment"><EM>-- subpackets for Menu and Forms handling.</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="symbol"><A NAME="ref_390_4">Eti_System_Error</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_391_4">Eti_Bad_Argument</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_392_4">Eti_Posted</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_393_4">Eti_Connected</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_394_4">Eti_Bad_State</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_395_4">Eti_No_Room</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_396_4">Eti_Not_Posted</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_397_4">Eti_Unknown_Command</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_398_4">Eti_No_Match</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_399_4">Eti_Not_Selectable</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_400_4">Eti_Not_Connected</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_401_4">Eti_Request_Denied</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_402_4">Eti_Invalid_Field</A></span> : <b>exception</b>; -+ <span class="symbol"><A NAME="ref_403_4">Eti_Current</A></span> : <b>exception</b>; -+ -+ <span class="comment"><EM>--------------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>-- External C variables</EM></span> -+ <span class="comment"><EM>-- Conceptually even in C this are kind of constants, but they are</EM></span> -+ <span class="comment"><EM>-- initialized and sometimes changed by the library routines at runtime</EM></span> -+ <span class="comment"><EM>-- depending on the type of terminal. I believe the best way to model</EM></span> -+ <span class="comment"><EM>-- this is to use functions.</EM></span> -+ <span class="comment"><EM>--------------------------------------------------------------------------</EM></span> -+ -+ <b>function</b> <span class="symbol"><A NAME="ref_413_13" HREF="terminal_interface-curses__adb.htm#ref_2355_13">Lines</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_413_13">Lines</A>); -+ -+ <b>function</b> <span class="symbol"><A NAME="ref_416_13" HREF="terminal_interface-curses__adb.htm#ref_2363_13">Columns</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_416_13">Columns</A>); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_420_13" HREF="terminal_interface-curses__adb.htm#ref_2371_13">Tab_Size</A></FONT> <b>return</b> Natural; -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_420_13">Tab_Size</A>); -+ <b>function</b> <span class="symbol"><A NAME="ref_419_13" HREF="terminal_interface-curses__adb.htm#ref_2371_13">Tab_Size</A></span> <b>return</b> Natural; -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_419_13">Tab_Size</A>); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_423_13" HREF="terminal_interface-curses__adb.htm#ref_2379_13">Number_Of_Colors</A></FONT> <b>return</b> Natural; -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_423_13">Number_Of_Colors</A>); -+ <b>function</b> <span class="symbol"><A NAME="ref_422_13" HREF="terminal_interface-curses__adb.htm#ref_2379_13">Number_Of_Colors</A></span> <b>return</b> Natural; -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_422_13">Number_Of_Colors</A>); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_426_13" HREF="terminal_interface-curses__adb.htm#ref_2387_13">Number_Of_Color_Pairs</A></FONT> <b>return</b> Natural; -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_426_13">Number_Of_Color_Pairs</A>); -+ <b>function</b> <span class="symbol"><A NAME="ref_425_13" HREF="terminal_interface-curses__adb.htm#ref_2387_13">Number_Of_Color_Pairs</A></span> <b>return</b> Natural; -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_425_13">Number_Of_Color_Pairs</A>); - - <b>type</b> C_ACS_Map <b>is</b> <b>array</b> (Character'Val (0) .. Character'Val (127)) -- <b>of</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>; -- <FONT COLOR=red><A NAME="ref_431_4">ACS_Map</A></FONT> : C_ACS_Map; -- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__ads.htm#ref_431_4">ACS_Map</A>, "acs_map"); -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>-- Constants for several characters from the Alternate Character Set</EM></FONT> -- <FONT COLOR=green><EM>-- You must use these constants as indices into the ACS_Map array</EM></FONT> -- <FONT COLOR=green><EM>-- to get the corresponding attributed character at runtime.</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=red><A NAME="ref_439_4">ACS_Upper_Left_Corner</A></FONT> : <b>constant</b> Character := 'l'; -- <FONT COLOR=red><A NAME="ref_440_4">ACS_Lower_Left_Corner</A></FONT> : <b>constant</b> Character := 'm'; -- <FONT COLOR=red><A NAME="ref_441_4">ACS_Upper_Right_Corner</A></FONT> : <b>constant</b> Character := 'k'; -- <FONT COLOR=red><A NAME="ref_442_4">ACS_Lower_Right_Corner</A></FONT> : <b>constant</b> Character := 'j'; -- <FONT COLOR=red><A NAME="ref_443_4">ACS_Left_Tee</A></FONT> : <b>constant</b> Character := 't'; -- <FONT COLOR=red><A NAME="ref_444_4">ACS_Right_Tee</A></FONT> : <b>constant</b> Character := 'u'; -- <FONT COLOR=red><A NAME="ref_445_4">ACS_Bottom_Tee</A></FONT> : <b>constant</b> Character := 'v'; -- <FONT COLOR=red><A NAME="ref_446_4">ACS_Top_Tee</A></FONT> : <b>constant</b> Character := 'w'; -- <FONT COLOR=red><A NAME="ref_447_4">ACS_Horizontal_Line</A></FONT> : <b>constant</b> Character := 'q'; -- <FONT COLOR=red><A NAME="ref_448_4">ACS_Vertical_Line</A></FONT> : <b>constant</b> Character := 'x'; -- <FONT COLOR=red><A NAME="ref_449_4">ACS_Plus_Symbol</A></FONT> : <b>constant</b> Character := 'n'; -- <FONT COLOR=red><A NAME="ref_450_4">ACS_Scan_Line_1</A></FONT> : <b>constant</b> Character := 'o'; -- <FONT COLOR=red><A NAME="ref_451_4">ACS_Scan_Line_9</A></FONT> : <b>constant</b> Character := 's'; -- <FONT COLOR=red><A NAME="ref_452_4">ACS_Diamond</A></FONT> : <b>constant</b> Character := Character'Val (96); -- <FONT COLOR=red><A NAME="ref_453_4">ACS_Checker_Board</A></FONT> : <b>constant</b> Character := 'a'; -- <FONT COLOR=red><A NAME="ref_454_4">ACS_Degree</A></FONT> : <b>constant</b> Character := 'f'; -- <FONT COLOR=red><A NAME="ref_455_4">ACS_Plus_Minus</A></FONT> : <b>constant</b> Character := 'g'; -- <FONT COLOR=red><A NAME="ref_456_4">ACS_Bullet</A></FONT> : <b>constant</b> Character := '~'; -- <FONT COLOR=red><A NAME="ref_457_4">ACS_Left_Arrow</A></FONT> : <b>constant</b> Character := ','; -- <FONT COLOR=red><A NAME="ref_458_4">ACS_Right_Arrow</A></FONT> : <b>constant</b> Character := '+'; -- <FONT COLOR=red><A NAME="ref_459_4">ACS_Down_Arrow</A></FONT> : <b>constant</b> Character := '.'; -- <FONT COLOR=red><A NAME="ref_460_4">ACS_Up_Arrow</A></FONT> : <b>constant</b> Character := '-'; -- <FONT COLOR=red><A NAME="ref_461_4">ACS_Board_Of_Squares</A></FONT> : <b>constant</b> Character := 'h'; -- <FONT COLOR=red><A NAME="ref_462_4">ACS_Lantern</A></FONT> : <b>constant</b> Character := 'i'; -- <FONT COLOR=red><A NAME="ref_463_4">ACS_Solid_Block</A></FONT> : <b>constant</b> Character := '0'; -- <FONT COLOR=red><A NAME="ref_464_4">ACS_Scan_Line_3</A></FONT> : <b>constant</b> Character := 'p'; -- <FONT COLOR=red><A NAME="ref_465_4">ACS_Scan_Line_7</A></FONT> : <b>constant</b> Character := 'r'; -- <FONT COLOR=red><A NAME="ref_466_4">ACS_Less_Or_Equal</A></FONT> : <b>constant</b> Character := 'y'; -- <FONT COLOR=red><A NAME="ref_467_4">ACS_Greater_Or_Equal</A></FONT> : <b>constant</b> Character := 'z'; -- <FONT COLOR=red><A NAME="ref_468_4">ACS_PI</A></FONT> : <b>constant</b> Character := '{'; -- <FONT COLOR=red><A NAME="ref_469_4">ACS_Not_Equal</A></FONT> : <b>constant</b> Character := '|'; -- <FONT COLOR=red><A NAME="ref_470_4">ACS_Sterling</A></FONT> : <b>constant</b> Character := '}'; -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_initscr.3x.html">curs_initscr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Not implemented: newterm, set_term, delscreen</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_478_13" HREF="terminal_interface-curses__adb.htm#ref_2339_13">Standard_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">stdscr</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_483_13" HREF="terminal_interface-curses__adb.htm#ref_2347_13">Current_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">curscr</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_483_13">Current_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_488_14" HREF="terminal_interface-curses__adb.htm#ref_98_14">Init_Screen</A></FONT>; -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_491_14">Init_Windows</A></FONT> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_488_14">Init_Screen</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">initscr()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_488_14">Init_Screen</A>); -- <FONT COLOR=green><EM>-- pragma Inline (Init_Windows);</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_497_14" HREF="terminal_interface-curses__adb.htm#ref_111_14">End_Windows</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">endwin()</A></EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_499_14">End_Screen</A></FONT> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_497_14">End_Windows</A>; -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_497_14">End_Windows</A>); -- <FONT COLOR=green><EM>-- pragma Inline (End_Screen);</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_6"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_504_13" HREF="terminal_interface-curses__adb.htm#ref_121_13">Is_End_Window</A></FONT> <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">isendwin()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_504_13">Is_End_Window</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_move.3x.html">curs_move.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_7"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_513_14" HREF="terminal_interface-curses__adb.htm#ref_133_14">Move_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_513_27" HREF="terminal_interface-curses__adb.htm#ref_133_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_514_27" HREF="terminal_interface-curses__adb.htm#ref_134_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_515_27" HREF="terminal_interface-curses__adb.htm#ref_135_27">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_move.3x.html">wmove()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: move()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_addch.3x.html">curs_addch.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_8"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_525_14" HREF="terminal_interface-curses__adb.htm#ref_148_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_525_19" HREF="terminal_interface-curses__adb.htm#ref_148_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_526_19" HREF="terminal_interface-curses__adb.htm#ref_149_19">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">waddch()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: addch()</EM></FONT> -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_530_14" HREF="terminal_interface-curses__adb.htm#ref_160_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_530_19" HREF="terminal_interface-curses__adb.htm#ref_160_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_531_19" HREF="terminal_interface-curses__adb.htm#ref_161_19">Ch</A></FONT> : Character); -- <FONT COLOR=green><EM>-- Add a single character at the current logical cursor position to</EM></FONT> -- <FONT COLOR=green><EM>-- the window. Use the current windows attributes.</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_9"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_536_14" HREF="terminal_interface-curses__adb.htm#ref_170_14">Add</A></FONT> -- (<FONT COLOR=red><A NAME="ref_537_7" HREF="terminal_interface-curses__adb.htm#ref_171_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_538_7" HREF="terminal_interface-curses__adb.htm#ref_172_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_539_7" HREF="terminal_interface-curses__adb.htm#ref_173_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_540_7" HREF="terminal_interface-curses__adb.htm#ref_174_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">mvwaddch()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvaddch()</EM></FONT> -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_544_14" HREF="terminal_interface-curses__adb.htm#ref_189_14">Add</A></FONT> -- (<FONT COLOR=red><A NAME="ref_545_7" HREF="terminal_interface-curses__adb.htm#ref_190_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_546_7" HREF="terminal_interface-curses__adb.htm#ref_191_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_547_7" HREF="terminal_interface-curses__adb.htm#ref_192_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_548_7" HREF="terminal_interface-curses__adb.htm#ref_193_7">Ch</A></FONT> : Character); -- <FONT COLOR=green><EM>-- Move to the position and add a single character into the window</EM></FONT> -- <FONT COLOR=green><EM>-- There are more Add routines, so the Inline pragma follows later</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_10"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_553_14" HREF="terminal_interface-curses__adb.htm#ref_204_14">Add_With_Immediate_Echo</A></FONT> -- (<FONT COLOR=red><A NAME="ref_554_7" HREF="terminal_interface-curses__adb.htm#ref_205_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_555_7" HREF="terminal_interface-curses__adb.htm#ref_206_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">wechochar()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: echochar()</EM></FONT> -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_559_14" HREF="terminal_interface-curses__adb.htm#ref_217_14">Add_With_Immediate_Echo</A></FONT> -- (<FONT COLOR=red><A NAME="ref_560_7" HREF="terminal_interface-curses__adb.htm#ref_218_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_561_7" HREF="terminal_interface-curses__adb.htm#ref_219_7">Ch</A></FONT> : Character); -- <FONT COLOR=green><EM>-- Add a character and do an immediate refresh of the screen.</EM></FONT> -+ <b>of</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>; -+ <span class="symbol"><A NAME="ref_430_4">ACS_Map</A></span> : C_ACS_Map; -+ <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__ads.htm#ref_430_4">ACS_Map</A>, "acs_map"); -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>-- Constants for several characters from the Alternate Character Set</EM></span> -+ <span class="comment"><EM>-- You must use these constants as indices into the ACS_Map array</EM></span> -+ <span class="comment"><EM>-- to get the corresponding attributed character at runtime.</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="symbol"><A NAME="ref_438_4">ACS_Upper_Left_Corner</A></span> : <b>constant</b> Character := 'l'; -+ <span class="symbol"><A NAME="ref_439_4">ACS_Lower_Left_Corner</A></span> : <b>constant</b> Character := 'm'; -+ <span class="symbol"><A NAME="ref_440_4">ACS_Upper_Right_Corner</A></span> : <b>constant</b> Character := 'k'; -+ <span class="symbol"><A NAME="ref_441_4">ACS_Lower_Right_Corner</A></span> : <b>constant</b> Character := 'j'; -+ <span class="symbol"><A NAME="ref_442_4">ACS_Left_Tee</A></span> : <b>constant</b> Character := 't'; -+ <span class="symbol"><A NAME="ref_443_4">ACS_Right_Tee</A></span> : <b>constant</b> Character := 'u'; -+ <span class="symbol"><A NAME="ref_444_4">ACS_Bottom_Tee</A></span> : <b>constant</b> Character := 'v'; -+ <span class="symbol"><A NAME="ref_445_4">ACS_Top_Tee</A></span> : <b>constant</b> Character := 'w'; -+ <span class="symbol"><A NAME="ref_446_4">ACS_Horizontal_Line</A></span> : <b>constant</b> Character := 'q'; -+ <span class="symbol"><A NAME="ref_447_4">ACS_Vertical_Line</A></span> : <b>constant</b> Character := 'x'; -+ <span class="symbol"><A NAME="ref_448_4">ACS_Plus_Symbol</A></span> : <b>constant</b> Character := 'n'; -+ <span class="symbol"><A NAME="ref_449_4">ACS_Scan_Line_1</A></span> : <b>constant</b> Character := 'o'; -+ <span class="symbol"><A NAME="ref_450_4">ACS_Scan_Line_9</A></span> : <b>constant</b> Character := 's'; -+ <span class="symbol"><A NAME="ref_451_4">ACS_Diamond</A></span> : <b>constant</b> Character := Character'Val (96); -+ <span class="symbol"><A NAME="ref_452_4">ACS_Checker_Board</A></span> : <b>constant</b> Character := 'a'; -+ <span class="symbol"><A NAME="ref_453_4">ACS_Degree</A></span> : <b>constant</b> Character := 'f'; -+ <span class="symbol"><A NAME="ref_454_4">ACS_Plus_Minus</A></span> : <b>constant</b> Character := 'g'; -+ <span class="symbol"><A NAME="ref_455_4">ACS_Bullet</A></span> : <b>constant</b> Character := '~'; -+ <span class="symbol"><A NAME="ref_456_4">ACS_Left_Arrow</A></span> : <b>constant</b> Character := ','; -+ <span class="symbol"><A NAME="ref_457_4">ACS_Right_Arrow</A></span> : <b>constant</b> Character := '+'; -+ <span class="symbol"><A NAME="ref_458_4">ACS_Down_Arrow</A></span> : <b>constant</b> Character := '.'; -+ <span class="symbol"><A NAME="ref_459_4">ACS_Up_Arrow</A></span> : <b>constant</b> Character := '-'; -+ <span class="symbol"><A NAME="ref_460_4">ACS_Board_Of_Squares</A></span> : <b>constant</b> Character := 'h'; -+ <span class="symbol"><A NAME="ref_461_4">ACS_Lantern</A></span> : <b>constant</b> Character := 'i'; -+ <span class="symbol"><A NAME="ref_462_4">ACS_Solid_Block</A></span> : <b>constant</b> Character := '0'; -+ <span class="symbol"><A NAME="ref_463_4">ACS_Scan_Line_3</A></span> : <b>constant</b> Character := 'p'; -+ <span class="symbol"><A NAME="ref_464_4">ACS_Scan_Line_7</A></span> : <b>constant</b> Character := 'r'; -+ <span class="symbol"><A NAME="ref_465_4">ACS_Less_Or_Equal</A></span> : <b>constant</b> Character := 'y'; -+ <span class="symbol"><A NAME="ref_466_4">ACS_Greater_Or_Equal</A></span> : <b>constant</b> Character := 'z'; -+ <span class="symbol"><A NAME="ref_467_4">ACS_PI</A></span> : <b>constant</b> Character := '{'; -+ <span class="symbol"><A NAME="ref_468_4">ACS_Not_Equal</A></span> : <b>constant</b> Character := '|'; -+ <span class="symbol"><A NAME="ref_469_4">ACS_Sterling</A></span> : <b>constant</b> Character := '}'; -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_initscr.3x.html">curs_initscr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Not implemented: newterm, set_term, delscreen</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_477_13" HREF="terminal_interface-curses__adb.htm#ref_2339_13">Standard_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">stdscr</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_482_13" HREF="terminal_interface-curses__adb.htm#ref_2347_13">Current_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">curscr</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_482_13">Current_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_487_14" HREF="terminal_interface-curses__adb.htm#ref_98_14">Init_Screen</A></span>; -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_490_14">Init_Windows</A></span> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_14">Init_Screen</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">initscr()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_487_14">Init_Screen</A>); -+ <span class="comment"><EM>-- pragma Inline (Init_Windows);</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_496_14" HREF="terminal_interface-curses__adb.htm#ref_111_14">End_Windows</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">endwin()</A></EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_498_14">End_Screen</A></span> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_496_14">End_Windows</A>; -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_496_14">End_Windows</A>); -+ <span class="comment"><EM>-- pragma Inline (End_Screen);</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_6"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_503_13" HREF="terminal_interface-curses__adb.htm#ref_121_13">Is_End_Window</A></span> <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">isendwin()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_503_13">Is_End_Window</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_move.3x.html">curs_move.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_7"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_512_14" HREF="terminal_interface-curses__adb.htm#ref_133_14">Move_Cursor</A></span> (<span class="symbol"><A NAME="ref_512_27" HREF="terminal_interface-curses__adb.htm#ref_133_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_513_27" HREF="terminal_interface-curses__adb.htm#ref_134_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_514_27" HREF="terminal_interface-curses__adb.htm#ref_135_27">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_move.3x.html">wmove()</A></EM></span> -+ <span class="comment"><EM>-- AKA: move()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_512_14">Move_Cursor</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_addch.3x.html">curs_addch.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_8"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_524_14" HREF="terminal_interface-curses__adb.htm#ref_148_14">Add</A></span> (<span class="symbol"><A NAME="ref_524_19" HREF="terminal_interface-curses__adb.htm#ref_148_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_525_19" HREF="terminal_interface-curses__adb.htm#ref_149_19">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">waddch()</A></EM></span> -+ <span class="comment"><EM>-- AKA: addch()</EM></span> -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_529_14" HREF="terminal_interface-curses__adb.htm#ref_160_14">Add</A></span> (<span class="symbol"><A NAME="ref_529_19" HREF="terminal_interface-curses__adb.htm#ref_160_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_530_19" HREF="terminal_interface-curses__adb.htm#ref_161_19">Ch</A></span> : Character); -+ <span class="comment"><EM>-- Add a single character at the current logical cursor position to</EM></span> -+ <span class="comment"><EM>-- the window. Use the current windows attributes.</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_9"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_535_14" HREF="terminal_interface-curses__adb.htm#ref_170_14">Add</A></span> -+ (<span class="symbol"><A NAME="ref_536_7" HREF="terminal_interface-curses__adb.htm#ref_171_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_537_7" HREF="terminal_interface-curses__adb.htm#ref_172_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_538_7" HREF="terminal_interface-curses__adb.htm#ref_173_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_539_7" HREF="terminal_interface-curses__adb.htm#ref_174_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">mvwaddch()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvaddch()</EM></span> -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_543_14" HREF="terminal_interface-curses__adb.htm#ref_189_14">Add</A></span> -+ (<span class="symbol"><A NAME="ref_544_7" HREF="terminal_interface-curses__adb.htm#ref_190_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_545_7" HREF="terminal_interface-curses__adb.htm#ref_191_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_546_7" HREF="terminal_interface-curses__adb.htm#ref_192_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_547_7" HREF="terminal_interface-curses__adb.htm#ref_193_7">Ch</A></span> : Character); -+ <span class="comment"><EM>-- Move to the position and add a single character into the window</EM></span> -+ <span class="comment"><EM>-- There are more Add routines, so the Inline pragma follows later</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_10"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_552_14" HREF="terminal_interface-curses__adb.htm#ref_204_14">Add_With_Immediate_Echo</A></span> -+ (<span class="symbol"><A NAME="ref_553_7" HREF="terminal_interface-curses__adb.htm#ref_205_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_554_7" HREF="terminal_interface-curses__adb.htm#ref_206_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">wechochar()</A></EM></span> -+ <span class="comment"><EM>-- AKA: echochar()</EM></span> -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_558_14" HREF="terminal_interface-curses__adb.htm#ref_217_14">Add_With_Immediate_Echo</A></span> -+ (<span class="symbol"><A NAME="ref_559_7" HREF="terminal_interface-curses__adb.htm#ref_218_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_560_7" HREF="terminal_interface-curses__adb.htm#ref_219_7">Ch</A></span> : Character); -+ <span class="comment"><EM>-- Add a character and do an immediate refresh of the screen.</EM></span> - <b>pragma</b> Inline (Add_With_Immediate_Echo); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_window.3x.html">curs_window.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- Not Implemented: wcursyncup</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_11"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_571_13" HREF="terminal_interface-curses__adb.htm#ref_229_13">Create</A></FONT> -- (<FONT COLOR=red><A NAME="ref_572_7" HREF="terminal_interface-curses__adb.htm#ref_229_21">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_573_7" HREF="terminal_interface-curses__adb.htm#ref_230_21">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_574_7" HREF="terminal_interface-curses__adb.htm#ref_231_21">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_575_7" HREF="terminal_interface-curses__adb.htm#ref_232_21">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- Not Implemented: Default Number_Of_Lines, Number_Of_Columns</EM></FONT> -- <FONT COLOR=green><EM>-- the C version lets them be 0, see the man page.</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">newwin()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_571_13">Create</A>); -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_window.3x.html">curs_window.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- Not Implemented: wcursyncup</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_11"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_570_13" HREF="terminal_interface-curses__adb.htm#ref_229_13">Create</A></span> -+ (<span class="symbol"><A NAME="ref_571_7" HREF="terminal_interface-curses__adb.htm#ref_229_21">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_572_7" HREF="terminal_interface-curses__adb.htm#ref_230_21">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_573_7" HREF="terminal_interface-curses__adb.htm#ref_231_21">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_574_7" HREF="terminal_interface-curses__adb.htm#ref_232_21">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- Not Implemented: Default Number_Of_Lines, Number_Of_Columns</EM></span> -+ <span class="comment"><EM>-- the C version lets them be 0, see the man page.</EM></span> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">newwin()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_570_13">Create</A>); - - <b>function</b> New_Window -- (<FONT COLOR=red><A NAME="ref_582_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_583_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_584_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_585_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -- <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_571_13">Create</A>; -- <FONT COLOR=green><EM>-- pragma Inline (New_Window);</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_12"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_590_14" HREF="terminal_interface-curses__adb.htm#ref_252_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_590_22" HREF="terminal_interface-curses__adb.htm#ref_252_22">Win</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">delwin()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Reset Win to Null_Window</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_590_14">Delete</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_13"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_596_13" HREF="terminal_interface-curses__adb.htm#ref_263_13">Sub_Window</A></FONT> -- (<FONT COLOR=red><A NAME="ref_597_7" HREF="terminal_interface-curses__adb.htm#ref_264_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_598_7" HREF="terminal_interface-curses__adb.htm#ref_265_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_599_7" HREF="terminal_interface-curses__adb.htm#ref_266_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_600_7" HREF="terminal_interface-curses__adb.htm#ref_267_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_601_7" HREF="terminal_interface-curses__adb.htm#ref_268_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">subwin()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_596_13">Sub_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_14"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_606_13" HREF="terminal_interface-curses__adb.htm#ref_291_13">Derived_Window</A></FONT> -- (<FONT COLOR=red><A NAME="ref_607_7" HREF="terminal_interface-curses__adb.htm#ref_292_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_608_7" HREF="terminal_interface-curses__adb.htm#ref_293_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_609_7" HREF="terminal_interface-curses__adb.htm#ref_294_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_610_7" HREF="terminal_interface-curses__adb.htm#ref_295_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_611_7" HREF="terminal_interface-curses__adb.htm#ref_296_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">derwin()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_606_13">Derived_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_15"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_616_13" HREF="terminal_interface-curses__adb.htm#ref_319_13">Duplicate</A></FONT> (<FONT COLOR=red><A NAME="ref_616_24" HREF="terminal_interface-curses__adb.htm#ref_319_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">dupwin()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_616_13">Duplicate</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_16"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_621_14" HREF="terminal_interface-curses__adb.htm#ref_332_14">Move_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_621_27" HREF="terminal_interface-curses__adb.htm#ref_332_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_622_27" HREF="terminal_interface-curses__adb.htm#ref_333_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_623_27" HREF="terminal_interface-curses__adb.htm#ref_334_27">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">mvwin()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_621_14">Move_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_17"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_628_14" HREF="terminal_interface-curses__adb.htm#ref_346_14">Move_Derived_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_628_35" HREF="terminal_interface-curses__adb.htm#ref_346_35">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_629_35" HREF="terminal_interface-curses__adb.htm#ref_347_35">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_630_35" HREF="terminal_interface-curses__adb.htm#ref_348_35">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">mvderwin()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_628_14">Move_Derived_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_18"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_635_14">Synchronize_Upwards</A></FONT> (<FONT COLOR=red><A NAME="ref_635_35" HREF="terminal_interface-curses__ads.htm#ref_635_14">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">wsyncup()</A></EM></FONT> -+ (<span class="symbol"><A NAME="ref_581_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_582_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_583_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_584_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_570_13">Create</A>; -+ <span class="comment"><EM>-- pragma Inline (New_Window);</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_12"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_589_14" HREF="terminal_interface-curses__adb.htm#ref_252_14">Delete</A></span> (<span class="symbol"><A NAME="ref_589_22" HREF="terminal_interface-curses__adb.htm#ref_252_22">Win</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">delwin()</A></EM></span> -+ <span class="comment"><EM>-- Reset Win to Null_Window</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_589_14">Delete</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_13"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_595_13" HREF="terminal_interface-curses__adb.htm#ref_263_13">Sub_Window</A></span> -+ (<span class="symbol"><A NAME="ref_596_7" HREF="terminal_interface-curses__adb.htm#ref_264_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_597_7" HREF="terminal_interface-curses__adb.htm#ref_265_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_598_7" HREF="terminal_interface-curses__adb.htm#ref_266_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_599_7" HREF="terminal_interface-curses__adb.htm#ref_267_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_600_7" HREF="terminal_interface-curses__adb.htm#ref_268_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">subwin()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_595_13">Sub_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_14"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_605_13" HREF="terminal_interface-curses__adb.htm#ref_291_13">Derived_Window</A></span> -+ (<span class="symbol"><A NAME="ref_606_7" HREF="terminal_interface-curses__adb.htm#ref_292_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_607_7" HREF="terminal_interface-curses__adb.htm#ref_293_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_608_7" HREF="terminal_interface-curses__adb.htm#ref_294_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_609_7" HREF="terminal_interface-curses__adb.htm#ref_295_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_610_7" HREF="terminal_interface-curses__adb.htm#ref_296_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">derwin()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_605_13">Derived_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_15"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_615_13" HREF="terminal_interface-curses__adb.htm#ref_319_13">Duplicate</A></span> (<span class="symbol"><A NAME="ref_615_24" HREF="terminal_interface-curses__adb.htm#ref_319_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">dupwin()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_615_13">Duplicate</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_16"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_620_14" HREF="terminal_interface-curses__adb.htm#ref_332_14">Move_Window</A></span> (<span class="symbol"><A NAME="ref_620_27" HREF="terminal_interface-curses__adb.htm#ref_332_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_621_27" HREF="terminal_interface-curses__adb.htm#ref_333_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_622_27" HREF="terminal_interface-curses__adb.htm#ref_334_27">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">mvwin()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_620_14">Move_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_17"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_627_14" HREF="terminal_interface-curses__adb.htm#ref_346_14">Move_Derived_Window</A></span> (<span class="symbol"><A NAME="ref_627_35" HREF="terminal_interface-curses__adb.htm#ref_346_35">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_628_35" HREF="terminal_interface-curses__adb.htm#ref_347_35">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_629_35" HREF="terminal_interface-curses__adb.htm#ref_348_35">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">mvderwin()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_627_14">Move_Derived_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_18"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_634_14">Synchronize_Upwards</A></span> (<span class="symbol"><A NAME="ref_634_35" HREF="terminal_interface-curses__ads.htm#ref_634_14">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">wsyncup()</A></EM></span> - <b>pragma</b> Import (C, Synchronize_Upwards, "wsyncup"); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_19"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_640_14">Synchronize_Downwards</A></FONT> (<FONT COLOR=red><A NAME="ref_640_37" HREF="terminal_interface-curses__ads.htm#ref_640_14">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">wsyncdown()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_19"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_639_14">Synchronize_Downwards</A></span> (<span class="symbol"><A NAME="ref_639_37" HREF="terminal_interface-curses__ads.htm#ref_639_14">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">wsyncdown()</A></EM></span> - <b>pragma</b> Import (C, Synchronize_Downwards, "wsyncdown"); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_20"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_645_14" HREF="terminal_interface-curses__adb.htm#ref_360_14">Set_Synch_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_645_30" HREF="terminal_interface-curses__adb.htm#ref_360_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_646_30" HREF="terminal_interface-curses__adb.htm#ref_361_30">Mode</A></FONT> : Boolean := False); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">syncok()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_645_14">Set_Synch_Mode</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_addstr.3x.html">curs_addstr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_21"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_655_14" HREF="terminal_interface-curses__adb.htm#ref_372_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_655_19" HREF="terminal_interface-curses__adb.htm#ref_372_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_656_19" HREF="terminal_interface-curses__adb.htm#ref_373_19">Str</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_657_19" HREF="terminal_interface-curses__adb.htm#ref_374_19">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addstr.3x.html">waddnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: waddstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: addnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: addstr()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_22"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_664_14" HREF="terminal_interface-curses__adb.htm#ref_390_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_664_19" HREF="terminal_interface-curses__adb.htm#ref_391_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_665_19" HREF="terminal_interface-curses__adb.htm#ref_392_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_666_19" HREF="terminal_interface-curses__adb.htm#ref_393_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_667_19" HREF="terminal_interface-curses__adb.htm#ref_394_7">Str</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_668_19" HREF="terminal_interface-curses__adb.htm#ref_395_7">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addstr.3x.html">mvwaddnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvwaddstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvaddnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvaddstr()</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_addchstr.3x.html">curs_addchstr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_23"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_679_14" HREF="terminal_interface-curses__adb.htm#ref_402_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_679_19" HREF="terminal_interface-curses__adb.htm#ref_403_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_680_19" HREF="terminal_interface-curses__adb.htm#ref_404_7">Str</A></FONT> : Attributed_String; -- <FONT COLOR=red><A NAME="ref_681_19" HREF="terminal_interface-curses__adb.htm#ref_405_7">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addchstr.3x.html">waddchnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: waddchstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: addchnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: addchstr()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_24"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_688_14" HREF="terminal_interface-curses__adb.htm#ref_425_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_688_19" HREF="terminal_interface-curses__adb.htm#ref_426_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_689_19" HREF="terminal_interface-curses__adb.htm#ref_427_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_690_19" HREF="terminal_interface-curses__adb.htm#ref_428_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_691_19" HREF="terminal_interface-curses__adb.htm#ref_429_7">Str</A></FONT> : Attributed_String; -- <FONT COLOR=red><A NAME="ref_692_19" HREF="terminal_interface-curses__adb.htm#ref_430_7">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addchstr.3x.html">mvwaddchnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvwaddchstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvaddchnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvaddchstr()</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_20"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_644_14" HREF="terminal_interface-curses__adb.htm#ref_360_14">Set_Synch_Mode</A></span> (<span class="symbol"><A NAME="ref_644_30" HREF="terminal_interface-curses__adb.htm#ref_360_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_645_30" HREF="terminal_interface-curses__adb.htm#ref_361_30">Mode</A></span> : Boolean := False); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">syncok()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_644_14">Set_Synch_Mode</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_addstr.3x.html">curs_addstr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_21"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_654_14" HREF="terminal_interface-curses__adb.htm#ref_372_14">Add</A></span> (<span class="symbol"><A NAME="ref_654_19" HREF="terminal_interface-curses__adb.htm#ref_372_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_655_19" HREF="terminal_interface-curses__adb.htm#ref_373_19">Str</A></span> : String; -+ <span class="symbol"><A NAME="ref_656_19" HREF="terminal_interface-curses__adb.htm#ref_374_19">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addstr.3x.html">waddnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: waddstr()</EM></span> -+ <span class="comment"><EM>-- AKA: addnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: addstr()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_22"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_663_14" HREF="terminal_interface-curses__adb.htm#ref_390_14">Add</A></span> (<span class="symbol"><A NAME="ref_663_19" HREF="terminal_interface-curses__adb.htm#ref_391_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_664_19" HREF="terminal_interface-curses__adb.htm#ref_392_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_665_19" HREF="terminal_interface-curses__adb.htm#ref_393_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_666_19" HREF="terminal_interface-curses__adb.htm#ref_394_7">Str</A></span> : String; -+ <span class="symbol"><A NAME="ref_667_19" HREF="terminal_interface-curses__adb.htm#ref_395_7">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addstr.3x.html">mvwaddnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvwaddstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvaddnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvaddstr()</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_addchstr.3x.html">curs_addchstr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_23"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_678_14" HREF="terminal_interface-curses__adb.htm#ref_402_14">Add</A></span> (<span class="symbol"><A NAME="ref_678_19" HREF="terminal_interface-curses__adb.htm#ref_403_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_679_19" HREF="terminal_interface-curses__adb.htm#ref_404_7">Str</A></span> : Attributed_String; -+ <span class="symbol"><A NAME="ref_680_19" HREF="terminal_interface-curses__adb.htm#ref_405_7">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addchstr.3x.html">waddchnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: waddchstr()</EM></span> -+ <span class="comment"><EM>-- AKA: addchnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: addchstr()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_24"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_687_14" HREF="terminal_interface-curses__adb.htm#ref_425_14">Add</A></span> (<span class="symbol"><A NAME="ref_687_19" HREF="terminal_interface-curses__adb.htm#ref_426_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_688_19" HREF="terminal_interface-curses__adb.htm#ref_427_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_689_19" HREF="terminal_interface-curses__adb.htm#ref_428_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_690_19" HREF="terminal_interface-curses__adb.htm#ref_429_7">Str</A></span> : Attributed_String; -+ <span class="symbol"><A NAME="ref_691_19" HREF="terminal_interface-curses__adb.htm#ref_430_7">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addchstr.3x.html">mvwaddchnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvwaddchstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvaddchnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvaddchstr()</EM></span> - <b>pragma</b> Inline (Add); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_border.3x.html">curs_border.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Not implemented: mvhline, mvwhline, mvvline, mvwvline</EM></FONT> -- <FONT COLOR=green><EM>-- | use Move_Cursor then Horizontal_Line or Vertical_Line</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_25"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_706_14" HREF="terminal_interface-curses__adb.htm#ref_437_14">Border</A></FONT> -- (<FONT COLOR=red><A NAME="ref_707_7" HREF="terminal_interface-curses__adb.htm#ref_438_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_708_7" HREF="terminal_interface-curses__adb.htm#ref_439_7">Left_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_709_7" HREF="terminal_interface-curses__adb.htm#ref_440_7">Right_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_710_7" HREF="terminal_interface-curses__adb.htm#ref_441_7">Top_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_711_7" HREF="terminal_interface-curses__adb.htm#ref_442_7">Bottom_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_712_7" HREF="terminal_interface-curses__adb.htm#ref_443_7">Upper_Left_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_713_7" HREF="terminal_interface-curses__adb.htm#ref_444_7">Upper_Right_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_714_7" HREF="terminal_interface-curses__adb.htm#ref_445_7">Lower_Left_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_715_7" HREF="terminal_interface-curses__adb.htm#ref_446_7">Lower_Right_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_border.3x.html">curs_border.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Not implemented: mvhline, mvwhline, mvvline, mvwvline</EM></span> -+ <span class="comment"><EM>-- | use Move_Cursor then Horizontal_Line or Vertical_Line</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_25"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_705_14" HREF="terminal_interface-curses__adb.htm#ref_437_14">Border</A></span> -+ (<span class="symbol"><A NAME="ref_706_7" HREF="terminal_interface-curses__adb.htm#ref_438_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_707_7" HREF="terminal_interface-curses__adb.htm#ref_439_7">Left_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_708_7" HREF="terminal_interface-curses__adb.htm#ref_440_7">Right_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_709_7" HREF="terminal_interface-curses__adb.htm#ref_441_7">Top_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_710_7" HREF="terminal_interface-curses__adb.htm#ref_442_7">Bottom_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_711_7" HREF="terminal_interface-curses__adb.htm#ref_443_7">Upper_Left_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_712_7" HREF="terminal_interface-curses__adb.htm#ref_444_7">Upper_Right_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_713_7" HREF="terminal_interface-curses__adb.htm#ref_445_7">Lower_Left_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_714_7" HREF="terminal_interface-curses__adb.htm#ref_446_7">Lower_Right_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A> - ); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_border.3x.html">wborder()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: border()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_706_14">Border</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_26"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_722_14" HREF="terminal_interface-curses__adb.htm#ref_474_14">Box</A></FONT> -- (<FONT COLOR=red><A NAME="ref_723_7" HREF="terminal_interface-curses__adb.htm#ref_475_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_724_7" HREF="terminal_interface-curses__adb.htm#ref_476_7">Vertical_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>; -- <FONT COLOR=red><A NAME="ref_725_7" HREF="terminal_interface-curses__adb.htm#ref_477_7">Horizontal_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_border.3x.html">box()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_722_14">Box</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_27"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_730_14" HREF="terminal_interface-curses__adb.htm#ref_485_14">Horizontal_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_731_7" HREF="terminal_interface-curses__adb.htm#ref_486_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_732_7" HREF="terminal_interface-curses__adb.htm#ref_487_7">Line_Size</A></FONT> : Natural; -- <FONT COLOR=red><A NAME="ref_733_7" HREF="terminal_interface-curses__adb.htm#ref_488_7">Line_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_border.3x.html">whline()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: hline()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_730_14">Horizontal_Line</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_28"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_739_14" HREF="terminal_interface-curses__adb.htm#ref_502_14">Vertical_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_740_7" HREF="terminal_interface-curses__adb.htm#ref_503_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_741_7" HREF="terminal_interface-curses__adb.htm#ref_504_7">Line_Size</A></FONT> : Natural; -- <FONT COLOR=red><A NAME="ref_742_7" HREF="terminal_interface-curses__adb.htm#ref_505_7">Line_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_border.3x.html">wvline()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: vline()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_739_14">Vertical_Line</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_getch.3x.html">curs_getch.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- Not implemented: mvgetch, mvwgetch</EM></FONT> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">wborder()</A></EM></span> -+ <span class="comment"><EM>-- AKA: border()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_705_14">Border</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_26"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_721_14" HREF="terminal_interface-curses__adb.htm#ref_474_14">Box</A></span> -+ (<span class="symbol"><A NAME="ref_722_7" HREF="terminal_interface-curses__adb.htm#ref_475_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_723_7" HREF="terminal_interface-curses__adb.htm#ref_476_7">Vertical_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>; -+ <span class="symbol"><A NAME="ref_724_7" HREF="terminal_interface-curses__adb.htm#ref_477_7">Horizontal_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">box()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_721_14">Box</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_27"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_729_14" HREF="terminal_interface-curses__adb.htm#ref_485_14">Horizontal_Line</A></span> -+ (<span class="symbol"><A NAME="ref_730_7" HREF="terminal_interface-curses__adb.htm#ref_486_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_731_7" HREF="terminal_interface-curses__adb.htm#ref_487_7">Line_Size</A></span> : Natural; -+ <span class="symbol"><A NAME="ref_732_7" HREF="terminal_interface-curses__adb.htm#ref_488_7">Line_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">whline()</A></EM></span> -+ <span class="comment"><EM>-- AKA: hline()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_729_14">Horizontal_Line</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_28"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_738_14" HREF="terminal_interface-curses__adb.htm#ref_502_14">Vertical_Line</A></span> -+ (<span class="symbol"><A NAME="ref_739_7" HREF="terminal_interface-curses__adb.htm#ref_503_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_740_7" HREF="terminal_interface-curses__adb.htm#ref_504_7">Line_Size</A></span> : Natural; -+ <span class="symbol"><A NAME="ref_741_7" HREF="terminal_interface-curses__adb.htm#ref_505_7">Line_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_372_4">Default_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">wvline()</A></EM></span> -+ <span class="comment"><EM>-- AKA: vline()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_738_14">Vertical_Line</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_getch.3x.html">curs_getch.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- Not implemented: mvgetch, mvwgetch</EM></span> - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_29"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_753_13" HREF="terminal_interface-curses__adb.htm#ref_520_13">Get_Keystroke</A></FONT> (<FONT COLOR=red><A NAME="ref_753_28" HREF="terminal_interface-curses__adb.htm#ref_520_28">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <span class="comment"><EM>-- #1A NAME="AFU_29"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_752_13" HREF="terminal_interface-curses__adb.htm#ref_520_13">Get_Keystroke</A></span> (<span class="symbol"><A NAME="ref_752_28" HREF="terminal_interface-curses__adb.htm#ref_520_28">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">wgetch()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: getch()</EM></FONT> -- <FONT COLOR=green><EM>-- Get a character from the keyboard and echo it - if enabled - to the</EM></FONT> -- <FONT COLOR=green><EM>-- window.</EM></FONT> -- <FONT COLOR=green><EM>-- If for any reason (i.e. a timeout) we could not get a character the</EM></FONT> -- <FONT COLOR=green><EM>-- returned keycode is Key_None.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_753_13">Get_Keystroke</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_30"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_764_14" HREF="terminal_interface-curses__adb.htm#ref_535_14">Undo_Keystroke</A></FONT> (<FONT COLOR=red><A NAME="ref_764_30" HREF="terminal_interface-curses__adb.htm#ref_535_30">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">ungetch()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_764_14">Undo_Keystroke</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_31"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_769_13" HREF="terminal_interface-curses__adb.htm#ref_545_13">Has_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_769_22" HREF="terminal_interface-curses__adb.htm#ref_545_22">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">has_key()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_769_13">Has_Key</A>); -- -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- | Some helper functions</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_776_13" HREF="terminal_interface-curses__adb.htm#ref_557_13">Is_Function_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_776_30" HREF="terminal_interface-curses__adb.htm#ref_557_30">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- Return True if the Key is a function key (i.e. one of F0 .. F63)</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_776_13">Is_Function_Key</A>); -- -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_780_12">Function_Key_Number</A></FONT> <b>is</b> Integer <b>range</b> 0 .. 63; -- <FONT COLOR=green><EM>-- (n)curses allows for 64 function keys.</EM></FONT> -- -- <b>function</b> <FONT COLOR=red><A NAME="ref_783_13" HREF="terminal_interface-curses__adb.htm#ref_569_13">Function_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_783_27" HREF="terminal_interface-curses__adb.htm#ref_569_27">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A>; -- <FONT COLOR=green><EM>-- Return the number of the function key. If the code is not a</EM></FONT> -- <FONT COLOR=green><EM>-- function key, a CONSTRAINT_ERROR will be raised.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_783_13">Function_Key</A>); -- -- <b>function</b> <FONT COLOR=red><A NAME="ref_788_13" HREF="terminal_interface-curses__adb.htm#ref_580_13">Function_Key_Code</A></FONT> (<FONT COLOR=red><A NAME="ref_788_32" HREF="terminal_interface-curses__adb.htm#ref_580_32">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>; -- <FONT COLOR=green><EM>-- Return the key code for a given function-key number.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_788_13">Function_Key_Code</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_attr.3x.html">curs_attr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Not implemented attr_off, wattr_off,</EM></FONT> -- <FONT COLOR=green><EM>-- | attr_on, wattr_on, attr_set, wattr_set</EM></FONT> -- -- <FONT COLOR=green><EM>-- PAIR_NUMBER</EM></FONT> -- <FONT COLOR=green><EM>-- PAIR_NUMBER(c) is the same as c.Color</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_32"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_802_14" HREF="terminal_interface-curses__adb.htm#ref_586_14">Standout</A></FONT> (<FONT COLOR=red><A NAME="ref_802_24" HREF="terminal_interface-curses__adb.htm#ref_586_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_803_24" HREF="terminal_interface-curses__adb.htm#ref_587_24">On</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: wstandout()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: wstandend()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_33"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_808_14" HREF="terminal_interface-curses__adb.htm#ref_606_14">Switch_Character_Attribute</A></FONT> -- (<FONT COLOR=red><A NAME="ref_809_7" HREF="terminal_interface-curses__adb.htm#ref_607_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_810_7" HREF="terminal_interface-curses__adb.htm#ref_608_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_811_7" HREF="terminal_interface-curses__adb.htm#ref_609_7">On</A></FONT> : Boolean := True); <FONT COLOR=green><EM>-- if False we switch Off.</EM></FONT> -- <FONT COLOR=green><EM>-- Switches those Attributes set to true in the list.</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattron()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: wattroff()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: attron()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: attroff()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_34"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_819_14" HREF="terminal_interface-curses__adb.htm#ref_634_14">Set_Character_Attributes</A></FONT> -- (<FONT COLOR=red><A NAME="ref_820_7" HREF="terminal_interface-curses__adb.htm#ref_635_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_821_7" HREF="terminal_interface-curses__adb.htm#ref_636_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_822_7" HREF="terminal_interface-curses__adb.htm#ref_637_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattrset()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: attrset()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_819_14">Set_Character_Attributes</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_35"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_828_13" HREF="terminal_interface-curses__adb.htm#ref_652_13">Get_Character_Attribute</A></FONT> -- (<FONT COLOR=red><A NAME="ref_829_7" HREF="terminal_interface-curses__adb.htm#ref_652_38">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattr_get()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: attr_get()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_36"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_834_13" HREF="terminal_interface-curses__adb.htm#ref_675_13">Get_Character_Attribute</A></FONT> -- (<FONT COLOR=red><A NAME="ref_835_7" HREF="terminal_interface-curses__adb.htm#ref_675_38">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattr_get()</A></EM></FONT> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">wgetch()</A></EM></span> -+ <span class="comment"><EM>-- AKA: getch()</EM></span> -+ <span class="comment"><EM>-- Get a character from the keyboard and echo it - if enabled - to the</EM></span> -+ <span class="comment"><EM>-- window.</EM></span> -+ <span class="comment"><EM>-- If for any reason (i.e. a timeout) we could not get a character the</EM></span> -+ <span class="comment"><EM>-- returned keycode is Key_None.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_752_13">Get_Keystroke</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_30"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_763_14" HREF="terminal_interface-curses__adb.htm#ref_535_14">Undo_Keystroke</A></span> (<span class="symbol"><A NAME="ref_763_30" HREF="terminal_interface-curses__adb.htm#ref_535_30">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">ungetch()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_763_14">Undo_Keystroke</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_31"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_768_13" HREF="terminal_interface-curses__adb.htm#ref_545_13">Has_Key</A></span> (<span class="symbol"><A NAME="ref_768_22" HREF="terminal_interface-curses__adb.htm#ref_545_22">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">has_key()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_768_13">Has_Key</A>); -+ -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- | Some helper functions</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_775_13" HREF="terminal_interface-curses__adb.htm#ref_557_13">Is_Function_Key</A></span> (<span class="symbol"><A NAME="ref_775_30" HREF="terminal_interface-curses__adb.htm#ref_557_30">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- Return True if the Key is a function key (i.e. one of F0 .. F63)</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_775_13">Is_Function_Key</A>); -+ -+ <b>subtype</b> <span class="symbol"><A NAME="ref_779_12">Function_Key_Number</A></span> <b>is</b> Integer <b>range</b> 0 .. 63; -+ <span class="comment"><EM>-- (n)curses allows for 64 function keys.</EM></span> -+ -+ <b>function</b> <span class="symbol"><A NAME="ref_782_13" HREF="terminal_interface-curses__adb.htm#ref_569_13">Function_Key</A></span> (<span class="symbol"><A NAME="ref_782_27" HREF="terminal_interface-curses__adb.htm#ref_569_27">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_779_12">Function_Key_Number</A>; -+ <span class="comment"><EM>-- Return the number of the function key. If the code is not a</EM></span> -+ <span class="comment"><EM>-- function key, a CONSTRAINT_ERROR will be raised.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_782_13">Function_Key</A>); -+ -+ <b>function</b> <span class="symbol"><A NAME="ref_787_13" HREF="terminal_interface-curses__adb.htm#ref_580_13">Function_Key_Code</A></span> (<span class="symbol"><A NAME="ref_787_32" HREF="terminal_interface-curses__adb.htm#ref_580_32">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_779_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>; -+ <span class="comment"><EM>-- Return the key code for a given function-key number.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_787_13">Function_Key_Code</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_attr.3x.html">curs_attr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Not implemented attr_off, wattr_off,</EM></span> -+ <span class="comment"><EM>-- | attr_on, wattr_on, attr_set, wattr_set</EM></span> -+ -+ <span class="comment"><EM>-- PAIR_NUMBER</EM></span> -+ <span class="comment"><EM>-- PAIR_NUMBER(c) is the same as c.Color</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_32"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_801_14" HREF="terminal_interface-curses__adb.htm#ref_586_14">Standout</A></span> (<span class="symbol"><A NAME="ref_801_24" HREF="terminal_interface-curses__adb.htm#ref_586_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_802_24" HREF="terminal_interface-curses__adb.htm#ref_587_24">On</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: wstandout()</EM></span> -+ <span class="comment"><EM>-- AKA: wstandend()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_33"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_807_14" HREF="terminal_interface-curses__adb.htm#ref_606_14">Switch_Character_Attribute</A></span> -+ (<span class="symbol"><A NAME="ref_808_7" HREF="terminal_interface-curses__adb.htm#ref_607_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_809_7" HREF="terminal_interface-curses__adb.htm#ref_608_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_810_7" HREF="terminal_interface-curses__adb.htm#ref_609_7">On</A></span> : Boolean := True); <span class="comment"><EM>-- if False we switch Off.</EM></span> -+ <span class="comment"><EM>-- Switches those Attributes set to true in the list.</EM></span> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattron()</A></EM></span> -+ <span class="comment"><EM>-- AKA: wattroff()</EM></span> -+ <span class="comment"><EM>-- AKA: attron()</EM></span> -+ <span class="comment"><EM>-- AKA: attroff()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_34"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_818_14" HREF="terminal_interface-curses__adb.htm#ref_634_14">Set_Character_Attributes</A></span> -+ (<span class="symbol"><A NAME="ref_819_7" HREF="terminal_interface-curses__adb.htm#ref_635_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_820_7" HREF="terminal_interface-curses__adb.htm#ref_636_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_821_7" HREF="terminal_interface-curses__adb.htm#ref_637_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattrset()</A></EM></span> -+ <span class="comment"><EM>-- AKA: attrset()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_818_14">Set_Character_Attributes</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_35"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_827_13" HREF="terminal_interface-curses__adb.htm#ref_652_13">Get_Character_Attribute</A></span> -+ (<span class="symbol"><A NAME="ref_828_7" HREF="terminal_interface-curses__adb.htm#ref_652_38">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattr_get()</A></EM></span> -+ <span class="comment"><EM>-- AKA: attr_get()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_36"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_833_13" HREF="terminal_interface-curses__adb.htm#ref_675_13">Get_Character_Attribute</A></span> -+ (<span class="symbol"><A NAME="ref_834_7" HREF="terminal_interface-curses__adb.htm#ref_675_38">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattr_get()</A></EM></span> - <b>pragma</b> Inline (Get_Character_Attribute); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_37"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_840_14" HREF="terminal_interface-curses__adb.htm#ref_698_14">Set_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_840_25" HREF="terminal_interface-curses__adb.htm#ref_698_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_841_25" HREF="terminal_interface-curses__adb.htm#ref_699_25">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wcolor_set()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: color_set()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_840_14">Set_Color</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_38"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_847_14" HREF="terminal_interface-curses__adb.htm#ref_713_14">Change_Attributes</A></FONT> -- (<FONT COLOR=red><A NAME="ref_848_7" HREF="terminal_interface-curses__adb.htm#ref_714_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_849_7" HREF="terminal_interface-curses__adb.htm#ref_715_7">Count</A></FONT> : Integer := -1; -- <FONT COLOR=red><A NAME="ref_850_7" HREF="terminal_interface-curses__adb.htm#ref_716_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_851_7" HREF="terminal_interface-curses__adb.htm#ref_717_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wchgat()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: chgat()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_39"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_856_14" HREF="terminal_interface-curses__adb.htm#ref_736_14">Change_Attributes</A></FONT> -- (<FONT COLOR=red><A NAME="ref_857_7" HREF="terminal_interface-curses__adb.htm#ref_737_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_858_7" HREF="terminal_interface-curses__adb.htm#ref_738_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'First; -- <FONT COLOR=red><A NAME="ref_859_7" HREF="terminal_interface-curses__adb.htm#ref_739_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'First; -- <FONT COLOR=red><A NAME="ref_860_7" HREF="terminal_interface-curses__adb.htm#ref_740_7">Count</A></FONT> : Integer := -1; -- <FONT COLOR=red><A NAME="ref_861_7" HREF="terminal_interface-curses__adb.htm#ref_741_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_862_7" HREF="terminal_interface-curses__adb.htm#ref_742_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">mvwchgat()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvchgat()</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_37"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_839_14" HREF="terminal_interface-curses__adb.htm#ref_698_14">Set_Color</A></span> (<span class="symbol"><A NAME="ref_839_25" HREF="terminal_interface-curses__adb.htm#ref_698_25">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_840_25" HREF="terminal_interface-curses__adb.htm#ref_699_25">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wcolor_set()</A></EM></span> -+ <span class="comment"><EM>-- AKA: color_set()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_839_14">Set_Color</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_38"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_846_14" HREF="terminal_interface-curses__adb.htm#ref_713_14">Change_Attributes</A></span> -+ (<span class="symbol"><A NAME="ref_847_7" HREF="terminal_interface-curses__adb.htm#ref_714_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_848_7" HREF="terminal_interface-curses__adb.htm#ref_715_7">Count</A></span> : Integer := -1; -+ <span class="symbol"><A NAME="ref_849_7" HREF="terminal_interface-curses__adb.htm#ref_716_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_850_7" HREF="terminal_interface-curses__adb.htm#ref_717_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wchgat()</A></EM></span> -+ <span class="comment"><EM>-- AKA: chgat()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_39"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_855_14" HREF="terminal_interface-curses__adb.htm#ref_736_14">Change_Attributes</A></span> -+ (<span class="symbol"><A NAME="ref_856_7" HREF="terminal_interface-curses__adb.htm#ref_737_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_857_7" HREF="terminal_interface-curses__adb.htm#ref_738_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'First; -+ <span class="symbol"><A NAME="ref_858_7" HREF="terminal_interface-curses__adb.htm#ref_739_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'First; -+ <span class="symbol"><A NAME="ref_859_7" HREF="terminal_interface-curses__adb.htm#ref_740_7">Count</A></span> : Integer := -1; -+ <span class="symbol"><A NAME="ref_860_7" HREF="terminal_interface-curses__adb.htm#ref_741_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_861_7" HREF="terminal_interface-curses__adb.htm#ref_742_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">mvwchgat()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvchgat()</EM></span> - <b>pragma</b> Inline (Change_Attributes); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_beep.3x.html">curs_beep.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_40"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_872_14" HREF="terminal_interface-curses__adb.htm#ref_749_14">Beep</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_beep.3x.html">beep()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_872_14">Beep</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_41"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_877_14" HREF="terminal_interface-curses__adb.htm#ref_759_14">Flash_Screen</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_beep.3x.html">flash()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_877_14">Flash_Screen</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_inopts.3x.html">curs_inopts.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- | Not implemented : typeahead</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>-- #1A NAME="AFU_42"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_888_14" HREF="terminal_interface-curses__adb.htm#ref_769_14">Set_Cbreak_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_888_31" HREF="terminal_interface-curses__adb.htm#ref_769_31">SwitchOn</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">cbreak()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: nocbreak()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_888_14">Set_Cbreak_Mode</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_43"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_894_14" HREF="terminal_interface-curses__adb.htm#ref_788_14">Set_Raw_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_894_28" HREF="terminal_interface-curses__adb.htm#ref_788_28">SwitchOn</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">raw()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: noraw()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_894_14">Set_Raw_Mode</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_44"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_900_14" HREF="terminal_interface-curses__adb.htm#ref_807_14">Set_Echo_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_900_29" HREF="terminal_interface-curses__adb.htm#ref_807_29">SwitchOn</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">echo()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: noecho()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_900_14">Set_Echo_Mode</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_45"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_906_14" HREF="terminal_interface-curses__adb.htm#ref_826_14">Set_Meta_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_906_29" HREF="terminal_interface-curses__adb.htm#ref_826_29">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_907_29" HREF="terminal_interface-curses__adb.htm#ref_827_29">SwitchOn</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">meta()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_906_14">Set_Meta_Mode</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_46"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_912_14" HREF="terminal_interface-curses__adb.htm#ref_837_14">Set_KeyPad_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_912_31" HREF="terminal_interface-curses__adb.htm#ref_837_31">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_913_31" HREF="terminal_interface-curses__adb.htm#ref_838_31">SwitchOn</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">keypad()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_912_14">Set_KeyPad_Mode</A>); -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_beep.3x.html">curs_beep.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_40"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_871_14" HREF="terminal_interface-curses__adb.htm#ref_749_14">Beep</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_beep.3x.html">beep()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_871_14">Beep</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_41"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_876_14" HREF="terminal_interface-curses__adb.htm#ref_759_14">Flash_Screen</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_beep.3x.html">flash()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_876_14">Flash_Screen</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_inopts.3x.html">curs_inopts.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- | Not implemented : typeahead</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>-- #1A NAME="AFU_42"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_887_14" HREF="terminal_interface-curses__adb.htm#ref_769_14">Set_Cbreak_Mode</A></span> (<span class="symbol"><A NAME="ref_887_31" HREF="terminal_interface-curses__adb.htm#ref_769_31">SwitchOn</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">cbreak()</A></EM></span> -+ <span class="comment"><EM>-- AKA: nocbreak()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_887_14">Set_Cbreak_Mode</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_43"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_893_14" HREF="terminal_interface-curses__adb.htm#ref_788_14">Set_Raw_Mode</A></span> (<span class="symbol"><A NAME="ref_893_28" HREF="terminal_interface-curses__adb.htm#ref_788_28">SwitchOn</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">raw()</A></EM></span> -+ <span class="comment"><EM>-- AKA: noraw()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_893_14">Set_Raw_Mode</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_44"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_899_14" HREF="terminal_interface-curses__adb.htm#ref_807_14">Set_Echo_Mode</A></span> (<span class="symbol"><A NAME="ref_899_29" HREF="terminal_interface-curses__adb.htm#ref_807_29">SwitchOn</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">echo()</A></EM></span> -+ <span class="comment"><EM>-- AKA: noecho()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_899_14">Set_Echo_Mode</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_45"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_905_14" HREF="terminal_interface-curses__adb.htm#ref_826_14">Set_Meta_Mode</A></span> (<span class="symbol"><A NAME="ref_905_29" HREF="terminal_interface-curses__adb.htm#ref_826_29">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_906_29" HREF="terminal_interface-curses__adb.htm#ref_827_29">SwitchOn</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">meta()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_905_14">Set_Meta_Mode</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_46"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_911_14" HREF="terminal_interface-curses__adb.htm#ref_837_14">Set_KeyPad_Mode</A></span> (<span class="symbol"><A NAME="ref_911_31" HREF="terminal_interface-curses__adb.htm#ref_837_31">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_912_31" HREF="terminal_interface-curses__adb.htm#ref_838_31">SwitchOn</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">keypad()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_911_14">Set_KeyPad_Mode</A>); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_917_13" HREF="terminal_interface-curses__adb.htm#ref_848_13">Get_KeyPad_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_917_30" HREF="terminal_interface-curses__adb.htm#ref_848_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_916_13" HREF="terminal_interface-curses__adb.htm#ref_848_13">Get_KeyPad_Mode</A></span> (<span class="symbol"><A NAME="ref_916_30" HREF="terminal_interface-curses__adb.htm#ref_848_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) - <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- This has no pendant in C. There you've to look into the WINDOWS</EM></FONT> -- <FONT COLOR=green><EM>-- structure to get the value. Bad practice, not repeated in Ada.</EM></FONT> -+ <span class="comment"><EM>-- This has no pendant in C. There you've to look into the WINDOWS</EM></span> -+ <span class="comment"><EM>-- structure to get the value. Bad practice, not repeated in Ada.</EM></span> - -- <b>type</b> <FONT COLOR=red><A NAME="ref_922_9">Half_Delay_Amount</A></FONT> <b>is</b> <b>range</b> 1 .. 255; -+ <b>type</b> <span class="symbol"><A NAME="ref_921_9">Half_Delay_Amount</A></span> <b>is</b> <b>range</b> 1 .. 255; - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_47"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_925_14" HREF="terminal_interface-curses__adb.htm#ref_857_14">Half_Delay</A></FONT> (<FONT COLOR=red><A NAME="ref_925_26" HREF="terminal_interface-curses__adb.htm#ref_857_26">Amount</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_922_9">Half_Delay_Amount</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">halfdelay()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_925_14">Half_Delay</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_48"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_930_14" HREF="terminal_interface-curses__adb.htm#ref_867_14">Set_Flush_On_Interrupt_Mode</A></FONT> -- (<FONT COLOR=red><A NAME="ref_931_7" HREF="terminal_interface-curses__adb.htm#ref_868_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_932_7" HREF="terminal_interface-curses__adb.htm#ref_869_7">Mode</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">intrflush()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_930_14">Set_Flush_On_Interrupt_Mode</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_49"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_937_14" HREF="terminal_interface-curses__adb.htm#ref_879_14">Set_Queue_Interrupt_Mode</A></FONT> -- (<FONT COLOR=red><A NAME="ref_938_7" HREF="terminal_interface-curses__adb.htm#ref_880_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_939_7" HREF="terminal_interface-curses__adb.htm#ref_881_7">Flush</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">qiflush()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: noqiflush()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_937_14">Set_Queue_Interrupt_Mode</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_50"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_945_14" HREF="terminal_interface-curses__adb.htm#ref_898_14">Set_NoDelay_Mode</A></FONT> -- (<FONT COLOR=red><A NAME="ref_946_7" HREF="terminal_interface-curses__adb.htm#ref_899_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_947_7" HREF="terminal_interface-curses__adb.htm#ref_900_7">Mode</A></FONT> : Boolean := False); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">nodelay()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_945_14">Set_NoDelay_Mode</A>); -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_951_9">Timeout_Mode</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_951_26">Blocking</A></FONT>, <FONT COLOR=red><A NAME="ref_951_36">Non_Blocking</A></FONT>, <FONT COLOR=red><A NAME="ref_951_50">Delayed</A></FONT>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_51"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_954_14" HREF="terminal_interface-curses__adb.htm#ref_910_14">Set_Timeout_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_954_32" HREF="terminal_interface-curses__adb.htm#ref_910_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_955_32" HREF="terminal_interface-curses__adb.htm#ref_911_32">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_951_9">Timeout_Mode</A>; -- <FONT COLOR=red><A NAME="ref_956_32" HREF="terminal_interface-curses__adb.htm#ref_912_32">Amount</A></FONT> : Natural); <FONT COLOR=green><EM>-- in Milliseconds</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">wtimeout()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: timeout()</EM></FONT> -- <FONT COLOR=green><EM>-- Instead of overloading the semantic of the sign of amount, we</EM></FONT> -- <FONT COLOR=green><EM>-- introduce the Timeout_Mode parameter. This should improve</EM></FONT> -- <FONT COLOR=green><EM>-- readability. For Blocking and Non_Blocking, the Amount is not</EM></FONT> -- <FONT COLOR=green><EM>-- evaluated.</EM></FONT> -- <FONT COLOR=green><EM>-- We do not inline this procedure.</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_52"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_966_14" HREF="terminal_interface-curses__adb.htm#ref_931_14">Set_Escape_Timer_Mode</A></FONT> -- (<FONT COLOR=red><A NAME="ref_967_7" HREF="terminal_interface-curses__adb.htm#ref_932_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_968_7" HREF="terminal_interface-curses__adb.htm#ref_933_7">Timer_Off</A></FONT> : Boolean := False); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">notimeout()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_966_14">Set_Escape_Timer_Mode</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_outopts.3x.html">curs_outopts.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_53"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_977_14" HREF="terminal_interface-curses__adb.htm#ref_945_14">Set_NL_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_977_27" HREF="terminal_interface-curses__adb.htm#ref_945_27">SwitchOn</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">nl()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: nonl()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_977_14">Set_NL_Mode</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_54"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_983_14" HREF="terminal_interface-curses__adb.htm#ref_964_14">Clear_On_Next_Update</A></FONT> -- (<FONT COLOR=red><A NAME="ref_984_7" HREF="terminal_interface-curses__adb.htm#ref_965_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_985_7" HREF="terminal_interface-curses__adb.htm#ref_966_7">Do_Clear</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">clearok()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_983_14">Clear_On_Next_Update</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_55"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_990_14" HREF="terminal_interface-curses__adb.htm#ref_976_14">Use_Insert_Delete_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_991_7" HREF="terminal_interface-curses__adb.htm#ref_977_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_992_7" HREF="terminal_interface-curses__adb.htm#ref_978_7">Do_Idl</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">idlok()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_990_14">Use_Insert_Delete_Line</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_56"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_997_14" HREF="terminal_interface-curses__adb.htm#ref_988_14">Use_Insert_Delete_Character</A></FONT> -- (<FONT COLOR=red><A NAME="ref_998_7" HREF="terminal_interface-curses__adb.htm#ref_989_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_999_7" HREF="terminal_interface-curses__adb.htm#ref_990_7">Do_Idc</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">idcok()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_997_14">Use_Insert_Delete_Character</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_57"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1004_14" HREF="terminal_interface-curses__adb.htm#ref_998_14">Leave_Cursor_After_Update</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1005_7" HREF="terminal_interface-curses__adb.htm#ref_999_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1006_7" HREF="terminal_interface-curses__adb.htm#ref_1000_7">Do_Leave</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">leaveok()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1004_14">Leave_Cursor_After_Update</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_58"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1011_14" HREF="terminal_interface-curses__adb.htm#ref_1010_14">Immediate_Update_Mode</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1012_7" HREF="terminal_interface-curses__adb.htm#ref_1011_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1013_7" HREF="terminal_interface-curses__adb.htm#ref_1012_7">Mode</A></FONT> : Boolean := False); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">immedok()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1011_14">Immediate_Update_Mode</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_59"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1018_14" HREF="terminal_interface-curses__adb.htm#ref_1020_14">Allow_Scrolling</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1019_7" HREF="terminal_interface-curses__adb.htm#ref_1021_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1020_7" HREF="terminal_interface-curses__adb.htm#ref_1022_7">Mode</A></FONT> : Boolean := False); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">scrollok()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1018_14">Allow_Scrolling</A>); -- -- <b>function</b> <FONT COLOR=red><A NAME="ref_1024_13" HREF="terminal_interface-curses__adb.htm#ref_1032_13">Scrolling_Allowed</A></FONT> (<FONT COLOR=red><A NAME="ref_1024_32" HREF="terminal_interface-curses__adb.htm#ref_1032_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- There is no such function in the C interface.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1024_13">Scrolling_Allowed</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_60"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1029_14" HREF="terminal_interface-curses__adb.htm#ref_1041_14">Set_Scroll_Region</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1030_7" HREF="terminal_interface-curses__adb.htm#ref_1042_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1031_7" HREF="terminal_interface-curses__adb.htm#ref_1043_7">Top_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1032_7" HREF="terminal_interface-curses__adb.htm#ref_1044_7">Bottom_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">wsetscrreg()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: setscrreg()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1029_14">Set_Scroll_Region</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_refresh.3x.html">curs_refresh.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_61"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1042_14" HREF="terminal_interface-curses__adb.htm#ref_1057_14">Update_Screen</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">doupdate()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1042_14">Update_Screen</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_62"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1047_14" HREF="terminal_interface-curses__adb.htm#ref_1067_14">Refresh</A></FONT> (<FONT COLOR=red><A NAME="ref_1047_23" HREF="terminal_interface-curses__adb.htm#ref_1067_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wrefresh()</A></EM></FONT> -- <FONT COLOR=green><EM>-- There is an overloaded Refresh for Pads.</EM></FONT> -- <FONT COLOR=green><EM>-- The Inline pragma appears there</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: refresh()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_63"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1054_14" HREF="terminal_interface-curses__adb.htm#ref_1077_14">Refresh_Without_Update</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1055_7" HREF="terminal_interface-curses__adb.htm#ref_1078_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wnoutrefresh()</A></EM></FONT> -- <FONT COLOR=green><EM>-- There is an overloaded Refresh_Without_Update for Pads.</EM></FONT> -- <FONT COLOR=green><EM>-- The Inline pragma appears there</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_64"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1061_14" HREF="terminal_interface-curses__adb.htm#ref_1088_14">Redraw</A></FONT> (<FONT COLOR=red><A NAME="ref_1061_22" HREF="terminal_interface-curses__adb.htm#ref_1088_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">redrawwin()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_65"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1065_14" HREF="terminal_interface-curses__adb.htm#ref_1098_14">Redraw</A></FONT> (<FONT COLOR=red><A NAME="ref_1065_22" HREF="terminal_interface-curses__adb.htm#ref_1099_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1066_22" HREF="terminal_interface-curses__adb.htm#ref_1100_7">Begin_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1067_22" HREF="terminal_interface-curses__adb.htm#ref_1101_7">Line_Count</A></FONT> : Positive); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wredrawln()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_47"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_924_14" HREF="terminal_interface-curses__adb.htm#ref_857_14">Half_Delay</A></span> (<span class="symbol"><A NAME="ref_924_26" HREF="terminal_interface-curses__adb.htm#ref_857_26">Amount</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_921_9">Half_Delay_Amount</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">halfdelay()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_924_14">Half_Delay</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_48"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_929_14" HREF="terminal_interface-curses__adb.htm#ref_867_14">Set_Flush_On_Interrupt_Mode</A></span> -+ (<span class="symbol"><A NAME="ref_930_7" HREF="terminal_interface-curses__adb.htm#ref_868_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_931_7" HREF="terminal_interface-curses__adb.htm#ref_869_7">Mode</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">intrflush()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_929_14">Set_Flush_On_Interrupt_Mode</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_49"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_936_14" HREF="terminal_interface-curses__adb.htm#ref_879_14">Set_Queue_Interrupt_Mode</A></span> -+ (<span class="symbol"><A NAME="ref_937_7" HREF="terminal_interface-curses__adb.htm#ref_880_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_938_7" HREF="terminal_interface-curses__adb.htm#ref_881_7">Flush</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">qiflush()</A></EM></span> -+ <span class="comment"><EM>-- AKA: noqiflush()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_936_14">Set_Queue_Interrupt_Mode</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_50"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_944_14" HREF="terminal_interface-curses__adb.htm#ref_898_14">Set_NoDelay_Mode</A></span> -+ (<span class="symbol"><A NAME="ref_945_7" HREF="terminal_interface-curses__adb.htm#ref_899_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_946_7" HREF="terminal_interface-curses__adb.htm#ref_900_7">Mode</A></span> : Boolean := False); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">nodelay()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_944_14">Set_NoDelay_Mode</A>); -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_950_9">Timeout_Mode</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_950_26">Blocking</A></span>, <span class="symbol"><A NAME="ref_950_36">Non_Blocking</A></span>, <span class="symbol"><A NAME="ref_950_50">Delayed</A></span>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_51"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_953_14" HREF="terminal_interface-curses__adb.htm#ref_910_14">Set_Timeout_Mode</A></span> (<span class="symbol"><A NAME="ref_953_32" HREF="terminal_interface-curses__adb.htm#ref_910_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_954_32" HREF="terminal_interface-curses__adb.htm#ref_911_32">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_950_9">Timeout_Mode</A>; -+ <span class="symbol"><A NAME="ref_955_32" HREF="terminal_interface-curses__adb.htm#ref_912_32">Amount</A></span> : Natural); <span class="comment"><EM>-- in Milliseconds</EM></span> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">wtimeout()</A></EM></span> -+ <span class="comment"><EM>-- AKA: timeout()</EM></span> -+ <span class="comment"><EM>-- Instead of overloading the semantic of the sign of amount, we</EM></span> -+ <span class="comment"><EM>-- introduce the Timeout_Mode parameter. This should improve</EM></span> -+ <span class="comment"><EM>-- readability. For Blocking and Non_Blocking, the Amount is not</EM></span> -+ <span class="comment"><EM>-- evaluated.</EM></span> -+ <span class="comment"><EM>-- We do not inline this procedure.</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_52"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_965_14" HREF="terminal_interface-curses__adb.htm#ref_931_14">Set_Escape_Timer_Mode</A></span> -+ (<span class="symbol"><A NAME="ref_966_7" HREF="terminal_interface-curses__adb.htm#ref_932_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_967_7" HREF="terminal_interface-curses__adb.htm#ref_933_7">Timer_Off</A></span> : Boolean := False); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">notimeout()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_965_14">Set_Escape_Timer_Mode</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_outopts.3x.html">curs_outopts.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_53"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_976_14" HREF="terminal_interface-curses__adb.htm#ref_945_14">Set_NL_Mode</A></span> (<span class="symbol"><A NAME="ref_976_27" HREF="terminal_interface-curses__adb.htm#ref_945_27">SwitchOn</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">nl()</A></EM></span> -+ <span class="comment"><EM>-- AKA: nonl()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_976_14">Set_NL_Mode</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_54"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_982_14" HREF="terminal_interface-curses__adb.htm#ref_964_14">Clear_On_Next_Update</A></span> -+ (<span class="symbol"><A NAME="ref_983_7" HREF="terminal_interface-curses__adb.htm#ref_965_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_984_7" HREF="terminal_interface-curses__adb.htm#ref_966_7">Do_Clear</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">clearok()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_982_14">Clear_On_Next_Update</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_55"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_989_14" HREF="terminal_interface-curses__adb.htm#ref_976_14">Use_Insert_Delete_Line</A></span> -+ (<span class="symbol"><A NAME="ref_990_7" HREF="terminal_interface-curses__adb.htm#ref_977_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_991_7" HREF="terminal_interface-curses__adb.htm#ref_978_7">Do_Idl</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">idlok()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_989_14">Use_Insert_Delete_Line</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_56"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_996_14" HREF="terminal_interface-curses__adb.htm#ref_988_14">Use_Insert_Delete_Character</A></span> -+ (<span class="symbol"><A NAME="ref_997_7" HREF="terminal_interface-curses__adb.htm#ref_989_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_998_7" HREF="terminal_interface-curses__adb.htm#ref_990_7">Do_Idc</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">idcok()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_996_14">Use_Insert_Delete_Character</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_57"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1003_14" HREF="terminal_interface-curses__adb.htm#ref_998_14">Leave_Cursor_After_Update</A></span> -+ (<span class="symbol"><A NAME="ref_1004_7" HREF="terminal_interface-curses__adb.htm#ref_999_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1005_7" HREF="terminal_interface-curses__adb.htm#ref_1000_7">Do_Leave</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">leaveok()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1003_14">Leave_Cursor_After_Update</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_58"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1010_14" HREF="terminal_interface-curses__adb.htm#ref_1010_14">Immediate_Update_Mode</A></span> -+ (<span class="symbol"><A NAME="ref_1011_7" HREF="terminal_interface-curses__adb.htm#ref_1011_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1012_7" HREF="terminal_interface-curses__adb.htm#ref_1012_7">Mode</A></span> : Boolean := False); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">immedok()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1010_14">Immediate_Update_Mode</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_59"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1017_14" HREF="terminal_interface-curses__adb.htm#ref_1020_14">Allow_Scrolling</A></span> -+ (<span class="symbol"><A NAME="ref_1018_7" HREF="terminal_interface-curses__adb.htm#ref_1021_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1019_7" HREF="terminal_interface-curses__adb.htm#ref_1022_7">Mode</A></span> : Boolean := False); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">scrollok()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1017_14">Allow_Scrolling</A>); -+ -+ <b>function</b> <span class="symbol"><A NAME="ref_1023_13" HREF="terminal_interface-curses__adb.htm#ref_1032_13">Scrolling_Allowed</A></span> (<span class="symbol"><A NAME="ref_1023_32" HREF="terminal_interface-curses__adb.htm#ref_1032_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- There is no such function in the C interface.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1023_13">Scrolling_Allowed</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_60"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1028_14" HREF="terminal_interface-curses__adb.htm#ref_1041_14">Set_Scroll_Region</A></span> -+ (<span class="symbol"><A NAME="ref_1029_7" HREF="terminal_interface-curses__adb.htm#ref_1042_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1030_7" HREF="terminal_interface-curses__adb.htm#ref_1043_7">Top_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1031_7" HREF="terminal_interface-curses__adb.htm#ref_1044_7">Bottom_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">wsetscrreg()</A></EM></span> -+ <span class="comment"><EM>-- AKA: setscrreg()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1028_14">Set_Scroll_Region</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_refresh.3x.html">curs_refresh.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_61"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1041_14" HREF="terminal_interface-curses__adb.htm#ref_1057_14">Update_Screen</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">doupdate()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1041_14">Update_Screen</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_62"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1046_14" HREF="terminal_interface-curses__adb.htm#ref_1067_14">Refresh</A></span> (<span class="symbol"><A NAME="ref_1046_23" HREF="terminal_interface-curses__adb.htm#ref_1067_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wrefresh()</A></EM></span> -+ <span class="comment"><EM>-- There is an overloaded Refresh for Pads.</EM></span> -+ <span class="comment"><EM>-- The Inline pragma appears there</EM></span> -+ <span class="comment"><EM>-- AKA: refresh()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_63"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1053_14" HREF="terminal_interface-curses__adb.htm#ref_1077_14">Refresh_Without_Update</A></span> -+ (<span class="symbol"><A NAME="ref_1054_7" HREF="terminal_interface-curses__adb.htm#ref_1078_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wnoutrefresh()</A></EM></span> -+ <span class="comment"><EM>-- There is an overloaded Refresh_Without_Update for Pads.</EM></span> -+ <span class="comment"><EM>-- The Inline pragma appears there</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_64"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1060_14" HREF="terminal_interface-curses__adb.htm#ref_1088_14">Redraw</A></span> (<span class="symbol"><A NAME="ref_1060_22" HREF="terminal_interface-curses__adb.htm#ref_1088_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">redrawwin()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_65"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1064_14" HREF="terminal_interface-curses__adb.htm#ref_1098_14">Redraw</A></span> (<span class="symbol"><A NAME="ref_1064_22" HREF="terminal_interface-curses__adb.htm#ref_1099_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1065_22" HREF="terminal_interface-curses__adb.htm#ref_1100_7">Begin_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1066_22" HREF="terminal_interface-curses__adb.htm#ref_1101_7">Line_Count</A></span> : Positive); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wredrawln()</A></EM></span> - <b>pragma</b> Inline (Redraw); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_clear.3x.html">curs_clear.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_66"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1076_14" HREF="terminal_interface-curses__adb.htm#ref_1115_14">Erase</A></FONT> (<FONT COLOR=red><A NAME="ref_1076_21" HREF="terminal_interface-curses__adb.htm#ref_1115_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">werase()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: erase()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1076_14">Erase</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_67"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1082_14" HREF="terminal_interface-curses__adb.htm#ref_1125_14">Clear</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1083_7" HREF="terminal_interface-curses__adb.htm#ref_1125_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclear()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: clear()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1082_14">Clear</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_68"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1089_14" HREF="terminal_interface-curses__adb.htm#ref_1135_14">Clear_To_End_Of_Screen</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1090_7" HREF="terminal_interface-curses__adb.htm#ref_1135_38">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclrtobot()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: clrtobot()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1089_14">Clear_To_End_Of_Screen</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_69"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1096_14" HREF="terminal_interface-curses__adb.htm#ref_1145_14">Clear_To_End_Of_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1097_7" HREF="terminal_interface-curses__adb.htm#ref_1145_36">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclrtoeol()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: clrtoeol()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1096_14">Clear_To_End_Of_Line</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_bkgd.3x.html">curs_bkgd.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_70"#2|</EM></FONT> -- <FONT COLOR=green><EM>-- TODO: we could have Set_Background(Window; Character_Attribute_Set)</EM></FONT> -- <FONT COLOR=green><EM>-- because in C it is common to see bkgdset(A_BOLD) or</EM></FONT> -- <FONT COLOR=green><EM>-- bkgdset(COLOR_PAIR(n))</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1110_14" HREF="terminal_interface-curses__adb.htm#ref_1155_14">Set_Background</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1111_7" HREF="terminal_interface-curses__adb.htm#ref_1156_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1112_7" HREF="terminal_interface-curses__adb.htm#ref_1157_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgdset()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: bkgdset()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1110_14">Set_Background</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_71"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1118_14" HREF="terminal_interface-curses__adb.htm#ref_1165_14">Change_Background</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1119_7" HREF="terminal_interface-curses__adb.htm#ref_1166_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1120_7" HREF="terminal_interface-curses__adb.htm#ref_1167_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgd()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: bkgd()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1118_14">Change_Background</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_72"#2|</EM></FONT> -- <FONT COLOR=green><EM>-- ? wbkgdget is not listed in curs_bkgd, getbkgd is thpough.</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1127_13" HREF="terminal_interface-curses__adb.htm#ref_1177_13">Get_Background</A></FONT> (<FONT COLOR=red><A NAME="ref_1127_29" HREF="terminal_interface-curses__adb.htm#ref_1177_29">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgdget()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: bkgdget()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1127_13">Get_Background</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_touch.3x.html">curs_touch.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_73"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1138_14" HREF="terminal_interface-curses__adb.htm#ref_1213_14">Untouch</A></FONT> (<FONT COLOR=red><A NAME="ref_1138_23" HREF="terminal_interface-curses__adb.htm#ref_1213_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">untouchwin()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1138_14">Untouch</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_74"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1143_14" HREF="terminal_interface-curses__adb.htm#ref_1203_14">Touch</A></FONT> (<FONT COLOR=red><A NAME="ref_1143_21" HREF="terminal_interface-curses__adb.htm#ref_1203_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">touchwin()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_75"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1147_14" HREF="terminal_interface-curses__adb.htm#ref_1223_14">Touch</A></FONT> (<FONT COLOR=red><A NAME="ref_1147_21" HREF="terminal_interface-curses__adb.htm#ref_1223_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1148_21" HREF="terminal_interface-curses__adb.htm#ref_1224_21">Start</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1149_21" HREF="terminal_interface-curses__adb.htm#ref_1225_21">Count</A></FONT> : Positive); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">touchline()</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_clear.3x.html">curs_clear.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_66"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1075_14" HREF="terminal_interface-curses__adb.htm#ref_1115_14">Erase</A></span> (<span class="symbol"><A NAME="ref_1075_21" HREF="terminal_interface-curses__adb.htm#ref_1115_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">werase()</A></EM></span> -+ <span class="comment"><EM>-- AKA: erase()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1075_14">Erase</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_67"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1081_14" HREF="terminal_interface-curses__adb.htm#ref_1125_14">Clear</A></span> -+ (<span class="symbol"><A NAME="ref_1082_7" HREF="terminal_interface-curses__adb.htm#ref_1125_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclear()</A></EM></span> -+ <span class="comment"><EM>-- AKA: clear()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1081_14">Clear</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_68"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1088_14" HREF="terminal_interface-curses__adb.htm#ref_1135_14">Clear_To_End_Of_Screen</A></span> -+ (<span class="symbol"><A NAME="ref_1089_7" HREF="terminal_interface-curses__adb.htm#ref_1135_38">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclrtobot()</A></EM></span> -+ <span class="comment"><EM>-- AKA: clrtobot()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1088_14">Clear_To_End_Of_Screen</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_69"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1095_14" HREF="terminal_interface-curses__adb.htm#ref_1145_14">Clear_To_End_Of_Line</A></span> -+ (<span class="symbol"><A NAME="ref_1096_7" HREF="terminal_interface-curses__adb.htm#ref_1145_36">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclrtoeol()</A></EM></span> -+ <span class="comment"><EM>-- AKA: clrtoeol()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1095_14">Clear_To_End_Of_Line</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_bkgd.3x.html">curs_bkgd.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_70"#2|</EM></span> -+ <span class="comment"><EM>-- TODO: we could have Set_Background(Window; Character_Attribute_Set)</EM></span> -+ <span class="comment"><EM>-- because in C it is common to see bkgdset(A_BOLD) or</EM></span> -+ <span class="comment"><EM>-- bkgdset(COLOR_PAIR(n))</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1109_14" HREF="terminal_interface-curses__adb.htm#ref_1155_14">Set_Background</A></span> -+ (<span class="symbol"><A NAME="ref_1110_7" HREF="terminal_interface-curses__adb.htm#ref_1156_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1111_7" HREF="terminal_interface-curses__adb.htm#ref_1157_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgdset()</A></EM></span> -+ <span class="comment"><EM>-- AKA: bkgdset()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1109_14">Set_Background</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_71"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1117_14" HREF="terminal_interface-curses__adb.htm#ref_1165_14">Change_Background</A></span> -+ (<span class="symbol"><A NAME="ref_1118_7" HREF="terminal_interface-curses__adb.htm#ref_1166_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1119_7" HREF="terminal_interface-curses__adb.htm#ref_1167_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgd()</A></EM></span> -+ <span class="comment"><EM>-- AKA: bkgd()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1117_14">Change_Background</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_72"#2|</EM></span> -+ <span class="comment"><EM>-- ? wbkgdget is not listed in curs_bkgd, getbkgd is thpough.</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1126_13" HREF="terminal_interface-curses__adb.htm#ref_1177_13">Get_Background</A></span> (<span class="symbol"><A NAME="ref_1126_29" HREF="terminal_interface-curses__adb.htm#ref_1177_29">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgdget()</A></EM></span> -+ <span class="comment"><EM>-- AKA: bkgdget()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1126_13">Get_Background</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_touch.3x.html">curs_touch.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_73"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1137_14" HREF="terminal_interface-curses__adb.htm#ref_1213_14">Untouch</A></span> (<span class="symbol"><A NAME="ref_1137_23" HREF="terminal_interface-curses__adb.htm#ref_1213_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">untouchwin()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1137_14">Untouch</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_74"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1142_14" HREF="terminal_interface-curses__adb.htm#ref_1203_14">Touch</A></span> (<span class="symbol"><A NAME="ref_1142_21" HREF="terminal_interface-curses__adb.htm#ref_1203_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">touchwin()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_75"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1146_14" HREF="terminal_interface-curses__adb.htm#ref_1223_14">Touch</A></span> (<span class="symbol"><A NAME="ref_1146_21" HREF="terminal_interface-curses__adb.htm#ref_1223_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1147_21" HREF="terminal_interface-curses__adb.htm#ref_1224_21">Start</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1148_21" HREF="terminal_interface-curses__adb.htm#ref_1225_21">Count</A></span> : Positive); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">touchline()</A></EM></span> - <b>pragma</b> Inline (Touch); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_76"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1154_14" HREF="terminal_interface-curses__adb.htm#ref_1186_14">Change_Lines_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_1154_35" HREF="terminal_interface-curses__adb.htm#ref_1186_35">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1155_35" HREF="terminal_interface-curses__adb.htm#ref_1187_35">Start</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1156_35" HREF="terminal_interface-curses__adb.htm#ref_1188_35">Count</A></FONT> : Positive; -- <FONT COLOR=red><A NAME="ref_1157_35" HREF="terminal_interface-curses__adb.htm#ref_1189_35">State</A></FONT> : Boolean); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">wtouchln()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_77"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1162_13" HREF="terminal_interface-curses__adb.htm#ref_1231_13">Is_Touched</A></FONT> (<FONT COLOR=red><A NAME="ref_1162_25" HREF="terminal_interface-curses__adb.htm#ref_1232_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1163_25" HREF="terminal_interface-curses__adb.htm#ref_1233_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">is_linetouched()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_78"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1167_13" HREF="terminal_interface-curses__adb.htm#ref_1245_13">Is_Touched</A></FONT> (<FONT COLOR=red><A NAME="ref_1167_25" HREF="terminal_interface-curses__adb.htm#ref_1246_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">is_wintouched()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_76"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1153_14" HREF="terminal_interface-curses__adb.htm#ref_1186_14">Change_Lines_Status</A></span> (<span class="symbol"><A NAME="ref_1153_35" HREF="terminal_interface-curses__adb.htm#ref_1186_35">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1154_35" HREF="terminal_interface-curses__adb.htm#ref_1187_35">Start</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1155_35" HREF="terminal_interface-curses__adb.htm#ref_1188_35">Count</A></span> : Positive; -+ <span class="symbol"><A NAME="ref_1156_35" HREF="terminal_interface-curses__adb.htm#ref_1189_35">State</A></span> : Boolean); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">wtouchln()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1153_14">Change_Lines_Status</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_77"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1161_13" HREF="terminal_interface-curses__adb.htm#ref_1231_13">Is_Touched</A></span> (<span class="symbol"><A NAME="ref_1161_25" HREF="terminal_interface-curses__adb.htm#ref_1232_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1162_25" HREF="terminal_interface-curses__adb.htm#ref_1233_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">is_linetouched()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_78"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1166_13" HREF="terminal_interface-curses__adb.htm#ref_1245_13">Is_Touched</A></span> (<span class="symbol"><A NAME="ref_1166_25" HREF="terminal_interface-curses__adb.htm#ref_1246_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">is_wintouched()</A></EM></span> - <b>pragma</b> Inline (Is_Touched); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_overlay.3x.html">curs_overlay.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_79"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1176_14" HREF="terminal_interface-curses__adb.htm#ref_1258_14">Copy</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1177_7" HREF="terminal_interface-curses__adb.htm#ref_1259_7">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1178_7" HREF="terminal_interface-curses__adb.htm#ref_1260_7">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1179_7" HREF="terminal_interface-curses__adb.htm#ref_1261_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1180_7" HREF="terminal_interface-curses__adb.htm#ref_1262_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1181_7" HREF="terminal_interface-curses__adb.htm#ref_1263_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1182_7" HREF="terminal_interface-curses__adb.htm#ref_1264_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1183_7" HREF="terminal_interface-curses__adb.htm#ref_1265_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1184_7" HREF="terminal_interface-curses__adb.htm#ref_1266_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1185_7" HREF="terminal_interface-curses__adb.htm#ref_1267_7">Non_Destructive_Mode</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">copywin()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1176_14">Copy</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_80"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1190_14" HREF="terminal_interface-curses__adb.htm#ref_1294_14">Overwrite</A></FONT> (<FONT COLOR=red><A NAME="ref_1190_25" HREF="terminal_interface-curses__adb.htm#ref_1295_7">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1191_25" HREF="terminal_interface-curses__adb.htm#ref_1296_7">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">overwrite()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1190_14">Overwrite</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_81"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1196_14" HREF="terminal_interface-curses__adb.htm#ref_1306_14">Overlay</A></FONT> (<FONT COLOR=red><A NAME="ref_1196_23" HREF="terminal_interface-curses__adb.htm#ref_1307_7">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1197_23" HREF="terminal_interface-curses__adb.htm#ref_1308_7">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">overlay()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1196_14">Overlay</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_deleteln.3x.html">curs_deleteln.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_82"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1206_14" HREF="terminal_interface-curses__adb.htm#ref_1319_14">Insert_Delete_Lines</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1207_7" HREF="terminal_interface-curses__adb.htm#ref_1320_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1208_7" HREF="terminal_interface-curses__adb.htm#ref_1321_7">Lines</A></FONT> : Integer := 1); <FONT COLOR=green><EM>-- default is to insert one line above</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">winsdelln()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: insdelln()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1206_14">Insert_Delete_Lines</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_83"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1214_14" HREF="terminal_interface-curses__adb.htm#ref_1331_14">Delete_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_1214_27" HREF="terminal_interface-curses__adb.htm#ref_1331_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">wdeleteln()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: deleteln()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1214_14">Delete_Line</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_84"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1220_14" HREF="terminal_interface-curses__adb.htm#ref_1337_14">Insert_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_1220_27" HREF="terminal_interface-curses__adb.htm#ref_1337_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">winsertln()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: insertln()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1220_14">Insert_Line</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_getyx.3x.html">curs_getyx.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_85"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1230_14" HREF="terminal_interface-curses__adb.htm#ref_1344_14">Get_Size</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1231_7" HREF="terminal_interface-curses__adb.htm#ref_1345_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1232_7" HREF="terminal_interface-curses__adb.htm#ref_1346_7">Number_Of_Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_1233_7" HREF="terminal_interface-curses__adb.htm#ref_1347_7">Number_Of_Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getmaxyx()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_86"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1238_14" HREF="terminal_interface-curses__adb.htm#ref_1362_14">Get_Window_Position</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1239_7" HREF="terminal_interface-curses__adb.htm#ref_1363_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1240_7" HREF="terminal_interface-curses__adb.htm#ref_1364_7">Top_Left_Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1241_7" HREF="terminal_interface-curses__adb.htm#ref_1365_7">Top_Left_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getbegyx()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1238_14">Get_Window_Position</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_87"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1246_14" HREF="terminal_interface-curses__adb.htm#ref_1380_14">Get_Cursor_Position</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1247_7" HREF="terminal_interface-curses__adb.htm#ref_1381_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1248_7" HREF="terminal_interface-curses__adb.htm#ref_1382_7">Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1249_7" HREF="terminal_interface-curses__adb.htm#ref_1383_7">Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getyx()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_88"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1254_14" HREF="terminal_interface-curses__adb.htm#ref_1398_14">Get_Origin_Relative_To_Parent</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1255_7" HREF="terminal_interface-curses__adb.htm#ref_1399_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1256_7" HREF="terminal_interface-curses__adb.htm#ref_1400_7">Top_Left_Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1257_7" HREF="terminal_interface-curses__adb.htm#ref_1401_7">Top_Left_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1258_7" HREF="terminal_interface-curses__adb.htm#ref_1402_7">Is_Not_A_Subwindow</A></FONT> : <b>out</b> Boolean); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getparyx()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Instead of placing -1 in the coordinates as return, we use a Boolean</EM></FONT> -- <FONT COLOR=green><EM>-- to return the info that the window has no parent.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1254_14">Get_Origin_Relative_To_Parent</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_pad.3x.html">curs_pad.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_89"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1269_13" HREF="terminal_interface-curses__adb.htm#ref_1424_13">New_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_1269_22" HREF="terminal_interface-curses__adb.htm#ref_1424_22">Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_1270_22" HREF="terminal_interface-curses__adb.htm#ref_1425_22">Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">newpad()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1269_13">New_Pad</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_90"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1275_13" HREF="terminal_interface-curses__adb.htm#ref_1439_13">Sub_Pad</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1276_7" HREF="terminal_interface-curses__adb.htm#ref_1440_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1277_7" HREF="terminal_interface-curses__adb.htm#ref_1441_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_1278_7" HREF="terminal_interface-curses__adb.htm#ref_1442_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_1279_7" HREF="terminal_interface-curses__adb.htm#ref_1443_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1280_7" HREF="terminal_interface-curses__adb.htm#ref_1444_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">subpad()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1275_13">Sub_Pad</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_91"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1285_14" HREF="terminal_interface-curses__adb.htm#ref_1467_14">Refresh</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1286_7" HREF="terminal_interface-curses__adb.htm#ref_1468_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1287_7" HREF="terminal_interface-curses__adb.htm#ref_1469_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1288_7" HREF="terminal_interface-curses__adb.htm#ref_1470_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1289_7" HREF="terminal_interface-curses__adb.htm#ref_1471_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1290_7" HREF="terminal_interface-curses__adb.htm#ref_1472_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1291_7" HREF="terminal_interface-curses__adb.htm#ref_1473_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1292_7" HREF="terminal_interface-curses__adb.htm#ref_1474_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">prefresh()</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_overlay.3x.html">curs_overlay.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_79"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1175_14" HREF="terminal_interface-curses__adb.htm#ref_1258_14">Copy</A></span> -+ (<span class="symbol"><A NAME="ref_1176_7" HREF="terminal_interface-curses__adb.htm#ref_1259_7">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1177_7" HREF="terminal_interface-curses__adb.htm#ref_1260_7">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1178_7" HREF="terminal_interface-curses__adb.htm#ref_1261_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1179_7" HREF="terminal_interface-curses__adb.htm#ref_1262_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1180_7" HREF="terminal_interface-curses__adb.htm#ref_1263_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1181_7" HREF="terminal_interface-curses__adb.htm#ref_1264_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1182_7" HREF="terminal_interface-curses__adb.htm#ref_1265_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1183_7" HREF="terminal_interface-curses__adb.htm#ref_1266_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1184_7" HREF="terminal_interface-curses__adb.htm#ref_1267_7">Non_Destructive_Mode</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">copywin()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1175_14">Copy</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_80"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1189_14" HREF="terminal_interface-curses__adb.htm#ref_1294_14">Overwrite</A></span> (<span class="symbol"><A NAME="ref_1189_25" HREF="terminal_interface-curses__adb.htm#ref_1295_7">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1190_25" HREF="terminal_interface-curses__adb.htm#ref_1296_7">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">overwrite()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1189_14">Overwrite</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_81"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1195_14" HREF="terminal_interface-curses__adb.htm#ref_1306_14">Overlay</A></span> (<span class="symbol"><A NAME="ref_1195_23" HREF="terminal_interface-curses__adb.htm#ref_1307_7">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1196_23" HREF="terminal_interface-curses__adb.htm#ref_1308_7">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">overlay()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1195_14">Overlay</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_deleteln.3x.html">curs_deleteln.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_82"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1205_14" HREF="terminal_interface-curses__adb.htm#ref_1319_14">Insert_Delete_Lines</A></span> -+ (<span class="symbol"><A NAME="ref_1206_7" HREF="terminal_interface-curses__adb.htm#ref_1320_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1207_7" HREF="terminal_interface-curses__adb.htm#ref_1321_7">Lines</A></span> : Integer := 1); <span class="comment"><EM>-- default is to insert one line above</EM></span> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">winsdelln()</A></EM></span> -+ <span class="comment"><EM>-- AKA: insdelln()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1205_14">Insert_Delete_Lines</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_83"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1213_14" HREF="terminal_interface-curses__adb.htm#ref_1331_14">Delete_Line</A></span> (<span class="symbol"><A NAME="ref_1213_27" HREF="terminal_interface-curses__adb.htm#ref_1331_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">wdeleteln()</A></EM></span> -+ <span class="comment"><EM>-- AKA: deleteln()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1213_14">Delete_Line</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_84"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1219_14" HREF="terminal_interface-curses__adb.htm#ref_1337_14">Insert_Line</A></span> (<span class="symbol"><A NAME="ref_1219_27" HREF="terminal_interface-curses__adb.htm#ref_1337_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">winsertln()</A></EM></span> -+ <span class="comment"><EM>-- AKA: insertln()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1219_14">Insert_Line</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_getyx.3x.html">curs_getyx.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_85"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1229_14" HREF="terminal_interface-curses__adb.htm#ref_1344_14">Get_Size</A></span> -+ (<span class="symbol"><A NAME="ref_1230_7" HREF="terminal_interface-curses__adb.htm#ref_1345_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1231_7" HREF="terminal_interface-curses__adb.htm#ref_1346_7">Number_Of_Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_1232_7" HREF="terminal_interface-curses__adb.htm#ref_1347_7">Number_Of_Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getmaxyx()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1229_14">Get_Size</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_86"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1237_14" HREF="terminal_interface-curses__adb.htm#ref_1362_14">Get_Window_Position</A></span> -+ (<span class="symbol"><A NAME="ref_1238_7" HREF="terminal_interface-curses__adb.htm#ref_1363_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1239_7" HREF="terminal_interface-curses__adb.htm#ref_1364_7">Top_Left_Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1240_7" HREF="terminal_interface-curses__adb.htm#ref_1365_7">Top_Left_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getbegyx()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1237_14">Get_Window_Position</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_87"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1245_14" HREF="terminal_interface-curses__adb.htm#ref_1380_14">Get_Cursor_Position</A></span> -+ (<span class="symbol"><A NAME="ref_1246_7" HREF="terminal_interface-curses__adb.htm#ref_1381_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1247_7" HREF="terminal_interface-curses__adb.htm#ref_1382_7">Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1248_7" HREF="terminal_interface-curses__adb.htm#ref_1383_7">Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getyx()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1245_14">Get_Cursor_Position</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_88"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1253_14" HREF="terminal_interface-curses__adb.htm#ref_1398_14">Get_Origin_Relative_To_Parent</A></span> -+ (<span class="symbol"><A NAME="ref_1254_7" HREF="terminal_interface-curses__adb.htm#ref_1399_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1255_7" HREF="terminal_interface-curses__adb.htm#ref_1400_7">Top_Left_Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1256_7" HREF="terminal_interface-curses__adb.htm#ref_1401_7">Top_Left_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1257_7" HREF="terminal_interface-curses__adb.htm#ref_1402_7">Is_Not_A_Subwindow</A></span> : <b>out</b> Boolean); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getparyx()</A></EM></span> -+ <span class="comment"><EM>-- Instead of placing -1 in the coordinates as return, we use a Boolean</EM></span> -+ <span class="comment"><EM>-- to return the info that the window has no parent.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1253_14">Get_Origin_Relative_To_Parent</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_pad.3x.html">curs_pad.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_89"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1268_13" HREF="terminal_interface-curses__adb.htm#ref_1424_13">New_Pad</A></span> (<span class="symbol"><A NAME="ref_1268_22" HREF="terminal_interface-curses__adb.htm#ref_1424_22">Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_1269_22" HREF="terminal_interface-curses__adb.htm#ref_1425_22">Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">newpad()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1268_13">New_Pad</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_90"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1274_13" HREF="terminal_interface-curses__adb.htm#ref_1439_13">Sub_Pad</A></span> -+ (<span class="symbol"><A NAME="ref_1275_7" HREF="terminal_interface-curses__adb.htm#ref_1440_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1276_7" HREF="terminal_interface-curses__adb.htm#ref_1441_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_1277_7" HREF="terminal_interface-curses__adb.htm#ref_1442_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_1278_7" HREF="terminal_interface-curses__adb.htm#ref_1443_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1279_7" HREF="terminal_interface-curses__adb.htm#ref_1444_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">subpad()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1274_13">Sub_Pad</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_91"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1284_14" HREF="terminal_interface-curses__adb.htm#ref_1467_14">Refresh</A></span> -+ (<span class="symbol"><A NAME="ref_1285_7" HREF="terminal_interface-curses__adb.htm#ref_1468_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1286_7" HREF="terminal_interface-curses__adb.htm#ref_1469_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1287_7" HREF="terminal_interface-curses__adb.htm#ref_1470_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1288_7" HREF="terminal_interface-curses__adb.htm#ref_1471_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1289_7" HREF="terminal_interface-curses__adb.htm#ref_1472_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1290_7" HREF="terminal_interface-curses__adb.htm#ref_1473_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1291_7" HREF="terminal_interface-curses__adb.htm#ref_1474_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">prefresh()</A></EM></span> - <b>pragma</b> Inline (Refresh); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_92"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1297_14" HREF="terminal_interface-curses__adb.htm#ref_1497_14">Refresh_Without_Update</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1298_7" HREF="terminal_interface-curses__adb.htm#ref_1498_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1299_7" HREF="terminal_interface-curses__adb.htm#ref_1499_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1300_7" HREF="terminal_interface-curses__adb.htm#ref_1500_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1301_7" HREF="terminal_interface-curses__adb.htm#ref_1501_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1302_7" HREF="terminal_interface-curses__adb.htm#ref_1502_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1303_7" HREF="terminal_interface-curses__adb.htm#ref_1503_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1304_7" HREF="terminal_interface-curses__adb.htm#ref_1504_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">pnoutrefresh()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_92"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1296_14" HREF="terminal_interface-curses__adb.htm#ref_1497_14">Refresh_Without_Update</A></span> -+ (<span class="symbol"><A NAME="ref_1297_7" HREF="terminal_interface-curses__adb.htm#ref_1498_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1298_7" HREF="terminal_interface-curses__adb.htm#ref_1499_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1299_7" HREF="terminal_interface-curses__adb.htm#ref_1500_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1300_7" HREF="terminal_interface-curses__adb.htm#ref_1501_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1301_7" HREF="terminal_interface-curses__adb.htm#ref_1502_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1302_7" HREF="terminal_interface-curses__adb.htm#ref_1503_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1303_7" HREF="terminal_interface-curses__adb.htm#ref_1504_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">pnoutrefresh()</A></EM></span> - <b>pragma</b> Inline (Refresh_Without_Update); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_93"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1309_14" HREF="terminal_interface-curses__adb.htm#ref_1527_14">Add_Character_To_Pad_And_Echo_It</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1310_7" HREF="terminal_interface-curses__adb.htm#ref_1528_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1311_7" HREF="terminal_interface-curses__adb.htm#ref_1529_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">pechochar()</A></EM></FONT> -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1314_14" HREF="terminal_interface-curses__adb.htm#ref_1540_14">Add_Character_To_Pad_And_Echo_It</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1315_7" HREF="terminal_interface-curses__adb.htm#ref_1541_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1316_7" HREF="terminal_interface-curses__adb.htm#ref_1542_7">Ch</A></FONT> : Character); -+ <span class="comment"><EM>-- #1A NAME="AFU_93"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1308_14" HREF="terminal_interface-curses__adb.htm#ref_1527_14">Add_Character_To_Pad_And_Echo_It</A></span> -+ (<span class="symbol"><A NAME="ref_1309_7" HREF="terminal_interface-curses__adb.htm#ref_1528_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1310_7" HREF="terminal_interface-curses__adb.htm#ref_1529_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">pechochar()</A></EM></span> -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1313_14" HREF="terminal_interface-curses__adb.htm#ref_1540_14">Add_Character_To_Pad_And_Echo_It</A></span> -+ (<span class="symbol"><A NAME="ref_1314_7" HREF="terminal_interface-curses__adb.htm#ref_1541_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1315_7" HREF="terminal_interface-curses__adb.htm#ref_1542_7">Ch</A></span> : Character); - <b>pragma</b> Inline (Add_Character_To_Pad_And_Echo_It); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_scroll.3x.html">curs_scroll.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_94"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1324_14" HREF="terminal_interface-curses__adb.htm#ref_1552_14">Scroll</A></FONT> (<FONT COLOR=red><A NAME="ref_1324_22" HREF="terminal_interface-curses__adb.htm#ref_1552_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1325_22" HREF="terminal_interface-curses__adb.htm#ref_1553_22">Amount</A></FONT> : Integer := 1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_scroll.3x.html">wscrl()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: scroll()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: scrl()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1324_14">Scroll</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_delch.3x.html">curs_delch.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_95"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1336_14" HREF="terminal_interface-curses__adb.htm#ref_1565_14">Delete_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_1336_32" HREF="terminal_interface-curses__adb.htm#ref_1565_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_delch.3x.html">wdelch()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: delch()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_96"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1341_14" HREF="terminal_interface-curses__adb.htm#ref_1575_14">Delete_Character</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1342_7" HREF="terminal_interface-curses__adb.htm#ref_1576_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1343_7" HREF="terminal_interface-curses__adb.htm#ref_1577_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1344_7" HREF="terminal_interface-curses__adb.htm#ref_1578_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_delch.3x.html">mvwdelch()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvdelch()</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_scroll.3x.html">curs_scroll.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_94"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1323_14" HREF="terminal_interface-curses__adb.htm#ref_1552_14">Scroll</A></span> (<span class="symbol"><A NAME="ref_1323_22" HREF="terminal_interface-curses__adb.htm#ref_1552_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1324_22" HREF="terminal_interface-curses__adb.htm#ref_1553_22">Amount</A></span> : Integer := 1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_scroll.3x.html">wscrl()</A></EM></span> -+ <span class="comment"><EM>-- AKA: scroll()</EM></span> -+ <span class="comment"><EM>-- AKA: scrl()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1323_14">Scroll</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_delch.3x.html">curs_delch.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_95"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1335_14" HREF="terminal_interface-curses__adb.htm#ref_1565_14">Delete_Character</A></span> (<span class="symbol"><A NAME="ref_1335_32" HREF="terminal_interface-curses__adb.htm#ref_1565_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_delch.3x.html">wdelch()</A></EM></span> -+ <span class="comment"><EM>-- AKA: delch()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_96"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1340_14" HREF="terminal_interface-curses__adb.htm#ref_1575_14">Delete_Character</A></span> -+ (<span class="symbol"><A NAME="ref_1341_7" HREF="terminal_interface-curses__adb.htm#ref_1576_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1342_7" HREF="terminal_interface-curses__adb.htm#ref_1577_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1343_7" HREF="terminal_interface-curses__adb.htm#ref_1578_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_delch.3x.html">mvwdelch()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvdelch()</EM></span> - <b>pragma</b> Inline (Delete_Character); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_inch.3x.html">curs_inch.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_97"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1354_13" HREF="terminal_interface-curses__adb.htm#ref_1590_13">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1354_19" HREF="terminal_interface-curses__adb.htm#ref_1590_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>; -- <FONT COLOR=green><EM>-- AKA: inch()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inch.3x.html">winch()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_98"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1360_13" HREF="terminal_interface-curses__adb.htm#ref_1599_13">Peek</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1361_7" HREF="terminal_interface-curses__adb.htm#ref_1600_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1362_7" HREF="terminal_interface-curses__adb.htm#ref_1601_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1363_7" HREF="terminal_interface-curses__adb.htm#ref_1602_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inch.3x.html">mvwinch()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvinch()</EM></FONT> -- <FONT COLOR=green><EM>-- More Peek's follow, pragma Inline appears later.</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_insch.3x.html">curs_insch.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_99"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1373_14" HREF="terminal_interface-curses__adb.htm#ref_1612_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1373_22" HREF="terminal_interface-curses__adb.htm#ref_1612_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1374_22" HREF="terminal_interface-curses__adb.htm#ref_1613_22">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_insch.3x.html">winsch()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: insch()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_100"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1379_14" HREF="terminal_interface-curses__adb.htm#ref_1623_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1379_22" HREF="terminal_interface-curses__adb.htm#ref_1624_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1380_22" HREF="terminal_interface-curses__adb.htm#ref_1625_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1381_22" HREF="terminal_interface-curses__adb.htm#ref_1626_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1382_22" HREF="terminal_interface-curses__adb.htm#ref_1627_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_insch.3x.html">mvwinsch()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvinsch()</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_insstr.3x.html">curs_insstr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_101"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1391_14" HREF="terminal_interface-curses__adb.htm#ref_1643_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1391_22" HREF="terminal_interface-curses__adb.htm#ref_1643_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1392_22" HREF="terminal_interface-curses__adb.htm#ref_1644_22">Str</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_1393_22" HREF="terminal_interface-curses__adb.htm#ref_1645_22">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_insstr.3x.html">winsnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: winsstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: insnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: insstr()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_102"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1400_14" HREF="terminal_interface-curses__adb.htm#ref_1661_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1400_22" HREF="terminal_interface-curses__adb.htm#ref_1662_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1401_22" HREF="terminal_interface-curses__adb.htm#ref_1663_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1402_22" HREF="terminal_interface-curses__adb.htm#ref_1664_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1403_22" HREF="terminal_interface-curses__adb.htm#ref_1665_7">Str</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_1404_22" HREF="terminal_interface-curses__adb.htm#ref_1666_7">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_insstr.3x.html">mvwinsnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvwinsstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvinsnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvinsstr()</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_inch.3x.html">curs_inch.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_97"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1353_13" HREF="terminal_interface-curses__adb.htm#ref_1590_13">Peek</A></span> (<span class="symbol"><A NAME="ref_1353_19" HREF="terminal_interface-curses__adb.htm#ref_1590_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>) -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>; -+ <span class="comment"><EM>-- AKA: inch()</EM></span> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inch.3x.html">winch()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_98"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1359_13" HREF="terminal_interface-curses__adb.htm#ref_1599_13">Peek</A></span> -+ (<span class="symbol"><A NAME="ref_1360_7" HREF="terminal_interface-curses__adb.htm#ref_1600_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1361_7" HREF="terminal_interface-curses__adb.htm#ref_1601_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1362_7" HREF="terminal_interface-curses__adb.htm#ref_1602_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inch.3x.html">mvwinch()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvinch()</EM></span> -+ <span class="comment"><EM>-- More Peek's follow, pragma Inline appears later.</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_insch.3x.html">curs_insch.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_99"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1372_14" HREF="terminal_interface-curses__adb.htm#ref_1612_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1372_22" HREF="terminal_interface-curses__adb.htm#ref_1612_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1373_22" HREF="terminal_interface-curses__adb.htm#ref_1613_22">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_insch.3x.html">winsch()</A></EM></span> -+ <span class="comment"><EM>-- AKA: insch()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_100"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1378_14" HREF="terminal_interface-curses__adb.htm#ref_1623_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1378_22" HREF="terminal_interface-curses__adb.htm#ref_1624_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1379_22" HREF="terminal_interface-curses__adb.htm#ref_1625_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1380_22" HREF="terminal_interface-curses__adb.htm#ref_1626_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1381_22" HREF="terminal_interface-curses__adb.htm#ref_1627_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_insch.3x.html">mvwinsch()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvinsch()</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_insstr.3x.html">curs_insstr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_101"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1390_14" HREF="terminal_interface-curses__adb.htm#ref_1643_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1390_22" HREF="terminal_interface-curses__adb.htm#ref_1643_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1391_22" HREF="terminal_interface-curses__adb.htm#ref_1644_22">Str</A></span> : String; -+ <span class="symbol"><A NAME="ref_1392_22" HREF="terminal_interface-curses__adb.htm#ref_1645_22">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_insstr.3x.html">winsnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: winsstr()</EM></span> -+ <span class="comment"><EM>-- AKA: insnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: insstr()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_102"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1399_14" HREF="terminal_interface-curses__adb.htm#ref_1661_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1399_22" HREF="terminal_interface-curses__adb.htm#ref_1662_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1400_22" HREF="terminal_interface-curses__adb.htm#ref_1663_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1401_22" HREF="terminal_interface-curses__adb.htm#ref_1664_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1402_22" HREF="terminal_interface-curses__adb.htm#ref_1665_7">Str</A></span> : String; -+ <span class="symbol"><A NAME="ref_1403_22" HREF="terminal_interface-curses__adb.htm#ref_1666_7">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_insstr.3x.html">mvwinsnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvwinsstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvinsnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvinsstr()</EM></span> - <b>pragma</b> Inline (Insert); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_instr.3x.html">curs_instr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_103"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1416_14" HREF="terminal_interface-curses__adb.htm#ref_1685_14">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1416_20" HREF="terminal_interface-curses__adb.htm#ref_1685_20">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1417_20" HREF="terminal_interface-curses__adb.htm#ref_1686_20">Str</A></FONT> : <b>out</b> String; -- <FONT COLOR=red><A NAME="ref_1418_20" HREF="terminal_interface-curses__adb.htm#ref_1687_20">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_instr.3x.html">winnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: winstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: innstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: instr()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_104"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1425_14" HREF="terminal_interface-curses__adb.htm#ref_1714_14">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1425_20" HREF="terminal_interface-curses__adb.htm#ref_1715_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1426_20" HREF="terminal_interface-curses__adb.htm#ref_1716_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1427_20" HREF="terminal_interface-curses__adb.htm#ref_1717_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1428_20" HREF="terminal_interface-curses__adb.htm#ref_1718_7">Str</A></FONT> : <b>out</b> String; -- <FONT COLOR=red><A NAME="ref_1429_20" HREF="terminal_interface-curses__adb.htm#ref_1719_7">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_instr.3x.html">mvwinnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvwinstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvinnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvinstr()</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_inchstr.3x.html">curs_inchstr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_105"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1440_14" HREF="terminal_interface-curses__adb.htm#ref_1726_14">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1440_20" HREF="terminal_interface-curses__adb.htm#ref_1727_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1441_20" HREF="terminal_interface-curses__adb.htm#ref_1728_7">Str</A></FONT> : <b>out</b> Attributed_String; -- <FONT COLOR=red><A NAME="ref_1442_20" HREF="terminal_interface-curses__adb.htm#ref_1729_7">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inchstr.3x.html">winchnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: winchstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: inchnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: inchstr()</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_106"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1449_14" HREF="terminal_interface-curses__adb.htm#ref_1763_14">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1449_20" HREF="terminal_interface-curses__adb.htm#ref_1764_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1450_20" HREF="terminal_interface-curses__adb.htm#ref_1765_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1451_20" HREF="terminal_interface-curses__adb.htm#ref_1766_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1452_20" HREF="terminal_interface-curses__adb.htm#ref_1767_7">Str</A></FONT> : <b>out</b> Attributed_String; -- <FONT COLOR=red><A NAME="ref_1453_20" HREF="terminal_interface-curses__adb.htm#ref_1768_7">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inchstr.3x.html">mvwinchnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvwinchstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvinchnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvinchstr()</EM></FONT> -- <FONT COLOR=green><EM>-- We do not inline the Peek procedures</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_getstr.3x.html">curs_getstr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_107"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1465_14" HREF="terminal_interface-curses__adb.htm#ref_1775_14">Get</A></FONT> (<FONT COLOR=red><A NAME="ref_1465_19" HREF="terminal_interface-curses__adb.htm#ref_1775_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1466_19" HREF="terminal_interface-curses__adb.htm#ref_1776_19">Str</A></FONT> : <b>out</b> String; -- <FONT COLOR=red><A NAME="ref_1467_19" HREF="terminal_interface-curses__adb.htm#ref_1777_19">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getstr.3x.html">wgetnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: wgetstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: getnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: getstr()</EM></FONT> -- <FONT COLOR=green><EM>-- actually getstr is not supported because that results in buffer</EM></FONT> -- <FONT COLOR=green><EM>-- overflows.</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_108"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1476_14" HREF="terminal_interface-curses__adb.htm#ref_1804_14">Get</A></FONT> (<FONT COLOR=red><A NAME="ref_1476_19" HREF="terminal_interface-curses__adb.htm#ref_1805_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1477_19" HREF="terminal_interface-curses__adb.htm#ref_1806_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1478_19" HREF="terminal_interface-curses__adb.htm#ref_1807_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1479_19" HREF="terminal_interface-curses__adb.htm#ref_1808_7">Str</A></FONT> : <b>out</b> String; -- <FONT COLOR=red><A NAME="ref_1480_19" HREF="terminal_interface-curses__adb.htm#ref_1809_7">Len</A></FONT> : Integer := -1); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getstr.3x.html">mvwgetnstr()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvwgetstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvgetnstr()</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: mvgetstr()</EM></FONT> -- <FONT COLOR=green><EM>-- Get is not inlined</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_slk.3x.html">curs_slk.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- Not Implemented: slk_attr_on, slk_attr_off, slk_attr_set</EM></FONT> -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_1493_9">Soft_Label_Key_Format</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_1493_35">Three_Two_Three</A></FONT>, -- <FONT COLOR=red><A NAME="ref_1494_35">Four_Four</A></FONT>, -- <FONT COLOR=red><A NAME="ref_1495_35">PC_Style</A></FONT>, <FONT COLOR=green><EM>-- ncurses specific</EM></FONT> -- <FONT COLOR=red><A NAME="ref_1496_35">PC_Style_With_Index</A></FONT>); <FONT COLOR=green><EM>-- "</EM></FONT> -- <b>type</b> <FONT COLOR=red><A NAME="ref_1497_9">Label_Number</A></FONT> <b>is</b> <b>new</b> Positive <b>range</b> 1 .. 12; -- <b>type</b> <FONT COLOR=red><A NAME="ref_1498_9">Label_Justification</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_1498_33">Left</A></FONT>, <FONT COLOR=red><A NAME="ref_1498_39">Centered</A></FONT>, <FONT COLOR=red><A NAME="ref_1498_49">Right</A></FONT>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_109"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1501_14" HREF="terminal_interface-curses__adb.htm#ref_1816_14">Init_Soft_Label_Keys</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1502_7" HREF="terminal_interface-curses__adb.htm#ref_1817_7">Format</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1493_9">Soft_Label_Key_Format</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1493_35">Three_Two_Three</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_init()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1501_14">Init_Soft_Label_Keys</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_110"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1507_14" HREF="terminal_interface-curses__adb.htm#ref_1827_14">Set_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1507_34" HREF="terminal_interface-curses__adb.htm#ref_1827_34">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>; -- <FONT COLOR=red><A NAME="ref_1508_34" HREF="terminal_interface-curses__adb.htm#ref_1828_34">Text</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_1509_34" HREF="terminal_interface-curses__adb.htm#ref_1829_34">Fmt</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1498_9">Label_Justification</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1498_33">Left</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_set()</A></EM></FONT> -- <FONT COLOR=green><EM>-- We do not inline this procedure</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_111"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1514_14" HREF="terminal_interface-curses__adb.htm#ref_1846_14">Refresh_Soft_Label_Keys</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_refresh()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1514_14">Refresh_Soft_Label_Keys</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_112"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1519_14" HREF="terminal_interface-curses__adb.htm#ref_1856_14">Refresh_Soft_Label_Keys_Without_Update</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_noutrefresh()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1519_14">Refresh_Soft_Label_Keys_Without_Update</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_113"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1524_14" HREF="terminal_interface-curses__adb.htm#ref_1866_14">Get_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1524_34" HREF="terminal_interface-curses__adb.htm#ref_1866_34">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>; -- <FONT COLOR=red><A NAME="ref_1525_34" HREF="terminal_interface-curses__adb.htm#ref_1867_34">Text</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_label()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_114"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1529_13" HREF="terminal_interface-curses__adb.htm#ref_1875_13">Get_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1529_33" HREF="terminal_interface-curses__adb.htm#ref_1875_33">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>) <b>return</b> String; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_label()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_instr.3x.html">curs_instr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_103"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1415_14" HREF="terminal_interface-curses__adb.htm#ref_1685_14">Peek</A></span> (<span class="symbol"><A NAME="ref_1415_20" HREF="terminal_interface-curses__adb.htm#ref_1685_20">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1416_20" HREF="terminal_interface-curses__adb.htm#ref_1686_20">Str</A></span> : <b>out</b> String; -+ <span class="symbol"><A NAME="ref_1417_20" HREF="terminal_interface-curses__adb.htm#ref_1687_20">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_instr.3x.html">winnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: winstr()</EM></span> -+ <span class="comment"><EM>-- AKA: innstr()</EM></span> -+ <span class="comment"><EM>-- AKA: instr()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_104"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1424_14" HREF="terminal_interface-curses__adb.htm#ref_1714_14">Peek</A></span> (<span class="symbol"><A NAME="ref_1424_20" HREF="terminal_interface-curses__adb.htm#ref_1715_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1425_20" HREF="terminal_interface-curses__adb.htm#ref_1716_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1426_20" HREF="terminal_interface-curses__adb.htm#ref_1717_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1427_20" HREF="terminal_interface-curses__adb.htm#ref_1718_7">Str</A></span> : <b>out</b> String; -+ <span class="symbol"><A NAME="ref_1428_20" HREF="terminal_interface-curses__adb.htm#ref_1719_7">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_instr.3x.html">mvwinnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvwinstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvinnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvinstr()</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_inchstr.3x.html">curs_inchstr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_105"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1439_14" HREF="terminal_interface-curses__adb.htm#ref_1726_14">Peek</A></span> (<span class="symbol"><A NAME="ref_1439_20" HREF="terminal_interface-curses__adb.htm#ref_1727_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1440_20" HREF="terminal_interface-curses__adb.htm#ref_1728_7">Str</A></span> : <b>out</b> Attributed_String; -+ <span class="symbol"><A NAME="ref_1441_20" HREF="terminal_interface-curses__adb.htm#ref_1729_7">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inchstr.3x.html">winchnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: winchstr()</EM></span> -+ <span class="comment"><EM>-- AKA: inchnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: inchstr()</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_106"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1448_14" HREF="terminal_interface-curses__adb.htm#ref_1763_14">Peek</A></span> (<span class="symbol"><A NAME="ref_1448_20" HREF="terminal_interface-curses__adb.htm#ref_1764_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1449_20" HREF="terminal_interface-curses__adb.htm#ref_1765_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1450_20" HREF="terminal_interface-curses__adb.htm#ref_1766_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1451_20" HREF="terminal_interface-curses__adb.htm#ref_1767_7">Str</A></span> : <b>out</b> Attributed_String; -+ <span class="symbol"><A NAME="ref_1452_20" HREF="terminal_interface-curses__adb.htm#ref_1768_7">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inchstr.3x.html">mvwinchnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvwinchstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvinchnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvinchstr()</EM></span> -+ <span class="comment"><EM>-- We do not inline the Peek procedures</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_getstr.3x.html">curs_getstr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_107"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1464_14" HREF="terminal_interface-curses__adb.htm#ref_1775_14">Get</A></span> (<span class="symbol"><A NAME="ref_1464_19" HREF="terminal_interface-curses__adb.htm#ref_1775_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1465_19" HREF="terminal_interface-curses__adb.htm#ref_1776_19">Str</A></span> : <b>out</b> String; -+ <span class="symbol"><A NAME="ref_1466_19" HREF="terminal_interface-curses__adb.htm#ref_1777_19">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getstr.3x.html">wgetnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: wgetstr()</EM></span> -+ <span class="comment"><EM>-- AKA: getnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: getstr()</EM></span> -+ <span class="comment"><EM>-- actually getstr is not supported because that results in buffer</EM></span> -+ <span class="comment"><EM>-- overflows.</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_108"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1475_14" HREF="terminal_interface-curses__adb.htm#ref_1804_14">Get</A></span> (<span class="symbol"><A NAME="ref_1475_19" HREF="terminal_interface-curses__adb.htm#ref_1805_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1476_19" HREF="terminal_interface-curses__adb.htm#ref_1806_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1477_19" HREF="terminal_interface-curses__adb.htm#ref_1807_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1478_19" HREF="terminal_interface-curses__adb.htm#ref_1808_7">Str</A></span> : <b>out</b> String; -+ <span class="symbol"><A NAME="ref_1479_19" HREF="terminal_interface-curses__adb.htm#ref_1809_7">Len</A></span> : Integer := -1); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getstr.3x.html">mvwgetnstr()</A></EM></span> -+ <span class="comment"><EM>-- AKA: mvwgetstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvgetnstr()</EM></span> -+ <span class="comment"><EM>-- AKA: mvgetstr()</EM></span> -+ <span class="comment"><EM>-- Get is not inlined</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_slk.3x.html">curs_slk.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- Not Implemented: slk_attr_on, slk_attr_off, slk_attr_set</EM></span> -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_1492_9">Soft_Label_Key_Format</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1492_35">Three_Two_Three</A></span>, -+ <span class="symbol"><A NAME="ref_1493_35">Four_Four</A></span>, -+ <span class="symbol"><A NAME="ref_1494_35">PC_Style</A></span>, <span class="comment"><EM>-- ncurses specific</EM></span> -+ <span class="symbol"><A NAME="ref_1495_35">PC_Style_With_Index</A></span>); <span class="comment"><EM>-- "</EM></span> -+ <b>type</b> <span class="symbol"><A NAME="ref_1496_9">Label_Number</A></span> <b>is</b> <b>new</b> Positive <b>range</b> 1 .. 12; -+ <b>type</b> <span class="symbol"><A NAME="ref_1497_9">Label_Justification</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1497_33">Left</A></span>, <span class="symbol"><A NAME="ref_1497_39">Centered</A></span>, <span class="symbol"><A NAME="ref_1497_49">Right</A></span>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_109"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1500_14" HREF="terminal_interface-curses__adb.htm#ref_1816_14">Init_Soft_Label_Keys</A></span> -+ (<span class="symbol"><A NAME="ref_1501_7" HREF="terminal_interface-curses__adb.htm#ref_1817_7">Format</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1492_9">Soft_Label_Key_Format</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1492_35">Three_Two_Three</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_init()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1500_14">Init_Soft_Label_Keys</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_110"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1506_14" HREF="terminal_interface-curses__adb.htm#ref_1827_14">Set_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1506_34" HREF="terminal_interface-curses__adb.htm#ref_1827_34">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1496_9">Label_Number</A>; -+ <span class="symbol"><A NAME="ref_1507_34" HREF="terminal_interface-curses__adb.htm#ref_1828_34">Text</A></span> : String; -+ <span class="symbol"><A NAME="ref_1508_34" HREF="terminal_interface-curses__adb.htm#ref_1829_34">Fmt</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Justification</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1497_33">Left</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_set()</A></EM></span> -+ <span class="comment"><EM>-- We do not inline this procedure</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_111"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1513_14" HREF="terminal_interface-curses__adb.htm#ref_1846_14">Refresh_Soft_Label_Keys</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_refresh()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1513_14">Refresh_Soft_Label_Keys</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_112"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1518_14" HREF="terminal_interface-curses__adb.htm#ref_1856_14">Refresh_Soft_Label_Keys_Without_Update</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_noutrefresh()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1518_14">Refresh_Soft_Label_Keys_Without_Update</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_113"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1523_14" HREF="terminal_interface-curses__adb.htm#ref_1866_14">Get_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1523_34" HREF="terminal_interface-curses__adb.htm#ref_1866_34">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1496_9">Label_Number</A>; -+ <span class="symbol"><A NAME="ref_1524_34" HREF="terminal_interface-curses__adb.htm#ref_1867_34">Text</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_label()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_114"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1528_13" HREF="terminal_interface-curses__adb.htm#ref_1875_13">Get_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1528_33" HREF="terminal_interface-curses__adb.htm#ref_1875_33">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1496_9">Label_Number</A>) <b>return</b> String; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_label()</A></EM></span> -+ <span class="comment"><EM>-- Same as function</EM></span> - <b>pragma</b> Inline (Get_Soft_Label_Key); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_115"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1535_14" HREF="terminal_interface-curses__adb.htm#ref_1883_14">Clear_Soft_Label_Keys</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_clear()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1535_14">Clear_Soft_Label_Keys</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_116"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1540_14" HREF="terminal_interface-curses__adb.htm#ref_1893_14">Restore_Soft_Label_Keys</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_restore()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1540_14">Restore_Soft_Label_Keys</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_117"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1545_14" HREF="terminal_interface-curses__adb.htm#ref_1903_14">Touch_Soft_Label_Keys</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_touch()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1545_14">Touch_Soft_Label_Keys</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_118"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1550_14" HREF="terminal_interface-curses__adb.htm#ref_1913_14">Switch_Soft_Label_Key_Attributes</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1551_7" HREF="terminal_interface-curses__adb.htm#ref_1914_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_1552_7" HREF="terminal_interface-curses__adb.htm#ref_1915_7">On</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attron()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: slk_attroff()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1550_14">Switch_Soft_Label_Key_Attributes</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_119"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1558_14" HREF="terminal_interface-curses__adb.htm#ref_1937_14">Set_Soft_Label_Key_Attributes</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1559_7" HREF="terminal_interface-curses__adb.htm#ref_1938_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_1560_7" HREF="terminal_interface-curses__adb.htm#ref_1939_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attrset()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1558_14">Set_Soft_Label_Key_Attributes</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_120"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1565_13" HREF="terminal_interface-curses__adb.htm#ref_1953_13">Get_Soft_Label_Key_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attr()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_121"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1569_13" HREF="terminal_interface-curses__adb.htm#ref_1963_13">Get_Soft_Label_Key_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attr()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_115"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1534_14" HREF="terminal_interface-curses__adb.htm#ref_1883_14">Clear_Soft_Label_Keys</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_clear()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1534_14">Clear_Soft_Label_Keys</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_116"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1539_14" HREF="terminal_interface-curses__adb.htm#ref_1893_14">Restore_Soft_Label_Keys</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_restore()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1539_14">Restore_Soft_Label_Keys</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_117"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1544_14" HREF="terminal_interface-curses__adb.htm#ref_1903_14">Touch_Soft_Label_Keys</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_touch()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1544_14">Touch_Soft_Label_Keys</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_118"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1549_14" HREF="terminal_interface-curses__adb.htm#ref_1913_14">Switch_Soft_Label_Key_Attributes</A></span> -+ (<span class="symbol"><A NAME="ref_1550_7" HREF="terminal_interface-curses__adb.htm#ref_1914_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_1551_7" HREF="terminal_interface-curses__adb.htm#ref_1915_7">On</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attron()</A></EM></span> -+ <span class="comment"><EM>-- AKA: slk_attroff()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1549_14">Switch_Soft_Label_Key_Attributes</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_119"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1557_14" HREF="terminal_interface-curses__adb.htm#ref_1937_14">Set_Soft_Label_Key_Attributes</A></span> -+ (<span class="symbol"><A NAME="ref_1558_7" HREF="terminal_interface-curses__adb.htm#ref_1938_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_1559_7" HREF="terminal_interface-curses__adb.htm#ref_1939_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attrset()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1557_14">Set_Soft_Label_Key_Attributes</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_120"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1564_13" HREF="terminal_interface-curses__adb.htm#ref_1953_13">Get_Soft_Label_Key_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attr()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_121"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1568_13" HREF="terminal_interface-curses__adb.htm#ref_1963_13">Get_Soft_Label_Key_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attr()</A></EM></span> - <b>pragma</b> Inline (Get_Soft_Label_Key_Attributes); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_122"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1574_14" HREF="terminal_interface-curses__adb.htm#ref_1973_14">Set_Soft_Label_Key_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_1574_40" HREF="terminal_interface-curses__adb.htm#ref_1973_40">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_color()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1574_14">Set_Soft_Label_Key_Color</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/keybound.3x.html">keybound.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- Not Implemented: keybound</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/keyok.3x.html">keyok.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_123"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1588_14" HREF="terminal_interface-curses__adb.htm#ref_1984_14">Enable_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1588_26" HREF="terminal_interface-curses__adb.htm#ref_1984_26">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>; -- <FONT COLOR=red><A NAME="ref_1589_26" HREF="terminal_interface-curses__adb.htm#ref_1985_26">Enable</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/keyok.3x.html">keyok()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1588_14">Enable_Key</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/define_key.3x.html">define_key.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_124"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1598_14" HREF="terminal_interface-curses__adb.htm#ref_1997_14">Define_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1598_26" HREF="terminal_interface-curses__adb.htm#ref_1997_26">Definition</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_1599_26" HREF="terminal_interface-curses__adb.htm#ref_1998_26">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/define_key.3x.html">define_key()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1598_14">Define_Key</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_util.3x.html">curs_util.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- | Not implemented : filter, use_env</EM></FONT> -- <FONT COLOR=green><EM>-- | putwin, getwin are in the child package PutWin</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_125"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1612_14" HREF="terminal_interface-curses__adb.htm#ref_90_14">Key_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_1612_24" HREF="terminal_interface-curses__adb.htm#ref_90_24">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>; -- <FONT COLOR=red><A NAME="ref_1613_24" HREF="terminal_interface-curses__adb.htm#ref_91_24">Name</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">keyname()</A></EM></FONT> -- <FONT COLOR=green><EM>-- The external name for a real keystroke.</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_126"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1618_13" HREF="terminal_interface-curses__adb.htm#ref_62_13">Key_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_1618_23" HREF="terminal_interface-curses__adb.htm#ref_62_23">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) <b>return</b> String; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">keyname()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -- <FONT COLOR=green><EM>-- We do not inline this routine</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_127"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1624_14" HREF="terminal_interface-curses__adb.htm#ref_2013_14">Un_Control</A></FONT> (<FONT COLOR=red><A NAME="ref_1624_26" HREF="terminal_interface-curses__adb.htm#ref_2013_26">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>; -- <FONT COLOR=red><A NAME="ref_1625_26" HREF="terminal_interface-curses__adb.htm#ref_2014_26">Str</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">unctrl()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_128"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1629_13" HREF="terminal_interface-curses__adb.htm#ref_2022_13">Un_Control</A></FONT> (<FONT COLOR=red><A NAME="ref_1629_25" HREF="terminal_interface-curses__adb.htm#ref_2022_25">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) <b>return</b> String; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">unctrl()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_122"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1573_14" HREF="terminal_interface-curses__adb.htm#ref_1973_14">Set_Soft_Label_Key_Color</A></span> (<span class="symbol"><A NAME="ref_1573_40" HREF="terminal_interface-curses__adb.htm#ref_1973_40">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_color()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1573_14">Set_Soft_Label_Key_Color</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/keybound.3x.html">keybound.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- Not Implemented: keybound</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/keyok.3x.html">keyok.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_123"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1587_14" HREF="terminal_interface-curses__adb.htm#ref_1984_14">Enable_Key</A></span> (<span class="symbol"><A NAME="ref_1587_26" HREF="terminal_interface-curses__adb.htm#ref_1984_26">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>; -+ <span class="symbol"><A NAME="ref_1588_26" HREF="terminal_interface-curses__adb.htm#ref_1985_26">Enable</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/keyok.3x.html">keyok()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1587_14">Enable_Key</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/define_key.3x.html">define_key.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_124"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1597_14" HREF="terminal_interface-curses__adb.htm#ref_1997_14">Define_Key</A></span> (<span class="symbol"><A NAME="ref_1597_26" HREF="terminal_interface-curses__adb.htm#ref_1997_26">Definition</A></span> : String; -+ <span class="symbol"><A NAME="ref_1598_26" HREF="terminal_interface-curses__adb.htm#ref_1998_26">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/define_key.3x.html">define_key()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1597_14">Define_Key</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_util.3x.html">curs_util.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- | Not implemented : filter, use_env</EM></span> -+ <span class="comment"><EM>-- | putwin, getwin are in the child package PutWin</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_125"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1611_14" HREF="terminal_interface-curses__adb.htm#ref_90_14">Key_Name</A></span> (<span class="symbol"><A NAME="ref_1611_24" HREF="terminal_interface-curses__adb.htm#ref_90_24">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>; -+ <span class="symbol"><A NAME="ref_1612_24" HREF="terminal_interface-curses__adb.htm#ref_91_24">Name</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">keyname()</A></EM></span> -+ <span class="comment"><EM>-- The external name for a real keystroke.</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_126"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1617_13" HREF="terminal_interface-curses__adb.htm#ref_62_13">Key_Name</A></span> (<span class="symbol"><A NAME="ref_1617_23" HREF="terminal_interface-curses__adb.htm#ref_62_23">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) <b>return</b> String; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">keyname()</A></EM></span> -+ <span class="comment"><EM>-- Same as function</EM></span> -+ <span class="comment"><EM>-- We do not inline this routine</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_127"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1623_14" HREF="terminal_interface-curses__adb.htm#ref_2013_14">Un_Control</A></span> (<span class="symbol"><A NAME="ref_1623_26" HREF="terminal_interface-curses__adb.htm#ref_2013_26">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>; -+ <span class="symbol"><A NAME="ref_1624_26" HREF="terminal_interface-curses__adb.htm#ref_2014_26">Str</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">unctrl()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_128"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1628_13" HREF="terminal_interface-curses__adb.htm#ref_2022_13">Un_Control</A></span> (<span class="symbol"><A NAME="ref_1628_25" HREF="terminal_interface-curses__adb.htm#ref_2022_25">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>) <b>return</b> String; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">unctrl()</A></EM></span> -+ <span class="comment"><EM>-- Same as function</EM></span> - <b>pragma</b> Inline (Un_Control); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_129"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1635_14" HREF="terminal_interface-curses__adb.htm#ref_2030_14">Delay_Output</A></FONT> (<FONT COLOR=red><A NAME="ref_1635_28" HREF="terminal_interface-curses__adb.htm#ref_2030_28">Msecs</A></FONT> : Natural); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">delay_output()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1635_14">Delay_Output</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_130"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1640_14" HREF="terminal_interface-curses__adb.htm#ref_2040_14">Flush_Input</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">flushinp()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1640_14">Flush_Input</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_termattrs.3x.html">curs_termattrs.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_131"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1649_13" HREF="terminal_interface-curses__adb.htm#ref_2050_13">Baudrate</A></FONT> <b>return</b> Natural; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">baudrate()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1649_13">Baudrate</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_132"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1654_13" HREF="terminal_interface-curses__adb.htm#ref_2058_13">Erase_Character</A></FONT> <b>return</b> Character; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">erasechar()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1654_13">Erase_Character</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_133"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1659_13" HREF="terminal_interface-curses__adb.htm#ref_2066_13">Kill_Character</A></FONT> <b>return</b> Character; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">killchar()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1659_13">Kill_Character</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_134"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1664_13" HREF="terminal_interface-curses__adb.htm#ref_2074_13">Has_Insert_Character</A></FONT> <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">has_ic()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1664_13">Has_Insert_Character</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_135"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1669_13" HREF="terminal_interface-curses__adb.htm#ref_2086_13">Has_Insert_Line</A></FONT> <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">has_il()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1669_13">Has_Insert_Line</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_136"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1674_13" HREF="terminal_interface-curses__adb.htm#ref_2098_13">Supported_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termattrs()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1674_13">Supported_Attributes</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_137"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1679_14" HREF="terminal_interface-curses__adb.htm#ref_2108_14">Long_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_1679_25" HREF="terminal_interface-curses__adb.htm#ref_2108_25">Name</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">longname()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_138"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1683_13" HREF="terminal_interface-curses__adb.htm#ref_2116_13">Long_Name</A></FONT> <b>return</b> String; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">longname()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_129"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1634_14" HREF="terminal_interface-curses__adb.htm#ref_2030_14">Delay_Output</A></span> (<span class="symbol"><A NAME="ref_1634_28" HREF="terminal_interface-curses__adb.htm#ref_2030_28">Msecs</A></span> : Natural); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">delay_output()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1634_14">Delay_Output</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_130"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1639_14" HREF="terminal_interface-curses__adb.htm#ref_2040_14">Flush_Input</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">flushinp()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1639_14">Flush_Input</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_termattrs.3x.html">curs_termattrs.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_131"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1648_13" HREF="terminal_interface-curses__adb.htm#ref_2050_13">Baudrate</A></span> <b>return</b> Natural; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">baudrate()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1648_13">Baudrate</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_132"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1653_13" HREF="terminal_interface-curses__adb.htm#ref_2058_13">Erase_Character</A></span> <b>return</b> Character; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">erasechar()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1653_13">Erase_Character</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_133"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1658_13" HREF="terminal_interface-curses__adb.htm#ref_2066_13">Kill_Character</A></span> <b>return</b> Character; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">killchar()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1658_13">Kill_Character</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_134"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1663_13" HREF="terminal_interface-curses__adb.htm#ref_2074_13">Has_Insert_Character</A></span> <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">has_ic()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1663_13">Has_Insert_Character</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_135"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1668_13" HREF="terminal_interface-curses__adb.htm#ref_2086_13">Has_Insert_Line</A></span> <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">has_il()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1668_13">Has_Insert_Line</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_136"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1673_13" HREF="terminal_interface-curses__adb.htm#ref_2098_13">Supported_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termattrs()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1673_13">Supported_Attributes</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_137"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1678_14" HREF="terminal_interface-curses__adb.htm#ref_2108_14">Long_Name</A></span> (<span class="symbol"><A NAME="ref_1678_25" HREF="terminal_interface-curses__adb.htm#ref_2108_25">Name</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">longname()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_138"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1682_13" HREF="terminal_interface-curses__adb.htm#ref_2116_13">Long_Name</A></span> <b>return</b> String; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">longname()</A></EM></span> -+ <span class="comment"><EM>-- Same as function</EM></span> - <b>pragma</b> Inline (Long_Name); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_139"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1689_14" HREF="terminal_interface-curses__adb.htm#ref_2124_14">Terminal_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_1689_29" HREF="terminal_interface-curses__adb.htm#ref_2124_29">Name</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termname()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_140"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1693_13" HREF="terminal_interface-curses__adb.htm#ref_2132_13">Terminal_Name</A></FONT> <b>return</b> String; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termname()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_139"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1688_14" HREF="terminal_interface-curses__adb.htm#ref_2124_14">Terminal_Name</A></span> (<span class="symbol"><A NAME="ref_1688_29" HREF="terminal_interface-curses__adb.htm#ref_2124_29">Name</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termname()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_140"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1692_13" HREF="terminal_interface-curses__adb.htm#ref_2132_13">Terminal_Name</A></span> <b>return</b> String; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termname()</A></EM></span> -+ <span class="comment"><EM>-- Same as function</EM></span> - <b>pragma</b> Inline (Terminal_Name); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_color.3x.html">curs_color.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- COLOR_PAIR</EM></FONT> -- <FONT COLOR=green><EM>-- COLOR_PAIR(n) in C is the same as</EM></FONT> -- <FONT COLOR=green><EM>-- Attributed_Character(Ch =&gt; Nul, Color =&gt; n, Attr =&gt; Normal_Video)</EM></FONT> -- <FONT COLOR=green><EM>-- In C you often see something like c = c | COLOR_PAIR(n);</EM></FONT> -- <FONT COLOR=green><EM>-- This is equivalent to c.Color := n;</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_141"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1709_14">Start_Color</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">start_color()</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_color.3x.html">curs_color.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- COLOR_PAIR</EM></span> -+ <span class="comment"><EM>-- COLOR_PAIR(n) in C is the same as</EM></span> -+ <span class="comment"><EM>-- Attributed_Character(Ch =&gt; Nul, Color =&gt; n, Attr =&gt; Normal_Video)</EM></span> -+ <span class="comment"><EM>-- In C you often see something like c = c | COLOR_PAIR(n);</EM></span> -+ <span class="comment"><EM>-- This is equivalent to c.Color := n;</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_141"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1708_14">Start_Color</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">start_color()</A></EM></span> - <b>pragma</b> Import (C, Start_Color, "start_color"); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_142"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1714_14" HREF="terminal_interface-curses__adb.htm#ref_2140_14">Init_Pair</A></FONT> (<FONT COLOR=red><A NAME="ref_1714_25" HREF="terminal_interface-curses__adb.htm#ref_2140_25">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_301_12">Redefinable_Color_Pair</A>; -- <FONT COLOR=red><A NAME="ref_1715_25" HREF="terminal_interface-curses__adb.htm#ref_2141_25">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -- <FONT COLOR=red><A NAME="ref_1716_25" HREF="terminal_interface-curses__adb.htm#ref_2142_25">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">init_pair()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1714_14">Init_Pair</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_143"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1721_14" HREF="terminal_interface-curses__adb.htm#ref_2162_14">Pair_Content</A></FONT> (<FONT COLOR=red><A NAME="ref_1721_28" HREF="terminal_interface-curses__adb.htm#ref_2162_28">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>; -- <FONT COLOR=red><A NAME="ref_1722_28" HREF="terminal_interface-curses__adb.htm#ref_2163_28">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -- <FONT COLOR=red><A NAME="ref_1723_28" HREF="terminal_interface-curses__adb.htm#ref_2164_28">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">pair_content()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1721_14">Pair_Content</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_144"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1728_13" HREF="terminal_interface-curses__adb.htm#ref_2182_13">Has_Colors</A></FONT> <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">has_colors()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1728_13">Has_Colors</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_145"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1733_14" HREF="terminal_interface-curses__adb.htm#ref_2194_14">Init_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_1733_26" HREF="terminal_interface-curses__adb.htm#ref_2194_26">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -- <FONT COLOR=red><A NAME="ref_1734_26" HREF="terminal_interface-curses__adb.htm#ref_2195_26">Red</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -- <FONT COLOR=red><A NAME="ref_1735_26" HREF="terminal_interface-curses__adb.htm#ref_2196_26">Green</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -- <FONT COLOR=red><A NAME="ref_1736_26" HREF="terminal_interface-curses__adb.htm#ref_2197_26">Blue</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">init_color()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1733_14">Init_Color</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_146"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1741_13" HREF="terminal_interface-curses__adb.htm#ref_2211_13">Can_Change_Color</A></FONT> <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">can_change_color()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1741_13">Can_Change_Color</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_147"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1746_14" HREF="terminal_interface-curses__adb.htm#ref_2223_14">Color_Content</A></FONT> (<FONT COLOR=red><A NAME="ref_1746_29" HREF="terminal_interface-curses__adb.htm#ref_2223_29">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -- <FONT COLOR=red><A NAME="ref_1747_29" HREF="terminal_interface-curses__adb.htm#ref_2224_29">Red</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -- <FONT COLOR=red><A NAME="ref_1748_29" HREF="terminal_interface-curses__adb.htm#ref_2225_29">Green</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -- <FONT COLOR=red><A NAME="ref_1749_29" HREF="terminal_interface-curses__adb.htm#ref_2226_29">Blue</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">color_content()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1746_14">Color_Content</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_kernel.3x.html">curs_kernel.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Not implemented: getsyx, setsyx</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <b>type</b> <FONT COLOR=red><A NAME="ref_1758_9">Curses_Mode</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_1758_25">Curses</A></FONT>, <FONT COLOR=red><A NAME="ref_1758_33">Shell</A></FONT>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_148"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1761_14" HREF="terminal_interface-curses__adb.htm#ref_2247_14">Save_Curses_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_1761_32" HREF="terminal_interface-curses__adb.htm#ref_2247_32">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1758_9">Curses_Mode</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">def_prog_mode()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: def_shell_mode()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1761_14">Save_Curses_Mode</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_149"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1767_14" HREF="terminal_interface-curses__adb.htm#ref_2265_14">Reset_Curses_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_1767_33" HREF="terminal_interface-curses__adb.htm#ref_2265_33">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1758_9">Curses_Mode</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">reset_prog_mode()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: reset_shell_mode()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1767_14">Reset_Curses_Mode</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_150"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1773_14" HREF="terminal_interface-curses__adb.htm#ref_2283_14">Save_Terminal_State</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">savetty()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1773_14">Save_Terminal_State</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_151"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1778_14" HREF="terminal_interface-curses__adb.htm#ref_2293_14">Reset_Terminal_State</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">resetty();</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1778_14">Reset_Terminal_State</A>); -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_1782_9">Stdscr_Init_Proc</A></FONT> <b>is</b> <b>access</b> -- <b>function</b> (<FONT COLOR=red><A NAME="ref_1783_17">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_1784_17">Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>return</b> Integer; -- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__ads.htm#ref_1782_9">Stdscr_Init_Proc</A>); -- <FONT COLOR=green><EM>-- N.B.: the return value is actually ignored, but it seems to be</EM></FONT> -- <FONT COLOR=green><EM>-- a good practice to return 0 if you think all went fine</EM></FONT> -- <FONT COLOR=green><EM>-- and -1 otherwise.</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_152"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1791_14" HREF="terminal_interface-curses__adb.htm#ref_2303_14">Rip_Off_Lines</A></FONT> (<FONT COLOR=red><A NAME="ref_1791_29" HREF="terminal_interface-curses__adb.htm#ref_2303_29">Lines</A></FONT> : Integer; -- <FONT COLOR=red><A NAME="ref_1792_29" HREF="terminal_interface-curses__adb.htm#ref_2304_29">Proc</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1782_9">Stdscr_Init_Proc</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">ripoffline()</A></EM></FONT> -- <FONT COLOR=green><EM>-- N.B.: to be more precise, this uses a ncurses specific enhancement of</EM></FONT> -- <FONT COLOR=green><EM>-- ripoffline(), in which the Lines argument absolute value is the</EM></FONT> -- <FONT COLOR=green><EM>-- number of lines to be ripped of. The official ripoffline() only</EM></FONT> -- <FONT COLOR=green><EM>-- uses the sign of Lines to remove a single line from bottom or top.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1791_14">Rip_Off_Lines</A>); -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_1800_9">Cursor_Visibility</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_1800_31">Invisible</A></FONT>, <FONT COLOR=red><A NAME="ref_1800_42">Normal</A></FONT>, <FONT COLOR=red><A NAME="ref_1800_50">Very_Visible</A></FONT>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_153"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1803_14" HREF="terminal_interface-curses__adb.htm#ref_2315_14">Set_Cursor_Visibility</A></FONT> (<FONT COLOR=red><A NAME="ref_1803_37" HREF="terminal_interface-curses__adb.htm#ref_2315_37">Visibility</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_1800_9">Cursor_Visibility</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">curs_set()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1803_14">Set_Cursor_Visibility</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_154"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1808_14" HREF="terminal_interface-curses__adb.htm#ref_2328_14">Nap_Milli_Seconds</A></FONT> (<FONT COLOR=red><A NAME="ref_1808_33" HREF="terminal_interface-curses__adb.htm#ref_2328_33">Ms</A></FONT> : Natural); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">napms()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1808_14">Nap_Milli_Seconds</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Some useful helpers.</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <b>type</b> <FONT COLOR=red><A NAME="ref_1815_9">Transform_Direction</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_1815_33">From_Screen</A></FONT>, <FONT COLOR=red><A NAME="ref_1815_46">To_Screen</A></FONT>); -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1816_14" HREF="terminal_interface-curses__adb.htm#ref_2396_14">Transform_Coordinates</A></FONT> -- (<FONT COLOR=red><A NAME="ref_1817_7" HREF="terminal_interface-curses__adb.htm#ref_2397_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1818_7" HREF="terminal_interface-curses__adb.htm#ref_2398_7">Line</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_1819_7" HREF="terminal_interface-curses__adb.htm#ref_2399_7">Column</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_1820_7" HREF="terminal_interface-curses__adb.htm#ref_2400_7">Dir</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1815_9">Transform_Direction</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1815_33">From_Screen</A>); -- <FONT COLOR=green><EM>-- This procedure transforms screen coordinates into coordinates relative</EM></FONT> -- <FONT COLOR=green><EM>-- to the window and vice versa, depending on the Dir parameter.</EM></FONT> -- <FONT COLOR=green><EM>-- Screen coordinates are the position information for the physical device.</EM></FONT> -- <FONT COLOR=green><EM>-- An Curses_Exception will be raised if Line and Column are not in the</EM></FONT> -- <FONT COLOR=green><EM>-- Window or if you pass the Null_Window as argument.</EM></FONT> -- <FONT COLOR=green><EM>-- We do not inline this procedure</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/default_colors.3x.html">default_colors.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_155"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1833_14" HREF="terminal_interface-curses__adb.htm#ref_2425_14">Use_Default_Colors</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/default_colors.3x.html">use_default_colors()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1833_14">Use_Default_Colors</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_156"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1838_14" HREF="terminal_interface-curses__adb.htm#ref_2435_14">Assume_Default_Colors</A></FONT> (<FONT COLOR=red><A NAME="ref_1838_37" HREF="terminal_interface-curses__adb.htm#ref_2435_37">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>; -- <FONT COLOR=red><A NAME="ref_1839_37" HREF="terminal_interface-curses__adb.htm#ref_2436_37">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/default_colors.3x.html">assume_default_colors()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1838_14">Assume_Default_Colors</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_extend.3x.html">curs_extend.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_157"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1848_13" HREF="terminal_interface-curses__adb.htm#ref_2450_13">Curses_Version</A></FONT> <b>return</b> String; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_extend.3x.html">curses_version()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_158"#2|</EM></FONT> -- <FONT COLOR=green><EM>-- The returnvalue is the previous setting of the flag</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1853_13" HREF="terminal_interface-curses__adb.htm#ref_2473_13">Use_Extended_Names</A></FONT> (<FONT COLOR=red><A NAME="ref_1853_33" HREF="terminal_interface-curses__adb.htm#ref_2473_33">Enable</A></FONT> : Boolean) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_extend.3x.html">use_extended_names()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_trace.3x.html">curs_trace.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_159"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1861_14" HREF="terminal_interface-curses__adb.htm#ref_2459_14">Curses_Free_All</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_trace.3x.html">_nc_freeall()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_scr_dump.3x.html">curs_scr_dump.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_160"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1869_14" HREF="terminal_interface-curses__adb.htm#ref_2488_14">Screen_Dump_To_File</A></FONT> (<FONT COLOR=red><A NAME="ref_1869_35" HREF="terminal_interface-curses__adb.htm#ref_2488_35">Filename</A></FONT> : String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_dump()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_161"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1873_14" HREF="terminal_interface-curses__adb.htm#ref_2501_14">Screen_Restore_From_File</A></FONT> (<FONT COLOR=red><A NAME="ref_1873_40" HREF="terminal_interface-curses__adb.htm#ref_2501_40">Filename</A></FONT> : String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_restore()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_162"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1877_14" HREF="terminal_interface-curses__adb.htm#ref_2514_14">Screen_Init_From_File</A></FONT> (<FONT COLOR=red><A NAME="ref_1877_37" HREF="terminal_interface-curses__adb.htm#ref_2514_37">Filename</A></FONT> : String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_init()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_163"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1881_14" HREF="terminal_interface-curses__adb.htm#ref_2527_14">Screen_Set_File</A></FONT> (<FONT COLOR=red><A NAME="ref_1881_31" HREF="terminal_interface-curses__adb.htm#ref_2527_31">Filename</A></FONT> : String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_set()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_print.3x.html">curs_print.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- Not implemented: mcprint</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_printw.3x.html">curs_printw.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- Not implemented: printw, wprintw, mvprintw, mvwprintw, vwprintw,</EM></FONT> -- <FONT COLOR=green><EM>-- vw_printw</EM></FONT> -- <FONT COLOR=green><EM>-- Please use the Ada style Text_IO child packages for formatted</EM></FONT> -- <FONT COLOR=green><EM>-- printing. It does not make a lot of sense to map the printf style</EM></FONT> -- <FONT COLOR=green><EM>-- C functions to Ada.</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_scanw.3x.html">curs_scanw.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- Not implemented: scanw, wscanw, mvscanw, mvwscanw, vwscanw, vw_scanw</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/resizeterm.3x.html">resizeterm.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- Not Implemented: resizeterm</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/wresize.3x.html">wresize.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_164"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1913_14" HREF="terminal_interface-curses__adb.htm#ref_2540_14">Resize</A></FONT> (<FONT COLOR=red><A NAME="ref_1913_22" HREF="terminal_interface-curses__adb.htm#ref_2540_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_1914_22" HREF="terminal_interface-curses__adb.htm#ref_2541_22">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_1915_22" HREF="terminal_interface-curses__adb.htm#ref_2542_22">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/wresize.3x.html">wresize()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_142"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1713_14" HREF="terminal_interface-curses__adb.htm#ref_2140_14">Init_Pair</A></span> (<span class="symbol"><A NAME="ref_1713_25" HREF="terminal_interface-curses__adb.htm#ref_2140_25">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_301_12">Redefinable_Color_Pair</A>; -+ <span class="symbol"><A NAME="ref_1714_25" HREF="terminal_interface-curses__adb.htm#ref_2141_25">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -+ <span class="symbol"><A NAME="ref_1715_25" HREF="terminal_interface-curses__adb.htm#ref_2142_25">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">init_pair()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1713_14">Init_Pair</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_143"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1720_14" HREF="terminal_interface-curses__adb.htm#ref_2162_14">Pair_Content</A></span> (<span class="symbol"><A NAME="ref_1720_28" HREF="terminal_interface-curses__adb.htm#ref_2162_28">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>; -+ <span class="symbol"><A NAME="ref_1721_28" HREF="terminal_interface-curses__adb.htm#ref_2163_28">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -+ <span class="symbol"><A NAME="ref_1722_28" HREF="terminal_interface-curses__adb.htm#ref_2164_28">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">pair_content()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1720_14">Pair_Content</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_144"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1727_13" HREF="terminal_interface-curses__adb.htm#ref_2182_13">Has_Colors</A></span> <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">has_colors()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1727_13">Has_Colors</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_145"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1732_14" HREF="terminal_interface-curses__adb.htm#ref_2194_14">Init_Color</A></span> (<span class="symbol"><A NAME="ref_1732_26" HREF="terminal_interface-curses__adb.htm#ref_2194_26">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -+ <span class="symbol"><A NAME="ref_1733_26" HREF="terminal_interface-curses__adb.htm#ref_2195_26">Red</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -+ <span class="symbol"><A NAME="ref_1734_26" HREF="terminal_interface-curses__adb.htm#ref_2196_26">Green</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -+ <span class="symbol"><A NAME="ref_1735_26" HREF="terminal_interface-curses__adb.htm#ref_2197_26">Blue</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">init_color()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1732_14">Init_Color</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_146"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1740_13" HREF="terminal_interface-curses__adb.htm#ref_2211_13">Can_Change_Color</A></span> <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">can_change_color()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1740_13">Can_Change_Color</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_147"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1745_14" HREF="terminal_interface-curses__adb.htm#ref_2223_14">Color_Content</A></span> (<span class="symbol"><A NAME="ref_1745_29" HREF="terminal_interface-curses__adb.htm#ref_2223_29">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>; -+ <span class="symbol"><A NAME="ref_1746_29" HREF="terminal_interface-curses__adb.htm#ref_2224_29">Red</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -+ <span class="symbol"><A NAME="ref_1747_29" HREF="terminal_interface-curses__adb.htm#ref_2225_29">Green</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>; -+ <span class="symbol"><A NAME="ref_1748_29" HREF="terminal_interface-curses__adb.htm#ref_2226_29">Blue</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">color_content()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1745_14">Color_Content</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_kernel.3x.html">curs_kernel.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Not implemented: getsyx, setsyx</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <b>type</b> <span class="symbol"><A NAME="ref_1757_9">Curses_Mode</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1757_25">Curses</A></span>, <span class="symbol"><A NAME="ref_1757_33">Shell</A></span>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_148"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1760_14" HREF="terminal_interface-curses__adb.htm#ref_2247_14">Save_Curses_Mode</A></span> (<span class="symbol"><A NAME="ref_1760_32" HREF="terminal_interface-curses__adb.htm#ref_2247_32">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1757_9">Curses_Mode</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">def_prog_mode()</A></EM></span> -+ <span class="comment"><EM>-- AKA: def_shell_mode()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1760_14">Save_Curses_Mode</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_149"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1766_14" HREF="terminal_interface-curses__adb.htm#ref_2265_14">Reset_Curses_Mode</A></span> (<span class="symbol"><A NAME="ref_1766_33" HREF="terminal_interface-curses__adb.htm#ref_2265_33">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1757_9">Curses_Mode</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">reset_prog_mode()</A></EM></span> -+ <span class="comment"><EM>-- AKA: reset_shell_mode()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1766_14">Reset_Curses_Mode</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_150"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1772_14" HREF="terminal_interface-curses__adb.htm#ref_2283_14">Save_Terminal_State</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">savetty()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1772_14">Save_Terminal_State</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_151"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1777_14" HREF="terminal_interface-curses__adb.htm#ref_2293_14">Reset_Terminal_State</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">resetty();</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1777_14">Reset_Terminal_State</A>); -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_1781_9">Stdscr_Init_Proc</A></span> <b>is</b> <b>access</b> -+ <b>function</b> (<span class="symbol"><A NAME="ref_1782_17">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_1783_17">Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>return</b> Integer; -+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__ads.htm#ref_1781_9">Stdscr_Init_Proc</A>); -+ <span class="comment"><EM>-- N.B.: the return value is actually ignored, but it seems to be</EM></span> -+ <span class="comment"><EM>-- a good practice to return 0 if you think all went fine</EM></span> -+ <span class="comment"><EM>-- and -1 otherwise.</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_152"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1790_14" HREF="terminal_interface-curses__adb.htm#ref_2303_14">Rip_Off_Lines</A></span> (<span class="symbol"><A NAME="ref_1790_29" HREF="terminal_interface-curses__adb.htm#ref_2303_29">Lines</A></span> : Integer; -+ <span class="symbol"><A NAME="ref_1791_29" HREF="terminal_interface-curses__adb.htm#ref_2304_29">Proc</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1781_9">Stdscr_Init_Proc</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">ripoffline()</A></EM></span> -+ <span class="comment"><EM>-- N.B.: to be more precise, this uses a ncurses specific enhancement of</EM></span> -+ <span class="comment"><EM>-- ripoffline(), in which the Lines argument absolute value is the</EM></span> -+ <span class="comment"><EM>-- number of lines to be ripped of. The official ripoffline() only</EM></span> -+ <span class="comment"><EM>-- uses the sign of Lines to remove a single line from bottom or top.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1790_14">Rip_Off_Lines</A>); -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_1799_9">Cursor_Visibility</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1799_31">Invisible</A></span>, <span class="symbol"><A NAME="ref_1799_42">Normal</A></span>, <span class="symbol"><A NAME="ref_1799_50">Very_Visible</A></span>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_153"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1802_14" HREF="terminal_interface-curses__adb.htm#ref_2315_14">Set_Cursor_Visibility</A></span> (<span class="symbol"><A NAME="ref_1802_37" HREF="terminal_interface-curses__adb.htm#ref_2315_37">Visibility</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_1799_9">Cursor_Visibility</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">curs_set()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1802_14">Set_Cursor_Visibility</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_154"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1807_14" HREF="terminal_interface-curses__adb.htm#ref_2328_14">Nap_Milli_Seconds</A></span> (<span class="symbol"><A NAME="ref_1807_33" HREF="terminal_interface-curses__adb.htm#ref_2328_33">Ms</A></span> : Natural); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">napms()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1807_14">Nap_Milli_Seconds</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Some useful helpers.</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <b>type</b> <span class="symbol"><A NAME="ref_1814_9">Transform_Direction</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1814_33">From_Screen</A></span>, <span class="symbol"><A NAME="ref_1814_46">To_Screen</A></span>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1815_14" HREF="terminal_interface-curses__adb.htm#ref_2396_14">Transform_Coordinates</A></span> -+ (<span class="symbol"><A NAME="ref_1816_7" HREF="terminal_interface-curses__adb.htm#ref_2397_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1817_7" HREF="terminal_interface-curses__adb.htm#ref_2398_7">Line</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_1818_7" HREF="terminal_interface-curses__adb.htm#ref_2399_7">Column</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_1819_7" HREF="terminal_interface-curses__adb.htm#ref_2400_7">Dir</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1814_9">Transform_Direction</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1814_33">From_Screen</A>); -+ <span class="comment"><EM>-- This procedure transforms screen coordinates into coordinates relative</EM></span> -+ <span class="comment"><EM>-- to the window and vice versa, depending on the Dir parameter.</EM></span> -+ <span class="comment"><EM>-- Screen coordinates are the position information for the physical device.</EM></span> -+ <span class="comment"><EM>-- An Curses_Exception will be raised if Line and Column are not in the</EM></span> -+ <span class="comment"><EM>-- Window or if you pass the Null_Window as argument.</EM></span> -+ <span class="comment"><EM>-- We do not inline this procedure</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/default_colors.3x.html">default_colors.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_155"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1832_14" HREF="terminal_interface-curses__adb.htm#ref_2425_14">Use_Default_Colors</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/default_colors.3x.html">use_default_colors()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1832_14">Use_Default_Colors</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_156"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1837_14" HREF="terminal_interface-curses__adb.htm#ref_2435_14">Assume_Default_Colors</A></span> (<span class="symbol"><A NAME="ref_1837_37" HREF="terminal_interface-curses__adb.htm#ref_2435_37">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>; -+ <span class="symbol"><A NAME="ref_1838_37" HREF="terminal_interface-curses__adb.htm#ref_2436_37">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/default_colors.3x.html">assume_default_colors()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1837_14">Assume_Default_Colors</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_extend.3x.html">curs_extend.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_157"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1847_13" HREF="terminal_interface-curses__adb.htm#ref_2450_13">Curses_Version</A></span> <b>return</b> String; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_extend.3x.html">curses_version()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_158"#2|</EM></span> -+ <span class="comment"><EM>-- The returnvalue is the previous setting of the flag</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1852_13" HREF="terminal_interface-curses__adb.htm#ref_2473_13">Use_Extended_Names</A></span> (<span class="symbol"><A NAME="ref_1852_33" HREF="terminal_interface-curses__adb.htm#ref_2473_33">Enable</A></span> : Boolean) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_extend.3x.html">use_extended_names()</A></EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_trace.3x.html">curs_trace.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_159"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1860_14" HREF="terminal_interface-curses__adb.htm#ref_2459_14">Curses_Free_All</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_trace.3x.html">_nc_freeall()</A></EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_scr_dump.3x.html">curs_scr_dump.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_160"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1868_14" HREF="terminal_interface-curses__adb.htm#ref_2488_14">Screen_Dump_To_File</A></span> (<span class="symbol"><A NAME="ref_1868_35" HREF="terminal_interface-curses__adb.htm#ref_2488_35">Filename</A></span> : String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_dump()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_161"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1872_14" HREF="terminal_interface-curses__adb.htm#ref_2501_14">Screen_Restore_From_File</A></span> (<span class="symbol"><A NAME="ref_1872_40" HREF="terminal_interface-curses__adb.htm#ref_2501_40">Filename</A></span> : String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_restore()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_162"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1876_14" HREF="terminal_interface-curses__adb.htm#ref_2514_14">Screen_Init_From_File</A></span> (<span class="symbol"><A NAME="ref_1876_37" HREF="terminal_interface-curses__adb.htm#ref_2514_37">Filename</A></span> : String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_init()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_163"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1880_14" HREF="terminal_interface-curses__adb.htm#ref_2527_14">Screen_Set_File</A></span> (<span class="symbol"><A NAME="ref_1880_31" HREF="terminal_interface-curses__adb.htm#ref_2527_31">Filename</A></span> : String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_set()</A></EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_print.3x.html">curs_print.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- Not implemented: mcprint</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_printw.3x.html">curs_printw.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- Not implemented: printw, wprintw, mvprintw, mvwprintw, vwprintw,</EM></span> -+ <span class="comment"><EM>-- vw_printw</EM></span> -+ <span class="comment"><EM>-- Please use the Ada style Text_IO child packages for formatted</EM></span> -+ <span class="comment"><EM>-- printing. It does not make a lot of sense to map the printf style</EM></span> -+ <span class="comment"><EM>-- C functions to Ada.</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_scanw.3x.html">curs_scanw.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- Not implemented: scanw, wscanw, mvscanw, mvwscanw, vwscanw, vw_scanw</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/resizeterm.3x.html">resizeterm.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- Not Implemented: resizeterm</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/wresize.3x.html">wresize.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_164"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1912_14" HREF="terminal_interface-curses__adb.htm#ref_2540_14">Resize</A></span> (<span class="symbol"><A NAME="ref_1912_22" HREF="terminal_interface-curses__adb.htm#ref_2540_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_1913_22" HREF="terminal_interface-curses__adb.htm#ref_2541_22">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_1914_22" HREF="terminal_interface-curses__adb.htm#ref_2542_22">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/wresize.3x.html">wresize()</A></EM></span> - - <b>private</b> - <b>type</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address; - <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := 0; - -- <FONT COLOR=green><EM>-- The next constants are generated and may be different on your</EM></FONT> -- <FONT COLOR=green><EM>-- architecture.</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=red><A NAME="ref_1925_4">Sizeof_bool</A></FONT> : <b>constant</b> Natural := 1; <FONT COLOR=green><EM>-- bool</EM></FONT> -- <b>type</b> <FONT COLOR=red><A NAME="ref_1926_9">Curses_Bool</A></FONT> <b>is</b> <b>mod</b> 2 ** <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char'Size; -- <FONT COLOR=red><A NAME="ref_1927_4">Curses_Bool_False</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> := 0; -+ <span class="comment"><EM>-- The next constants are generated and may be different on your</EM></span> -+ <span class="comment"><EM>-- architecture.</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="symbol"><A NAME="ref_1924_4">Sizeof_bool</A></span> : <b>constant</b> Natural := 1; <span class="comment"><EM>-- bool</EM></span> -+ <b>type</b> <span class="symbol"><A NAME="ref_1925_9">Curses_Bool</A></span> <b>is</b> <b>mod</b> 2 ** <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char'Size; -+ <span class="symbol"><A NAME="ref_1926_4">Curses_Bool_False</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> := 0; - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-aux__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-aux__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-aux__adb.htm 2011-03-20 00:18:39.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-aux__adb.htm 2014-09-01 16:33:22.272791983 +0200 -@@ -1,58 +1,70 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-aux.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-aux.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-aux.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-aux.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Aux --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_41_40" HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A></FONT> <b>is</b> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>-- Some helpers</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_44_14" HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A></FONT> (<FONT COLOR=red><A NAME="ref_44_27" HREF="terminal_interface-curses-aux__ads.htm#ref_116_27">Cp</A></FONT> : chars_ptr; -- <FONT COLOR=red><A NAME="ref_45_27" HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A></FONT> : <b>out</b> String) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Aux --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_41_40" HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A></span> <b>is</b> -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>-- Some helpers</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_44_14" HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A></span> (<span class="symbol"><A NAME="ref_44_27" HREF="terminal_interface-curses-aux__ads.htm#ref_116_27">Cp</A></span> : chars_ptr; -+ <span class="symbol"><A NAME="ref_45_27" HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A></span> : <b>out</b> String) - <b>is</b> -- <FONT COLOR=green><EM>-- Fill the string with the characters referenced by the</EM></FONT> -- <FONT COLOR=green><EM>-- chars_ptr.</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=red><A NAME="ref_50_7">Len</A></FONT> : Natural; -+ <span class="comment"><EM>-- Fill the string with the characters referenced by the</EM></span> -+ <span class="comment"><EM>-- chars_ptr.</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="symbol"><A NAME="ref_50_7">Len</A></span> : Natural; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_27">Cp</A> /= Null_Ptr <b>then</b> - <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> := Natural (Strlen (<A HREF="terminal_interface-curses-aux__ads.htm#ref_116_27">Cp</A>)); -@@ -60,7 +72,7 @@ - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; - <b>declare</b> -- <FONT COLOR=red><A NAME="ref_58_13">S</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A>); -+ <span class="symbol"><A NAME="ref_58_13">S</A></span> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A>); - <b>begin</b> - <A HREF="terminal_interface-curses-aux__adb.htm#ref_58_13">S</A> := Value (<A HREF="terminal_interface-curses-aux__ads.htm#ref_116_27">Cp</A>); - <A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A>'First .. (<A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A>'First + <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> - 1)) := <A HREF="terminal_interface-curses-aux__adb.htm#ref_58_13">S</A> (<A HREF="terminal_interface-curses-aux__adb.htm#ref_58_13">S</A>'<b>Range</b>); -@@ -75,9 +87,9 @@ - - <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_73_13" HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A></FONT> (<FONT COLOR=red><A NAME="ref_73_26" HREF="terminal_interface-curses-aux__ads.htm#ref_121_26">Cp</A></FONT> : chars_ptr) <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_73_13" HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A></span> (<span class="symbol"><A NAME="ref_73_26" HREF="terminal_interface-curses-aux__ads.htm#ref_121_26">Cp</A></span> : chars_ptr) <b>return</b> String - <b>is</b> -- <FONT COLOR=red><A NAME="ref_75_7">Len</A></FONT> : Natural; -+ <span class="symbol"><A NAME="ref_75_7">Len</A></span> : Natural; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_26">Cp</A> /= Null_Ptr <b>then</b> - <A HREF="terminal_interface-curses-aux__adb.htm#ref_75_7">Len</A> := Natural (Strlen (<A HREF="terminal_interface-curses-aux__ads.htm#ref_121_26">Cp</A>)); -@@ -85,7 +97,7 @@ - <b>return</b> ""; - <b>else</b> - <b>declare</b> -- <FONT COLOR=red><A NAME="ref_83_16">S</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#ref_75_7">Len</A>); -+ <span class="symbol"><A NAME="ref_83_16">S</A></span> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#ref_75_7">Len</A>); - <b>begin</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_121_26">Cp</A>, <A HREF="terminal_interface-curses-aux__adb.htm#ref_83_16">S</A>); - <b>return</b> <A HREF="terminal_interface-curses-aux__adb.htm#ref_83_16">S</A>; -@@ -96,25 +108,25 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_94_14" HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A></FONT> (<FONT COLOR=red><A NAME="ref_94_29" HREF="terminal_interface-curses-aux__ads.htm#ref_96_29">Code</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_94_14" HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A></span> (<span class="symbol"><A NAME="ref_94_29" HREF="terminal_interface-curses-aux__ads.htm#ref_96_29">Code</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>) - <b>is</b> - <b>begin</b> - <b>case</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_29">Code</A> <b>is</b> - <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> =&gt; <b>null</b>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_81_4">E_System_Error</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_391_4">Eti_System_Error</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_82_4">E_Bad_Argument</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_392_4">Eti_Bad_Argument</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_83_4">E_Posted</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_393_4">Eti_Posted</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_84_4">E_Connected</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_394_4">Eti_Connected</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_85_4">E_Bad_State</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_395_4">Eti_Bad_State</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_86_4">E_No_Room</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_396_4">Eti_No_Room</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_87_4">E_Not_Posted</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_397_4">Eti_Not_Posted</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_4">E_Unknown_Command</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_398_4">Eti_Unknown_Command</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_89_4">E_No_Match</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_399_4">Eti_No_Match</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_90_4">E_Not_Selectable</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_400_4">Eti_Not_Selectable</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_91_4">E_Not_Connected</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_401_4">Eti_Not_Connected</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_4">E_Request_Denied</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_402_4">Eti_Request_Denied</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_93_4">E_Invalid_Field</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_403_4">Eti_Invalid_Field</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_94_4">E_Current</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_404_4">Eti_Current</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_81_4">E_System_Error</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_390_4">Eti_System_Error</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_82_4">E_Bad_Argument</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_391_4">Eti_Bad_Argument</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_83_4">E_Posted</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_392_4">Eti_Posted</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_84_4">E_Connected</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_393_4">Eti_Connected</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_85_4">E_Bad_State</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_394_4">Eti_Bad_State</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_86_4">E_No_Room</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_395_4">Eti_No_Room</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_87_4">E_Not_Posted</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_396_4">Eti_Not_Posted</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_4">E_Unknown_Command</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_397_4">Eti_Unknown_Command</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_89_4">E_No_Match</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_398_4">Eti_No_Match</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_90_4">E_Not_Selectable</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_399_4">Eti_Not_Selectable</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_91_4">E_Not_Connected</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_400_4">Eti_Not_Connected</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_4">E_Request_Denied</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_401_4">Eti_Request_Denied</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_93_4">E_Invalid_Field</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_402_4">Eti_Invalid_Field</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_94_4">E_Current</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_403_4">Eti_Current</A>; - <b>end</b> <b>case</b>; - <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A>; - -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-aux__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-aux__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-aux__ads.htm 2011-03-20 00:18:39.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-aux__ads.htm 2014-09-01 16:33:22.272791983 +0200 -@@ -1,130 +1,142 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-aux.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-aux.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-aux.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-aux.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Aux --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.18 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- curses binding.</EM></FONT> --<FONT COLOR=green><EM>-- This module is generated. Please don't change it manually!</EM></FONT> --<FONT COLOR=green><EM>-- Run the generator instead.</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Aux --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.18 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- curses binding.</EM></span> -+<span class="comment"><EM>-- This module is generated. Please don't change it manually!</EM></span> -+<span class="comment"><EM>-- Run the generator instead.</EM></span> -+<span class="comment"><EM>-- |</EM></span> - <b>with</b> System; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; - <b>with</b> <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A>; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_50_35" HREF="terminal_interface-curses-aux__adb.htm#ref_41_40">Aux</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_50_35" HREF="terminal_interface-curses-aux__adb.htm#ref_41_40">Aux</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>); - -- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_55_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_56_12">C_Short</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_57_12">C_Long_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.long; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_58_12">C_Size_T</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.size_t; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_59_12">C_UInt</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.unsigned; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_60_12">C_ULong</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.unsigned_long; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_61_12">C_Char_Ptr</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings.chars_ptr; -- <b>type</b> <FONT COLOR=red><A NAME="ref_62_12">C_Void_Ptr</A></FONT> <b>is</b> <b>new</b> System.Address; -- <b>type</b> <FONT COLOR=red><A NAME="ref_63_12">C_Chtype</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_60_12">C_ULong</A>; -- <b>type</b> <FONT COLOR=red><A NAME="ref_64_12">C_AttrType</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_60_12">C_ULong</A>; -- -- <FONT COLOR=green><EM>-- This is how those constants are defined in ncurses. I see them also</EM></FONT> -- <FONT COLOR=green><EM>-- exactly like this in all ETI implementations I ever tested. So it</EM></FONT> -- <FONT COLOR=green><EM>-- could be that this is quite general, but please check with your curses.</EM></FONT> -- <FONT COLOR=green><EM>-- This is critical, because curses sometime mixes Boolean returns with</EM></FONT> -- <FONT COLOR=green><EM>-- returning an error status.</EM></FONT> -- <FONT COLOR=red><A NAME="ref_71_4">Curses_Ok</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := 0; -- <FONT COLOR=red><A NAME="ref_72_4">Curses_Err</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -1; -- -- <FONT COLOR=red><A NAME="ref_74_4">Curses_True</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := 1; -- <FONT COLOR=red><A NAME="ref_75_4">Curses_False</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := 0; -- -- <FONT COLOR=green><EM>-- Eti_Error: type for error codes returned by the menu and form subsystem</EM></FONT> -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_78_12">Eti_Error</A></FONT> <b>is</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> <b>range</b> -14 .. 0; -- -- <FONT COLOR=red><A NAME="ref_80_4">E_Ok</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := 0; -- <FONT COLOR=red><A NAME="ref_81_4">E_System_Error</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -1; -- <FONT COLOR=red><A NAME="ref_82_4">E_Bad_Argument</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -2; -- <FONT COLOR=red><A NAME="ref_83_4">E_Posted</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -3; -- <FONT COLOR=red><A NAME="ref_84_4">E_Connected</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -4; -- <FONT COLOR=red><A NAME="ref_85_4">E_Bad_State</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -5; -- <FONT COLOR=red><A NAME="ref_86_4">E_No_Room</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -6; -- <FONT COLOR=red><A NAME="ref_87_4">E_Not_Posted</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -7; -- <FONT COLOR=red><A NAME="ref_88_4">E_Unknown_Command</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -8; -- <FONT COLOR=red><A NAME="ref_89_4">E_No_Match</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -9; -- <FONT COLOR=red><A NAME="ref_90_4">E_Not_Selectable</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -10; -- <FONT COLOR=red><A NAME="ref_91_4">E_Not_Connected</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -11; -- <FONT COLOR=red><A NAME="ref_92_4">E_Request_Denied</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -12; -- <FONT COLOR=red><A NAME="ref_93_4">E_Invalid_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -13; -- <FONT COLOR=red><A NAME="ref_94_4">E_Current</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -14; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_96_14" HREF="terminal_interface-curses-aux__adb.htm#ref_94_14">Eti_Exception</A></FONT> (<FONT COLOR=red><A NAME="ref_96_29" HREF="terminal_interface-curses-aux__adb.htm#ref_94_29">Code</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>); -- <FONT COLOR=green><EM>-- Dispatch the error code and raise the appropriate exception</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>-- Some helpers</EM></FONT> -+ <b>subtype</b> <span class="symbol"><A NAME="ref_55_12">C_Int</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_56_12">C_Short</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_57_12">C_Long_Int</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.long; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_58_12">C_Size_T</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.size_t; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_59_12">C_UInt</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.unsigned; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_60_12">C_ULong</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.unsigned_long; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_61_12">C_Char_Ptr</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings.chars_ptr; -+ <b>type</b> <span class="symbol"><A NAME="ref_62_12">C_Void_Ptr</A></span> <b>is</b> <b>new</b> System.Address; -+ <b>type</b> <span class="symbol"><A NAME="ref_63_12">C_Chtype</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_59_12">C_UInt</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_64_12">C_AttrType</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_59_12">C_UInt</A>; -+ -+ <span class="comment"><EM>-- This is how those constants are defined in ncurses. I see them also</EM></span> -+ <span class="comment"><EM>-- exactly like this in all ETI implementations I ever tested. So it</EM></span> -+ <span class="comment"><EM>-- could be that this is quite general, but please check with your curses.</EM></span> -+ <span class="comment"><EM>-- This is critical, because curses sometime mixes Boolean returns with</EM></span> -+ <span class="comment"><EM>-- returning an error status.</EM></span> -+ <span class="symbol"><A NAME="ref_71_4">Curses_Ok</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := 0; -+ <span class="symbol"><A NAME="ref_72_4">Curses_Err</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -1; -+ -+ <span class="symbol"><A NAME="ref_74_4">Curses_True</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := 1; -+ <span class="symbol"><A NAME="ref_75_4">Curses_False</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := 0; -+ -+ <span class="comment"><EM>-- Eti_Error: type for error codes returned by the menu and form subsystem</EM></span> -+ <b>subtype</b> <span class="symbol"><A NAME="ref_78_12">Eti_Error</A></span> <b>is</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> <b>range</b> -14 .. 0; -+ -+ <span class="symbol"><A NAME="ref_80_4">E_Ok</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := 0; -+ <span class="symbol"><A NAME="ref_81_4">E_System_Error</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -1; -+ <span class="symbol"><A NAME="ref_82_4">E_Bad_Argument</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -2; -+ <span class="symbol"><A NAME="ref_83_4">E_Posted</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -3; -+ <span class="symbol"><A NAME="ref_84_4">E_Connected</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -4; -+ <span class="symbol"><A NAME="ref_85_4">E_Bad_State</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -5; -+ <span class="symbol"><A NAME="ref_86_4">E_No_Room</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -6; -+ <span class="symbol"><A NAME="ref_87_4">E_Not_Posted</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -7; -+ <span class="symbol"><A NAME="ref_88_4">E_Unknown_Command</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -8; -+ <span class="symbol"><A NAME="ref_89_4">E_No_Match</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -9; -+ <span class="symbol"><A NAME="ref_90_4">E_Not_Selectable</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -10; -+ <span class="symbol"><A NAME="ref_91_4">E_Not_Connected</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -11; -+ <span class="symbol"><A NAME="ref_92_4">E_Request_Denied</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -12; -+ <span class="symbol"><A NAME="ref_93_4">E_Invalid_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -13; -+ <span class="symbol"><A NAME="ref_94_4">E_Current</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -14; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_96_14" HREF="terminal_interface-curses-aux__adb.htm#ref_94_14">Eti_Exception</A></span> (<span class="symbol"><A NAME="ref_96_29" HREF="terminal_interface-curses-aux__adb.htm#ref_94_29">Code</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>); -+ <span class="comment"><EM>-- Dispatch the error code and raise the appropriate exception</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>-- Some helpers</EM></span> - <b>function</b> Chtype_To_AttrChar <b>is</b> <b>new</b> - <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A> (<A HREF="unchconv__ads.htm#ref_17_9">Source</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>, -- <A HREF="unchconv__ads.htm#ref_18_9">Target</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -+ <A HREF="unchconv__ads.htm#ref_18_9">Target</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); - <b>function</b> AttrChar_To_Chtype <b>is</b> <b>new</b> -- <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A> (<A HREF="unchconv__ads.htm#ref_17_9">Source</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>, -+ <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A> (<A HREF="unchconv__ads.htm#ref_17_9">Source</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>, - <A HREF="unchconv__ads.htm#ref_18_9">Target</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>); - - <b>function</b> AttrChar_To_AttrType <b>is</b> <b>new</b> -- <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A> (<A HREF="unchconv__ads.htm#ref_17_9">Source</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>, -+ <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A> (<A HREF="unchconv__ads.htm#ref_17_9">Source</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>, - <A HREF="unchconv__ads.htm#ref_18_9">Target</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>); - - <b>function</b> AttrType_To_AttrChar <b>is</b> <b>new</b> - <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A> (<A HREF="unchconv__ads.htm#ref_17_9">Source</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>, -- <A HREF="unchconv__ads.htm#ref_18_9">Target</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>); -+ <A HREF="unchconv__ads.htm#ref_18_9">Target</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_116_14" HREF="terminal_interface-curses-aux__adb.htm#ref_44_14">Fill_String</A></FONT> (<FONT COLOR=red><A NAME="ref_116_27" HREF="terminal_interface-curses-aux__adb.htm#ref_44_27">Cp</A></FONT> : chars_ptr; -- <FONT COLOR=red><A NAME="ref_117_27" HREF="terminal_interface-curses-aux__adb.htm#ref_45_27">Str</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- Fill the Str parameter with the string denoted by the chars_ptr</EM></FONT> -- <FONT COLOR=green><EM>-- C-Style string.</EM></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_116_14" HREF="terminal_interface-curses-aux__adb.htm#ref_44_14">Fill_String</A></span> (<span class="symbol"><A NAME="ref_116_27" HREF="terminal_interface-curses-aux__adb.htm#ref_44_27">Cp</A></span> : chars_ptr; -+ <span class="symbol"><A NAME="ref_117_27" HREF="terminal_interface-curses-aux__adb.htm#ref_45_27">Str</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- Fill the Str parameter with the string denoted by the chars_ptr</EM></span> -+ <span class="comment"><EM>-- C-Style string.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_121_13" HREF="terminal_interface-curses-aux__adb.htm#ref_73_13">Fill_String</A></FONT> (<FONT COLOR=red><A NAME="ref_121_26" HREF="terminal_interface-curses-aux__adb.htm#ref_73_26">Cp</A></FONT> : chars_ptr) <b>return</b> String; -- <FONT COLOR=green><EM>-- Same but as function.</EM></FONT> -+ <b>function</b> <span class="symbol"><A NAME="ref_121_13" HREF="terminal_interface-curses-aux__adb.htm#ref_73_13">Fill_String</A></span> (<span class="symbol"><A NAME="ref_121_26" HREF="terminal_interface-curses-aux__adb.htm#ref_73_26">Cp</A></span> : chars_ptr) <b>return</b> String; -+ <span class="comment"><EM>-- Same but as function.</EM></span> - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms__adb.htm 2011-03-26 22:54:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms__adb.htm 2014-09-01 16:33:22.285792004 +0200 -@@ -1,71 +1,83 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.28 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:37:32 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.28 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/22 23:37:32 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Unchecked_Deallocation; - <b>with</b> Ada.Unchecked_Conversion; - --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Pointers; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Pointers; - - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_51_40" HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_51_40" HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A></span> <b>is</b> - - <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - - <b>type</b> C_Field_Array <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; - <b>package</b> F_Array <b>is</b> <b>new</b> -- <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>, C_Field_Array, <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>); -+ <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>, C_Field_Array, <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>); - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- subtype chars_ptr is Interfaces.C.Strings.chars_ptr;</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- subtype chars_ptr is Interfaces.C.Strings.chars_ptr;</EM></span> - - <b>function</b> FOS_2_CInt <b>is</b> <b>new</b> - Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>, -@@ -76,467 +88,467 @@ - <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>); - - <b>function</b> FrmOS_2_CInt <b>is</b> <b>new</b> -- Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>, -+ Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>, - <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>); - - <b>function</b> CInt_2_FrmOS <b>is</b> <b>new</b> - Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>, -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_81_14" HREF="terminal_interface-curses-forms__ads.htm#ref_280_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_81_28" HREF="terminal_interface-curses-forms__ads.htm#ref_280_28">Key</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A>; -- <FONT COLOR=red><A NAME="ref_82_33" HREF="terminal_interface-curses-forms__ads.htm#ref_281_28">Name</A></FONT> : <b>out</b> String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_81_14" HREF="terminal_interface-curses-forms__ads.htm#ref_278_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_81_28" HREF="terminal_interface-curses-forms__ads.htm#ref_278_28">Key</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A>; -+ <span class="symbol"><A NAME="ref_82_33" HREF="terminal_interface-curses-forms__ads.htm#ref_279_28">Name</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_84_16">Form_Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_84_35" HREF="terminal_interface-curses-forms__adb.htm#ref_84_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_84_16">Form_Request_Name</A></span> (<span class="symbol"><A NAME="ref_84_35" HREF="terminal_interface-curses-forms__adb.htm#ref_84_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Form_Request_Name, "form_request_name"); - <b>begin</b> -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_84_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_280_28">Key</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#ref_281_28">Name</A>); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_280_14">Request_Name</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_84_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_278_28">Key</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#ref_279_28">Name</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_278_14">Request_Name</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_90_13" HREF="terminal_interface-curses-forms__ads.htm#ref_283_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_90_27" HREF="terminal_interface-curses-forms__ads.htm#ref_283_28">Key</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A>) <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_90_13" HREF="terminal_interface-curses-forms__ads.htm#ref_281_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_90_27" HREF="terminal_interface-curses-forms__ads.htm#ref_281_28">Key</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A>) <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_92_16">Form_Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_92_35" HREF="terminal_interface-curses-forms__adb.htm#ref_92_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_92_16">Form_Request_Name</A></span> (<span class="symbol"><A NAME="ref_92_35" HREF="terminal_interface-curses-forms__adb.htm#ref_92_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Form_Request_Name, "form_request_name"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_92_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_283_28">Key</A>))); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_283_14">Request_Name</A>; --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_field_new.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_108_13" HREF="terminal_interface-curses-forms__ads.htm#ref_297_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_108_21" HREF="terminal_interface-curses-forms__ads.htm#ref_297_21">Height</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_109_21" HREF="terminal_interface-curses-forms__ads.htm#ref_298_21">Width</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_110_21" HREF="terminal_interface-curses-forms__ads.htm#ref_299_21">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_111_21" HREF="terminal_interface-curses-forms__ads.htm#ref_300_21">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_112_21" HREF="terminal_interface-curses-forms__ads.htm#ref_301_21">Off_Screen</A></FONT> : Natural := 0; -- <FONT COLOR=red><A NAME="ref_113_21" HREF="terminal_interface-curses-forms__ads.htm#ref_302_21">More_Buffers</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) -+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_92_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_281_28">Key</A>))); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_281_14">Request_Name</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_field_new.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_108_13" HREF="terminal_interface-curses-forms__ads.htm#ref_295_13">Create</A></span> (<span class="symbol"><A NAME="ref_108_21" HREF="terminal_interface-curses-forms__ads.htm#ref_295_21">Height</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_109_21" HREF="terminal_interface-curses-forms__ads.htm#ref_296_21">Width</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_110_21" HREF="terminal_interface-curses-forms__ads.htm#ref_297_21">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_111_21" HREF="terminal_interface-curses-forms__ads.htm#ref_298_21">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_112_21" HREF="terminal_interface-curses-forms__ads.htm#ref_299_21">Off_Screen</A></span> : Natural := 0; -+ <span class="symbol"><A NAME="ref_113_21" HREF="terminal_interface-curses-forms__ads.htm#ref_300_21">More_Buffers</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First) - <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_116_16">Newfield</A></FONT> (<FONT COLOR=red><A NAME="ref_116_26" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">H</A></FONT>, <FONT COLOR=red><A NAME="ref_116_29" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">W</A></FONT>, <FONT COLOR=red><A NAME="ref_116_32" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">T</A></FONT>, <FONT COLOR=red><A NAME="ref_116_35" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">L</A></FONT>, <FONT COLOR=red><A NAME="ref_116_38" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">O</A></FONT>, <FONT COLOR=red><A NAME="ref_116_41" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">M</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_116_16">Newfield</A></span> (<span class="symbol"><A NAME="ref_116_26" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">H</A></span>, <span class="symbol"><A NAME="ref_116_29" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">W</A></span>, <span class="symbol"><A NAME="ref_116_32" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">T</A></span>, <span class="symbol"><A NAME="ref_116_35" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">L</A></span>, <span class="symbol"><A NAME="ref_116_38" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">O</A></span>, <span class="symbol"><A NAME="ref_116_41" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">M</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; - <b>pragma</b> Import (C, Newfield, "new_field"); -- <FONT COLOR=red><A NAME="ref_118_7">Fld</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">Newfield</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_297_21">Height</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_298_21">Width</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_299_21">Top</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_300_21">Left</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_301_21">Off_Screen</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_302_21">More_Buffers</A>)); -+ <span class="symbol"><A NAME="ref_118_7">Fld</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">Newfield</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_295_21">Height</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_296_21">Width</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_297_21">Top</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_298_21">Left</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_299_21">Off_Screen</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_300_21">More_Buffers</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_118_7">Fld</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_118_7">Fld</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_297_13">Create</A>; --<FONT COLOR=green><EM>-- |</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_131_14" HREF="terminal_interface-curses-forms__ads.htm#ref_319_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_131_22" HREF="terminal_interface-curses-forms__ads.htm#ref_319_22">Fld</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_295_13">Create</A>; -+<span class="comment"><EM>-- |</EM></span> -+<span class="comment"><EM>-- |</EM></span> -+<span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_131_14" HREF="terminal_interface-curses-forms__ads.htm#ref_317_14">Delete</A></span> (<span class="symbol"><A NAME="ref_131_22" HREF="terminal_interface-curses-forms__ads.htm#ref_317_22">Fld</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_133_16">Free_Field</A></FONT> (<FONT COLOR=red><A NAME="ref_133_28" HREF="terminal_interface-curses-forms__adb.htm#ref_133_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_133_16">Free_Field</A></span> (<span class="symbol"><A NAME="ref_133_28" HREF="terminal_interface-curses-forms__adb.htm#ref_133_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Free_Field, "free_field"); - -- <FONT COLOR=red><A NAME="ref_136_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_136_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_136_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_133_16">Free_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_319_22">Fld</A>); -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_136_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_133_16">Free_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_317_22">Fld</A>); - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_136_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_136_7">Res</A>); - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_319_22">Fld</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_319_14">Delete</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_147_13" HREF="terminal_interface-curses-forms__ads.htm#ref_325_13">Duplicate</A></FONT> (<FONT COLOR=red><A NAME="ref_147_24" HREF="terminal_interface-curses-forms__ads.htm#ref_325_24">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_148_24" HREF="terminal_interface-curses-forms__ads.htm#ref_326_24">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_149_24" HREF="terminal_interface-curses-forms__ads.htm#ref_327_24">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_151_16">Dup_Field</A></FONT> (<FONT COLOR=red><A NAME="ref_151_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_152_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Top</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_153_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Left</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_317_22">Fld</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_317_14">Delete</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_147_13" HREF="terminal_interface-curses-forms__ads.htm#ref_323_13">Duplicate</A></span> (<span class="symbol"><A NAME="ref_147_24" HREF="terminal_interface-curses-forms__ads.htm#ref_323_24">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_148_24" HREF="terminal_interface-curses-forms__ads.htm#ref_324_24">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_149_24" HREF="terminal_interface-curses-forms__ads.htm#ref_325_24">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_151_16">Dup_Field</A></span> (<span class="symbol"><A NAME="ref_151_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_152_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Top</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_153_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Left</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; - <b>pragma</b> Import (C, Dup_Field, "dup_field"); - -- <FONT COLOR=red><A NAME="ref_156_7">F</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Dup_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_325_24">Fld</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_326_24">Top</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_327_24">Left</A>)); -+ <span class="symbol"><A NAME="ref_156_7">F</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Dup_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_323_24">Fld</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_324_24">Top</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_325_24">Left</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_156_7">F</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_156_7">F</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_325_13">Duplicate</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_168_13" HREF="terminal_interface-curses-forms__ads.htm#ref_332_13">Link</A></FONT> (<FONT COLOR=red><A NAME="ref_168_19" HREF="terminal_interface-curses-forms__ads.htm#ref_332_19">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_169_19" HREF="terminal_interface-curses-forms__ads.htm#ref_333_19">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_170_19" HREF="terminal_interface-curses-forms__ads.htm#ref_334_19">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_172_16">Lnk_Field</A></FONT> (<FONT COLOR=red><A NAME="ref_172_27" HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_173_27" HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Top</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_174_27" HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Left</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_323_13">Duplicate</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_168_13" HREF="terminal_interface-curses-forms__ads.htm#ref_330_13">Link</A></span> (<span class="symbol"><A NAME="ref_168_19" HREF="terminal_interface-curses-forms__ads.htm#ref_330_19">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_169_19" HREF="terminal_interface-curses-forms__ads.htm#ref_331_19">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_170_19" HREF="terminal_interface-curses-forms__ads.htm#ref_332_19">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_172_16">Lnk_Field</A></span> (<span class="symbol"><A NAME="ref_172_27" HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_173_27" HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Top</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_174_27" HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Left</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; - <b>pragma</b> Import (C, Lnk_Field, "link_field"); - -- <FONT COLOR=red><A NAME="ref_177_7">F</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Lnk_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_332_19">Fld</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_333_19">Top</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_334_19">Left</A>)); -+ <span class="symbol"><A NAME="ref_177_7">F</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Lnk_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_330_19">Fld</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_331_19">Top</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_332_19">Left</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_177_7">F</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_177_7">F</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_332_13">Link</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_field_just.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_193_14" HREF="terminal_interface-curses-forms__ads.htm#ref_343_14">Set_Justification</A></FONT> (<FONT COLOR=red><A NAME="ref_193_33" HREF="terminal_interface-curses-forms__ads.htm#ref_343_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_194_33" HREF="terminal_interface-curses-forms__ads.htm#ref_344_33">Just</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_33">None</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_330_13">Link</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_field_just.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_193_14" HREF="terminal_interface-curses-forms__ads.htm#ref_341_14">Set_Justification</A></span> (<span class="symbol"><A NAME="ref_193_33" HREF="terminal_interface-curses-forms__ads.htm#ref_341_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_194_33" HREF="terminal_interface-curses-forms__ads.htm#ref_342_33">Just</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_33">None</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_196_16">Set_Field_Just</A></FONT> (<FONT COLOR=red><A NAME="ref_196_32" HREF="terminal_interface-curses-forms__adb.htm#ref_196_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_197_32" HREF="terminal_interface-curses-forms__adb.htm#ref_196_16">Just</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_196_16">Set_Field_Just</A></span> (<span class="symbol"><A NAME="ref_196_32" HREF="terminal_interface-curses-forms__adb.htm#ref_196_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_197_32" HREF="terminal_interface-curses-forms__adb.htm#ref_196_16">Just</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Field_Just, "set_field_just"); - -- <FONT COLOR=red><A NAME="ref_200_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_196_16">Set_Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_343_33">Fld</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A>'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_344_33">Just</A>))); -+ <span class="symbol"><A NAME="ref_200_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_196_16">Set_Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_341_33">Fld</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A>'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_342_33">Just</A>))); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_200_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_200_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_343_14">Set_Justification</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_211_13" HREF="terminal_interface-curses-forms__ads.htm#ref_349_13">Get_Justification</A></FONT> (<FONT COLOR=red><A NAME="ref_211_32" HREF="terminal_interface-curses-forms__ads.htm#ref_349_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A> -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_341_14">Set_Justification</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_211_13" HREF="terminal_interface-curses-forms__ads.htm#ref_347_13">Get_Justification</A></span> (<span class="symbol"><A NAME="ref_211_32" HREF="terminal_interface-curses-forms__ads.htm#ref_347_32">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_213_16">Field_Just</A></FONT> (<FONT COLOR=red><A NAME="ref_213_28" HREF="terminal_interface-curses-forms__adb.htm#ref_213_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_213_16">Field_Just</A></span> (<span class="symbol"><A NAME="ref_213_28" HREF="terminal_interface-curses-forms__adb.htm#ref_213_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Field_Just, "field_just"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A>'Val (<A HREF="terminal_interface-curses-forms__adb.htm#ref_213_16">Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_349_32">Fld</A>)); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_349_13">Get_Justification</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_field_buffer.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_225_14" HREF="terminal_interface-curses-forms__ads.htm#ref_358_14">Set_Buffer</A></FONT> -- (<FONT COLOR=red><A NAME="ref_226_7" HREF="terminal_interface-curses-forms__ads.htm#ref_359_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_227_7" HREF="terminal_interface-curses-forms__ads.htm#ref_360_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First; -- <FONT COLOR=red><A NAME="ref_228_7" HREF="terminal_interface-curses-forms__ads.htm#ref_361_7">Str</A></FONT> : String) -- <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_230_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char; -- <b>function</b> <FONT COLOR=red><A NAME="ref_231_16">Set_Fld_Buffer</A></FONT> (<FONT COLOR=red><A NAME="ref_231_32" HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_232_34" HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">Bufnum</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_233_34" HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">S</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_230_12">Char_Ptr</A>) -+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A>'Val (<A HREF="terminal_interface-curses-forms__adb.htm#ref_213_16">Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_347_32">Fld</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_347_13">Get_Justification</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_field_buffer.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_225_14" HREF="terminal_interface-curses-forms__ads.htm#ref_356_14">Set_Buffer</A></span> -+ (<span class="symbol"><A NAME="ref_226_7" HREF="terminal_interface-curses-forms__ads.htm#ref_357_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_227_7" HREF="terminal_interface-curses-forms__ads.htm#ref_358_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First; -+ <span class="symbol"><A NAME="ref_228_7" HREF="terminal_interface-curses-forms__ads.htm#ref_359_7">Str</A></span> : String) -+ <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_230_12">Char_Ptr</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char; -+ <b>function</b> <span class="symbol"><A NAME="ref_231_16">Set_Fld_Buffer</A></span> (<span class="symbol"><A NAME="ref_231_32" HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_232_34" HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">Bufnum</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_233_34" HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">S</A></span> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_230_12">Char_Ptr</A>) - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fld_Buffer, "set_field_buffer"); - -- <FONT COLOR=red><A NAME="ref_237_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-forms__ads.htm#ref_361_7">Str</A>'Length); -- <FONT COLOR=red><A NAME="ref_238_7">Len</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_239_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_237_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-forms__ads.htm#ref_359_7">Str</A>'Length); -+ <span class="symbol"><A NAME="ref_238_7">Len</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_239_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses-forms__ads.htm#ref_361_7">Str</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_237_7">Txt</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_238_7">Len</A>); -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_239_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">Set_Fld_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_359_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_360_7">Buffer</A>), <A HREF="terminal_interface-curses-forms__adb.htm#ref_237_7">Txt</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_237_7">Txt</A>'First)'<b>Access</b>); -+ To_C (<A HREF="terminal_interface-curses-forms__ads.htm#ref_359_7">Str</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_237_7">Txt</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_238_7">Len</A>); -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_239_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">Set_Fld_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_357_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_358_7">Buffer</A>), <A HREF="terminal_interface-curses-forms__adb.htm#ref_237_7">Txt</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_237_7">Txt</A>'First)'<b>Access</b>); - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_239_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_239_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_358_14">Set_Buffer</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_250_14" HREF="terminal_interface-curses-forms__ads.htm#ref_366_14">Get_Buffer</A></FONT> -- (<FONT COLOR=red><A NAME="ref_251_7" HREF="terminal_interface-curses-forms__ads.htm#ref_367_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_252_7" HREF="terminal_interface-curses-forms__ads.htm#ref_368_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First; -- <FONT COLOR=red><A NAME="ref_253_7" HREF="terminal_interface-curses-forms__ads.htm#ref_369_7">Str</A></FONT> : <b>out</b> String) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_356_14">Set_Buffer</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_250_14" HREF="terminal_interface-curses-forms__ads.htm#ref_364_14">Get_Buffer</A></span> -+ (<span class="symbol"><A NAME="ref_251_7" HREF="terminal_interface-curses-forms__ads.htm#ref_365_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_252_7" HREF="terminal_interface-curses-forms__ads.htm#ref_366_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First; -+ <span class="symbol"><A NAME="ref_253_7" HREF="terminal_interface-curses-forms__ads.htm#ref_367_7">Str</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_255_16">Field_Buffer</A></FONT> (<FONT COLOR=red><A NAME="ref_255_30" HREF="terminal_interface-curses-forms__adb.htm#ref_255_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_256_30" HREF="terminal_interface-curses-forms__adb.htm#ref_255_16">B</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_255_16">Field_Buffer</A></span> (<span class="symbol"><A NAME="ref_255_30" HREF="terminal_interface-curses-forms__adb.htm#ref_255_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_256_30" HREF="terminal_interface-curses-forms__adb.htm#ref_255_16">B</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Field_Buffer, "field_buffer"); - <b>begin</b> -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_255_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_367_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_368_7">Buffer</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#ref_369_7">Str</A>); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_366_14">Get_Buffer</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_255_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_365_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_366_7">Buffer</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#ref_367_7">Str</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_364_14">Get_Buffer</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_262_13" HREF="terminal_interface-curses-forms__ads.htm#ref_372_13">Get_Buffer</A></FONT> -- (<FONT COLOR=red><A NAME="ref_263_7" HREF="terminal_interface-curses-forms__ads.htm#ref_373_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_264_7" HREF="terminal_interface-curses-forms__ads.htm#ref_374_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_262_13" HREF="terminal_interface-curses-forms__ads.htm#ref_370_13">Get_Buffer</A></span> -+ (<span class="symbol"><A NAME="ref_263_7" HREF="terminal_interface-curses-forms__ads.htm#ref_371_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_264_7" HREF="terminal_interface-curses-forms__ads.htm#ref_372_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First) <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_266_16">Field_Buffer</A></FONT> (<FONT COLOR=red><A NAME="ref_266_30" HREF="terminal_interface-curses-forms__adb.htm#ref_266_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_267_30" HREF="terminal_interface-curses-forms__adb.htm#ref_266_16">B</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_266_16">Field_Buffer</A></span> (<span class="symbol"><A NAME="ref_266_30" HREF="terminal_interface-curses-forms__adb.htm#ref_266_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_267_30" HREF="terminal_interface-curses-forms__adb.htm#ref_266_16">B</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, Field_Buffer, "field_buffer"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_266_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_373_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_374_7">Buffer</A>))); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_372_13">Get_Buffer</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_275_14" HREF="terminal_interface-curses-forms__ads.htm#ref_380_14">Set_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_275_26" HREF="terminal_interface-curses-forms__ads.htm#ref_380_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_276_26" HREF="terminal_interface-curses-forms__ads.htm#ref_381_26">Status</A></FONT> : Boolean := True) -+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_266_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_371_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_372_7">Buffer</A>))); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_370_13">Get_Buffer</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_275_14" HREF="terminal_interface-curses-forms__ads.htm#ref_378_14">Set_Status</A></span> (<span class="symbol"><A NAME="ref_275_26" HREF="terminal_interface-curses-forms__ads.htm#ref_378_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_276_26" HREF="terminal_interface-curses-forms__ads.htm#ref_379_26">Status</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_278_16">Set_Fld_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_278_32" HREF="terminal_interface-curses-forms__adb.htm#ref_278_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_279_32" HREF="terminal_interface-curses-forms__adb.htm#ref_278_16">St</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_278_16">Set_Fld_Status</A></span> (<span class="symbol"><A NAME="ref_278_32" HREF="terminal_interface-curses-forms__adb.htm#ref_278_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_279_32" HREF="terminal_interface-curses-forms__adb.htm#ref_278_16">St</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fld_Status, "set_field_status"); - -- <FONT COLOR=red><A NAME="ref_282_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_278_16">Set_Fld_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_380_26">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_381_26">Status</A>)); -+ <span class="symbol"><A NAME="ref_282_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_278_16">Set_Fld_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_378_26">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_379_26">Status</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_282_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_380_14">Set_Status</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_291_13" HREF="terminal_interface-curses-forms__ads.htm#ref_386_13">Changed</A></FONT> (<FONT COLOR=red><A NAME="ref_291_22" HREF="terminal_interface-curses-forms__ads.htm#ref_386_22">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_378_14">Set_Status</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_291_13" HREF="terminal_interface-curses-forms__ads.htm#ref_384_13">Changed</A></span> (<span class="symbol"><A NAME="ref_291_22" HREF="terminal_interface-curses-forms__ads.htm#ref_384_22">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_293_16">Field_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_293_30" HREF="terminal_interface-curses-forms__adb.htm#ref_293_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_293_16">Field_Status</A></span> (<span class="symbol"><A NAME="ref_293_30" HREF="terminal_interface-curses-forms__adb.htm#ref_293_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Field_Status, "field_status"); - -- <FONT COLOR=red><A NAME="ref_296_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_293_16">Field_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_386_22">Fld</A>); -+ <span class="symbol"><A NAME="ref_296_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_293_16">Field_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_384_22">Fld</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_296_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_386_13">Changed</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_307_14" HREF="terminal_interface-curses-forms__ads.htm#ref_391_14">Set_Maximum_Size</A></FONT> (<FONT COLOR=red><A NAME="ref_307_32" HREF="terminal_interface-curses-forms__ads.htm#ref_391_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_308_32" HREF="terminal_interface-curses-forms__ads.htm#ref_392_32">Max</A></FONT> : Natural := 0) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_384_13">Changed</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_307_14" HREF="terminal_interface-curses-forms__ads.htm#ref_389_14">Set_Maximum_Size</A></span> (<span class="symbol"><A NAME="ref_307_32" HREF="terminal_interface-curses-forms__ads.htm#ref_389_32">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_308_32" HREF="terminal_interface-curses-forms__ads.htm#ref_390_32">Max</A></span> : Natural := 0) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_310_16">Set_Field_Max</A></FONT> (<FONT COLOR=red><A NAME="ref_310_31" HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_311_31" HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">M</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_310_16">Set_Field_Max</A></span> (<span class="symbol"><A NAME="ref_310_31" HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_311_31" HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">M</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Field_Max, "set_max_field"); - -- <FONT COLOR=red><A NAME="ref_314_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">Set_Field_Max</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_391_32">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_392_32">Max</A>)); -+ <span class="symbol"><A NAME="ref_314_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">Set_Field_Max</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_389_32">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_390_32">Max</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_314_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_314_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_391_14">Set_Maximum_Size</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_field_opts.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_327_14" HREF="terminal_interface-curses-forms__ads.htm#ref_401_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_327_27" HREF="terminal_interface-curses-forms__ads.htm#ref_401_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_328_27" HREF="terminal_interface-curses-forms__ads.htm#ref_402_27">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_389_14">Set_Maximum_Size</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_field_opts.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_327_14" HREF="terminal_interface-curses-forms__ads.htm#ref_399_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_327_27" HREF="terminal_interface-curses-forms__ads.htm#ref_399_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_328_27" HREF="terminal_interface-curses-forms__ads.htm#ref_400_27">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_330_16">Set_Field_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_330_32" HREF="terminal_interface-curses-forms__adb.htm#ref_330_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_331_32" HREF="terminal_interface-curses-forms__adb.htm#ref_330_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_330_16">Set_Field_Opts</A></span> (<span class="symbol"><A NAME="ref_330_32" HREF="terminal_interface-curses-forms__adb.htm#ref_330_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_331_32" HREF="terminal_interface-curses-forms__adb.htm#ref_330_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Field_Opts, "set_field_opts"); - -- <FONT COLOR=red><A NAME="ref_334_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_402_27">Options</A>); -- <FONT COLOR=red><A NAME="ref_335_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_334_7">Opt</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_400_27">Options</A>); -+ <span class="symbol"><A NAME="ref_335_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_335_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_330_16">Set_Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_401_27">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_334_7">Opt</A>); -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_335_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_330_16">Set_Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_399_27">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_334_7">Opt</A>); - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_335_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_335_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_401_14">Set_Options</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_345_14" HREF="terminal_interface-curses-forms__ads.htm#ref_407_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_345_30" HREF="terminal_interface-curses-forms__ads.htm#ref_407_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_346_30" HREF="terminal_interface-curses-forms__ads.htm#ref_408_30">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>; -- <FONT COLOR=red><A NAME="ref_347_30" HREF="terminal_interface-curses-forms__ads.htm#ref_409_30">On</A></FONT> : Boolean := True) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_399_14">Set_Options</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_345_14" HREF="terminal_interface-curses-forms__ads.htm#ref_405_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_345_30" HREF="terminal_interface-curses-forms__ads.htm#ref_405_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_346_30" HREF="terminal_interface-curses-forms__ads.htm#ref_406_30">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_347_30" HREF="terminal_interface-curses-forms__ads.htm#ref_407_30">On</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_349_16">Field_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="ref_349_31" HREF="terminal_interface-curses-forms__adb.htm#ref_349_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_350_31" HREF="terminal_interface-curses-forms__adb.htm#ref_349_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_349_16">Field_Opts_On</A></span> (<span class="symbol"><A NAME="ref_349_31" HREF="terminal_interface-curses-forms__adb.htm#ref_349_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_350_31" HREF="terminal_interface-curses-forms__adb.htm#ref_349_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Field_Opts_On, "field_opts_on"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_352_16">Field_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="ref_352_32" HREF="terminal_interface-curses-forms__adb.htm#ref_352_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_353_32" HREF="terminal_interface-curses-forms__adb.htm#ref_352_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_352_16">Field_Opts_Off</A></span> (<span class="symbol"><A NAME="ref_352_32" HREF="terminal_interface-curses-forms__adb.htm#ref_352_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_353_32" HREF="terminal_interface-curses-forms__adb.htm#ref_352_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Field_Opts_Off, "field_opts_off"); - -- <FONT COLOR=red><A NAME="ref_356_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -- <FONT COLOR=red><A NAME="ref_357_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_408_30">Options</A>); -+ <span class="symbol"><A NAME="ref_356_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_357_7">Opt</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_406_30">Options</A>); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_409_30">On</A> <b>then</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_356_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_349_16">Field_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_407_30">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_357_7">Opt</A>); -+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_407_30">On</A> <b>then</b> -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_356_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_349_16">Field_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_405_30">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_357_7">Opt</A>); - <b>else</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_356_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_352_16">Field_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_407_30">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_357_7">Opt</A>); -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_356_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_352_16">Field_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_405_30">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_357_7">Opt</A>); - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_356_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_356_7">Err</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_407_14">Switch_Options</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_371_14" HREF="terminal_interface-curses-forms__ads.htm#ref_415_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_371_27" HREF="terminal_interface-curses-forms__ads.htm#ref_415_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_372_27" HREF="terminal_interface-curses-forms__ads.htm#ref_416_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_405_14">Switch_Options</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_371_14" HREF="terminal_interface-curses-forms__ads.htm#ref_413_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_371_27" HREF="terminal_interface-curses-forms__ads.htm#ref_413_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_372_27" HREF="terminal_interface-curses-forms__ads.htm#ref_414_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_374_16">Field_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_374_28" HREF="terminal_interface-curses-forms__adb.htm#ref_374_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_374_16">Field_Opts</A></span> (<span class="symbol"><A NAME="ref_374_28" HREF="terminal_interface-curses-forms__adb.htm#ref_374_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Field_Opts, "field_opts"); - -- <FONT COLOR=red><A NAME="ref_377_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_374_16">Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_415_27">Fld</A>); -+ <span class="symbol"><A NAME="ref_377_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_374_16">Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_413_27">Fld</A>); - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_416_27">Options</A> := CInt_2_FOS (<A HREF="terminal_interface-curses-forms__adb.htm#ref_377_7">Res</A>); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_415_14">Get_Options</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_384_13" HREF="terminal_interface-curses-forms__ads.htm#ref_420_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_384_26" HREF="terminal_interface-curses-forms__ads.htm#ref_420_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>) -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_414_27">Options</A> := CInt_2_FOS (<A HREF="terminal_interface-curses-forms__adb.htm#ref_377_7">Res</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_413_14">Get_Options</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_384_13" HREF="terminal_interface-curses-forms__ads.htm#ref_418_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_384_26" HREF="terminal_interface-curses-forms__ads.htm#ref_418_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>) - <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_387_7">Fos</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_387_7">Fos</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_415_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_420_26">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_387_7">Fos</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_413_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_418_26">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_387_7">Fos</A>); - <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_387_7">Fos</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_420_13">Get_Options</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_field_attributes.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_399_14" HREF="terminal_interface-curses-forms__ads.htm#ref_430_14">Set_Foreground</A></FONT> -- (<FONT COLOR=red><A NAME="ref_400_7" HREF="terminal_interface-curses-forms__ads.htm#ref_431_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_401_7" HREF="terminal_interface-curses-forms__ads.htm#ref_432_7">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_402_7" HREF="terminal_interface-curses-forms__ads.htm#ref_433_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_418_13">Get_Options</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_field_attributes.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_399_14" HREF="terminal_interface-curses-forms__ads.htm#ref_428_14">Set_Foreground</A></span> -+ (<span class="symbol"><A NAME="ref_400_7" HREF="terminal_interface-curses-forms__ads.htm#ref_429_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_401_7" HREF="terminal_interface-curses-forms__ads.htm#ref_430_7">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_402_7" HREF="terminal_interface-curses-forms__ads.htm#ref_431_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_404_16">Set_Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_404_32" HREF="terminal_interface-curses-forms__adb.htm#ref_404_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_405_32" HREF="terminal_interface-curses-forms__adb.htm#ref_404_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_404_16">Set_Field_Fore</A></span> (<span class="symbol"><A NAME="ref_404_32" HREF="terminal_interface-curses-forms__adb.htm#ref_404_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_405_32" HREF="terminal_interface-curses-forms__adb.htm#ref_404_16">Attr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Field_Fore, "set_field_fore"); - -- <FONT COLOR=red><A NAME="ref_408_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_433_7">Color</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_432_7">Fore</A>); -- <FONT COLOR=red><A NAME="ref_411_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_404_16">Set_Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_431_7">Fld</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-forms__adb.htm#ref_408_7">Ch</A>)); -+ <span class="symbol"><A NAME="ref_408_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_431_7">Color</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_430_7">Fore</A>); -+ <span class="symbol"><A NAME="ref_411_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_404_16">Set_Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_429_7">Fld</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-forms__adb.htm#ref_408_7">Ch</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_411_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_411_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_430_14">Set_Foreground</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_421_14" HREF="terminal_interface-curses-forms__ads.htm#ref_438_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_421_26" HREF="terminal_interface-curses-forms__ads.htm#ref_438_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_422_26" HREF="terminal_interface-curses-forms__ads.htm#ref_439_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_428_14">Set_Foreground</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_421_14" HREF="terminal_interface-curses-forms__ads.htm#ref_436_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_421_26" HREF="terminal_interface-curses-forms__ads.htm#ref_436_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_422_26" HREF="terminal_interface-curses-forms__ads.htm#ref_437_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_424_16">Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_424_28" HREF="terminal_interface-curses-forms__adb.htm#ref_424_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_424_16">Field_Fore</A></span> (<span class="symbol"><A NAME="ref_424_28" HREF="terminal_interface-curses-forms__adb.htm#ref_424_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Field_Fore, "field_fore"); - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_439_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_424_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_438_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_438_14">Foreground</A>; -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_437_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_424_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_436_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_436_14">Foreground</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_430_14" HREF="terminal_interface-curses-forms__ads.htm#ref_443_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_430_26" HREF="terminal_interface-curses-forms__ads.htm#ref_443_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_431_26" HREF="terminal_interface-curses-forms__ads.htm#ref_444_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_432_26" HREF="terminal_interface-curses-forms__ads.htm#ref_445_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_430_14" HREF="terminal_interface-curses-forms__ads.htm#ref_441_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_430_26" HREF="terminal_interface-curses-forms__ads.htm#ref_441_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_431_26" HREF="terminal_interface-curses-forms__ads.htm#ref_442_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_432_26" HREF="terminal_interface-curses-forms__ads.htm#ref_443_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_434_16">Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_434_28" HREF="terminal_interface-curses-forms__adb.htm#ref_434_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_434_16">Field_Fore</A></span> (<span class="symbol"><A NAME="ref_434_28" HREF="terminal_interface-curses-forms__adb.htm#ref_434_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Field_Fore, "field_fore"); - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_444_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_434_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_443_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_445_26">Color</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_434_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_443_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_443_14">Foreground</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_443_14" HREF="terminal_interface-curses-forms__ads.htm#ref_450_14">Set_Background</A></FONT> -- (<FONT COLOR=red><A NAME="ref_444_7" HREF="terminal_interface-curses-forms__ads.htm#ref_451_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_445_7" HREF="terminal_interface-curses-forms__ads.htm#ref_452_7">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_446_7" HREF="terminal_interface-curses-forms__ads.htm#ref_453_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_442_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_434_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_441_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_443_26">Color</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_434_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_441_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_441_14">Foreground</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_443_14" HREF="terminal_interface-curses-forms__ads.htm#ref_448_14">Set_Background</A></span> -+ (<span class="symbol"><A NAME="ref_444_7" HREF="terminal_interface-curses-forms__ads.htm#ref_449_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_445_7" HREF="terminal_interface-curses-forms__ads.htm#ref_450_7">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_446_7" HREF="terminal_interface-curses-forms__ads.htm#ref_451_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_448_16">Set_Field_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_448_32" HREF="terminal_interface-curses-forms__adb.htm#ref_448_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_449_32" HREF="terminal_interface-curses-forms__adb.htm#ref_448_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_448_16">Set_Field_Back</A></span> (<span class="symbol"><A NAME="ref_448_32" HREF="terminal_interface-curses-forms__adb.htm#ref_448_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_449_32" HREF="terminal_interface-curses-forms__adb.htm#ref_448_16">Attr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Field_Back, "set_field_back"); - -- <FONT COLOR=red><A NAME="ref_452_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_453_7">Color</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_452_7">Back</A>); -- <FONT COLOR=red><A NAME="ref_455_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_448_16">Set_Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_451_7">Fld</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-forms__adb.htm#ref_452_7">Ch</A>)); -+ <span class="symbol"><A NAME="ref_452_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_451_7">Color</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_450_7">Back</A>); -+ <span class="symbol"><A NAME="ref_455_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_448_16">Set_Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_449_7">Fld</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-forms__adb.htm#ref_452_7">Ch</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_455_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_455_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_450_14">Set_Background</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_465_14" HREF="terminal_interface-curses-forms__ads.htm#ref_458_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_465_26" HREF="terminal_interface-curses-forms__ads.htm#ref_458_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_466_26" HREF="terminal_interface-curses-forms__ads.htm#ref_459_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_448_14">Set_Background</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_465_14" HREF="terminal_interface-curses-forms__ads.htm#ref_456_14">Background</A></span> (<span class="symbol"><A NAME="ref_465_26" HREF="terminal_interface-curses-forms__ads.htm#ref_456_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_466_26" HREF="terminal_interface-curses-forms__ads.htm#ref_457_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_468_16">Field_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_468_28" HREF="terminal_interface-curses-forms__adb.htm#ref_468_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_468_16">Field_Back</A></span> (<span class="symbol"><A NAME="ref_468_28" HREF="terminal_interface-curses-forms__adb.htm#ref_468_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Field_Back, "field_back"); - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_459_26">Back</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_468_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_458_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_458_14">Background</A>; -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_457_26">Back</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_468_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_456_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_456_14">Background</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_474_14" HREF="terminal_interface-curses-forms__ads.htm#ref_463_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_474_26" HREF="terminal_interface-curses-forms__ads.htm#ref_463_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_475_26" HREF="terminal_interface-curses-forms__ads.htm#ref_464_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_476_26" HREF="terminal_interface-curses-forms__ads.htm#ref_465_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_474_14" HREF="terminal_interface-curses-forms__ads.htm#ref_461_14">Background</A></span> (<span class="symbol"><A NAME="ref_474_26" HREF="terminal_interface-curses-forms__ads.htm#ref_461_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_475_26" HREF="terminal_interface-curses-forms__ads.htm#ref_462_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_476_26" HREF="terminal_interface-curses-forms__ads.htm#ref_463_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_478_16">Field_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_478_28" HREF="terminal_interface-curses-forms__adb.htm#ref_478_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_478_16">Field_Back</A></span> (<span class="symbol"><A NAME="ref_478_28" HREF="terminal_interface-curses-forms__adb.htm#ref_478_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Field_Back, "field_back"); - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_464_26">Back</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_478_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_463_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_465_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_478_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_463_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_463_14">Background</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_487_14" HREF="terminal_interface-curses-forms__ads.htm#ref_470_14">Set_Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_487_33" HREF="terminal_interface-curses-forms__ads.htm#ref_470_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_488_33" HREF="terminal_interface-curses-forms__ads.htm#ref_471_33">Pad</A></FONT> : Character := Space) -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_462_26">Back</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_478_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_461_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_463_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_478_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_461_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_461_14">Background</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_487_14" HREF="terminal_interface-curses-forms__ads.htm#ref_468_14">Set_Pad_Character</A></span> (<span class="symbol"><A NAME="ref_487_33" HREF="terminal_interface-curses-forms__ads.htm#ref_468_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_488_33" HREF="terminal_interface-curses-forms__ads.htm#ref_469_33">Pad</A></span> : Character := Space) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_490_16">Set_Field_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_490_31" HREF="terminal_interface-curses-forms__adb.htm#ref_490_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_491_31" HREF="terminal_interface-curses-forms__adb.htm#ref_490_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_490_16">Set_Field_Pad</A></span> (<span class="symbol"><A NAME="ref_490_31" HREF="terminal_interface-curses-forms__adb.htm#ref_490_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_491_31" HREF="terminal_interface-curses-forms__adb.htm#ref_490_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Field_Pad, "set_field_pad"); - -- <FONT COLOR=red><A NAME="ref_494_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_490_16">Set_Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_470_33">Fld</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_471_33">Pad</A>))); -+ <span class="symbol"><A NAME="ref_494_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_490_16">Set_Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_468_33">Fld</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_469_33">Pad</A>))); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_494_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_494_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_470_14">Set_Pad_Character</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_504_14" HREF="terminal_interface-curses-forms__ads.htm#ref_476_14">Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_504_29" HREF="terminal_interface-curses-forms__ads.htm#ref_476_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_505_29" HREF="terminal_interface-curses-forms__ads.htm#ref_477_29">Pad</A></FONT> : <b>out</b> Character) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_468_14">Set_Pad_Character</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_504_14" HREF="terminal_interface-curses-forms__ads.htm#ref_474_14">Pad_Character</A></span> (<span class="symbol"><A NAME="ref_504_29" HREF="terminal_interface-curses-forms__ads.htm#ref_474_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_505_29" HREF="terminal_interface-curses-forms__ads.htm#ref_475_29">Pad</A></span> : <b>out</b> Character) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_507_16">Field_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_507_27" HREF="terminal_interface-curses-forms__adb.htm#ref_507_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_507_16">Field_Pad</A></span> (<span class="symbol"><A NAME="ref_507_27" HREF="terminal_interface-curses-forms__adb.htm#ref_507_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Field_Pad, "field_pad"); - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_477_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-forms__adb.htm#ref_507_16">Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_476_29">Fld</A>)); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_476_14">Pad_Character</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_field_info.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_519_14" HREF="terminal_interface-curses-forms__ads.htm#ref_486_14">Info</A></FONT> (<FONT COLOR=red><A NAME="ref_519_20" HREF="terminal_interface-curses-forms__ads.htm#ref_486_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_520_20" HREF="terminal_interface-curses-forms__ads.htm#ref_487_20">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_521_20" HREF="terminal_interface-curses-forms__ads.htm#ref_488_20">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_522_20" HREF="terminal_interface-curses-forms__ads.htm#ref_489_20">First_Row</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_523_20" HREF="terminal_interface-curses-forms__ads.htm#ref_490_20">First_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_524_20" HREF="terminal_interface-curses-forms__ads.htm#ref_491_20">Off_Screen</A></FONT> : <b>out</b> Natural; -- <FONT COLOR=red><A NAME="ref_525_20" HREF="terminal_interface-curses-forms__ads.htm#ref_492_20">Additional_Buffers</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>) -- <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_527_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_528_16">Fld_Info</A></FONT> (<FONT COLOR=red><A NAME="ref_528_26" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_529_26" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">L</A></FONT>, <FONT COLOR=red><A NAME="ref_529_29" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">C</A></FONT>, <FONT COLOR=red><A NAME="ref_529_32" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fr</A></FONT>, <FONT COLOR=red><A NAME="ref_529_36" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fc</A></FONT>, <FONT COLOR=red><A NAME="ref_529_40" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Os</A></FONT>, <FONT COLOR=red><A NAME="ref_529_44" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Ab</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_527_12">C_Int_Access</A>) -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_475_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-forms__adb.htm#ref_507_16">Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_474_29">Fld</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_474_14">Pad_Character</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_field_info.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_519_14" HREF="terminal_interface-curses-forms__ads.htm#ref_484_14">Info</A></span> (<span class="symbol"><A NAME="ref_519_20" HREF="terminal_interface-curses-forms__ads.htm#ref_484_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_520_20" HREF="terminal_interface-curses-forms__ads.htm#ref_485_20">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_521_20" HREF="terminal_interface-curses-forms__ads.htm#ref_486_20">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_522_20" HREF="terminal_interface-curses-forms__ads.htm#ref_487_20">First_Row</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_523_20" HREF="terminal_interface-curses-forms__ads.htm#ref_488_20">First_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_524_20" HREF="terminal_interface-curses-forms__ads.htm#ref_489_20">Off_Screen</A></span> : <b>out</b> Natural; -+ <span class="symbol"><A NAME="ref_525_20" HREF="terminal_interface-curses-forms__ads.htm#ref_490_20">Additional_Buffers</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>) -+ <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_527_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_528_16">Fld_Info</A></span> (<span class="symbol"><A NAME="ref_528_26" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_529_26" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">L</A></span>, <span class="symbol"><A NAME="ref_529_29" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">C</A></span>, <span class="symbol"><A NAME="ref_529_32" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fr</A></span>, <span class="symbol"><A NAME="ref_529_36" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fc</A></span>, <span class="symbol"><A NAME="ref_529_40" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Os</A></span>, <span class="symbol"><A NAME="ref_529_44" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Ab</A></span> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_527_12">C_Int_Access</A>) - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Fld_Info, "field_info"); - -- <FONT COLOR=red><A NAME="ref_533_7">L</A></FONT>, <FONT COLOR=red><A NAME="ref_533_10">C</A></FONT>, <FONT COLOR=red><A NAME="ref_533_13">Fr</A></FONT>, <FONT COLOR=red><A NAME="ref_533_17">Fc</A></FONT>, <FONT COLOR=red><A NAME="ref_533_21">Os</A></FONT>, <FONT COLOR=red><A NAME="ref_533_25">Ab</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_534_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fld_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_486_20">Fld</A>, -+ <span class="symbol"><A NAME="ref_533_7">L</A></span>, <span class="symbol"><A NAME="ref_533_10">C</A></span>, <span class="symbol"><A NAME="ref_533_13">Fr</A></span>, <span class="symbol"><A NAME="ref_533_17">Fc</A></span>, <span class="symbol"><A NAME="ref_533_21">Os</A></span>, <span class="symbol"><A NAME="ref_533_25">Ab</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_534_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fld_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_484_20">Fld</A>, - <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_10">C</A>'<b>Access</b>, - <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_13">Fr</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_17">Fc</A>'<b>Access</b>, - <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_21">Os</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_25">Ab</A>'<b>Access</b>); -@@ -544,624 +556,624 @@ - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_534_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_534_7">Res</A>); - <b>else</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_487_20">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_7">L</A>); -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_488_20">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_10">C</A>); -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_489_20">First_Row</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_13">Fr</A>); -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_490_20">First_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_17">Fc</A>); -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_491_20">Off_Screen</A> := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_21">Os</A>); -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_492_20">Additional_Buffers</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_25">Ab</A>); -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_486_14">Info</A>; --<FONT COLOR=green><EM>-- |</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_553_14" HREF="terminal_interface-curses-forms__ads.htm#ref_497_14">Dynamic_Info</A></FONT> (<FONT COLOR=red><A NAME="ref_553_28" HREF="terminal_interface-curses-forms__ads.htm#ref_497_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_554_28" HREF="terminal_interface-curses-forms__ads.htm#ref_498_28">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_555_28" HREF="terminal_interface-curses-forms__ads.htm#ref_499_28">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_556_28" HREF="terminal_interface-curses-forms__ads.htm#ref_500_28">Max</A></FONT> : <b>out</b> Natural) -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_485_20">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_7">L</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_486_20">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_10">C</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_487_20">First_Row</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_13">Fr</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_488_20">First_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_17">Fc</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_489_20">Off_Screen</A> := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_21">Os</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_490_20">Additional_Buffers</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_25">Ab</A>); -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_484_14">Info</A>; -+<span class="comment"><EM>-- |</EM></span> -+<span class="comment"><EM>-- |</EM></span> -+<span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_553_14" HREF="terminal_interface-curses-forms__ads.htm#ref_495_14">Dynamic_Info</A></span> (<span class="symbol"><A NAME="ref_553_28" HREF="terminal_interface-curses-forms__ads.htm#ref_495_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_554_28" HREF="terminal_interface-curses-forms__ads.htm#ref_496_28">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_555_28" HREF="terminal_interface-curses-forms__ads.htm#ref_497_28">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_556_28" HREF="terminal_interface-curses-forms__ads.htm#ref_498_28">Max</A></span> : <b>out</b> Natural) - <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_558_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_559_16">Dyn_Info</A></FONT> (<FONT COLOR=red><A NAME="ref_559_26" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <FONT COLOR=red><A NAME="ref_559_39" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">L</A></FONT>, <FONT COLOR=red><A NAME="ref_559_42" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">C</A></FONT>, <FONT COLOR=red><A NAME="ref_559_45" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">M</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_558_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_558_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_559_16">Dyn_Info</A></span> (<span class="symbol"><A NAME="ref_559_26" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <span class="symbol"><A NAME="ref_559_39" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">L</A></span>, <span class="symbol"><A NAME="ref_559_42" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">C</A></span>, <span class="symbol"><A NAME="ref_559_45" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">M</A></span> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_558_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Dyn_Info, "dynamic_field_info"); - -- <FONT COLOR=red><A NAME="ref_562_7">L</A></FONT>, <FONT COLOR=red><A NAME="ref_562_10">C</A></FONT>, <FONT COLOR=red><A NAME="ref_562_13">M</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_563_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">Dyn_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_497_28">Fld</A>, -+ <span class="symbol"><A NAME="ref_562_7">L</A></span>, <span class="symbol"><A NAME="ref_562_10">C</A></span>, <span class="symbol"><A NAME="ref_562_13">M</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_563_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">Dyn_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_495_28">Fld</A>, - <A HREF="terminal_interface-curses-forms__adb.htm#ref_562_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_562_10">C</A>'<b>Access</b>, - <A HREF="terminal_interface-curses-forms__adb.htm#ref_562_13">M</A>'<b>Access</b>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_563_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_563_7">Res</A>); - <b>else</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_498_28">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_562_7">L</A>); -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_499_28">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_562_10">C</A>); -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_500_28">Max</A> := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_562_13">M</A>); -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_497_14">Dynamic_Info</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_win.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_582_14" HREF="terminal_interface-curses-forms__ads.htm#ref_509_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_582_26" HREF="terminal_interface-curses-forms__ads.htm#ref_509_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_583_26" HREF="terminal_interface-curses-forms__ads.htm#ref_510_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_496_28">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_562_7">L</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_497_28">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_562_10">C</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_498_28">Max</A> := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_562_13">M</A>); -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_495_14">Dynamic_Info</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_win.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_582_14" HREF="terminal_interface-curses-forms__ads.htm#ref_507_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_582_26" HREF="terminal_interface-curses-forms__ads.htm#ref_507_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_583_26" HREF="terminal_interface-curses-forms__ads.htm#ref_508_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_585_16">Set_Form_Win</A></FONT> (<FONT COLOR=red><A NAME="ref_585_30" HREF="terminal_interface-curses-forms__adb.htm#ref_585_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_586_30" HREF="terminal_interface-curses-forms__adb.htm#ref_585_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_585_16">Set_Form_Win</A></span> (<span class="symbol"><A NAME="ref_585_30" HREF="terminal_interface-curses-forms__adb.htm#ref_585_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_586_30" HREF="terminal_interface-curses-forms__adb.htm#ref_585_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Form_Win, "set_form_win"); - -- <FONT COLOR=red><A NAME="ref_589_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_585_16">Set_Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_509_26">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_510_26">Win</A>); -+ <span class="symbol"><A NAME="ref_589_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_585_16">Set_Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_507_26">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_508_26">Win</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_589_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_589_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_509_14">Set_Window</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_598_13" HREF="terminal_interface-curses-forms__ads.htm#ref_515_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_598_25" HREF="terminal_interface-curses-forms__ads.htm#ref_515_25">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_507_14">Set_Window</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_598_13" HREF="terminal_interface-curses-forms__ads.htm#ref_513_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_598_25" HREF="terminal_interface-curses-forms__ads.htm#ref_513_25">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_600_16">Form_Win</A></FONT> (<FONT COLOR=red><A NAME="ref_600_26" HREF="terminal_interface-curses-forms__adb.htm#ref_600_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_600_16">Form_Win</A></span> (<span class="symbol"><A NAME="ref_600_26" HREF="terminal_interface-curses-forms__adb.htm#ref_600_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Form_Win, "form_win"); - -- <FONT COLOR=red><A NAME="ref_603_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_600_16">Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_515_25">Frm</A>); -+ <span class="symbol"><A NAME="ref_603_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_600_16">Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_513_25">Frm</A>); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_603_7">W</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_515_13">Get_Window</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_610_14" HREF="terminal_interface-curses-forms__ads.htm#ref_520_14">Set_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_610_30" HREF="terminal_interface-curses-forms__ads.htm#ref_520_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_611_30" HREF="terminal_interface-curses-forms__ads.htm#ref_521_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_513_13">Get_Window</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_610_14" HREF="terminal_interface-curses-forms__ads.htm#ref_518_14">Set_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_610_30" HREF="terminal_interface-curses-forms__ads.htm#ref_518_30">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_611_30" HREF="terminal_interface-curses-forms__ads.htm#ref_519_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_613_16">Set_Form_Sub</A></FONT> (<FONT COLOR=red><A NAME="ref_613_30" HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_614_30" HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_613_16">Set_Form_Sub</A></span> (<span class="symbol"><A NAME="ref_613_30" HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_614_30" HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Form_Sub, "set_form_sub"); - -- <FONT COLOR=red><A NAME="ref_617_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Set_Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_520_30">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_521_30">Win</A>); -+ <span class="symbol"><A NAME="ref_617_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Set_Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_518_30">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_519_30">Win</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_617_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_617_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_520_14">Set_Sub_Window</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_626_13" HREF="terminal_interface-curses-forms__ads.htm#ref_526_13">Get_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_626_29" HREF="terminal_interface-curses-forms__ads.htm#ref_526_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_518_14">Set_Sub_Window</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_626_13" HREF="terminal_interface-curses-forms__ads.htm#ref_524_13">Get_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_626_29" HREF="terminal_interface-curses-forms__ads.htm#ref_524_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_628_16">Form_Sub</A></FONT> (<FONT COLOR=red><A NAME="ref_628_26" HREF="terminal_interface-curses-forms__adb.htm#ref_628_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_628_16">Form_Sub</A></span> (<span class="symbol"><A NAME="ref_628_26" HREF="terminal_interface-curses-forms__adb.htm#ref_628_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Form_Sub, "form_sub"); - -- <FONT COLOR=red><A NAME="ref_631_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_628_16">Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_526_29">Frm</A>); -+ <span class="symbol"><A NAME="ref_631_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_628_16">Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_524_29">Frm</A>); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_631_7">W</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_526_13">Get_Sub_Window</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_638_14" HREF="terminal_interface-curses-forms__ads.htm#ref_531_14">Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_638_21" HREF="terminal_interface-curses-forms__ads.htm#ref_531_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_639_21" HREF="terminal_interface-curses-forms__ads.htm#ref_532_21">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_640_21" HREF="terminal_interface-curses-forms__ads.htm#ref_533_21">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_524_13">Get_Sub_Window</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_638_14" HREF="terminal_interface-curses-forms__ads.htm#ref_529_14">Scale</A></span> (<span class="symbol"><A NAME="ref_638_21" HREF="terminal_interface-curses-forms__ads.htm#ref_529_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_639_21" HREF="terminal_interface-curses-forms__ads.htm#ref_530_21">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_640_21" HREF="terminal_interface-curses-forms__ads.htm#ref_531_21">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) - <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_642_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_643_16">M_Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_643_25" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <FONT COLOR=red><A NAME="ref_643_37" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Yp</A></FONT>, <FONT COLOR=red><A NAME="ref_643_41" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Xp</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_642_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_642_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_643_16">M_Scale</A></span> (<span class="symbol"><A NAME="ref_643_25" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <span class="symbol"><A NAME="ref_643_37" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Yp</A></span>, <span class="symbol"><A NAME="ref_643_41" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Xp</A></span> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_642_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, M_Scale, "scale_form"); - -- <FONT COLOR=red><A NAME="ref_646_7">X</A></FONT>, <FONT COLOR=red><A NAME="ref_646_10">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_647_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">M_Scale</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_531_21">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_646_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_646_7">X</A>'<b>Access</b>); -+ <span class="symbol"><A NAME="ref_646_7">X</A></span>, <span class="symbol"><A NAME="ref_646_10">Y</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_647_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">M_Scale</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_529_21">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_646_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_646_7">X</A>'<b>Access</b>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_647_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_647_7">Res</A>); - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_532_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_646_10">Y</A>); -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_533_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_646_7">X</A>); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_531_14">Scale</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page menu_hook.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_662_14" HREF="terminal_interface-curses-forms__ads.htm#ref_545_14">Set_Field_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_662_35" HREF="terminal_interface-curses-forms__ads.htm#ref_545_35">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_663_35" HREF="terminal_interface-curses-forms__ads.htm#ref_546_35">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_530_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_646_10">Y</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_531_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_646_7">X</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_529_14">Scale</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page menu_hook.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_662_14" HREF="terminal_interface-curses-forms__ads.htm#ref_543_14">Set_Field_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_662_35" HREF="terminal_interface-curses-forms__ads.htm#ref_543_35">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_663_35" HREF="terminal_interface-curses-forms__ads.htm#ref_544_35">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_665_16">Set_Field_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_665_32" HREF="terminal_interface-curses-forms__adb.htm#ref_665_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_666_32" HREF="terminal_interface-curses-forms__adb.htm#ref_665_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_665_16">Set_Field_Init</A></span> (<span class="symbol"><A NAME="ref_665_32" HREF="terminal_interface-curses-forms__adb.htm#ref_665_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_666_32" HREF="terminal_interface-curses-forms__adb.htm#ref_665_16">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Field_Init, "set_field_init"); - -- <FONT COLOR=red><A NAME="ref_669_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_665_16">Set_Field_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_545_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_546_35">Proc</A>); -+ <span class="symbol"><A NAME="ref_669_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_665_16">Set_Field_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_543_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_544_35">Proc</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_669_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_669_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_545_14">Set_Field_Init_Hook</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_678_14" HREF="terminal_interface-curses-forms__ads.htm#ref_551_14">Set_Field_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_678_35" HREF="terminal_interface-curses-forms__ads.htm#ref_551_35">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_679_35" HREF="terminal_interface-curses-forms__ads.htm#ref_552_35">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_543_14">Set_Field_Init_Hook</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_678_14" HREF="terminal_interface-curses-forms__ads.htm#ref_549_14">Set_Field_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_678_35" HREF="terminal_interface-curses-forms__ads.htm#ref_549_35">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_679_35" HREF="terminal_interface-curses-forms__ads.htm#ref_550_35">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_681_16">Set_Field_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_681_32" HREF="terminal_interface-curses-forms__adb.htm#ref_681_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_682_32" HREF="terminal_interface-curses-forms__adb.htm#ref_681_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_681_16">Set_Field_Term</A></span> (<span class="symbol"><A NAME="ref_681_32" HREF="terminal_interface-curses-forms__adb.htm#ref_681_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_682_32" HREF="terminal_interface-curses-forms__adb.htm#ref_681_16">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Field_Term, "set_field_term"); - -- <FONT COLOR=red><A NAME="ref_685_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_681_16">Set_Field_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_551_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_552_35">Proc</A>); -+ <span class="symbol"><A NAME="ref_685_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_681_16">Set_Field_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_549_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_550_35">Proc</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_685_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_685_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_551_14">Set_Field_Term_Hook</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_694_14" HREF="terminal_interface-curses-forms__ads.htm#ref_557_14">Set_Form_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_694_34" HREF="terminal_interface-curses-forms__ads.htm#ref_557_34">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_695_34" HREF="terminal_interface-curses-forms__ads.htm#ref_558_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_549_14">Set_Field_Term_Hook</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_694_14" HREF="terminal_interface-curses-forms__ads.htm#ref_555_14">Set_Form_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_694_34" HREF="terminal_interface-curses-forms__ads.htm#ref_555_34">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_695_34" HREF="terminal_interface-curses-forms__ads.htm#ref_556_34">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_697_16">Set_Form_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_697_31" HREF="terminal_interface-curses-forms__adb.htm#ref_697_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_698_31" HREF="terminal_interface-curses-forms__adb.htm#ref_697_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_697_16">Set_Form_Init</A></span> (<span class="symbol"><A NAME="ref_697_31" HREF="terminal_interface-curses-forms__adb.htm#ref_697_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_698_31" HREF="terminal_interface-curses-forms__adb.htm#ref_697_16">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Form_Init, "set_form_init"); - -- <FONT COLOR=red><A NAME="ref_701_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_697_16">Set_Form_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_557_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_558_34">Proc</A>); -+ <span class="symbol"><A NAME="ref_701_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_697_16">Set_Form_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_555_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_556_34">Proc</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_701_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_701_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_557_14">Set_Form_Init_Hook</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_710_14" HREF="terminal_interface-curses-forms__ads.htm#ref_563_14">Set_Form_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_710_34" HREF="terminal_interface-curses-forms__ads.htm#ref_563_34">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_711_34" HREF="terminal_interface-curses-forms__ads.htm#ref_564_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_555_14">Set_Form_Init_Hook</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_710_14" HREF="terminal_interface-curses-forms__ads.htm#ref_561_14">Set_Form_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_710_34" HREF="terminal_interface-curses-forms__ads.htm#ref_561_34">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_711_34" HREF="terminal_interface-curses-forms__ads.htm#ref_562_34">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_713_16">Set_Form_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_713_31" HREF="terminal_interface-curses-forms__adb.htm#ref_713_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_714_31" HREF="terminal_interface-curses-forms__adb.htm#ref_713_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_713_16">Set_Form_Term</A></span> (<span class="symbol"><A NAME="ref_713_31" HREF="terminal_interface-curses-forms__adb.htm#ref_713_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_714_31" HREF="terminal_interface-curses-forms__adb.htm#ref_713_16">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Form_Term, "set_form_term"); - -- <FONT COLOR=red><A NAME="ref_717_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_713_16">Set_Form_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_563_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_564_34">Proc</A>); -+ <span class="symbol"><A NAME="ref_717_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_713_16">Set_Form_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_561_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_562_34">Proc</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_717_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_717_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_563_14">Set_Form_Term_Hook</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_fields.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_730_14" HREF="terminal_interface-curses-forms__ads.htm#ref_593_14">Redefine</A></FONT> (<FONT COLOR=red><A NAME="ref_730_24" HREF="terminal_interface-curses-forms__ads.htm#ref_593_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_731_24" HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_561_14">Set_Form_Term_Hook</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_fields.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_730_14" HREF="terminal_interface-curses-forms__ads.htm#ref_591_14">Redefine</A></span> (<span class="symbol"><A NAME="ref_730_24" HREF="terminal_interface-curses-forms__ads.htm#ref_591_24">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_731_24" HREF="terminal_interface-curses-forms__ads.htm#ref_592_24">Flds</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_136_9">Field_Array_Access</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_733_16">Set_Frm_Fields</A></FONT> (<FONT COLOR=red><A NAME="ref_733_32" HREF="terminal_interface-curses-forms__adb.htm#ref_733_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_734_32" HREF="terminal_interface-curses-forms__adb.htm#ref_733_16">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_733_16">Set_Frm_Fields</A></span> (<span class="symbol"><A NAME="ref_733_32" HREF="terminal_interface-curses-forms__adb.htm#ref_733_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_734_32" HREF="terminal_interface-curses-forms__adb.htm#ref_733_16">Items</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Frm_Fields, "set_form_fields"); - -- <FONT COLOR=red><A NAME="ref_737_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_737_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>); -- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#ref_592_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_592_24">Flds</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>); -+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_592_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_592_24">Flds</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>else</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_737_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_733_16">Set_Frm_Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_593_24">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>'First)'Address); -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_737_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_733_16">Set_Frm_Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_591_24">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_592_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_592_24">Flds</A>'First)'Address); - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_737_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_737_7">Res</A>); - <b>end</b> <b>if</b>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_593_14">Redefine</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_752_13" HREF="terminal_interface-curses-forms__ads.htm#ref_605_13">Fields</A></FONT> (<FONT COLOR=red><A NAME="ref_752_21" HREF="terminal_interface-curses-forms__ads.htm#ref_605_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_753_21" HREF="terminal_interface-curses-forms__ads.htm#ref_606_21">Index</A></FONT> : Positive) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_591_14">Redefine</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_752_13" HREF="terminal_interface-curses-forms__ads.htm#ref_603_13">Fields</A></span> (<span class="symbol"><A NAME="ref_752_21" HREF="terminal_interface-curses-forms__ads.htm#ref_603_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_753_21" HREF="terminal_interface-curses-forms__ads.htm#ref_604_21">Index</A></span> : Positive) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> - <b>is</b> - <b>use</b> F_Array; - -- <b>function</b> C_Fields (<FONT COLOR=red><A NAME="ref_757_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Pointer; -+ <b>function</b> C_Fields (<span class="symbol"><A NAME="ref_757_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Pointer; - <b>pragma</b> Import (C, C_Fields, "form_fields"); - -- P : Pointer := C_Fields (<A HREF="terminal_interface-curses-forms__ads.htm#ref_605_21">Frm</A>); -+ P : Pointer := C_Fields (<A HREF="terminal_interface-curses-forms__ads.htm#ref_603_21">Frm</A>); - <b>begin</b> -- <b>if</b> P = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_606_21">Index</A> &gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_611_13">Field_Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_605_21">Frm</A>) <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>if</b> P = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_604_21">Index</A> &gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_609_13">Field_Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_603_21">Frm</A>) <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>else</b> -- P := P + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_606_21">Index</A>) - 1); -+ P := P + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_604_21">Index</A>) - 1); - <b>return</b> P.<b>all</b>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_605_13">Fields</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_772_13" HREF="terminal_interface-curses-forms__ads.htm#ref_611_13">Field_Count</A></FONT> (<FONT COLOR=red><A NAME="ref_772_26" HREF="terminal_interface-curses-forms__ads.htm#ref_611_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Natural -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_603_13">Fields</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_772_13" HREF="terminal_interface-curses-forms__ads.htm#ref_609_13">Field_Count</A></span> (<span class="symbol"><A NAME="ref_772_26" HREF="terminal_interface-curses-forms__ads.htm#ref_609_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Natural - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_774_16">Count</A></FONT> (<FONT COLOR=red><A NAME="ref_774_23" HREF="terminal_interface-curses-forms__adb.htm#ref_774_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_774_16">Count</A></span> (<span class="symbol"><A NAME="ref_774_23" HREF="terminal_interface-curses-forms__adb.htm#ref_774_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Count, "field_count"); - <b>begin</b> -- <b>return</b> Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_774_16">Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_611_26">Frm</A>)); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_611_13">Field_Count</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_782_14" HREF="terminal_interface-curses-forms__ads.htm#ref_616_14">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_782_20" HREF="terminal_interface-curses-forms__ads.htm#ref_616_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_783_20" HREF="terminal_interface-curses-forms__ads.htm#ref_617_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_784_20" HREF="terminal_interface-curses-forms__ads.htm#ref_618_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <b>return</b> Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_774_16">Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_609_26">Frm</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_609_13">Field_Count</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_782_14" HREF="terminal_interface-curses-forms__ads.htm#ref_614_14">Move</A></span> (<span class="symbol"><A NAME="ref_782_20" HREF="terminal_interface-curses-forms__ads.htm#ref_614_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_783_20" HREF="terminal_interface-curses-forms__ads.htm#ref_615_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_784_20" HREF="terminal_interface-curses-forms__ads.htm#ref_616_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_786_16">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_786_22" HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <FONT COLOR=red><A NAME="ref_786_35" HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">L</A></FONT>, <FONT COLOR=red><A NAME="ref_786_38" HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">C</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_786_16">Move</A></span> (<span class="symbol"><A NAME="ref_786_22" HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <span class="symbol"><A NAME="ref_786_35" HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">L</A></span>, <span class="symbol"><A NAME="ref_786_38" HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">C</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Move, "move_field"); - -- <FONT COLOR=red><A NAME="ref_789_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">Move</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_616_20">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_617_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_618_20">Column</A>)); -+ <span class="symbol"><A NAME="ref_789_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">Move</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_614_20">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_615_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_616_20">Column</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_789_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_789_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_616_14">Move</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_new.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_802_13" HREF="terminal_interface-curses-forms__ads.htm#ref_627_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_802_21" HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_614_14">Move</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_new.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_802_13" HREF="terminal_interface-curses-forms__ads.htm#ref_625_13">Create</A></span> (<span class="symbol"><A NAME="ref_802_21" HREF="terminal_interface-curses-forms__ads.htm#ref_625_21">Fields</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_136_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_804_16">NewForm</A></FONT> (<FONT COLOR=red><A NAME="ref_804_25" HREF="terminal_interface-curses-forms__adb.htm#ref_804_16">Fields</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_804_16">NewForm</A></span> (<span class="symbol"><A NAME="ref_804_25" HREF="terminal_interface-curses-forms__adb.htm#ref_804_16">Fields</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; - <b>pragma</b> Import (C, NewForm, "new_form"); - -- <FONT COLOR=red><A NAME="ref_807_7">M</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_807_7">M</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; - <b>begin</b> -- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>); -- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#ref_625_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_625_21">Fields</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>); -+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_625_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_625_21">Fields</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b> -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>else</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_807_7">M</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_804_16">NewForm</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>'First)'Address); -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_807_7">M</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_804_16">NewForm</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_625_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_625_21">Fields</A>'First)'Address); - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_807_7">M</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_807_7">M</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_627_13">Create</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_823_14" HREF="terminal_interface-curses-forms__ads.htm#ref_638_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_823_22" HREF="terminal_interface-curses-forms__ads.htm#ref_638_22">Frm</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_625_13">Create</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_823_14" HREF="terminal_interface-curses-forms__ads.htm#ref_636_14">Delete</A></span> (<span class="symbol"><A NAME="ref_823_22" HREF="terminal_interface-curses-forms__ads.htm#ref_636_22">Frm</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_825_16">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_825_22" HREF="terminal_interface-curses-forms__adb.htm#ref_825_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_825_16">Free</A></span> (<span class="symbol"><A NAME="ref_825_22" HREF="terminal_interface-curses-forms__adb.htm#ref_825_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Free, "free_form"); - -- <FONT COLOR=red><A NAME="ref_828_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_825_16">Free</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_638_22">Frm</A>); -+ <span class="symbol"><A NAME="ref_828_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_825_16">Free</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_636_22">Frm</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_828_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_828_7">Res</A>); - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_638_22">Frm</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_638_14">Delete</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_opts.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_842_14" HREF="terminal_interface-curses-forms__ads.htm#ref_648_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_842_27" HREF="terminal_interface-curses-forms__ads.htm#ref_648_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_843_27" HREF="terminal_interface-curses-forms__ads.htm#ref_649_27">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>) -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_636_22">Frm</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_636_14">Delete</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_opts.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_842_14" HREF="terminal_interface-curses-forms__ads.htm#ref_646_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_842_27" HREF="terminal_interface-curses-forms__ads.htm#ref_646_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_843_27" HREF="terminal_interface-curses-forms__ads.htm#ref_647_27">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_845_16">Set_Form_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_845_31" HREF="terminal_interface-curses-forms__adb.htm#ref_845_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_846_31" HREF="terminal_interface-curses-forms__adb.htm#ref_845_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_845_16">Set_Form_Opts</A></span> (<span class="symbol"><A NAME="ref_845_31" HREF="terminal_interface-curses-forms__adb.htm#ref_845_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_846_31" HREF="terminal_interface-curses-forms__adb.htm#ref_845_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Form_Opts, "set_form_opts"); - -- <FONT COLOR=red><A NAME="ref_849_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FrmOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_649_27">Options</A>); -- <FONT COLOR=red><A NAME="ref_850_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_849_7">Opt</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FrmOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_647_27">Options</A>); -+ <span class="symbol"><A NAME="ref_850_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_850_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_845_16">Set_Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_648_27">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_849_7">Opt</A>); -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_850_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_845_16">Set_Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_646_27">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_849_7">Opt</A>); - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_850_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_850_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_648_14">Set_Options</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_860_14" HREF="terminal_interface-curses-forms__ads.htm#ref_654_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_860_30" HREF="terminal_interface-curses-forms__ads.htm#ref_654_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_861_30" HREF="terminal_interface-curses-forms__ads.htm#ref_655_30">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>; -- <FONT COLOR=red><A NAME="ref_862_30" HREF="terminal_interface-curses-forms__ads.htm#ref_656_30">On</A></FONT> : Boolean := True) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_646_14">Set_Options</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_860_14" HREF="terminal_interface-curses-forms__ads.htm#ref_652_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_860_30" HREF="terminal_interface-curses-forms__ads.htm#ref_652_30">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_861_30" HREF="terminal_interface-curses-forms__ads.htm#ref_653_30">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_862_30" HREF="terminal_interface-curses-forms__ads.htm#ref_654_30">On</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_864_16">Form_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="ref_864_30" HREF="terminal_interface-curses-forms__adb.htm#ref_864_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_865_30" HREF="terminal_interface-curses-forms__adb.htm#ref_864_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_864_16">Form_Opts_On</A></span> (<span class="symbol"><A NAME="ref_864_30" HREF="terminal_interface-curses-forms__adb.htm#ref_864_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_865_30" HREF="terminal_interface-curses-forms__adb.htm#ref_864_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Form_Opts_On, "form_opts_on"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_867_16">Form_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="ref_867_31" HREF="terminal_interface-curses-forms__adb.htm#ref_867_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_868_31" HREF="terminal_interface-curses-forms__adb.htm#ref_867_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_867_16">Form_Opts_Off</A></span> (<span class="symbol"><A NAME="ref_867_31" HREF="terminal_interface-curses-forms__adb.htm#ref_867_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_868_31" HREF="terminal_interface-curses-forms__adb.htm#ref_867_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Form_Opts_Off, "form_opts_off"); - -- <FONT COLOR=red><A NAME="ref_871_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -- <FONT COLOR=red><A NAME="ref_872_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FrmOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_655_30">Options</A>); -+ <span class="symbol"><A NAME="ref_871_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_872_7">Opt</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FrmOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_653_30">Options</A>); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_656_30">On</A> <b>then</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_871_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_864_16">Form_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_654_30">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_872_7">Opt</A>); -+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_654_30">On</A> <b>then</b> -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_871_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_864_16">Form_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_652_30">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_872_7">Opt</A>); - <b>else</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_871_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_867_16">Form_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_654_30">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_872_7">Opt</A>); -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_871_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_867_16">Form_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_652_30">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_872_7">Opt</A>); - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_871_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_871_7">Err</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_654_14">Switch_Options</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_886_14" HREF="terminal_interface-curses-forms__ads.htm#ref_662_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_886_27" HREF="terminal_interface-curses-forms__ads.htm#ref_662_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_887_27" HREF="terminal_interface-curses-forms__ads.htm#ref_663_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_652_14">Switch_Options</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_886_14" HREF="terminal_interface-curses-forms__ads.htm#ref_660_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_886_27" HREF="terminal_interface-curses-forms__ads.htm#ref_660_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_887_27" HREF="terminal_interface-curses-forms__ads.htm#ref_661_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_889_16">Form_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_889_27" HREF="terminal_interface-curses-forms__adb.htm#ref_889_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_889_16">Form_Opts</A></span> (<span class="symbol"><A NAME="ref_889_27" HREF="terminal_interface-curses-forms__adb.htm#ref_889_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Form_Opts, "form_opts"); - -- <FONT COLOR=red><A NAME="ref_892_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_889_16">Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_662_27">Frm</A>); -+ <span class="symbol"><A NAME="ref_892_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_889_16">Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_660_27">Frm</A>); - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_663_27">Options</A> := CInt_2_FrmOS (<A HREF="terminal_interface-curses-forms__adb.htm#ref_892_7">Res</A>); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_662_14">Get_Options</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_899_13" HREF="terminal_interface-curses-forms__ads.htm#ref_667_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_899_26" HREF="terminal_interface-curses-forms__ads.htm#ref_667_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A> -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_661_27">Options</A> := CInt_2_FrmOS (<A HREF="terminal_interface-curses-forms__adb.htm#ref_892_7">Res</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_660_14">Get_Options</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_899_13" HREF="terminal_interface-curses-forms__ads.htm#ref_665_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_899_26" HREF="terminal_interface-curses-forms__ads.htm#ref_665_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_901_7">Fos</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_901_7">Fos</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_662_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_667_26">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_901_7">Fos</A>); -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_660_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_665_26">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_901_7">Fos</A>); - <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_901_7">Fos</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_667_13">Get_Options</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_post.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_913_14" HREF="terminal_interface-curses-forms__ads.htm#ref_676_14">Post</A></FONT> (<FONT COLOR=red><A NAME="ref_913_20" HREF="terminal_interface-curses-forms__ads.htm#ref_676_20">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_914_20" HREF="terminal_interface-curses-forms__ads.htm#ref_677_20">Post</A></FONT> : Boolean := True) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_665_13">Get_Options</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_post.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_913_14" HREF="terminal_interface-curses-forms__ads.htm#ref_674_14">Post</A></span> (<span class="symbol"><A NAME="ref_913_20" HREF="terminal_interface-curses-forms__ads.htm#ref_674_20">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_914_20" HREF="terminal_interface-curses-forms__ads.htm#ref_675_20">Post</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_916_16">M_Post</A></FONT> (<FONT COLOR=red><A NAME="ref_916_24" HREF="terminal_interface-curses-forms__adb.htm#ref_916_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_916_16">M_Post</A></span> (<span class="symbol"><A NAME="ref_916_24" HREF="terminal_interface-curses-forms__adb.htm#ref_916_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, M_Post, "post_form"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_918_16">M_Unpost</A></FONT> (<FONT COLOR=red><A NAME="ref_918_26" HREF="terminal_interface-curses-forms__adb.htm#ref_918_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_918_16">M_Unpost</A></span> (<span class="symbol"><A NAME="ref_918_26" HREF="terminal_interface-curses-forms__adb.htm#ref_918_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, M_Unpost, "unpost_form"); - -- <FONT COLOR=red><A NAME="ref_921_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_921_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_677_20">Post</A> <b>then</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_921_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_916_16">M_Post</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_676_20">Frm</A>); -+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_675_20">Post</A> <b>then</b> -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_921_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_916_16">M_Post</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_674_20">Frm</A>); - <b>else</b> -- <A HREF="terminal_interface-curses-forms__adb.htm#ref_921_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_918_16">M_Unpost</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_676_20">Frm</A>); -+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_921_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_918_16">M_Unpost</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_674_20">Frm</A>); - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_921_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_921_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_676_14">Post</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_cursor.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_939_14" HREF="terminal_interface-curses-forms__ads.htm#ref_687_14">Position_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_939_31" HREF="terminal_interface-curses-forms__ads.htm#ref_687_31">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_674_14">Post</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_cursor.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_939_14" HREF="terminal_interface-curses-forms__ads.htm#ref_685_14">Position_Cursor</A></span> (<span class="symbol"><A NAME="ref_939_31" HREF="terminal_interface-curses-forms__ads.htm#ref_685_31">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_941_16">Pos_Form_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_941_33" HREF="terminal_interface-curses-forms__adb.htm#ref_941_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_941_16">Pos_Form_Cursor</A></span> (<span class="symbol"><A NAME="ref_941_33" HREF="terminal_interface-curses-forms__adb.htm#ref_941_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Pos_Form_Cursor, "pos_form_cursor"); - -- <FONT COLOR=red><A NAME="ref_944_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_941_16">Pos_Form_Cursor</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_687_31">Frm</A>); -+ <span class="symbol"><A NAME="ref_944_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_941_16">Pos_Form_Cursor</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_685_31">Frm</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_944_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_944_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_687_14">Position_Cursor</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_data.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_957_13" HREF="terminal_interface-curses-forms__ads.htm#ref_696_13">Data_Ahead</A></FONT> (<FONT COLOR=red><A NAME="ref_957_25" HREF="terminal_interface-curses-forms__ads.htm#ref_696_25">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_685_14">Position_Cursor</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_data.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_957_13" HREF="terminal_interface-curses-forms__ads.htm#ref_694_13">Data_Ahead</A></span> (<span class="symbol"><A NAME="ref_957_25" HREF="terminal_interface-curses-forms__ads.htm#ref_694_25">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_959_16">Ahead</A></FONT> (<FONT COLOR=red><A NAME="ref_959_23" HREF="terminal_interface-curses-forms__adb.htm#ref_959_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_959_16">Ahead</A></span> (<span class="symbol"><A NAME="ref_959_23" HREF="terminal_interface-curses-forms__adb.htm#ref_959_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Ahead, "data_ahead"); - -- <FONT COLOR=red><A NAME="ref_962_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_959_16">Ahead</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_696_25">Frm</A>); -+ <span class="symbol"><A NAME="ref_962_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_959_16">Ahead</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_694_25">Frm</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_962_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_696_13">Data_Ahead</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_973_13" HREF="terminal_interface-curses-forms__ads.htm#ref_701_13">Data_Behind</A></FONT> (<FONT COLOR=red><A NAME="ref_973_26" HREF="terminal_interface-curses-forms__ads.htm#ref_701_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_694_13">Data_Ahead</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_973_13" HREF="terminal_interface-curses-forms__ads.htm#ref_699_13">Data_Behind</A></span> (<span class="symbol"><A NAME="ref_973_26" HREF="terminal_interface-curses-forms__ads.htm#ref_699_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_975_16">Behind</A></FONT> (<FONT COLOR=red><A NAME="ref_975_24" HREF="terminal_interface-curses-forms__adb.htm#ref_975_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_975_16">Behind</A></span> (<span class="symbol"><A NAME="ref_975_24" HREF="terminal_interface-curses-forms__adb.htm#ref_975_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Behind, "data_behind"); - -- <FONT COLOR=red><A NAME="ref_978_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_975_16">Behind</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_701_26">Frm</A>); -+ <span class="symbol"><A NAME="ref_978_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_975_16">Behind</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_699_26">Frm</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_978_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_701_13">Data_Behind</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_driver.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_993_13" HREF="terminal_interface-curses-forms__ads.htm#ref_715_13">Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_993_21" HREF="terminal_interface-curses-forms__ads.htm#ref_715_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_994_21" HREF="terminal_interface-curses-forms__ads.htm#ref_716_21">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_709_9">Driver_Result</A> -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_699_13">Data_Behind</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_driver.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_993_13" HREF="terminal_interface-curses-forms__ads.htm#ref_713_13">Driver</A></span> (<span class="symbol"><A NAME="ref_993_21" HREF="terminal_interface-curses-forms__ads.htm#ref_713_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_994_21" HREF="terminal_interface-curses-forms__ads.htm#ref_714_21">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_707_9">Driver_Result</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_996_16">Frm_Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_996_28" HREF="terminal_interface-curses-forms__adb.htm#ref_996_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <FONT COLOR=red><A NAME="ref_996_40" HREF="terminal_interface-curses-forms__adb.htm#ref_996_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_996_16">Frm_Driver</A></span> (<span class="symbol"><A NAME="ref_996_28" HREF="terminal_interface-curses-forms__adb.htm#ref_996_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <span class="symbol"><A NAME="ref_996_40" HREF="terminal_interface-curses-forms__adb.htm#ref_996_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Frm_Driver, "form_driver"); - -- <FONT COLOR=red><A NAME="ref_999_7">R</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_996_16">Frm_Driver</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_715_21">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_716_21">Key</A>)); -+ <span class="symbol"><A NAME="ref_999_7">R</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_996_16">Frm_Driver</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_713_21">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_714_21">Key</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_999_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_999_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_4">E_Unknown_Command</A> <b>then</b> -- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_711_27">Unknown_Request</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_709_27">Unknown_Request</A>; - <b>elsif</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_999_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_93_4">E_Invalid_Field</A> <b>then</b> -- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_712_27">Invalid_Field</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_710_27">Invalid_Field</A>; - <b>elsif</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_999_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_4">E_Request_Denied</A> <b>then</b> -- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_710_27">Request_Denied</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_708_27">Request_Denied</A>; - <b>else</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_999_7">R</A>); -- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_709_27">Form_Ok</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_707_27">Form_Ok</A>; - <b>end</b> <b>if</b>; - <b>else</b> -- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_709_27">Form_Ok</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_707_27">Form_Ok</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_715_13">Driver</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_page.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1023_14" HREF="terminal_interface-curses-forms__ads.htm#ref_727_14">Set_Current</A></FONT> (<FONT COLOR=red><A NAME="ref_1023_27" HREF="terminal_interface-curses-forms__ads.htm#ref_727_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_1024_27" HREF="terminal_interface-curses-forms__ads.htm#ref_728_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_713_13">Driver</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_page.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1023_14" HREF="terminal_interface-curses-forms__ads.htm#ref_725_14">Set_Current</A></span> (<span class="symbol"><A NAME="ref_1023_27" HREF="terminal_interface-curses-forms__ads.htm#ref_725_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_1024_27" HREF="terminal_interface-curses-forms__ads.htm#ref_726_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1026_16">Set_Current_Fld</A></FONT> (<FONT COLOR=red><A NAME="ref_1026_33" HREF="terminal_interface-curses-forms__adb.htm#ref_1026_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <FONT COLOR=red><A NAME="ref_1026_45" HREF="terminal_interface-curses-forms__adb.htm#ref_1026_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1026_16">Set_Current_Fld</A></span> (<span class="symbol"><A NAME="ref_1026_33" HREF="terminal_interface-curses-forms__adb.htm#ref_1026_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <span class="symbol"><A NAME="ref_1026_45" HREF="terminal_interface-curses-forms__adb.htm#ref_1026_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Current_Fld, "set_current_field"); - -- <FONT COLOR=red><A NAME="ref_1029_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1026_16">Set_Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_727_27">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_728_27">Fld</A>); -+ <span class="symbol"><A NAME="ref_1029_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1026_16">Set_Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_725_27">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_726_27">Fld</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1029_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1029_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_727_14">Set_Current</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1038_13" HREF="terminal_interface-curses-forms__ads.htm#ref_733_13">Current</A></FONT> (<FONT COLOR=red><A NAME="ref_1038_22" HREF="terminal_interface-curses-forms__ads.htm#ref_733_22">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_725_14">Set_Current</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1038_13" HREF="terminal_interface-curses-forms__ads.htm#ref_731_13">Current</A></span> (<span class="symbol"><A NAME="ref_1038_22" HREF="terminal_interface-curses-forms__ads.htm#ref_731_22">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1040_16">Current_Fld</A></FONT> (<FONT COLOR=red><A NAME="ref_1040_29" HREF="terminal_interface-curses-forms__adb.htm#ref_1040_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1040_16">Current_Fld</A></span> (<span class="symbol"><A NAME="ref_1040_29" HREF="terminal_interface-curses-forms__adb.htm#ref_1040_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; - <b>pragma</b> Import (C, Current_Fld, "current_field"); - -- <FONT COLOR=red><A NAME="ref_1043_7">Fld</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1040_16">Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_733_22">Frm</A>); -+ <span class="symbol"><A NAME="ref_1043_7">Fld</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1040_16">Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_731_22">Frm</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1043_7">Fld</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1043_7">Fld</A>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_733_13">Current</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1053_14" HREF="terminal_interface-curses-forms__ads.htm#ref_738_14">Set_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1053_24" HREF="terminal_interface-curses-forms__ads.htm#ref_738_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_1054_24" HREF="terminal_interface-curses-forms__ads.htm#ref_739_24">Page</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A>'First) -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_731_13">Current</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1053_14" HREF="terminal_interface-curses-forms__ads.htm#ref_736_14">Set_Page</A></span> (<span class="symbol"><A NAME="ref_1053_24" HREF="terminal_interface-curses-forms__ads.htm#ref_736_24">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_1054_24" HREF="terminal_interface-curses-forms__ads.htm#ref_737_24">Page</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_722_9">Page_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_722_9">Page_Number</A>'First) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1056_16">Set_Frm_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1056_30" HREF="terminal_interface-curses-forms__adb.htm#ref_1056_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <FONT COLOR=red><A NAME="ref_1056_42" HREF="terminal_interface-curses-forms__adb.htm#ref_1056_16">Pg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1056_16">Set_Frm_Page</A></span> (<span class="symbol"><A NAME="ref_1056_30" HREF="terminal_interface-curses-forms__adb.htm#ref_1056_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <span class="symbol"><A NAME="ref_1056_42" HREF="terminal_interface-curses-forms__adb.htm#ref_1056_16">Pg</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Frm_Page, "set_form_page"); - -- <FONT COLOR=red><A NAME="ref_1059_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1056_16">Set_Frm_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_738_24">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_739_24">Page</A>)); -+ <span class="symbol"><A NAME="ref_1059_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1056_16">Set_Frm_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_736_24">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_737_24">Page</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1059_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1059_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_738_14">Set_Page</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1068_13" HREF="terminal_interface-curses-forms__ads.htm#ref_744_13">Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1068_19" HREF="terminal_interface-curses-forms__ads.htm#ref_744_19">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A> -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_736_14">Set_Page</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1068_13" HREF="terminal_interface-curses-forms__ads.htm#ref_742_13">Page</A></span> (<span class="symbol"><A NAME="ref_1068_19" HREF="terminal_interface-curses-forms__ads.htm#ref_742_19">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_722_9">Page_Number</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1070_16">Get_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1070_26" HREF="terminal_interface-curses-forms__adb.htm#ref_1070_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1070_16">Get_Page</A></span> (<span class="symbol"><A NAME="ref_1070_26" HREF="terminal_interface-curses-forms__adb.htm#ref_1070_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Get_Page, "form_page"); - -- <FONT COLOR=red><A NAME="ref_1073_7">P</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1070_16">Get_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_744_19">Frm</A>); -+ <span class="symbol"><A NAME="ref_1073_7">P</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1070_16">Get_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_742_19">Frm</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1073_7">P</A> &lt; 0 <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>else</b> -- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1073_7">P</A>); -+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_722_9">Page_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1073_7">P</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_744_13">Page</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_742_13">Page</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1082_13" HREF="terminal_interface-curses-forms__ads.htm#ref_749_13">Get_Index</A></FONT> (<FONT COLOR=red><A NAME="ref_1082_24" HREF="terminal_interface-curses-forms__ads.htm#ref_749_24">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Positive -+ <b>function</b> <span class="symbol"><A NAME="ref_1082_13" HREF="terminal_interface-curses-forms__ads.htm#ref_747_13">Get_Index</A></span> (<span class="symbol"><A NAME="ref_1082_24" HREF="terminal_interface-curses-forms__ads.htm#ref_747_24">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Positive - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1084_16">Get_Fieldindex</A></FONT> (<FONT COLOR=red><A NAME="ref_1084_32" HREF="terminal_interface-curses-forms__adb.htm#ref_1084_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1084_16">Get_Fieldindex</A></span> (<span class="symbol"><A NAME="ref_1084_32" HREF="terminal_interface-curses-forms__adb.htm#ref_1084_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Get_Fieldindex, "field_index"); - -- <FONT COLOR=red><A NAME="ref_1087_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1084_16">Get_Fieldindex</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_749_24">Fld</A>); -+ <span class="symbol"><A NAME="ref_1087_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1084_16">Get_Fieldindex</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_747_24">Fld</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1087_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> Positive (Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1087_7">Res</A>) + Positive'First); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_749_13">Get_Index</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_747_13">Get_Index</A>; - -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_new_page.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1102_14" HREF="terminal_interface-curses-forms__ads.htm#ref_761_14">Set_New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1102_28" HREF="terminal_interface-curses-forms__ads.htm#ref_761_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_1103_28" HREF="terminal_interface-curses-forms__ads.htm#ref_762_28">New_Page</A></FONT> : Boolean := True) -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_new_page.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1102_14" HREF="terminal_interface-curses-forms__ads.htm#ref_759_14">Set_New_Page</A></span> (<span class="symbol"><A NAME="ref_1102_28" HREF="terminal_interface-curses-forms__ads.htm#ref_759_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_1103_28" HREF="terminal_interface-curses-forms__ads.htm#ref_760_28">New_Page</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1105_16">Set_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1105_26" HREF="terminal_interface-curses-forms__adb.htm#ref_1105_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <FONT COLOR=red><A NAME="ref_1105_39" HREF="terminal_interface-curses-forms__adb.htm#ref_1105_16">Flg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1105_16">Set_Page</A></span> (<span class="symbol"><A NAME="ref_1105_26" HREF="terminal_interface-curses-forms__adb.htm#ref_1105_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <span class="symbol"><A NAME="ref_1105_39" HREF="terminal_interface-curses-forms__adb.htm#ref_1105_16">Flg</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Page, "set_new_page"); - -- <FONT COLOR=red><A NAME="ref_1108_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1105_16">Set_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_761_28">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_762_28">New_Page</A>)); -+ <span class="symbol"><A NAME="ref_1108_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1105_16">Set_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_759_28">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_760_28">New_Page</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1108_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1108_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_761_14">Set_New_Page</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1117_13" HREF="terminal_interface-curses-forms__ads.htm#ref_767_13">Is_New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1117_26" HREF="terminal_interface-curses-forms__ads.htm#ref_767_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_759_14">Set_New_Page</A>; -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1117_13" HREF="terminal_interface-curses-forms__ads.htm#ref_765_13">Is_New_Page</A></span> (<span class="symbol"><A NAME="ref_1117_26" HREF="terminal_interface-curses-forms__ads.htm#ref_765_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1119_16">Is_New</A></FONT> (<FONT COLOR=red><A NAME="ref_1119_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1119_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_1119_16">Is_New</A></span> (<span class="symbol"><A NAME="ref_1119_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1119_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Is_New, "new_page"); - -- <FONT COLOR=red><A NAME="ref_1122_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1119_16">Is_New</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_767_26">Fld</A>); -+ <span class="symbol"><A NAME="ref_1122_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1119_16">Is_New</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_765_26">Fld</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1122_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_767_13">Is_New_Page</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_765_13">Is_New_Page</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1131_14" HREF="terminal_interface-curses-forms__ads.htm#ref_140_14">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_1131_20" HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>; -- <FONT COLOR=red><A NAME="ref_1132_20" HREF="terminal_interface-curses-forms__ads.htm#ref_141_20">Free_Fields</A></FONT> : Boolean := False) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_1131_14" HREF="terminal_interface-curses-forms__ads.htm#ref_138_14">Free</A></span> (<span class="symbol"><A NAME="ref_1131_20" HREF="terminal_interface-curses-forms__ads.htm#ref_138_20">FA</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_136_9">Field_Array_Access</A>; -+ <span class="symbol"><A NAME="ref_1132_20" HREF="terminal_interface-curses-forms__ads.htm#ref_139_20">Free_Fields</A></span> : Boolean := False) - <b>is</b> - <b>procedure</b> Release <b>is</b> <b>new</b> Ada.Unchecked_Deallocation -- (Field_Array, <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>); -+ (Field_Array, <A HREF="terminal_interface-curses-forms__ads.htm#ref_136_9">Field_Array_Access</A>); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_141_20">Free_Fields</A> <b>then</b> -- <b>for</b> <FONT COLOR=red><A NAME="ref_1138_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A>'First .. (<A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A>'Last - 1) <b>loop</b> -- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1138_14">I</A>) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_319_14">Delete</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1138_14">I</A>)); -+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_20">FA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_139_20">Free_Fields</A> <b>then</b> -+ <b>for</b> <span class="symbol"><A NAME="ref_1138_14">I</A></span> <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_20">FA</A>'First .. (<A HREF="terminal_interface-curses-forms__ads.htm#ref_138_20">FA</A>'Last - 1) <b>loop</b> -+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_20">FA</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1138_14">I</A>) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b> -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_317_14">Delete</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_138_20">FA</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1138_14">I</A>)); - <b>end</b> <b>if</b>; - <b>end</b> <b>loop</b>; - <b>end</b> <b>if</b>; -- Release (<A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A>); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_140_14">Free</A>; -+ Release (<A HREF="terminal_interface-curses-forms__ads.htm#ref_138_20">FA</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_14">Free</A>; - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1149_13" HREF="terminal_interface-curses-forms__ads.htm#ref_104_13">Default_Field_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_1149_13" HREF="terminal_interface-curses-forms__ads.htm#ref_103_13">Default_Field_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A> - <b>is</b> - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_420_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_104_13">Default_Field_Options</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_418_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_103_13">Default_Field_Options</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1155_13" HREF="terminal_interface-curses-forms__ads.htm#ref_129_13">Default_Form_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_1155_13" HREF="terminal_interface-curses-forms__ads.htm#ref_127_13">Default_Form_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A> - <b>is</b> - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_667_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>); -- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_129_13">Default_Form_Options</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_665_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_127_13">Default_Form_Options</A>; - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms__ads.htm 2011-03-20 00:18:40.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms__ads.htm 2014-09-01 16:33:22.288792010 +0200 -@@ -1,88 +1,99 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Form --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.30 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:31:35 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- form binding.</EM></FONT> --<FONT COLOR=green><EM>-- This module is generated. Please don't change it manually!</EM></FONT> --<FONT COLOR=green><EM>-- Run the generator instead.</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Form --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.30 @</EM></span> -+<span class="comment"><EM>-- @Date: 2009/12/26 17:31:35 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- form binding.</EM></span> -+<span class="comment"><EM>-- This module is generated. Please don't change it manually!</EM></span> -+<span class="comment"><EM>-- Run the generator instead.</EM></span> -+<span class="comment"><EM>-- |</EM></span> - <b>with</b> System; - <b>with</b> Ada.Characters.Latin_1; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_49_35" HREF="terminal_interface-curses-forms__adb.htm#ref_51_40">Forms</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_49_35" HREF="terminal_interface-curses-forms__adb.htm#ref_51_40">Forms</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>); - <b>pragma</b> Linker_Options ("-lform"); - <b>pragma</b> Linker_Options ("-lncurses"); - - Space : Character <b>renames</b> Ada.Characters.Latin_1.Space; - -- <b>type</b> <FONT COLOR=red><A NAME="ref_56_9">Field</A></FONT> <b>is</b> <b>private</b>; -- <b>type</b> <FONT COLOR=red><A NAME="ref_57_9">Form</A></FONT> <b>is</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_56_9">Field</A></span> <b>is</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_57_9">Form</A></span> <b>is</b> <b>private</b>; - -- <FONT COLOR=red><A NAME="ref_59_4">Null_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_60_4">Null_Form</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_59_4">Null_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_60_4">Null_Form</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; - -- <b>type</b> <FONT COLOR=red><A NAME="ref_62_9">Field_Justification</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_62_33">None</A></FONT>, -- <FONT COLOR=red><A NAME="ref_63_33">Left</A></FONT>, -- <FONT COLOR=red><A NAME="ref_64_33">Center</A></FONT>, -- <FONT COLOR=red><A NAME="ref_65_33">Right</A></FONT>); -+ <b>type</b> <span class="symbol"><A NAME="ref_62_9">Field_Justification</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_62_33">None</A></span>, -+ <span class="symbol"><A NAME="ref_63_33">Left</A></span>, -+ <span class="symbol"><A NAME="ref_64_33">Center</A></span>, -+ <span class="symbol"><A NAME="ref_65_33">Right</A></span>); - - <b>pragma</b> Warnings (Off); -- <b>type</b> <FONT COLOR=red><A NAME="ref_68_9">Field_Option_Set</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_68_9">Field_Option_Set</A></span> <b>is</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_70_10">Visible</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_71_10">Active</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_72_10">Public</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_73_10">Edit</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_74_10">Wrap</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_75_10">Blank</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_76_10">Auto_Skip</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_77_10">Null_Ok</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_78_10">Pass_Ok</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_79_10">Static</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_80_10">Unused</A></FONT> : Boolean; -+ <span class="symbol"><A NAME="ref_70_10">Visible</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_71_10">Active</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_72_10">Public</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_73_10">Edit</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_74_10">Wrap</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_75_10">Blank</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_76_10">Auto_Skip</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_77_10">Null_Ok</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_78_10">Pass_Ok</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_79_10">Static</A></span> : Boolean; - <b>end</b> <b>record</b>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>); - -@@ -98,687 +109,686 @@ - <A HREF="terminal_interface-curses-forms__ads.htm#ref_77_10">Null_Ok</A> <b>at</b> 0 <b>range</b> 7 .. 7; - <A HREF="terminal_interface-curses-forms__ads.htm#ref_78_10">Pass_Ok</A> <b>at</b> 0 <b>range</b> 8 .. 8; - <A HREF="terminal_interface-curses-forms__ads.htm#ref_79_10">Static</A> <b>at</b> 0 <b>range</b> 9 .. 9; -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_80_10">Unused</A> <b>at</b> 0 <b>range</b> 10 .. 31; - <b>end</b> <b>record</b>; -- <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>'Size <b>use</b> 32; -- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT> -- <FONT COLOR=green><EM>-- different on your system.Dnl</EM></FONT> -+ <b>pragma</b> Warnings (Off); <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>'Size <b>use</b> 32; -+ <b>pragma</b> Warnings (On); -+ <span class="comment"><EM>-- Please note: this rep. clause is generated and may be</EM></span> -+ <span class="comment"><EM>-- different on your system.Dnl</EM></span> - - <b>pragma</b> Warnings (On); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_104_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1149_13">Default_Field_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>; -- <FONT COLOR=green><EM>-- The initial defaults for the field options.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_104_13">Default_Field_Options</A>); -+ <b>function</b> <span class="symbol"><A NAME="ref_103_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1149_13">Default_Field_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>; -+ <span class="comment"><EM>-- The initial defaults for the field options.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_103_13">Default_Field_Options</A>); - - <b>pragma</b> Warnings (Off); -- <b>type</b> <FONT COLOR=red><A NAME="ref_109_9">Form_Option_Set</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_108_9">Form_Option_Set</A></span> <b>is</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_111_10">NL_Overload</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_112_10">BS_Overload</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_113_10">Unused</A></FONT> : Boolean; -+ <span class="symbol"><A NAME="ref_110_10">NL_Overload</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_111_10">BS_Overload</A></span> : Boolean; - <b>end</b> <b>record</b>; -- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>); -+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>); - -- <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A> <b>use</b> -+ <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A> <b>use</b> - <b>record</b> -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_111_10">NL_Overload</A> <b>at</b> 0 <b>range</b> 0 .. 0; -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_112_10">BS_Overload</A> <b>at</b> 0 <b>range</b> 1 .. 1; -- <A HREF="terminal_interface-curses-forms__ads.htm#ref_113_10">Unused</A> <b>at</b> 0 <b>range</b> 2 .. 31; -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_110_10">NL_Overload</A> <b>at</b> 0 <b>range</b> 0 .. 0; -+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_111_10">BS_Overload</A> <b>at</b> 0 <b>range</b> 1 .. 1; - <b>end</b> <b>record</b>; -- <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>'Size <b>use</b> 32; -- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT> -- <FONT COLOR=green><EM>-- different on your system.Dnl</EM></FONT> -+ <b>pragma</b> Warnings (Off); <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>'Size <b>use</b> 32; -+ <b>pragma</b> Warnings (On); -+ <span class="comment"><EM>-- Please note: this rep. clause is generated and may be</EM></span> -+ <span class="comment"><EM>-- different on your system.Dnl</EM></span> - - <b>pragma</b> Warnings (On); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_129_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1155_13">Default_Form_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>; -- <FONT COLOR=green><EM>-- The initial defaults for the form options.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_129_13">Default_Form_Options</A>); -+ <b>function</b> <span class="symbol"><A NAME="ref_127_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1155_13">Default_Form_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>; -+ <span class="comment"><EM>-- The initial defaults for the form options.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_127_13">Default_Form_Options</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_133_9">Buffer_Number</A></FONT> <b>is</b> <b>new</b> Natural; -+ <b>type</b> <span class="symbol"><A NAME="ref_131_9">Buffer_Number</A></span> <b>is</b> <b>new</b> Natural; - - <b>type</b> Field_Array <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; - <b>pragma</b> Convention (C, Field_Array); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_138_9">Field_Array_Access</A></FONT> <b>is</b> <b>access</b> Field_Array; -+ <b>type</b> <span class="symbol"><A NAME="ref_136_9">Field_Array_Access</A></span> <b>is</b> <b>access</b> Field_Array; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_140_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1131_14">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_140_20" HREF="terminal_interface-curses-forms__adb.htm#ref_1131_20">FA</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>; -- <FONT COLOR=red><A NAME="ref_141_20" HREF="terminal_interface-curses-forms__adb.htm#ref_1132_20">Free_Fields</A></FONT> : Boolean := False); -- <FONT COLOR=green><EM>-- Release the memory for an allocated field array</EM></FONT> -- <FONT COLOR=green><EM>-- If Free_Fields is True, call Delete() for all the fields in</EM></FONT> -- <FONT COLOR=green><EM>-- the array.</EM></FONT> -- -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_146_12">Form_Request_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A> <b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1) .. (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 57); -- -- <FONT COLOR=green><EM>-- The prefix F_ stands for "Form Request"</EM></FONT> -- <FONT COLOR=red><A NAME="ref_149_4">F_Next_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1; -- <FONT COLOR=red><A NAME="ref_150_4">F_Previous_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 2; -- <FONT COLOR=red><A NAME="ref_151_4">F_First_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 3; -- <FONT COLOR=red><A NAME="ref_152_4">F_Last_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 4; -- -- <FONT COLOR=red><A NAME="ref_154_4">F_Next_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 5; -- <FONT COLOR=red><A NAME="ref_155_4">F_Previous_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 6; -- <FONT COLOR=red><A NAME="ref_156_4">F_First_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 7; -- <FONT COLOR=red><A NAME="ref_157_4">F_Last_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 8; -- <FONT COLOR=red><A NAME="ref_158_4">F_Sorted_Next_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 9; -- <FONT COLOR=red><A NAME="ref_159_4">F_Sorted_Previous_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 10; -- <FONT COLOR=red><A NAME="ref_160_4">F_Sorted_First_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 11; -- <FONT COLOR=red><A NAME="ref_161_4">F_Sorted_Last_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 12; -- <FONT COLOR=red><A NAME="ref_162_4">F_Left_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 13; -- <FONT COLOR=red><A NAME="ref_163_4">F_Right_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 14; -- <FONT COLOR=red><A NAME="ref_164_4">F_Up_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 15; -- <FONT COLOR=red><A NAME="ref_165_4">F_Down_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 16; -- -- <FONT COLOR=red><A NAME="ref_167_4">F_Next_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 17; -- <FONT COLOR=red><A NAME="ref_168_4">F_Previous_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 18; -- <FONT COLOR=red><A NAME="ref_169_4">F_Next_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 19; -- <FONT COLOR=red><A NAME="ref_170_4">F_Previous_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 20; -- <FONT COLOR=red><A NAME="ref_171_4">F_Next_Word</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 21; -- <FONT COLOR=red><A NAME="ref_172_4">F_Previous_Word</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 22; -- <FONT COLOR=red><A NAME="ref_173_4">F_Begin_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 23; -- <FONT COLOR=red><A NAME="ref_174_4">F_End_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 24; -- <FONT COLOR=red><A NAME="ref_175_4">F_Begin_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 25; -- <FONT COLOR=red><A NAME="ref_176_4">F_End_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 26; -- <FONT COLOR=red><A NAME="ref_177_4">F_Left_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 27; -- <FONT COLOR=red><A NAME="ref_178_4">F_Right_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 28; -- <FONT COLOR=red><A NAME="ref_179_4">F_Up_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 29; -- <FONT COLOR=red><A NAME="ref_180_4">F_Down_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 30; -- -- <FONT COLOR=red><A NAME="ref_182_4">F_New_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 31; -- <FONT COLOR=red><A NAME="ref_183_4">F_Insert_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 32; -- <FONT COLOR=red><A NAME="ref_184_4">F_Insert_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 33; -- <FONT COLOR=red><A NAME="ref_185_4">F_Delete_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 34; -- <FONT COLOR=red><A NAME="ref_186_4">F_Delete_Previous</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 35; -- <FONT COLOR=red><A NAME="ref_187_4">F_Delete_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 36; -- <FONT COLOR=red><A NAME="ref_188_4">F_Delete_Word</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 37; -- <FONT COLOR=red><A NAME="ref_189_4">F_Clear_EOL</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 38; -- <FONT COLOR=red><A NAME="ref_190_4">F_Clear_EOF</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 39; -- <FONT COLOR=red><A NAME="ref_191_4">F_Clear_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 40; -- <FONT COLOR=red><A NAME="ref_192_4">F_Overlay_Mode</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 41; -- <FONT COLOR=red><A NAME="ref_193_4">F_Insert_Mode</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 42; -- -- <FONT COLOR=green><EM>-- Vertical Scrolling</EM></FONT> -- <FONT COLOR=red><A NAME="ref_196_4">F_ScrollForward_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 43; -- <FONT COLOR=red><A NAME="ref_197_4">F_ScrollBackward_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 44; -- <FONT COLOR=red><A NAME="ref_198_4">F_ScrollForward_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 45; -- <FONT COLOR=red><A NAME="ref_199_4">F_ScrollBackward_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 46; -- <FONT COLOR=red><A NAME="ref_200_4">F_ScrollForward_HalfPage</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 47; -- <FONT COLOR=red><A NAME="ref_201_4">F_ScrollBackward_HalfPage</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 48; -- -- <FONT COLOR=green><EM>-- Horizontal Scrolling</EM></FONT> -- <FONT COLOR=red><A NAME="ref_204_4">F_HScrollForward_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 49; -- <FONT COLOR=red><A NAME="ref_205_4">F_HScrollBackward_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 50; -- <FONT COLOR=red><A NAME="ref_206_4">F_HScrollForward_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 51; -- <FONT COLOR=red><A NAME="ref_207_4">F_HScrollBackward_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 52; -- <FONT COLOR=red><A NAME="ref_208_4">F_HScrollForward_HalfLine</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 53; -- <FONT COLOR=red><A NAME="ref_209_4">F_HScrollBackward_HalfLine</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 54; -- -- <FONT COLOR=red><A NAME="ref_211_4">F_Validate_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 55; -- <FONT COLOR=red><A NAME="ref_212_4">F_Next_Choice</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 56; -- <FONT COLOR=red><A NAME="ref_213_4">F_Previous_Choice</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 57; -- -- <FONT COLOR=green><EM>-- For those who like the old 'C' style request names</EM></FONT> -- REQ_NEXT_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_149_4">F_Next_Page</A>; -- REQ_PREV_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_150_4">F_Previous_Page</A>; -- REQ_FIRST_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_151_4">F_First_Page</A>; -- REQ_LAST_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_152_4">F_Last_Page</A>; -- -- REQ_NEXT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_154_4">F_Next_Field</A>; -- REQ_PREV_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_155_4">F_Previous_Field</A>; -- REQ_FIRST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_156_4">F_First_Field</A>; -- REQ_LAST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_157_4">F_Last_Field</A>; -- REQ_SNEXT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_158_4">F_Sorted_Next_Field</A>; -- REQ_SPREV_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_159_4">F_Sorted_Previous_Field</A>; -- REQ_SFIRST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_160_4">F_Sorted_First_Field</A>; -- REQ_SLAST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_161_4">F_Sorted_Last_Field</A>; -- REQ_LEFT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_162_4">F_Left_Field</A>; -- REQ_RIGHT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_163_4">F_Right_Field</A>; -- REQ_UP_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_164_4">F_Up_Field</A>; -- REQ_DOWN_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_165_4">F_Down_Field</A>; -- -- REQ_NEXT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_167_4">F_Next_Char</A>; -- REQ_PREV_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_168_4">F_Previous_Char</A>; -- REQ_NEXT_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_169_4">F_Next_Line</A>; -- REQ_PREV_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_170_4">F_Previous_Line</A>; -- REQ_NEXT_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_171_4">F_Next_Word</A>; -- REQ_PREV_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_172_4">F_Previous_Word</A>; -- REQ_BEG_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_173_4">F_Begin_Field</A>; -- REQ_END_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_174_4">F_End_Field</A>; -- REQ_BEG_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_175_4">F_Begin_Line</A>; -- REQ_END_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_176_4">F_End_Line</A>; -- REQ_LEFT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_177_4">F_Left_Char</A>; -- REQ_RIGHT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_178_4">F_Right_Char</A>; -- REQ_UP_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_179_4">F_Up_Char</A>; -- REQ_DOWN_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_180_4">F_Down_Char</A>; -- -- REQ_NEW_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_182_4">F_New_Line</A>; -- REQ_INS_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_183_4">F_Insert_Char</A>; -- REQ_INS_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_184_4">F_Insert_Line</A>; -- REQ_DEL_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_185_4">F_Delete_Char</A>; -- REQ_DEL_PREV : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_186_4">F_Delete_Previous</A>; -- REQ_DEL_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_187_4">F_Delete_Line</A>; -- REQ_DEL_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_188_4">F_Delete_Word</A>; -- REQ_CLR_EOL : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_189_4">F_Clear_EOL</A>; -- REQ_CLR_EOF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_190_4">F_Clear_EOF</A>; -- REQ_CLR_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_191_4">F_Clear_Field</A>; -- REQ_OVL_MODE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_192_4">F_Overlay_Mode</A>; -- REQ_INS_MODE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_193_4">F_Insert_Mode</A>; -- -- REQ_SCR_FLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_196_4">F_ScrollForward_Line</A>; -- REQ_SCR_BLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_197_4">F_ScrollBackward_Line</A>; -- REQ_SCR_FPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_198_4">F_ScrollForward_Page</A>; -- REQ_SCR_BPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_199_4">F_ScrollBackward_Page</A>; -- REQ_SCR_FHPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_200_4">F_ScrollForward_HalfPage</A>; -- REQ_SCR_BHPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_201_4">F_ScrollBackward_HalfPage</A>; -- -- REQ_SCR_FCHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_204_4">F_HScrollForward_Char</A>; -- REQ_SCR_BCHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_205_4">F_HScrollBackward_Char</A>; -- REQ_SCR_HFLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_206_4">F_HScrollForward_Line</A>; -- REQ_SCR_HBLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_207_4">F_HScrollBackward_Line</A>; -- REQ_SCR_HFHALF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_208_4">F_HScrollForward_HalfLine</A>; -- REQ_SCR_HBHALF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_209_4">F_HScrollBackward_HalfLine</A>; -- -- REQ_VALIDATION : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_211_4">F_Validate_Field</A>; -- REQ_NEXT_CHOICE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_212_4">F_Next_Choice</A>; -- REQ_PREV_CHOICE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_213_4">F_Previous_Choice</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_138_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1131_14">Free</A></span> (<span class="symbol"><A NAME="ref_138_20" HREF="terminal_interface-curses-forms__adb.htm#ref_1131_20">FA</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_136_9">Field_Array_Access</A>; -+ <span class="symbol"><A NAME="ref_139_20" HREF="terminal_interface-curses-forms__adb.htm#ref_1132_20">Free_Fields</A></span> : Boolean := False); -+ <span class="comment"><EM>-- Release the memory for an allocated field array</EM></span> -+ <span class="comment"><EM>-- If Free_Fields is True, call Delete() for all the fields in</EM></span> -+ <span class="comment"><EM>-- the array.</EM></span> -+ -+ <b>subtype</b> <span class="symbol"><A NAME="ref_144_12">Form_Request_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A> <b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1) .. (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 57); -+ -+ <span class="comment"><EM>-- The prefix F_ stands for "Form Request"</EM></span> -+ <span class="symbol"><A NAME="ref_147_4">F_Next_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1; -+ <span class="symbol"><A NAME="ref_148_4">F_Previous_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 2; -+ <span class="symbol"><A NAME="ref_149_4">F_First_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 3; -+ <span class="symbol"><A NAME="ref_150_4">F_Last_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 4; -+ -+ <span class="symbol"><A NAME="ref_152_4">F_Next_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 5; -+ <span class="symbol"><A NAME="ref_153_4">F_Previous_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 6; -+ <span class="symbol"><A NAME="ref_154_4">F_First_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 7; -+ <span class="symbol"><A NAME="ref_155_4">F_Last_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 8; -+ <span class="symbol"><A NAME="ref_156_4">F_Sorted_Next_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 9; -+ <span class="symbol"><A NAME="ref_157_4">F_Sorted_Previous_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 10; -+ <span class="symbol"><A NAME="ref_158_4">F_Sorted_First_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 11; -+ <span class="symbol"><A NAME="ref_159_4">F_Sorted_Last_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 12; -+ <span class="symbol"><A NAME="ref_160_4">F_Left_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 13; -+ <span class="symbol"><A NAME="ref_161_4">F_Right_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 14; -+ <span class="symbol"><A NAME="ref_162_4">F_Up_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 15; -+ <span class="symbol"><A NAME="ref_163_4">F_Down_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 16; -+ -+ <span class="symbol"><A NAME="ref_165_4">F_Next_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 17; -+ <span class="symbol"><A NAME="ref_166_4">F_Previous_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 18; -+ <span class="symbol"><A NAME="ref_167_4">F_Next_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 19; -+ <span class="symbol"><A NAME="ref_168_4">F_Previous_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 20; -+ <span class="symbol"><A NAME="ref_169_4">F_Next_Word</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 21; -+ <span class="symbol"><A NAME="ref_170_4">F_Previous_Word</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 22; -+ <span class="symbol"><A NAME="ref_171_4">F_Begin_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 23; -+ <span class="symbol"><A NAME="ref_172_4">F_End_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 24; -+ <span class="symbol"><A NAME="ref_173_4">F_Begin_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 25; -+ <span class="symbol"><A NAME="ref_174_4">F_End_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 26; -+ <span class="symbol"><A NAME="ref_175_4">F_Left_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 27; -+ <span class="symbol"><A NAME="ref_176_4">F_Right_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 28; -+ <span class="symbol"><A NAME="ref_177_4">F_Up_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 29; -+ <span class="symbol"><A NAME="ref_178_4">F_Down_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 30; -+ -+ <span class="symbol"><A NAME="ref_180_4">F_New_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 31; -+ <span class="symbol"><A NAME="ref_181_4">F_Insert_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 32; -+ <span class="symbol"><A NAME="ref_182_4">F_Insert_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 33; -+ <span class="symbol"><A NAME="ref_183_4">F_Delete_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 34; -+ <span class="symbol"><A NAME="ref_184_4">F_Delete_Previous</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 35; -+ <span class="symbol"><A NAME="ref_185_4">F_Delete_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 36; -+ <span class="symbol"><A NAME="ref_186_4">F_Delete_Word</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 37; -+ <span class="symbol"><A NAME="ref_187_4">F_Clear_EOL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 38; -+ <span class="symbol"><A NAME="ref_188_4">F_Clear_EOF</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 39; -+ <span class="symbol"><A NAME="ref_189_4">F_Clear_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 40; -+ <span class="symbol"><A NAME="ref_190_4">F_Overlay_Mode</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 41; -+ <span class="symbol"><A NAME="ref_191_4">F_Insert_Mode</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 42; -+ -+ <span class="comment"><EM>-- Vertical Scrolling</EM></span> -+ <span class="symbol"><A NAME="ref_194_4">F_ScrollForward_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 43; -+ <span class="symbol"><A NAME="ref_195_4">F_ScrollBackward_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 44; -+ <span class="symbol"><A NAME="ref_196_4">F_ScrollForward_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 45; -+ <span class="symbol"><A NAME="ref_197_4">F_ScrollBackward_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 46; -+ <span class="symbol"><A NAME="ref_198_4">F_ScrollForward_HalfPage</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 47; -+ <span class="symbol"><A NAME="ref_199_4">F_ScrollBackward_HalfPage</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 48; -+ -+ <span class="comment"><EM>-- Horizontal Scrolling</EM></span> -+ <span class="symbol"><A NAME="ref_202_4">F_HScrollForward_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 49; -+ <span class="symbol"><A NAME="ref_203_4">F_HScrollBackward_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 50; -+ <span class="symbol"><A NAME="ref_204_4">F_HScrollForward_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 51; -+ <span class="symbol"><A NAME="ref_205_4">F_HScrollBackward_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 52; -+ <span class="symbol"><A NAME="ref_206_4">F_HScrollForward_HalfLine</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 53; -+ <span class="symbol"><A NAME="ref_207_4">F_HScrollBackward_HalfLine</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 54; -+ -+ <span class="symbol"><A NAME="ref_209_4">F_Validate_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 55; -+ <span class="symbol"><A NAME="ref_210_4">F_Next_Choice</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 56; -+ <span class="symbol"><A NAME="ref_211_4">F_Previous_Choice</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 57; -+ -+ <span class="comment"><EM>-- For those who like the old 'C' style request names</EM></span> -+ REQ_NEXT_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_147_4">F_Next_Page</A>; -+ REQ_PREV_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_148_4">F_Previous_Page</A>; -+ REQ_FIRST_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_149_4">F_First_Page</A>; -+ REQ_LAST_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_150_4">F_Last_Page</A>; -+ -+ REQ_NEXT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_152_4">F_Next_Field</A>; -+ REQ_PREV_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_153_4">F_Previous_Field</A>; -+ REQ_FIRST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_154_4">F_First_Field</A>; -+ REQ_LAST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_155_4">F_Last_Field</A>; -+ REQ_SNEXT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_156_4">F_Sorted_Next_Field</A>; -+ REQ_SPREV_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_157_4">F_Sorted_Previous_Field</A>; -+ REQ_SFIRST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_158_4">F_Sorted_First_Field</A>; -+ REQ_SLAST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_159_4">F_Sorted_Last_Field</A>; -+ REQ_LEFT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_160_4">F_Left_Field</A>; -+ REQ_RIGHT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_161_4">F_Right_Field</A>; -+ REQ_UP_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_162_4">F_Up_Field</A>; -+ REQ_DOWN_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_163_4">F_Down_Field</A>; -+ -+ REQ_NEXT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_165_4">F_Next_Char</A>; -+ REQ_PREV_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_166_4">F_Previous_Char</A>; -+ REQ_NEXT_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_167_4">F_Next_Line</A>; -+ REQ_PREV_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_168_4">F_Previous_Line</A>; -+ REQ_NEXT_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_169_4">F_Next_Word</A>; -+ REQ_PREV_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_170_4">F_Previous_Word</A>; -+ REQ_BEG_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_171_4">F_Begin_Field</A>; -+ REQ_END_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_172_4">F_End_Field</A>; -+ REQ_BEG_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_173_4">F_Begin_Line</A>; -+ REQ_END_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_174_4">F_End_Line</A>; -+ REQ_LEFT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_175_4">F_Left_Char</A>; -+ REQ_RIGHT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_176_4">F_Right_Char</A>; -+ REQ_UP_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_177_4">F_Up_Char</A>; -+ REQ_DOWN_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_178_4">F_Down_Char</A>; -+ -+ REQ_NEW_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_180_4">F_New_Line</A>; -+ REQ_INS_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_181_4">F_Insert_Char</A>; -+ REQ_INS_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_182_4">F_Insert_Line</A>; -+ REQ_DEL_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_183_4">F_Delete_Char</A>; -+ REQ_DEL_PREV : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_184_4">F_Delete_Previous</A>; -+ REQ_DEL_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_185_4">F_Delete_Line</A>; -+ REQ_DEL_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_186_4">F_Delete_Word</A>; -+ REQ_CLR_EOL : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_187_4">F_Clear_EOL</A>; -+ REQ_CLR_EOF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_188_4">F_Clear_EOF</A>; -+ REQ_CLR_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_189_4">F_Clear_Field</A>; -+ REQ_OVL_MODE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_190_4">F_Overlay_Mode</A>; -+ REQ_INS_MODE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_191_4">F_Insert_Mode</A>; -+ -+ REQ_SCR_FLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_194_4">F_ScrollForward_Line</A>; -+ REQ_SCR_BLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_195_4">F_ScrollBackward_Line</A>; -+ REQ_SCR_FPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_196_4">F_ScrollForward_Page</A>; -+ REQ_SCR_BPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_197_4">F_ScrollBackward_Page</A>; -+ REQ_SCR_FHPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_198_4">F_ScrollForward_HalfPage</A>; -+ REQ_SCR_BHPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_199_4">F_ScrollBackward_HalfPage</A>; -+ -+ REQ_SCR_FCHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_202_4">F_HScrollForward_Char</A>; -+ REQ_SCR_BCHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_203_4">F_HScrollBackward_Char</A>; -+ REQ_SCR_HFLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_204_4">F_HScrollForward_Line</A>; -+ REQ_SCR_HBLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_205_4">F_HScrollBackward_Line</A>; -+ REQ_SCR_HFHALF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_206_4">F_HScrollForward_HalfLine</A>; -+ REQ_SCR_HBHALF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_207_4">F_HScrollBackward_HalfLine</A>; -+ -+ REQ_VALIDATION : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_209_4">F_Validate_Field</A>; -+ REQ_NEXT_CHOICE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_210_4">F_Next_Choice</A>; -+ REQ_PREV_CHOICE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_211_4">F_Previous_Choice</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_280_14" HREF="terminal_interface-curses-forms__adb.htm#ref_81_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_280_28" HREF="terminal_interface-curses-forms__adb.htm#ref_81_28">Key</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A>; -- <FONT COLOR=red><A NAME="ref_281_28" HREF="terminal_interface-curses-forms__adb.htm#ref_82_33">Name</A></FONT> : <b>out</b> String); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_278_14" HREF="terminal_interface-curses-forms__adb.htm#ref_81_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_278_28" HREF="terminal_interface-curses-forms__adb.htm#ref_81_28">Key</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A>; -+ <span class="symbol"><A NAME="ref_279_28" HREF="terminal_interface-curses-forms__adb.htm#ref_82_33">Name</A></span> : <b>out</b> String); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_283_14" HREF="terminal_interface-curses-forms__adb.htm#ref_90_13">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_283_28" HREF="terminal_interface-curses-forms__adb.htm#ref_90_27">Key</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A>) <b>return</b> String; -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -+ <b>function</b> <span class="symbol"><A NAME="ref_281_14" HREF="terminal_interface-curses-forms__adb.htm#ref_90_13">Request_Name</A></span> (<span class="symbol"><A NAME="ref_281_28" HREF="terminal_interface-curses-forms__adb.htm#ref_90_27">Key</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_144_12">Form_Request_Code</A>) <b>return</b> String; -+ <span class="comment"><EM>-- Same as function</EM></span> - <b>pragma</b> Inline (Request_Name); - -- <FONT COLOR=green><EM>------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Exceptions --</EM></FONT> -- <FONT COLOR=green><EM>------------------</EM></FONT> -- <FONT COLOR=red><A NAME="ref_290_4">Form_Exception</A></FONT> : <b>exception</b>; -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_new.3x.html">form_field_new.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_297_13" HREF="terminal_interface-curses-forms__adb.htm#ref_108_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_297_21" HREF="terminal_interface-curses-forms__adb.htm#ref_108_21">Height</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_298_21" HREF="terminal_interface-curses-forms__adb.htm#ref_109_21">Width</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_299_21" HREF="terminal_interface-curses-forms__adb.htm#ref_110_21">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_300_21" HREF="terminal_interface-curses-forms__adb.htm#ref_111_21">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_301_21" HREF="terminal_interface-curses-forms__adb.htm#ref_112_21">Off_Screen</A></FONT> : Natural := 0; -- <FONT COLOR=red><A NAME="ref_302_21" HREF="terminal_interface-curses-forms__adb.htm#ref_113_21">More_Buffers</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) -+ <span class="comment"><EM>------------------</EM></span> -+ <span class="comment"><EM>-- Exceptions --</EM></span> -+ <span class="comment"><EM>------------------</EM></span> -+ <span class="symbol"><A NAME="ref_288_4">Form_Exception</A></span> : <b>exception</b>; -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_new.3x.html">form_field_new.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_295_13" HREF="terminal_interface-curses-forms__adb.htm#ref_108_13">Create</A></span> (<span class="symbol"><A NAME="ref_295_21" HREF="terminal_interface-curses-forms__adb.htm#ref_108_21">Height</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_296_21" HREF="terminal_interface-curses-forms__adb.htm#ref_109_21">Width</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_297_21" HREF="terminal_interface-curses-forms__adb.htm#ref_110_21">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_298_21" HREF="terminal_interface-curses-forms__adb.htm#ref_111_21">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_299_21" HREF="terminal_interface-curses-forms__adb.htm#ref_112_21">Off_Screen</A></span> : Natural := 0; -+ <span class="symbol"><A NAME="ref_300_21" HREF="terminal_interface-curses-forms__adb.htm#ref_113_21">More_Buffers</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First) - <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">new_field()</A></EM></FONT> -- <FONT COLOR=green><EM>-- An overloaded Create is defined later. Pragma Inline appears there.</EM></FONT> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">new_field()</A></EM></span> -+ <span class="comment"><EM>-- An overloaded Create is defined later. Pragma Inline appears there.</EM></span> - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>function</b> New_Field (<FONT COLOR=red><A NAME="ref_308_24">Height</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_309_24">Width</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_310_24">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_311_24">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_312_24">Off_Screen</A></FONT> : Natural := 0; -- <FONT COLOR=red><A NAME="ref_313_24">More_Buffers</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) -- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_297_13">Create</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">new_field()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>function</b> New_Field (<span class="symbol"><A NAME="ref_306_24">Height</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_307_24">Width</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_308_24">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_309_24">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_310_24">Off_Screen</A></span> : Natural := 0; -+ <span class="symbol"><A NAME="ref_311_24">More_Buffers</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First) -+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_295_13">Create</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">new_field()</A></EM></span> - <b>pragma</b> Inline (New_Field); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_319_14" HREF="terminal_interface-curses-forms__adb.htm#ref_131_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_319_22" HREF="terminal_interface-curses-forms__adb.htm#ref_131_22">Fld</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">free_field()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Reset Fld to Null_Field</EM></FONT> -- <FONT COLOR=green><EM>-- An overloaded Delete is defined later. Pragma Inline appears there.</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_325_13" HREF="terminal_interface-curses-forms__adb.htm#ref_147_13">Duplicate</A></FONT> (<FONT COLOR=red><A NAME="ref_325_24" HREF="terminal_interface-curses-forms__adb.htm#ref_147_24">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_326_24" HREF="terminal_interface-curses-forms__adb.htm#ref_148_24">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_327_24" HREF="terminal_interface-curses-forms__adb.htm#ref_149_24">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">dup_field()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_317_14" HREF="terminal_interface-curses-forms__adb.htm#ref_131_14">Delete</A></span> (<span class="symbol"><A NAME="ref_317_22" HREF="terminal_interface-curses-forms__adb.htm#ref_131_22">Fld</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">free_field()</A></EM></span> -+ <span class="comment"><EM>-- Reset Fld to Null_Field</EM></span> -+ <span class="comment"><EM>-- An overloaded Delete is defined later. Pragma Inline appears there.</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_323_13" HREF="terminal_interface-curses-forms__adb.htm#ref_147_13">Duplicate</A></span> (<span class="symbol"><A NAME="ref_323_24" HREF="terminal_interface-curses-forms__adb.htm#ref_147_24">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_324_24" HREF="terminal_interface-curses-forms__adb.htm#ref_148_24">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_325_24" HREF="terminal_interface-curses-forms__adb.htm#ref_149_24">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">dup_field()</A></EM></span> - <b>pragma</b> Inline (Duplicate); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_332_13" HREF="terminal_interface-curses-forms__adb.htm#ref_168_13">Link</A></FONT> (<FONT COLOR=red><A NAME="ref_332_19" HREF="terminal_interface-curses-forms__adb.htm#ref_168_19">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_333_19" HREF="terminal_interface-curses-forms__adb.htm#ref_169_19">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_334_19" HREF="terminal_interface-curses-forms__adb.htm#ref_170_19">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">link_field()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_332_13">Link</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_just.3x.html">form_field_just.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_6"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_343_14" HREF="terminal_interface-curses-forms__adb.htm#ref_193_14">Set_Justification</A></FONT> (<FONT COLOR=red><A NAME="ref_343_33" HREF="terminal_interface-curses-forms__adb.htm#ref_193_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_344_33" HREF="terminal_interface-curses-forms__adb.htm#ref_194_33">Just</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_33">None</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_just.3x.html">set_field_just()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_343_14">Set_Justification</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_7"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_349_13" HREF="terminal_interface-curses-forms__adb.htm#ref_211_13">Get_Justification</A></FONT> (<FONT COLOR=red><A NAME="ref_349_32" HREF="terminal_interface-curses-forms__adb.htm#ref_211_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_just.3x.html">field_just()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_349_13">Get_Justification</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_buffer.3x.html">form_field_buffer.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_8"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_358_14" HREF="terminal_interface-curses-forms__adb.htm#ref_225_14">Set_Buffer</A></FONT> -- (<FONT COLOR=red><A NAME="ref_359_7" HREF="terminal_interface-curses-forms__adb.htm#ref_226_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_360_7" HREF="terminal_interface-curses-forms__adb.htm#ref_227_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First; -- <FONT COLOR=red><A NAME="ref_361_7" HREF="terminal_interface-curses-forms__adb.htm#ref_228_7">Str</A></FONT> : String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_buffer()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Not inlined</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_9"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_366_14" HREF="terminal_interface-curses-forms__adb.htm#ref_250_14">Get_Buffer</A></FONT> -- (<FONT COLOR=red><A NAME="ref_367_7" HREF="terminal_interface-curses-forms__adb.htm#ref_251_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_368_7" HREF="terminal_interface-curses-forms__adb.htm#ref_252_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First; -- <FONT COLOR=red><A NAME="ref_369_7" HREF="terminal_interface-curses-forms__adb.htm#ref_253_7">Str</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_buffer()</A></EM></FONT> -- -- <b>function</b> <FONT COLOR=red><A NAME="ref_372_13" HREF="terminal_interface-curses-forms__adb.htm#ref_262_13">Get_Buffer</A></FONT> -- (<FONT COLOR=red><A NAME="ref_373_7" HREF="terminal_interface-curses-forms__adb.htm#ref_263_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_374_7" HREF="terminal_interface-curses-forms__adb.htm#ref_264_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) <b>return</b> String; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_buffer()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Same but as function</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_330_13" HREF="terminal_interface-curses-forms__adb.htm#ref_168_13">Link</A></span> (<span class="symbol"><A NAME="ref_330_19" HREF="terminal_interface-curses-forms__adb.htm#ref_168_19">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_331_19" HREF="terminal_interface-curses-forms__adb.htm#ref_169_19">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_332_19" HREF="terminal_interface-curses-forms__adb.htm#ref_170_19">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">link_field()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_330_13">Link</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_just.3x.html">form_field_just.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_6"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_341_14" HREF="terminal_interface-curses-forms__adb.htm#ref_193_14">Set_Justification</A></span> (<span class="symbol"><A NAME="ref_341_33" HREF="terminal_interface-curses-forms__adb.htm#ref_193_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_342_33" HREF="terminal_interface-curses-forms__adb.htm#ref_194_33">Just</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_33">None</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_just.3x.html">set_field_just()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_341_14">Set_Justification</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_7"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_347_13" HREF="terminal_interface-curses-forms__adb.htm#ref_211_13">Get_Justification</A></span> (<span class="symbol"><A NAME="ref_347_32" HREF="terminal_interface-curses-forms__adb.htm#ref_211_32">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_just.3x.html">field_just()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_347_13">Get_Justification</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_buffer.3x.html">form_field_buffer.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_8"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_356_14" HREF="terminal_interface-curses-forms__adb.htm#ref_225_14">Set_Buffer</A></span> -+ (<span class="symbol"><A NAME="ref_357_7" HREF="terminal_interface-curses-forms__adb.htm#ref_226_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_358_7" HREF="terminal_interface-curses-forms__adb.htm#ref_227_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First; -+ <span class="symbol"><A NAME="ref_359_7" HREF="terminal_interface-curses-forms__adb.htm#ref_228_7">Str</A></span> : String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_buffer()</A></EM></span> -+ <span class="comment"><EM>-- Not inlined</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_9"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_364_14" HREF="terminal_interface-curses-forms__adb.htm#ref_250_14">Get_Buffer</A></span> -+ (<span class="symbol"><A NAME="ref_365_7" HREF="terminal_interface-curses-forms__adb.htm#ref_251_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_366_7" HREF="terminal_interface-curses-forms__adb.htm#ref_252_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First; -+ <span class="symbol"><A NAME="ref_367_7" HREF="terminal_interface-curses-forms__adb.htm#ref_253_7">Str</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_buffer()</A></EM></span> -+ -+ <b>function</b> <span class="symbol"><A NAME="ref_370_13" HREF="terminal_interface-curses-forms__adb.htm#ref_262_13">Get_Buffer</A></span> -+ (<span class="symbol"><A NAME="ref_371_7" HREF="terminal_interface-curses-forms__adb.htm#ref_263_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_372_7" HREF="terminal_interface-curses-forms__adb.htm#ref_264_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First) <b>return</b> String; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_buffer()</A></EM></span> -+ <span class="comment"><EM>-- Same but as function</EM></span> - <b>pragma</b> Inline (Get_Buffer); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_10"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_380_14" HREF="terminal_interface-curses-forms__adb.htm#ref_275_14">Set_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_380_26" HREF="terminal_interface-curses-forms__adb.htm#ref_275_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_381_26" HREF="terminal_interface-curses-forms__adb.htm#ref_276_26">Status</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_status()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_380_14">Set_Status</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_11"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_386_13" HREF="terminal_interface-curses-forms__adb.htm#ref_291_13">Changed</A></FONT> (<FONT COLOR=red><A NAME="ref_386_22" HREF="terminal_interface-curses-forms__adb.htm#ref_291_22">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_status()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_386_13">Changed</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_12"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_391_14" HREF="terminal_interface-curses-forms__adb.htm#ref_307_14">Set_Maximum_Size</A></FONT> (<FONT COLOR=red><A NAME="ref_391_32" HREF="terminal_interface-curses-forms__adb.htm#ref_307_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_392_32" HREF="terminal_interface-curses-forms__adb.htm#ref_308_32">Max</A></FONT> : Natural := 0); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_max()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_391_14">Set_Maximum_Size</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_opts.3x.html">form_field_opts.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_13"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_401_14" HREF="terminal_interface-curses-forms__adb.htm#ref_327_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_401_27" HREF="terminal_interface-curses-forms__adb.htm#ref_327_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_402_27" HREF="terminal_interface-curses-forms__adb.htm#ref_328_27">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">set_field_opts()</A></EM></FONT> -- <FONT COLOR=green><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_14"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_407_14" HREF="terminal_interface-curses-forms__adb.htm#ref_345_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_407_30" HREF="terminal_interface-curses-forms__adb.htm#ref_345_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_408_30" HREF="terminal_interface-curses-forms__adb.htm#ref_346_30">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>; -- <FONT COLOR=red><A NAME="ref_409_30" HREF="terminal_interface-curses-forms__adb.htm#ref_347_30">On</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts_on()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: field_opts_off()</EM></FONT> -- <FONT COLOR=green><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_15"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_415_14" HREF="terminal_interface-curses-forms__adb.htm#ref_371_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_415_27" HREF="terminal_interface-curses-forms__adb.htm#ref_371_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_416_27" HREF="terminal_interface-curses-forms__adb.htm#ref_372_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_10"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_378_14" HREF="terminal_interface-curses-forms__adb.htm#ref_275_14">Set_Status</A></span> (<span class="symbol"><A NAME="ref_378_26" HREF="terminal_interface-curses-forms__adb.htm#ref_275_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_379_26" HREF="terminal_interface-curses-forms__adb.htm#ref_276_26">Status</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_status()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_378_14">Set_Status</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_11"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_384_13" HREF="terminal_interface-curses-forms__adb.htm#ref_291_13">Changed</A></span> (<span class="symbol"><A NAME="ref_384_22" HREF="terminal_interface-curses-forms__adb.htm#ref_291_22">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_status()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_384_13">Changed</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_12"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_389_14" HREF="terminal_interface-curses-forms__adb.htm#ref_307_14">Set_Maximum_Size</A></span> (<span class="symbol"><A NAME="ref_389_32" HREF="terminal_interface-curses-forms__adb.htm#ref_307_32">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_390_32" HREF="terminal_interface-curses-forms__adb.htm#ref_308_32">Max</A></span> : Natural := 0); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_max()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_389_14">Set_Maximum_Size</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_opts.3x.html">form_field_opts.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_13"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_399_14" HREF="terminal_interface-curses-forms__adb.htm#ref_327_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_399_27" HREF="terminal_interface-curses-forms__adb.htm#ref_327_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_400_27" HREF="terminal_interface-curses-forms__adb.htm#ref_328_27">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">set_field_opts()</A></EM></span> -+ <span class="comment"><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_14"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_405_14" HREF="terminal_interface-curses-forms__adb.htm#ref_345_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_405_30" HREF="terminal_interface-curses-forms__adb.htm#ref_345_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_406_30" HREF="terminal_interface-curses-forms__adb.htm#ref_346_30">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_407_30" HREF="terminal_interface-curses-forms__adb.htm#ref_347_30">On</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts_on()</A></EM></span> -+ <span class="comment"><EM>-- AKA: field_opts_off()</EM></span> -+ <span class="comment"><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_15"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_413_14" HREF="terminal_interface-curses-forms__adb.htm#ref_371_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_413_27" HREF="terminal_interface-curses-forms__adb.htm#ref_371_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_414_27" HREF="terminal_interface-curses-forms__adb.htm#ref_372_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts()</A></EM></span> - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_16"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_420_13" HREF="terminal_interface-curses-forms__adb.htm#ref_384_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_420_26" HREF="terminal_interface-curses-forms__adb.htm#ref_384_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>) -+ <span class="comment"><EM>-- #1A NAME="AFU_16"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_418_13" HREF="terminal_interface-curses-forms__adb.htm#ref_384_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_418_26" HREF="terminal_interface-curses-forms__adb.htm#ref_384_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>) - <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts()</A></EM></FONT> -- <FONT COLOR=green><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></FONT> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts()</A></EM></span> -+ <span class="comment"><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></span> - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_attributes.3x.html">form_field_attributes.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_17"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_430_14" HREF="terminal_interface-curses-forms__adb.htm#ref_399_14">Set_Foreground</A></FONT> -- (<FONT COLOR=red><A NAME="ref_431_7" HREF="terminal_interface-curses-forms__adb.htm#ref_400_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_432_7" HREF="terminal_interface-curses-forms__adb.htm#ref_401_7">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_433_7" HREF="terminal_interface-curses-forms__adb.htm#ref_402_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_fore()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_430_14">Set_Foreground</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_18"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_438_14" HREF="terminal_interface-curses-forms__adb.htm#ref_421_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_438_26" HREF="terminal_interface-curses-forms__adb.htm#ref_421_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_439_26" HREF="terminal_interface-curses-forms__adb.htm#ref_422_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_fore()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_19"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_443_14" HREF="terminal_interface-curses-forms__adb.htm#ref_430_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_443_26" HREF="terminal_interface-curses-forms__adb.htm#ref_430_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_444_26" HREF="terminal_interface-curses-forms__adb.htm#ref_431_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_445_26" HREF="terminal_interface-curses-forms__adb.htm#ref_432_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_fore()</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_attributes.3x.html">form_field_attributes.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_17"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_428_14" HREF="terminal_interface-curses-forms__adb.htm#ref_399_14">Set_Foreground</A></span> -+ (<span class="symbol"><A NAME="ref_429_7" HREF="terminal_interface-curses-forms__adb.htm#ref_400_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_430_7" HREF="terminal_interface-curses-forms__adb.htm#ref_401_7">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_431_7" HREF="terminal_interface-curses-forms__adb.htm#ref_402_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_fore()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_428_14">Set_Foreground</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_18"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_436_14" HREF="terminal_interface-curses-forms__adb.htm#ref_421_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_436_26" HREF="terminal_interface-curses-forms__adb.htm#ref_421_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_437_26" HREF="terminal_interface-curses-forms__adb.htm#ref_422_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_fore()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_19"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_441_14" HREF="terminal_interface-curses-forms__adb.htm#ref_430_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_441_26" HREF="terminal_interface-curses-forms__adb.htm#ref_430_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_442_26" HREF="terminal_interface-curses-forms__adb.htm#ref_431_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_443_26" HREF="terminal_interface-curses-forms__adb.htm#ref_432_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_fore()</A></EM></span> - <b>pragma</b> Inline (Foreground); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_20"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_450_14" HREF="terminal_interface-curses-forms__adb.htm#ref_443_14">Set_Background</A></FONT> -- (<FONT COLOR=red><A NAME="ref_451_7" HREF="terminal_interface-curses-forms__adb.htm#ref_444_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_452_7" HREF="terminal_interface-curses-forms__adb.htm#ref_445_7">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_453_7" HREF="terminal_interface-curses-forms__adb.htm#ref_446_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_back()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_20"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_448_14" HREF="terminal_interface-curses-forms__adb.htm#ref_443_14">Set_Background</A></span> -+ (<span class="symbol"><A NAME="ref_449_7" HREF="terminal_interface-curses-forms__adb.htm#ref_444_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_450_7" HREF="terminal_interface-curses-forms__adb.htm#ref_445_7">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_451_7" HREF="terminal_interface-curses-forms__adb.htm#ref_446_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_back()</A></EM></span> - <b>pragma</b> Inline (Set_Background); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_21"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_458_14" HREF="terminal_interface-curses-forms__adb.htm#ref_465_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_458_26" HREF="terminal_interface-curses-forms__adb.htm#ref_465_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_459_26" HREF="terminal_interface-curses-forms__adb.htm#ref_466_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_back()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_22"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_463_14" HREF="terminal_interface-curses-forms__adb.htm#ref_474_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_463_26" HREF="terminal_interface-curses-forms__adb.htm#ref_474_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_464_26" HREF="terminal_interface-curses-forms__adb.htm#ref_475_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_465_26" HREF="terminal_interface-curses-forms__adb.htm#ref_476_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_back()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_21"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_456_14" HREF="terminal_interface-curses-forms__adb.htm#ref_465_14">Background</A></span> (<span class="symbol"><A NAME="ref_456_26" HREF="terminal_interface-curses-forms__adb.htm#ref_465_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_457_26" HREF="terminal_interface-curses-forms__adb.htm#ref_466_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_back()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_22"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_461_14" HREF="terminal_interface-curses-forms__adb.htm#ref_474_14">Background</A></span> (<span class="symbol"><A NAME="ref_461_26" HREF="terminal_interface-curses-forms__adb.htm#ref_474_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_462_26" HREF="terminal_interface-curses-forms__adb.htm#ref_475_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_463_26" HREF="terminal_interface-curses-forms__adb.htm#ref_476_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_back()</A></EM></span> - <b>pragma</b> Inline (Background); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_23"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_470_14" HREF="terminal_interface-curses-forms__adb.htm#ref_487_14">Set_Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_470_33" HREF="terminal_interface-curses-forms__adb.htm#ref_487_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_471_33" HREF="terminal_interface-curses-forms__adb.htm#ref_488_33">Pad</A></FONT> : Character := Space); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_pad()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_470_14">Set_Pad_Character</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_24"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_476_14" HREF="terminal_interface-curses-forms__adb.htm#ref_504_14">Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_476_29" HREF="terminal_interface-curses-forms__adb.htm#ref_504_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_477_29" HREF="terminal_interface-curses-forms__adb.htm#ref_505_29">Pad</A></FONT> : <b>out</b> Character); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_pad()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_476_14">Pad_Character</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_info.3x.html">form_field_info.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_25"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_486_14" HREF="terminal_interface-curses-forms__adb.htm#ref_519_14">Info</A></FONT> (<FONT COLOR=red><A NAME="ref_486_20" HREF="terminal_interface-curses-forms__adb.htm#ref_519_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_487_20" HREF="terminal_interface-curses-forms__adb.htm#ref_520_20">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_488_20" HREF="terminal_interface-curses-forms__adb.htm#ref_521_20">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_489_20" HREF="terminal_interface-curses-forms__adb.htm#ref_522_20">First_Row</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_490_20" HREF="terminal_interface-curses-forms__adb.htm#ref_523_20">First_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_491_20" HREF="terminal_interface-curses-forms__adb.htm#ref_524_20">Off_Screen</A></FONT> : <b>out</b> Natural; -- <FONT COLOR=red><A NAME="ref_492_20" HREF="terminal_interface-curses-forms__adb.htm#ref_525_20">Additional_Buffers</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_info.3x.html">field_info()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_486_14">Info</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_26"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_497_14" HREF="terminal_interface-curses-forms__adb.htm#ref_553_14">Dynamic_Info</A></FONT> (<FONT COLOR=red><A NAME="ref_497_28" HREF="terminal_interface-curses-forms__adb.htm#ref_553_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_498_28" HREF="terminal_interface-curses-forms__adb.htm#ref_554_28">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_499_28" HREF="terminal_interface-curses-forms__adb.htm#ref_555_28">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_500_28" HREF="terminal_interface-curses-forms__adb.htm#ref_556_28">Max</A></FONT> : <b>out</b> Natural); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_info.3x.html">dynamic_field_info()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_497_14">Dynamic_Info</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_win.3x.html">form_win.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_27"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_509_14" HREF="terminal_interface-curses-forms__adb.htm#ref_582_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_509_26" HREF="terminal_interface-curses-forms__adb.htm#ref_582_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_510_26" HREF="terminal_interface-curses-forms__adb.htm#ref_583_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_win.3x.html">set_form_win()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_509_14">Set_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_28"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_515_13" HREF="terminal_interface-curses-forms__adb.htm#ref_598_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_515_25" HREF="terminal_interface-curses-forms__adb.htm#ref_598_25">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_win.3x.html">form_win()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_515_13">Get_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_29"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_520_14" HREF="terminal_interface-curses-forms__adb.htm#ref_610_14">Set_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_520_30" HREF="terminal_interface-curses-forms__adb.htm#ref_610_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_521_30" HREF="terminal_interface-curses-forms__adb.htm#ref_611_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_win.3x.html">set_form_sub()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_520_14">Set_Sub_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_30"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_526_13" HREF="terminal_interface-curses-forms__adb.htm#ref_626_13">Get_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_526_29" HREF="terminal_interface-curses-forms__adb.htm#ref_626_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_win.3x.html">form_sub()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_526_13">Get_Sub_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_31"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_531_14" HREF="terminal_interface-curses-forms__adb.htm#ref_638_14">Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_531_21" HREF="terminal_interface-curses-forms__adb.htm#ref_638_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_532_21" HREF="terminal_interface-curses-forms__adb.htm#ref_639_21">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_533_21" HREF="terminal_interface-curses-forms__adb.htm#ref_640_21">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_win.3x.html">scale_form()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_531_14">Scale</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_hook.3x.html">form_hook.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_541_9">Form_Hook_Function</A></FONT> <b>is</b> <b>access</b> <b>procedure</b> (<FONT COLOR=red><A NAME="ref_541_49">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>); -- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_32"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_545_14" HREF="terminal_interface-curses-forms__adb.htm#ref_662_14">Set_Field_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_545_35" HREF="terminal_interface-curses-forms__adb.htm#ref_662_35">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_546_35" HREF="terminal_interface-curses-forms__adb.htm#ref_663_35">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_field_init()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_545_14">Set_Field_Init_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_33"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_551_14" HREF="terminal_interface-curses-forms__adb.htm#ref_678_14">Set_Field_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_551_35" HREF="terminal_interface-curses-forms__adb.htm#ref_678_35">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_552_35" HREF="terminal_interface-curses-forms__adb.htm#ref_679_35">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_field_term()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_551_14">Set_Field_Term_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_34"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_557_14" HREF="terminal_interface-curses-forms__adb.htm#ref_694_14">Set_Form_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_557_34" HREF="terminal_interface-curses-forms__adb.htm#ref_694_34">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_558_34" HREF="terminal_interface-curses-forms__adb.htm#ref_695_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_form_init()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_557_14">Set_Form_Init_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_35"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_563_14" HREF="terminal_interface-curses-forms__adb.htm#ref_710_14">Set_Form_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_563_34" HREF="terminal_interface-curses-forms__adb.htm#ref_710_34">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_564_34" HREF="terminal_interface-curses-forms__adb.htm#ref_711_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_form_term()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_563_14">Set_Form_Term_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_36"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_569_13">Get_Field_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_569_34" HREF="terminal_interface-curses-forms__ads.htm#ref_569_13">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">field_init()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_23"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_468_14" HREF="terminal_interface-curses-forms__adb.htm#ref_487_14">Set_Pad_Character</A></span> (<span class="symbol"><A NAME="ref_468_33" HREF="terminal_interface-curses-forms__adb.htm#ref_487_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_469_33" HREF="terminal_interface-curses-forms__adb.htm#ref_488_33">Pad</A></span> : Character := Space); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_pad()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_468_14">Set_Pad_Character</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_24"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_474_14" HREF="terminal_interface-curses-forms__adb.htm#ref_504_14">Pad_Character</A></span> (<span class="symbol"><A NAME="ref_474_29" HREF="terminal_interface-curses-forms__adb.htm#ref_504_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_475_29" HREF="terminal_interface-curses-forms__adb.htm#ref_505_29">Pad</A></span> : <b>out</b> Character); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_pad()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_474_14">Pad_Character</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_info.3x.html">form_field_info.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_25"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_484_14" HREF="terminal_interface-curses-forms__adb.htm#ref_519_14">Info</A></span> (<span class="symbol"><A NAME="ref_484_20" HREF="terminal_interface-curses-forms__adb.htm#ref_519_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_485_20" HREF="terminal_interface-curses-forms__adb.htm#ref_520_20">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_486_20" HREF="terminal_interface-curses-forms__adb.htm#ref_521_20">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_487_20" HREF="terminal_interface-curses-forms__adb.htm#ref_522_20">First_Row</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_488_20" HREF="terminal_interface-curses-forms__adb.htm#ref_523_20">First_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_489_20" HREF="terminal_interface-curses-forms__adb.htm#ref_524_20">Off_Screen</A></span> : <b>out</b> Natural; -+ <span class="symbol"><A NAME="ref_490_20" HREF="terminal_interface-curses-forms__adb.htm#ref_525_20">Additional_Buffers</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_info.3x.html">field_info()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_484_14">Info</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_26"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_495_14" HREF="terminal_interface-curses-forms__adb.htm#ref_553_14">Dynamic_Info</A></span> (<span class="symbol"><A NAME="ref_495_28" HREF="terminal_interface-curses-forms__adb.htm#ref_553_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_496_28" HREF="terminal_interface-curses-forms__adb.htm#ref_554_28">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_497_28" HREF="terminal_interface-curses-forms__adb.htm#ref_555_28">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_498_28" HREF="terminal_interface-curses-forms__adb.htm#ref_556_28">Max</A></span> : <b>out</b> Natural); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_info.3x.html">dynamic_field_info()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_495_14">Dynamic_Info</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_win.3x.html">form_win.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_27"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_507_14" HREF="terminal_interface-curses-forms__adb.htm#ref_582_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_507_26" HREF="terminal_interface-curses-forms__adb.htm#ref_582_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_508_26" HREF="terminal_interface-curses-forms__adb.htm#ref_583_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_win.3x.html">set_form_win()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_507_14">Set_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_28"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_513_13" HREF="terminal_interface-curses-forms__adb.htm#ref_598_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_513_25" HREF="terminal_interface-curses-forms__adb.htm#ref_598_25">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_win.3x.html">form_win()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_513_13">Get_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_29"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_518_14" HREF="terminal_interface-curses-forms__adb.htm#ref_610_14">Set_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_518_30" HREF="terminal_interface-curses-forms__adb.htm#ref_610_30">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_519_30" HREF="terminal_interface-curses-forms__adb.htm#ref_611_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_win.3x.html">set_form_sub()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_518_14">Set_Sub_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_30"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_524_13" HREF="terminal_interface-curses-forms__adb.htm#ref_626_13">Get_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_524_29" HREF="terminal_interface-curses-forms__adb.htm#ref_626_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_win.3x.html">form_sub()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_524_13">Get_Sub_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_31"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_529_14" HREF="terminal_interface-curses-forms__adb.htm#ref_638_14">Scale</A></span> (<span class="symbol"><A NAME="ref_529_21" HREF="terminal_interface-curses-forms__adb.htm#ref_638_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_530_21" HREF="terminal_interface-curses-forms__adb.htm#ref_639_21">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_531_21" HREF="terminal_interface-curses-forms__adb.htm#ref_640_21">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_win.3x.html">scale_form()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_529_14">Scale</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_hook.3x.html">form_hook.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_539_9">Form_Hook_Function</A></span> <b>is</b> <b>access</b> <b>procedure</b> (<span class="symbol"><A NAME="ref_539_49">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>); -+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_32"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_543_14" HREF="terminal_interface-curses-forms__adb.htm#ref_662_14">Set_Field_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_543_35" HREF="terminal_interface-curses-forms__adb.htm#ref_662_35">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_544_35" HREF="terminal_interface-curses-forms__adb.htm#ref_663_35">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_field_init()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_543_14">Set_Field_Init_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_33"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_549_14" HREF="terminal_interface-curses-forms__adb.htm#ref_678_14">Set_Field_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_549_35" HREF="terminal_interface-curses-forms__adb.htm#ref_678_35">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_550_35" HREF="terminal_interface-curses-forms__adb.htm#ref_679_35">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_field_term()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_549_14">Set_Field_Term_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_34"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_555_14" HREF="terminal_interface-curses-forms__adb.htm#ref_694_14">Set_Form_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_555_34" HREF="terminal_interface-curses-forms__adb.htm#ref_694_34">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_556_34" HREF="terminal_interface-curses-forms__adb.htm#ref_695_34">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_form_init()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_555_14">Set_Form_Init_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_35"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_561_14" HREF="terminal_interface-curses-forms__adb.htm#ref_710_14">Set_Form_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_561_34" HREF="terminal_interface-curses-forms__adb.htm#ref_710_34">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_562_34" HREF="terminal_interface-curses-forms__adb.htm#ref_711_34">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_form_term()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_561_14">Set_Form_Term_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_36"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_567_13">Get_Field_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_567_34" HREF="terminal_interface-curses-forms__ads.htm#ref_567_13">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">field_init()</A></EM></span> - <b>pragma</b> Import (C, Get_Field_Init_Hook, "field_init"); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_37"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_574_13">Get_Field_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_574_34" HREF="terminal_interface-curses-forms__ads.htm#ref_574_13">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">field_term()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_37"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_572_13">Get_Field_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_572_34" HREF="terminal_interface-curses-forms__ads.htm#ref_572_13">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">field_term()</A></EM></span> - <b>pragma</b> Import (C, Get_Field_Term_Hook, "field_term"); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_38"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_579_13">Get_Form_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_579_33" HREF="terminal_interface-curses-forms__ads.htm#ref_579_13">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">form_init()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_38"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_577_13">Get_Form_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_577_33" HREF="terminal_interface-curses-forms__ads.htm#ref_577_13">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">form_init()</A></EM></span> - <b>pragma</b> Import (C, Get_Form_Init_Hook, "form_init"); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_39"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_584_13">Get_Form_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_584_33" HREF="terminal_interface-curses-forms__ads.htm#ref_584_13">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">form_term()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_39"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_582_13">Get_Form_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_582_33" HREF="terminal_interface-curses-forms__ads.htm#ref_582_13">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_539_9">Form_Hook_Function</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">form_term()</A></EM></span> - <b>pragma</b> Import (C, Get_Form_Term_Hook, "form_term"); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field.3x.html">form_field.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_40"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_593_14" HREF="terminal_interface-curses-forms__adb.htm#ref_730_14">Redefine</A></FONT> (<FONT COLOR=red><A NAME="ref_593_24" HREF="terminal_interface-curses-forms__adb.htm#ref_730_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_594_24" HREF="terminal_interface-curses-forms__adb.htm#ref_731_24">Flds</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field.3x.html">set_form_fields()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_593_14">Redefine</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_41"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_599_14">Set_Fields</A></FONT> (<FONT COLOR=red><A NAME="ref_599_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_600_26">Flds</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>) <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_593_14">Redefine</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field.3x.html">set_form_fields()</A></EM></FONT> -- <FONT COLOR=green><EM>-- pragma Inline (Set_Fields);</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_42"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_605_13" HREF="terminal_interface-curses-forms__adb.htm#ref_752_13">Fields</A></FONT> (<FONT COLOR=red><A NAME="ref_605_21" HREF="terminal_interface-curses-forms__adb.htm#ref_752_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_606_21" HREF="terminal_interface-curses-forms__adb.htm#ref_753_21">Index</A></FONT> : Positive) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field.3x.html">form_fields()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_605_13">Fields</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_43"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_611_13" HREF="terminal_interface-curses-forms__adb.htm#ref_772_13">Field_Count</A></FONT> (<FONT COLOR=red><A NAME="ref_611_26" HREF="terminal_interface-curses-forms__adb.htm#ref_772_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Natural; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field.3x.html">field_count()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_611_13">Field_Count</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_44"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_616_14" HREF="terminal_interface-curses-forms__adb.htm#ref_782_14">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_616_20" HREF="terminal_interface-curses-forms__adb.htm#ref_782_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_617_20" HREF="terminal_interface-curses-forms__adb.htm#ref_783_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_618_20" HREF="terminal_interface-curses-forms__adb.htm#ref_784_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field.3x.html">move_field()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_616_14">Move</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_new.3x.html">form_new.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_45"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_627_13" HREF="terminal_interface-curses-forms__adb.htm#ref_802_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_627_21" HREF="terminal_interface-curses-forms__adb.htm#ref_802_21">Fields</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_new.3x.html">new_form()</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field.3x.html">form_field.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_40"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_591_14" HREF="terminal_interface-curses-forms__adb.htm#ref_730_14">Redefine</A></span> (<span class="symbol"><A NAME="ref_591_24" HREF="terminal_interface-curses-forms__adb.htm#ref_730_24">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_592_24" HREF="terminal_interface-curses-forms__adb.htm#ref_731_24">Flds</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_136_9">Field_Array_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field.3x.html">set_form_fields()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_591_14">Redefine</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_41"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_597_14">Set_Fields</A></span> (<span class="symbol"><A NAME="ref_597_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_598_26">Flds</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_136_9">Field_Array_Access</A>) <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_591_14">Redefine</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field.3x.html">set_form_fields()</A></EM></span> -+ <span class="comment"><EM>-- pragma Inline (Set_Fields);</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_42"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_603_13" HREF="terminal_interface-curses-forms__adb.htm#ref_752_13">Fields</A></span> (<span class="symbol"><A NAME="ref_603_21" HREF="terminal_interface-curses-forms__adb.htm#ref_752_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_604_21" HREF="terminal_interface-curses-forms__adb.htm#ref_753_21">Index</A></span> : Positive) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field.3x.html">form_fields()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_603_13">Fields</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_43"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_609_13" HREF="terminal_interface-curses-forms__adb.htm#ref_772_13">Field_Count</A></span> (<span class="symbol"><A NAME="ref_609_26" HREF="terminal_interface-curses-forms__adb.htm#ref_772_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Natural; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field.3x.html">field_count()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_609_13">Field_Count</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_44"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_614_14" HREF="terminal_interface-curses-forms__adb.htm#ref_782_14">Move</A></span> (<span class="symbol"><A NAME="ref_614_20" HREF="terminal_interface-curses-forms__adb.htm#ref_782_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_615_20" HREF="terminal_interface-curses-forms__adb.htm#ref_783_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_616_20" HREF="terminal_interface-curses-forms__adb.htm#ref_784_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field.3x.html">move_field()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_614_14">Move</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_new.3x.html">form_new.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_45"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_625_13" HREF="terminal_interface-curses-forms__adb.htm#ref_802_13">Create</A></span> (<span class="symbol"><A NAME="ref_625_21" HREF="terminal_interface-curses-forms__adb.htm#ref_802_21">Fields</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_136_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_new.3x.html">new_form()</A></EM></span> - <b>pragma</b> Inline (Create); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_46"#2|</EM></FONT> -- <b>function</b> New_Form (<FONT COLOR=red><A NAME="ref_632_23">Fields</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> -- <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_627_13">Create</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_new.3x.html">new_form()</A></EM></FONT> -- <FONT COLOR=green><EM>-- pragma Inline (New_Form);</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_47"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_638_14" HREF="terminal_interface-curses-forms__adb.htm#ref_823_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_638_22" HREF="terminal_interface-curses-forms__adb.htm#ref_823_22">Frm</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_new.3x.html">free_form()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Reset Frm to Null_Form</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_46"#2|</EM></span> -+ <b>function</b> New_Form (<span class="symbol"><A NAME="ref_630_23">Fields</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_136_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> -+ <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_625_13">Create</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_new.3x.html">new_form()</A></EM></span> -+ <span class="comment"><EM>-- pragma Inline (New_Form);</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_47"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_636_14" HREF="terminal_interface-curses-forms__adb.htm#ref_823_14">Delete</A></span> (<span class="symbol"><A NAME="ref_636_22" HREF="terminal_interface-curses-forms__adb.htm#ref_823_22">Frm</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_new.3x.html">free_form()</A></EM></span> -+ <span class="comment"><EM>-- Reset Frm to Null_Form</EM></span> - <b>pragma</b> Inline (Delete); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_opts.3x.html">form_opts.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_48"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_648_14" HREF="terminal_interface-curses-forms__adb.htm#ref_842_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_648_27" HREF="terminal_interface-curses-forms__adb.htm#ref_842_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_649_27" HREF="terminal_interface-curses-forms__adb.htm#ref_843_27">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_opts.3x.html">set_form_opts()</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_opts.3x.html">form_opts.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_48"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_646_14" HREF="terminal_interface-curses-forms__adb.htm#ref_842_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_646_27" HREF="terminal_interface-curses-forms__adb.htm#ref_842_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_647_27" HREF="terminal_interface-curses-forms__adb.htm#ref_843_27">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_opts.3x.html">set_form_opts()</A></EM></span> - <b>pragma</b> Inline (Set_Options); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_49"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_654_14" HREF="terminal_interface-curses-forms__adb.htm#ref_860_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_654_30" HREF="terminal_interface-curses-forms__adb.htm#ref_860_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_655_30" HREF="terminal_interface-curses-forms__adb.htm#ref_861_30">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>; -- <FONT COLOR=red><A NAME="ref_656_30" HREF="terminal_interface-curses-forms__adb.htm#ref_862_30">On</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts_on()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: form_opts_off()</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_49"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_652_14" HREF="terminal_interface-curses-forms__adb.htm#ref_860_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_652_30" HREF="terminal_interface-curses-forms__adb.htm#ref_860_30">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_653_30" HREF="terminal_interface-curses-forms__adb.htm#ref_861_30">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_654_30" HREF="terminal_interface-curses-forms__adb.htm#ref_862_30">On</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts_on()</A></EM></span> -+ <span class="comment"><EM>-- AKA: form_opts_off()</EM></span> - <b>pragma</b> Inline (Switch_Options); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_50"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_662_14" HREF="terminal_interface-curses-forms__adb.htm#ref_886_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_662_27" HREF="terminal_interface-curses-forms__adb.htm#ref_886_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_663_27" HREF="terminal_interface-curses-forms__adb.htm#ref_887_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_51"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_667_13" HREF="terminal_interface-curses-forms__adb.htm#ref_899_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_667_26" HREF="terminal_interface-curses-forms__adb.htm#ref_899_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_50"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_660_14" HREF="terminal_interface-curses-forms__adb.htm#ref_886_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_660_27" HREF="terminal_interface-curses-forms__adb.htm#ref_886_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_661_27" HREF="terminal_interface-curses-forms__adb.htm#ref_887_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_51"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_665_13" HREF="terminal_interface-curses-forms__adb.htm#ref_899_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_665_26" HREF="terminal_interface-curses-forms__adb.htm#ref_899_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts()</A></EM></span> - <b>pragma</b> Inline (Get_Options); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_post.3x.html">form_post.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_52"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_676_14" HREF="terminal_interface-curses-forms__adb.htm#ref_913_14">Post</A></FONT> (<FONT COLOR=red><A NAME="ref_676_20" HREF="terminal_interface-curses-forms__adb.htm#ref_913_20">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_677_20" HREF="terminal_interface-curses-forms__adb.htm#ref_914_20">Post</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_post.3x.html">post_form()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: unpost_form()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_676_14">Post</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_cursor.3x.html">form_cursor.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_53"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_687_14" HREF="terminal_interface-curses-forms__adb.htm#ref_939_14">Position_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_687_31" HREF="terminal_interface-curses-forms__adb.htm#ref_939_31">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_cursor.3x.html">pos_form_cursor()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_687_14">Position_Cursor</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_data.3x.html">form_data.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_54"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_696_13" HREF="terminal_interface-curses-forms__adb.htm#ref_957_13">Data_Ahead</A></FONT> (<FONT COLOR=red><A NAME="ref_696_25" HREF="terminal_interface-curses-forms__adb.htm#ref_957_25">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_data.3x.html">data_ahead()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_696_13">Data_Ahead</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_55"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_701_13" HREF="terminal_interface-curses-forms__adb.htm#ref_973_13">Data_Behind</A></FONT> (<FONT COLOR=red><A NAME="ref_701_26" HREF="terminal_interface-curses-forms__adb.htm#ref_973_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_data.3x.html">data_behind()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_701_13">Data_Behind</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_driver.3x.html">form_driver.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_709_9">Driver_Result</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_709_27">Form_Ok</A></FONT>, -- <FONT COLOR=red><A NAME="ref_710_27">Request_Denied</A></FONT>, -- <FONT COLOR=red><A NAME="ref_711_27">Unknown_Request</A></FONT>, -- <FONT COLOR=red><A NAME="ref_712_27">Invalid_Field</A></FONT>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_56"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_715_13" HREF="terminal_interface-curses-forms__adb.htm#ref_993_13">Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_715_21" HREF="terminal_interface-curses-forms__adb.htm#ref_993_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_716_21" HREF="terminal_interface-curses-forms__adb.htm#ref_994_21">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_709_9">Driver_Result</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_driver.3x.html">form_driver()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Driver not inlined</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_page.3x.html">form_page.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_724_9">Page_Number</A></FONT> <b>is</b> <b>new</b> Natural; -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_57"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_727_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1023_14">Set_Current</A></FONT> (<FONT COLOR=red><A NAME="ref_727_27" HREF="terminal_interface-curses-forms__adb.htm#ref_1023_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_728_27" HREF="terminal_interface-curses-forms__adb.htm#ref_1024_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_page.3x.html">set_current_field()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_727_14">Set_Current</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_58"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_733_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1038_13">Current</A></FONT> (<FONT COLOR=red><A NAME="ref_733_22" HREF="terminal_interface-curses-forms__adb.htm#ref_1038_22">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_page.3x.html">current_field()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_733_13">Current</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_59"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_738_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1053_14">Set_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_738_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1053_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_739_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1054_24">Page</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A>'First); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_page.3x.html">set_form_page()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_738_14">Set_Page</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_60"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_744_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1068_13">Page</A></FONT> (<FONT COLOR=red><A NAME="ref_744_19" HREF="terminal_interface-curses-forms__adb.htm#ref_1068_19">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_page.3x.html">form_page()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_744_13">Page</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_61"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_749_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1082_13">Get_Index</A></FONT> (<FONT COLOR=red><A NAME="ref_749_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1082_24">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Positive; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_page.3x.html">field_index()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Please note that in this binding we start the numbering of fields</EM></FONT> -- <FONT COLOR=green><EM>-- with 1. So this is number is one more than you get from the low</EM></FONT> -- <FONT COLOR=green><EM>-- level call.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_749_13">Get_Index</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_new_page.3x.html">form_new_page.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_62"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_761_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1102_14">Set_New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_761_28" HREF="terminal_interface-curses-forms__adb.htm#ref_1102_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_762_28" HREF="terminal_interface-curses-forms__adb.htm#ref_1103_28">New_Page</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_new_page.3x.html">set_new_page()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_761_14">Set_New_Page</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_63"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_767_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1117_13">Is_New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_767_26" HREF="terminal_interface-curses-forms__adb.htm#ref_1117_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_new_page.3x.html">new_page()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_767_13">Is_New_Page</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_requestname.3x.html">form_requestname.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- Not Implemented: form_request_name, form_request_by_name</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_post.3x.html">form_post.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_52"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_674_14" HREF="terminal_interface-curses-forms__adb.htm#ref_913_14">Post</A></span> (<span class="symbol"><A NAME="ref_674_20" HREF="terminal_interface-curses-forms__adb.htm#ref_913_20">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_675_20" HREF="terminal_interface-curses-forms__adb.htm#ref_914_20">Post</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_post.3x.html">post_form()</A></EM></span> -+ <span class="comment"><EM>-- AKA: unpost_form()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_674_14">Post</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_cursor.3x.html">form_cursor.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_53"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_685_14" HREF="terminal_interface-curses-forms__adb.htm#ref_939_14">Position_Cursor</A></span> (<span class="symbol"><A NAME="ref_685_31" HREF="terminal_interface-curses-forms__adb.htm#ref_939_31">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_cursor.3x.html">pos_form_cursor()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_685_14">Position_Cursor</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_data.3x.html">form_data.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_54"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_694_13" HREF="terminal_interface-curses-forms__adb.htm#ref_957_13">Data_Ahead</A></span> (<span class="symbol"><A NAME="ref_694_25" HREF="terminal_interface-curses-forms__adb.htm#ref_957_25">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_data.3x.html">data_ahead()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_694_13">Data_Ahead</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_55"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_699_13" HREF="terminal_interface-curses-forms__adb.htm#ref_973_13">Data_Behind</A></span> (<span class="symbol"><A NAME="ref_699_26" HREF="terminal_interface-curses-forms__adb.htm#ref_973_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_data.3x.html">data_behind()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_699_13">Data_Behind</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_driver.3x.html">form_driver.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_707_9">Driver_Result</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_707_27">Form_Ok</A></span>, -+ <span class="symbol"><A NAME="ref_708_27">Request_Denied</A></span>, -+ <span class="symbol"><A NAME="ref_709_27">Unknown_Request</A></span>, -+ <span class="symbol"><A NAME="ref_710_27">Invalid_Field</A></span>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_56"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_713_13" HREF="terminal_interface-curses-forms__adb.htm#ref_993_13">Driver</A></span> (<span class="symbol"><A NAME="ref_713_21" HREF="terminal_interface-curses-forms__adb.htm#ref_993_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_714_21" HREF="terminal_interface-curses-forms__adb.htm#ref_994_21">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_707_9">Driver_Result</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_driver.3x.html">form_driver()</A></EM></span> -+ <span class="comment"><EM>-- Driver not inlined</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_page.3x.html">form_page.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_722_9">Page_Number</A></span> <b>is</b> <b>new</b> Natural; -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_57"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_725_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1023_14">Set_Current</A></span> (<span class="symbol"><A NAME="ref_725_27" HREF="terminal_interface-curses-forms__adb.htm#ref_1023_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_726_27" HREF="terminal_interface-curses-forms__adb.htm#ref_1024_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_page.3x.html">set_current_field()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_725_14">Set_Current</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_58"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_731_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1038_13">Current</A></span> (<span class="symbol"><A NAME="ref_731_22" HREF="terminal_interface-curses-forms__adb.htm#ref_1038_22">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_page.3x.html">current_field()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_731_13">Current</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_59"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_736_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1053_14">Set_Page</A></span> (<span class="symbol"><A NAME="ref_736_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1053_24">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_737_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1054_24">Page</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_722_9">Page_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_722_9">Page_Number</A>'First); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_page.3x.html">set_form_page()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_736_14">Set_Page</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_60"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_742_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1068_13">Page</A></span> (<span class="symbol"><A NAME="ref_742_19" HREF="terminal_interface-curses-forms__adb.htm#ref_1068_19">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_722_9">Page_Number</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_page.3x.html">form_page()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_742_13">Page</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_61"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_747_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1082_13">Get_Index</A></span> (<span class="symbol"><A NAME="ref_747_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1082_24">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Positive; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_page.3x.html">field_index()</A></EM></span> -+ <span class="comment"><EM>-- Please note that in this binding we start the numbering of fields</EM></span> -+ <span class="comment"><EM>-- with 1. So this is number is one more than you get from the low</EM></span> -+ <span class="comment"><EM>-- level call.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_747_13">Get_Index</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_new_page.3x.html">form_new_page.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_62"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_759_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1102_14">Set_New_Page</A></span> (<span class="symbol"><A NAME="ref_759_28" HREF="terminal_interface-curses-forms__adb.htm#ref_1102_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_760_28" HREF="terminal_interface-curses-forms__adb.htm#ref_1103_28">New_Page</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_new_page.3x.html">set_new_page()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_759_14">Set_New_Page</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_63"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_765_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1117_13">Is_New_Page</A></span> (<span class="symbol"><A NAME="ref_765_26" HREF="terminal_interface-curses-forms__adb.htm#ref_1117_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_new_page.3x.html">new_page()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_765_13">Is_New_Page</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_requestname.3x.html">form_requestname.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- Not Implemented: form_request_name, form_request_by_name</EM></span> - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>private</b> - <b>type</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address; - <b>type</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types__adb.htm 2011-03-26 22:54:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types__adb.htm 2014-09-01 16:33:22.280791996 +0200 -@@ -1,81 +1,93 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.25 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:22:27 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.25 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/22 23:22:27 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - <b>with</b> Ada.Unchecked_Deallocation; - <b>with</b> System.Address_To_Access_Conversions; - --<FONT COLOR=green><EM>-- |</EM></FONT> --<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> --<FONT COLOR=green><EM>-- | man page form_fieldtype.3x</EM></FONT> --<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_51_46" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A></FONT> <b>is</b> -+<span class="comment"><EM>-- |</EM></span> -+<span class="comment"><EM>-- |=====================================================================</EM></span> -+<span class="comment"><EM>-- | man page form_fieldtype.3x</EM></span> -+<span class="comment"><EM>-- |=====================================================================</EM></span> -+<span class="comment"><EM>-- |</EM></span> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<span class="symbol"><A NAME="ref_51_46" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A></span> <b>is</b> - - <b>use</b> <b>type</b> System.Address; - - <b>package</b> Argument_Conversions <b>is</b> - <b>new</b> System.Address_To_Access_Conversions (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_58_13">Get_Fieldtype</A></FONT> (<FONT COLOR=red><A NAME="ref_58_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_58_13">Get_Fieldtype</A></span> (<span class="symbol"><A NAME="ref_58_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; - <b>pragma</b> Import (C, Get_Fieldtype, "field_type"); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_61_13">Get_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_61_22" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> System.Address; -+ <b>function</b> <span class="symbol"><A NAME="ref_61_13">Get_Arg</A></span> (<span class="symbol"><A NAME="ref_61_22" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> System.Address; - <b>pragma</b> Import (C, Get_Arg, "field_arg"); -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | man page form_field_validation.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_70_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_13">Get_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_70_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_23">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | man page form_field_validation.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_70_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_13">Get_Type</A></span> (<span class="symbol"><A NAME="ref_70_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_23">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_72_7">Low_Level</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_23">Fld</A>); -- <FONT COLOR=red><A NAME="ref_73_7">Arg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>; -+ <span class="symbol"><A NAME="ref_72_7">Low_Level</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_23">Fld</A>); -+ <span class="symbol"><A NAME="ref_73_7">Arg</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b> - <b>return</b> <b>null</b>; -@@ -87,32 +99,32 @@ - <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_73_7">Arg</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> - (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_23">Fld</A>))); - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_73_7">Arg</A> = <b>null</b> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>else</b> - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_73_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>; - <b>end</b> <b>if</b>; - <b>else</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>end</b> <b>if</b>; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_13">Get_Type</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_95_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_95_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_23">Usr</A></FONT> : System.Address) <b>return</b> System.Address -+ <b>function</b> <span class="symbol"><A NAME="ref_95_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A></span> (<span class="symbol"><A NAME="ref_95_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_23">Usr</A></span> : System.Address) <b>return</b> System.Address - <b>is</b> - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_23">Usr</A>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_101_14" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_101_24" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_24">Usr</A></FONT> : System.Address) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_101_14" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A></span> (<span class="symbol"><A NAME="ref_101_24" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_24">Usr</A></span> : System.Address) - <b>is</b> - <b>procedure</b> Free_Type <b>is</b> <b>new</b> Ada.Unchecked_Deallocation - (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A>); - <b>procedure</b> Freeargs <b>is</b> <b>new</b> Ada.Unchecked_Deallocation - (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>); - -- <FONT COLOR=red><A NAME="ref_108_7">To_Be_Free</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> -+ <span class="symbol"><A NAME="ref_108_7">To_Be_Free</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> - := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_24">Usr</A>)); -- <FONT COLOR=red><A NAME="ref_110_7">Low_Level</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <span class="symbol"><A NAME="ref_110_7">Low_Level</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A> /= <b>null</b> <b>then</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A> /= System.Null_Address <b>then</b> -@@ -128,23 +140,23 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_126_14" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A></FONT> (<FONT COLOR=red><A NAME="ref_126_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_127_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_28">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class; -- <FONT COLOR=red><A NAME="ref_128_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_126_14" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A></span> (<span class="symbol"><A NAME="ref_126_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_127_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_28">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class; -+ <span class="symbol"><A NAME="ref_128_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_130_7">Usr_Arg</A></FONT> : <b>constant</b> System.Address := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A>); -- <FONT COLOR=red><A NAME="ref_131_7">Low_Level</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A>); -- <FONT COLOR=red><A NAME="ref_132_7">Arg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>; -- <FONT COLOR=red><A NAME="ref_133_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_134_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_134_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_134_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A>; -- <FONT COLOR=red><A NAME="ref_135_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_134_16">Cf</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Cft</A>; -- <FONT COLOR=red><A NAME="ref_136_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_134_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_130_7">Usr_Arg</A></span> : <b>constant</b> System.Address := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A>); -+ <span class="symbol"><A NAME="ref_131_7">Low_Level</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A>); -+ <span class="symbol"><A NAME="ref_132_7">Arg</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>; -+ <span class="symbol"><A NAME="ref_133_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_134_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_134_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_134_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A>; -+ <span class="symbol"><A NAME="ref_135_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_134_16">Cf</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Cft</A>; -+ <span class="symbol"><A NAME="ref_136_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_134_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_user"); - - <b>begin</b> - <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_131_7">Low_Level</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>); - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Choice_Router</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>else</b> - <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_132_7">Arg</A> := <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>'(<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A> =&gt; System.Null_Address, - <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A> =&gt; <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class'(<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_28">Typ</A>), -@@ -164,10 +176,10 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_162_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_162_33" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_163_33" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_33">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_162_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A></span> (<span class="symbol"><A NAME="ref_162_33" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_163_33" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_33">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_165_7">Arg</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> -+ <span class="symbol"><A NAME="ref_165_7">Arg</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> - := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_33">Usr</A>)); - <b>begin</b> - <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_165_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_165_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> -@@ -179,10 +191,10 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_177_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_177_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_32">Ch</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_178_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_32">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_177_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A></span> (<span class="symbol"><A NAME="ref_177_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_32">Ch</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_178_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_32">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_180_7">Arg</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> -+ <span class="symbol"><A NAME="ref_180_7">Arg</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> - := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_32">Usr</A>)); - <b>begin</b> - <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_180_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_180_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> -@@ -194,10 +206,10 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_192_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_13">Next_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_192_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_193_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_26">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_192_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_13">Next_Router</A></span> (<span class="symbol"><A NAME="ref_192_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_193_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_26">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_195_7">Arg</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> -+ <span class="symbol"><A NAME="ref_195_7">Arg</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> - := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_26">Usr</A>)); - <b>begin</b> - <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_195_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_195_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> -@@ -209,10 +221,10 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_13">Next_Router</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_207_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_13">Prev_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_207_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_208_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_26">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_207_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_13">Prev_Router</A></span> (<span class="symbol"><A NAME="ref_207_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_208_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_26">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_210_7">Arg</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> := -+ <span class="symbol"><A NAME="ref_210_7">Arg</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> := - <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_26">Usr</A>)); - <b>begin</b> - <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_210_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_210_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> -@@ -224,18 +236,18 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_13">Prev_Router</A>; - -- <FONT COLOR=green><EM>-- -----------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_224_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> -+ <span class="comment"><EM>-- -----------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_224_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_226_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -- <FONT COLOR=red><A NAME="ref_227_7">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <span class="symbol"><A NAME="ref_226_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_227_7">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Builtin_Router</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b> - <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_227_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A>'<b>Access</b>, - <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A>'<b>Access</b>); - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_227_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>else</b> - <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_226_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_227_7">T</A>, - <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>, -@@ -251,18 +263,18 @@ - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Builtin_Router</A>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A>; - -- <FONT COLOR=green><EM>-- -----------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_251_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Choice_Router</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> -+ <span class="comment"><EM>-- -----------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_251_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Choice_Router</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_253_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -- <FONT COLOR=red><A NAME="ref_254_7">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <span class="symbol"><A NAME="ref_253_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_254_7">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Choice_Router</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b> - <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_254_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A>'<b>Access</b>, - <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A>'<b>Access</b>); - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_254_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>else</b> - <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_253_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_254_7">T</A>, - <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>, -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types__ads.htm 2011-03-26 22:54:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types__ads.htm 2014-09-01 16:33:22.281791998 +0200 -@@ -1,243 +1,255 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.16 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.17 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_43_41" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_51_46">Field_Types</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<span class="symbol"><A NAME="ref_43_41" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_51_46">Field_Types</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>); -- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_46_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_46_12">C_Int</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_fieldtype.3x.html">form_fieldtype.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_52_9">Field_Type</A></FONT> <b>is</b> <b>abstract</b> <b>tagged</b> <b>null</b> <b>record</b>; -- <FONT COLOR=green><EM>-- Abstract base type for all field types. A concrete field type</EM></FONT> -- <FONT COLOR=green><EM>-- is an extension that adds some data elements describing formats or</EM></FONT> -- <FONT COLOR=green><EM>-- boundary values for the type and validation routines.</EM></FONT> -- <FONT COLOR=green><EM>-- For the builtin low-level fieldtypes, the validation routines are</EM></FONT> -- <FONT COLOR=green><EM>-- already defined by the low-level C library.</EM></FONT> -- <FONT COLOR=green><EM>-- The builtin types like Alpha or AlphaNumeric etc. are defined in</EM></FONT> -- <FONT COLOR=green><EM>-- child packages of this package. You may use one of them as example</EM></FONT> -- <FONT COLOR=green><EM>-- how to create you own child packages for low-level field types that</EM></FONT> -- <FONT COLOR=green><EM>-- you may have already written in C.</EM></FONT> -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_63_9">Field_Type_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class; -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_66_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_66_30" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_66_14">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_67_30" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_66_14">Fld_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>) <b>is</b> <b>abstract</b>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_fieldtype.3x.html">set_field_type()</A></EM></FONT> -- <FONT COLOR=green><EM>-- But: we hide the vararg mechanism of the C interface. You always</EM></FONT> -- <FONT COLOR=green><EM>-- have to pass a single Field_Type parameter.</EM></FONT> -- -- <FONT COLOR=green><EM>-- ---------------------------------------------------------------------</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_validation.3x.html">form_field_validation.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_79_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_70_13">Get_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_79_23" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_70_23">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_validation.3x.html">field_type()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: field_arg()</EM></FONT> -- <FONT COLOR=green><EM>-- In Ada95 we can combine these. If you try to retrieve the field type</EM></FONT> -- <FONT COLOR=green><EM>-- that is not defined as extension of the abstract tagged type above,</EM></FONT> -- <FONT COLOR=green><EM>-- you will raise a Form_Exception.</EM></FONT> -- <FONT COLOR=green><EM>-- This is not inlined</EM></FONT> -- -- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- | Private Part.</EM></FONT> -- <FONT COLOR=green><EM>-- | Most of this is used by the implementations of the child packages.</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_fieldtype.3x.html">form_fieldtype.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_52_9">Field_Type</A></span> <b>is</b> <b>abstract</b> <b>tagged</b> <b>null</b> <b>record</b>; -+ <span class="comment"><EM>-- Abstract base type for all field types. A concrete field type</EM></span> -+ <span class="comment"><EM>-- is an extension that adds some data elements describing formats or</EM></span> -+ <span class="comment"><EM>-- boundary values for the type and validation routines.</EM></span> -+ <span class="comment"><EM>-- For the builtin low-level fieldtypes, the validation routines are</EM></span> -+ <span class="comment"><EM>-- already defined by the low-level C library.</EM></span> -+ <span class="comment"><EM>-- The builtin types like Alpha or AlphaNumeric etc. are defined in</EM></span> -+ <span class="comment"><EM>-- child packages of this package. You may use one of them as example</EM></span> -+ <span class="comment"><EM>-- how to create you own child packages for low-level field types that</EM></span> -+ <span class="comment"><EM>-- you may have already written in C.</EM></span> -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_63_9">Field_Type_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class; -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_66_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_66_30" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_66_14">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_67_30" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_66_14">Fld_Type</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>) <b>is</b> <b>abstract</b>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_fieldtype.3x.html">set_field_type()</A></EM></span> -+ <span class="comment"><EM>-- But: we hide the vararg mechanism of the C interface. You always</EM></span> -+ <span class="comment"><EM>-- have to pass a single Field_Type parameter.</EM></span> -+ -+ <span class="comment"><EM>-- ---------------------------------------------------------------------</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_validation.3x.html">form_field_validation.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_79_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_70_13">Get_Type</A></span> (<span class="symbol"><A NAME="ref_79_23" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_70_23">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_validation.3x.html">field_type()</A></EM></span> -+ <span class="comment"><EM>-- AKA: field_arg()</EM></span> -+ <span class="comment"><EM>-- In Ada95 we can combine these. If you try to retrieve the field type</EM></span> -+ <span class="comment"><EM>-- that is not defined as extension of the abstract tagged type above,</EM></span> -+ <span class="comment"><EM>-- you will raise a Form_Exception.</EM></span> -+ <span class="comment"><EM>-- This is not inlined</EM></span> -+ -+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>-- | Private Part.</EM></span> -+ <span class="comment"><EM>-- | Most of this is used by the implementations of the child packages.</EM></span> -+ <span class="comment"><EM>-- |</EM></span> - <b>private</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_92_9">Makearg_Function</A></FONT> <b>is</b> <b>access</b> -- <b>function</b> (<FONT COLOR=red><A NAME="ref_93_16">Args</A></FONT> : System.Address) <b>return</b> System.Address; -+ <b>type</b> <span class="symbol"><A NAME="ref_92_9">Makearg_Function</A></span> <b>is</b> <b>access</b> -+ <b>function</b> (<span class="symbol"><A NAME="ref_93_16">Args</A></span> : System.Address) <b>return</b> System.Address; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_92_9">Makearg_Function</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_96_9">Copyarg_Function</A></FONT> <b>is</b> <b>access</b> -- <b>function</b> (<FONT COLOR=red><A NAME="ref_97_16">Usr</A></FONT> : System.Address) <b>return</b> System.Address; -+ <b>type</b> <span class="symbol"><A NAME="ref_96_9">Copyarg_Function</A></span> <b>is</b> <b>access</b> -+ <b>function</b> (<span class="symbol"><A NAME="ref_97_16">Usr</A></span> : System.Address) <b>return</b> System.Address; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_96_9">Copyarg_Function</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_100_9">Freearg_Function</A></FONT> <b>is</b> <b>access</b> -- <b>procedure</b> (<FONT COLOR=red><A NAME="ref_101_17">Usr</A></FONT> : System.Address); -+ <b>type</b> <span class="symbol"><A NAME="ref_100_9">Freearg_Function</A></span> <b>is</b> <b>access</b> -+ <b>procedure</b> (<span class="symbol"><A NAME="ref_101_17">Usr</A></span> : System.Address); - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_100_9">Freearg_Function</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_104_9">Field_Check_Function</A></FONT> <b>is</b> <b>access</b> -- <b>function</b> (<FONT COLOR=red><A NAME="ref_105_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <FONT COLOR=red><A NAME="ref_105_29">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_104_9">Field_Check_Function</A></span> <b>is</b> <b>access</b> -+ <b>function</b> (<span class="symbol"><A NAME="ref_105_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <span class="symbol"><A NAME="ref_105_29">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_104_9">Field_Check_Function</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_108_9">Char_Check_Function</A></FONT> <b>is</b> <b>access</b> -- <b>function</b> (<FONT COLOR=red><A NAME="ref_109_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; <FONT COLOR=red><A NAME="ref_109_28">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_108_9">Char_Check_Function</A></span> <b>is</b> <b>access</b> -+ <b>function</b> (<span class="symbol"><A NAME="ref_109_16">Ch</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; <span class="symbol"><A NAME="ref_109_28">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_108_9">Char_Check_Function</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_112_9">Choice_Function</A></FONT> <b>is</b> <b>access</b> -- <b>function</b> (<FONT COLOR=red><A NAME="ref_113_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <FONT COLOR=red><A NAME="ref_113_29">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_112_9">Choice_Function</A></span> <b>is</b> <b>access</b> -+ <b>function</b> (<span class="symbol"><A NAME="ref_113_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <span class="symbol"><A NAME="ref_113_29">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_112_9">Choice_Function</A>); - -- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- | This must be in sync with the FIELDTYPE structure in form.h</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>type</b> <FONT COLOR=red><A NAME="ref_119_9">Low_Level_Field_Type</A></FONT> <b>is</b> -+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>-- | This must be in sync with the FIELDTYPE structure in form.h</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>type</b> <span class="symbol"><A NAME="ref_119_9">Low_Level_Field_Type</A></span> <b>is</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_121_10">Status</A></FONT> : <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.unsigned_short; -- <FONT COLOR=red><A NAME="ref_122_10">Ref_Count</A></FONT> : <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.long; -- <FONT COLOR=red><A NAME="ref_123_10">Left</A></FONT>, <FONT COLOR=red><A NAME="ref_123_16">Right</A></FONT> : System.Address; -- <FONT COLOR=red><A NAME="ref_124_10">Makearg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_92_9">Makearg_Function</A>; -- <FONT COLOR=red><A NAME="ref_125_10">Copyarg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_96_9">Copyarg_Function</A>; -- <FONT COLOR=red><A NAME="ref_126_10">Freearg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_100_9">Freearg_Function</A>; -- <FONT COLOR=red><A NAME="ref_127_10">Fcheck</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_104_9">Field_Check_Function</A>; -- <FONT COLOR=red><A NAME="ref_128_10">Ccheck</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_108_9">Char_Check_Function</A>; -- <FONT COLOR=red><A NAME="ref_129_10">Next</A></FONT>, <FONT COLOR=red><A NAME="ref_129_16">Prev</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_112_9">Choice_Function</A>; -+ <span class="symbol"><A NAME="ref_121_10">Status</A></span> : <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.unsigned_short; -+ <span class="symbol"><A NAME="ref_122_10">Ref_Count</A></span> : <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.long; -+ <span class="symbol"><A NAME="ref_123_10">Left</A></span>, <span class="symbol"><A NAME="ref_123_16">Right</A></span> : System.Address; -+ <span class="symbol"><A NAME="ref_124_10">Makearg</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_92_9">Makearg_Function</A>; -+ <span class="symbol"><A NAME="ref_125_10">Copyarg</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_96_9">Copyarg_Function</A>; -+ <span class="symbol"><A NAME="ref_126_10">Freearg</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_100_9">Freearg_Function</A>; -+ <span class="symbol"><A NAME="ref_127_10">Fcheck</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_104_9">Field_Check_Function</A>; -+ <span class="symbol"><A NAME="ref_128_10">Ccheck</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_108_9">Char_Check_Function</A>; -+ <span class="symbol"><A NAME="ref_129_10">Next</A></span>, <span class="symbol"><A NAME="ref_129_16">Prev</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_112_9">Choice_Function</A>; - <b>end</b> <b>record</b>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_119_9">Low_Level_Field_Type</A>); -- <b>type</b> <FONT COLOR=red><A NAME="ref_132_9">C_Field_Type</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_119_9">Low_Level_Field_Type</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_132_9">C_Field_Type</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_119_9">Low_Level_Field_Type</A>; - -- <FONT COLOR=red><A NAME="ref_134_4">Null_Field_Type</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>; -+ <span class="symbol"><A NAME="ref_134_4">Null_Field_Type</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>; - -- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- | This four low-level fieldtypes are the ones associated with</EM></FONT> -- <FONT COLOR=green><EM>-- | fieldtypes handled by this binding. Any other low-level fieldtype</EM></FONT> -- <FONT COLOR=green><EM>-- | will result in a Form_Exception is function Get_Type.</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=red><A NAME="ref_141_4">M_Generic_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>; -- <FONT COLOR=red><A NAME="ref_142_4">M_Generic_Choice</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>; -- <FONT COLOR=red><A NAME="ref_143_4">M_Builtin_Router</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>; -- <FONT COLOR=red><A NAME="ref_144_4">M_Choice_Router</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>; -- -- <FONT COLOR=green><EM>-- Two wrapper functions to access those low-level fieldtypes defined</EM></FONT> -- <FONT COLOR=green><EM>-- in this package.</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_148_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_224_13">C_Builtin_Router</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_149_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_251_13">C_Choice_Router</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_151_14" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_126_14">Wrap_Builtin</A></FONT> (<FONT COLOR=red><A NAME="ref_151_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_126_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_152_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_127_28">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class; -- <FONT COLOR=red><A NAME="ref_153_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_128_28">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A>); -- <FONT COLOR=green><EM>-- This procedure has to be called by the Set_Field_Type implementation</EM></FONT> -- <FONT COLOR=green><EM>-- for builtin low-level fieldtypes to replace it by an Ada95</EM></FONT> -- <FONT COLOR=green><EM>-- conformant Field_Type object.</EM></FONT> -- <FONT COLOR=green><EM>-- The parameter Cft must be C_Builtin_Router for regular low-level</EM></FONT> -- <FONT COLOR=green><EM>-- fieldtypes (like TYP_ALPHA or TYP_ALNUM) and C_Choice_Router for</EM></FONT> -- <FONT COLOR=green><EM>-- low-level fieldtypes witch choice functions (like TYP_ENUM).</EM></FONT> -- <FONT COLOR=green><EM>-- Any other value will raise a Form_Exception.</EM></FONT> -+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>-- | This four low-level fieldtypes are the ones associated with</EM></span> -+ <span class="comment"><EM>-- | fieldtypes handled by this binding. Any other low-level fieldtype</EM></span> -+ <span class="comment"><EM>-- | will result in a Form_Exception is function Get_Type.</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="symbol"><A NAME="ref_141_4">M_Generic_Type</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>; -+ <span class="symbol"><A NAME="ref_142_4">M_Generic_Choice</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>; -+ <span class="symbol"><A NAME="ref_143_4">M_Builtin_Router</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>; -+ <span class="symbol"><A NAME="ref_144_4">M_Choice_Router</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>; -+ -+ <span class="comment"><EM>-- Two wrapper functions to access those low-level fieldtypes defined</EM></span> -+ <span class="comment"><EM>-- in this package.</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_148_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_224_13">C_Builtin_Router</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_149_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_251_13">C_Choice_Router</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_151_14" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_126_14">Wrap_Builtin</A></span> (<span class="symbol"><A NAME="ref_151_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_126_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_152_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_127_28">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class; -+ <span class="symbol"><A NAME="ref_153_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_128_28">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A>); -+ <span class="comment"><EM>-- This procedure has to be called by the Set_Field_Type implementation</EM></span> -+ <span class="comment"><EM>-- for builtin low-level fieldtypes to replace it by an Ada95</EM></span> -+ <span class="comment"><EM>-- conformant Field_Type object.</EM></span> -+ <span class="comment"><EM>-- The parameter Cft must be C_Builtin_Router for regular low-level</EM></span> -+ <span class="comment"><EM>-- fieldtypes (like TYP_ALPHA or TYP_ALNUM) and C_Choice_Router for</EM></span> -+ <span class="comment"><EM>-- low-level fieldtypes witch choice functions (like TYP_ENUM).</EM></span> -+ <span class="comment"><EM>-- Any other value will raise a Form_Exception.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_162_13">Make_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_162_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Args</A></FONT> : System.Address) <b>return</b> System.Address; -+ <b>function</b> <span class="symbol"><A NAME="ref_162_13">Make_Arg</A></span> (<span class="symbol"><A NAME="ref_162_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Args</A></span> : System.Address) <b>return</b> System.Address; - <b>pragma</b> Import (C, Make_Arg, "void_star_make_arg"); -- <FONT COLOR=green><EM>-- This is the Makearg_Function for the internal low-level types</EM></FONT> -- <FONT COLOR=green><EM>-- introduced by this binding.</EM></FONT> -+ <span class="comment"><EM>-- This is the Makearg_Function for the internal low-level types</EM></span> -+ <span class="comment"><EM>-- introduced by this binding.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_167_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_95_13">Copy_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_167_23" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_95_23">Usr</A></FONT> : System.Address) <b>return</b> System.Address; -+ <b>function</b> <span class="symbol"><A NAME="ref_167_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_95_13">Copy_Arg</A></span> (<span class="symbol"><A NAME="ref_167_23" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_95_23">Usr</A></span> : System.Address) <b>return</b> System.Address; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>); -- <FONT COLOR=green><EM>-- This is the Copyarg_Function for the internal low-level types</EM></FONT> -- <FONT COLOR=green><EM>-- introduced by this binding.</EM></FONT> -+ <span class="comment"><EM>-- This is the Copyarg_Function for the internal low-level types</EM></span> -+ <span class="comment"><EM>-- introduced by this binding.</EM></span> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_172_14" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_101_14">Free_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_172_24" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_101_24">Usr</A></FONT> : System.Address); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_172_14" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_101_14">Free_Arg</A></span> (<span class="symbol"><A NAME="ref_172_24" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_101_24">Usr</A></span> : System.Address); - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>); -- <FONT COLOR=green><EM>-- This is the Freearg_Function for the internal low-level types</EM></FONT> -- <FONT COLOR=green><EM>-- introduced by this binding.</EM></FONT> -+ <span class="comment"><EM>-- This is the Freearg_Function for the internal low-level types</EM></span> -+ <span class="comment"><EM>-- introduced by this binding.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_177_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_162_13">Field_Check_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_177_33" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_162_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_178_33" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_163_33">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_177_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_162_13">Field_Check_Router</A></span> (<span class="symbol"><A NAME="ref_177_33" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_162_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_178_33" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_163_33">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A>); -- <FONT COLOR=green><EM>-- This is the Field_Check_Function for the internal low-level types</EM></FONT> -- <FONT COLOR=green><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></FONT> -- <FONT COLOR=green><EM>-- type. It routes the call to the corresponding low-level validation</EM></FONT> -- <FONT COLOR=green><EM>-- function.</EM></FONT> -+ <span class="comment"><EM>-- This is the Field_Check_Function for the internal low-level types</EM></span> -+ <span class="comment"><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></span> -+ <span class="comment"><EM>-- type. It routes the call to the corresponding low-level validation</EM></span> -+ <span class="comment"><EM>-- function.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_185_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_177_13">Char_Check_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_185_32" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_177_32">Ch</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_186_32" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_178_32">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_185_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_177_13">Char_Check_Router</A></span> (<span class="symbol"><A NAME="ref_185_32" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_177_32">Ch</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_186_32" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_178_32">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A>); -- <FONT COLOR=green><EM>-- This is the Char_Check_Function for the internal low-level types</EM></FONT> -- <FONT COLOR=green><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></FONT> -- <FONT COLOR=green><EM>-- type. It routes the call to the corresponding low-level validation</EM></FONT> -- <FONT COLOR=green><EM>-- function.</EM></FONT> -+ <span class="comment"><EM>-- This is the Char_Check_Function for the internal low-level types</EM></span> -+ <span class="comment"><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></span> -+ <span class="comment"><EM>-- type. It routes the call to the corresponding low-level validation</EM></span> -+ <span class="comment"><EM>-- function.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_193_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_192_13">Next_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_193_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_192_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_194_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_193_26">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_193_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_192_13">Next_Router</A></span> (<span class="symbol"><A NAME="ref_193_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_192_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_194_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_193_26">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_13">Next_Router</A>); -- <FONT COLOR=green><EM>-- This is the Choice_Function for the internal low-level types</EM></FONT> -- <FONT COLOR=green><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></FONT> -- <FONT COLOR=green><EM>-- type. It routes the call to the corresponding low-level next_choice</EM></FONT> -- <FONT COLOR=green><EM>-- function.</EM></FONT> -+ <span class="comment"><EM>-- This is the Choice_Function for the internal low-level types</EM></span> -+ <span class="comment"><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></span> -+ <span class="comment"><EM>-- type. It routes the call to the corresponding low-level next_choice</EM></span> -+ <span class="comment"><EM>-- function.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_201_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_207_13">Prev_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_201_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_207_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_202_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_208_26">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_201_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_207_13">Prev_Router</A></span> (<span class="symbol"><A NAME="ref_201_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_207_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_202_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_208_26">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_13">Prev_Router</A>); -- <FONT COLOR=green><EM>-- This is the Choice_Function for the internal low-level types</EM></FONT> -- <FONT COLOR=green><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></FONT> -- <FONT COLOR=green><EM>-- type. It routes the call to the corresponding low-level prev_choice</EM></FONT> -- <FONT COLOR=green><EM>-- function.</EM></FONT> -- -- <FONT COLOR=green><EM>-- This is the Argument structure maintained by all low-level field types</EM></FONT> -- <FONT COLOR=green><EM>-- introduced by this binding.</EM></FONT> -- <b>type</b> <FONT COLOR=red><A NAME="ref_211_9">Argument</A></FONT> <b>is</b> <b>record</b> -- <FONT COLOR=red><A NAME="ref_212_7">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A>; <FONT COLOR=green><EM>-- the Field_Type creating this record</EM></FONT> -- <FONT COLOR=red><A NAME="ref_213_7">Usr</A></FONT> : System.Address; <FONT COLOR=green><EM>-- original arg for builtin low-level types</EM></FONT> -- <FONT COLOR=red><A NAME="ref_214_7">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; <FONT COLOR=green><EM>-- the original low-level type</EM></FONT> -+ <span class="comment"><EM>-- This is the Choice_Function for the internal low-level types</EM></span> -+ <span class="comment"><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></span> -+ <span class="comment"><EM>-- type. It routes the call to the corresponding low-level prev_choice</EM></span> -+ <span class="comment"><EM>-- function.</EM></span> -+ -+ <span class="comment"><EM>-- This is the Argument structure maintained by all low-level field types</EM></span> -+ <span class="comment"><EM>-- introduced by this binding.</EM></span> -+ <b>type</b> <span class="symbol"><A NAME="ref_211_9">Argument</A></span> <b>is</b> <b>record</b> -+ <span class="symbol"><A NAME="ref_212_7">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A>; <span class="comment"><EM>-- the Field_Type creating this record</EM></span> -+ <span class="symbol"><A NAME="ref_213_7">Usr</A></span> : System.Address; <span class="comment"><EM>-- original arg for builtin low-level types</EM></span> -+ <span class="symbol"><A NAME="ref_214_7">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; <span class="comment"><EM>-- the original low-level type</EM></span> - <b>end</b> <b>record</b>; -- <b>type</b> <FONT COLOR=red><A NAME="ref_216_9">Argument_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_216_9">Argument_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>; - -- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- | Some Imports of libform routines to deal with low-level fieldtypes.</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_222_13">New_Fieldtype</A></FONT> (<FONT COLOR=red><A NAME="ref_222_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">Fcheck</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_104_9">Field_Check_Function</A>; -- <FONT COLOR=red><A NAME="ref_223_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">Ccheck</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_108_9">Char_Check_Function</A>) -+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- | Some Imports of libform routines to deal with low-level fieldtypes.</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_222_13">New_Fieldtype</A></span> (<span class="symbol"><A NAME="ref_222_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">Fcheck</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_104_9">Field_Check_Function</A>; -+ <span class="symbol"><A NAME="ref_223_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">Ccheck</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_108_9">Char_Check_Function</A>) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; - <b>pragma</b> Import (C, New_Fieldtype, "new_fieldtype"); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_227_13">Set_Fieldtype_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_227_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -- <FONT COLOR=red><A NAME="ref_228_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Mak</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_92_9">Makearg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>; -- <FONT COLOR=red><A NAME="ref_229_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Cop</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_96_9">Copyarg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>'<b>Access</b>; -- <FONT COLOR=red><A NAME="ref_230_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Fre</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_100_9">Freearg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>'<b>Access</b>) -+ <b>function</b> <span class="symbol"><A NAME="ref_227_13">Set_Fieldtype_Arg</A></span> (<span class="symbol"><A NAME="ref_227_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <span class="symbol"><A NAME="ref_228_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Mak</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_92_9">Makearg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>; -+ <span class="symbol"><A NAME="ref_229_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Cop</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_96_9">Copyarg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>'<b>Access</b>; -+ <span class="symbol"><A NAME="ref_230_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Fre</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_100_9">Freearg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>'<b>Access</b>) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fieldtype_Arg, "set_fieldtype_arg"); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_234_13">Set_Fieldtype_Choice</A></FONT> (<FONT COLOR=red><A NAME="ref_234_35" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -- <FONT COLOR=red><A NAME="ref_235_35" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Next</A></FONT>, <FONT COLOR=red><A NAME="ref_235_41" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Prev</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_112_9">Choice_Function</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_234_13">Set_Fieldtype_Choice</A></span> (<span class="symbol"><A NAME="ref_234_35" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <span class="symbol"><A NAME="ref_235_35" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Next</A></span>, <span class="symbol"><A NAME="ref_235_41" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Prev</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_112_9">Choice_Function</A>) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fieldtype_Choice, "set_fieldtype_choice"); - -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__adb.htm 2011-03-20 00:18:39.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__adb.htm 2014-09-01 16:33:22.273791985 +0200 -@@ -1,61 +1,73 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-alpha.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-alpha.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-alpha.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-alpha.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Alpha --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/19 00:45:37 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Alpha --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/19 00:45:37 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A></span> <b>is</b> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_50_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_44_9">Alpha_Field</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_50_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_44_9">Alpha_Field</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_49_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_30">Fld</A>; -- <FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_49_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_30">Fld</A>; -+ <span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_alpha"); - -- <FONT COLOR=red><A NAME="ref_53_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_53_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_53_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_50_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_50_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_46_9">Minimum_Field_Width</A>)); - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_53_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__ads.htm 2014-09-01 16:33:22.273791985 +0200 -@@ -1,58 +1,70 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-alpha.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-alpha.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-alpha.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-alpha.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Alpha --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_44_58">Alpha</A></FONT> <b>is</b> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Alpha --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_44_58">Alpha</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9">Alpha_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> -+ <b>type</b> <span class="symbol"><A NAME="ref_44_9">Alpha_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> - <b>with</b> <b>record</b> -- <FONT COLOR=red><A NAME="ref_46_9">Minimum_Field_Width</A></FONT> : Natural := 0; -+ <span class="symbol"><A NAME="ref_46_9">Minimum_Field_Width</A></span> : Natural := 0; - <b>end</b> <b>record</b>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_46_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_46_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_47_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_44_9">Alpha_Field</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_46_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_46_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_47_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_44_9">Alpha_Field</A>); - <b>pragma</b> Inline (Set_Field_Type); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__adb.htm 2011-03-20 00:18:39.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__adb.htm 2014-09-01 16:33:22.273791985 +0200 -@@ -1,61 +1,73 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-alphanumeric.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-alphanumeric.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-alphanumeric.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-alphanumeric.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/19 00:45:37 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/19 00:45:37 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A></span> <b>is</b> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_51_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_45_9">AlphaNumeric_Field</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_51_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_45_9">AlphaNumeric_Field</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_49_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_30">Fld</A>; -- <FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_49_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_30">Fld</A>; -+ <span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_alnum"); - -- <FONT COLOR=red><A NAME="ref_53_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_53_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_53_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_50_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_51_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_47_9">Minimum_Field_Width</A>)); - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_53_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm 2014-09-01 16:33:22.274791986 +0200 -@@ -1,59 +1,71 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-alphanumeric.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-alphanumeric.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-alphanumeric.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-alphanumeric.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_44_58">AlphaNumeric</A></FONT> <b>is</b> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_44_58">AlphaNumeric</A></span> <b>is</b> - <b>pragma</b> Preelaborate - (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_45_9">AlphaNumeric_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> -+ <b>type</b> <span class="symbol"><A NAME="ref_45_9">AlphaNumeric_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> - <b>with</b> <b>record</b> -- <FONT COLOR=red><A NAME="ref_47_9">Minimum_Field_Width</A></FONT> : Natural := 0; -+ <span class="symbol"><A NAME="ref_47_9">Minimum_Field_Width</A></span> : Natural := 0; - <b>end</b> <b>record</b>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_46_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_46_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_47_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_45_9">AlphaNumeric_Field</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_46_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_46_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_47_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_45_9">AlphaNumeric_Field</A>); - <b>pragma</b> Inline (Set_Field_Type); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm 2011-03-26 22:54:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm 2014-09-01 16:33:22.274791986 +0200 -@@ -1,68 +1,80 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-enumeration-ada.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-enumeration-ada.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-enumeration-ada.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-enumeration-ada.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration.Ada --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2004,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:36:20 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration.Ada --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2004,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/22 23:36:20 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Characters.Handling; <b>use</b> Ada.Characters.Handling; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<FONT COLOR=red><A NAME="ref_44_70" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<span class="symbol"><A NAME="ref_44_70" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A></span> <b>is</b> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_46_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_46_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_21">Set</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_46">Mixed_Case</A>; -- <FONT COLOR=red><A NAME="ref_47_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_49_21">Case_Sensitive</A></FONT> : Boolean := False; -- <FONT COLOR=red><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_50_21">Must_Be_Unique</A></FONT> : Boolean := False) -+ <b>function</b> <span class="symbol"><A NAME="ref_46_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_13">Create</A></span> (<span class="symbol"><A NAME="ref_46_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_21">Set</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_46">Mixed_Case</A>; -+ <span class="symbol"><A NAME="ref_47_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_49_21">Case_Sensitive</A></span> : Boolean := False; -+ <span class="symbol"><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_50_21">Must_Be_Unique</A></span> : Boolean := False) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_51_7">I</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Last) - <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'First) + 1); -- <FONT COLOR=red><A NAME="ref_52_7">J</A></FONT> : Positive := 1; -+ <span class="symbol"><A NAME="ref_51_7">I</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Last) - <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'First) + 1); -+ <span class="symbol"><A NAME="ref_52_7">J</A></span> : Positive := 1; - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_58_10">Case_Sensitive</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_49_21">Case_Sensitive</A>; - <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_59_10">Match_Must_Be_Unique</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_50_21">Must_Be_Unique</A>; - -- <b>for</b> <FONT COLOR=red><A NAME="ref_57_11">E</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'<b>Range</b> <b>loop</b> -+ <b>for</b> <span class="symbol"><A NAME="ref_57_11">E</A></span> <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'<b>Range</b> <b>loop</b> - <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_52_7">J</A>) := <b>new</b> String'(<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Image (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_57_11">E</A>)); -- <FONT COLOR=green><EM>-- The Image attribute defaults to upper case, so we have to handle</EM></FONT> -- <FONT COLOR=green><EM>-- only the other ones...</EM></FONT> -+ <span class="comment"><EM>-- The Image attribute defaults to upper case, so we have to handle</EM></span> -+ <span class="comment"><EM>-- only the other ones...</EM></span> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_21">Set</A> /= <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_34">Upper_Case</A> <b>then</b> - <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_52_7">J</A>).<b>all</b> := To_Lower (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_52_7">J</A>).<b>all</b>); - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_21">Set</A> = <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_46">Mixed_Case</A> <b>then</b> -@@ -76,11 +88,11 @@ - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13">Create</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>, True); - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_13">Create</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_74_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_13">Value</A></FONT> (<FONT COLOR=red><A NAME="ref_74_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_75_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_54_20">Buf</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_74_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_13">Value</A></span> (<span class="symbol"><A NAME="ref_74_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_75_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_54_20">Buf</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A> - <b>is</b> - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Value (<A HREF="terminal_interface-curses-forms__ads.htm#ref_372_13">Get_Buffer</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_20">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_54_20">Buf</A>)); -+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Value (<A HREF="terminal_interface-curses-forms__ads.htm#ref_370_13">Get_Buffer</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_20">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_54_20">Buf</A>)); - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_13">Value</A>; - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm 2011-03-20 00:18:39.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm 2014-09-01 16:33:22.274791986 +0200 -@@ -1,65 +1,77 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-enumeration-ada.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-enumeration-ada.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-enumeration-ada.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-enumeration-ada.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration.Ada --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.10 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration.Ada --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.10 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">T</A></FONT> <b>is</b> (&lt;&gt;); -+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">T</A></span> <b>is</b> (&lt;&gt;); - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<FONT COLOR=red><A NAME="ref_44_65" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_44_70">Ada</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<span class="symbol"><A NAME="ref_44_65" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_44_70">Ada</A></span> <b>is</b> - <b>pragma</b> Preelaborate - (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A>); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_48_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_46_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_46_21">Set</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_46">Mixed_Case</A>; -- <FONT COLOR=red><A NAME="ref_49_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_47_21">Case_Sensitive</A></FONT> : Boolean := False; -- <FONT COLOR=red><A NAME="ref_50_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_48_21">Must_Be_Unique</A></FONT> : Boolean := False) -+ <b>function</b> <span class="symbol"><A NAME="ref_48_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_46_13">Create</A></span> (<span class="symbol"><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_46_21">Set</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_46">Mixed_Case</A>; -+ <span class="symbol"><A NAME="ref_49_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_47_21">Case_Sensitive</A></span> : Boolean := False; -+ <span class="symbol"><A NAME="ref_50_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_48_21">Must_Be_Unique</A></span> : Boolean := False) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_53_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_74_13">Value</A></FONT> (<FONT COLOR=red><A NAME="ref_53_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_74_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_54_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_75_20">Buf</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>; -- <FONT COLOR=green><EM>-- Translate the content of the fields buffer - indicated by the</EM></FONT> -- <FONT COLOR=green><EM>-- buffer number - into an enumeration value. If the buffer is empty</EM></FONT> -- <FONT COLOR=green><EM>-- or the content is invalid, a Constraint_Error is raises.</EM></FONT> -+ <b>function</b> <span class="symbol"><A NAME="ref_53_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_74_13">Value</A></span> (<span class="symbol"><A NAME="ref_53_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_74_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_54_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_75_20">Buf</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_131_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>; -+ <span class="comment"><EM>-- Translate the content of the fields buffer - indicated by the</EM></span> -+ <span class="comment"><EM>-- buffer number - into an enumeration value. If the buffer is empty</EM></span> -+ <span class="comment"><EM>-- or the content is invalid, a Constraint_Error is raises.</EM></span> - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm 2011-03-26 22:54:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm 2014-09-01 16:33:22.275791988 +0200 -@@ -1,72 +1,84 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-enumeration.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-enumeration.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-enumeration.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-enumeration.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.10 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.10 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Unchecked_Deallocation; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_46_58" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_46_58" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A></span> <b>is</b> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_48_13" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>; -- <FONT COLOR=red><A NAME="ref_49_21" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_65_21">Auto_Release_Names</A></FONT> : Boolean := False) -+ <b>function</b> <span class="symbol"><A NAME="ref_48_13" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13">Create</A></span> (<span class="symbol"><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>; -+ <span class="symbol"><A NAME="ref_49_21" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_65_21">Auto_Release_Names</A></span> : Boolean := False) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A> - <b>is</b> - <b>procedure</b> Release_String <b>is</b> - <b>new</b> Ada.Unchecked_Deallocation (String, - <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_47_9">String_Access</A>); -- <FONT COLOR=red><A NAME="ref_55_7">E</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>; -- <FONT COLOR=red><A NAME="ref_56_7">L</A></FONT> : <b>constant</b> size_t := 1 + size_t (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_27">C</A>); -- <FONT COLOR=red><A NAME="ref_57_7">S</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_47_9">String_Access</A>; -+ <span class="symbol"><A NAME="ref_55_7">E</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>; -+ <span class="symbol"><A NAME="ref_56_7">L</A></span> : <b>constant</b> size_t := 1 + size_t (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_27">C</A>); -+ <span class="symbol"><A NAME="ref_57_7">S</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_47_9">String_Access</A>; - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_93_10">Case_Sensitive</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_58_10">Case_Sensitive</A>; - <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_94_10">Match_Must_Be_Unique</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_59_10">Match_Must_Be_Unique</A>; - <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A> := <b>new</b> chars_ptr_array (size_t (1) .. <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_56_7">L</A>); -- <b>for</b> <FONT COLOR=red><A NAME="ref_62_11">I</A></FONT> <b>in</b> 1 .. Positive (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_56_7">L</A> - 1) <b>loop</b> -+ <b>for</b> <span class="symbol"><A NAME="ref_62_11">I</A></span> <b>in</b> 1 .. Positive (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_56_7">L</A> - 1) <b>loop</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_62_11">I</A>) = <b>null</b> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>end</b> <b>if</b>; - <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A>.<b>all</b> (size_t (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_62_11">I</A>)) := New_String (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_62_11">I</A>).<b>all</b>); - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_65_21">Auto_Release_Names</A> <b>then</b> -@@ -78,10 +90,10 @@ - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_55_7">E</A>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13">Create</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_76_14" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_14">Release</A></FONT> (<FONT COLOR=red><A NAME="ref_76_23" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_23">Enum</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_76_14" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_14">Release</A></span> (<span class="symbol"><A NAME="ref_76_23" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_23">Enum</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_78_7">I</A></FONT> : size_t := 0; -- <FONT COLOR=red><A NAME="ref_79_7">P</A></FONT> : chars_ptr; -+ <span class="symbol"><A NAME="ref_78_7">I</A></span> : size_t := 0; -+ <span class="symbol"><A NAME="ref_79_7">P</A></span> : chars_ptr; - <b>begin</b> - <b>loop</b> - <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_79_7">P</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_23">Enum</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_78_7">I</A>); -@@ -93,19 +105,19 @@ - <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_23">Enum</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A> := <b>null</b>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_14">Release</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_91_14" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_91_30" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_92_30" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_91_14" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_91_30" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_92_30" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_94_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_94_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_30">Fld</A>; -- <FONT COLOR=red><A NAME="ref_95_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg1</A></FONT> : chars_ptr_array; -- <FONT COLOR=red><A NAME="ref_96_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg2</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_97_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg3</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_94_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_94_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_30">Fld</A>; -+ <span class="symbol"><A NAME="ref_95_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg1</A></span> : chars_ptr_array; -+ <span class="symbol"><A NAME="ref_96_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg2</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_97_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg3</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_enum"); - -- <FONT COLOR=red><A NAME="ref_100_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_100_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A> = <b>null</b> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>end</b> <b>if</b>; - <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_100_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_95_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A>.<b>all</b>, - <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_96_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_93_10">Case_Sensitive</A>)), -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm 2011-02-26 00:43:49.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm 2014-09-01 16:33:22.275791988 +0200 -@@ -1,103 +1,115 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-enumeration.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-enumeration.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-enumeration.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-enumeration.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_43_53" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_46_58">Enumeration</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_43_53" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_46_58">Enumeration</A></span> <b>is</b> - <b>pragma</b> Preelaborate - (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_47_9">String_Access</A></FONT> <b>is</b> <b>access</b> String; -+ <b>type</b> <span class="symbol"><A NAME="ref_47_9">String_Access</A></span> <b>is</b> <b>access</b> String; - -- <FONT COLOR=green><EM>-- Type_Set is used by the child package Ada</EM></FONT> -- <b>type</b> <FONT COLOR=red><A NAME="ref_50_9">Type_Set</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_50_22">Lower_Case</A></FONT>, <FONT COLOR=red><A NAME="ref_50_34">Upper_Case</A></FONT>, <FONT COLOR=red><A NAME="ref_50_46">Mixed_Case</A></FONT>); -+ <span class="comment"><EM>-- Type_Set is used by the child package Ada</EM></span> -+ <b>type</b> <span class="symbol"><A NAME="ref_50_9">Type_Set</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_50_22">Lower_Case</A></span>, <span class="symbol"><A NAME="ref_50_34">Upper_Case</A></span>, <span class="symbol"><A NAME="ref_50_46">Mixed_Case</A></span>); - - <b>type</b> Enum_Array <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) - <b>of</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_47_9">String_Access</A>; - -- <b>type</b> <FONT COLOR=red><A NAME="ref_55_9">Enumeration_Info</A></FONT> (<FONT COLOR=red><A NAME="ref_55_27" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">C</A></FONT> : Positive) <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_55_9">Enumeration_Info</A></span> (<span class="symbol"><A NAME="ref_55_27" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">C</A></span> : Positive) <b>is</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_57_10">Names</A></FONT> : Enum_Array (1 .. <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_27">C</A>); -- <FONT COLOR=red><A NAME="ref_58_10">Case_Sensitive</A></FONT> : Boolean := False; -- <FONT COLOR=red><A NAME="ref_59_10">Match_Must_Be_Unique</A></FONT> : Boolean := False; -+ <span class="symbol"><A NAME="ref_57_10">Names</A></span> : Enum_Array (1 .. <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_27">C</A>); -+ <span class="symbol"><A NAME="ref_58_10">Case_Sensitive</A></span> : Boolean := False; -+ <span class="symbol"><A NAME="ref_59_10">Match_Must_Be_Unique</A></span> : Boolean := False; - <b>end</b> <b>record</b>; - -- <b>type</b> <FONT COLOR=red><A NAME="ref_62_9">Enumeration_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_62_9">Enumeration_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> <b>private</b>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_48_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_64_21" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_48_21">Info</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>; -- <FONT COLOR=red><A NAME="ref_65_21" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_49_21">Auto_Release_Names</A></FONT> : Boolean := False) -+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_48_13">Create</A></span> (<span class="symbol"><A NAME="ref_64_21" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_48_21">Info</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>; -+ <span class="symbol"><A NAME="ref_65_21" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_49_21">Auto_Release_Names</A></span> : Boolean := False) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>; -- <FONT COLOR=green><EM>-- Make an fieldtype from the info. Enumerations are special, because</EM></FONT> -- <FONT COLOR=green><EM>-- they normally don't copy the enum values into a private store, so</EM></FONT> -- <FONT COLOR=green><EM>-- we have to care for the lifetime of the info we provide.</EM></FONT> -- <FONT COLOR=green><EM>-- The Auto_Release_Names flag may be used to automatically releases</EM></FONT> -- <FONT COLOR=green><EM>-- the strings in the Names array of the Enumeration_Info.</EM></FONT> -+ <span class="comment"><EM>-- Make an fieldtype from the info. Enumerations are special, because</EM></span> -+ <span class="comment"><EM>-- they normally don't copy the enum values into a private store, so</EM></span> -+ <span class="comment"><EM>-- we have to care for the lifetime of the info we provide.</EM></span> -+ <span class="comment"><EM>-- The Auto_Release_Names flag may be used to automatically releases</EM></span> -+ <span class="comment"><EM>-- the strings in the Names array of the Enumeration_Info.</EM></span> - -- <b>function</b> Make_Enumeration_Type (<FONT COLOR=red><A NAME="ref_73_36">Info</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>; -- <FONT COLOR=red><A NAME="ref_74_36">Auto_Release_Names</A></FONT> : Boolean := False) -+ <b>function</b> Make_Enumeration_Type (<span class="symbol"><A NAME="ref_73_36">Info</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>; -+ <span class="symbol"><A NAME="ref_74_36">Auto_Release_Names</A></span> : Boolean := False) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A> <b>renames</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13">Create</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_77_14" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_76_14">Release</A></FONT> (<FONT COLOR=red><A NAME="ref_77_23" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_76_23">Enum</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>); -- <FONT COLOR=green><EM>-- But we may want to release the field to release the memory allocated</EM></FONT> -- <FONT COLOR=green><EM>-- by it internally. After that the Enumeration field is no longer usable.</EM></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_77_14" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_76_14">Release</A></span> (<span class="symbol"><A NAME="ref_77_23" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_76_23">Enum</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>); -+ <span class="comment"><EM>-- But we may want to release the field to release the memory allocated</EM></span> -+ <span class="comment"><EM>-- by it internally. After that the Enumeration field is no longer usable.</EM></span> - -- <FONT COLOR=green><EM>-- The next type defintions are all ncurses extensions. They are typically</EM></FONT> -- <FONT COLOR=green><EM>-- not available in other curses implementations.</EM></FONT> -+ <span class="comment"><EM>-- The next type defintions are all ncurses extensions. They are typically</EM></span> -+ <span class="comment"><EM>-- not available in other curses implementations.</EM></span> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_84_14" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_91_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_84_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_91_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_85_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_92_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_84_14" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_91_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_84_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_91_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_85_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_92_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>); - <b>pragma</b> Inline (Set_Field_Type); - - <b>private</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_89_9">CPA_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings.chars_ptr_array; -+ <b>type</b> <span class="symbol"><A NAME="ref_89_9">CPA_Access</A></span> <b>is</b> <b>access</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings.chars_ptr_array; - - <b>type</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_93_10">Case_Sensitive</A></FONT> : Boolean := False; -- <FONT COLOR=red><A NAME="ref_94_10">Match_Must_Be_Unique</A></FONT> : Boolean := False; -- <FONT COLOR=red><A NAME="ref_95_10">Arr</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_89_9">CPA_Access</A> := <b>null</b>; -+ <span class="symbol"><A NAME="ref_93_10">Case_Sensitive</A></span> : Boolean := False; -+ <span class="symbol"><A NAME="ref_94_10">Match_Must_Be_Unique</A></span> : Boolean := False; -+ <span class="symbol"><A NAME="ref_95_10">Arr</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_89_9">CPA_Access</A> := <b>null</b>; - <b>end</b> <b>record</b>; - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__adb.htm 2011-03-20 00:18:39.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__adb.htm 2014-09-01 16:33:22.276791990 +0200 -@@ -1,63 +1,75 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-intfield.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-intfield.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-intfield.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-intfield.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IntField --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/19 00:45:37 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IntField --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/19 00:45:37 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A></span> <b>is</b> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_44_9">Integer_Field</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_44_9">Integer_Field</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_49_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_30">Fld</A>; -- <FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg2</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Long_Int</A>; -- <FONT COLOR=red><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg3</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Long_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_49_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_30">Fld</A>; -+ <span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg2</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Long_Int</A>; -+ <span class="symbol"><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg3</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Long_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_integer"); - -- <FONT COLOR=red><A NAME="ref_55_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_55_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_55_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_50_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_46_10">Precision</A>), - <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_51_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Long_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_47_10">Lower_Limit</A>), -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__ads.htm 2014-09-01 16:33:22.276791990 +0200 -@@ -1,60 +1,72 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-intfield.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-intfield.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-intfield.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-intfield.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IntField --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_44_58">IntField</A></FONT> <b>is</b> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IntField --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_44_58">IntField</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9">Integer_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_44_9">Integer_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_46_10">Precision</A></FONT> : Natural; -- <FONT COLOR=red><A NAME="ref_47_10">Lower_Limit</A></FONT> : Integer; -- <FONT COLOR=red><A NAME="ref_48_10">Upper_Limit</A></FONT> : Integer; -+ <span class="symbol"><A NAME="ref_46_10">Precision</A></span> : Natural; -+ <span class="symbol"><A NAME="ref_47_10">Lower_Limit</A></span> : Integer; -+ <span class="symbol"><A NAME="ref_48_10">Upper_Limit</A></span> : Integer; - <b>end</b> <b>record</b>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_46_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_46_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_47_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_44_9">Integer_Field</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_46_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_46_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_47_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_44_9">Integer_Field</A>); - <b>pragma</b> Inline (Set_Field_Type); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__adb.htm 2011-03-20 00:18:39.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__adb.htm 2014-09-01 16:33:22.276791990 +0200 -@@ -1,61 +1,73 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-ipv4_address.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-ipv4_address.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-ipv4_address.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-ipv4_address.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/19 00:45:37 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/19 00:45:37 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A></span> <b>is</b> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_48_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_45_9">Internet_V4_Address_Field</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_48_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_45_9">Internet_V4_Address_Field</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_49_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_49_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_30">Fld</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_49_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_49_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_30">Fld</A>) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_ipv4"); - -- <FONT COLOR=red><A NAME="ref_53_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_53_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_53_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_49_16">Set_Fld_Type</A>; - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_53_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm 2014-09-01 16:33:22.277791991 +0200 -@@ -1,56 +1,68 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-ipv4_address.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-ipv4_address.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-ipv4_address.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-ipv4_address.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_44_58">IPV4_Address</A></FONT> <b>is</b> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_44_58">IPV4_Address</A></span> <b>is</b> - <b>pragma</b> Preelaborate - (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_45_9">Internet_V4_Address_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_45_9">Internet_V4_Address_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_46_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_46_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_47_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_45_9">Internet_V4_Address_Field</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_46_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_46_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_47_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_45_9">Internet_V4_Address_Field</A>); - <b>pragma</b> Inline (Set_Field_Type); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__adb.htm 2011-03-20 00:18:39.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__adb.htm 2014-09-01 16:33:22.277791991 +0200 -@@ -1,66 +1,78 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-numeric.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-numeric.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-numeric.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-numeric.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Numeric --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/19 00:45:37 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Numeric --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/19 00:45:37 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_45_58" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_45_58" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A></span> <b>is</b> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_44_9">Numeric_Field</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_44_9">Numeric_Field</A>) - <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_50_12">Double</A></FONT> <b>is</b> <b>new</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.double; -+ <b>type</b> <span class="symbol"><A NAME="ref_50_12">Double</A></span> <b>is</b> <b>new</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.double; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_52_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_30">Fld</A>; -- <FONT COLOR=red><A NAME="ref_53_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_54_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg2</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A>; -- <FONT COLOR=red><A NAME="ref_55_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg3</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_52_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_30">Fld</A>; -+ <span class="symbol"><A NAME="ref_53_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_54_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg2</A></span> : <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A>; -+ <span class="symbol"><A NAME="ref_55_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg3</A></span> : <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_numeric"); - -- <FONT COLOR=red><A NAME="ref_58_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_58_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_58_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_53_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_46_10">Precision</A>), - <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_54_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_47_10">Lower_Limit</A>), -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__ads.htm 2014-09-01 16:33:22.277791991 +0200 -@@ -1,60 +1,72 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-numeric.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-numeric.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-numeric.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-numeric.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Numeric --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_45_58">Numeric</A></FONT> <b>is</b> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Numeric --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_45_58">Numeric</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9">Numeric_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_44_9">Numeric_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_46_10">Precision</A></FONT> : Natural; -- <FONT COLOR=red><A NAME="ref_47_10">Lower_Limit</A></FONT> : Float; -- <FONT COLOR=red><A NAME="ref_48_10">Upper_Limit</A></FONT> : Float; -+ <span class="symbol"><A NAME="ref_46_10">Precision</A></span> : Natural; -+ <span class="symbol"><A NAME="ref_47_10">Lower_Limit</A></span> : Float; -+ <span class="symbol"><A NAME="ref_48_10">Upper_Limit</A></span> : Float; - <b>end</b> <b>record</b>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_47_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_47_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_48_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_44_9">Numeric_Field</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_47_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_47_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_48_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_44_9">Numeric_Field</A>); - <b>pragma</b> Inline (Set_Field_Type); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__adb.htm 2011-03-20 00:18:39.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__adb.htm 2014-09-01 16:33:22.278791993 +0200 -@@ -1,65 +1,77 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-regexp.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-regexp.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-regexp.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-regexp.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.RegExp --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.10 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.RegExp --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.10 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A></span> <b>is</b> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_46_9">Regular_Expression_Field</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_46_9">Regular_Expression_Field</A>) - <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_49_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char; -+ <b>type</b> <span class="symbol"><A NAME="ref_49_12">Char_Ptr</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_51_16">Set_Ftyp</A></FONT> (<FONT COLOR=red><A NAME="ref_51_26" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_51_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_30">Fld</A>; -- <FONT COLOR=red><A NAME="ref_52_26" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_51_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_49_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_51_16">Set_Ftyp</A></span> (<span class="symbol"><A NAME="ref_51_26" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_51_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_30">Fld</A>; -+ <span class="symbol"><A NAME="ref_52_26" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_51_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_49_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Ftyp, "set_field_type_regexp"); - -- <FONT COLOR=red><A NAME="ref_55_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_48_10">Regular_Expression</A>.<b>all</b>'Length); -- <FONT COLOR=red><A NAME="ref_56_7">Len</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_57_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_55_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_48_10">Regular_Expression</A>.<b>all</b>'Length); -+ <span class="symbol"><A NAME="ref_56_7">Len</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_57_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_48_10">Regular_Expression</A>.<b>all</b>, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_55_7">Txt</A>, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_56_7">Len</A>); - <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_57_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_51_16">Set_Ftyp</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_52_26">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_55_7">Txt</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_55_7">Txt</A>'First)'<b>Access</b>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__ads.htm 2014-09-01 16:33:22.278791993 +0200 -@@ -1,60 +1,72 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-regexp.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-regexp.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-regexp.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-regexp.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.RegExp --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_44_58">RegExp</A></FONT> <b>is</b> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.RegExp --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_44_58">RegExp</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A>); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9">String_Access</A></FONT> <b>is</b> <b>access</b> String; -+ <b>type</b> <span class="symbol"><A NAME="ref_44_9">String_Access</A></span> <b>is</b> <b>access</b> String; - -- <b>type</b> <FONT COLOR=red><A NAME="ref_46_9">Regular_Expression_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_46_9">Regular_Expression_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_48_10">Regular_Expression</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_44_9">String_Access</A>; -+ <span class="symbol"><A NAME="ref_48_10">Regular_Expression</A></span> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_44_9">String_Access</A>; - <b>end</b> <b>record</b>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_46_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_46_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_47_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_46_9">Regular_Expression_Field</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_46_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_46_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_47_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_46_9">Regular_Expression_Field</A>); - <b>pragma</b> Inline (Set_Field_Type); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-user__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user__adb.htm 2011-03-26 22:54:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-user__adb.htm 2014-09-01 16:33:22.279791995 +0200 -@@ -1,72 +1,84 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-user.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-user.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-user.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-user.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.21 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/23 00:44:58 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.21 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/23 00:44:58 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> System.Address_To_Access_Conversions; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_45_58" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_45_58" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A></span> <b>is</b> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_71_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_71_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_50_16" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_61_16">Allocate_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_61_30">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class) -+ <b>function</b> <span class="symbol"><A NAME="ref_50_16" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_61_16">Allocate_Arg</A></span> (<span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_61_30">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_53_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_53_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_30">Fld</A>; -- <FONT COLOR=red><A NAME="ref_54_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_79_13">C_Generic_Type</A>; -- <FONT COLOR=red><A NAME="ref_55_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_53_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_53_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_30">Fld</A>; -+ <span class="symbol"><A NAME="ref_54_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_79_13">C_Generic_Type</A>; -+ <span class="symbol"><A NAME="ref_55_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_46_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_user"); - -- <FONT COLOR=red><A NAME="ref_59_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_59_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_61_16" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_16">Allocate_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_61_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_30">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class) -+ <b>function</b> <span class="symbol"><A NAME="ref_61_16" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_16">Allocate_Arg</A></span> (<span class="symbol"><A NAME="ref_61_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_30">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class) - <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_64_10">Ptr</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A> -+ <span class="symbol"><A NAME="ref_64_10">Ptr</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A> - := <b>new</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class'(<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_30">T</A>); - <b>begin</b> - <b>return</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>'(<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A> =&gt; System.Null_Address, -@@ -84,42 +96,42 @@ - <b>package</b> Argument_Conversions <b>is</b> - <b>new</b> System.Address_To_Access_Conversions (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_82_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A></FONT> (<FONT COLOR=red><A NAME="ref_82_34" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_34">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_83_34" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_82_34">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_82_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A></span> (<span class="symbol"><A NAME="ref_82_34" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_34">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_83_34" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_82_34">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_85_7">Result</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_86_7">Udf</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A> := -+ <span class="symbol"><A NAME="ref_85_7">Result</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_86_7">Udf</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A> := - <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A> - (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_82_34">Usr</A>)).<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>); - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_85_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Field_Check</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_34">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_86_7">Udf</A>.<b>all</b>); -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_85_7">Result</A>)); -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_85_7">Result</A>)); - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_94_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A></FONT> (<FONT COLOR=red><A NAME="ref_94_33" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_33">Ch</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_46_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_95_33" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_89_33">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_94_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A></span> (<span class="symbol"><A NAME="ref_94_33" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_33">Ch</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_46_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_95_33" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_89_33">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_97_7">Result</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_98_7">Udf</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A> := -+ <span class="symbol"><A NAME="ref_97_7">Result</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_98_7">Udf</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A> := - <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A> - (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_89_33">Usr</A>)).<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>); - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_97_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Character_Check</A> (Character'Val (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_33">Ch</A>), <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_98_7">Udf</A>.<b>all</b>); -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_97_7">Result</A>)); -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_97_7">Result</A>)); - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A>; - -- <FONT COLOR=green><EM>-- -----------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_108_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_79_13">C_Generic_Type</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> -+ <span class="comment"><EM>-- -----------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_108_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_79_13">C_Generic_Type</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_110_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -- <FONT COLOR=red><A NAME="ref_111_7">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <span class="symbol"><A NAME="ref_110_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_111_7">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_141_4">M_Generic_Type</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b> - <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_111_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A>'<b>Access</b>, - <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A>'<b>Access</b>); - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_111_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>else</b> - <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_110_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_111_7">T</A>, - <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>, -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-user__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user__ads.htm 2011-03-26 22:54:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-user__ads.htm 2014-09-01 16:33:22.280791996 +0200 -@@ -1,101 +1,113 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-user.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-user.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-user.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-user.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.15 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/19 12:27:21 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.15 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/19 12:27:21 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_53" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_45_58">User</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_53" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_45_58">User</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>); -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_46_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_46_12">C_Int</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - -- <b>type</b> <FONT COLOR=red><A NAME="ref_48_9">User_Defined_Field_Type</A></FONT> <b>is</b> <b>abstract</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>; -- <FONT COLOR=green><EM>-- This is the root of the mechanism we use to create field types in</EM></FONT> -- <FONT COLOR=green><EM>-- Ada95. You should your own type derive from this one and implement</EM></FONT> -- <FONT COLOR=green><EM>-- the Field_Check and Character_Check functions for your own type.</EM></FONT> -+ <b>type</b> <span class="symbol"><A NAME="ref_48_9">User_Defined_Field_Type</A></span> <b>is</b> <b>abstract</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>; -+ <span class="comment"><EM>-- This is the root of the mechanism we use to create field types in</EM></span> -+ <span class="comment"><EM>-- Ada95. You should your own type derive from this one and implement</EM></span> -+ <span class="comment"><EM>-- the Field_Check and Character_Check functions for your own type.</EM></span> - -- <b>type</b> <FONT COLOR=red><A NAME="ref_53_9">User_Defined_Field_Type_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_53_9">User_Defined_Field_Type_Access</A></span> <b>is</b> <b>access</b> <b>all</b> - <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_56_13">Field_Check</A></FONT> -- (<FONT COLOR=red><A NAME="ref_57_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_56_13">Field_Check</A></span> -+ (<span class="symbol"><A NAME="ref_57_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>) <b>return</b> Boolean - <b>is</b> <b>abstract</b>; -- <FONT COLOR=green><EM>-- If True is returned, the field is considered valid, otherwise it is</EM></FONT> -- <FONT COLOR=green><EM>-- invalid.</EM></FONT> -+ <span class="comment"><EM>-- If True is returned, the field is considered valid, otherwise it is</EM></span> -+ <span class="comment"><EM>-- invalid.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_63_13">Character_Check</A></FONT> -- (<FONT COLOR=red><A NAME="ref_64_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Ch</A></FONT> : Character; -- <FONT COLOR=red><A NAME="ref_65_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_63_13">Character_Check</A></span> -+ (<span class="symbol"><A NAME="ref_64_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Ch</A></span> : Character; -+ <span class="symbol"><A NAME="ref_65_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>) <b>return</b> Boolean - <b>is</b> <b>abstract</b>; -- <FONT COLOR=green><EM>-- If True is returned, the character is considered as valid for the</EM></FONT> -- <FONT COLOR=green><EM>-- field, otherwise as invalid.</EM></FONT> -+ <span class="comment"><EM>-- If True is returned, the character is considered as valid for the</EM></span> -+ <span class="comment"><EM>-- field, otherwise as invalid.</EM></span> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_70_14" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_47_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_70_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_47_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_71_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_48_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>); -- <FONT COLOR=green><EM>-- This should work for all types derived from User_Defined_Field_Type.</EM></FONT> -- <FONT COLOR=green><EM>-- No need to reimplement it for your derived type.</EM></FONT> -- -- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- | Private Part.</EM></FONT> -- <FONT COLOR=green><EM>-- | Used by the Choice child package.</EM></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_70_14" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_47_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_70_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_47_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_71_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_48_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>); -+ <span class="comment"><EM>-- This should work for all types derived from User_Defined_Field_Type.</EM></span> -+ <span class="comment"><EM>-- No need to reimplement it for your derived type.</EM></span> -+ -+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>-- | Private Part.</EM></span> -+ <span class="comment"><EM>-- | Used by the Choice child package.</EM></span> - <b>private</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_79_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_108_13">C_Generic_Type</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_79_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_108_13">C_Generic_Type</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_81_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_82_13">Generic_Field_Check</A></FONT> (<FONT COLOR=red><A NAME="ref_81_34" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_82_34">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_82_34" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_83_34">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_81_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_82_13">Generic_Field_Check</A></span> (<span class="symbol"><A NAME="ref_81_34" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_82_34">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_82_34" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_83_34">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A>); -- <FONT COLOR=green><EM>-- This is the generic Field_Check_Function for the low-level fieldtype</EM></FONT> -- <FONT COLOR=green><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></FONT> -- <FONT COLOR=green><EM>-- the call to the Field_Check implementation for the type.</EM></FONT> -+ <span class="comment"><EM>-- This is the generic Field_Check_Function for the low-level fieldtype</EM></span> -+ <span class="comment"><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></span> -+ <span class="comment"><EM>-- the call to the Field_Check implementation for the type.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_88_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_94_13">Generic_Char_Check</A></FONT> (<FONT COLOR=red><A NAME="ref_88_33" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_94_33">Ch</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_46_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_89_33" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_95_33">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_88_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_94_13">Generic_Char_Check</A></span> (<span class="symbol"><A NAME="ref_88_33" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_94_33">Ch</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_46_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_89_33" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_95_33">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A>); -- <FONT COLOR=green><EM>-- This is the generic Char_Check_Function for the low-level fieldtype</EM></FONT> -- <FONT COLOR=green><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></FONT> -- <FONT COLOR=green><EM>-- the call to the Character_Check implementation for the type.</EM></FONT> -+ <span class="comment"><EM>-- This is the generic Char_Check_Function for the low-level fieldtype</EM></span> -+ <span class="comment"><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></span> -+ <span class="comment"><EM>-- the call to the Character_Check implementation for the type.</EM></span> - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__adb.htm 2011-03-26 22:54:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__adb.htm 2014-09-01 16:33:22.278791993 +0200 -@@ -1,93 +1,105 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-user-choice.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-user-choice.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-user-choice.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-user-choice.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User.Choice --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.17 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/22 10:53:37 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User.Choice --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.17 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/22 10:53:37 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> System.Address_To_Access_Conversions; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<FONT COLOR=red><A NAME="ref_45_63" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<span class="symbol"><A NAME="ref_45_63" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A></span> <b>is</b> - - <b>package</b> Argument_Conversions <b>is</b> - <b>new</b> System.Address_To_Access_Conversions (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_50_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_13">Generic_Next</A></FONT> (<FONT COLOR=red><A NAME="ref_50_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_51_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_81_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_50_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_13">Generic_Next</A></span> (<span class="symbol"><A NAME="ref_50_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_51_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_81_27">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_53_7">Result</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_54_7">Udf</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A> := -+ <span class="symbol"><A NAME="ref_53_7">Result</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_54_7">Udf</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A> := - <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A> - (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_81_27">Usr</A>)).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>); - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_53_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_60_13">Next</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_27">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_54_7">Udf</A>.<b>all</b>); -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_53_7">Result</A>)); -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_53_7">Result</A>)); - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_13">Generic_Next</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_62_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_13">Generic_Prev</A></FONT> (<FONT COLOR=red><A NAME="ref_62_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_63_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_88_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_62_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_13">Generic_Prev</A></span> (<span class="symbol"><A NAME="ref_62_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_63_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_88_27">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_65_7">Result</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_66_7">Udf</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A> := -+ <span class="symbol"><A NAME="ref_65_7">Result</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_66_7">Udf</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A> := - <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A> - (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_88_27">Usr</A>)).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>); - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_65_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_67_13">Previous</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_27">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_66_7">Udf</A>.<b>all</b>); -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_65_7">Result</A>)); -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_65_7">Result</A>)); - <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_13">Generic_Prev</A>; - -- <FONT COLOR=green><EM>-- -----------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_76_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_78_13">C_Generic_Choice</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> -+ <span class="comment"><EM>-- -----------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_76_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_78_13">C_Generic_Choice</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_78_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -- <FONT COLOR=red><A NAME="ref_79_7">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <span class="symbol"><A NAME="ref_78_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_79_7">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Choice</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b> - <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A>'<b>Access</b>, - <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A>'<b>Access</b>); - <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_288_4">Form_Exception</A>; - <b>else</b> - <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A>, - <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>, -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm 2011-03-26 22:54:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm 2014-09-01 16:33:22.279791995 +0200 -@@ -1,100 +1,112 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-user-choice.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_types-user-choice.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-user-choice.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-user-choice.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User.Choice --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.14 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/19 12:27:47 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User.Choice --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.14 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/19 12:27:47 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_45_63">Choice</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_45_63">Choice</A></span> <b>is</b> - <b>pragma</b> Preelaborate - (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A>); - -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_48_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_48_12">C_Int</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - -- <b>type</b> <FONT COLOR=red><A NAME="ref_50_9">User_Defined_Field_Type_With_Choice</A></FONT> <b>is</b> <b>abstract</b> <b>new</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_50_9">User_Defined_Field_Type_With_Choice</A></span> <b>is</b> <b>abstract</b> <b>new</b> - <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A> <b>with</b> <b>null</b> <b>record</b>; -- <FONT COLOR=green><EM>-- This is the root of the mechanism we use to create field types in</EM></FONT> -- <FONT COLOR=green><EM>-- Ada95 that allow the prev/next mechanism. You should your own type</EM></FONT> -- <FONT COLOR=green><EM>-- derive from this one and implement the Field_Check, Character_Check</EM></FONT> -- <FONT COLOR=green><EM>-- Next and Previous functions for your own type.</EM></FONT> -+ <span class="comment"><EM>-- This is the root of the mechanism we use to create field types in</EM></span> -+ <span class="comment"><EM>-- Ada95 that allow the prev/next mechanism. You should your own type</EM></span> -+ <span class="comment"><EM>-- derive from this one and implement the Field_Check, Character_Check</EM></span> -+ <span class="comment"><EM>-- Next and Previous functions for your own type.</EM></span> - -- <b>type</b> <FONT COLOR=red><A NAME="ref_57_9">User_Defined_Field_Type_With_Choice_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_57_9">User_Defined_Field_Type_With_Choice_Access</A></span> <b>is</b> <b>access</b> <b>all</b> - <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_50_9">User_Defined_Field_Type_With_Choice</A>'Class; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_60_13">Next</A></FONT> -- (<FONT COLOR=red><A NAME="ref_61_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_60_13">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_62_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_60_13">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_50_9">User_Defined_Field_Type_With_Choice</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_60_13">Next</A></span> -+ (<span class="symbol"><A NAME="ref_61_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_60_13">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_62_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_60_13">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_50_9">User_Defined_Field_Type_With_Choice</A>) <b>return</b> Boolean - <b>is</b> <b>abstract</b>; -- <FONT COLOR=green><EM>-- If True is returned, the function successfully generated a next</EM></FONT> -- <FONT COLOR=green><EM>-- value into the fields buffer.</EM></FONT> -+ <span class="comment"><EM>-- If True is returned, the function successfully generated a next</EM></span> -+ <span class="comment"><EM>-- value into the fields buffer.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_67_13">Previous</A></FONT> -- (<FONT COLOR=red><A NAME="ref_68_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_67_13">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_69_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_67_13">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_50_9">User_Defined_Field_Type_With_Choice</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_67_13">Previous</A></span> -+ (<span class="symbol"><A NAME="ref_68_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_67_13">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_69_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_67_13">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_50_9">User_Defined_Field_Type_With_Choice</A>) <b>return</b> Boolean - <b>is</b> <b>abstract</b>; -- <FONT COLOR=green><EM>-- If True is returned, the function successfully generated a previous</EM></FONT> -- <FONT COLOR=green><EM>-- value into the fields buffer.</EM></FONT> -+ <span class="comment"><EM>-- If True is returned, the function successfully generated a previous</EM></span> -+ <span class="comment"><EM>-- value into the fields buffer.</EM></span> - -- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- | Private Part.</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span> -+ <span class="comment"><EM>-- | Private Part.</EM></span> -+ <span class="comment"><EM>-- |</EM></span> - <b>private</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_78_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_76_13">C_Generic_Choice</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_78_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_76_13">C_Generic_Choice</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_80_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_50_13">Generic_Next</A></FONT> (<FONT COLOR=red><A NAME="ref_80_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_50_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_81_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_51_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_80_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_50_13">Generic_Next</A></span> (<span class="symbol"><A NAME="ref_80_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_50_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_81_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_51_27">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_13">Generic_Next</A>); -- <FONT COLOR=green><EM>-- This is the generic next Choice_Function for the low-level fieldtype</EM></FONT> -- <FONT COLOR=green><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></FONT> -- <FONT COLOR=green><EM>-- the call to the Next implementation for the type.</EM></FONT> -+ <span class="comment"><EM>-- This is the generic next Choice_Function for the low-level fieldtype</EM></span> -+ <span class="comment"><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></span> -+ <span class="comment"><EM>-- the call to the Next implementation for the type.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_87_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_62_13">Generic_Prev</A></FONT> (<FONT COLOR=red><A NAME="ref_87_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_62_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_88_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_63_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_87_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_62_13">Generic_Prev</A></span> (<span class="symbol"><A NAME="ref_87_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_62_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_88_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_63_27">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_13">Generic_Prev</A>); -- <FONT COLOR=green><EM>-- This is the generic prev Choice_Function for the low-level fieldtype</EM></FONT> -- <FONT COLOR=green><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></FONT> -- <FONT COLOR=green><EM>-- the call to the Previous implementation for the type.</EM></FONT> -+ <span class="comment"><EM>-- This is the generic prev Choice_Function for the low-level fieldtype</EM></span> -+ <span class="comment"><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></span> -+ <span class="comment"><EM>-- the call to the Previous implementation for the type.</EM></span> - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_user_data__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_user_data__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_user_data__adb.htm 2011-02-26 00:43:49.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_user_data__adb.htm 2014-09-01 16:33:22.281791998 +0200 -@@ -1,87 +1,99 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_user_data.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_user_data.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_user_data.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_user_data.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_User_Data --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.13 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_User_Data --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.13 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<FONT COLOR=green><EM>-- |</EM></FONT> --<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> --<FONT COLOR=green><EM>-- | man page form_field_userptr.3x</EM></FONT> --<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_48_46" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A></FONT> <b>is</b> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+<span class="comment"><EM>-- |</EM></span> -+<span class="comment"><EM>-- |=====================================================================</EM></span> -+<span class="comment"><EM>-- | man page form_field_userptr.3x</EM></span> -+<span class="comment"><EM>-- |=====================================================================</EM></span> -+<span class="comment"><EM>-- |</EM></span> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<span class="symbol"><A NAME="ref_48_46" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A></span> <b>is</b> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_54_14" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_55_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_54_29">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_54_14" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_55_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_54_29">Data</A></span> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_57_16">Set_Field_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_57_35" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_58_35" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Usr</A></FONT> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_57_16">Set_Field_Userptr</A></span> (<span class="symbol"><A NAME="ref_57_35" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_58_35" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Usr</A></span> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Field_Userptr, "set_field_userptr"); - -- <FONT COLOR=red><A NAME="ref_61_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Set_Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_29">Fld</A>, <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_54_29">Data</A>); -+ <span class="symbol"><A NAME="ref_61_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Set_Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_29">Fld</A>, <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_54_29">Data</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_61_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_61_7">Res</A>); - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_14">Set_User_Data</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_70_13" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_70_28" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_70_13" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_70_28" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_72_16">Field_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_72_31" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_72_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_72_16">Field_Userptr</A></span> (<span class="symbol"><A NAME="ref_72_31" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_72_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>; - <b>pragma</b> Import (C, Field_Userptr, "field_userptr"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_72_16">Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_28">Fld</A>); - <b>end</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_13">Get_User_Data</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_78_14" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_78_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_79_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_60_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_78_14" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_78_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_79_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_60_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_60_29">Data</A> := <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_29">Fld</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_user_data__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_user_data__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_user_data__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-field_user_data__ads.htm 2014-09-01 16:33:22.282792000 +0200 -@@ -1,74 +1,86 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_user_data.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-field_user_data.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_user_data.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_user_data.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_User_Data --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.16 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_User_Data --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.16 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_43_9" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>; -- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">User_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_43_9">User</A>; --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_45_41" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_48_46">Field_User_Data</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_43_9" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">User</A></span> <b>is</b> <b>limited</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_44_9" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">User_Access</A></span> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_43_9">User</A>; -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<span class="symbol"><A NAME="ref_45_41" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_48_46">Field_User_Data</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A>); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_userptr.3x.html">form_field_userptr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_53_14" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_54_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_53_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_54_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_55_29">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">set_field_userptr</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_userptr.3x.html">form_field_userptr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_53_14" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_54_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_53_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_54_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_55_29">Data</A></span> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">set_field_userptr</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_14">Set_User_Data</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_14" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_78_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_59_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_78_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -- <FONT COLOR=red><A NAME="ref_60_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_79_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">field_userptr</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_70_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_64_28" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_70_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">field_userptr</A></EM></FONT> -- <FONT COLOR=green><EM>-- Sama as function</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_78_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_59_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_78_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; -+ <span class="symbol"><A NAME="ref_60_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_79_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">field_userptr</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_70_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_64_28" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_70_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">field_userptr</A></EM></span> -+ <span class="comment"><EM>-- Sama as function</EM></span> - <b>pragma</b> Inline (Get_User_Data); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-form_user_data__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-form_user_data__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-form_user_data__adb.htm 2011-02-26 00:43:49.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-form_user_data__adb.htm 2014-09-01 16:33:22.282792000 +0200 -@@ -1,88 +1,100 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-form_user_data.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-form_user_data.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-form_user_data.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-form_user_data.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Form_User_Data --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.13 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> --<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> --<FONT COLOR=green><EM>-- | man page form__userptr.3x</EM></FONT> --<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Form_User_Data --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.13 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- |</EM></span> -+<span class="comment"><EM>-- |=====================================================================</EM></span> -+<span class="comment"><EM>-- | man page form__userptr.3x</EM></span> -+<span class="comment"><EM>-- |=====================================================================</EM></span> -+<span class="comment"><EM>-- |</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_48_46" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<span class="symbol"><A NAME="ref_48_46" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A></span> <b>is</b> - -- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_55_14" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_55_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_56_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_54_29">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>) -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_55_14" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_55_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_56_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_54_29">Data</A></span> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_58_16">Set_Form_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_58_34" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_59_34" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_58_16">Set_Form_Userptr</A></span> (<span class="symbol"><A NAME="ref_58_34" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_59_34" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Data</A></span> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Form_Userptr, "set_form_userptr"); - -- <FONT COLOR=red><A NAME="ref_62_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Set_Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_29">Frm</A>, <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_54_29">Data</A>); -+ <span class="symbol"><A NAME="ref_62_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Set_Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_29">Frm</A>, <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_54_29">Data</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_62_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_62_7">Res</A>); - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_14">Set_User_Data</A>; -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_71_13" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_71_28" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_28">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_71_13" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_71_28" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_28">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_73_16">Form_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_73_30" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_73_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_73_16">Form_Userptr</A></span> (<span class="symbol"><A NAME="ref_73_30" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_73_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>; - <b>pragma</b> Import (C, Form_Userptr, "form_userptr"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_73_16">Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_28">Frm</A>); - <b>end</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_13">Get_User_Data</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_79_14" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_79_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_80_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_60_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_79_14" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_79_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_80_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_60_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_60_29">Data</A> := <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_29">Frm</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-form_user_data__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-form_user_data__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-form_user_data__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-forms-form_user_data__ads.htm 2014-09-01 16:33:22.282792000 +0200 -@@ -1,74 +1,86 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-forms-form_user_data.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-forms-form_user_data.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-form_user_data.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-form_user_data.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Form_User_Data --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.15 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Form_User_Data --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.15 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_43_9" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>; -- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">User_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_43_9">User</A>; --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_45_41" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_48_46">Form_User_Data</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_43_9" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">User</A></span> <b>is</b> <b>limited</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_44_9" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">User_Access</A></span> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_43_9">User</A>; -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<span class="symbol"><A NAME="ref_45_41" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_48_46">Form_User_Data</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A>); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_userptr.3x.html">form_userptr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_53_14" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_55_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_53_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_55_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_56_29">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">set_form_userptr</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_userptr.3x.html">form_userptr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_53_14" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_55_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_53_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_55_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_56_29">Data</A></span> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">set_form_userptr</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_14">Set_User_Data</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_14" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_79_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_59_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_79_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -- <FONT COLOR=red><A NAME="ref_60_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_80_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">form_userptr</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_71_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_64_28" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_71_28">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">form_userptr</A></EM></FONT> -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_79_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_59_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_79_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; -+ <span class="symbol"><A NAME="ref_60_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_80_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">form_userptr</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_71_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_64_28" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_71_28">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">form_userptr</A></EM></span> -+ <span class="comment"><EM>-- Same as function</EM></span> - <b>pragma</b> Inline (Get_User_Data); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-menus__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus__adb.htm 2011-03-26 22:54:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus__adb.htm 2014-09-01 16:33:22.292792016 +0200 -@@ -1,66 +1,78 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-menus.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-menus.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menus --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.28 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:38:12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Menus --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.28 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/22 23:38:12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Unchecked_Deallocation; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Pointers; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Pointers; - - <b>with</b> Ada.Unchecked_Conversion; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_51_40" HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_51_40" HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A></span> <b>is</b> - - <b>type</b> C_Item_Array <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; - <b>package</b> I_Array <b>is</b> <b>new</b> -- <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>, C_Item_Array, <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>); -+ <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>, C_Item_Array, <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>); - - <b>use</b> <b>type</b> System.Bit_Order; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_58_12">chars_ptr</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings.chars_ptr; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_58_12">chars_ptr</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings.chars_ptr; - - <b>function</b> MOS_2_CInt <b>is</b> <b>new</b> - Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>, -@@ -71,656 +83,656 @@ - <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>); - - <b>function</b> IOS_2_CInt <b>is</b> <b>new</b> -- Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>, -+ Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>, - <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>); - - <b>function</b> CInt_2_IOS <b>is</b> <b>new</b> - Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>, -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>); -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>); - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_77_14" HREF="terminal_interface-curses-menus__ads.htm#ref_106_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_77_28" HREF="terminal_interface-curses-menus__ads.htm#ref_106_28">Key</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>; -- <FONT COLOR=red><A NAME="ref_78_28" HREF="terminal_interface-curses-menus__ads.htm#ref_107_28">Name</A></FONT> : <b>out</b> String) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_77_14" HREF="terminal_interface-curses-menus__ads.htm#ref_106_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_77_28" HREF="terminal_interface-curses-menus__ads.htm#ref_106_28">Key</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>; -+ <span class="symbol"><A NAME="ref_78_28" HREF="terminal_interface-curses-menus__ads.htm#ref_107_28">Name</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_80_16">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_80_30" HREF="terminal_interface-curses-menus__adb.htm#ref_80_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_80_16">Request_Name</A></span> (<span class="symbol"><A NAME="ref_80_30" HREF="terminal_interface-curses-menus__adb.htm#ref_80_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Request_Name, "menu_request_name"); - <b>begin</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_80_16">Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_106_28">Key</A>)), <A HREF="terminal_interface-curses-menus__ads.htm#ref_107_28">Name</A>); - <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_106_14">Request_Name</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_86_13" HREF="terminal_interface-curses-menus__ads.htm#ref_109_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_86_27" HREF="terminal_interface-curses-menus__ads.htm#ref_109_28">Key</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>) <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_86_13" HREF="terminal_interface-curses-menus__ads.htm#ref_109_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_86_27" HREF="terminal_interface-curses-menus__ads.htm#ref_109_28">Key</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>) <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_88_16">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_88_30" HREF="terminal_interface-curses-menus__adb.htm#ref_88_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_88_16">Request_Name</A></span> (<span class="symbol"><A NAME="ref_88_30" HREF="terminal_interface-curses-menus__adb.htm#ref_88_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Request_Name, "menu_request_name"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_88_16">Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_109_28">Key</A>))); - <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_109_14">Request_Name</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_94_13" HREF="terminal_interface-curses-menus__ads.htm#ref_195_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_94_21" HREF="terminal_interface-curses-menus__ads.htm#ref_195_21">Name</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_95_21" HREF="terminal_interface-curses-menus__ads.htm#ref_196_21">Description</A></FONT> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_94_13" HREF="terminal_interface-curses-menus__ads.htm#ref_193_13">Create</A></span> (<span class="symbol"><A NAME="ref_94_21" HREF="terminal_interface-curses-menus__ads.htm#ref_193_21">Name</A></span> : String; -+ <span class="symbol"><A NAME="ref_95_21" HREF="terminal_interface-curses-menus__ads.htm#ref_194_21">Description</A></span> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> - <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_97_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char; -- <b>function</b> <FONT COLOR=red><A NAME="ref_98_16">Newitem</A></FONT> (<FONT COLOR=red><A NAME="ref_98_25" HREF="terminal_interface-curses-menus__adb.htm#ref_98_16">Name</A></FONT>, <FONT COLOR=red><A NAME="ref_98_31" HREF="terminal_interface-curses-menus__adb.htm#ref_98_16">Desc</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_97_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_97_12">Char_Ptr</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char; -+ <b>function</b> <span class="symbol"><A NAME="ref_98_16">Newitem</A></span> (<span class="symbol"><A NAME="ref_98_25" HREF="terminal_interface-curses-menus__adb.htm#ref_98_16">Name</A></span>, <span class="symbol"><A NAME="ref_98_31" HREF="terminal_interface-curses-menus__adb.htm#ref_98_16">Desc</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_97_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; - <b>pragma</b> Import (C, Newitem, "new_item"); - -- <b>type</b> Name_String <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_195_21">Name</A>'Length); -- <b>type</b> <FONT COLOR=red><A NAME="ref_102_12">Name_String_Ptr</A></FONT> <b>is</b> <b>access</b> Name_String; -+ <b>type</b> Name_String <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_193_21">Name</A>'Length); -+ <b>type</b> <span class="symbol"><A NAME="ref_102_12">Name_String_Ptr</A></span> <b>is</b> <b>access</b> Name_String; - <b>pragma</b> Controlled (<A HREF="terminal_interface-curses-menus__adb.htm#ref_102_12">Name_String_Ptr</A>); - -- <b>type</b> Desc_String <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_196_21">Description</A>'Length); -- <b>type</b> <FONT COLOR=red><A NAME="ref_106_12">Desc_String_Ptr</A></FONT> <b>is</b> <b>access</b> Desc_String; -+ <b>type</b> Desc_String <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_194_21">Description</A>'Length); -+ <b>type</b> <span class="symbol"><A NAME="ref_106_12">Desc_String_Ptr</A></span> <b>is</b> <b>access</b> Desc_String; - <b>pragma</b> Controlled (<A HREF="terminal_interface-curses-menus__adb.htm#ref_106_12">Desc_String_Ptr</A>); - -- <FONT COLOR=red><A NAME="ref_109_7">Name_Str</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_102_12">Name_String_Ptr</A> := <b>new</b> Name_String; -- <FONT COLOR=red><A NAME="ref_110_7">Desc_Str</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_106_12">Desc_String_Ptr</A> := <b>new</b> Desc_String; -- <FONT COLOR=red><A NAME="ref_111_7">Name_Len</A></FONT>, <FONT COLOR=red><A NAME="ref_111_17">Desc_Len</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_112_7">Result</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_109_7">Name_Str</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_102_12">Name_String_Ptr</A> := <b>new</b> Name_String; -+ <span class="symbol"><A NAME="ref_110_7">Desc_Str</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_106_12">Desc_String_Ptr</A> := <b>new</b> Desc_String; -+ <span class="symbol"><A NAME="ref_111_7">Name_Len</A></span>, <span class="symbol"><A NAME="ref_111_17">Desc_Len</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_112_7">Result</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_195_21">Name</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_109_7">Name_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_111_7">Name_Len</A>); -- To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_196_21">Description</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_110_7">Desc_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_111_17">Desc_Len</A>); -+ To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_193_21">Name</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_109_7">Name_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_111_7">Name_Len</A>); -+ To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_194_21">Description</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_110_7">Desc_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_111_17">Desc_Len</A>); - <A HREF="terminal_interface-curses-menus__adb.htm#ref_112_7">Result</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_98_16">Newitem</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_109_7">Name_Str</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_109_7">Name_Str</A>.<b>all</b>'First)'<b>Access</b>, - <A HREF="terminal_interface-curses-menus__adb.htm#ref_110_7">Desc_Str</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_110_7">Desc_Str</A>.<b>all</b>'First)'<b>Access</b>); - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_112_7">Result</A> = <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_391_4">Eti_System_Error</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_390_4">Eti_System_Error</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_112_7">Result</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_195_13">Create</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_193_13">Create</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_124_14" HREF="terminal_interface-curses-menus__ads.htm#ref_207_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_124_22" HREF="terminal_interface-curses-menus__ads.htm#ref_207_22">Itm</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_124_14" HREF="terminal_interface-curses-menus__ads.htm#ref_205_14">Delete</A></span> (<span class="symbol"><A NAME="ref_124_22" HREF="terminal_interface-curses-menus__ads.htm#ref_205_22">Itm</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_126_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="ref_126_26" HREF="terminal_interface-curses-menus__adb.htm#ref_126_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_126_16">Descname</A></span> (<span class="symbol"><A NAME="ref_126_26" HREF="terminal_interface-curses-menus__adb.htm#ref_126_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Descname, "item_description"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_128_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="ref_128_26" HREF="terminal_interface-curses-menus__adb.htm#ref_128_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_128_16">Itemname</A></span> (<span class="symbol"><A NAME="ref_128_26" HREF="terminal_interface-curses-menus__adb.htm#ref_128_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Itemname, "item_name"); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_131_16">Freeitem</A></FONT> (<FONT COLOR=red><A NAME="ref_131_26" HREF="terminal_interface-curses-menus__adb.htm#ref_131_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_131_16">Freeitem</A></span> (<span class="symbol"><A NAME="ref_131_26" HREF="terminal_interface-curses-menus__adb.htm#ref_131_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Freeitem, "free_item"); - -- <FONT COLOR=red><A NAME="ref_134_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -- <FONT COLOR=red><A NAME="ref_135_7">Ptr</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <span class="symbol"><A NAME="ref_134_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_135_7">Ptr</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_126_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_207_22">Itm</A>); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_126_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_205_22">Itm</A>); - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A> /= Null_Ptr <b>then</b> -- <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A>); -+ <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A>); - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_128_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_207_22">Itm</A>); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_128_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_205_22">Itm</A>); - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A> /= Null_Ptr <b>then</b> -- <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A>); -+ <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A>); - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_134_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_131_16">Freeitem</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_207_22">Itm</A>); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_134_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_131_16">Freeitem</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_205_22">Itm</A>); - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_134_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_134_7">Res</A>); - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_207_22">Itm</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_207_14">Delete</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_152_14" HREF="terminal_interface-curses-menus__ads.htm#ref_216_14">Set_Value</A></FONT> (<FONT COLOR=red><A NAME="ref_152_25" HREF="terminal_interface-curses-menus__ads.htm#ref_216_25">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_153_25" HREF="terminal_interface-curses-menus__ads.htm#ref_217_25">Value</A></FONT> : Boolean := True) -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_205_22">Itm</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_205_14">Delete</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_152_14" HREF="terminal_interface-curses-menus__ads.htm#ref_214_14">Set_Value</A></span> (<span class="symbol"><A NAME="ref_152_25" HREF="terminal_interface-curses-menus__ads.htm#ref_214_25">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_153_25" HREF="terminal_interface-curses-menus__ads.htm#ref_215_25">Value</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_155_16">Set_Item_Val</A></FONT> (<FONT COLOR=red><A NAME="ref_155_30" HREF="terminal_interface-curses-menus__adb.htm#ref_155_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_156_30" HREF="terminal_interface-curses-menus__adb.htm#ref_155_16">Val</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_155_16">Set_Item_Val</A></span> (<span class="symbol"><A NAME="ref_155_30" HREF="terminal_interface-curses-menus__adb.htm#ref_155_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_156_30" HREF="terminal_interface-curses-menus__adb.htm#ref_155_16">Val</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Item_Val, "set_item_value"); - -- <FONT COLOR=red><A NAME="ref_159_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_155_16">Set_Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_216_25">Itm</A>, Boolean'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#ref_217_25">Value</A>)); -+ <span class="symbol"><A NAME="ref_159_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_155_16">Set_Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_214_25">Itm</A>, Boolean'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#ref_215_25">Value</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_159_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_159_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_216_14">Set_Value</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_214_14">Set_Value</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_166_13" HREF="terminal_interface-curses-menus__ads.htm#ref_222_13">Value</A></FONT> (<FONT COLOR=red><A NAME="ref_166_20" HREF="terminal_interface-curses-menus__ads.htm#ref_222_20">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_166_13" HREF="terminal_interface-curses-menus__ads.htm#ref_220_13">Value</A></span> (<span class="symbol"><A NAME="ref_166_20" HREF="terminal_interface-curses-menus__ads.htm#ref_220_20">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_168_16">Item_Val</A></FONT> (<FONT COLOR=red><A NAME="ref_168_26" HREF="terminal_interface-curses-menus__adb.htm#ref_168_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_168_16">Item_Val</A></span> (<span class="symbol"><A NAME="ref_168_26" HREF="terminal_interface-curses-menus__adb.htm#ref_168_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Item_Val, "item_value"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_168_16">Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_222_20">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_168_16">Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_220_20">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_222_13">Value</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_220_13">Value</A>; - --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_179_13" HREF="terminal_interface-curses-menus__ads.htm#ref_231_13">Visible</A></FONT> (<FONT COLOR=red><A NAME="ref_179_22" HREF="terminal_interface-curses-menus__ads.htm#ref_231_22">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_179_13" HREF="terminal_interface-curses-menus__ads.htm#ref_229_13">Visible</A></span> (<span class="symbol"><A NAME="ref_179_22" HREF="terminal_interface-curses-menus__ads.htm#ref_229_22">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_181_16">Item_Vis</A></FONT> (<FONT COLOR=red><A NAME="ref_181_26" HREF="terminal_interface-curses-menus__adb.htm#ref_181_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_181_16">Item_Vis</A></span> (<span class="symbol"><A NAME="ref_181_26" HREF="terminal_interface-curses-menus__adb.htm#ref_181_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Item_Vis, "item_visible"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_181_16">Item_Vis</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_231_22">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_181_16">Item_Vis</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_229_22">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_231_13">Visible</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_191_14" HREF="terminal_interface-curses-menus__ads.htm#ref_240_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_191_27" HREF="terminal_interface-curses-menus__ads.htm#ref_240_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_192_27" HREF="terminal_interface-curses-menus__ads.htm#ref_241_27">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_229_13">Visible</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_191_14" HREF="terminal_interface-curses-menus__ads.htm#ref_238_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_191_27" HREF="terminal_interface-curses-menus__ads.htm#ref_238_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_192_27" HREF="terminal_interface-curses-menus__ads.htm#ref_239_27">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_194_16">Set_Item_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_194_31" HREF="terminal_interface-curses-menus__adb.htm#ref_194_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_195_31" HREF="terminal_interface-curses-menus__adb.htm#ref_194_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_194_16">Set_Item_Opts</A></span> (<span class="symbol"><A NAME="ref_194_31" HREF="terminal_interface-curses-menus__adb.htm#ref_194_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_195_31" HREF="terminal_interface-curses-menus__adb.htm#ref_194_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Item_Opts, "set_item_opts"); - -- <FONT COLOR=red><A NAME="ref_198_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := IOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_241_27">Options</A>); -- <FONT COLOR=red><A NAME="ref_199_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_198_7">Opt</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := IOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_239_27">Options</A>); -+ <span class="symbol"><A NAME="ref_199_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_199_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_194_16">Set_Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_240_27">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_198_7">Opt</A>); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_199_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_194_16">Set_Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_238_27">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_198_7">Opt</A>); - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_199_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_199_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_240_14">Set_Options</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_238_14">Set_Options</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_207_14" HREF="terminal_interface-curses-menus__ads.htm#ref_246_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_207_30" HREF="terminal_interface-curses-menus__ads.htm#ref_246_30">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_208_30" HREF="terminal_interface-curses-menus__ads.htm#ref_247_30">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>; -- <FONT COLOR=red><A NAME="ref_209_30" HREF="terminal_interface-curses-menus__ads.htm#ref_248_30">On</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_207_14" HREF="terminal_interface-curses-menus__ads.htm#ref_244_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_207_30" HREF="terminal_interface-curses-menus__ads.htm#ref_244_30">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_208_30" HREF="terminal_interface-curses-menus__ads.htm#ref_245_30">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_209_30" HREF="terminal_interface-curses-menus__ads.htm#ref_246_30">On</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_211_16">Item_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="ref_211_30" HREF="terminal_interface-curses-menus__adb.htm#ref_211_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_212_30" HREF="terminal_interface-curses-menus__adb.htm#ref_211_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_211_16">Item_Opts_On</A></span> (<span class="symbol"><A NAME="ref_211_30" HREF="terminal_interface-curses-menus__adb.htm#ref_211_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_212_30" HREF="terminal_interface-curses-menus__adb.htm#ref_211_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Item_Opts_On, "item_opts_on"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_214_16">Item_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="ref_214_31" HREF="terminal_interface-curses-menus__adb.htm#ref_214_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_215_31" HREF="terminal_interface-curses-menus__adb.htm#ref_214_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_214_16">Item_Opts_Off</A></span> (<span class="symbol"><A NAME="ref_214_31" HREF="terminal_interface-curses-menus__adb.htm#ref_214_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_215_31" HREF="terminal_interface-curses-menus__adb.htm#ref_214_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Item_Opts_Off, "item_opts_off"); - -- <FONT COLOR=red><A NAME="ref_218_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := IOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_247_30">Options</A>); -- <FONT COLOR=red><A NAME="ref_219_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_218_7">Opt</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := IOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_245_30">Options</A>); -+ <span class="symbol"><A NAME="ref_219_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_248_30">On</A> <b>then</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_219_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_211_16">Item_Opts_On</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_246_30">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_218_7">Opt</A>); -+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_246_30">On</A> <b>then</b> -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_219_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_211_16">Item_Opts_On</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_244_30">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_218_7">Opt</A>); - <b>else</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_219_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_214_16">Item_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_246_30">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_218_7">Opt</A>); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_219_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_214_16">Item_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_244_30">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_218_7">Opt</A>); - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_219_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_219_7">Err</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_246_14">Switch_Options</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_244_14">Switch_Options</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_231_14" HREF="terminal_interface-curses-menus__ads.htm#ref_255_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_231_27" HREF="terminal_interface-curses-menus__ads.htm#ref_255_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_232_27" HREF="terminal_interface-curses-menus__ads.htm#ref_256_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_231_14" HREF="terminal_interface-curses-menus__ads.htm#ref_253_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_231_27" HREF="terminal_interface-curses-menus__ads.htm#ref_253_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_232_27" HREF="terminal_interface-curses-menus__ads.htm#ref_254_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_234_16">Item_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_234_27" HREF="terminal_interface-curses-menus__adb.htm#ref_234_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_234_16">Item_Opts</A></span> (<span class="symbol"><A NAME="ref_234_27" HREF="terminal_interface-curses-menus__adb.htm#ref_234_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Item_Opts, "item_opts"); - -- <FONT COLOR=red><A NAME="ref_237_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_234_16">Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_255_27">Itm</A>); -+ <span class="symbol"><A NAME="ref_237_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_234_16">Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_253_27">Itm</A>); - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_256_27">Options</A> := CInt_2_IOS (<A HREF="terminal_interface-curses-menus__adb.htm#ref_237_7">Res</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_255_14">Get_Options</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_254_27">Options</A> := CInt_2_IOS (<A HREF="terminal_interface-curses-menus__adb.htm#ref_237_7">Res</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_253_14">Get_Options</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_242_13" HREF="terminal_interface-curses-menus__ads.htm#ref_260_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_242_26" HREF="terminal_interface-curses-menus__ads.htm#ref_260_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_242_13" HREF="terminal_interface-curses-menus__ads.htm#ref_258_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_242_26" HREF="terminal_interface-curses-menus__ads.htm#ref_258_26">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_244_7">Ios</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_244_7">Ios</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_255_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_260_26">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_244_7">Ios</A>); -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_253_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_258_26">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_244_7">Ios</A>); - <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_244_7">Ios</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_260_13">Get_Options</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_250_14" HREF="terminal_interface-curses-menus__ads.htm#ref_269_14">Name</A></FONT> (<FONT COLOR=red><A NAME="ref_250_20" HREF="terminal_interface-curses-menus__ads.htm#ref_269_20">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_251_20" HREF="terminal_interface-curses-menus__ads.htm#ref_270_20">Name</A></FONT> : <b>out</b> String) -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_258_13">Get_Options</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_250_14" HREF="terminal_interface-curses-menus__ads.htm#ref_267_14">Name</A></span> (<span class="symbol"><A NAME="ref_250_20" HREF="terminal_interface-curses-menus__ads.htm#ref_267_20">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_251_20" HREF="terminal_interface-curses-menus__ads.htm#ref_268_20">Name</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_253_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="ref_253_26" HREF="terminal_interface-curses-menus__adb.htm#ref_253_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_253_16">Itemname</A></span> (<span class="symbol"><A NAME="ref_253_26" HREF="terminal_interface-curses-menus__adb.htm#ref_253_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Itemname, "item_name"); - <b>begin</b> -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_253_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_269_20">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_270_20">Name</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_269_14">Name</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_253_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_267_20">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_268_20">Name</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_267_14">Name</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_259_13" HREF="terminal_interface-curses-menus__ads.htm#ref_272_14">Name</A></FONT> (<FONT COLOR=red><A NAME="ref_259_19" HREF="terminal_interface-curses-menus__ads.htm#ref_272_20">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_259_13" HREF="terminal_interface-curses-menus__ads.htm#ref_270_14">Name</A></span> (<span class="symbol"><A NAME="ref_259_19" HREF="terminal_interface-curses-menus__ads.htm#ref_270_20">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_261_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="ref_261_26" HREF="terminal_interface-curses-menus__adb.htm#ref_261_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_261_16">Itemname</A></span> (<span class="symbol"><A NAME="ref_261_26" HREF="terminal_interface-curses-menus__adb.htm#ref_261_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Itemname, "item_name"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_261_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_272_20">Itm</A>)); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_272_14">Name</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_261_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_270_20">Itm</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_270_14">Name</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_267_14" HREF="terminal_interface-curses-menus__ads.htm#ref_278_14">Description</A></FONT> (<FONT COLOR=red><A NAME="ref_267_27" HREF="terminal_interface-curses-menus__ads.htm#ref_278_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_268_27" HREF="terminal_interface-curses-menus__ads.htm#ref_279_27">Description</A></FONT> : <b>out</b> String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_267_14" HREF="terminal_interface-curses-menus__ads.htm#ref_276_14">Description</A></span> (<span class="symbol"><A NAME="ref_267_27" HREF="terminal_interface-curses-menus__ads.htm#ref_276_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_268_27" HREF="terminal_interface-curses-menus__ads.htm#ref_277_27">Description</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_270_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="ref_270_26" HREF="terminal_interface-curses-menus__adb.htm#ref_270_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_270_16">Descname</A></span> (<span class="symbol"><A NAME="ref_270_26" HREF="terminal_interface-curses-menus__adb.htm#ref_270_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Descname, "item_description"); - <b>begin</b> -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_270_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_278_27">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_279_27">Description</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_278_14">Description</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_270_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_276_27">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_277_27">Description</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_276_14">Description</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_276_13" HREF="terminal_interface-curses-menus__ads.htm#ref_282_14">Description</A></FONT> (<FONT COLOR=red><A NAME="ref_276_26" HREF="terminal_interface-curses-menus__ads.htm#ref_282_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_276_13" HREF="terminal_interface-curses-menus__ads.htm#ref_280_14">Description</A></span> (<span class="symbol"><A NAME="ref_276_26" HREF="terminal_interface-curses-menus__ads.htm#ref_280_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_278_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="ref_278_26" HREF="terminal_interface-curses-menus__adb.htm#ref_278_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_278_16">Descname</A></span> (<span class="symbol"><A NAME="ref_278_26" HREF="terminal_interface-curses-menus__adb.htm#ref_278_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Descname, "item_description"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_278_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_282_27">Itm</A>)); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_282_14">Description</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_284_14" HREF="terminal_interface-curses-menus__ads.htm#ref_292_14">Set_Current</A></FONT> (<FONT COLOR=red><A NAME="ref_284_27" HREF="terminal_interface-curses-menus__ads.htm#ref_292_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_285_27" HREF="terminal_interface-curses-menus__ads.htm#ref_293_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) -+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_278_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_280_27">Itm</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_280_14">Description</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_284_14" HREF="terminal_interface-curses-menus__ads.htm#ref_290_14">Set_Current</A></span> (<span class="symbol"><A NAME="ref_284_27" HREF="terminal_interface-curses-menus__ads.htm#ref_290_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_285_27" HREF="terminal_interface-curses-menus__ads.htm#ref_291_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_287_16">Set_Curr_Item</A></FONT> (<FONT COLOR=red><A NAME="ref_287_31" HREF="terminal_interface-curses-menus__adb.htm#ref_287_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_288_31" HREF="terminal_interface-curses-menus__adb.htm#ref_287_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_287_16">Set_Curr_Item</A></span> (<span class="symbol"><A NAME="ref_287_31" HREF="terminal_interface-curses-menus__adb.htm#ref_287_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_288_31" HREF="terminal_interface-curses-menus__adb.htm#ref_287_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Curr_Item, "set_current_item"); - -- <FONT COLOR=red><A NAME="ref_291_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_287_16">Set_Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_292_27">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_293_27">Itm</A>); -+ <span class="symbol"><A NAME="ref_291_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_287_16">Set_Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_290_27">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_291_27">Itm</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_291_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_291_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_292_14">Set_Current</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_290_14">Set_Current</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_298_13" HREF="terminal_interface-curses-menus__ads.htm#ref_298_13">Current</A></FONT> (<FONT COLOR=red><A NAME="ref_298_22" HREF="terminal_interface-curses-menus__ads.htm#ref_298_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_298_13" HREF="terminal_interface-curses-menus__ads.htm#ref_296_13">Current</A></span> (<span class="symbol"><A NAME="ref_298_22" HREF="terminal_interface-curses-menus__ads.htm#ref_296_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_300_16">Curr_Item</A></FONT> (<FONT COLOR=red><A NAME="ref_300_27" HREF="terminal_interface-curses-menus__adb.htm#ref_300_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_300_16">Curr_Item</A></span> (<span class="symbol"><A NAME="ref_300_27" HREF="terminal_interface-curses-menus__adb.htm#ref_300_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; - <b>pragma</b> Import (C, Curr_Item, "current_item"); - -- <FONT COLOR=red><A NAME="ref_303_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_300_16">Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_298_22">Men</A>); -+ <span class="symbol"><A NAME="ref_303_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_300_16">Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_296_22">Men</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_303_7">Res</A> = <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b> - <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_303_7">Res</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_298_13">Current</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_296_13">Current</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_311_14" HREF="terminal_interface-curses-menus__ads.htm#ref_303_14">Set_Top_Row</A></FONT> (<FONT COLOR=red><A NAME="ref_311_27" HREF="terminal_interface-curses-menus__ads.htm#ref_303_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_312_27" HREF="terminal_interface-curses-menus__ads.htm#ref_304_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_311_14" HREF="terminal_interface-curses-menus__ads.htm#ref_301_14">Set_Top_Row</A></span> (<span class="symbol"><A NAME="ref_311_27" HREF="terminal_interface-curses-menus__ads.htm#ref_301_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_312_27" HREF="terminal_interface-curses-menus__ads.htm#ref_302_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_314_16">Set_Toprow</A></FONT> (<FONT COLOR=red><A NAME="ref_314_28" HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_315_28" HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_314_16">Set_Toprow</A></span> (<span class="symbol"><A NAME="ref_314_28" HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_315_28" HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Toprow, "set_top_row"); - -- <FONT COLOR=red><A NAME="ref_318_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">Set_Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_303_27">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_304_27">Line</A>)); -+ <span class="symbol"><A NAME="ref_318_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">Set_Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_301_27">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_302_27">Line</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_318_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_318_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_303_14">Set_Top_Row</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_301_14">Set_Top_Row</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_325_13" HREF="terminal_interface-curses-menus__ads.htm#ref_309_13">Top_Row</A></FONT> (<FONT COLOR=red><A NAME="ref_325_22" HREF="terminal_interface-curses-menus__ads.htm#ref_309_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_325_13" HREF="terminal_interface-curses-menus__ads.htm#ref_307_13">Top_Row</A></span> (<span class="symbol"><A NAME="ref_325_22" HREF="terminal_interface-curses-menus__ads.htm#ref_307_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_327_16">Toprow</A></FONT> (<FONT COLOR=red><A NAME="ref_327_24" HREF="terminal_interface-curses-menus__adb.htm#ref_327_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_327_16">Toprow</A></span> (<span class="symbol"><A NAME="ref_327_24" HREF="terminal_interface-curses-menus__adb.htm#ref_327_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Toprow, "top_row"); - -- <FONT COLOR=red><A NAME="ref_330_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_327_16">Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_309_22">Men</A>); -+ <span class="symbol"><A NAME="ref_330_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_327_16">Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_307_22">Men</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_330_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> - <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_330_7">Res</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_309_13">Top_Row</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_307_13">Top_Row</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_338_13" HREF="terminal_interface-curses-menus__ads.htm#ref_314_13">Get_Index</A></FONT> (<FONT COLOR=red><A NAME="ref_338_24" HREF="terminal_interface-curses-menus__ads.htm#ref_314_24">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Positive -+ <b>function</b> <span class="symbol"><A NAME="ref_338_13" HREF="terminal_interface-curses-menus__ads.htm#ref_312_13">Get_Index</A></span> (<span class="symbol"><A NAME="ref_338_24" HREF="terminal_interface-curses-menus__ads.htm#ref_312_24">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Positive - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_340_16">Get_Itemindex</A></FONT> (<FONT COLOR=red><A NAME="ref_340_31" HREF="terminal_interface-curses-menus__adb.htm#ref_340_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_340_16">Get_Itemindex</A></span> (<span class="symbol"><A NAME="ref_340_31" HREF="terminal_interface-curses-menus__adb.htm#ref_340_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Get_Itemindex, "item_index"); - -- <FONT COLOR=red><A NAME="ref_343_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_340_16">Get_Itemindex</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_314_24">Itm</A>); -+ <span class="symbol"><A NAME="ref_343_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_340_16">Get_Itemindex</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_312_24">Itm</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_343_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> - <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> Positive (Natural (<A HREF="terminal_interface-curses-menus__adb.htm#ref_343_7">Res</A>) + Positive'First); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_314_13">Get_Index</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_351_14" HREF="terminal_interface-curses-menus__ads.htm#ref_326_14">Post</A></FONT> (<FONT COLOR=red><A NAME="ref_351_20" HREF="terminal_interface-curses-menus__ads.htm#ref_326_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_352_20" HREF="terminal_interface-curses-menus__ads.htm#ref_327_20">Post</A></FONT> : Boolean := True) -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_312_13">Get_Index</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_351_14" HREF="terminal_interface-curses-menus__ads.htm#ref_324_14">Post</A></span> (<span class="symbol"><A NAME="ref_351_20" HREF="terminal_interface-curses-menus__ads.htm#ref_324_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_352_20" HREF="terminal_interface-curses-menus__ads.htm#ref_325_20">Post</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_354_16">M_Post</A></FONT> (<FONT COLOR=red><A NAME="ref_354_24" HREF="terminal_interface-curses-menus__adb.htm#ref_354_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_354_16">M_Post</A></span> (<span class="symbol"><A NAME="ref_354_24" HREF="terminal_interface-curses-menus__adb.htm#ref_354_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, M_Post, "post_menu"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_356_16">M_Unpost</A></FONT> (<FONT COLOR=red><A NAME="ref_356_26" HREF="terminal_interface-curses-menus__adb.htm#ref_356_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_356_16">M_Unpost</A></span> (<span class="symbol"><A NAME="ref_356_26" HREF="terminal_interface-curses-menus__adb.htm#ref_356_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, M_Unpost, "unpost_menu"); - -- <FONT COLOR=red><A NAME="ref_359_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_359_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_327_20">Post</A> <b>then</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_359_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_354_16">M_Post</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_326_20">Men</A>); -+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_325_20">Post</A> <b>then</b> -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_359_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_354_16">M_Post</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_324_20">Men</A>); - <b>else</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_359_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_356_16">M_Unpost</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_326_20">Men</A>); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_359_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_356_16">M_Unpost</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_324_20">Men</A>); - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_359_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_359_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_326_14">Post</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_371_14" HREF="terminal_interface-curses-menus__ads.htm#ref_337_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_371_27" HREF="terminal_interface-curses-menus__ads.htm#ref_337_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_372_27" HREF="terminal_interface-curses-menus__ads.htm#ref_338_27">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_324_14">Post</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_371_14" HREF="terminal_interface-curses-menus__ads.htm#ref_335_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_371_27" HREF="terminal_interface-curses-menus__ads.htm#ref_335_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_372_27" HREF="terminal_interface-curses-menus__ads.htm#ref_336_27">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_374_16">Set_Menu_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_374_31" HREF="terminal_interface-curses-menus__adb.htm#ref_374_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_375_31" HREF="terminal_interface-curses-menus__adb.htm#ref_374_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_374_16">Set_Menu_Opts</A></span> (<span class="symbol"><A NAME="ref_374_31" HREF="terminal_interface-curses-menus__adb.htm#ref_374_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_375_31" HREF="terminal_interface-curses-menus__adb.htm#ref_374_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Opts, "set_menu_opts"); - -- <FONT COLOR=red><A NAME="ref_378_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := MOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_338_27">Options</A>); -- <FONT COLOR=red><A NAME="ref_379_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_378_7">Opt</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := MOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_336_27">Options</A>); -+ <span class="symbol"><A NAME="ref_379_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_379_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_374_16">Set_Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_337_27">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_378_7">Opt</A>); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_379_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_374_16">Set_Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_335_27">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_378_7">Opt</A>); - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_379_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_379_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_337_14">Set_Options</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_335_14">Set_Options</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_387_14" HREF="terminal_interface-curses-menus__ads.htm#ref_343_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_387_30" HREF="terminal_interface-curses-menus__ads.htm#ref_343_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_388_30" HREF="terminal_interface-curses-menus__ads.htm#ref_344_30">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>; -- <FONT COLOR=red><A NAME="ref_389_30" HREF="terminal_interface-curses-menus__ads.htm#ref_345_30">On</A></FONT> : Boolean := True) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_387_14" HREF="terminal_interface-curses-menus__ads.htm#ref_341_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_387_30" HREF="terminal_interface-curses-menus__ads.htm#ref_341_30">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_388_30" HREF="terminal_interface-curses-menus__ads.htm#ref_342_30">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_389_30" HREF="terminal_interface-curses-menus__ads.htm#ref_343_30">On</A></span> : Boolean := True) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_391_16">Menu_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="ref_391_30" HREF="terminal_interface-curses-menus__adb.htm#ref_391_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_392_30" HREF="terminal_interface-curses-menus__adb.htm#ref_391_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_391_16">Menu_Opts_On</A></span> (<span class="symbol"><A NAME="ref_391_30" HREF="terminal_interface-curses-menus__adb.htm#ref_391_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_392_30" HREF="terminal_interface-curses-menus__adb.htm#ref_391_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Menu_Opts_On, "menu_opts_on"); -- <b>function</b> <FONT COLOR=red><A NAME="ref_394_16">Menu_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="ref_394_31" HREF="terminal_interface-curses-menus__adb.htm#ref_394_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_395_31" HREF="terminal_interface-curses-menus__adb.htm#ref_394_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_394_16">Menu_Opts_Off</A></span> (<span class="symbol"><A NAME="ref_394_31" HREF="terminal_interface-curses-menus__adb.htm#ref_394_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_395_31" HREF="terminal_interface-curses-menus__adb.htm#ref_394_16">Opt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Menu_Opts_Off, "menu_opts_off"); - -- <FONT COLOR=red><A NAME="ref_398_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := MOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_344_30">Options</A>); -- <FONT COLOR=red><A NAME="ref_399_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_398_7">Opt</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := MOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_342_30">Options</A>); -+ <span class="symbol"><A NAME="ref_399_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_345_30">On</A> <b>then</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_399_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_391_16">Menu_Opts_On</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_343_30">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_398_7">Opt</A>); -+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_343_30">On</A> <b>then</b> -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_399_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_391_16">Menu_Opts_On</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_341_30">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_398_7">Opt</A>); - <b>else</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_399_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_394_16">Menu_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_343_30">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_398_7">Opt</A>); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_399_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_394_16">Menu_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_341_30">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_398_7">Opt</A>); - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_399_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_399_7">Err</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_343_14">Switch_Options</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_341_14">Switch_Options</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_411_14" HREF="terminal_interface-curses-menus__ads.htm#ref_351_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_411_27" HREF="terminal_interface-curses-menus__ads.htm#ref_351_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_412_27" HREF="terminal_interface-curses-menus__ads.htm#ref_352_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_411_14" HREF="terminal_interface-curses-menus__ads.htm#ref_349_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_411_27" HREF="terminal_interface-curses-menus__ads.htm#ref_349_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_412_27" HREF="terminal_interface-curses-menus__ads.htm#ref_350_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_414_16">Menu_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_414_27" HREF="terminal_interface-curses-menus__adb.htm#ref_414_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_414_16">Menu_Opts</A></span> (<span class="symbol"><A NAME="ref_414_27" HREF="terminal_interface-curses-menus__adb.htm#ref_414_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Menu_Opts, "menu_opts"); - -- <FONT COLOR=red><A NAME="ref_417_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_414_16">Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_351_27">Men</A>); -+ <span class="symbol"><A NAME="ref_417_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_414_16">Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_349_27">Men</A>); - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_352_27">Options</A> := CInt_2_MOS (<A HREF="terminal_interface-curses-menus__adb.htm#ref_417_7">Res</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_351_14">Get_Options</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_350_27">Options</A> := CInt_2_MOS (<A HREF="terminal_interface-curses-menus__adb.htm#ref_417_7">Res</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_349_14">Get_Options</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_422_13" HREF="terminal_interface-curses-menus__ads.htm#ref_356_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_422_26" HREF="terminal_interface-curses-menus__ads.htm#ref_356_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_422_13" HREF="terminal_interface-curses-menus__ads.htm#ref_354_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_422_26" HREF="terminal_interface-curses-menus__ads.htm#ref_354_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_424_7">Mos</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_424_7">Mos</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_351_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_356_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_424_7">Mos</A>); -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_349_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_354_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_424_7">Mos</A>); - <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_424_7">Mos</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_356_13">Get_Options</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_430_14" HREF="terminal_interface-curses-menus__ads.htm#ref_365_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_430_26" HREF="terminal_interface-curses-menus__ads.htm#ref_365_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_431_26" HREF="terminal_interface-curses-menus__ads.htm#ref_366_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_354_13">Get_Options</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_430_14" HREF="terminal_interface-curses-menus__ads.htm#ref_363_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_430_26" HREF="terminal_interface-curses-menus__ads.htm#ref_363_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_431_26" HREF="terminal_interface-curses-menus__ads.htm#ref_364_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_433_16">Set_Menu_Win</A></FONT> (<FONT COLOR=red><A NAME="ref_433_30" HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_434_30" HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_433_16">Set_Menu_Win</A></span> (<span class="symbol"><A NAME="ref_433_30" HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_434_30" HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Win, "set_menu_win"); - -- <FONT COLOR=red><A NAME="ref_437_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Set_Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_365_26">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_366_26">Win</A>); -+ <span class="symbol"><A NAME="ref_437_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Set_Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_363_26">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_364_26">Win</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_437_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_437_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_365_14">Set_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_363_14">Set_Window</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_444_13" HREF="terminal_interface-curses-menus__ads.htm#ref_371_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_444_25" HREF="terminal_interface-curses-menus__ads.htm#ref_371_25">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_444_13" HREF="terminal_interface-curses-menus__ads.htm#ref_369_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_444_25" HREF="terminal_interface-curses-menus__ads.htm#ref_369_25">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_446_16">Menu_Win</A></FONT> (<FONT COLOR=red><A NAME="ref_446_26" HREF="terminal_interface-curses-menus__adb.htm#ref_446_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_446_16">Menu_Win</A></span> (<span class="symbol"><A NAME="ref_446_26" HREF="terminal_interface-curses-menus__adb.htm#ref_446_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Menu_Win, "menu_win"); - -- <FONT COLOR=red><A NAME="ref_449_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_446_16">Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_371_25">Men</A>); -+ <span class="symbol"><A NAME="ref_449_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_446_16">Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_369_25">Men</A>); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_449_7">W</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_371_13">Get_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_369_13">Get_Window</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_454_14" HREF="terminal_interface-curses-menus__ads.htm#ref_376_14">Set_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_454_30" HREF="terminal_interface-curses-menus__ads.htm#ref_376_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_455_30" HREF="terminal_interface-curses-menus__ads.htm#ref_377_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_454_14" HREF="terminal_interface-curses-menus__ads.htm#ref_374_14">Set_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_454_30" HREF="terminal_interface-curses-menus__ads.htm#ref_374_30">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_455_30" HREF="terminal_interface-curses-menus__ads.htm#ref_375_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_457_16">Set_Menu_Sub</A></FONT> (<FONT COLOR=red><A NAME="ref_457_30" HREF="terminal_interface-curses-menus__adb.htm#ref_457_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_458_30" HREF="terminal_interface-curses-menus__adb.htm#ref_457_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_457_16">Set_Menu_Sub</A></span> (<span class="symbol"><A NAME="ref_457_30" HREF="terminal_interface-curses-menus__adb.htm#ref_457_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_458_30" HREF="terminal_interface-curses-menus__adb.htm#ref_457_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Sub, "set_menu_sub"); - -- <FONT COLOR=red><A NAME="ref_461_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_457_16">Set_Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_376_30">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_377_30">Win</A>); -+ <span class="symbol"><A NAME="ref_461_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_457_16">Set_Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_374_30">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_375_30">Win</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_461_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_461_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_376_14">Set_Sub_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_374_14">Set_Sub_Window</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_468_13" HREF="terminal_interface-curses-menus__ads.htm#ref_382_13">Get_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_468_29" HREF="terminal_interface-curses-menus__ads.htm#ref_382_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_468_13" HREF="terminal_interface-curses-menus__ads.htm#ref_380_13">Get_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_468_29" HREF="terminal_interface-curses-menus__ads.htm#ref_380_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_470_16">Menu_Sub</A></FONT> (<FONT COLOR=red><A NAME="ref_470_26" HREF="terminal_interface-curses-menus__adb.htm#ref_470_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_470_16">Menu_Sub</A></span> (<span class="symbol"><A NAME="ref_470_26" HREF="terminal_interface-curses-menus__adb.htm#ref_470_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Menu_Sub, "menu_sub"); - -- <FONT COLOR=red><A NAME="ref_473_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_470_16">Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_382_29">Men</A>); -+ <span class="symbol"><A NAME="ref_473_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_470_16">Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_380_29">Men</A>); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_473_7">W</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_382_13">Get_Sub_Window</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_380_13">Get_Sub_Window</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_478_14" HREF="terminal_interface-curses-menus__ads.htm#ref_387_14">Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_478_21" HREF="terminal_interface-curses-menus__ads.htm#ref_387_21">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_479_21" HREF="terminal_interface-curses-menus__ads.htm#ref_388_21">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_480_21" HREF="terminal_interface-curses-menus__ads.htm#ref_389_21">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) -- <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_482_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_483_16">M_Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_483_25" HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_484_25" HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">Yp</A></FONT>, <FONT COLOR=red><A NAME="ref_484_29" HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">Xp</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_482_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_478_14" HREF="terminal_interface-curses-menus__ads.htm#ref_385_14">Scale</A></span> (<span class="symbol"><A NAME="ref_478_21" HREF="terminal_interface-curses-menus__ads.htm#ref_385_21">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_479_21" HREF="terminal_interface-curses-menus__ads.htm#ref_386_21">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_480_21" HREF="terminal_interface-curses-menus__ads.htm#ref_387_21">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) -+ <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_482_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_483_16">M_Scale</A></span> (<span class="symbol"><A NAME="ref_483_25" HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_484_25" HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">Yp</A></span>, <span class="symbol"><A NAME="ref_484_29" HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">Xp</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_482_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, M_Scale, "scale_menu"); - -- <FONT COLOR=red><A NAME="ref_487_7">X</A></FONT>, <FONT COLOR=red><A NAME="ref_487_10">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_488_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">M_Scale</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_387_21">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_487_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_487_7">X</A>'<b>Access</b>); -+ <span class="symbol"><A NAME="ref_487_7">X</A></span>, <span class="symbol"><A NAME="ref_487_10">Y</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_488_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">M_Scale</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_385_21">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_487_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_487_7">X</A>'<b>Access</b>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_488_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_488_7">Res</A>); - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_388_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_487_10">Y</A>); -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_389_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_487_7">X</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_387_14">Scale</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_497_14" HREF="terminal_interface-curses-menus__ads.htm#ref_398_14">Position_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_497_31" HREF="terminal_interface-curses-menus__ads.htm#ref_398_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_386_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_487_10">Y</A>); -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_387_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_487_7">X</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_385_14">Scale</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_497_14" HREF="terminal_interface-curses-menus__ads.htm#ref_396_14">Position_Cursor</A></span> (<span class="symbol"><A NAME="ref_497_31" HREF="terminal_interface-curses-menus__ads.htm#ref_396_31">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_499_16">Pos_Menu_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_499_33" HREF="terminal_interface-curses-menus__adb.htm#ref_499_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_499_16">Pos_Menu_Cursor</A></span> (<span class="symbol"><A NAME="ref_499_33" HREF="terminal_interface-curses-menus__adb.htm#ref_499_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Pos_Menu_Cursor, "pos_menu_cursor"); - -- <FONT COLOR=red><A NAME="ref_502_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_499_16">Pos_Menu_Cursor</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_398_31">Men</A>); -+ <span class="symbol"><A NAME="ref_502_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_499_16">Pos_Menu_Cursor</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_396_31">Men</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_502_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_502_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_398_14">Position_Cursor</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_396_14">Position_Cursor</A>; - --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_510_14" HREF="terminal_interface-curses-menus__ads.htm#ref_407_14">Set_Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_510_24" HREF="terminal_interface-curses-menus__ads.htm#ref_407_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_511_24" HREF="terminal_interface-curses-menus__ads.htm#ref_408_24">Mark</A></FONT> : String) -- <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_513_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char; -- <b>function</b> <FONT COLOR=red><A NAME="ref_514_16">Set_Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_514_26" HREF="terminal_interface-curses-menus__adb.htm#ref_514_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_515_26" HREF="terminal_interface-curses-menus__adb.htm#ref_514_16">Mark</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_513_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_510_14" HREF="terminal_interface-curses-menus__ads.htm#ref_405_14">Set_Mark</A></span> (<span class="symbol"><A NAME="ref_510_24" HREF="terminal_interface-curses-menus__ads.htm#ref_405_24">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_511_24" HREF="terminal_interface-curses-menus__ads.htm#ref_406_24">Mark</A></span> : String) -+ <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_513_12">Char_Ptr</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char; -+ <b>function</b> <span class="symbol"><A NAME="ref_514_16">Set_Mark</A></span> (<span class="symbol"><A NAME="ref_514_26" HREF="terminal_interface-curses-menus__adb.htm#ref_514_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_515_26" HREF="terminal_interface-curses-menus__adb.htm#ref_514_16">Mark</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_513_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Mark, "set_menu_mark"); - -- <FONT COLOR=red><A NAME="ref_518_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_408_24">Mark</A>'Length); -- <FONT COLOR=red><A NAME="ref_519_7">Len</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_520_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_518_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_406_24">Mark</A>'Length); -+ <span class="symbol"><A NAME="ref_519_7">Len</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_520_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_408_24">Mark</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_518_7">Txt</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_519_7">Len</A>); -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_520_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_514_16">Set_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_407_24">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_518_7">Txt</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_518_7">Txt</A>'First)'<b>Access</b>); -+ To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_406_24">Mark</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_518_7">Txt</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_519_7">Len</A>); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_520_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_514_16">Set_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_405_24">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_518_7">Txt</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_518_7">Txt</A>'First)'<b>Access</b>); - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_520_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_520_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_407_14">Set_Mark</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_405_14">Set_Mark</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_529_14" HREF="terminal_interface-curses-menus__ads.htm#ref_413_14">Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_529_20" HREF="terminal_interface-curses-menus__ads.htm#ref_413_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_530_20" HREF="terminal_interface-curses-menus__ads.htm#ref_414_20">Mark</A></FONT> : <b>out</b> String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_529_14" HREF="terminal_interface-curses-menus__ads.htm#ref_411_14">Mark</A></span> (<span class="symbol"><A NAME="ref_529_20" HREF="terminal_interface-curses-menus__ads.htm#ref_411_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_530_20" HREF="terminal_interface-curses-menus__ads.htm#ref_412_20">Mark</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_532_16">Get_Menu_Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_532_31" HREF="terminal_interface-curses-menus__adb.htm#ref_532_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_532_16">Get_Menu_Mark</A></span> (<span class="symbol"><A NAME="ref_532_31" HREF="terminal_interface-curses-menus__adb.htm#ref_532_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Get_Menu_Mark, "menu_mark"); - <b>begin</b> -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_532_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_413_20">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_414_20">Mark</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_413_14">Mark</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_532_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_411_20">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_412_20">Mark</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_411_14">Mark</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_538_13" HREF="terminal_interface-curses-menus__ads.htm#ref_417_14">Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_538_19" HREF="terminal_interface-curses-menus__ads.htm#ref_417_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> String -+ <b>function</b> <span class="symbol"><A NAME="ref_538_13" HREF="terminal_interface-curses-menus__ads.htm#ref_415_14">Mark</A></span> (<span class="symbol"><A NAME="ref_538_19" HREF="terminal_interface-curses-menus__ads.htm#ref_415_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> String - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_540_16">Get_Menu_Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_540_31" HREF="terminal_interface-curses-menus__adb.htm#ref_540_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_540_16">Get_Menu_Mark</A></span> (<span class="symbol"><A NAME="ref_540_31" HREF="terminal_interface-curses-menus__adb.htm#ref_540_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Get_Menu_Mark, "menu_mark"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_540_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_417_20">Men</A>)); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_417_14">Mark</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_540_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_415_20">Men</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_415_14">Mark</A>; - --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_547_14" HREF="terminal_interface-curses-menus__ads.htm#ref_427_14">Set_Foreground</A></FONT> -- (<FONT COLOR=red><A NAME="ref_548_7" HREF="terminal_interface-curses-menus__ads.htm#ref_428_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_549_7" HREF="terminal_interface-curses-menus__ads.htm#ref_429_7">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_550_7" HREF="terminal_interface-curses-menus__ads.htm#ref_430_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_547_14" HREF="terminal_interface-curses-menus__ads.htm#ref_425_14">Set_Foreground</A></span> -+ (<span class="symbol"><A NAME="ref_548_7" HREF="terminal_interface-curses-menus__ads.htm#ref_426_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_549_7" HREF="terminal_interface-curses-menus__ads.htm#ref_427_7">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_550_7" HREF="terminal_interface-curses-menus__ads.htm#ref_428_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_552_16">Set_Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_552_31" HREF="terminal_interface-curses-menus__adb.htm#ref_552_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_553_31" HREF="terminal_interface-curses-menus__adb.htm#ref_552_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_552_16">Set_Menu_Fore</A></span> (<span class="symbol"><A NAME="ref_552_31" HREF="terminal_interface-curses-menus__adb.htm#ref_552_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_553_31" HREF="terminal_interface-curses-menus__adb.htm#ref_552_16">Attr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Fore, "set_menu_fore"); - -- <FONT COLOR=red><A NAME="ref_556_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_430_7">Color</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_429_7">Fore</A>); -- <FONT COLOR=red><A NAME="ref_559_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_552_16">Set_Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_428_7">Men</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-menus__adb.htm#ref_556_7">Ch</A>)); -+ <span class="symbol"><A NAME="ref_556_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_428_7">Color</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_427_7">Fore</A>); -+ <span class="symbol"><A NAME="ref_559_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_552_16">Set_Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_426_7">Men</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-menus__adb.htm#ref_556_7">Ch</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_559_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_559_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_427_14">Set_Foreground</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_425_14">Set_Foreground</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_566_14" HREF="terminal_interface-curses-menus__ads.htm#ref_435_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_566_26" HREF="terminal_interface-curses-menus__ads.htm#ref_435_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_567_26" HREF="terminal_interface-curses-menus__ads.htm#ref_436_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_566_14" HREF="terminal_interface-curses-menus__ads.htm#ref_433_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_566_26" HREF="terminal_interface-curses-menus__ads.htm#ref_433_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_567_26" HREF="terminal_interface-curses-menus__ads.htm#ref_434_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_569_16">Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_569_27" HREF="terminal_interface-curses-menus__adb.htm#ref_569_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_569_16">Menu_Fore</A></span> (<span class="symbol"><A NAME="ref_569_27" HREF="terminal_interface-curses-menus__adb.htm#ref_569_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Menu_Fore, "menu_fore"); - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_436_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_569_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_435_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_435_14">Foreground</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_434_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_569_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_433_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_433_14">Foreground</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_575_14" HREF="terminal_interface-curses-menus__ads.htm#ref_440_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_575_26" HREF="terminal_interface-curses-menus__ads.htm#ref_440_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_576_26" HREF="terminal_interface-curses-menus__ads.htm#ref_441_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_577_26" HREF="terminal_interface-curses-menus__ads.htm#ref_442_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_575_14" HREF="terminal_interface-curses-menus__ads.htm#ref_438_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_575_26" HREF="terminal_interface-curses-menus__ads.htm#ref_438_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_576_26" HREF="terminal_interface-curses-menus__ads.htm#ref_439_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_577_26" HREF="terminal_interface-curses-menus__ads.htm#ref_440_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_579_16">Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_579_27" HREF="terminal_interface-curses-menus__adb.htm#ref_579_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_579_16">Menu_Fore</A></span> (<span class="symbol"><A NAME="ref_579_27" HREF="terminal_interface-curses-menus__adb.htm#ref_579_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Menu_Fore, "menu_fore"); - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_441_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_579_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_440_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_442_26">Color</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_579_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_440_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_440_14">Foreground</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_586_14" HREF="terminal_interface-curses-menus__ads.htm#ref_447_14">Set_Background</A></FONT> -- (<FONT COLOR=red><A NAME="ref_587_7" HREF="terminal_interface-curses-menus__ads.htm#ref_448_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_588_7" HREF="terminal_interface-curses-menus__ads.htm#ref_449_7">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_589_7" HREF="terminal_interface-curses-menus__ads.htm#ref_450_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_439_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_579_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_438_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_440_26">Color</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_579_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_438_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_438_14">Foreground</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_586_14" HREF="terminal_interface-curses-menus__ads.htm#ref_445_14">Set_Background</A></span> -+ (<span class="symbol"><A NAME="ref_587_7" HREF="terminal_interface-curses-menus__ads.htm#ref_446_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_588_7" HREF="terminal_interface-curses-menus__ads.htm#ref_447_7">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_589_7" HREF="terminal_interface-curses-menus__ads.htm#ref_448_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_591_16">Set_Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_591_31" HREF="terminal_interface-curses-menus__adb.htm#ref_591_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_592_31" HREF="terminal_interface-curses-menus__adb.htm#ref_591_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_591_16">Set_Menu_Back</A></span> (<span class="symbol"><A NAME="ref_591_31" HREF="terminal_interface-curses-menus__adb.htm#ref_591_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_592_31" HREF="terminal_interface-curses-menus__adb.htm#ref_591_16">Attr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Back, "set_menu_back"); - -- <FONT COLOR=red><A NAME="ref_595_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_450_7">Color</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_449_7">Back</A>); -- <FONT COLOR=red><A NAME="ref_598_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_591_16">Set_Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_448_7">Men</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-menus__adb.htm#ref_595_7">Ch</A>)); -+ <span class="symbol"><A NAME="ref_595_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_448_7">Color</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_447_7">Back</A>); -+ <span class="symbol"><A NAME="ref_598_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_591_16">Set_Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_446_7">Men</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-menus__adb.htm#ref_595_7">Ch</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_598_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_598_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_447_14">Set_Background</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_445_14">Set_Background</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_605_14" HREF="terminal_interface-curses-menus__ads.htm#ref_455_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_605_26" HREF="terminal_interface-curses-menus__ads.htm#ref_455_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_606_26" HREF="terminal_interface-curses-menus__ads.htm#ref_456_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_605_14" HREF="terminal_interface-curses-menus__ads.htm#ref_453_14">Background</A></span> (<span class="symbol"><A NAME="ref_605_26" HREF="terminal_interface-curses-menus__ads.htm#ref_453_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_606_26" HREF="terminal_interface-curses-menus__ads.htm#ref_454_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_608_16">Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_608_27" HREF="terminal_interface-curses-menus__adb.htm#ref_608_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_608_16">Menu_Back</A></span> (<span class="symbol"><A NAME="ref_608_27" HREF="terminal_interface-curses-menus__adb.htm#ref_608_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Menu_Back, "menu_back"); - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_456_26">Back</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_608_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_455_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_455_14">Background</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_454_26">Back</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_608_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_453_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_453_14">Background</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_614_14" HREF="terminal_interface-curses-menus__ads.htm#ref_460_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_614_26" HREF="terminal_interface-curses-menus__ads.htm#ref_460_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_615_26" HREF="terminal_interface-curses-menus__ads.htm#ref_461_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_616_26" HREF="terminal_interface-curses-menus__ads.htm#ref_462_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_614_14" HREF="terminal_interface-curses-menus__ads.htm#ref_458_14">Background</A></span> (<span class="symbol"><A NAME="ref_614_26" HREF="terminal_interface-curses-menus__ads.htm#ref_458_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_615_26" HREF="terminal_interface-curses-menus__ads.htm#ref_459_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_616_26" HREF="terminal_interface-curses-menus__ads.htm#ref_460_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_618_16">Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_618_27" HREF="terminal_interface-curses-menus__adb.htm#ref_618_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_618_16">Menu_Back</A></span> (<span class="symbol"><A NAME="ref_618_27" HREF="terminal_interface-curses-menus__adb.htm#ref_618_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Menu_Back, "menu_back"); - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_461_26">Back</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_618_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_460_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_462_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_618_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_460_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_460_14">Background</A>; -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_625_14" HREF="terminal_interface-curses-menus__ads.htm#ref_467_14">Set_Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_625_24" HREF="terminal_interface-curses-menus__ads.htm#ref_468_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_626_24" HREF="terminal_interface-curses-menus__ads.htm#ref_469_7">Grey</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_627_24" HREF="terminal_interface-curses-menus__ads.htm#ref_470_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_459_26">Back</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_618_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_458_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_460_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_618_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_458_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_458_14">Background</A>; -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_625_14" HREF="terminal_interface-curses-menus__ads.htm#ref_465_14">Set_Grey</A></span> (<span class="symbol"><A NAME="ref_625_24" HREF="terminal_interface-curses-menus__ads.htm#ref_466_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_626_24" HREF="terminal_interface-curses-menus__ads.htm#ref_467_7">Grey</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_627_24" HREF="terminal_interface-curses-menus__ads.htm#ref_468_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_629_16">Set_Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_629_31" HREF="terminal_interface-curses-menus__adb.htm#ref_629_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_630_31" HREF="terminal_interface-curses-menus__adb.htm#ref_629_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_629_16">Set_Menu_Grey</A></span> (<span class="symbol"><A NAME="ref_629_31" HREF="terminal_interface-curses-menus__adb.htm#ref_629_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_630_31" HREF="terminal_interface-curses-menus__adb.htm#ref_629_16">Attr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Grey, "set_menu_grey"); - -- <FONT COLOR=red><A NAME="ref_633_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, -- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_470_7">Color</A>, -- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_469_7">Grey</A>); -+ <span class="symbol"><A NAME="ref_633_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Ch</A> =&gt; Character'First, -+ <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_468_7">Color</A>, -+ <A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_467_7">Grey</A>); - -- <FONT COLOR=red><A NAME="ref_637_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_629_16">Set_Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_468_7">Men</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-menus__adb.htm#ref_633_7">Ch</A>)); -+ <span class="symbol"><A NAME="ref_637_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_629_16">Set_Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_466_7">Men</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-menus__adb.htm#ref_633_7">Ch</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_637_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_637_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_467_14">Set_Grey</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_465_14">Set_Grey</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_644_14" HREF="terminal_interface-curses-menus__ads.htm#ref_475_14">Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_644_20" HREF="terminal_interface-curses-menus__ads.htm#ref_475_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_645_20" HREF="terminal_interface-curses-menus__ads.htm#ref_476_20">Grey</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_644_14" HREF="terminal_interface-curses-menus__ads.htm#ref_473_14">Grey</A></span> (<span class="symbol"><A NAME="ref_644_20" HREF="terminal_interface-curses-menus__ads.htm#ref_473_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_645_20" HREF="terminal_interface-curses-menus__ads.htm#ref_474_20">Grey</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_647_16">Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_647_27" HREF="terminal_interface-curses-menus__adb.htm#ref_647_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_647_16">Menu_Grey</A></span> (<span class="symbol"><A NAME="ref_647_27" HREF="terminal_interface-curses-menus__adb.htm#ref_647_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Menu_Grey, "menu_grey"); - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_476_20">Grey</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_647_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_475_20">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_475_14">Grey</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_474_20">Grey</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_647_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_473_20">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_473_14">Grey</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_653_14" HREF="terminal_interface-curses-menus__ads.htm#ref_480_14">Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_653_20" HREF="terminal_interface-curses-menus__ads.htm#ref_481_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_654_20" HREF="terminal_interface-curses-menus__ads.htm#ref_482_7">Grey</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_655_20" HREF="terminal_interface-curses-menus__ads.htm#ref_483_7">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_653_14" HREF="terminal_interface-curses-menus__ads.htm#ref_478_14">Grey</A></span> (<span class="symbol"><A NAME="ref_653_20" HREF="terminal_interface-curses-menus__ads.htm#ref_479_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_654_20" HREF="terminal_interface-curses-menus__ads.htm#ref_480_7">Grey</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_655_20" HREF="terminal_interface-curses-menus__ads.htm#ref_481_7">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_657_16">Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_657_27" HREF="terminal_interface-curses-menus__adb.htm#ref_657_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_657_16">Menu_Grey</A></span> (<span class="symbol"><A NAME="ref_657_27" HREF="terminal_interface-curses-menus__adb.htm#ref_657_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>; - <b>pragma</b> Import (C, Menu_Grey, "menu_grey"); - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_482_7">Grey</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_657_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_481_7">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>; -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_483_7">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_657_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_481_7">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_480_14">Grey</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_480_7">Grey</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_657_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_479_7">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_355_10">Attr</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_481_7">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_657_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_479_7">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Color</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_478_14">Grey</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_664_14" HREF="terminal_interface-curses-menus__ads.htm#ref_488_14">Set_Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_664_33" HREF="terminal_interface-curses-menus__ads.htm#ref_488_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_665_33" HREF="terminal_interface-curses-menus__ads.htm#ref_489_33">Pad</A></FONT> : Character := Space) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_664_14" HREF="terminal_interface-curses-menus__ads.htm#ref_486_14">Set_Pad_Character</A></span> (<span class="symbol"><A NAME="ref_664_33" HREF="terminal_interface-curses-menus__ads.htm#ref_486_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_665_33" HREF="terminal_interface-curses-menus__ads.htm#ref_487_33">Pad</A></span> : Character := Space) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_667_16">Set_Menu_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_667_30" HREF="terminal_interface-curses-menus__adb.htm#ref_667_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_668_30" HREF="terminal_interface-curses-menus__adb.htm#ref_667_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_667_16">Set_Menu_Pad</A></span> (<span class="symbol"><A NAME="ref_667_30" HREF="terminal_interface-curses-menus__adb.htm#ref_667_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_668_30" HREF="terminal_interface-curses-menus__adb.htm#ref_667_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Pad, "set_menu_pad"); - -- <FONT COLOR=red><A NAME="ref_671_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_667_16">Set_Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_488_33">Men</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#ref_489_33">Pad</A>))); -+ <span class="symbol"><A NAME="ref_671_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_667_16">Set_Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_486_33">Men</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#ref_487_33">Pad</A>))); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_671_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_671_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_488_14">Set_Pad_Character</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_486_14">Set_Pad_Character</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_679_14" HREF="terminal_interface-curses-menus__ads.htm#ref_494_14">Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_679_29" HREF="terminal_interface-curses-menus__ads.htm#ref_494_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_680_29" HREF="terminal_interface-curses-menus__ads.htm#ref_495_29">Pad</A></FONT> : <b>out</b> Character) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_679_14" HREF="terminal_interface-curses-menus__ads.htm#ref_492_14">Pad_Character</A></span> (<span class="symbol"><A NAME="ref_679_29" HREF="terminal_interface-curses-menus__ads.htm#ref_492_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_680_29" HREF="terminal_interface-curses-menus__ads.htm#ref_493_29">Pad</A></span> : <b>out</b> Character) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_682_16">Menu_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_682_26" HREF="terminal_interface-curses-menus__adb.htm#ref_682_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_682_16">Menu_Pad</A></span> (<span class="symbol"><A NAME="ref_682_26" HREF="terminal_interface-curses-menus__adb.htm#ref_682_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Menu_Pad, "menu_pad"); - <b>begin</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_495_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-menus__adb.htm#ref_682_16">Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_494_29">Men</A>)); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_494_14">Pad_Character</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_688_14" HREF="terminal_interface-curses-menus__ads.htm#ref_504_14">Set_Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_688_27" HREF="terminal_interface-curses-menus__ads.htm#ref_504_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_689_27" HREF="terminal_interface-curses-menus__ads.htm#ref_505_27">Descr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0; -- <FONT COLOR=red><A NAME="ref_690_27" HREF="terminal_interface-curses-menus__ads.htm#ref_506_27">Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := 0; -- <FONT COLOR=red><A NAME="ref_691_27" HREF="terminal_interface-curses-menus__ads.htm#ref_507_27">Col</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0) -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_493_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-menus__adb.htm#ref_682_16">Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_492_29">Men</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_492_14">Pad_Character</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_688_14" HREF="terminal_interface-curses-menus__ads.htm#ref_502_14">Set_Spacing</A></span> (<span class="symbol"><A NAME="ref_688_27" HREF="terminal_interface-curses-menus__ads.htm#ref_502_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_689_27" HREF="terminal_interface-curses-menus__ads.htm#ref_503_27">Descr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0; -+ <span class="symbol"><A NAME="ref_690_27" HREF="terminal_interface-curses-menus__ads.htm#ref_504_27">Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := 0; -+ <span class="symbol"><A NAME="ref_691_27" HREF="terminal_interface-curses-menus__ads.htm#ref_505_27">Col</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_693_16">Set_Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_693_29" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_694_29" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">D</A></FONT>, <FONT COLOR=red><A NAME="ref_694_32" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">R</A></FONT>, <FONT COLOR=red><A NAME="ref_694_35" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">C</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_693_16">Set_Spacing</A></span> (<span class="symbol"><A NAME="ref_693_29" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_694_29" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">D</A></span>, <span class="symbol"><A NAME="ref_694_32" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">R</A></span>, <span class="symbol"><A NAME="ref_694_35" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">C</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Spacing, "set_menu_spacing"); - -- <FONT COLOR=red><A NAME="ref_697_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">Set_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_504_27">Men</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_505_27">Descr</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_506_27">Row</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_507_27">Col</A>)); -+ <span class="symbol"><A NAME="ref_697_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">Set_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_502_27">Men</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_503_27">Descr</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_504_27">Row</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_505_27">Col</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_697_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_697_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_504_14">Set_Spacing</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_502_14">Set_Spacing</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_707_14" HREF="terminal_interface-curses-menus__ads.htm#ref_512_14">Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_707_23" HREF="terminal_interface-curses-menus__ads.htm#ref_512_23">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_708_23" HREF="terminal_interface-curses-menus__ads.htm#ref_513_23">Descr</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_709_23" HREF="terminal_interface-curses-menus__ads.htm#ref_514_23">Row</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_710_23" HREF="terminal_interface-curses-menus__ads.htm#ref_515_23">Col</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -- <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_712_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_713_16">Get_Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_713_29" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_714_29" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">D</A></FONT>, <FONT COLOR=red><A NAME="ref_714_32" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">R</A></FONT>, <FONT COLOR=red><A NAME="ref_714_35" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">C</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_712_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_707_14" HREF="terminal_interface-curses-menus__ads.htm#ref_510_14">Spacing</A></span> (<span class="symbol"><A NAME="ref_707_23" HREF="terminal_interface-curses-menus__ads.htm#ref_510_23">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_708_23" HREF="terminal_interface-curses-menus__ads.htm#ref_511_23">Descr</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_709_23" HREF="terminal_interface-curses-menus__ads.htm#ref_512_23">Row</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_710_23" HREF="terminal_interface-curses-menus__ads.htm#ref_513_23">Col</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_712_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_713_16">Get_Spacing</A></span> (<span class="symbol"><A NAME="ref_713_29" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_714_29" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">D</A></span>, <span class="symbol"><A NAME="ref_714_32" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">R</A></span>, <span class="symbol"><A NAME="ref_714_35" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">C</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_712_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Get_Spacing, "menu_spacing"); - -- <FONT COLOR=red><A NAME="ref_717_7">D</A></FONT>, <FONT COLOR=red><A NAME="ref_717_10">R</A></FONT>, <FONT COLOR=red><A NAME="ref_717_13">C</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_718_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">Get_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_512_23">Men</A>, -+ <span class="symbol"><A NAME="ref_717_7">D</A></span>, <span class="symbol"><A NAME="ref_717_10">R</A></span>, <span class="symbol"><A NAME="ref_717_13">C</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_718_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">Get_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_510_23">Men</A>, - <A HREF="terminal_interface-curses-menus__adb.htm#ref_717_7">D</A>'<b>Access</b>, - <A HREF="terminal_interface-curses-menus__adb.htm#ref_717_10">R</A>'<b>Access</b>, - <A HREF="terminal_interface-curses-menus__adb.htm#ref_717_13">C</A>'<b>Access</b>); -@@ -728,26 +740,26 @@ - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_718_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_718_7">Res</A>); - <b>else</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_513_23">Descr</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_717_7">D</A>); -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_514_23">Row</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_717_10">R</A>); -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_515_23">Col</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_717_13">C</A>); -- <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_512_14">Spacing</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_732_13" HREF="terminal_interface-curses-menus__ads.htm#ref_524_13">Set_Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_732_26" HREF="terminal_interface-curses-menus__ads.htm#ref_524_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_733_26" HREF="terminal_interface-curses-menus__ads.htm#ref_525_26">Text</A></FONT> : String) <b>return</b> Boolean -- <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_735_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char; -- <b>function</b> <FONT COLOR=red><A NAME="ref_736_16">Set_Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_736_29" HREF="terminal_interface-curses-menus__adb.htm#ref_736_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_737_29" HREF="terminal_interface-curses-menus__adb.htm#ref_736_16">Pattern</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_735_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_511_23">Descr</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_717_7">D</A>); -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_512_23">Row</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_717_10">R</A>); -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_513_23">Col</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_717_13">C</A>); -+ <b>end</b> <b>if</b>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_510_14">Spacing</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_732_13" HREF="terminal_interface-curses-menus__ads.htm#ref_522_13">Set_Pattern</A></span> (<span class="symbol"><A NAME="ref_732_26" HREF="terminal_interface-curses-menus__ads.htm#ref_522_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_733_26" HREF="terminal_interface-curses-menus__ads.htm#ref_523_26">Text</A></span> : String) <b>return</b> Boolean -+ <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_735_12">Char_Ptr</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char; -+ <b>function</b> <span class="symbol"><A NAME="ref_736_16">Set_Pattern</A></span> (<span class="symbol"><A NAME="ref_736_29" HREF="terminal_interface-curses-menus__adb.htm#ref_736_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_737_29" HREF="terminal_interface-curses-menus__adb.htm#ref_736_16">Pattern</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_735_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Pattern, "set_menu_pattern"); - -- <FONT COLOR=red><A NAME="ref_740_7">S</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_525_26">Text</A>'Length); -- <FONT COLOR=red><A NAME="ref_741_7">L</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_742_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_740_7">S</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_523_26">Text</A>'Length); -+ <span class="symbol"><A NAME="ref_741_7">L</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_742_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_525_26">Text</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_740_7">S</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_741_7">L</A>); -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_742_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_736_16">Set_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_524_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_740_7">S</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_740_7">S</A>'First)'<b>Access</b>); -+ To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_523_26">Text</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_740_7">S</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_741_7">L</A>); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_742_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_736_16">Set_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_522_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_740_7">S</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_740_7">S</A>'First)'<b>Access</b>); - <b>case</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_742_7">Res</A> <b>is</b> - <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_89_4">E_No_Match</A> =&gt; <b>return</b> False; - <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> =&gt; <b>return</b> True; -@@ -755,274 +767,274 @@ - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_742_7">Res</A>); - <b>return</b> False; - <b>end</b> <b>case</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_524_13">Set_Pattern</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_522_13">Set_Pattern</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_755_14" HREF="terminal_interface-curses-menus__ads.htm#ref_531_14">Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_755_23" HREF="terminal_interface-curses-menus__ads.htm#ref_531_23">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_756_23" HREF="terminal_interface-curses-menus__ads.htm#ref_532_23">Text</A></FONT> : <b>out</b> String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_755_14" HREF="terminal_interface-curses-menus__ads.htm#ref_529_14">Pattern</A></span> (<span class="symbol"><A NAME="ref_755_23" HREF="terminal_interface-curses-menus__ads.htm#ref_529_23">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_756_23" HREF="terminal_interface-curses-menus__ads.htm#ref_530_23">Text</A></span> : <b>out</b> String) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_758_16">Get_Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_758_29" HREF="terminal_interface-curses-menus__adb.htm#ref_758_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_758_16">Get_Pattern</A></span> (<span class="symbol"><A NAME="ref_758_29" HREF="terminal_interface-curses-menus__adb.htm#ref_758_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>; - <b>pragma</b> Import (C, Get_Pattern, "menu_pattern"); - <b>begin</b> -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_758_16">Get_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_531_23">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_532_23">Text</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_531_14">Pattern</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_764_14" HREF="terminal_interface-curses-menus__ads.htm#ref_541_14">Set_Format</A></FONT> (<FONT COLOR=red><A NAME="ref_764_26" HREF="terminal_interface-curses-menus__ads.htm#ref_541_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_765_26" HREF="terminal_interface-curses-menus__ads.htm#ref_542_26">Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_766_26" HREF="terminal_interface-curses-menus__ads.htm#ref_543_26">Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_768_16">Set_Menu_Fmt</A></FONT> (<FONT COLOR=red><A NAME="ref_768_30" HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_769_30" HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_770_30" HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_758_16">Get_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_529_23">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_530_23">Text</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_529_14">Pattern</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_764_14" HREF="terminal_interface-curses-menus__ads.htm#ref_539_14">Set_Format</A></span> (<span class="symbol"><A NAME="ref_764_26" HREF="terminal_interface-curses-menus__ads.htm#ref_539_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_765_26" HREF="terminal_interface-curses-menus__ads.htm#ref_540_26">Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_766_26" HREF="terminal_interface-curses-menus__ads.htm#ref_541_26">Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_768_16">Set_Menu_Fmt</A></span> (<span class="symbol"><A NAME="ref_768_30" HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_769_30" HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Lin</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_770_30" HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Fmt, "set_menu_format"); - -- <FONT COLOR=red><A NAME="ref_773_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Set_Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_541_26">Men</A>, -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_542_26">Lines</A>), -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_543_26">Columns</A>)); -+ <span class="symbol"><A NAME="ref_773_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Set_Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_539_26">Men</A>, -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_540_26">Lines</A>), -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_541_26">Columns</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_773_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_773_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_541_14">Set_Format</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_539_14">Set_Format</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_782_14" HREF="terminal_interface-curses-menus__ads.htm#ref_555_14">Format</A></FONT> (<FONT COLOR=red><A NAME="ref_782_22" HREF="terminal_interface-curses-menus__ads.htm#ref_555_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_783_22" HREF="terminal_interface-curses-menus__ads.htm#ref_556_22">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_784_22" HREF="terminal_interface-curses-menus__ads.htm#ref_557_22">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) -- <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_786_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_787_16">Menu_Fmt</A></FONT> (<FONT COLOR=red><A NAME="ref_787_26" HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_788_26" HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">Y</A></FONT>, <FONT COLOR=red><A NAME="ref_788_29" HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">X</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_786_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_782_14" HREF="terminal_interface-curses-menus__ads.htm#ref_553_14">Format</A></span> (<span class="symbol"><A NAME="ref_782_22" HREF="terminal_interface-curses-menus__ads.htm#ref_553_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_783_22" HREF="terminal_interface-curses-menus__ads.htm#ref_554_22">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_784_22" HREF="terminal_interface-curses-menus__ads.htm#ref_555_22">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) -+ <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_786_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_787_16">Menu_Fmt</A></span> (<span class="symbol"><A NAME="ref_787_26" HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_788_26" HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">Y</A></span>, <span class="symbol"><A NAME="ref_788_29" HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">X</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_786_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Menu_Fmt, "menu_format"); - -- <FONT COLOR=red><A NAME="ref_791_7">L</A></FONT>, <FONT COLOR=red><A NAME="ref_791_10">C</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_792_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_555_22">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_791_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_791_10">C</A>'<b>Access</b>); -+ <span class="symbol"><A NAME="ref_791_7">L</A></span>, <span class="symbol"><A NAME="ref_791_10">C</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_792_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_553_22">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_791_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_791_10">C</A>'<b>Access</b>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_792_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_792_7">Res</A>); - <b>else</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_556_22">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_791_7">L</A>); -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_557_22">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_791_10">C</A>); -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_554_22">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_791_7">L</A>); -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_555_22">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_791_10">C</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_555_14">Format</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_802_14" HREF="terminal_interface-curses-menus__ads.htm#ref_569_14">Set_Item_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_802_34" HREF="terminal_interface-curses-menus__ads.htm#ref_569_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_803_34" HREF="terminal_interface-curses-menus__ads.htm#ref_570_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_553_14">Format</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_802_14" HREF="terminal_interface-curses-menus__ads.htm#ref_567_14">Set_Item_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_802_34" HREF="terminal_interface-curses-menus__ads.htm#ref_567_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_803_34" HREF="terminal_interface-curses-menus__ads.htm#ref_568_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_805_16">Set_Item_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_805_31" HREF="terminal_interface-curses-menus__adb.htm#ref_805_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_806_31" HREF="terminal_interface-curses-menus__adb.htm#ref_805_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_805_16">Set_Item_Init</A></span> (<span class="symbol"><A NAME="ref_805_31" HREF="terminal_interface-curses-menus__adb.htm#ref_805_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_806_31" HREF="terminal_interface-curses-menus__adb.htm#ref_805_16">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Item_Init, "set_item_init"); - -- <FONT COLOR=red><A NAME="ref_809_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_805_16">Set_Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_569_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_570_34">Proc</A>); -+ <span class="symbol"><A NAME="ref_809_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_805_16">Set_Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_567_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_568_34">Proc</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_809_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_809_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_569_14">Set_Item_Init_Hook</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_567_14">Set_Item_Init_Hook</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_816_14" HREF="terminal_interface-curses-menus__ads.htm#ref_575_14">Set_Item_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_816_34" HREF="terminal_interface-curses-menus__ads.htm#ref_575_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_817_34" HREF="terminal_interface-curses-menus__ads.htm#ref_576_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_816_14" HREF="terminal_interface-curses-menus__ads.htm#ref_573_14">Set_Item_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_816_34" HREF="terminal_interface-curses-menus__ads.htm#ref_573_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_817_34" HREF="terminal_interface-curses-menus__ads.htm#ref_574_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_819_16">Set_Item_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_819_31" HREF="terminal_interface-curses-menus__adb.htm#ref_819_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_820_31" HREF="terminal_interface-curses-menus__adb.htm#ref_819_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_819_16">Set_Item_Term</A></span> (<span class="symbol"><A NAME="ref_819_31" HREF="terminal_interface-curses-menus__adb.htm#ref_819_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_820_31" HREF="terminal_interface-curses-menus__adb.htm#ref_819_16">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Item_Term, "set_item_term"); - -- <FONT COLOR=red><A NAME="ref_823_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_819_16">Set_Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_575_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_576_34">Proc</A>); -+ <span class="symbol"><A NAME="ref_823_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_819_16">Set_Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_573_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_574_34">Proc</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_823_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_823_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_575_14">Set_Item_Term_Hook</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_573_14">Set_Item_Term_Hook</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_830_14" HREF="terminal_interface-curses-menus__ads.htm#ref_581_14">Set_Menu_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_830_34" HREF="terminal_interface-curses-menus__ads.htm#ref_581_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_831_34" HREF="terminal_interface-curses-menus__ads.htm#ref_582_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_830_14" HREF="terminal_interface-curses-menus__ads.htm#ref_579_14">Set_Menu_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_830_34" HREF="terminal_interface-curses-menus__ads.htm#ref_579_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_831_34" HREF="terminal_interface-curses-menus__ads.htm#ref_580_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_833_16">Set_Menu_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_833_31" HREF="terminal_interface-curses-menus__adb.htm#ref_833_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_834_31" HREF="terminal_interface-curses-menus__adb.htm#ref_833_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_833_16">Set_Menu_Init</A></span> (<span class="symbol"><A NAME="ref_833_31" HREF="terminal_interface-curses-menus__adb.htm#ref_833_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_834_31" HREF="terminal_interface-curses-menus__adb.htm#ref_833_16">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Init, "set_menu_init"); - -- <FONT COLOR=red><A NAME="ref_837_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_833_16">Set_Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_581_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_582_34">Proc</A>); -+ <span class="symbol"><A NAME="ref_837_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_833_16">Set_Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_579_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_580_34">Proc</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_837_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_837_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_581_14">Set_Menu_Init_Hook</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_579_14">Set_Menu_Init_Hook</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_844_14" HREF="terminal_interface-curses-menus__ads.htm#ref_587_14">Set_Menu_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_844_34" HREF="terminal_interface-curses-menus__ads.htm#ref_587_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_845_34" HREF="terminal_interface-curses-menus__ads.htm#ref_588_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_844_14" HREF="terminal_interface-curses-menus__ads.htm#ref_585_14">Set_Menu_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_844_34" HREF="terminal_interface-curses-menus__ads.htm#ref_585_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_845_34" HREF="terminal_interface-curses-menus__ads.htm#ref_586_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_847_16">Set_Menu_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_847_31" HREF="terminal_interface-curses-menus__adb.htm#ref_847_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_848_31" HREF="terminal_interface-curses-menus__adb.htm#ref_847_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_847_16">Set_Menu_Term</A></span> (<span class="symbol"><A NAME="ref_847_31" HREF="terminal_interface-curses-menus__adb.htm#ref_847_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_848_31" HREF="terminal_interface-curses-menus__adb.htm#ref_847_16">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Term, "set_menu_term"); - -- <FONT COLOR=red><A NAME="ref_851_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_847_16">Set_Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_587_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_588_34">Proc</A>); -+ <span class="symbol"><A NAME="ref_851_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_847_16">Set_Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_585_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_586_34">Proc</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_851_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_851_7">Res</A>); - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_587_14">Set_Menu_Term_Hook</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_585_14">Set_Menu_Term_Hook</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_858_13" HREF="terminal_interface-curses-menus__ads.htm#ref_593_13">Get_Item_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_858_33" HREF="terminal_interface-curses-menus__ads.htm#ref_593_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_858_13" HREF="terminal_interface-curses-menus__ads.htm#ref_591_13">Get_Item_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_858_33" HREF="terminal_interface-curses-menus__ads.htm#ref_591_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_860_16">Item_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_860_27" HREF="terminal_interface-curses-menus__adb.htm#ref_860_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_860_16">Item_Init</A></span> (<span class="symbol"><A NAME="ref_860_27" HREF="terminal_interface-curses-menus__adb.htm#ref_860_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>; - <b>pragma</b> Import (C, Item_Init, "item_init"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_860_16">Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_593_33">Men</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_593_13">Get_Item_Init_Hook</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_860_16">Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_591_33">Men</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_591_13">Get_Item_Init_Hook</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_866_13" HREF="terminal_interface-curses-menus__ads.htm#ref_598_13">Get_Item_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_866_33" HREF="terminal_interface-curses-menus__ads.htm#ref_598_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_866_13" HREF="terminal_interface-curses-menus__ads.htm#ref_596_13">Get_Item_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_866_33" HREF="terminal_interface-curses-menus__ads.htm#ref_596_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_868_16">Item_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_868_27" HREF="terminal_interface-curses-menus__adb.htm#ref_868_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_868_16">Item_Term</A></span> (<span class="symbol"><A NAME="ref_868_27" HREF="terminal_interface-curses-menus__adb.htm#ref_868_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>; - <b>pragma</b> Import (C, Item_Term, "item_term"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_868_16">Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_598_33">Men</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_598_13">Get_Item_Term_Hook</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_868_16">Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_596_33">Men</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_596_13">Get_Item_Term_Hook</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_874_13" HREF="terminal_interface-curses-menus__ads.htm#ref_603_13">Get_Menu_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_874_33" HREF="terminal_interface-curses-menus__ads.htm#ref_603_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_874_13" HREF="terminal_interface-curses-menus__ads.htm#ref_601_13">Get_Menu_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_874_33" HREF="terminal_interface-curses-menus__ads.htm#ref_601_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_876_16">Menu_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_876_27" HREF="terminal_interface-curses-menus__adb.htm#ref_876_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_876_16">Menu_Init</A></span> (<span class="symbol"><A NAME="ref_876_27" HREF="terminal_interface-curses-menus__adb.htm#ref_876_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>; - <b>pragma</b> Import (C, Menu_Init, "menu_init"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_876_16">Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_603_33">Men</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_603_13">Get_Menu_Init_Hook</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_876_16">Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_601_33">Men</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_601_13">Get_Menu_Init_Hook</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_882_13" HREF="terminal_interface-curses-menus__ads.htm#ref_608_13">Get_Menu_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_882_33" HREF="terminal_interface-curses-menus__ads.htm#ref_608_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_882_13" HREF="terminal_interface-curses-menus__ads.htm#ref_606_13">Get_Menu_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_882_33" HREF="terminal_interface-curses-menus__ads.htm#ref_606_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_884_16">Menu_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_884_27" HREF="terminal_interface-curses-menus__adb.htm#ref_884_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_884_16">Menu_Term</A></span> (<span class="symbol"><A NAME="ref_884_27" HREF="terminal_interface-curses-menus__adb.htm#ref_884_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>; - <b>pragma</b> Import (C, Menu_Term, "menu_term"); - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_884_16">Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_608_33">Men</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_608_13">Get_Menu_Term_Hook</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_890_14" HREF="terminal_interface-curses-menus__ads.htm#ref_617_14">Redefine</A></FONT> (<FONT COLOR=red><A NAME="ref_890_24" HREF="terminal_interface-curses-menus__ads.htm#ref_617_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_891_24" HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>) -+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_884_16">Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_606_33">Men</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_606_13">Get_Menu_Term_Hook</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_890_14" HREF="terminal_interface-curses-menus__ads.htm#ref_615_14">Redefine</A></span> (<span class="symbol"><A NAME="ref_890_24" HREF="terminal_interface-curses-menus__ads.htm#ref_615_24">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_891_24" HREF="terminal_interface-curses-menus__ads.htm#ref_616_24">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_180_9">Item_Array_Access</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_893_16">Set_Items</A></FONT> (<FONT COLOR=red><A NAME="ref_893_27" HREF="terminal_interface-curses-menus__adb.htm#ref_893_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_894_27" HREF="terminal_interface-curses-menus__adb.htm#ref_893_16">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_893_16">Set_Items</A></span> (<span class="symbol"><A NAME="ref_893_27" HREF="terminal_interface-curses-menus__adb.htm#ref_893_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_894_27" HREF="terminal_interface-curses-menus__adb.htm#ref_893_16">Items</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Items, "set_menu_items"); - -- <FONT COLOR=red><A NAME="ref_897_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; -+ <span class="symbol"><A NAME="ref_897_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>; - <b>begin</b> -- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>); -- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b> -+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#ref_616_24">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_616_24">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>); -+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_616_24">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_616_24">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b> - <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>; - <b>else</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_897_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_893_16">Set_Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_617_24">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A>.<b>all</b>'Address); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_897_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_893_16">Set_Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_615_24">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_616_24">Items</A>.<b>all</b>'Address); - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_897_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_897_7">Res</A>); - <b>end</b> <b>if</b>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_617_14">Redefine</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_615_14">Redefine</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_910_13" HREF="terminal_interface-curses-menus__ads.htm#ref_633_13">Item_Count</A></FONT> (<FONT COLOR=red><A NAME="ref_910_25" HREF="terminal_interface-curses-menus__ads.htm#ref_633_25">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> Natural -+ <b>function</b> <span class="symbol"><A NAME="ref_910_13" HREF="terminal_interface-curses-menus__ads.htm#ref_631_13">Item_Count</A></span> (<span class="symbol"><A NAME="ref_910_25" HREF="terminal_interface-curses-menus__ads.htm#ref_631_25">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> Natural - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_912_16">Count</A></FONT> (<FONT COLOR=red><A NAME="ref_912_23" HREF="terminal_interface-curses-menus__adb.htm#ref_912_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_912_16">Count</A></span> (<span class="symbol"><A NAME="ref_912_23" HREF="terminal_interface-curses-menus__adb.htm#ref_912_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Count, "item_count"); - <b>begin</b> -- <b>return</b> Natural (<A HREF="terminal_interface-curses-menus__adb.htm#ref_912_16">Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_633_25">Men</A>)); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_633_13">Item_Count</A>; -+ <b>return</b> Natural (<A HREF="terminal_interface-curses-menus__adb.htm#ref_912_16">Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_631_25">Men</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_631_13">Item_Count</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_918_13" HREF="terminal_interface-curses-menus__ads.htm#ref_627_13">Items</A></FONT> (<FONT COLOR=red><A NAME="ref_918_20" HREF="terminal_interface-curses-menus__ads.htm#ref_627_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_919_20" HREF="terminal_interface-curses-menus__ads.htm#ref_628_20">Index</A></FONT> : Positive) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_918_13" HREF="terminal_interface-curses-menus__ads.htm#ref_625_13">Items</A></span> (<span class="symbol"><A NAME="ref_918_20" HREF="terminal_interface-curses-menus__ads.htm#ref_625_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_919_20" HREF="terminal_interface-curses-menus__ads.htm#ref_626_20">Index</A></span> : Positive) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> - <b>is</b> - <b>use</b> I_Array; - -- <b>function</b> C_Mitems (<FONT COLOR=red><A NAME="ref_923_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> Pointer; -+ <b>function</b> C_Mitems (<span class="symbol"><A NAME="ref_923_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> Pointer; - <b>pragma</b> Import (C, C_Mitems, "menu_items"); - -- P : Pointer := C_Mitems (<A HREF="terminal_interface-curses-menus__ads.htm#ref_627_20">Men</A>); -+ P : Pointer := C_Mitems (<A HREF="terminal_interface-curses-menus__ads.htm#ref_625_20">Men</A>); - <b>begin</b> -- <b>if</b> P = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_628_20">Index</A> &gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_633_13">Item_Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_627_20">Men</A>) <b>then</b> -+ <b>if</b> P = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_626_20">Index</A> &gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_631_13">Item_Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_625_20">Men</A>) <b>then</b> - <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>; - <b>else</b> -- P := P + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_628_20">Index</A>) - 1); -+ P := P + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_626_20">Index</A>) - 1); - <b>return</b> P.<b>all</b>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_627_13">Items</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_625_13">Items</A>; - --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_937_13" HREF="terminal_interface-curses-menus__ads.htm#ref_642_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_937_21" HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_937_13" HREF="terminal_interface-curses-menus__ads.htm#ref_640_13">Create</A></span> (<span class="symbol"><A NAME="ref_937_21" HREF="terminal_interface-curses-menus__ads.htm#ref_640_21">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_180_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_939_16">Newmenu</A></FONT> (<FONT COLOR=red><A NAME="ref_939_25" HREF="terminal_interface-curses-menus__adb.htm#ref_939_16">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_939_16">Newmenu</A></span> (<span class="symbol"><A NAME="ref_939_25" HREF="terminal_interface-curses-menus__adb.htm#ref_939_16">Items</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; - <b>pragma</b> Import (C, Newmenu, "new_menu"); - -- <FONT COLOR=red><A NAME="ref_942_7">M</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_942_7">M</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; - <b>begin</b> -- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>); -- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b> -+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#ref_640_21">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_640_21">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>); -+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_640_21">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_640_21">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b> - <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>; - <b>else</b> -- <A HREF="terminal_interface-curses-menus__adb.htm#ref_942_7">M</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_939_16">Newmenu</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A>.<b>all</b>'Address); -+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_942_7">M</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_939_16">Newmenu</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_640_21">Items</A>.<b>all</b>'Address); - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_942_7">M</A> = <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A> <b>then</b> - <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_942_7">M</A>; - <b>end</b> <b>if</b>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_642_13">Create</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_640_13">Create</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_956_14" HREF="terminal_interface-curses-menus__ads.htm#ref_649_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_956_22" HREF="terminal_interface-curses-menus__ads.htm#ref_649_22">Men</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_956_14" HREF="terminal_interface-curses-menus__ads.htm#ref_647_14">Delete</A></span> (<span class="symbol"><A NAME="ref_956_22" HREF="terminal_interface-curses-menus__ads.htm#ref_647_22">Men</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_958_16">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_958_22" HREF="terminal_interface-curses-menus__adb.htm#ref_958_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_958_16">Free</A></span> (<span class="symbol"><A NAME="ref_958_22" HREF="terminal_interface-curses-menus__adb.htm#ref_958_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Free, "free_menu"); - -- <FONT COLOR=red><A NAME="ref_961_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_958_16">Free</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_649_22">Men</A>); -+ <span class="symbol"><A NAME="ref_961_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_958_16">Free</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_647_22">Men</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_961_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_961_7">Res</A>); - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_649_22">Men</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_649_14">Delete</A>; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_647_22">Men</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_647_14">Delete</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_970_13" HREF="terminal_interface-curses-menus__ads.htm#ref_664_13">Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_970_21" HREF="terminal_interface-curses-menus__ads.htm#ref_664_21">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_971_21" HREF="terminal_interface-curses-menus__ads.htm#ref_665_21">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_658_9">Driver_Result</A> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_970_13" HREF="terminal_interface-curses-menus__ads.htm#ref_662_13">Driver</A></span> (<span class="symbol"><A NAME="ref_970_21" HREF="terminal_interface-curses-menus__ads.htm#ref_662_21">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_971_21" HREF="terminal_interface-curses-menus__ads.htm#ref_663_21">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_656_9">Driver_Result</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_973_16">Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_973_24" HREF="terminal_interface-curses-menus__adb.htm#ref_973_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_974_24" HREF="terminal_interface-curses-menus__adb.htm#ref_973_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_973_16">Driver</A></span> (<span class="symbol"><A NAME="ref_973_24" HREF="terminal_interface-curses-menus__adb.htm#ref_973_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_974_24" HREF="terminal_interface-curses-menus__adb.htm#ref_973_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Driver, "menu_driver"); - -- <FONT COLOR=red><A NAME="ref_977_7">R</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_973_16">Driver</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_664_21">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_665_21">Key</A>)); -+ <span class="symbol"><A NAME="ref_977_7">R</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_973_16">Driver</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_662_21">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_663_21">Key</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_977_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <b>case</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_977_7">R</A> <b>is</b> -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_4">E_Unknown_Command</A> =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_660_27">Unknown_Request</A>; -- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_89_4">E_No_Match</A> =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_661_27">No_Match</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_4">E_Unknown_Command</A> =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_658_27">Unknown_Request</A>; -+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_89_4">E_No_Match</A> =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_659_27">No_Match</A>; - <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_4">E_Request_Denied</A> | -- <A HREF="terminal_interface-curses-aux__ads.htm#ref_90_4">E_Not_Selectable</A> =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_659_27">Request_Denied</A>; -+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_90_4">E_Not_Selectable</A> =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_657_27">Request_Denied</A>; - <b>when</b> <b>others</b> =&gt; - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_977_7">R</A>); - <b>end</b> <b>case</b>; - <b>end</b> <b>if</b>; -- <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_658_27">Menu_Ok</A>; -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_664_13">Driver</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_656_27">Menu_Ok</A>; -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_662_13">Driver</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_992_14" HREF="terminal_interface-curses-menus__ads.htm#ref_184_14">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_992_20" HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>; -- <FONT COLOR=red><A NAME="ref_993_20" HREF="terminal_interface-curses-menus__ads.htm#ref_185_20">Free_Items</A></FONT> : Boolean := False) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_992_14" HREF="terminal_interface-curses-menus__ads.htm#ref_182_14">Free</A></span> (<span class="symbol"><A NAME="ref_992_20" HREF="terminal_interface-curses-menus__ads.htm#ref_182_20">IA</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_180_9">Item_Array_Access</A>; -+ <span class="symbol"><A NAME="ref_993_20" HREF="terminal_interface-curses-menus__ads.htm#ref_183_20">Free_Items</A></span> : Boolean := False) - <b>is</b> - <b>procedure</b> Release <b>is</b> <b>new</b> Ada.Unchecked_Deallocation -- (Item_Array, <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>); -+ (Item_Array, <A HREF="terminal_interface-curses-menus__ads.htm#ref_180_9">Item_Array_Access</A>); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_185_20">Free_Items</A> <b>then</b> -- <b>for</b> <FONT COLOR=red><A NAME="ref_999_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A>'First .. (<A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A>'Last - 1) <b>loop</b> -- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_999_14">I</A>) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_207_14">Delete</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_999_14">I</A>)); -+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_20">IA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_183_20">Free_Items</A> <b>then</b> -+ <b>for</b> <span class="symbol"><A NAME="ref_999_14">I</A></span> <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_20">IA</A>'First .. (<A HREF="terminal_interface-curses-menus__ads.htm#ref_182_20">IA</A>'Last - 1) <b>loop</b> -+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_20">IA</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_999_14">I</A>) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b> -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_205_14">Delete</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_182_20">IA</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_999_14">I</A>)); - <b>end</b> <b>if</b>; - <b>end</b> <b>loop</b>; - <b>end</b> <b>if</b>; -- Release (<A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_184_14">Free</A>; -+ Release (<A HREF="terminal_interface-curses-menus__ads.htm#ref_182_20">IA</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_14">Free</A>; - --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_1009_13" HREF="terminal_interface-curses-menus__ads.htm#ref_148_13">Default_Menu_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A> -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_1009_13" HREF="terminal_interface-curses-menus__ads.htm#ref_147_13">Default_Menu_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A> - <b>is</b> - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_356_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_148_13">Default_Menu_Options</A>; -+ <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_354_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_147_13">Default_Menu_Options</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_1015_13" HREF="terminal_interface-curses-menus__ads.htm#ref_172_13">Default_Item_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_1015_13" HREF="terminal_interface-curses-menus__ads.htm#ref_170_13">Default_Item_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A> - <b>is</b> - <b>begin</b> -- <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_260_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>); -- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_172_13">Default_Item_Options</A>; --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -+ <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_258_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_170_13">Default_Item_Options</A>; -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-menus__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus__ads.htm 2011-03-20 00:18:40.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus__ads.htm 2014-09-01 16:33:22.293792018 +0200 -@@ -1,95 +1,107 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-menus.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-menus.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menu --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.28 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2009/12/26 18:35:22 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- menu binding.</EM></FONT> --<FONT COLOR=green><EM>-- This module is generated. Please don't change it manually!</EM></FONT> --<FONT COLOR=green><EM>-- Run the generator instead.</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Menu --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.28 @</EM></span> -+<span class="comment"><EM>-- @Date: 2009/12/26 18:35:22 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- menu binding.</EM></span> -+<span class="comment"><EM>-- This module is generated. Please don't change it manually!</EM></span> -+<span class="comment"><EM>-- Run the generator instead.</EM></span> -+<span class="comment"><EM>-- |</EM></span> - <b>with</b> System; - <b>with</b> Ada.Characters.Latin_1; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_49_35" HREF="terminal_interface-curses-menus__adb.htm#ref_51_40">Menus</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_49_35" HREF="terminal_interface-curses-menus__adb.htm#ref_51_40">Menus</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>); - <b>pragma</b> Linker_Options ("-lmenu"); - <b>pragma</b> Linker_Options ("-lncurses"); - - Space : Character <b>renames</b> Ada.Characters.Latin_1.Space; - -- <b>type</b> <FONT COLOR=red><A NAME="ref_56_9">Item</A></FONT> <b>is</b> <b>private</b>; -- <b>type</b> <FONT COLOR=red><A NAME="ref_57_9">Menu</A></FONT> <b>is</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_56_9">Item</A></span> <b>is</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_57_9">Menu</A></span> <b>is</b> <b>private</b>; - -- <FONT COLOR=green><EM>---------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Interface constants --</EM></FONT> -- <FONT COLOR=green><EM>---------------------------</EM></FONT> -- <FONT COLOR=red><A NAME="ref_62_4">Null_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_63_4">Null_Menu</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="comment"><EM>---------------------------</EM></span> -+ <span class="comment"><EM>-- Interface constants --</EM></span> -+ <span class="comment"><EM>---------------------------</EM></span> -+ <span class="symbol"><A NAME="ref_62_4">Null_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_63_4">Null_Menu</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; - -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_65_12">Menu_Request_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A> -+ <b>subtype</b> <span class="symbol"><A NAME="ref_65_12">Menu_Request_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A> - <b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1) .. (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 17); - -- <FONT COLOR=green><EM>-- The prefix M_ stands for "Menu Request"</EM></FONT> -- <FONT COLOR=red><A NAME="ref_69_4">M_Left_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1; -- <FONT COLOR=red><A NAME="ref_70_4">M_Right_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 2; -- <FONT COLOR=red><A NAME="ref_71_4">M_Up_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 3; -- <FONT COLOR=red><A NAME="ref_72_4">M_Down_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 4; -- <FONT COLOR=red><A NAME="ref_73_4">M_ScrollUp_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 5; -- <FONT COLOR=red><A NAME="ref_74_4">M_ScrollDown_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 6; -- <FONT COLOR=red><A NAME="ref_75_4">M_ScrollDown_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 7; -- <FONT COLOR=red><A NAME="ref_76_4">M_ScrollUp_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 8; -- <FONT COLOR=red><A NAME="ref_77_4">M_First_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 9; -- <FONT COLOR=red><A NAME="ref_78_4">M_Last_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 10; -- <FONT COLOR=red><A NAME="ref_79_4">M_Next_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 11; -- <FONT COLOR=red><A NAME="ref_80_4">M_Previous_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 12; -- <FONT COLOR=red><A NAME="ref_81_4">M_Toggle_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 13; -- <FONT COLOR=red><A NAME="ref_82_4">M_Clear_Pattern</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 14; -- <FONT COLOR=red><A NAME="ref_83_4">M_Back_Pattern</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 15; -- <FONT COLOR=red><A NAME="ref_84_4">M_Next_Match</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 16; -- <FONT COLOR=red><A NAME="ref_85_4">M_Previous_Match</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 17; -+ <span class="comment"><EM>-- The prefix M_ stands for "Menu Request"</EM></span> -+ <span class="symbol"><A NAME="ref_69_4">M_Left_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1; -+ <span class="symbol"><A NAME="ref_70_4">M_Right_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 2; -+ <span class="symbol"><A NAME="ref_71_4">M_Up_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 3; -+ <span class="symbol"><A NAME="ref_72_4">M_Down_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 4; -+ <span class="symbol"><A NAME="ref_73_4">M_ScrollUp_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 5; -+ <span class="symbol"><A NAME="ref_74_4">M_ScrollDown_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 6; -+ <span class="symbol"><A NAME="ref_75_4">M_ScrollDown_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 7; -+ <span class="symbol"><A NAME="ref_76_4">M_ScrollUp_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 8; -+ <span class="symbol"><A NAME="ref_77_4">M_First_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 9; -+ <span class="symbol"><A NAME="ref_78_4">M_Last_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 10; -+ <span class="symbol"><A NAME="ref_79_4">M_Next_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 11; -+ <span class="symbol"><A NAME="ref_80_4">M_Previous_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 12; -+ <span class="symbol"><A NAME="ref_81_4">M_Toggle_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 13; -+ <span class="symbol"><A NAME="ref_82_4">M_Clear_Pattern</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 14; -+ <span class="symbol"><A NAME="ref_83_4">M_Back_Pattern</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 15; -+ <span class="symbol"><A NAME="ref_84_4">M_Next_Match</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 16; -+ <span class="symbol"><A NAME="ref_85_4">M_Previous_Match</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 17; - -- <FONT COLOR=green><EM>-- For those who like the old 'C' names for the request codes</EM></FONT> -+ <span class="comment"><EM>-- For those who like the old 'C' names for the request codes</EM></span> - REQ_LEFT_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_69_4">M_Left_Item</A>; - REQ_RIGHT_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_70_4">M_Right_Item</A>; - REQ_UP_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_71_4">M_Up_Item</A>; -@@ -108,30 +120,29 @@ - REQ_NEXT_MATCH : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_84_4">M_Next_Match</A>; - REQ_PREV_MATCH : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_85_4">M_Previous_Match</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_106_14" HREF="terminal_interface-curses-menus__adb.htm#ref_77_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_106_28" HREF="terminal_interface-curses-menus__adb.htm#ref_77_28">Key</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>; -- <FONT COLOR=red><A NAME="ref_107_28" HREF="terminal_interface-curses-menus__adb.htm#ref_78_28">Name</A></FONT> : <b>out</b> String); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_106_14" HREF="terminal_interface-curses-menus__adb.htm#ref_77_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_106_28" HREF="terminal_interface-curses-menus__adb.htm#ref_77_28">Key</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>; -+ <span class="symbol"><A NAME="ref_107_28" HREF="terminal_interface-curses-menus__adb.htm#ref_78_28">Name</A></span> : <b>out</b> String); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_109_14" HREF="terminal_interface-curses-menus__adb.htm#ref_86_13">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_109_28" HREF="terminal_interface-curses-menus__adb.htm#ref_86_27">Key</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>) <b>return</b> String; -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -+ <b>function</b> <span class="symbol"><A NAME="ref_109_14" HREF="terminal_interface-curses-menus__adb.htm#ref_86_13">Request_Name</A></span> (<span class="symbol"><A NAME="ref_109_28" HREF="terminal_interface-curses-menus__adb.htm#ref_86_27">Key</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>) <b>return</b> String; -+ <span class="comment"><EM>-- Same as function</EM></span> - -- <FONT COLOR=green><EM>------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Exceptions --</EM></FONT> -- <FONT COLOR=green><EM>------------------</EM></FONT> -- -- <FONT COLOR=red><A NAME="ref_116_4">Menu_Exception</A></FONT> : <b>exception</b>; -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>-- Menu options</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -+ <span class="comment"><EM>------------------</EM></span> -+ <span class="comment"><EM>-- Exceptions --</EM></span> -+ <span class="comment"><EM>------------------</EM></span> -+ -+ <span class="symbol"><A NAME="ref_116_4">Menu_Exception</A></span> : <b>exception</b>; -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>-- Menu options</EM></span> -+ <span class="comment"><EM>--</EM></span> - <b>pragma</b> Warnings (Off); -- <b>type</b> <FONT COLOR=red><A NAME="ref_121_9">Menu_Option_Set</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_121_9">Menu_Option_Set</A></span> <b>is</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_123_10">One_Valued</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_124_10">Show_Descriptions</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_125_10">Row_Major_Order</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_126_10">Ignore_Case</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_127_10">Show_Matches</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_128_10">Non_Cyclic</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_129_10">Unused</A></FONT> : Boolean; -+ <span class="symbol"><A NAME="ref_123_10">One_Valued</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_124_10">Show_Descriptions</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_125_10">Row_Major_Order</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_126_10">Ignore_Case</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_127_10">Show_Matches</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_128_10">Non_Cyclic</A></span> : Boolean; - <b>end</b> <b>record</b>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>); - -@@ -143,537 +154,536 @@ - <A HREF="terminal_interface-curses-menus__ads.htm#ref_126_10">Ignore_Case</A> <b>at</b> 0 <b>range</b> 3 .. 3; - <A HREF="terminal_interface-curses-menus__ads.htm#ref_127_10">Show_Matches</A> <b>at</b> 0 <b>range</b> 4 .. 4; - <A HREF="terminal_interface-curses-menus__ads.htm#ref_128_10">Non_Cyclic</A> <b>at</b> 0 <b>range</b> 5 .. 5; -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_129_10">Unused</A> <b>at</b> 0 <b>range</b> 6 .. 31; - <b>end</b> <b>record</b>; -- <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>'Size <b>use</b> 32; -- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT> -- <FONT COLOR=green><EM>-- different on your system.</EM></FONT> -+ <b>pragma</b> Warnings (Off); <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>'Size <b>use</b> 32; -+ <b>pragma</b> Warnings (On); -+ <span class="comment"><EM>-- Please note: this rep. clause is generated and may be</EM></span> -+ <span class="comment"><EM>-- different on your system.</EM></span> - <b>pragma</b> Warnings (On); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_148_13" HREF="terminal_interface-curses-menus__adb.htm#ref_1009_13">Default_Menu_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>; -- <FONT COLOR=green><EM>-- Initial default options for a menu.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_148_13">Default_Menu_Options</A>); -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>-- Item options</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -+ <b>function</b> <span class="symbol"><A NAME="ref_147_13" HREF="terminal_interface-curses-menus__adb.htm#ref_1009_13">Default_Menu_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>; -+ <span class="comment"><EM>-- Initial default options for a menu.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_147_13">Default_Menu_Options</A>); -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>-- Item options</EM></span> -+ <span class="comment"><EM>--</EM></span> - <b>pragma</b> Warnings (Off); -- <b>type</b> <FONT COLOR=red><A NAME="ref_155_9">Item_Option_Set</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_154_9">Item_Option_Set</A></span> <b>is</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_157_10">Selectable</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_158_10">Unused</A></FONT> : Boolean; -+ <span class="symbol"><A NAME="ref_156_10">Selectable</A></span> : Boolean; - <b>end</b> <b>record</b>; -- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>); -+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>); - -- <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A> <b>use</b> -+ <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A> <b>use</b> - <b>record</b> -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_157_10">Selectable</A> <b>at</b> 0 <b>range</b> 0 .. 0; -- <A HREF="terminal_interface-curses-menus__ads.htm#ref_158_10">Unused</A> <b>at</b> 0 <b>range</b> 1 .. 31; -+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_156_10">Selectable</A> <b>at</b> 0 <b>range</b> 0 .. 0; - <b>end</b> <b>record</b>; -- <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>'Size <b>use</b> 32; -- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT> -- <FONT COLOR=green><EM>-- different on your system.</EM></FONT> -+ <b>pragma</b> Warnings (Off); <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>'Size <b>use</b> 32; -+ <b>pragma</b> Warnings (On); -+ <span class="comment"><EM>-- Please note: this rep. clause is generated and may be</EM></span> -+ <span class="comment"><EM>-- different on your system.</EM></span> - <b>pragma</b> Warnings (On); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_172_13" HREF="terminal_interface-curses-menus__adb.htm#ref_1015_13">Default_Item_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>; -- <FONT COLOR=green><EM>-- Initial default options for an item.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_172_13">Default_Item_Options</A>); -- -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>-- Item Array</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -+ <b>function</b> <span class="symbol"><A NAME="ref_170_13" HREF="terminal_interface-curses-menus__adb.htm#ref_1015_13">Default_Item_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>; -+ <span class="comment"><EM>-- Initial default options for an item.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_170_13">Default_Item_Options</A>); -+ -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>-- Item Array</EM></span> -+ <span class="comment"><EM>--</EM></span> - <b>type</b> Item_Array <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; - <b>pragma</b> Convention (C, Item_Array); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_182_9">Item_Array_Access</A></FONT> <b>is</b> <b>access</b> Item_Array; -+ <b>type</b> <span class="symbol"><A NAME="ref_180_9">Item_Array_Access</A></span> <b>is</b> <b>access</b> Item_Array; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_184_14" HREF="terminal_interface-curses-menus__adb.htm#ref_992_14">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_184_20" HREF="terminal_interface-curses-menus__adb.htm#ref_992_20">IA</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>; -- <FONT COLOR=red><A NAME="ref_185_20" HREF="terminal_interface-curses-menus__adb.htm#ref_993_20">Free_Items</A></FONT> : Boolean := False); -- <FONT COLOR=green><EM>-- Release the memory for an allocated item array</EM></FONT> -- <FONT COLOR=green><EM>-- If Free_Items is True, call Delete() for all the items in</EM></FONT> -- <FONT COLOR=green><EM>-- the array.</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_new.3x.html">mitem_new.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_195_13" HREF="terminal_interface-curses-menus__adb.htm#ref_94_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_195_21" HREF="terminal_interface-curses-menus__adb.htm#ref_94_21">Name</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_196_21" HREF="terminal_interface-curses-menus__adb.htm#ref_95_21">Description</A></FONT> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Not inlined.</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>function</b> New_Item (<FONT COLOR=red><A NAME="ref_201_23">Name</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_202_23">Description</A></FONT> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> -- <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_195_13">Create</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_207_14" HREF="terminal_interface-curses-menus__adb.htm#ref_124_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_207_22" HREF="terminal_interface-curses-menus__adb.htm#ref_124_22">Itm</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">free_item()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Resets Itm to Null_Item</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_value.3x.html">mitem_value.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_216_14" HREF="terminal_interface-curses-menus__adb.htm#ref_152_14">Set_Value</A></FONT> (<FONT COLOR=red><A NAME="ref_216_25" HREF="terminal_interface-curses-menus__adb.htm#ref_152_25">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_217_25" HREF="terminal_interface-curses-menus__adb.htm#ref_153_25">Value</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_value.3x.html">set_item_value()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_216_14">Set_Value</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_222_13" HREF="terminal_interface-curses-menus__adb.htm#ref_166_13">Value</A></FONT> (<FONT COLOR=red><A NAME="ref_222_20" HREF="terminal_interface-curses-menus__adb.htm#ref_166_20">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_value.3x.html">item_value()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_222_13">Value</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_visible.3x.html">mitem_visible.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_6"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_231_13" HREF="terminal_interface-curses-menus__adb.htm#ref_179_13">Visible</A></FONT> (<FONT COLOR=red><A NAME="ref_231_22" HREF="terminal_interface-curses-menus__adb.htm#ref_179_22">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_visible.3x.html">item_visible()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_231_13">Visible</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_opts.3x.html">mitem_opts.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_7"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_240_14" HREF="terminal_interface-curses-menus__adb.htm#ref_191_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_240_27" HREF="terminal_interface-curses-menus__adb.htm#ref_191_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_241_27" HREF="terminal_interface-curses-menus__adb.htm#ref_192_27">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">set_item_opts()</A></EM></FONT> -- <FONT COLOR=green><EM>-- An overloaded Set_Options is defined later. Pragma Inline appears there</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_8"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_246_14" HREF="terminal_interface-curses-menus__adb.htm#ref_207_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_246_30" HREF="terminal_interface-curses-menus__adb.htm#ref_207_30">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_247_30" HREF="terminal_interface-curses-menus__adb.htm#ref_208_30">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>; -- <FONT COLOR=red><A NAME="ref_248_30" HREF="terminal_interface-curses-menus__adb.htm#ref_209_30">On</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts_on()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: item_opts_off()</EM></FONT> -- <FONT COLOR=green><EM>-- An overloaded Switch_Options is defined later.</EM></FONT> -- <FONT COLOR=green><EM>-- Pragma Inline appears there</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_9"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_255_14" HREF="terminal_interface-curses-menus__adb.htm#ref_231_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_255_27" HREF="terminal_interface-curses-menus__adb.htm#ref_231_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_256_27" HREF="terminal_interface-curses-menus__adb.htm#ref_232_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_10"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_260_13" HREF="terminal_interface-curses-menus__adb.htm#ref_242_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_260_26" HREF="terminal_interface-curses-menus__adb.htm#ref_242_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></EM></FONT> -- <FONT COLOR=green><EM>-- An overloaded Get_Options is defined later. Pragma Inline appears there</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_name.3x.html">mitem_name.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_11"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_269_14" HREF="terminal_interface-curses-menus__adb.htm#ref_250_14">Name</A></FONT> (<FONT COLOR=red><A NAME="ref_269_20" HREF="terminal_interface-curses-menus__adb.htm#ref_250_20">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_270_20" HREF="terminal_interface-curses-menus__adb.htm#ref_251_20">Name</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_272_14" HREF="terminal_interface-curses-menus__adb.htm#ref_259_13">Name</A></FONT> (<FONT COLOR=red><A NAME="ref_272_20" HREF="terminal_interface-curses-menus__adb.htm#ref_259_19">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Implemented as function</EM></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_182_14" HREF="terminal_interface-curses-menus__adb.htm#ref_992_14">Free</A></span> (<span class="symbol"><A NAME="ref_182_20" HREF="terminal_interface-curses-menus__adb.htm#ref_992_20">IA</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_180_9">Item_Array_Access</A>; -+ <span class="symbol"><A NAME="ref_183_20" HREF="terminal_interface-curses-menus__adb.htm#ref_993_20">Free_Items</A></span> : Boolean := False); -+ <span class="comment"><EM>-- Release the memory for an allocated item array</EM></span> -+ <span class="comment"><EM>-- If Free_Items is True, call Delete() for all the items in</EM></span> -+ <span class="comment"><EM>-- the array.</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_new.3x.html">mitem_new.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_193_13" HREF="terminal_interface-curses-menus__adb.htm#ref_94_13">Create</A></span> (<span class="symbol"><A NAME="ref_193_21" HREF="terminal_interface-curses-menus__adb.htm#ref_94_21">Name</A></span> : String; -+ <span class="symbol"><A NAME="ref_194_21" HREF="terminal_interface-curses-menus__adb.htm#ref_95_21">Description</A></span> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></EM></span> -+ <span class="comment"><EM>-- Not inlined.</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>function</b> New_Item (<span class="symbol"><A NAME="ref_199_23">Name</A></span> : String; -+ <span class="symbol"><A NAME="ref_200_23">Description</A></span> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> -+ <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_193_13">Create</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_205_14" HREF="terminal_interface-curses-menus__adb.htm#ref_124_14">Delete</A></span> (<span class="symbol"><A NAME="ref_205_22" HREF="terminal_interface-curses-menus__adb.htm#ref_124_22">Itm</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">free_item()</A></EM></span> -+ <span class="comment"><EM>-- Resets Itm to Null_Item</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_value.3x.html">mitem_value.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_214_14" HREF="terminal_interface-curses-menus__adb.htm#ref_152_14">Set_Value</A></span> (<span class="symbol"><A NAME="ref_214_25" HREF="terminal_interface-curses-menus__adb.htm#ref_152_25">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_215_25" HREF="terminal_interface-curses-menus__adb.htm#ref_153_25">Value</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_value.3x.html">set_item_value()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_214_14">Set_Value</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_220_13" HREF="terminal_interface-curses-menus__adb.htm#ref_166_13">Value</A></span> (<span class="symbol"><A NAME="ref_220_20" HREF="terminal_interface-curses-menus__adb.htm#ref_166_20">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_value.3x.html">item_value()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_220_13">Value</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_visible.3x.html">mitem_visible.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_6"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_229_13" HREF="terminal_interface-curses-menus__adb.htm#ref_179_13">Visible</A></span> (<span class="symbol"><A NAME="ref_229_22" HREF="terminal_interface-curses-menus__adb.htm#ref_179_22">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_visible.3x.html">item_visible()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_229_13">Visible</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_opts.3x.html">mitem_opts.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_7"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_238_14" HREF="terminal_interface-curses-menus__adb.htm#ref_191_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_238_27" HREF="terminal_interface-curses-menus__adb.htm#ref_191_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_239_27" HREF="terminal_interface-curses-menus__adb.htm#ref_192_27">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">set_item_opts()</A></EM></span> -+ <span class="comment"><EM>-- An overloaded Set_Options is defined later. Pragma Inline appears there</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_8"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_244_14" HREF="terminal_interface-curses-menus__adb.htm#ref_207_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_244_30" HREF="terminal_interface-curses-menus__adb.htm#ref_207_30">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_245_30" HREF="terminal_interface-curses-menus__adb.htm#ref_208_30">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_246_30" HREF="terminal_interface-curses-menus__adb.htm#ref_209_30">On</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts_on()</A></EM></span> -+ <span class="comment"><EM>-- AKA: item_opts_off()</EM></span> -+ <span class="comment"><EM>-- An overloaded Switch_Options is defined later.</EM></span> -+ <span class="comment"><EM>-- Pragma Inline appears there</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_9"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_253_14" HREF="terminal_interface-curses-menus__adb.htm#ref_231_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_253_27" HREF="terminal_interface-curses-menus__adb.htm#ref_231_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_254_27" HREF="terminal_interface-curses-menus__adb.htm#ref_232_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_10"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_258_13" HREF="terminal_interface-curses-menus__adb.htm#ref_242_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_258_26" HREF="terminal_interface-curses-menus__adb.htm#ref_242_26">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_154_9">Item_Option_Set</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></EM></span> -+ <span class="comment"><EM>-- An overloaded Get_Options is defined later. Pragma Inline appears there</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_name.3x.html">mitem_name.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_11"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_267_14" HREF="terminal_interface-curses-menus__adb.htm#ref_250_14">Name</A></span> (<span class="symbol"><A NAME="ref_267_20" HREF="terminal_interface-curses-menus__adb.htm#ref_250_20">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_268_20" HREF="terminal_interface-curses-menus__adb.htm#ref_251_20">Name</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_270_14" HREF="terminal_interface-curses-menus__adb.htm#ref_259_13">Name</A></span> (<span class="symbol"><A NAME="ref_270_20" HREF="terminal_interface-curses-menus__adb.htm#ref_259_19">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></EM></span> -+ <span class="comment"><EM>-- Implemented as function</EM></span> - <b>pragma</b> Inline (Name); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_12"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_278_14" HREF="terminal_interface-curses-menus__adb.htm#ref_267_14">Description</A></FONT> (<FONT COLOR=red><A NAME="ref_278_27" HREF="terminal_interface-curses-menus__adb.htm#ref_267_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_279_27" HREF="terminal_interface-curses-menus__adb.htm#ref_268_27">Description</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></EM></FONT> -- -- <b>function</b> <FONT COLOR=red><A NAME="ref_282_14" HREF="terminal_interface-curses-menus__adb.htm#ref_276_13">Description</A></FONT> (<FONT COLOR=red><A NAME="ref_282_27" HREF="terminal_interface-curses-menus__adb.htm#ref_276_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></EM></FONT> -- <FONT COLOR=green><EM>-- Implemented as function</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_12"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_276_14" HREF="terminal_interface-curses-menus__adb.htm#ref_267_14">Description</A></span> (<span class="symbol"><A NAME="ref_276_27" HREF="terminal_interface-curses-menus__adb.htm#ref_267_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_277_27" HREF="terminal_interface-curses-menus__adb.htm#ref_268_27">Description</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></EM></span> -+ -+ <b>function</b> <span class="symbol"><A NAME="ref_280_14" HREF="terminal_interface-curses-menus__adb.htm#ref_276_13">Description</A></span> (<span class="symbol"><A NAME="ref_280_27" HREF="terminal_interface-curses-menus__adb.htm#ref_276_26">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></EM></span> -+ <span class="comment"><EM>-- Implemented as function</EM></span> - <b>pragma</b> Inline (Description); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_current.3x.html">mitem_current.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_13"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_292_14" HREF="terminal_interface-curses-menus__adb.htm#ref_284_14">Set_Current</A></FONT> (<FONT COLOR=red><A NAME="ref_292_27" HREF="terminal_interface-curses-menus__adb.htm#ref_284_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_293_27" HREF="terminal_interface-curses-menus__adb.htm#ref_285_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">set_current_item()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_292_14">Set_Current</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_14"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_298_13" HREF="terminal_interface-curses-menus__adb.htm#ref_298_13">Current</A></FONT> (<FONT COLOR=red><A NAME="ref_298_22" HREF="terminal_interface-curses-menus__adb.htm#ref_298_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">current_item()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_298_13">Current</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_15"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_303_14" HREF="terminal_interface-curses-menus__adb.htm#ref_311_14">Set_Top_Row</A></FONT> (<FONT COLOR=red><A NAME="ref_303_27" HREF="terminal_interface-curses-menus__adb.htm#ref_311_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_304_27" HREF="terminal_interface-curses-menus__adb.htm#ref_312_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">set_top_row()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_303_14">Set_Top_Row</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_16"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_309_13" HREF="terminal_interface-curses-menus__adb.htm#ref_325_13">Top_Row</A></FONT> (<FONT COLOR=red><A NAME="ref_309_22" HREF="terminal_interface-curses-menus__adb.htm#ref_325_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">top_row()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_309_13">Top_Row</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_17"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_314_13" HREF="terminal_interface-curses-menus__adb.htm#ref_338_13">Get_Index</A></FONT> (<FONT COLOR=red><A NAME="ref_314_24" HREF="terminal_interface-curses-menus__adb.htm#ref_338_24">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Positive; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">item_index()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Please note that in this binding we start the numbering of items</EM></FONT> -- <FONT COLOR=green><EM>-- with 1. So this is number is one more than you get from the low</EM></FONT> -- <FONT COLOR=green><EM>-- level call.</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_314_13">Get_Index</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_post.3x.html">menu_post.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_18"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_326_14" HREF="terminal_interface-curses-menus__adb.htm#ref_351_14">Post</A></FONT> (<FONT COLOR=red><A NAME="ref_326_20" HREF="terminal_interface-curses-menus__adb.htm#ref_351_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_327_20" HREF="terminal_interface-curses-menus__adb.htm#ref_352_20">Post</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_post.3x.html">post_menu()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: unpost_menu()</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_326_14">Post</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_opts.3x.html">menu_opts.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_19"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_337_14" HREF="terminal_interface-curses-menus__adb.htm#ref_371_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_337_27" HREF="terminal_interface-curses-menus__adb.htm#ref_371_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_338_27" HREF="terminal_interface-curses-menus__adb.htm#ref_372_27">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">set_menu_opts()</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_current.3x.html">mitem_current.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_13"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_290_14" HREF="terminal_interface-curses-menus__adb.htm#ref_284_14">Set_Current</A></span> (<span class="symbol"><A NAME="ref_290_27" HREF="terminal_interface-curses-menus__adb.htm#ref_284_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_291_27" HREF="terminal_interface-curses-menus__adb.htm#ref_285_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">set_current_item()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_290_14">Set_Current</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_14"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_296_13" HREF="terminal_interface-curses-menus__adb.htm#ref_298_13">Current</A></span> (<span class="symbol"><A NAME="ref_296_22" HREF="terminal_interface-curses-menus__adb.htm#ref_298_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">current_item()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_296_13">Current</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_15"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_301_14" HREF="terminal_interface-curses-menus__adb.htm#ref_311_14">Set_Top_Row</A></span> (<span class="symbol"><A NAME="ref_301_27" HREF="terminal_interface-curses-menus__adb.htm#ref_311_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_302_27" HREF="terminal_interface-curses-menus__adb.htm#ref_312_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">set_top_row()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_301_14">Set_Top_Row</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_16"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_307_13" HREF="terminal_interface-curses-menus__adb.htm#ref_325_13">Top_Row</A></span> (<span class="symbol"><A NAME="ref_307_22" HREF="terminal_interface-curses-menus__adb.htm#ref_325_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">top_row()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_307_13">Top_Row</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_17"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_312_13" HREF="terminal_interface-curses-menus__adb.htm#ref_338_13">Get_Index</A></span> (<span class="symbol"><A NAME="ref_312_24" HREF="terminal_interface-curses-menus__adb.htm#ref_338_24">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Positive; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">item_index()</A></EM></span> -+ <span class="comment"><EM>-- Please note that in this binding we start the numbering of items</EM></span> -+ <span class="comment"><EM>-- with 1. So this is number is one more than you get from the low</EM></span> -+ <span class="comment"><EM>-- level call.</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_312_13">Get_Index</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_post.3x.html">menu_post.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_18"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_324_14" HREF="terminal_interface-curses-menus__adb.htm#ref_351_14">Post</A></span> (<span class="symbol"><A NAME="ref_324_20" HREF="terminal_interface-curses-menus__adb.htm#ref_351_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_325_20" HREF="terminal_interface-curses-menus__adb.htm#ref_352_20">Post</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_post.3x.html">post_menu()</A></EM></span> -+ <span class="comment"><EM>-- AKA: unpost_menu()</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_324_14">Post</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_opts.3x.html">menu_opts.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_19"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_335_14" HREF="terminal_interface-curses-menus__adb.htm#ref_371_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_335_27" HREF="terminal_interface-curses-menus__adb.htm#ref_371_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_336_27" HREF="terminal_interface-curses-menus__adb.htm#ref_372_27">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">set_menu_opts()</A></EM></span> - <b>pragma</b> Inline (Set_Options); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_20"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_343_14" HREF="terminal_interface-curses-menus__adb.htm#ref_387_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_343_30" HREF="terminal_interface-curses-menus__adb.htm#ref_387_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_344_30" HREF="terminal_interface-curses-menus__adb.htm#ref_388_30">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>; -- <FONT COLOR=red><A NAME="ref_345_30" HREF="terminal_interface-curses-menus__adb.htm#ref_389_30">On</A></FONT> : Boolean := True); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts_on()</A></EM></FONT> -- <FONT COLOR=green><EM>-- AKA: menu_opts_off()</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_20"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_341_14" HREF="terminal_interface-curses-menus__adb.htm#ref_387_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_341_30" HREF="terminal_interface-curses-menus__adb.htm#ref_387_30">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_342_30" HREF="terminal_interface-curses-menus__adb.htm#ref_388_30">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>; -+ <span class="symbol"><A NAME="ref_343_30" HREF="terminal_interface-curses-menus__adb.htm#ref_389_30">On</A></span> : Boolean := True); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts_on()</A></EM></span> -+ <span class="comment"><EM>-- AKA: menu_opts_off()</EM></span> - <b>pragma</b> Inline (Switch_Options); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_21"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_351_14" HREF="terminal_interface-curses-menus__adb.htm#ref_411_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_351_27" HREF="terminal_interface-curses-menus__adb.htm#ref_411_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_352_27" HREF="terminal_interface-curses-menus__adb.htm#ref_412_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_22"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_356_13" HREF="terminal_interface-curses-menus__adb.htm#ref_422_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_356_26" HREF="terminal_interface-curses-menus__adb.htm#ref_422_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_21"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_349_14" HREF="terminal_interface-curses-menus__adb.htm#ref_411_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_349_27" HREF="terminal_interface-curses-menus__adb.htm#ref_411_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_350_27" HREF="terminal_interface-curses-menus__adb.htm#ref_412_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_22"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_354_13" HREF="terminal_interface-curses-menus__adb.htm#ref_422_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_354_26" HREF="terminal_interface-curses-menus__adb.htm#ref_422_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></EM></span> - <b>pragma</b> Inline (Get_Options); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_win.3x.html">menu_win.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_23"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_365_14" HREF="terminal_interface-curses-menus__adb.htm#ref_430_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_365_26" HREF="terminal_interface-curses-menus__adb.htm#ref_430_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_366_26" HREF="terminal_interface-curses-menus__adb.htm#ref_431_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_win.3x.html">set_menu_win()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_365_14">Set_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_24"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_371_13" HREF="terminal_interface-curses-menus__adb.htm#ref_444_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_371_25" HREF="terminal_interface-curses-menus__adb.htm#ref_444_25">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_win.3x.html">menu_win()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_371_13">Get_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_25"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_376_14" HREF="terminal_interface-curses-menus__adb.htm#ref_454_14">Set_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_376_30" HREF="terminal_interface-curses-menus__adb.htm#ref_454_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_377_30" HREF="terminal_interface-curses-menus__adb.htm#ref_455_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_win.3x.html">set_menu_sub()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_376_14">Set_Sub_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_26"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_382_13" HREF="terminal_interface-curses-menus__adb.htm#ref_468_13">Get_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_382_29" HREF="terminal_interface-curses-menus__adb.htm#ref_468_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_win.3x.html">menu_sub()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_382_13">Get_Sub_Window</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_27"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_387_14" HREF="terminal_interface-curses-menus__adb.htm#ref_478_14">Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_387_21" HREF="terminal_interface-curses-menus__adb.htm#ref_478_21">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_388_21" HREF="terminal_interface-curses-menus__adb.htm#ref_479_21">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_389_21" HREF="terminal_interface-curses-menus__adb.htm#ref_480_21">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_win.3x.html">scale_menu()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_387_14">Scale</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_cursor.3x.html">menu_cursor.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_28"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_398_14" HREF="terminal_interface-curses-menus__adb.htm#ref_497_14">Position_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_398_31" HREF="terminal_interface-curses-menus__adb.htm#ref_497_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_cursor.3x.html">pos_menu_cursor()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_398_14">Position_Cursor</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_mark.3x.html">menu_mark.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_29"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_407_14" HREF="terminal_interface-curses-menus__adb.htm#ref_510_14">Set_Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_407_24" HREF="terminal_interface-curses-menus__adb.htm#ref_510_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_408_24" HREF="terminal_interface-curses-menus__adb.htm#ref_511_24">Mark</A></FONT> : String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">set_menu_mark()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_407_14">Set_Mark</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_30"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_413_14" HREF="terminal_interface-curses-menus__adb.htm#ref_529_14">Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_413_20" HREF="terminal_interface-curses-menus__adb.htm#ref_529_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_414_20" HREF="terminal_interface-curses-menus__adb.htm#ref_530_20">Mark</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></EM></FONT> -- -- <b>function</b> <FONT COLOR=red><A NAME="ref_417_14" HREF="terminal_interface-curses-menus__adb.htm#ref_538_13">Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_417_20" HREF="terminal_interface-curses-menus__adb.htm#ref_538_19">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> String; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Implemented as function</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_win.3x.html">menu_win.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_23"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_363_14" HREF="terminal_interface-curses-menus__adb.htm#ref_430_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_363_26" HREF="terminal_interface-curses-menus__adb.htm#ref_430_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_364_26" HREF="terminal_interface-curses-menus__adb.htm#ref_431_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_win.3x.html">set_menu_win()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_363_14">Set_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_24"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_369_13" HREF="terminal_interface-curses-menus__adb.htm#ref_444_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_369_25" HREF="terminal_interface-curses-menus__adb.htm#ref_444_25">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_win.3x.html">menu_win()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_369_13">Get_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_25"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_374_14" HREF="terminal_interface-curses-menus__adb.htm#ref_454_14">Set_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_374_30" HREF="terminal_interface-curses-menus__adb.htm#ref_454_30">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_375_30" HREF="terminal_interface-curses-menus__adb.htm#ref_455_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_win.3x.html">set_menu_sub()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_374_14">Set_Sub_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_26"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_380_13" HREF="terminal_interface-curses-menus__adb.htm#ref_468_13">Get_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_380_29" HREF="terminal_interface-curses-menus__adb.htm#ref_468_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_win.3x.html">menu_sub()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_380_13">Get_Sub_Window</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_27"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_385_14" HREF="terminal_interface-curses-menus__adb.htm#ref_478_14">Scale</A></span> (<span class="symbol"><A NAME="ref_385_21" HREF="terminal_interface-curses-menus__adb.htm#ref_478_21">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_386_21" HREF="terminal_interface-curses-menus__adb.htm#ref_479_21">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_387_21" HREF="terminal_interface-curses-menus__adb.htm#ref_480_21">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_win.3x.html">scale_menu()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_385_14">Scale</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_cursor.3x.html">menu_cursor.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_28"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_396_14" HREF="terminal_interface-curses-menus__adb.htm#ref_497_14">Position_Cursor</A></span> (<span class="symbol"><A NAME="ref_396_31" HREF="terminal_interface-curses-menus__adb.htm#ref_497_31">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_cursor.3x.html">pos_menu_cursor()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_396_14">Position_Cursor</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_mark.3x.html">menu_mark.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_29"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_405_14" HREF="terminal_interface-curses-menus__adb.htm#ref_510_14">Set_Mark</A></span> (<span class="symbol"><A NAME="ref_405_24" HREF="terminal_interface-curses-menus__adb.htm#ref_510_24">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_406_24" HREF="terminal_interface-curses-menus__adb.htm#ref_511_24">Mark</A></span> : String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">set_menu_mark()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_405_14">Set_Mark</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_30"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_411_14" HREF="terminal_interface-curses-menus__adb.htm#ref_529_14">Mark</A></span> (<span class="symbol"><A NAME="ref_411_20" HREF="terminal_interface-curses-menus__adb.htm#ref_529_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_412_20" HREF="terminal_interface-curses-menus__adb.htm#ref_530_20">Mark</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></EM></span> -+ -+ <b>function</b> <span class="symbol"><A NAME="ref_415_14" HREF="terminal_interface-curses-menus__adb.htm#ref_538_13">Mark</A></span> (<span class="symbol"><A NAME="ref_415_20" HREF="terminal_interface-curses-menus__adb.htm#ref_538_19">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> String; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></EM></span> -+ <span class="comment"><EM>-- Implemented as function</EM></span> - <b>pragma</b> Inline (Mark); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_attributes.3x.html">menu_attributes.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_31"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_427_14" HREF="terminal_interface-curses-menus__adb.htm#ref_547_14">Set_Foreground</A></FONT> -- (<FONT COLOR=red><A NAME="ref_428_7" HREF="terminal_interface-curses-menus__adb.htm#ref_548_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_429_7" HREF="terminal_interface-curses-menus__adb.htm#ref_549_7">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_430_7" HREF="terminal_interface-curses-menus__adb.htm#ref_550_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_fore()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_427_14">Set_Foreground</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_32"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_435_14" HREF="terminal_interface-curses-menus__adb.htm#ref_566_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_435_26" HREF="terminal_interface-curses-menus__adb.htm#ref_566_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_436_26" HREF="terminal_interface-curses-menus__adb.htm#ref_567_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_fore()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_33"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_440_14" HREF="terminal_interface-curses-menus__adb.htm#ref_575_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_440_26" HREF="terminal_interface-curses-menus__adb.htm#ref_575_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_441_26" HREF="terminal_interface-curses-menus__adb.htm#ref_576_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_442_26" HREF="terminal_interface-curses-menus__adb.htm#ref_577_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_fore()</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_attributes.3x.html">menu_attributes.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_31"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_425_14" HREF="terminal_interface-curses-menus__adb.htm#ref_547_14">Set_Foreground</A></span> -+ (<span class="symbol"><A NAME="ref_426_7" HREF="terminal_interface-curses-menus__adb.htm#ref_548_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_427_7" HREF="terminal_interface-curses-menus__adb.htm#ref_549_7">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_428_7" HREF="terminal_interface-curses-menus__adb.htm#ref_550_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_fore()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_425_14">Set_Foreground</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_32"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_433_14" HREF="terminal_interface-curses-menus__adb.htm#ref_566_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_433_26" HREF="terminal_interface-curses-menus__adb.htm#ref_566_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_434_26" HREF="terminal_interface-curses-menus__adb.htm#ref_567_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_fore()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_33"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_438_14" HREF="terminal_interface-curses-menus__adb.htm#ref_575_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_438_26" HREF="terminal_interface-curses-menus__adb.htm#ref_575_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_439_26" HREF="terminal_interface-curses-menus__adb.htm#ref_576_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_440_26" HREF="terminal_interface-curses-menus__adb.htm#ref_577_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_fore()</A></EM></span> - <b>pragma</b> Inline (Foreground); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_34"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_447_14" HREF="terminal_interface-curses-menus__adb.htm#ref_586_14">Set_Background</A></FONT> -- (<FONT COLOR=red><A NAME="ref_448_7" HREF="terminal_interface-curses-menus__adb.htm#ref_587_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_449_7" HREF="terminal_interface-curses-menus__adb.htm#ref_588_7">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_450_7" HREF="terminal_interface-curses-menus__adb.htm#ref_589_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_back()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_34"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_445_14" HREF="terminal_interface-curses-menus__adb.htm#ref_586_14">Set_Background</A></span> -+ (<span class="symbol"><A NAME="ref_446_7" HREF="terminal_interface-curses-menus__adb.htm#ref_587_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_447_7" HREF="terminal_interface-curses-menus__adb.htm#ref_588_7">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_448_7" HREF="terminal_interface-curses-menus__adb.htm#ref_589_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_back()</A></EM></span> - <b>pragma</b> Inline (Set_Background); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_35"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_455_14" HREF="terminal_interface-curses-menus__adb.htm#ref_605_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_455_26" HREF="terminal_interface-curses-menus__adb.htm#ref_605_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_456_26" HREF="terminal_interface-curses-menus__adb.htm#ref_606_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_back()</A></EM></FONT> -- <FONT COLOR=green><EM>-- #1A NAME="AFU_36"#2|</EM></FONT> -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_460_14" HREF="terminal_interface-curses-menus__adb.htm#ref_614_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_460_26" HREF="terminal_interface-curses-menus__adb.htm#ref_614_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_461_26" HREF="terminal_interface-curses-menus__adb.htm#ref_615_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_462_26" HREF="terminal_interface-curses-menus__adb.htm#ref_616_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_back()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_35"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_453_14" HREF="terminal_interface-curses-menus__adb.htm#ref_605_14">Background</A></span> (<span class="symbol"><A NAME="ref_453_26" HREF="terminal_interface-curses-menus__adb.htm#ref_605_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_454_26" HREF="terminal_interface-curses-menus__adb.htm#ref_606_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_back()</A></EM></span> -+ <span class="comment"><EM>-- #1A NAME="AFU_36"#2|</EM></span> -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_458_14" HREF="terminal_interface-curses-menus__adb.htm#ref_614_14">Background</A></span> (<span class="symbol"><A NAME="ref_458_26" HREF="terminal_interface-curses-menus__adb.htm#ref_614_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_459_26" HREF="terminal_interface-curses-menus__adb.htm#ref_615_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_460_26" HREF="terminal_interface-curses-menus__adb.htm#ref_616_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_back()</A></EM></span> - <b>pragma</b> Inline (Background); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_37"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_467_14" HREF="terminal_interface-curses-menus__adb.htm#ref_625_14">Set_Grey</A></FONT> -- (<FONT COLOR=red><A NAME="ref_468_7" HREF="terminal_interface-curses-menus__adb.htm#ref_625_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_469_7" HREF="terminal_interface-curses-menus__adb.htm#ref_626_24">Grey</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>; -- <FONT COLOR=red><A NAME="ref_470_7" HREF="terminal_interface-curses-menus__adb.htm#ref_627_24">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_grey()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_467_14">Set_Grey</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_38"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_475_14" HREF="terminal_interface-curses-menus__adb.htm#ref_644_14">Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_475_20" HREF="terminal_interface-curses-menus__adb.htm#ref_644_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_476_20" HREF="terminal_interface-curses-menus__adb.htm#ref_645_20">Grey</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_grey()</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_39"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_480_14" HREF="terminal_interface-curses-menus__adb.htm#ref_653_14">Grey</A></FONT> -- (<FONT COLOR=red><A NAME="ref_481_7" HREF="terminal_interface-curses-menus__adb.htm#ref_653_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_482_7" HREF="terminal_interface-curses-menus__adb.htm#ref_654_20">Grey</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -- <FONT COLOR=red><A NAME="ref_483_7" HREF="terminal_interface-curses-menus__adb.htm#ref_655_20">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_grey()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_37"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_465_14" HREF="terminal_interface-curses-menus__adb.htm#ref_625_14">Set_Grey</A></span> -+ (<span class="symbol"><A NAME="ref_466_7" HREF="terminal_interface-curses-menus__adb.htm#ref_625_24">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_467_7" HREF="terminal_interface-curses-menus__adb.htm#ref_626_24">Grey</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_351_4">Normal_Video</A>; -+ <span class="symbol"><A NAME="ref_468_7" HREF="terminal_interface-curses-menus__adb.htm#ref_627_24">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_grey()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_465_14">Set_Grey</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_38"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_473_14" HREF="terminal_interface-curses-menus__adb.htm#ref_644_14">Grey</A></span> (<span class="symbol"><A NAME="ref_473_20" HREF="terminal_interface-curses-menus__adb.htm#ref_644_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_474_20" HREF="terminal_interface-curses-menus__adb.htm#ref_645_20">Grey</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_grey()</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_39"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_478_14" HREF="terminal_interface-curses-menus__adb.htm#ref_653_14">Grey</A></span> -+ (<span class="symbol"><A NAME="ref_479_7" HREF="terminal_interface-curses-menus__adb.htm#ref_653_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_480_7" HREF="terminal_interface-curses-menus__adb.htm#ref_654_20">Grey</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>; -+ <span class="symbol"><A NAME="ref_481_7" HREF="terminal_interface-curses-menus__adb.htm#ref_655_20">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_grey()</A></EM></span> - <b>pragma</b> Inline (Grey); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_40"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_488_14" HREF="terminal_interface-curses-menus__adb.htm#ref_664_14">Set_Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_488_33" HREF="terminal_interface-curses-menus__adb.htm#ref_664_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_489_33" HREF="terminal_interface-curses-menus__adb.htm#ref_665_33">Pad</A></FONT> : Character := Space); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_pad()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_488_14">Set_Pad_Character</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_41"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_494_14" HREF="terminal_interface-curses-menus__adb.htm#ref_679_14">Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_494_29" HREF="terminal_interface-curses-menus__adb.htm#ref_679_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_495_29" HREF="terminal_interface-curses-menus__adb.htm#ref_680_29">Pad</A></FONT> : <b>out</b> Character); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_pad()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_494_14">Pad_Character</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_spacing.3x.html">menu_spacing.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_42"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_504_14" HREF="terminal_interface-curses-menus__adb.htm#ref_688_14">Set_Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_504_27" HREF="terminal_interface-curses-menus__adb.htm#ref_688_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_505_27" HREF="terminal_interface-curses-menus__adb.htm#ref_689_27">Descr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0; -- <FONT COLOR=red><A NAME="ref_506_27" HREF="terminal_interface-curses-menus__adb.htm#ref_690_27">Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := 0; -- <FONT COLOR=red><A NAME="ref_507_27" HREF="terminal_interface-curses-menus__adb.htm#ref_691_27">Col</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_spacing.3x.html">set_menu_spacing()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_504_14">Set_Spacing</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_43"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_512_14" HREF="terminal_interface-curses-menus__adb.htm#ref_707_14">Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_512_23" HREF="terminal_interface-curses-menus__adb.htm#ref_707_23">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_513_23" HREF="terminal_interface-curses-menus__adb.htm#ref_708_23">Descr</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_514_23" HREF="terminal_interface-curses-menus__adb.htm#ref_709_23">Row</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_515_23" HREF="terminal_interface-curses-menus__adb.htm#ref_710_23">Col</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_spacing.3x.html">menu_spacing()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_512_14">Spacing</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_pattern.3x.html">menu_pattern.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_44"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_524_13" HREF="terminal_interface-curses-menus__adb.htm#ref_732_13">Set_Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_524_26" HREF="terminal_interface-curses-menus__adb.htm#ref_732_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_525_26" HREF="terminal_interface-curses-menus__adb.htm#ref_733_26">Text</A></FONT> : String) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_pattern.3x.html">set_menu_pattern()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Return TRUE if the pattern matches, FALSE otherwise</EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_524_13">Set_Pattern</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_45"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_531_14" HREF="terminal_interface-curses-menus__adb.htm#ref_755_14">Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_531_23" HREF="terminal_interface-curses-menus__adb.htm#ref_755_23">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_532_23" HREF="terminal_interface-curses-menus__adb.htm#ref_756_23">Text</A></FONT> : <b>out</b> String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_pattern.3x.html">menu_pattern()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_531_14">Pattern</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_format.3x.html">menu_format.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_46"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_541_14" HREF="terminal_interface-curses-menus__adb.htm#ref_764_14">Set_Format</A></FONT> (<FONT COLOR=red><A NAME="ref_541_26" HREF="terminal_interface-curses-menus__adb.htm#ref_764_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_542_26" HREF="terminal_interface-curses-menus__adb.htm#ref_765_26">Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_543_26" HREF="terminal_interface-curses-menus__adb.htm#ref_766_26">Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -- <FONT COLOR=green><EM>-- Not implemented: 0 argument for Lines or Columns;</EM></FONT> -- <FONT COLOR=green><EM>-- instead use Format to get the current sizes</EM></FONT> -- <FONT COLOR=green><EM>-- The default format is 16 rows, 1 column. Calling</EM></FONT> -- <FONT COLOR=green><EM>-- set_menu_format with a null menu pointer will change this</EM></FONT> -- <FONT COLOR=green><EM>-- default. A zero row or column argument to set_menu_format</EM></FONT> -- <FONT COLOR=green><EM>-- is interpreted as a request not to change the current</EM></FONT> -- <FONT COLOR=green><EM>-- value.</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_format.3x.html">set_menu_format()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_541_14">Set_Format</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_47"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_555_14" HREF="terminal_interface-curses-menus__adb.htm#ref_782_14">Format</A></FONT> (<FONT COLOR=red><A NAME="ref_555_22" HREF="terminal_interface-curses-menus__adb.htm#ref_782_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_556_22" HREF="terminal_interface-curses-menus__adb.htm#ref_783_22">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_557_22" HREF="terminal_interface-curses-menus__adb.htm#ref_784_22">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_format.3x.html">menu_format()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_555_14">Format</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_hook.3x.html">menu_hook.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_565_9">Menu_Hook_Function</A></FONT> <b>is</b> <b>access</b> <b>procedure</b> (<FONT COLOR=red><A NAME="ref_565_49">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>); -- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_48"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_569_14" HREF="terminal_interface-curses-menus__adb.htm#ref_802_14">Set_Item_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_569_34" HREF="terminal_interface-curses-menus__adb.htm#ref_802_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_570_34" HREF="terminal_interface-curses-menus__adb.htm#ref_803_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_item_init()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_569_14">Set_Item_Init_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_49"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_575_14" HREF="terminal_interface-curses-menus__adb.htm#ref_816_14">Set_Item_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_575_34" HREF="terminal_interface-curses-menus__adb.htm#ref_816_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_576_34" HREF="terminal_interface-curses-menus__adb.htm#ref_817_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_item_term()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_575_14">Set_Item_Term_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_50"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_581_14" HREF="terminal_interface-curses-menus__adb.htm#ref_830_14">Set_Menu_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_581_34" HREF="terminal_interface-curses-menus__adb.htm#ref_830_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_582_34" HREF="terminal_interface-curses-menus__adb.htm#ref_831_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_menu_init()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_581_14">Set_Menu_Init_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_51"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_587_14" HREF="terminal_interface-curses-menus__adb.htm#ref_844_14">Set_Menu_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_587_34" HREF="terminal_interface-curses-menus__adb.htm#ref_844_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_588_34" HREF="terminal_interface-curses-menus__adb.htm#ref_845_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_menu_term()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_587_14">Set_Menu_Term_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_52"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_593_13" HREF="terminal_interface-curses-menus__adb.htm#ref_858_13">Get_Item_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_593_33" HREF="terminal_interface-curses-menus__adb.htm#ref_858_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">item_init()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_593_13">Get_Item_Init_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_53"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_598_13" HREF="terminal_interface-curses-menus__adb.htm#ref_866_13">Get_Item_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_598_33" HREF="terminal_interface-curses-menus__adb.htm#ref_866_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">item_term()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_598_13">Get_Item_Term_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_54"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_603_13" HREF="terminal_interface-curses-menus__adb.htm#ref_874_13">Get_Menu_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_603_33" HREF="terminal_interface-curses-menus__adb.htm#ref_874_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">menu_init()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_603_13">Get_Menu_Init_Hook</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_55"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_608_13" HREF="terminal_interface-curses-menus__adb.htm#ref_882_13">Get_Menu_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_608_33" HREF="terminal_interface-curses-menus__adb.htm#ref_882_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">menu_term()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_608_13">Get_Menu_Term_Hook</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_items.3x.html">menu_items.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_56"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_617_14" HREF="terminal_interface-curses-menus__adb.htm#ref_890_14">Redefine</A></FONT> (<FONT COLOR=red><A NAME="ref_617_24" HREF="terminal_interface-curses-menus__adb.htm#ref_890_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_618_24" HREF="terminal_interface-curses-menus__adb.htm#ref_891_24">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_items.3x.html">set_menu_items()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_617_14">Redefine</A>); -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_622_14">Set_Items</A></FONT> (<FONT COLOR=red><A NAME="ref_622_25">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_623_25">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>) <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_617_14">Redefine</A>; -- <FONT COLOR=green><EM>-- pragma Inline (Set_Items);</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_57"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_627_13" HREF="terminal_interface-curses-menus__adb.htm#ref_918_13">Items</A></FONT> (<FONT COLOR=red><A NAME="ref_627_20" HREF="terminal_interface-curses-menus__adb.htm#ref_918_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_628_20" HREF="terminal_interface-curses-menus__adb.htm#ref_919_20">Index</A></FONT> : Positive) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_items.3x.html">menu_items()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_627_13">Items</A>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_58"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_633_13" HREF="terminal_interface-curses-menus__adb.htm#ref_910_13">Item_Count</A></FONT> (<FONT COLOR=red><A NAME="ref_633_25" HREF="terminal_interface-curses-menus__adb.htm#ref_910_25">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> Natural; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_items.3x.html">item_count()</A></EM></FONT> -- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_633_13">Item_Count</A>); -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_new.3x.html">menu_new.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_59"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_642_13" HREF="terminal_interface-curses-menus__adb.htm#ref_937_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_642_21" HREF="terminal_interface-curses-menus__adb.htm#ref_937_21">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_new.3x.html">new_menu()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Not inlined</EM></FONT> -- -- <b>function</b> New_Menu (<FONT COLOR=red><A NAME="ref_646_23">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_642_13">Create</A>; -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_60"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_649_14" HREF="terminal_interface-curses-menus__adb.htm#ref_956_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_649_22" HREF="terminal_interface-curses-menus__adb.htm#ref_956_22">Men</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_new.3x.html">free_menu()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Reset Men to Null_Menu</EM></FONT> -- <FONT COLOR=green><EM>-- Not inlined</EM></FONT> -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_driver.3x.html">menu_driver.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_658_9">Driver_Result</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_658_27">Menu_Ok</A></FONT>, -- <FONT COLOR=red><A NAME="ref_659_27">Request_Denied</A></FONT>, -- <FONT COLOR=red><A NAME="ref_660_27">Unknown_Request</A></FONT>, -- <FONT COLOR=red><A NAME="ref_661_27">No_Match</A></FONT>); -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_61"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_664_13" HREF="terminal_interface-curses-menus__adb.htm#ref_970_13">Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_664_21" HREF="terminal_interface-curses-menus__adb.htm#ref_970_21">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_665_21" HREF="terminal_interface-curses-menus__adb.htm#ref_971_21">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_658_9">Driver_Result</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_driver.3x.html">menu_driver()</A></EM></FONT> -- <FONT COLOR=green><EM>-- Driver is not inlined</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_62"#2|</EM></FONT> -- <FONT COLOR=green><EM>-- Not Implemented: menu_request_name, menu_request_by_name</EM></FONT> --<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_40"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_486_14" HREF="terminal_interface-curses-menus__adb.htm#ref_664_14">Set_Pad_Character</A></span> (<span class="symbol"><A NAME="ref_486_33" HREF="terminal_interface-curses-menus__adb.htm#ref_664_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_487_33" HREF="terminal_interface-curses-menus__adb.htm#ref_665_33">Pad</A></span> : Character := Space); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_pad()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_486_14">Set_Pad_Character</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_41"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_492_14" HREF="terminal_interface-curses-menus__adb.htm#ref_679_14">Pad_Character</A></span> (<span class="symbol"><A NAME="ref_492_29" HREF="terminal_interface-curses-menus__adb.htm#ref_679_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_493_29" HREF="terminal_interface-curses-menus__adb.htm#ref_680_29">Pad</A></span> : <b>out</b> Character); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_pad()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_492_14">Pad_Character</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_spacing.3x.html">menu_spacing.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_42"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_502_14" HREF="terminal_interface-curses-menus__adb.htm#ref_688_14">Set_Spacing</A></span> (<span class="symbol"><A NAME="ref_502_27" HREF="terminal_interface-curses-menus__adb.htm#ref_688_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_503_27" HREF="terminal_interface-curses-menus__adb.htm#ref_689_27">Descr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0; -+ <span class="symbol"><A NAME="ref_504_27" HREF="terminal_interface-curses-menus__adb.htm#ref_690_27">Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := 0; -+ <span class="symbol"><A NAME="ref_505_27" HREF="terminal_interface-curses-menus__adb.htm#ref_691_27">Col</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_spacing.3x.html">set_menu_spacing()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_502_14">Set_Spacing</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_43"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_510_14" HREF="terminal_interface-curses-menus__adb.htm#ref_707_14">Spacing</A></span> (<span class="symbol"><A NAME="ref_510_23" HREF="terminal_interface-curses-menus__adb.htm#ref_707_23">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_511_23" HREF="terminal_interface-curses-menus__adb.htm#ref_708_23">Descr</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_512_23" HREF="terminal_interface-curses-menus__adb.htm#ref_709_23">Row</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_513_23" HREF="terminal_interface-curses-menus__adb.htm#ref_710_23">Col</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_spacing.3x.html">menu_spacing()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_510_14">Spacing</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_pattern.3x.html">menu_pattern.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_44"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_522_13" HREF="terminal_interface-curses-menus__adb.htm#ref_732_13">Set_Pattern</A></span> (<span class="symbol"><A NAME="ref_522_26" HREF="terminal_interface-curses-menus__adb.htm#ref_732_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_523_26" HREF="terminal_interface-curses-menus__adb.htm#ref_733_26">Text</A></span> : String) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_pattern.3x.html">set_menu_pattern()</A></EM></span> -+ <span class="comment"><EM>-- Return TRUE if the pattern matches, FALSE otherwise</EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_522_13">Set_Pattern</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_45"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_529_14" HREF="terminal_interface-curses-menus__adb.htm#ref_755_14">Pattern</A></span> (<span class="symbol"><A NAME="ref_529_23" HREF="terminal_interface-curses-menus__adb.htm#ref_755_23">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_530_23" HREF="terminal_interface-curses-menus__adb.htm#ref_756_23">Text</A></span> : <b>out</b> String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_pattern.3x.html">menu_pattern()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_529_14">Pattern</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_format.3x.html">menu_format.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_46"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_539_14" HREF="terminal_interface-curses-menus__adb.htm#ref_764_14">Set_Format</A></span> (<span class="symbol"><A NAME="ref_539_26" HREF="terminal_interface-curses-menus__adb.htm#ref_764_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_540_26" HREF="terminal_interface-curses-menus__adb.htm#ref_765_26">Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_541_26" HREF="terminal_interface-curses-menus__adb.htm#ref_766_26">Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -+ <span class="comment"><EM>-- Not implemented: 0 argument for Lines or Columns;</EM></span> -+ <span class="comment"><EM>-- instead use Format to get the current sizes</EM></span> -+ <span class="comment"><EM>-- The default format is 16 rows, 1 column. Calling</EM></span> -+ <span class="comment"><EM>-- set_menu_format with a null menu pointer will change this</EM></span> -+ <span class="comment"><EM>-- default. A zero row or column argument to set_menu_format</EM></span> -+ <span class="comment"><EM>-- is interpreted as a request not to change the current</EM></span> -+ <span class="comment"><EM>-- value.</EM></span> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_format.3x.html">set_menu_format()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_539_14">Set_Format</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_47"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_553_14" HREF="terminal_interface-curses-menus__adb.htm#ref_782_14">Format</A></span> (<span class="symbol"><A NAME="ref_553_22" HREF="terminal_interface-curses-menus__adb.htm#ref_782_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_554_22" HREF="terminal_interface-curses-menus__adb.htm#ref_783_22">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_555_22" HREF="terminal_interface-curses-menus__adb.htm#ref_784_22">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_format.3x.html">menu_format()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_553_14">Format</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_hook.3x.html">menu_hook.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_563_9">Menu_Hook_Function</A></span> <b>is</b> <b>access</b> <b>procedure</b> (<span class="symbol"><A NAME="ref_563_49">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>); -+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_48"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_567_14" HREF="terminal_interface-curses-menus__adb.htm#ref_802_14">Set_Item_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_567_34" HREF="terminal_interface-curses-menus__adb.htm#ref_802_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_568_34" HREF="terminal_interface-curses-menus__adb.htm#ref_803_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_item_init()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_567_14">Set_Item_Init_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_49"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_573_14" HREF="terminal_interface-curses-menus__adb.htm#ref_816_14">Set_Item_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_573_34" HREF="terminal_interface-curses-menus__adb.htm#ref_816_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_574_34" HREF="terminal_interface-curses-menus__adb.htm#ref_817_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_item_term()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_573_14">Set_Item_Term_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_50"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_579_14" HREF="terminal_interface-curses-menus__adb.htm#ref_830_14">Set_Menu_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_579_34" HREF="terminal_interface-curses-menus__adb.htm#ref_830_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_580_34" HREF="terminal_interface-curses-menus__adb.htm#ref_831_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_menu_init()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_579_14">Set_Menu_Init_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_51"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_585_14" HREF="terminal_interface-curses-menus__adb.htm#ref_844_14">Set_Menu_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_585_34" HREF="terminal_interface-curses-menus__adb.htm#ref_844_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_586_34" HREF="terminal_interface-curses-menus__adb.htm#ref_845_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_menu_term()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_585_14">Set_Menu_Term_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_52"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_591_13" HREF="terminal_interface-curses-menus__adb.htm#ref_858_13">Get_Item_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_591_33" HREF="terminal_interface-curses-menus__adb.htm#ref_858_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">item_init()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_591_13">Get_Item_Init_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_53"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_596_13" HREF="terminal_interface-curses-menus__adb.htm#ref_866_13">Get_Item_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_596_33" HREF="terminal_interface-curses-menus__adb.htm#ref_866_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">item_term()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_596_13">Get_Item_Term_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_54"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_601_13" HREF="terminal_interface-curses-menus__adb.htm#ref_874_13">Get_Menu_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_601_33" HREF="terminal_interface-curses-menus__adb.htm#ref_874_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">menu_init()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_601_13">Get_Menu_Init_Hook</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_55"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_606_13" HREF="terminal_interface-curses-menus__adb.htm#ref_882_13">Get_Menu_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_606_33" HREF="terminal_interface-curses-menus__adb.htm#ref_882_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_9">Menu_Hook_Function</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">menu_term()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_606_13">Get_Menu_Term_Hook</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_items.3x.html">menu_items.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_56"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_615_14" HREF="terminal_interface-curses-menus__adb.htm#ref_890_14">Redefine</A></span> (<span class="symbol"><A NAME="ref_615_24" HREF="terminal_interface-curses-menus__adb.htm#ref_890_24">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_616_24" HREF="terminal_interface-curses-menus__adb.htm#ref_891_24">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_180_9">Item_Array_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_items.3x.html">set_menu_items()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_615_14">Redefine</A>); -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_620_14">Set_Items</A></span> (<span class="symbol"><A NAME="ref_620_25">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_621_25">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_180_9">Item_Array_Access</A>) <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_615_14">Redefine</A>; -+ <span class="comment"><EM>-- pragma Inline (Set_Items);</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_57"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_625_13" HREF="terminal_interface-curses-menus__adb.htm#ref_918_13">Items</A></span> (<span class="symbol"><A NAME="ref_625_20" HREF="terminal_interface-curses-menus__adb.htm#ref_918_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_626_20" HREF="terminal_interface-curses-menus__adb.htm#ref_919_20">Index</A></span> : Positive) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_items.3x.html">menu_items()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_625_13">Items</A>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_58"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_631_13" HREF="terminal_interface-curses-menus__adb.htm#ref_910_13">Item_Count</A></span> (<span class="symbol"><A NAME="ref_631_25" HREF="terminal_interface-curses-menus__adb.htm#ref_910_25">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> Natural; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_items.3x.html">item_count()</A></EM></span> -+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_631_13">Item_Count</A>); -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_new.3x.html">menu_new.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_59"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_640_13" HREF="terminal_interface-curses-menus__adb.htm#ref_937_13">Create</A></span> (<span class="symbol"><A NAME="ref_640_21" HREF="terminal_interface-curses-menus__adb.htm#ref_937_21">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_180_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_new.3x.html">new_menu()</A></EM></span> -+ <span class="comment"><EM>-- Not inlined</EM></span> -+ -+ <b>function</b> New_Menu (<span class="symbol"><A NAME="ref_644_23">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_180_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_640_13">Create</A>; -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_60"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_647_14" HREF="terminal_interface-curses-menus__adb.htm#ref_956_14">Delete</A></span> (<span class="symbol"><A NAME="ref_647_22" HREF="terminal_interface-curses-menus__adb.htm#ref_956_22">Men</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_new.3x.html">free_menu()</A></EM></span> -+ <span class="comment"><EM>-- Reset Men to Null_Menu</EM></span> -+ <span class="comment"><EM>-- Not inlined</EM></span> -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_driver.3x.html">menu_driver.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_656_9">Driver_Result</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_656_27">Menu_Ok</A></span>, -+ <span class="symbol"><A NAME="ref_657_27">Request_Denied</A></span>, -+ <span class="symbol"><A NAME="ref_658_27">Unknown_Request</A></span>, -+ <span class="symbol"><A NAME="ref_659_27">No_Match</A></span>); -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_61"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_662_13" HREF="terminal_interface-curses-menus__adb.htm#ref_970_13">Driver</A></span> (<span class="symbol"><A NAME="ref_662_21" HREF="terminal_interface-curses-menus__adb.htm#ref_970_21">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_663_21" HREF="terminal_interface-curses-menus__adb.htm#ref_971_21">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_656_9">Driver_Result</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_driver.3x.html">menu_driver()</A></EM></span> -+ <span class="comment"><EM>-- Driver is not inlined</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_62"#2|</EM></span> -+ <span class="comment"><EM>-- Not Implemented: menu_request_name, menu_request_by_name</EM></span> -+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span> - <b>private</b> - <b>type</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address; - <b>type</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-item_user_data__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus-item_user_data__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-item_user_data__adb.htm 2011-02-26 00:43:49.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus-item_user_data__adb.htm 2014-09-01 16:33:22.288792010 +0200 -@@ -1,79 +1,91 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-menus-item_user_data.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-menus-item_user_data.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus-item_user_data.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus-item_user_data.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menus.Item_User_Data --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Menus.Item_User_Data --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<FONT COLOR=red><A NAME="ref_44_46" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<span class="symbol"><A NAME="ref_44_46" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A></span> <b>is</b> - -- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_48_14" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_48_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_29">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_49_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_59_29">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_48_14" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_48_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_29">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_49_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_59_29">Data</A></span> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_51_16">Set_Item_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_51_34" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_52_34" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Addr</A></FONT> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_51_16">Set_Item_Userptr</A></span> (<span class="symbol"><A NAME="ref_51_34" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_52_34" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Addr</A></span> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Item_Userptr, "set_item_userptr"); - -- <FONT COLOR=red><A NAME="ref_55_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Set_Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_29">Itm</A>, <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_59_29">Data</A>); -+ <span class="symbol"><A NAME="ref_55_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Set_Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_29">Itm</A>, <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_59_29">Data</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_55_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_55_7">Res</A>); - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_14">Set_User_Data</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_62_13" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_62_28" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_28">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_62_13" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_62_28" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_28">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_64_16">Item_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_64_30" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_64_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_64_16">Item_Userptr</A></span> (<span class="symbol"><A NAME="ref_64_30" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_64_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>; - <b>pragma</b> Import (C, Item_Userptr, "item_userptr"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_64_16">Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_28">Itm</A>); - <b>end</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_13">Get_User_Data</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_70_14" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_70_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_29">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_71_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_65_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_70_14" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_70_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_29">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_71_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_65_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_65_29">Data</A> := <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_29">Itm</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-item_user_data__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus-item_user_data__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-item_user_data__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus-item_user_data__ads.htm 2014-09-01 16:33:22.288792010 +0200 -@@ -1,79 +1,91 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-menus-item_user_data.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-menus-item_user_data.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus-item_user_data.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus-item_user_data.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menus.Item_User_Data --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.17 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:31:35 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Menus.Item_User_Data --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.17 @</EM></span> -+<span class="comment"><EM>-- @Date: 2009/12/26 17:31:35 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>; -- <b>type</b> <FONT COLOR=red><A NAME="ref_45_9" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">User_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_44_9">User</A>; --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<FONT COLOR=red><A NAME="ref_46_41" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_44_46">Item_User_Data</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_44_9" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">User</A></span> <b>is</b> <b>limited</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_45_9" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">User_Access</A></span> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_44_9">User</A>; -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<span class="symbol"><A NAME="ref_46_41" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_44_46">Item_User_Data</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A>); - -- <FONT COLOR=green><EM>-- The binding uses the same user pointer for menu items</EM></FONT> -- <FONT COLOR=green><EM>-- as the low level C implementation. So you can safely</EM></FONT> -- <FONT COLOR=green><EM>-- read or write the user pointer also with the C routines</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_userptr.3x.html">mitem_userptr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_58_14" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_48_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_58_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_48_29">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_59_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_49_29">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">set_item_userptr</A></EM></FONT> -+ <span class="comment"><EM>-- The binding uses the same user pointer for menu items</EM></span> -+ <span class="comment"><EM>-- as the low level C implementation. So you can safely</EM></span> -+ <span class="comment"><EM>-- read or write the user pointer also with the C routines</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_userptr.3x.html">mitem_userptr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_58_14" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_48_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_58_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_48_29">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_59_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_49_29">Data</A></span> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">set_item_userptr</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_14">Set_User_Data</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_64_14" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_70_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_64_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_70_29">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -- <FONT COLOR=red><A NAME="ref_65_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_71_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">item_userptr</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_69_13" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_62_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_69_28" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_62_28">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">item_userptr</A></EM></FONT> -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_64_14" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_70_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_64_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_70_29">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>; -+ <span class="symbol"><A NAME="ref_65_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_71_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">item_userptr</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_69_13" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_62_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_69_28" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_62_28">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">item_userptr</A></EM></span> -+ <span class="comment"><EM>-- Same as function</EM></span> - <b>pragma</b> Inline (Get_User_Data); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-menu_user_data__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus-menu_user_data__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-menu_user_data__adb.htm 2011-02-26 00:43:49.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus-menu_user_data__adb.htm 2014-09-01 16:33:22.289792011 +0200 -@@ -1,78 +1,90 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-menus-menu_user_data.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-menus-menu_user_data.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus-menu_user_data.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus-menu_user_data.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menus.Menu_User_Data --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.13 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Menus.Menu_User_Data --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.13 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<FONT COLOR=red><A NAME="ref_43_46" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<span class="symbol"><A NAME="ref_43_46" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A></span> <b>is</b> - -- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_47_14" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_47_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_48_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_54_29">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_47_14" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_47_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_48_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_54_29">Data</A></span> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_50_16">Set_Menu_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_50_34" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_51_34" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_50_16">Set_Menu_Userptr</A></span> (<span class="symbol"><A NAME="ref_50_34" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_51_34" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Data</A></span> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Menu_Userptr, "set_menu_userptr"); - -- <FONT COLOR=red><A NAME="ref_54_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Set_Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_29">Men</A>, <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_54_29">Data</A>); -+ <span class="symbol"><A NAME="ref_54_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Set_Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_29">Men</A>, <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_54_29">Data</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_54_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b> - <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_54_7">Res</A>); - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_14">Set_User_Data</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_61_13" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_61_28" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_28">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_61_13" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_61_28" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_28">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_63_16">Menu_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_63_30" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_63_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_63_16">Menu_Userptr</A></span> (<span class="symbol"><A NAME="ref_63_30" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_63_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>; - <b>pragma</b> Import (C, Menu_Userptr, "menu_userptr"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_63_16">Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_28">Men</A>); - <b>end</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_13">Get_User_Data</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_69_14" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_69_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_70_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_60_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_69_14" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_69_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_70_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_60_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_60_29">Data</A> := <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_29">Men</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-menu_user_data__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus-menu_user_data__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-menu_user_data__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-menus-menu_user_data__ads.htm 2014-09-01 16:33:22.289792011 +0200 -@@ -1,74 +1,86 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-menus-menu_user_data.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-menus-menu_user_data.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus-menu_user_data.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus-menu_user_data.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menus.Menu_User_Data --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.15 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Menus.Menu_User_Data --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.15 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_43_9" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>; -- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">User_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_43_9">User</A>; --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<FONT COLOR=red><A NAME="ref_45_41" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_43_46">Menu_User_Data</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_43_9" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">User</A></span> <b>is</b> <b>limited</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_44_9" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">User_Access</A></span> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_43_9">User</A>; -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<span class="symbol"><A NAME="ref_45_41" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_43_46">Menu_User_Data</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A>); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_userptr.3x.html">menu_userptr.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_53_14" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_47_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_53_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_47_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_54_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_48_29">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">set_menu_userptr</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_userptr.3x.html">menu_userptr.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_53_14" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_47_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_53_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_47_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_54_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_48_29">Data</A></span> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">set_menu_userptr</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_14">Set_User_Data</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_14" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_69_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_59_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_69_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -- <FONT COLOR=red><A NAME="ref_60_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_70_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">menu_userptr</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_61_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_64_28" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_61_28">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">menu_userptr</A></EM></FONT> -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_69_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_59_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_69_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>; -+ <span class="symbol"><A NAME="ref_60_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_70_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">menu_userptr</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_61_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_64_28" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_61_28">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">menu_userptr</A></EM></span> -+ <span class="comment"><EM>-- Same as function</EM></span> - <b>pragma</b> Inline (Get_User_Data); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-mouse__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-mouse__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-mouse__adb.htm 2011-03-20 00:18:40.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-mouse__adb.htm 2014-09-01 16:33:22.294792020 +0200 -@@ -1,93 +1,105 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-mouse.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-mouse.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-mouse.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-mouse.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Mouse --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.24 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Mouse --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.24 @</EM></span> -+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; --<b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; -+<b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_46_40" HREF="terminal_interface-curses-mouse__ads.htm#ref_48_35">Mouse</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_46_40" HREF="terminal_interface-curses-mouse__ads.htm#ref_48_35">Mouse</A></span> <b>is</b> - - <b>use</b> <b>type</b> System.Bit_Order; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_50_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_94_13">Has_Mouse</A></FONT> <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_50_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_94_13">Has_Mouse</A></span> <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_52_16">Mouse_Avail</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_52_16">Mouse_Avail</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Mouse_Avail, "has_mouse"); - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_769_13">Has_Key</A> (<A HREF="terminal_interface-curses__ads.htm#ref_204_4">Key_Mouse</A>) <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_52_16">Mouse_Avail</A> /= 0 <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_768_13">Has_Key</A> (<A HREF="terminal_interface-curses__ads.htm#ref_204_4">Key_Mouse</A>) <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_52_16">Mouse_Avail</A> /= 0 <b>then</b> - <b>return</b> True; - <b>else</b> - <b>return</b> False; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_94_13">Has_Mouse</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_62_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_129_13">Get_Mouse</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_62_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_129_13">Get_Mouse</A></span> <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A> - <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_64_12">Event_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>; -+ <b>type</b> <span class="symbol"><A NAME="ref_64_12">Event_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_66_16">Getmouse</A></FONT> (<FONT COLOR=red><A NAME="ref_66_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_66_16">Ev</A></FONT> : <A HREF="terminal_interface-curses-mouse__adb.htm#ref_64_12">Event_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_66_16">Getmouse</A></span> (<span class="symbol"><A NAME="ref_66_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_66_16">Ev</A></span> : <A HREF="terminal_interface-curses-mouse__adb.htm#ref_64_12">Event_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Getmouse, "getmouse"); - -- <FONT COLOR=red><A NAME="ref_69_7">Event</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>; -+ <span class="symbol"><A NAME="ref_69_7">Event</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_66_16">Getmouse</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_69_7">Event</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_69_7">Event</A>; - <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_129_13">Get_Mouse</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_77_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_97_14">Register_Reportable_Event</A></FONT> (<FONT COLOR=red><A NAME="ref_77_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_98_7">Button</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -- <FONT COLOR=red><A NAME="ref_78_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_99_7">State</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>; -- <FONT COLOR=red><A NAME="ref_79_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_100_7">Mask</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_77_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_97_14">Register_Reportable_Event</A></span> (<span class="symbol"><A NAME="ref_77_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_98_7">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -+ <span class="symbol"><A NAME="ref_78_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_99_7">State</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>; -+ <span class="symbol"><A NAME="ref_79_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_100_7">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_81_7">Button_Nr</A></FONT> : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_98_7">Button</A>); -- <FONT COLOR=red><A NAME="ref_82_7">State_Nr</A></FONT> : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_99_7">State</A>); -+ <span class="symbol"><A NAME="ref_81_7">Button_Nr</A></span> : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_98_7">Button</A>); -+ <span class="symbol"><A NAME="ref_82_7">State_Nr</A></span> : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_99_7">State</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_98_7">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_73_12">Modifier_Keys</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_99_7">State</A> /= <A HREF="terminal_interface-curses-mouse__ads.htm#ref_76_26">Pressed</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>else</b> - <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_98_7">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_12">Real_Buttons</A> <b>then</b> - <A HREF="terminal_interface-curses-mouse__ads.htm#ref_100_7">Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_100_7">Mask</A> <b>or</b> ((2 ** (6 * <A HREF="terminal_interface-curses-mouse__adb.htm#ref_81_7">Button_Nr</A>)) ** <A HREF="terminal_interface-curses-mouse__adb.htm#ref_82_7">State_Nr</A>); -@@ -97,52 +109,52 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_97_14">Register_Reportable_Event</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_95_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_106_14">Register_Reportable_Events</A></FONT> (<FONT COLOR=red><A NAME="ref_95_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_107_7">Button</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -- <FONT COLOR=red><A NAME="ref_96_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_108_7">State</A></FONT> : Button_States; -- <FONT COLOR=red><A NAME="ref_97_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_109_7">Mask</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_95_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_106_14">Register_Reportable_Events</A></span> (<span class="symbol"><A NAME="ref_95_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_107_7">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -+ <span class="symbol"><A NAME="ref_96_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_108_7">State</A></span> : Button_States; -+ <span class="symbol"><A NAME="ref_97_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_109_7">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>) - <b>is</b> - <b>begin</b> -- <b>for</b> <FONT COLOR=red><A NAME="ref_100_11">S</A></FONT> <b>in</b> Button_States'<b>Range</b> <b>loop</b> -+ <b>for</b> <span class="symbol"><A NAME="ref_100_11">S</A></span> <b>in</b> Button_States'<b>Range</b> <b>loop</b> - <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_108_7">State</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_100_11">S</A>) <b>then</b> - <A HREF="terminal_interface-curses-mouse__ads.htm#ref_97_14">Register_Reportable_Event</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_107_7">Button</A>, <A HREF="terminal_interface-curses-mouse__adb.htm#ref_100_11">S</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_109_7">Mask</A>); - <b>end</b> <b>if</b>; - <b>end</b> <b>loop</b>; - <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_106_14">Register_Reportable_Events</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_107_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_119_13">Start_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_107_26" HREF="terminal_interface-curses-mouse__ads.htm#ref_119_26">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_62_4">All_Events</A>) -+ <b>function</b> <span class="symbol"><A NAME="ref_107_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_119_13">Start_Mouse</A></span> (<span class="symbol"><A NAME="ref_107_26" HREF="terminal_interface-curses-mouse__ads.htm#ref_119_26">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_62_4">All_Events</A>) - <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_110_16">MMask</A></FONT> (<FONT COLOR=red><A NAME="ref_110_23" HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">M</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -- <FONT COLOR=red><A NAME="ref_111_23" HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">O</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>) <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_110_16">MMask</A></span> (<span class="symbol"><A NAME="ref_110_23" HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">M</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -+ <span class="symbol"><A NAME="ref_111_23" HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">O</A></span> : <b>access</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>) <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; - <b>pragma</b> Import (C, MMask, "mousemask"); -- <FONT COLOR=red><A NAME="ref_113_7">R</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -- <FONT COLOR=red><A NAME="ref_114_7">Old</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -+ <span class="symbol"><A NAME="ref_113_7">R</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -+ <span class="symbol"><A NAME="ref_114_7">Old</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; - <b>begin</b> - <A HREF="terminal_interface-curses-mouse__adb.htm#ref_113_7">R</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">MMask</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_119_26">Mask</A>, <A HREF="terminal_interface-curses-mouse__adb.htm#ref_114_7">Old</A>'<b>Access</b>); - <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_113_7">R</A> = <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A> <b>then</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_872_14">Beep</A>; -+ <A HREF="terminal_interface-curses__ads.htm#ref_871_14">Beep</A>; - <b>end</b> <b>if</b>; - <b>return</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_114_7">Old</A>; - <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_119_13">Start_Mouse</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_123_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_124_14">End_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_123_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_124_25">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_123_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_124_14">End_Mouse</A></span> (<span class="symbol"><A NAME="ref_123_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_124_25">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A>) - <b>is</b> - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_124_25">Mask</A> /= <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A> <b>then</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_872_14">Beep</A>; -+ <A HREF="terminal_interface-curses__ads.htm#ref_871_14">Beep</A>; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_124_14">End_Mouse</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_131_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_135_14">Dispatch_Event</A></FONT> (<FONT COLOR=red><A NAME="ref_131_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_135_30">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -- <FONT COLOR=red><A NAME="ref_132_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_136_30">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -- <FONT COLOR=red><A NAME="ref_133_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_137_30">State</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>); -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_135_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_131_14">Dispatch_Event</A></FONT> (<FONT COLOR=red><A NAME="ref_135_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -- <FONT COLOR=red><A NAME="ref_136_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -- <FONT COLOR=red><A NAME="ref_137_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_133_30">State</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>) <b>is</b> -- <FONT COLOR=red><A NAME="ref_138_7">L</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_131_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_135_14">Dispatch_Event</A></span> (<span class="symbol"><A NAME="ref_131_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_135_30">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -+ <span class="symbol"><A NAME="ref_132_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_136_30">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -+ <span class="symbol"><A NAME="ref_133_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_137_30">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>); -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_135_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_131_14">Dispatch_Event</A></span> (<span class="symbol"><A NAME="ref_135_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -+ <span class="symbol"><A NAME="ref_136_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -+ <span class="symbol"><A NAME="ref_137_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_133_30">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>) <b>is</b> -+ <span class="symbol"><A NAME="ref_138_7">L</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; - <b>begin</b> -- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_70_26">Alt</A>; <FONT COLOR=green><EM>-- preset to non real button;</EM></FONT> -+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_70_26">Alt</A>; <span class="comment"><EM>-- preset to non real button;</EM></span> - <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_217_4">BUTTON1_EVENTS</A>) /= 0 <b>then</b> - <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_26">Left</A>; - <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_218_4">BUTTON2_EVENTS</A>) /= 0 <b>then</b> -@@ -154,7 +166,7 @@ - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_12">Real_Buttons</A> <b>then</b> - <A HREF="terminal_interface-curses-mouse__adb.htm#ref_138_7">L</A> := 2 ** (6 * <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A>)); -- <b>for</b> <FONT COLOR=red><A NAME="ref_152_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>'<b>Range</b> <b>loop</b> -+ <b>for</b> <span class="symbol"><A NAME="ref_152_14">I</A></span> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>'<b>Range</b> <b>loop</b> - <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_138_7">L</A>) /= 0 <b>then</b> - <A HREF="terminal_interface-curses-mouse__adb.htm#ref_133_30">State</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#ref_152_14">I</A>; - <b>exit</b>; -@@ -173,47 +185,47 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_14">Dispatch_Event</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_171_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_133_14">Get_Event</A></FONT> (<FONT COLOR=red><A NAME="ref_171_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>; -- <FONT COLOR=red><A NAME="ref_172_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_134_25">Y</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_173_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_135_25">X</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_174_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_136_25">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -- <FONT COLOR=red><A NAME="ref_175_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_137_25">State</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_171_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_133_14">Get_Event</A></span> (<span class="symbol"><A NAME="ref_171_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>; -+ <span class="symbol"><A NAME="ref_172_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_134_25">Y</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_173_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_135_25">X</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_174_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_136_25">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -+ <span class="symbol"><A NAME="ref_175_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_137_25">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_177_7">Mask</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_170_10">Bstate</A>; -+ <span class="symbol"><A NAME="ref_177_7">Mask</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_170_10">Bstate</A>; - <b>begin</b> - <A HREF="terminal_interface-curses-mouse__ads.htm#ref_135_25">X</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_10">X</A>); - <A HREF="terminal_interface-curses-mouse__ads.htm#ref_134_25">Y</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_13">Y</A>); - <A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_14">Dispatch_Event</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_177_7">Mask</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_136_25">Button</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_137_25">State</A>); - <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_14">Get_Event</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_184_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_145_14">Unget_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_184_27" HREF="terminal_interface-curses-mouse__ads.htm#ref_145_27">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_184_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_145_14">Unget_Mouse</A></span> (<span class="symbol"><A NAME="ref_184_27" HREF="terminal_interface-curses-mouse__ads.htm#ref_145_27">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_186_16">Ungetmouse</A></FONT> (<FONT COLOR=red><A NAME="ref_186_28" HREF="terminal_interface-curses-mouse__adb.htm#ref_186_16">Ev</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_186_16">Ungetmouse</A></span> (<span class="symbol"><A NAME="ref_186_28" HREF="terminal_interface-curses-mouse__adb.htm#ref_186_16">Ev</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Ungetmouse, "ungetmouse"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_186_16">Ungetmouse</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_145_27">Event</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_145_14">Unget_Mouse</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_194_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_150_13">Enclosed_In_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_194_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_150_33">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_195_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_151_33">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_194_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_150_13">Enclosed_In_Window</A></span> (<span class="symbol"><A NAME="ref_194_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_150_33">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_195_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_151_33">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_197_16">Wenclose</A></FONT> (<FONT COLOR=red><A NAME="ref_197_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_197_40" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <FONT COLOR=red><A NAME="ref_197_51" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_197_16">Wenclose</A></span> (<span class="symbol"><A NAME="ref_197_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_197_40" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">Y</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <span class="symbol"><A NAME="ref_197_51" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">X</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, Wenclose, "wenclose"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">Wenclose</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_150_33">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_151_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_13">Y</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_151_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_10">X</A>)) -- = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b> -+ = <A HREF="terminal_interface-curses__ads.htm#ref_1926_4">Curses_Bool_False</A> <b>then</b> - <b>return</b> False; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_150_13">Enclosed_In_Window</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_209_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_157_13">Mouse_Interval</A></FONT> (<FONT COLOR=red><A NAME="ref_209_29" HREF="terminal_interface-curses-mouse__ads.htm#ref_157_29">Msec</A></FONT> : Natural := 200) <b>return</b> Natural -+ <b>function</b> <span class="symbol"><A NAME="ref_209_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_157_13">Mouse_Interval</A></span> (<span class="symbol"><A NAME="ref_209_29" HREF="terminal_interface-curses-mouse__ads.htm#ref_157_29">Msec</A></span> : Natural := 200) <b>return</b> Natural - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_211_16">Mouseinterval</A></FONT> (<FONT COLOR=red><A NAME="ref_211_31" HREF="terminal_interface-curses-mouse__adb.htm#ref_211_16">Msec</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_211_16">Mouseinterval</A></span> (<span class="symbol"><A NAME="ref_211_31" HREF="terminal_interface-curses-mouse__adb.htm#ref_211_16">Msec</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Mouseinterval, "mouseinterval"); - <b>begin</b> - <b>return</b> Natural (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_211_16">Mouseinterval</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_157_29">Msec</A>))); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-mouse__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-mouse__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-mouse__ads.htm 2011-03-20 00:18:40.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-mouse__ads.htm 2014-09-01 16:33:22.294792020 +0200 -@@ -1,178 +1,190 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-mouse.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-mouse.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-mouse.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-mouse.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Mouse --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.29 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/19 12:35:58 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- mouse binding.</EM></FONT> --<FONT COLOR=green><EM>-- This module is generated. Please don't change it manually!</EM></FONT> --<FONT COLOR=green><EM>-- Run the generator instead.</EM></FONT> --<FONT COLOR=green><EM>-- |</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Mouse --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.29 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/19 12:35:58 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- mouse binding.</EM></span> -+<span class="comment"><EM>-- This module is generated. Please don't change it manually!</EM></span> -+<span class="comment"><EM>-- Run the generator instead.</EM></span> -+<span class="comment"><EM>-- |</EM></span> - <b>with</b> System; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_48_35" HREF="terminal_interface-curses-mouse__adb.htm#ref_46_40">Mouse</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_48_35" HREF="terminal_interface-curses-mouse__adb.htm#ref_46_40">Mouse</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_48_35">Mouse</A>); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_mouse.3x.html">curs_mouse.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- mouse_trafo, wmouse_trafo are implemented as Transform_Coordinates</EM></FONT> -- <FONT COLOR=green><EM>-- in the parent package.</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <FONT COLOR=green><EM>-- Not implemented:</EM></FONT> -- <FONT COLOR=green><EM>-- REPORT_MOUSE_POSITION (i.e. as a parameter to Register_Reportable_Event</EM></FONT> -- <FONT COLOR=green><EM>-- or Start_Mouse)</EM></FONT> -- <b>type</b> <FONT COLOR=red><A NAME="ref_60_9">Event_Mask</A></FONT> <b>is</b> <b>private</b>; -- <FONT COLOR=red><A NAME="ref_61_4">No_Events</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -- <FONT COLOR=red><A NAME="ref_62_4">All_Events</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_64_9">Mouse_Button</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_64_26">Left</A></FONT>, <FONT COLOR=green><EM>-- aka: Button 1</EM></FONT> -- <FONT COLOR=red><A NAME="ref_65_26">Middle</A></FONT>, <FONT COLOR=green><EM>-- aka: Button 2</EM></FONT> -- <FONT COLOR=red><A NAME="ref_66_26">Right</A></FONT>, <FONT COLOR=green><EM>-- aka: Button 3</EM></FONT> -- <FONT COLOR=red><A NAME="ref_67_26">Button4</A></FONT>, <FONT COLOR=green><EM>-- aka: Button 4</EM></FONT> -- <FONT COLOR=red><A NAME="ref_68_26">Control</A></FONT>, <FONT COLOR=green><EM>-- Control Key</EM></FONT> -- <FONT COLOR=red><A NAME="ref_69_26">Shift</A></FONT>, <FONT COLOR=green><EM>-- Shift Key</EM></FONT> -- <FONT COLOR=red><A NAME="ref_70_26">Alt</A></FONT>); <FONT COLOR=green><EM>-- ALT Key</EM></FONT> -- -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_72_12">Real_Buttons</A></FONT> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_26">Left</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_67_26">Button4</A>; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_73_12">Modifier_Keys</A></FONT> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_68_26">Control</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_70_26">Alt</A>; -- -- <b>type</b> <FONT COLOR=red><A NAME="ref_75_9">Button_State</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_75_26">Released</A></FONT>, -- <FONT COLOR=red><A NAME="ref_76_26">Pressed</A></FONT>, -- <FONT COLOR=red><A NAME="ref_77_26">Clicked</A></FONT>, -- <FONT COLOR=red><A NAME="ref_78_26">Double_Clicked</A></FONT>, -- <FONT COLOR=red><A NAME="ref_79_26">Triple_Clicked</A></FONT>); -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_mouse.3x.html">curs_mouse.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- mouse_trafo, wmouse_trafo are implemented as Transform_Coordinates</EM></span> -+ <span class="comment"><EM>-- in the parent package.</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <span class="comment"><EM>-- Not implemented:</EM></span> -+ <span class="comment"><EM>-- REPORT_MOUSE_POSITION (i.e. as a parameter to Register_Reportable_Event</EM></span> -+ <span class="comment"><EM>-- or Start_Mouse)</EM></span> -+ <b>type</b> <span class="symbol"><A NAME="ref_60_9">Event_Mask</A></span> <b>is</b> <b>private</b>; -+ <span class="symbol"><A NAME="ref_61_4">No_Events</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -+ <span class="symbol"><A NAME="ref_62_4">All_Events</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_64_9">Mouse_Button</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_64_26">Left</A></span>, <span class="comment"><EM>-- aka: Button 1</EM></span> -+ <span class="symbol"><A NAME="ref_65_26">Middle</A></span>, <span class="comment"><EM>-- aka: Button 2</EM></span> -+ <span class="symbol"><A NAME="ref_66_26">Right</A></span>, <span class="comment"><EM>-- aka: Button 3</EM></span> -+ <span class="symbol"><A NAME="ref_67_26">Button4</A></span>, <span class="comment"><EM>-- aka: Button 4</EM></span> -+ <span class="symbol"><A NAME="ref_68_26">Control</A></span>, <span class="comment"><EM>-- Control Key</EM></span> -+ <span class="symbol"><A NAME="ref_69_26">Shift</A></span>, <span class="comment"><EM>-- Shift Key</EM></span> -+ <span class="symbol"><A NAME="ref_70_26">Alt</A></span>); <span class="comment"><EM>-- ALT Key</EM></span> -+ -+ <b>subtype</b> <span class="symbol"><A NAME="ref_72_12">Real_Buttons</A></span> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_26">Left</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_67_26">Button4</A>; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_73_12">Modifier_Keys</A></span> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_68_26">Control</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_70_26">Alt</A>; -+ -+ <b>type</b> <span class="symbol"><A NAME="ref_75_9">Button_State</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_75_26">Released</A></span>, -+ <span class="symbol"><A NAME="ref_76_26">Pressed</A></span>, -+ <span class="symbol"><A NAME="ref_77_26">Clicked</A></span>, -+ <span class="symbol"><A NAME="ref_78_26">Double_Clicked</A></span>, -+ <span class="symbol"><A NAME="ref_79_26">Triple_Clicked</A></span>); - - <b>type</b> Button_States <b>is</b> <b>array</b> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>) <b>of</b> Boolean; - <b>pragma</b> Pack (Button_States); - -- <FONT COLOR=red><A NAME="ref_84_4">All_Clicks</A></FONT> : <b>constant</b> Button_States := (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_77_26">Clicked</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_79_26">Triple_Clicked</A> =&gt; True, -+ <span class="symbol"><A NAME="ref_84_4">All_Clicks</A></span> : <b>constant</b> Button_States := (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_77_26">Clicked</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_79_26">Triple_Clicked</A> =&gt; True, - <b>others</b> =&gt; False); -- <FONT COLOR=red><A NAME="ref_86_4">All_States</A></FONT> : <b>constant</b> Button_States := (<b>others</b> =&gt; True); -+ <span class="symbol"><A NAME="ref_86_4">All_States</A></span> : <b>constant</b> Button_States := (<b>others</b> =&gt; True); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_88_9">Mouse_Event</A></FONT> <b>is</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_88_9">Mouse_Event</A></span> <b>is</b> <b>private</b>; - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_mouse.3x.html">curs_mouse.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <b>function</b> <FONT COLOR=red><A NAME="ref_94_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_50_13">Has_Mouse</A></FONT> <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- Return true if a mouse device is supported, false otherwise.</EM></FONT> -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_97_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_77_14">Register_Reportable_Event</A></FONT> -- (<FONT COLOR=red><A NAME="ref_98_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_77_41">Button</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -- <FONT COLOR=red><A NAME="ref_99_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_78_41">State</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>; -- <FONT COLOR=red><A NAME="ref_100_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_79_41">Mask</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>); -- <FONT COLOR=green><EM>-- Stores the event described by the button and the state in the mask.</EM></FONT> -- <FONT COLOR=green><EM>-- Before you call this the first time, you should initialize the mask</EM></FONT> -- <FONT COLOR=green><EM>-- with the Empty_Mask constant</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_mouse.3x.html">curs_mouse.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <b>function</b> <span class="symbol"><A NAME="ref_94_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_50_13">Has_Mouse</A></span> <b>return</b> Boolean; -+ <span class="comment"><EM>-- Return true if a mouse device is supported, false otherwise.</EM></span> -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_97_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_77_14">Register_Reportable_Event</A></span> -+ (<span class="symbol"><A NAME="ref_98_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_77_41">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -+ <span class="symbol"><A NAME="ref_99_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_78_41">State</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>; -+ <span class="symbol"><A NAME="ref_100_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_79_41">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>); -+ <span class="comment"><EM>-- Stores the event described by the button and the state in the mask.</EM></span> -+ <span class="comment"><EM>-- Before you call this the first time, you should initialize the mask</EM></span> -+ <span class="comment"><EM>-- with the Empty_Mask constant</EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_97_14">Register_Reportable_Event</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_106_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_95_14">Register_Reportable_Events</A></FONT> -- (<FONT COLOR=red><A NAME="ref_107_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_95_42">Button</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -- <FONT COLOR=red><A NAME="ref_108_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_96_42">State</A></FONT> : Button_States; -- <FONT COLOR=red><A NAME="ref_109_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_97_42">Mask</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>); -- <FONT COLOR=green><EM>-- Register all events described by the Button and the State bitmap.</EM></FONT> -- <FONT COLOR=green><EM>-- Before you call this the first time, you should initialize the mask</EM></FONT> -- <FONT COLOR=green><EM>-- with the Empty_Mask constant</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <FONT COLOR=green><EM>-- There is one difference to mousmask(): we return the value of the</EM></FONT> -- <FONT COLOR=green><EM>-- old mask, that means the event mask value before this call.</EM></FONT> -- <FONT COLOR=green><EM>-- Not Implemented: The library version</EM></FONT> -- <FONT COLOR=green><EM>-- returns a Mouse_Mask that tells which events are reported.</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_119_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_107_13">Start_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_119_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_107_26">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_62_4">All_Events</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_106_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_95_14">Register_Reportable_Events</A></span> -+ (<span class="symbol"><A NAME="ref_107_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_95_42">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -+ <span class="symbol"><A NAME="ref_108_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_96_42">State</A></span> : Button_States; -+ <span class="symbol"><A NAME="ref_109_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_97_42">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>); -+ <span class="comment"><EM>-- Register all events described by the Button and the State bitmap.</EM></span> -+ <span class="comment"><EM>-- Before you call this the first time, you should initialize the mask</EM></span> -+ <span class="comment"><EM>-- with the Empty_Mask constant</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <span class="comment"><EM>-- There is one difference to mousmask(): we return the value of the</EM></span> -+ <span class="comment"><EM>-- old mask, that means the event mask value before this call.</EM></span> -+ <span class="comment"><EM>-- Not Implemented: The library version</EM></span> -+ <span class="comment"><EM>-- returns a Mouse_Mask that tells which events are reported.</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_119_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_107_13">Start_Mouse</A></span> (<span class="symbol"><A NAME="ref_119_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_107_26">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_62_4">All_Events</A>) - <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">mousemask()</A></EM></FONT> -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">mousemask()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_119_13">Start_Mouse</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_124_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_123_14">End_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_124_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_123_25">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A>); -- <FONT COLOR=green><EM>-- Terminates the mouse, restores the specified event mask</EM></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_124_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_123_14">End_Mouse</A></span> (<span class="symbol"><A NAME="ref_124_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_123_25">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A>); -+ <span class="comment"><EM>-- Terminates the mouse, restores the specified event mask</EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_124_14">End_Mouse</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_129_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_62_13">Get_Mouse</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">getmouse()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_129_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_62_13">Get_Mouse</A></span> <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">getmouse()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_129_13">Get_Mouse</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_133_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_14">Get_Event</A></FONT> (<FONT COLOR=red><A NAME="ref_133_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_25">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>; -- <FONT COLOR=red><A NAME="ref_134_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_172_25">Y</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_135_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_173_25">X</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_136_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_174_25">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -- <FONT COLOR=red><A NAME="ref_137_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_175_25">State</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>); -- <FONT COLOR=green><EM>-- !!! Warning: X and Y are screen coordinates. Due to ripped of lines they</EM></FONT> -- <FONT COLOR=green><EM>-- may not be identical to window coordinates.</EM></FONT> -- <FONT COLOR=green><EM>-- Not Implemented: Get_Event only reports one event, the C library</EM></FONT> -- <FONT COLOR=green><EM>-- version supports multiple events, e.g. {click-1, click-3}</EM></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_133_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_14">Get_Event</A></span> (<span class="symbol"><A NAME="ref_133_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_25">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>; -+ <span class="symbol"><A NAME="ref_134_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_172_25">Y</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_135_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_173_25">X</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_136_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_174_25">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>; -+ <span class="symbol"><A NAME="ref_137_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_175_25">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>); -+ <span class="comment"><EM>-- !!! Warning: X and Y are screen coordinates. Due to ripped of lines they</EM></span> -+ <span class="comment"><EM>-- may not be identical to window coordinates.</EM></span> -+ <span class="comment"><EM>-- Not Implemented: Get_Event only reports one event, the C library</EM></span> -+ <span class="comment"><EM>-- version supports multiple events, e.g. {click-1, click-3}</EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_14">Get_Event</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_145_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_184_14">Unget_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_145_27" HREF="terminal_interface-curses-mouse__adb.htm#ref_184_27">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">ungetmouse()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_145_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_184_14">Unget_Mouse</A></span> (<span class="symbol"><A NAME="ref_145_27" HREF="terminal_interface-curses-mouse__adb.htm#ref_184_27">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">ungetmouse()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_145_14">Unget_Mouse</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_150_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_13">Enclosed_In_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_150_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_33">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -- <FONT COLOR=red><A NAME="ref_151_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_195_33">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">wenclose()</A></EM></FONT> -- <FONT COLOR=green><EM>-- But : use event instead of screen coordinates.</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_150_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_13">Enclosed_In_Window</A></span> (<span class="symbol"><A NAME="ref_150_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_33">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; -+ <span class="symbol"><A NAME="ref_151_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_195_33">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">wenclose()</A></EM></span> -+ <span class="comment"><EM>-- But : use event instead of screen coordinates.</EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_150_13">Enclosed_In_Window</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_157_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_209_13">Mouse_Interval</A></FONT> (<FONT COLOR=red><A NAME="ref_157_29" HREF="terminal_interface-curses-mouse__adb.htm#ref_209_29">Msec</A></FONT> : Natural := 200) <b>return</b> Natural; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">mouseinterval()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_157_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_209_13">Mouse_Interval</A></span> (<span class="symbol"><A NAME="ref_157_29" HREF="terminal_interface-curses-mouse__adb.htm#ref_209_29">Msec</A></span> : Natural := 200) <b>return</b> Natural; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">mouseinterval()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_157_13">Mouse_Interval</A>); - - <b>private</b> -- <b>type</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> <b>is</b> <b>new</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.unsigned_long; -+ <b>type</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> <b>is</b> <b>new</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.unsigned_long; - - <b>type</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A> <b>is</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_166_10">Id</A></FONT> : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'First) .. -- Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'Last); -- <FONT COLOR=red><A NAME="ref_168_10">X</A></FONT>, <FONT COLOR=red><A NAME="ref_168_13">Y</A></FONT>, <FONT COLOR=red><A NAME="ref_168_16">Z</A></FONT> : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int'First) .. -- Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int'Last); -- <FONT COLOR=red><A NAME="ref_170_10">Bstate</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; -+ <span class="symbol"><A NAME="ref_166_10">Id</A></span> : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'First) .. -+ Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Last); -+ <span class="symbol"><A NAME="ref_168_10">X</A></span>, <span class="symbol"><A NAME="ref_168_13">Y</A></span>, <span class="symbol"><A NAME="ref_168_16">Z</A></span> : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int'First) .. -+ Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int'Last); -+ <span class="symbol"><A NAME="ref_170_10">Bstate</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>; - <b>end</b> <b>record</b>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>); - -@@ -182,47 +194,47 @@ - <A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_10">X</A> <b>at</b> 0 <b>range</b> 32 .. 63; - <A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_13">Y</A> <b>at</b> 0 <b>range</b> 64 .. 95; - <A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_16">Z</A> <b>at</b> 0 <b>range</b> 96 .. 127; -- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_170_10">Bstate</A> <b>at</b> 0 <b>range</b> 128 .. 159; -+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_170_10">Bstate</A> <b>at</b> 0 <b>range</b> 128 .. 191; - <b>end</b> <b>record</b>; -- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT> -- <FONT COLOR=green><EM>-- different on your system.</EM></FONT> -+ <span class="comment"><EM>-- Please note: this rep. clause is generated and may be</EM></span> -+ <span class="comment"><EM>-- different on your system.</EM></span> - -- <FONT COLOR=red><A NAME="ref_185_4">Generation_Bit_Order</A></FONT> : <b>constant</b> System.Bit_Order := System.Low_Order_First; -- <FONT COLOR=green><EM>-- This constant may be different on your system.</EM></FONT> -+ <span class="symbol"><A NAME="ref_185_4">Generation_Bit_Order</A></span> : <b>constant</b> System.Bit_Order := System.Low_Order_First; -+ <span class="comment"><EM>-- This constant may be different on your system.</EM></span> - -- <FONT COLOR=red><A NAME="ref_188_4">BUTTON1_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000001#; -- <FONT COLOR=red><A NAME="ref_189_4">BUTTON1_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000002#; -- <FONT COLOR=red><A NAME="ref_190_4">BUTTON1_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000004#; -- <FONT COLOR=red><A NAME="ref_191_4">BUTTON1_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000010#; -- <FONT COLOR=red><A NAME="ref_192_4">BUTTON1_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000020#; -- <FONT COLOR=red><A NAME="ref_193_4">BUTTON1_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000040#; -- <FONT COLOR=red><A NAME="ref_194_4">BUTTON2_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000100#; -- <FONT COLOR=red><A NAME="ref_195_4">BUTTON2_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000200#; -- <FONT COLOR=red><A NAME="ref_196_4">BUTTON2_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000400#; -- <FONT COLOR=red><A NAME="ref_197_4">BUTTON2_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000001000#; -- <FONT COLOR=red><A NAME="ref_198_4">BUTTON2_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000002000#; -- <FONT COLOR=red><A NAME="ref_199_4">BUTTON2_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000004000#; -- <FONT COLOR=red><A NAME="ref_200_4">BUTTON3_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000010000#; -- <FONT COLOR=red><A NAME="ref_201_4">BUTTON3_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000020000#; -- <FONT COLOR=red><A NAME="ref_202_4">BUTTON3_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000040000#; -- <FONT COLOR=red><A NAME="ref_203_4">BUTTON3_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000100000#; -- <FONT COLOR=red><A NAME="ref_204_4">BUTTON3_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000200000#; -- <FONT COLOR=red><A NAME="ref_205_4">BUTTON3_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000400000#; -- <FONT COLOR=red><A NAME="ref_206_4">BUTTON4_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00001000000#; -- <FONT COLOR=red><A NAME="ref_207_4">BUTTON4_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00002000000#; -- <FONT COLOR=red><A NAME="ref_208_4">BUTTON4_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00004000000#; -- <FONT COLOR=red><A NAME="ref_209_4">BUTTON4_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00010000000#; -- <FONT COLOR=red><A NAME="ref_210_4">BUTTON4_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00020000000#; -- <FONT COLOR=red><A NAME="ref_211_4">BUTTON4_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00040000000#; -- <FONT COLOR=red><A NAME="ref_212_4">BUTTON_CTRL</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00100000000#; -- <FONT COLOR=red><A NAME="ref_213_4">BUTTON_SHIFT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00200000000#; -- <FONT COLOR=red><A NAME="ref_214_4">BUTTON_ALT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00400000000#; -- <FONT COLOR=red><A NAME="ref_215_4">REPORT_MOUSE_POSITION</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#01000000000#; -- <FONT COLOR=red><A NAME="ref_216_4">ALL_MOUSE_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00777777777#; -- <FONT COLOR=red><A NAME="ref_217_4">BUTTON1_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000077#; -- <FONT COLOR=red><A NAME="ref_218_4">BUTTON2_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000007700#; -- <FONT COLOR=red><A NAME="ref_219_4">BUTTON3_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000770000#; -- <FONT COLOR=red><A NAME="ref_220_4">BUTTON4_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00077000000#; -+ <span class="symbol"><A NAME="ref_188_4">BUTTON1_RELEASED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000001#; -+ <span class="symbol"><A NAME="ref_189_4">BUTTON1_PRESSED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000002#; -+ <span class="symbol"><A NAME="ref_190_4">BUTTON1_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000004#; -+ <span class="symbol"><A NAME="ref_191_4">BUTTON1_DOUBLE_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000010#; -+ <span class="symbol"><A NAME="ref_192_4">BUTTON1_TRIPLE_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000020#; -+ <span class="symbol"><A NAME="ref_193_4">BUTTON1_RESERVED_EVENT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000040#; -+ <span class="symbol"><A NAME="ref_194_4">BUTTON2_RELEASED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000100#; -+ <span class="symbol"><A NAME="ref_195_4">BUTTON2_PRESSED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000200#; -+ <span class="symbol"><A NAME="ref_196_4">BUTTON2_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000400#; -+ <span class="symbol"><A NAME="ref_197_4">BUTTON2_DOUBLE_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000001000#; -+ <span class="symbol"><A NAME="ref_198_4">BUTTON2_TRIPLE_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000002000#; -+ <span class="symbol"><A NAME="ref_199_4">BUTTON2_RESERVED_EVENT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000004000#; -+ <span class="symbol"><A NAME="ref_200_4">BUTTON3_RELEASED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000010000#; -+ <span class="symbol"><A NAME="ref_201_4">BUTTON3_PRESSED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000020000#; -+ <span class="symbol"><A NAME="ref_202_4">BUTTON3_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000040000#; -+ <span class="symbol"><A NAME="ref_203_4">BUTTON3_DOUBLE_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000100000#; -+ <span class="symbol"><A NAME="ref_204_4">BUTTON3_TRIPLE_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000200000#; -+ <span class="symbol"><A NAME="ref_205_4">BUTTON3_RESERVED_EVENT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000400000#; -+ <span class="symbol"><A NAME="ref_206_4">BUTTON4_RELEASED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00001000000#; -+ <span class="symbol"><A NAME="ref_207_4">BUTTON4_PRESSED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00002000000#; -+ <span class="symbol"><A NAME="ref_208_4">BUTTON4_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00004000000#; -+ <span class="symbol"><A NAME="ref_209_4">BUTTON4_DOUBLE_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00010000000#; -+ <span class="symbol"><A NAME="ref_210_4">BUTTON4_TRIPLE_CLICKED</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00020000000#; -+ <span class="symbol"><A NAME="ref_211_4">BUTTON4_RESERVED_EVENT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00040000000#; -+ <span class="symbol"><A NAME="ref_212_4">BUTTON_CTRL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00100000000#; -+ <span class="symbol"><A NAME="ref_213_4">BUTTON_SHIFT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00200000000#; -+ <span class="symbol"><A NAME="ref_214_4">BUTTON_ALT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00400000000#; -+ <span class="symbol"><A NAME="ref_215_4">REPORT_MOUSE_POSITION</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#01000000000#; -+ <span class="symbol"><A NAME="ref_216_4">ALL_MOUSE_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00777777777#; -+ <span class="symbol"><A NAME="ref_217_4">BUTTON1_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000077#; -+ <span class="symbol"><A NAME="ref_218_4">BUTTON2_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000007700#; -+ <span class="symbol"><A NAME="ref_219_4">BUTTON3_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000770000#; -+ <span class="symbol"><A NAME="ref_220_4">BUTTON4_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00077000000#; - - <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 0; - <A HREF="terminal_interface-curses-mouse__ads.htm#ref_62_4">All_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_216_4">ALL_MOUSE_EVENTS</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-panels__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-panels__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-panels__adb.htm 2011-02-26 00:43:50.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-panels__adb.htm 2014-09-01 16:33:22.296792023 +0200 -@@ -1,62 +1,74 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-panels.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-panels.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-panels.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-panels.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Panels --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2004,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.14 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Panels --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2004,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.14 @</EM></span> -+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_45_40" HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_45_40" HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A></span> <b>is</b> - -- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_49_13" HREF="terminal_interface-curses-panels__ads.htm#ref_67_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_49_21" HREF="terminal_interface-curses-panels__ads.htm#ref_67_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_49_13" HREF="terminal_interface-curses-panels__ads.htm#ref_67_13">Create</A></span> (<span class="symbol"><A NAME="ref_49_21" HREF="terminal_interface-curses-panels__ads.htm#ref_67_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_51_16">Newpanel</A></FONT> (<FONT COLOR=red><A NAME="ref_51_26" HREF="terminal_interface-curses-panels__adb.htm#ref_51_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_51_16">Newpanel</A></span> (<span class="symbol"><A NAME="ref_51_26" HREF="terminal_interface-curses-panels__adb.htm#ref_51_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; - <b>pragma</b> Import (C, Newpanel, "new_panel"); - -- <FONT COLOR=red><A NAME="ref_54_7">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_54_7">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; - <b>begin</b> - <A HREF="terminal_interface-curses-panels__adb.htm#ref_54_7">Pan</A> := <A HREF="terminal_interface-curses-panels__adb.htm#ref_51_16">Newpanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_67_21">Win</A>); - <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_54_7">Pan</A> = <A HREF="terminal_interface-curses-panels__ads.htm#ref_54_4">Null_Panel</A> <b>then</b> -@@ -65,9 +77,9 @@ - <b>return</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_54_7">Pan</A>; - <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_67_13">Create</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_63_14" HREF="terminal_interface-curses-panels__ads.htm#ref_77_14">Bottom</A></FONT> (<FONT COLOR=red><A NAME="ref_63_22" HREF="terminal_interface-curses-panels__ads.htm#ref_77_22">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_63_14" HREF="terminal_interface-curses-panels__ads.htm#ref_77_14">Bottom</A></span> (<span class="symbol"><A NAME="ref_63_22" HREF="terminal_interface-curses-panels__ads.htm#ref_77_22">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_65_16">Bottompanel</A></FONT> (<FONT COLOR=red><A NAME="ref_65_29" HREF="terminal_interface-curses-panels__adb.htm#ref_65_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_65_16">Bottompanel</A></span> (<span class="symbol"><A NAME="ref_65_29" HREF="terminal_interface-curses-panels__adb.htm#ref_65_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Bottompanel, "bottom_panel"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_65_16">Bottompanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_77_22">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -@@ -75,9 +87,9 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_77_14">Bottom</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_73_14" HREF="terminal_interface-curses-panels__ads.htm#ref_82_14">Top</A></FONT> (<FONT COLOR=red><A NAME="ref_73_19" HREF="terminal_interface-curses-panels__ads.htm#ref_82_19">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_73_14" HREF="terminal_interface-curses-panels__ads.htm#ref_82_14">Top</A></span> (<span class="symbol"><A NAME="ref_73_19" HREF="terminal_interface-curses-panels__ads.htm#ref_82_19">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_75_16">Toppanel</A></FONT> (<FONT COLOR=red><A NAME="ref_75_26" HREF="terminal_interface-curses-panels__adb.htm#ref_75_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_75_16">Toppanel</A></span> (<span class="symbol"><A NAME="ref_75_26" HREF="terminal_interface-curses-panels__adb.htm#ref_75_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Toppanel, "top_panel"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_75_16">Toppanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_82_19">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -@@ -85,9 +97,9 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_82_14">Top</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_83_14" HREF="terminal_interface-curses-panels__ads.htm#ref_87_14">Show</A></FONT> (<FONT COLOR=red><A NAME="ref_83_20" HREF="terminal_interface-curses-panels__ads.htm#ref_87_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_83_14" HREF="terminal_interface-curses-panels__ads.htm#ref_87_14">Show</A></span> (<span class="symbol"><A NAME="ref_83_20" HREF="terminal_interface-curses-panels__ads.htm#ref_87_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_85_16">Showpanel</A></FONT> (<FONT COLOR=red><A NAME="ref_85_27" HREF="terminal_interface-curses-panels__adb.htm#ref_85_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_85_16">Showpanel</A></span> (<span class="symbol"><A NAME="ref_85_27" HREF="terminal_interface-curses-panels__adb.htm#ref_85_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Showpanel, "show_panel"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_85_16">Showpanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_87_20">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -@@ -95,9 +107,9 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_87_14">Show</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_93_14" HREF="terminal_interface-curses-panels__ads.htm#ref_97_14">Hide</A></FONT> (<FONT COLOR=red><A NAME="ref_93_20" HREF="terminal_interface-curses-panels__ads.htm#ref_97_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_93_14" HREF="terminal_interface-curses-panels__ads.htm#ref_97_14">Hide</A></span> (<span class="symbol"><A NAME="ref_93_20" HREF="terminal_interface-curses-panels__ads.htm#ref_97_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_95_16">Hidepanel</A></FONT> (<FONT COLOR=red><A NAME="ref_95_27" HREF="terminal_interface-curses-panels__adb.htm#ref_95_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_95_16">Hidepanel</A></span> (<span class="symbol"><A NAME="ref_95_27" HREF="terminal_interface-curses-panels__adb.htm#ref_95_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Hidepanel, "hide_panel"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_95_16">Hidepanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_97_20">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -@@ -105,12 +117,12 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_97_14">Hide</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_103_13" HREF="terminal_interface-curses-panels__ads.htm#ref_102_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_103_25" HREF="terminal_interface-curses-panels__ads.htm#ref_102_25">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_103_13" HREF="terminal_interface-curses-panels__ads.htm#ref_102_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_103_25" HREF="terminal_interface-curses-panels__ads.htm#ref_102_25">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_105_16">Panel_Win</A></FONT> (<FONT COLOR=red><A NAME="ref_105_27" HREF="terminal_interface-curses-panels__adb.htm#ref_105_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_105_16">Panel_Win</A></span> (<span class="symbol"><A NAME="ref_105_27" HREF="terminal_interface-curses-panels__adb.htm#ref_105_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, Panel_Win, "panel_window"); - -- <FONT COLOR=red><A NAME="ref_108_7">Win</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-panels__adb.htm#ref_105_16">Panel_Win</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_102_25">Pan</A>); -+ <span class="symbol"><A NAME="ref_108_7">Win</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-panels__adb.htm#ref_105_16">Panel_Win</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_102_25">Pan</A>); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_108_7">Win</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> - <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>; -@@ -118,11 +130,11 @@ - <b>return</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_108_7">Win</A>; - <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_102_13">Get_Window</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_116_14" HREF="terminal_interface-curses-panels__ads.htm#ref_111_14">Replace</A></FONT> (<FONT COLOR=red><A NAME="ref_116_23" HREF="terminal_interface-curses-panels__ads.htm#ref_111_23">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_117_23" HREF="terminal_interface-curses-panels__ads.htm#ref_112_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_116_14" HREF="terminal_interface-curses-panels__ads.htm#ref_111_14">Replace</A></span> (<span class="symbol"><A NAME="ref_116_23" HREF="terminal_interface-curses-panels__ads.htm#ref_111_23">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_117_23" HREF="terminal_interface-curses-panels__ads.htm#ref_112_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_119_16">Replace_Pan</A></FONT> (<FONT COLOR=red><A NAME="ref_119_29" HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_120_29" HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_119_16">Replace_Pan</A></span> (<span class="symbol"><A NAME="ref_119_29" HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_120_29" HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Replace_Pan, "replace_panel"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Replace_Pan</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_111_23">Pan</A>, <A HREF="terminal_interface-curses-panels__ads.htm#ref_112_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -@@ -130,13 +142,13 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_111_14">Replace</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_128_14" HREF="terminal_interface-curses-panels__ads.htm#ref_117_14">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_128_20" HREF="terminal_interface-curses-panels__ads.htm#ref_117_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_129_20" HREF="terminal_interface-curses-panels__ads.htm#ref_118_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_130_20" HREF="terminal_interface-curses-panels__ads.htm#ref_119_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -- <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_132_16">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_132_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_133_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_134_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_128_14" HREF="terminal_interface-curses-panels__ads.htm#ref_117_14">Move</A></span> (<span class="symbol"><A NAME="ref_128_20" HREF="terminal_interface-curses-panels__ads.htm#ref_117_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_129_20" HREF="terminal_interface-curses-panels__ads.htm#ref_118_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_130_20" HREF="terminal_interface-curses-panels__ads.htm#ref_119_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) -+ <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_132_16">Move</A></span> (<span class="symbol"><A NAME="ref_132_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_133_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_134_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Move, "move_panel"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Move</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_117_20">Pan</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_118_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_119_20">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -@@ -144,9 +156,9 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_117_14">Move</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_142_13" HREF="terminal_interface-curses-panels__ads.htm#ref_124_13">Is_Hidden</A></FONT> (<FONT COLOR=red><A NAME="ref_142_24" HREF="terminal_interface-curses-panels__ads.htm#ref_124_24">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_142_13" HREF="terminal_interface-curses-panels__ads.htm#ref_124_13">Is_Hidden</A></span> (<span class="symbol"><A NAME="ref_142_24" HREF="terminal_interface-curses-panels__ads.htm#ref_124_24">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_144_16">Panel_Hidden</A></FONT> (<FONT COLOR=red><A NAME="ref_144_30" HREF="terminal_interface-curses-panels__adb.htm#ref_144_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_144_16">Panel_Hidden</A></span> (<span class="symbol"><A NAME="ref_144_30" HREF="terminal_interface-curses-panels__adb.htm#ref_144_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Panel_Hidden, "panel_hidden"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_144_16">Panel_Hidden</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_124_24">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b> -@@ -156,9 +168,9 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_124_13">Is_Hidden</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_154_14" HREF="terminal_interface-curses-panels__ads.htm#ref_139_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_154_22" HREF="terminal_interface-curses-panels__ads.htm#ref_139_22">Pan</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_154_14" HREF="terminal_interface-curses-panels__ads.htm#ref_139_14">Delete</A></span> (<span class="symbol"><A NAME="ref_154_22" HREF="terminal_interface-curses-panels__ads.htm#ref_139_22">Pan</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_156_16">Del_Panel</A></FONT> (<FONT COLOR=red><A NAME="ref_156_27" HREF="terminal_interface-curses-panels__adb.htm#ref_156_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_156_16">Del_Panel</A></span> (<span class="symbol"><A NAME="ref_156_27" HREF="terminal_interface-curses-panels__adb.htm#ref_156_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Del_Panel, "del_panel"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_156_16">Del_Panel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_139_22">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-panels__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-panels__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-panels__ads.htm 2010-05-29 23:56:06.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-panels__ads.htm 2014-09-01 16:33:22.296792023 +0200 -@@ -1,148 +1,160 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-panels.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-panels.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-panels.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-panels.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Panels --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.20 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Panels --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.20 @</EM></span> -+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> System; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_44_35" HREF="terminal_interface-curses-panels__adb.htm#ref_45_40">Panels</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_44_35" HREF="terminal_interface-curses-panels__adb.htm#ref_45_40">Panels</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>); - <b>pragma</b> Linker_Options ("-lpanel"); - <b>pragma</b> Linker_Options ("-lncurses"); - -- <b>type</b> <FONT COLOR=red><A NAME="ref_49_9">Panel</A></FONT> <b>is</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_49_9">Panel</A></span> <b>is</b> <b>private</b>; - -- <FONT COLOR=green><EM>---------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Interface constants --</EM></FONT> -- <FONT COLOR=green><EM>---------------------------</EM></FONT> -- <FONT COLOR=red><A NAME="ref_54_4">Null_Panel</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- -- <FONT COLOR=green><EM>-------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Exceptions --</EM></FONT> -- <FONT COLOR=green><EM>-------------------</EM></FONT> -- -- <FONT COLOR=red><A NAME="ref_60_4">Panel_Exception</A></FONT> : <b>exception</b>; -- -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/panel.3x.html">panel.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_67_13" HREF="terminal_interface-curses-panels__adb.htm#ref_49_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_67_21" HREF="terminal_interface-curses-panels__adb.htm#ref_49_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">new_panel()</A></EM></FONT> -+ <span class="comment"><EM>---------------------------</EM></span> -+ <span class="comment"><EM>-- Interface constants --</EM></span> -+ <span class="comment"><EM>---------------------------</EM></span> -+ <span class="symbol"><A NAME="ref_54_4">Null_Panel</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ -+ <span class="comment"><EM>-------------------</EM></span> -+ <span class="comment"><EM>-- Exceptions --</EM></span> -+ <span class="comment"><EM>-------------------</EM></span> -+ -+ <span class="symbol"><A NAME="ref_60_4">Panel_Exception</A></span> : <b>exception</b>; -+ -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/panel.3x.html">panel.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_67_13" HREF="terminal_interface-curses-panels__adb.htm#ref_49_13">Create</A></span> (<span class="symbol"><A NAME="ref_67_21" HREF="terminal_interface-curses-panels__adb.htm#ref_49_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">new_panel()</A></EM></span> - <b>pragma</b> Inline (Create); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>function</b> New_Panel (<FONT COLOR=red><A NAME="ref_72_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A> <b>renames</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_67_13">Create</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">new_panel()</A></EM></FONT> -- <FONT COLOR=green><EM>-- pragma Inline (New_Panel);</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_77_14" HREF="terminal_interface-curses-panels__adb.htm#ref_63_14">Bottom</A></FONT> (<FONT COLOR=red><A NAME="ref_77_22" HREF="terminal_interface-curses-panels__adb.htm#ref_63_22">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">bottom_panel()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>function</b> New_Panel (<span class="symbol"><A NAME="ref_72_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A> <b>renames</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_67_13">Create</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">new_panel()</A></EM></span> -+ <span class="comment"><EM>-- pragma Inline (New_Panel);</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_77_14" HREF="terminal_interface-curses-panels__adb.htm#ref_63_14">Bottom</A></span> (<span class="symbol"><A NAME="ref_77_22" HREF="terminal_interface-curses-panels__adb.htm#ref_63_22">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">bottom_panel()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_77_14">Bottom</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_82_14" HREF="terminal_interface-curses-panels__adb.htm#ref_73_14">Top</A></FONT> (<FONT COLOR=red><A NAME="ref_82_19" HREF="terminal_interface-curses-panels__adb.htm#ref_73_19">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">top_panel()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_82_14" HREF="terminal_interface-curses-panels__adb.htm#ref_73_14">Top</A></span> (<span class="symbol"><A NAME="ref_82_19" HREF="terminal_interface-curses-panels__adb.htm#ref_73_19">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">top_panel()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_82_14">Top</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_87_14" HREF="terminal_interface-curses-panels__adb.htm#ref_83_14">Show</A></FONT> (<FONT COLOR=red><A NAME="ref_87_20" HREF="terminal_interface-curses-panels__adb.htm#ref_83_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">show_panel()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_87_14" HREF="terminal_interface-curses-panels__adb.htm#ref_83_14">Show</A></span> (<span class="symbol"><A NAME="ref_87_20" HREF="terminal_interface-curses-panels__adb.htm#ref_83_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">show_panel()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_87_14">Show</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_6"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_92_14">Update_Panels</A></FONT>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">update_panels()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_6"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_92_14">Update_Panels</A></span>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">update_panels()</A></EM></span> - <b>pragma</b> Import (C, Update_Panels, "update_panels"); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_7"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_97_14" HREF="terminal_interface-curses-panels__adb.htm#ref_93_14">Hide</A></FONT> (<FONT COLOR=red><A NAME="ref_97_20" HREF="terminal_interface-curses-panels__adb.htm#ref_93_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">hide_panel()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_7"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_97_14" HREF="terminal_interface-curses-panels__adb.htm#ref_93_14">Hide</A></span> (<span class="symbol"><A NAME="ref_97_20" HREF="terminal_interface-curses-panels__adb.htm#ref_93_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">hide_panel()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_97_14">Hide</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_8"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_102_13" HREF="terminal_interface-curses-panels__adb.htm#ref_103_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_102_25" HREF="terminal_interface-curses-panels__adb.htm#ref_103_25">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_window()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_8"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_102_13" HREF="terminal_interface-curses-panels__adb.htm#ref_103_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_102_25" HREF="terminal_interface-curses-panels__adb.htm#ref_103_25">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_window()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_102_13">Get_Window</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_9"#2|</EM></FONT> -- <b>function</b> Panel_Window (<FONT COLOR=red><A NAME="ref_107_27">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> <b>renames</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_102_13">Get_Window</A>; -- <FONT COLOR=green><EM>-- pragma Inline (Panel_Window);</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_10"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_111_14" HREF="terminal_interface-curses-panels__adb.htm#ref_116_14">Replace</A></FONT> (<FONT COLOR=red><A NAME="ref_111_23" HREF="terminal_interface-curses-panels__adb.htm#ref_116_23">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_112_23" HREF="terminal_interface-curses-panels__adb.htm#ref_117_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">replace_panel()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_9"#2|</EM></span> -+ <b>function</b> Panel_Window (<span class="symbol"><A NAME="ref_107_27">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> <b>renames</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_102_13">Get_Window</A>; -+ <span class="comment"><EM>-- pragma Inline (Panel_Window);</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_10"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_111_14" HREF="terminal_interface-curses-panels__adb.htm#ref_116_14">Replace</A></span> (<span class="symbol"><A NAME="ref_111_23" HREF="terminal_interface-curses-panels__adb.htm#ref_116_23">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_112_23" HREF="terminal_interface-curses-panels__adb.htm#ref_117_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">replace_panel()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_111_14">Replace</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_11"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_117_14" HREF="terminal_interface-curses-panels__adb.htm#ref_128_14">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_117_20" HREF="terminal_interface-curses-panels__adb.htm#ref_128_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_118_20" HREF="terminal_interface-curses-panels__adb.htm#ref_129_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_119_20" HREF="terminal_interface-curses-panels__adb.htm#ref_130_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">move_panel()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_11"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_117_14" HREF="terminal_interface-curses-panels__adb.htm#ref_128_14">Move</A></span> (<span class="symbol"><A NAME="ref_117_20" HREF="terminal_interface-curses-panels__adb.htm#ref_128_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_118_20" HREF="terminal_interface-curses-panels__adb.htm#ref_129_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_119_20" HREF="terminal_interface-curses-panels__adb.htm#ref_130_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">move_panel()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_117_14">Move</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_12"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_124_13" HREF="terminal_interface-curses-panels__adb.htm#ref_142_13">Is_Hidden</A></FONT> (<FONT COLOR=red><A NAME="ref_124_24" HREF="terminal_interface-curses-panels__adb.htm#ref_142_24">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_hidden()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_12"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_124_13" HREF="terminal_interface-curses-panels__adb.htm#ref_142_13">Is_Hidden</A></span> (<span class="symbol"><A NAME="ref_124_24" HREF="terminal_interface-curses-panels__adb.htm#ref_142_24">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_hidden()</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_124_13">Is_Hidden</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_13"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_129_13">Above</A></FONT> (<FONT COLOR=red><A NAME="ref_129_20" HREF="terminal_interface-curses-panels__ads.htm#ref_129_13">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_above()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_13"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_129_13">Above</A></span> (<span class="symbol"><A NAME="ref_129_20" HREF="terminal_interface-curses-panels__ads.htm#ref_129_13">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_above()</A></EM></span> - <b>pragma</b> Import (C, Above, "panel_above"); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_14"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_134_13">Below</A></FONT> (<FONT COLOR=red><A NAME="ref_134_20" HREF="terminal_interface-curses-panels__ads.htm#ref_134_13">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_below()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_14"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_134_13">Below</A></span> (<span class="symbol"><A NAME="ref_134_20" HREF="terminal_interface-curses-panels__ads.htm#ref_134_13">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_below()</A></EM></span> - <b>pragma</b> Import (C, Below, "panel_below"); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_15"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_139_14" HREF="terminal_interface-curses-panels__adb.htm#ref_154_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_139_22" HREF="terminal_interface-curses-panels__adb.htm#ref_154_22">Pan</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">del_panel()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_15"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_139_14" HREF="terminal_interface-curses-panels__adb.htm#ref_154_14">Delete</A></span> (<span class="symbol"><A NAME="ref_139_22" HREF="terminal_interface-curses-panels__adb.htm#ref_154_22">Pan</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">del_panel()</A></EM></span> - <b>pragma</b> Inline (Delete); - - <b>private</b> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm 2011-02-26 00:43:49.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm 2014-09-01 16:33:22.295792021 +0200 -@@ -1,63 +1,75 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-panels-user_data.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-panels-user_data.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-panels-user_data.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-panels-user_data.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Panels.User_Data --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Panels.User_Data --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>; - <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<FONT COLOR=red><A NAME="ref_47_47" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<span class="symbol"><A NAME="ref_47_47" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A></span> <b>is</b> - -- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_51_14" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_51_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_52_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_54_29">Data</A></FONT> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_51_14" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_51_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_29">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_52_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_54_29">Data</A></span> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_54_16">Set_Panel_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_54_35" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_55_35" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Addr</A></FONT> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_54_16">Set_Panel_Userptr</A></span> (<span class="symbol"><A NAME="ref_54_35" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_55_35" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Addr</A></span> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, Set_Panel_Userptr, "set_panel_userptr"); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Set_Panel_Userptr</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_29">Pan</A>, <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_54_29">Data</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -@@ -65,16 +77,16 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_14">Set_User_Data</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_63_13" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_63_28" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_28">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_63_13" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_63_28" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_28">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A> - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_65_16">Panel_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_65_31" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_65_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_65_16">Panel_Userptr</A></span> (<span class="symbol"><A NAME="ref_65_31" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_65_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>; - <b>pragma</b> Import (C, Panel_Userptr, "panel_userptr"); - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_65_16">Panel_Userptr</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_28">Pan</A>); - <b>end</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_13">Get_User_Data</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_71_14" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_71_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_72_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_60_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_71_14" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_71_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_29">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_72_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_60_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_60_29">Data</A> := <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_29">Pan</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-panels-user_data__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-panels-user_data__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-panels-user_data__ads.htm 2010-01-09 21:31:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-panels-user_data__ads.htm 2014-09-01 16:33:22.295792021 +0200 -@@ -1,74 +1,86 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-panels-user_data.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-panels-user_data.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-panels-user_data.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-panels-user_data.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Panels.User_Data --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.15 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Panels.User_Data --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.15 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_43_9" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>; -- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_43_9">User</A>; --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<FONT COLOR=red><A NAME="ref_45_42" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_47_47">User_Data</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_43_9" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User</A></span> <b>is</b> <b>limited</b> <b>private</b>; -+ <b>type</b> <span class="symbol"><A NAME="ref_44_9" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_43_9">User</A>; -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<span class="symbol"><A NAME="ref_45_42" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_47_47">User_Data</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A>); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/panel.3x.html">panel.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_53_14" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_51_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_53_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_51_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_54_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_52_29">Data</A></FONT> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">set_panel_userptr</A></EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/panel.3x.html">panel.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_53_14" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_51_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_53_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_51_29">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_54_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_52_29">Data</A></span> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">set_panel_userptr</A></EM></span> - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_14">Set_User_Data</A>); - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_14" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_71_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_59_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_71_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -- <FONT COLOR=red><A NAME="ref_60_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_72_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_userptr</A></EM></FONT> -- -- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_63_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_64_28" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_63_28">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>; -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_userptr</A></EM></FONT> -- <FONT COLOR=green><EM>-- Same as function</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_71_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_59_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_71_29">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>; -+ <span class="symbol"><A NAME="ref_60_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_72_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_userptr</A></EM></span> -+ -+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_63_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_64_28" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_63_28">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>; -+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_userptr</A></EM></span> -+ <span class="comment"><EM>-- Same as function</EM></span> - <b>pragma</b> Inline (Get_User_Data); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-putwin__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-putwin__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-putwin__adb.htm 2011-03-20 00:18:41.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-putwin__adb.htm 2014-09-01 16:33:22.296792023 +0200 -@@ -1,79 +1,91 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-putwin.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-putwin.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-putwin.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-putwin.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.PutWin --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.3 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.PutWin --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.3 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> - - <b>with</b> Ada.Streams.Stream_IO.C_Streams; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C_Streams; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C_Streams; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_45_40" HREF="terminal_interface-curses-putwin__ads.htm#ref_43_35">PutWin</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_45_40" HREF="terminal_interface-curses-putwin__ads.htm#ref_43_35">PutWin</A></span> <b>is</b> - -- <b>package</b> <FONT COLOR=red><A NAME="ref_47_12">ICS</A></FONT> <b>renames</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C_Streams; -- <b>package</b> <FONT COLOR=red><A NAME="ref_48_12">ACS</A></FONT> <b>renames</b> Ada.Streams.Stream_IO.C_Streams; -+ <b>package</b> <span class="symbol"><A NAME="ref_47_12">ICS</A></span> <b>renames</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C_Streams; -+ <b>package</b> <span class="symbol"><A NAME="ref_48_12">ACS</A></span> <b>renames</b> Ada.Streams.Stream_IO.C_Streams; - <b>use</b> <b>type</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_51_14" HREF="terminal_interface-curses-putwin__ads.htm#ref_45_14">Put_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_51_26" HREF="terminal_interface-curses-putwin__ads.htm#ref_45_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_52_26" HREF="terminal_interface-curses-putwin__ads.htm#ref_46_26">File</A></FONT> : Ada.Streams.Stream_IO.File_Type) <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_53_16">putwin</A></FONT> (<FONT COLOR=red><A NAME="ref_53_24" HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_53_38" HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">f</A></FONT> : <A HREF="terminal_interface-curses-putwin__adb.htm#ref_47_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_51_14" HREF="terminal_interface-curses-putwin__ads.htm#ref_45_14">Put_Window</A></span> (<span class="symbol"><A NAME="ref_51_26" HREF="terminal_interface-curses-putwin__ads.htm#ref_45_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_52_26" HREF="terminal_interface-curses-putwin__ads.htm#ref_46_26">File</A></span> : Ada.Streams.Stream_IO.File_Type) <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_53_16">putwin</A></span> (<span class="symbol"><A NAME="ref_53_24" HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_53_38" HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">f</A></span> : <A HREF="terminal_interface-curses-putwin__adb.htm#ref_47_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, putwin, "putwin"); - -- <FONT COLOR=red><A NAME="ref_56_7">R</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">putwin</A> (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_45_26">Win</A>, <A HREF="terminal_interface-curses-putwin__adb.htm#ref_48_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_46_26">File</A>)); -+ <span class="symbol"><A NAME="ref_56_7">R</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">putwin</A> (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_45_26">Win</A>, <A HREF="terminal_interface-curses-putwin__adb.htm#ref_48_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_46_26">File</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-putwin__adb.htm#ref_56_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_4">Curses_Ok</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-putwin__ads.htm#ref_45_14">Put_Window</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_63_13" HREF="terminal_interface-curses-putwin__ads.htm#ref_48_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_63_25" HREF="terminal_interface-curses-putwin__ads.htm#ref_48_25">File</A></FONT> : Ada.Streams.Stream_IO.File_Type) -+ <b>function</b> <span class="symbol"><A NAME="ref_63_13" HREF="terminal_interface-curses-putwin__ads.htm#ref_48_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_63_25" HREF="terminal_interface-curses-putwin__ads.htm#ref_48_25">File</A></span> : Ada.Streams.Stream_IO.File_Type) - <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_65_16">getwin</A></FONT> (<FONT COLOR=red><A NAME="ref_65_24" HREF="terminal_interface-curses-putwin__adb.htm#ref_65_16">f</A></FONT> : <A HREF="terminal_interface-curses-putwin__adb.htm#ref_47_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_65_16">getwin</A></span> (<span class="symbol"><A NAME="ref_65_24" HREF="terminal_interface-curses-putwin__adb.htm#ref_65_16">f</A></span> : <A HREF="terminal_interface-curses-putwin__adb.htm#ref_47_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <b>pragma</b> Import (C, getwin, "getwin"); - -- <FONT COLOR=red><A NAME="ref_68_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#ref_65_16">getwin</A> (<A HREF="terminal_interface-curses-putwin__adb.htm#ref_48_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_48_25">File</A>)); -+ <span class="symbol"><A NAME="ref_68_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#ref_65_16">getwin</A> (<A HREF="terminal_interface-curses-putwin__adb.htm#ref_48_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_48_25">File</A>)); - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-putwin__adb.htm#ref_68_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>else</b> - <b>return</b> <A HREF="terminal_interface-curses-putwin__adb.htm#ref_68_7">W</A>; - <b>end</b> <b>if</b>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-putwin__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-putwin__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-putwin__ads.htm 2006-09-23 22:31:32.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-putwin__ads.htm 2014-09-01 16:33:22.297792024 +0200 -@@ -1,56 +1,68 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-putwin.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-putwin.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-putwin.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-putwin.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.PutWin --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.3 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.PutWin --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.3 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> - - <b>with</b> Ada.Streams.Stream_IO; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_43_35" HREF="terminal_interface-curses-putwin__adb.htm#ref_45_40">PutWin</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_43_35" HREF="terminal_interface-curses-putwin__adb.htm#ref_45_40">PutWin</A></span> <b>is</b> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_45_14" HREF="terminal_interface-curses-putwin__adb.htm#ref_51_14">Put_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_45_26" HREF="terminal_interface-curses-putwin__adb.htm#ref_51_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_46_26" HREF="terminal_interface-curses-putwin__adb.htm#ref_52_26">File</A></FONT> : Ada.Streams.Stream_IO.File_Type); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_45_14" HREF="terminal_interface-curses-putwin__adb.htm#ref_51_14">Put_Window</A></span> (<span class="symbol"><A NAME="ref_45_26" HREF="terminal_interface-curses-putwin__adb.htm#ref_51_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_46_26" HREF="terminal_interface-curses-putwin__adb.htm#ref_52_26">File</A></span> : Ada.Streams.Stream_IO.File_Type); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_48_13" HREF="terminal_interface-curses-putwin__adb.htm#ref_63_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_48_25" HREF="terminal_interface-curses-putwin__adb.htm#ref_63_25">File</A></FONT> : Ada.Streams.Stream_IO.File_Type) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_48_13" HREF="terminal_interface-curses-putwin__adb.htm#ref_63_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_48_25" HREF="terminal_interface-curses-putwin__adb.htm#ref_63_25">File</A></span> : Ada.Streams.Stream_IO.File_Type) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-putwin__ads.htm#ref_43_35">PutWin</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-termcap__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-termcap__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-termcap__adb.htm 2011-03-20 00:18:41.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-termcap__adb.htm 2014-09-01 16:33:22.297792024 +0200 -@@ -1,82 +1,94 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-termcap.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-termcap.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-termcap.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-termcap.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Termcap --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 2000-2006,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Termcap --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 2000-2006,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_47_40" HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_47_40" HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A></span> <b>is</b> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_49_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_59_13">Get_Entry</A></FONT> (<FONT COLOR=red><A NAME="ref_49_24" HREF="terminal_interface-curses-termcap__ads.htm#ref_59_24">Name</A></FONT> : String) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_49_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_59_13">Get_Entry</A></span> (<span class="symbol"><A NAME="ref_49_24" HREF="terminal_interface-curses-termcap__ads.htm#ref_59_24">Name</A></span> : String) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_51_16">tgetent</A></FONT> (<FONT COLOR=red><A NAME="ref_51_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_51_16">name</A></FONT> : char_array; <FONT COLOR=red><A NAME="ref_51_44" HREF="terminal_interface-curses-termcap__adb.htm#ref_51_16">val</A></FONT> : char_array) -+ <b>function</b> <span class="symbol"><A NAME="ref_51_16">tgetent</A></span> (<span class="symbol"><A NAME="ref_51_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_51_16">name</A></span> : char_array; <span class="symbol"><A NAME="ref_51_44" HREF="terminal_interface-curses-termcap__adb.htm#ref_51_16">val</A></span> : char_array) - <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, tgetent, "tgetent"); -- <FONT COLOR=red><A NAME="ref_54_7">NameTxt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_59_24">Name</A>'Length); -- <FONT COLOR=red><A NAME="ref_55_7">Length</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_56_7">ignored</A></FONT> : <b>constant</b> char_array (0 .. 0) := (0 =&gt; nul); -- <FONT COLOR=red><A NAME="ref_57_7">result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_54_7">NameTxt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_59_24">Name</A>'Length); -+ <span class="symbol"><A NAME="ref_55_7">Length</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_56_7">ignored</A></span> : <b>constant</b> char_array (0 .. 0) := (0 =&gt; nul); -+ <span class="symbol"><A NAME="ref_57_7">result</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_59_24">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_54_7">NameTxt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_55_7">Length</A>); - <A HREF="terminal_interface-curses-termcap__adb.htm#ref_57_7">result</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#ref_51_16">tgetent</A> (char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_56_7">ignored</A>), <A HREF="terminal_interface-curses-termcap__adb.htm#ref_54_7">NameTxt</A>); - <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#ref_57_7">result</A> = -1 <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>else</b> - <b>return</b> Boolean'Val (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_57_7">result</A>); - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_59_13">Get_Entry</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_69_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_63_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="ref_69_23" HREF="terminal_interface-curses-termcap__ads.htm#ref_63_23">Name</A></FONT> : String) <b>return</b> Boolean -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_69_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_63_13">Get_Flag</A></span> (<span class="symbol"><A NAME="ref_69_23" HREF="terminal_interface-curses-termcap__ads.htm#ref_63_23">Name</A></span> : String) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_71_16">tgetflag</A></FONT> (<FONT COLOR=red><A NAME="ref_71_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_71_16">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_71_16">tgetflag</A></span> (<span class="symbol"><A NAME="ref_71_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_71_16">id</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, tgetflag, "tgetflag"); -- <FONT COLOR=red><A NAME="ref_73_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_63_23">Name</A>'Length); -- <FONT COLOR=red><A NAME="ref_74_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_73_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_63_23">Name</A>'Length); -+ <span class="symbol"><A NAME="ref_74_7">Length</A></span> : size_t; - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_63_23">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_73_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_74_7">Length</A>); - <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#ref_71_16">tgetflag</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_73_7">Txt</A>) = 0 <b>then</b> -@@ -86,15 +98,15 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_63_13">Get_Flag</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_85_14" HREF="terminal_interface-curses-termcap__ads.htm#ref_67_14">Get_Number</A></FONT> (<FONT COLOR=red><A NAME="ref_85_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_67_26">Name</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_86_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_68_26">Value</A></FONT> : <b>out</b> Integer; -- <FONT COLOR=red><A NAME="ref_87_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_69_26">Result</A></FONT> : <b>out</b> Boolean) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_85_14" HREF="terminal_interface-curses-termcap__ads.htm#ref_67_14">Get_Number</A></span> (<span class="symbol"><A NAME="ref_85_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_67_26">Name</A></span> : String; -+ <span class="symbol"><A NAME="ref_86_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_68_26">Value</A></span> : <b>out</b> Integer; -+ <span class="symbol"><A NAME="ref_87_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_69_26">Result</A></span> : <b>out</b> Boolean) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_89_16">tgetnum</A></FONT> (<FONT COLOR=red><A NAME="ref_89_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_89_16">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_89_16">tgetnum</A></span> (<span class="symbol"><A NAME="ref_89_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_89_16">id</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, tgetnum, "tgetnum"); -- <FONT COLOR=red><A NAME="ref_91_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_67_26">Name</A>'Length); -- <FONT COLOR=red><A NAME="ref_92_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_91_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_67_26">Name</A>'Length); -+ <span class="symbol"><A NAME="ref_92_7">Length</A></span> : size_t; - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_67_26">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_91_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_92_7">Length</A>); - <A HREF="terminal_interface-curses-termcap__ads.htm#ref_68_26">Value</A> := Integer (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_89_16">tgetnum</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_91_7">Txt</A>)); -@@ -105,19 +117,19 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_67_14">Get_Number</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_104_14" HREF="terminal_interface-curses-termcap__ads.htm#ref_73_14">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_104_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_73_26">Name</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_105_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_74_26">Value</A></FONT> : <b>out</b> String; -- <FONT COLOR=red><A NAME="ref_106_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_75_26">Result</A></FONT> : <b>out</b> Boolean) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_104_14" HREF="terminal_interface-curses-termcap__ads.htm#ref_73_14">Get_String</A></span> (<span class="symbol"><A NAME="ref_104_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_73_26">Name</A></span> : String; -+ <span class="symbol"><A NAME="ref_105_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_74_26">Value</A></span> : <b>out</b> String; -+ <span class="symbol"><A NAME="ref_106_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_75_26">Result</A></span> : <b>out</b> Boolean) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_108_16">tgetstr</A></FONT> (<FONT COLOR=red><A NAME="ref_108_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_108_16">id</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_109_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_108_16">buf</A></FONT> : char_array) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_108_16">tgetstr</A></span> (<span class="symbol"><A NAME="ref_108_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_108_16">id</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_109_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_108_16">buf</A></span> : char_array) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, tgetstr, "tgetstr"); -- <FONT COLOR=red><A NAME="ref_111_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_73_26">Name</A>'Length); -- <FONT COLOR=red><A NAME="ref_112_7">Length</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_113_7">Txt2</A></FONT> : chars_ptr; -- <b>type</b> t <b>is</b> <b>new</b> char_array (0 .. 1024); <FONT COLOR=green><EM>-- does it need to be 1024?</EM></FONT> -- <FONT COLOR=red><A NAME="ref_115_7">Return_Buffer</A></FONT> : <b>constant</b> t := (<b>others</b> =&gt; nul); -+ <span class="symbol"><A NAME="ref_111_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_73_26">Name</A>'Length); -+ <span class="symbol"><A NAME="ref_112_7">Length</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_113_7">Txt2</A></span> : chars_ptr; -+ <b>type</b> t <b>is</b> <b>new</b> char_array (0 .. 1024); <span class="comment"><EM>-- does it need to be 1024?</EM></span> -+ <span class="symbol"><A NAME="ref_115_7">Return_Buffer</A></span> : <b>constant</b> t := (<b>others</b> =&gt; nul); - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_73_26">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_111_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_112_7">Length</A>); - <A HREF="terminal_interface-curses-termcap__adb.htm#ref_113_7">Txt2</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#ref_108_16">tgetstr</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_111_7">Txt</A>, char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_115_7">Return_Buffer</A>)); -@@ -129,16 +141,16 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_73_14">Get_String</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_127_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_76_13">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_127_25" HREF="terminal_interface-curses-termcap__ads.htm#ref_76_25">Name</A></FONT> : String) <b>return</b> Boolean -+ <b>function</b> <span class="symbol"><A NAME="ref_127_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_76_13">Get_String</A></span> (<span class="symbol"><A NAME="ref_127_25" HREF="terminal_interface-curses-termcap__ads.htm#ref_76_25">Name</A></span> : String) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_129_16">tgetstr</A></FONT> (<FONT COLOR=red><A NAME="ref_129_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_129_16">Id</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_130_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_129_16">buf</A></FONT> : char_array) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_129_16">tgetstr</A></span> (<span class="symbol"><A NAME="ref_129_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_129_16">Id</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_130_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_129_16">buf</A></span> : char_array) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, tgetstr, "tgetstr"); -- <FONT COLOR=red><A NAME="ref_132_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_76_25">Name</A>'Length); -- <FONT COLOR=red><A NAME="ref_133_7">Length</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_134_7">Txt2</A></FONT> : chars_ptr; -- <b>type</b> t <b>is</b> <b>new</b> char_array (0 .. 1024); <FONT COLOR=green><EM>-- does it need to be 1024?</EM></FONT> -- <FONT COLOR=red><A NAME="ref_136_7">Phony_Txt</A></FONT> : <b>constant</b> t := (<b>others</b> =&gt; nul); -+ <span class="symbol"><A NAME="ref_132_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_76_25">Name</A>'Length); -+ <span class="symbol"><A NAME="ref_133_7">Length</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_134_7">Txt2</A></span> : chars_ptr; -+ <b>type</b> t <b>is</b> <b>new</b> char_array (0 .. 1024); <span class="comment"><EM>-- does it need to be 1024?</EM></span> -+ <span class="symbol"><A NAME="ref_136_7">Phony_Txt</A></span> : <b>constant</b> t := (<b>others</b> =&gt; nul); - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_76_25">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_132_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_133_7">Length</A>); - <A HREF="terminal_interface-curses-termcap__adb.htm#ref_134_7">Txt2</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#ref_129_16">tgetstr</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_132_7">Txt</A>, char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_136_7">Phony_Txt</A>)); -@@ -149,16 +161,16 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_76_13">Get_String</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_148_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_53_13">TGoto</A></FONT> (<FONT COLOR=red><A NAME="ref_148_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_53_20">Cap</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_149_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_54_20">Col</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_150_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_55_20">Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Termcap_String <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_151_16">tgoto</A></FONT> (<FONT COLOR=red><A NAME="ref_151_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">cap</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_152_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_153_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_148_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_53_13">TGoto</A></span> (<span class="symbol"><A NAME="ref_148_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_53_20">Cap</A></span> : String; -+ <span class="symbol"><A NAME="ref_149_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_54_20">Col</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_150_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_55_20">Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Termcap_String <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_151_16">tgoto</A></span> (<span class="symbol"><A NAME="ref_151_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">cap</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_152_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_153_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, tgoto); -- <FONT COLOR=red><A NAME="ref_155_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_53_20">Cap</A>'Length); -- <FONT COLOR=red><A NAME="ref_156_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_155_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_53_20">Cap</A>'Length); -+ <span class="symbol"><A NAME="ref_156_7">Length</A></span> : size_t; - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_53_20">Cap</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_155_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_156_7">Length</A>); - <b>return</b> Termcap_String (<A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-termcap__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-termcap__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-termcap__ads.htm 2008-10-11 23:36:31.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-termcap__ads.htm 2014-09-01 16:33:22.297792024 +0200 -@@ -1,86 +1,98 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-termcap.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-termcap.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-termcap.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-termcap.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Termcap --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.3 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Termcap --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.3 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_42_35" HREF="terminal_interface-curses-termcap__adb.htm#ref_47_40">Termcap</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_42_35" HREF="terminal_interface-curses-termcap__adb.htm#ref_47_40">Termcap</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A>); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page curs_termcap.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- Not implemented: tputs (see curs_terminfo)</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page curs_termcap.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- Not implemented: tputs (see curs_terminfo)</EM></span> - - <b>type</b> Termcap_String <b>is</b> <b>new</b> String; - -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_53_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_148_13">TGoto</A></FONT> (<FONT COLOR=red><A NAME="ref_53_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_148_20">Cap</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_54_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_149_20">Col</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_55_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_150_20">Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Termcap_String; -- <FONT COLOR=green><EM>-- AKA: tgoto()</EM></FONT> -- -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_59_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_49_13">Get_Entry</A></FONT> (<FONT COLOR=red><A NAME="ref_59_24" HREF="terminal_interface-curses-termcap__adb.htm#ref_49_24">Name</A></FONT> : String) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: tgetent()</EM></FONT> -- -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_63_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_69_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="ref_63_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_69_23">Name</A></FONT> : String) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: tgetflag()</EM></FONT> -- -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_67_14" HREF="terminal_interface-curses-termcap__adb.htm#ref_85_14">Get_Number</A></FONT> (<FONT COLOR=red><A NAME="ref_67_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_85_26">Name</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_68_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_86_26">Value</A></FONT> : <b>out</b> Integer; -- <FONT COLOR=red><A NAME="ref_69_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_87_26">Result</A></FONT> : <b>out</b> Boolean); -- <FONT COLOR=green><EM>-- AKA: tgetnum()</EM></FONT> -- -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_73_14" HREF="terminal_interface-curses-termcap__adb.htm#ref_104_14">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_73_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_104_26">Name</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_74_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_105_26">Value</A></FONT> : <b>out</b> String; -- <FONT COLOR=red><A NAME="ref_75_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_106_26">Result</A></FONT> : <b>out</b> Boolean); -- <b>function</b> <FONT COLOR=red><A NAME="ref_76_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_127_13">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_76_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_127_25">Name</A></FONT> : String) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- Returns True if the string is found.</EM></FONT> -- <FONT COLOR=green><EM>-- AKA: tgetstr()</EM></FONT> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_53_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_148_13">TGoto</A></span> (<span class="symbol"><A NAME="ref_53_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_148_20">Cap</A></span> : String; -+ <span class="symbol"><A NAME="ref_54_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_149_20">Col</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_55_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_150_20">Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Termcap_String; -+ <span class="comment"><EM>-- AKA: tgoto()</EM></span> -+ -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_59_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_49_13">Get_Entry</A></span> (<span class="symbol"><A NAME="ref_59_24" HREF="terminal_interface-curses-termcap__adb.htm#ref_49_24">Name</A></span> : String) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: tgetent()</EM></span> -+ -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_63_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_69_13">Get_Flag</A></span> (<span class="symbol"><A NAME="ref_63_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_69_23">Name</A></span> : String) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: tgetflag()</EM></span> -+ -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_67_14" HREF="terminal_interface-curses-termcap__adb.htm#ref_85_14">Get_Number</A></span> (<span class="symbol"><A NAME="ref_67_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_85_26">Name</A></span> : String; -+ <span class="symbol"><A NAME="ref_68_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_86_26">Value</A></span> : <b>out</b> Integer; -+ <span class="symbol"><A NAME="ref_69_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_87_26">Result</A></span> : <b>out</b> Boolean); -+ <span class="comment"><EM>-- AKA: tgetnum()</EM></span> -+ -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_73_14" HREF="terminal_interface-curses-termcap__adb.htm#ref_104_14">Get_String</A></span> (<span class="symbol"><A NAME="ref_73_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_104_26">Name</A></span> : String; -+ <span class="symbol"><A NAME="ref_74_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_105_26">Value</A></span> : <b>out</b> String; -+ <span class="symbol"><A NAME="ref_75_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_106_26">Result</A></span> : <b>out</b> Boolean); -+ <b>function</b> <span class="symbol"><A NAME="ref_76_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_127_13">Get_String</A></span> (<span class="symbol"><A NAME="ref_76_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_127_25">Name</A></span> : String) <b>return</b> Boolean; -+ <span class="comment"><EM>-- Returns True if the string is found.</EM></span> -+ <span class="comment"><EM>-- AKA: tgetstr()</EM></span> - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-terminfo__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-terminfo__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-terminfo__adb.htm 2011-03-20 00:18:41.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-terminfo__adb.htm 2014-09-01 16:33:22.298792026 +0200 -@@ -1,62 +1,74 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-terminfo.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-terminfo.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-terminfo.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-terminfo.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Terminfo --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.6 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Terminfo --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.6 @</EM></span> -+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; - <b>with</b> Ada.Unchecked_Conversion; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_48_40" HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_48_40" HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A></span> <b>is</b> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_50_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_52_13">Is_MinusOne_Pointer</A></FONT> (<FONT COLOR=red><A NAME="ref_50_34" HREF="terminal_interface-curses-terminfo__adb.htm#ref_52_34">P</A></FONT> : chars_ptr) <b>return</b> Boolean; -+ <b>function</b> <span class="symbol"><A NAME="ref_50_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_52_13">Is_MinusOne_Pointer</A></span> (<span class="symbol"><A NAME="ref_50_34" HREF="terminal_interface-curses-terminfo__adb.htm#ref_52_34">P</A></span> : chars_ptr) <b>return</b> Boolean; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_52_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A></FONT> (<FONT COLOR=red><A NAME="ref_52_34" HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_34">P</A></FONT> : chars_ptr) <b>return</b> Boolean <b>is</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_53_12">Weird_Address</A></FONT> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address; -- <FONT COLOR=red><A NAME="ref_54_7">Invalid_Pointer</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_53_12">Weird_Address</A> := -1; -+ <b>function</b> <span class="symbol"><A NAME="ref_52_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A></span> (<span class="symbol"><A NAME="ref_52_34" HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_34">P</A></span> : chars_ptr) <b>return</b> Boolean <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_53_12">Weird_Address</A></span> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address; -+ <span class="symbol"><A NAME="ref_54_7">Invalid_Pointer</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_53_12">Weird_Address</A> := -1; - <b>function</b> To_Weird <b>is</b> <b>new</b> Ada.Unchecked_Conversion - (Source =&gt; chars_ptr, Target =&gt; <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_53_12">Weird_Address</A>); - <b>begin</b> -@@ -68,89 +80,89 @@ - <b>end</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A>; - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A>); - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_67_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="ref_67_23" HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_23">Name</A></FONT> : String) <b>return</b> Boolean -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_67_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_13">Get_Flag</A></span> (<span class="symbol"><A NAME="ref_67_23" HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_23">Name</A></span> : String) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_69_16">tigetflag</A></FONT> (<FONT COLOR=red><A NAME="ref_69_27" HREF="terminal_interface-curses-terminfo__adb.htm#ref_69_16">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_69_16">tigetflag</A></span> (<span class="symbol"><A NAME="ref_69_27" HREF="terminal_interface-curses-terminfo__adb.htm#ref_69_16">id</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A>; - <b>pragma</b> Import (C, tigetflag); -- <FONT COLOR=red><A NAME="ref_71_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_23">Name</A>'Length); -- <FONT COLOR=red><A NAME="ref_72_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_71_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_23">Name</A>'Length); -+ <span class="symbol"><A NAME="ref_72_7">Length</A></span> : size_t; - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_23">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_71_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_72_7">Length</A>); -- <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_69_16">tigetflag</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_71_7">Txt</A>) = <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_74_4">Curses_True</A>) <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_69_16">tigetflag</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_71_7">Txt</A>) = <A HREF="terminal_interface-curses__ads.htm#ref_1925_9">Curses_Bool</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_74_4">Curses_True</A>) <b>then</b> - <b>return</b> True; - <b>else</b> - <b>return</b> False; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_13">Get_Flag</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_83_14" HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_14">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_83_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_26">Name</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_84_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_58_26">Value</A></FONT> : <b>out</b> Terminfo_String; -- <FONT COLOR=red><A NAME="ref_85_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_59_26">Result</A></FONT> : <b>out</b> Boolean) -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_83_14" HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_14">Get_String</A></span> (<span class="symbol"><A NAME="ref_83_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_26">Name</A></span> : String; -+ <span class="symbol"><A NAME="ref_84_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_58_26">Value</A></span> : <b>out</b> Terminfo_String; -+ <span class="symbol"><A NAME="ref_85_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_59_26">Result</A></span> : <b>out</b> Boolean) - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_87_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="ref_87_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_87_16">id</A></FONT> : char_array) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_87_16">tigetstr</A></span> (<span class="symbol"><A NAME="ref_87_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_87_16">id</A></span> : char_array) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, tigetstr, "tigetstr"); -- <FONT COLOR=red><A NAME="ref_89_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_26">Name</A>'Length); -- <FONT COLOR=red><A NAME="ref_90_7">Length</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_91_7">Txt2</A></FONT> : chars_ptr; -+ <span class="symbol"><A NAME="ref_89_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_26">Name</A>'Length); -+ <span class="symbol"><A NAME="ref_90_7">Length</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_91_7">Txt2</A></span> : chars_ptr; - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_26">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_89_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_90_7">Length</A>); - <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_91_7">Txt2</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_87_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_89_7">Txt</A>); - <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_91_7">Txt2</A> = Null_Ptr <b>then</b> - <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_59_26">Result</A> := False; - <b>elsif</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_91_7">Txt2</A>) <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>else</b> - <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_58_26">Value</A> := Terminfo_String (<A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_91_7">Txt2</A>)); - <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_59_26">Result</A> := True; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_14">Get_String</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_106_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_13">Has_String</A></FONT> (<FONT COLOR=red><A NAME="ref_106_25" HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_25">Name</A></FONT> : String) <b>return</b> Boolean -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_106_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_13">Has_String</A></span> (<span class="symbol"><A NAME="ref_106_25" HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_25">Name</A></span> : String) <b>return</b> Boolean - <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_108_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="ref_108_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_108_16">id</A></FONT> : char_array) <b>return</b> chars_ptr; -+ <b>function</b> <span class="symbol"><A NAME="ref_108_16">tigetstr</A></span> (<span class="symbol"><A NAME="ref_108_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_108_16">id</A></span> : char_array) <b>return</b> chars_ptr; - <b>pragma</b> Import (C, tigetstr, "tigetstr"); -- <FONT COLOR=red><A NAME="ref_110_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_25">Name</A>'Length); -- <FONT COLOR=red><A NAME="ref_111_7">Length</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_112_7">Txt2</A></FONT> : chars_ptr; -+ <span class="symbol"><A NAME="ref_110_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_25">Name</A>'Length); -+ <span class="symbol"><A NAME="ref_111_7">Length</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_112_7">Txt2</A></span> : chars_ptr; - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_25">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_110_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_111_7">Length</A>); - <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_112_7">Txt2</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_108_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_110_7">Txt</A>); - <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_112_7">Txt2</A> = Null_Ptr <b>then</b> - <b>return</b> False; - <b>elsif</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_112_7">Txt2</A>) <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>else</b> - <b>return</b> True; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_13">Has_String</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_126_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_13">Get_Number</A></FONT> (<FONT COLOR=red><A NAME="ref_126_25" HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_25">Name</A></FONT> : String) <b>return</b> Integer <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_127_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="ref_127_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_127_16">s</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_126_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_13">Get_Number</A></span> (<span class="symbol"><A NAME="ref_126_25" HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_25">Name</A></span> : String) <b>return</b> Integer <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_127_16">tigetstr</A></span> (<span class="symbol"><A NAME="ref_127_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_127_16">s</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, tigetstr); -- <FONT COLOR=red><A NAME="ref_129_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_25">Name</A>'Length); -- <FONT COLOR=red><A NAME="ref_130_7">Length</A></FONT> : size_t; -+ <span class="symbol"><A NAME="ref_129_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_25">Name</A>'Length); -+ <span class="symbol"><A NAME="ref_130_7">Length</A></span> : size_t; - <b>begin</b> - To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_25">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_129_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_130_7">Length</A>); - <b>return</b> Integer (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_127_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_129_7">Txt</A>)); - <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_13">Get_Number</A>; - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_137_14" HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_14">Put_String</A></FONT> (<FONT COLOR=red><A NAME="ref_137_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_26">Str</A></FONT> : Terminfo_String; -- <FONT COLOR=red><A NAME="ref_138_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_77_26">affcnt</A></FONT> : Natural := 1; -- <FONT COLOR=red><A NAME="ref_139_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_78_26">putc</A></FONT> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A> := <b>null</b>) <b>is</b> -- <b>function</b> <FONT COLOR=red><A NAME="ref_140_16">tputs</A></FONT> (<FONT COLOR=red><A NAME="ref_140_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">str</A></FONT> : char_array; -- <FONT COLOR=red><A NAME="ref_141_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">affcnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <FONT COLOR=red><A NAME="ref_142_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">putc</A></FONT> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_143_16">putp</A></FONT> (<FONT COLOR=red><A NAME="ref_143_22" HREF="terminal_interface-curses-terminfo__adb.htm#ref_143_16">str</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_137_14" HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_14">Put_String</A></span> (<span class="symbol"><A NAME="ref_137_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_26">Str</A></span> : Terminfo_String; -+ <span class="symbol"><A NAME="ref_138_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_77_26">affcnt</A></span> : Natural := 1; -+ <span class="symbol"><A NAME="ref_139_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_78_26">putc</A></span> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A> := <b>null</b>) <b>is</b> -+ <b>function</b> <span class="symbol"><A NAME="ref_140_16">tputs</A></span> (<span class="symbol"><A NAME="ref_140_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">str</A></span> : char_array; -+ <span class="symbol"><A NAME="ref_141_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">affcnt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_142_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">putc</A></span> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_143_16">putp</A></span> (<span class="symbol"><A NAME="ref_143_22" HREF="terminal_interface-curses-terminfo__adb.htm#ref_143_16">str</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>pragma</b> Import (C, tputs); - <b>pragma</b> Import (C, putp); -- <FONT COLOR=red><A NAME="ref_146_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_26">Str</A>'Length); -- <FONT COLOR=red><A NAME="ref_147_7">Length</A></FONT> : size_t; -- <FONT COLOR=red><A NAME="ref_148_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; -+ <span class="symbol"><A NAME="ref_146_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_26">Str</A>'Length); -+ <span class="symbol"><A NAME="ref_147_7">Length</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_148_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; - <b>begin</b> - To_C (String (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_26">Str</A>), <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_146_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_147_7">Length</A>); - <b>if</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_78_26">putc</A> = <b>null</b> <b>then</b> -@@ -159,7 +171,7 @@ - <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_148_7">Err</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">tputs</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_146_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_77_26">affcnt</A>), <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_78_26">putc</A>); - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_148_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> -- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>; -+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_384_4">Curses_Exception</A>; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_14">Put_String</A>; - -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-terminfo__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-terminfo__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-terminfo__ads.htm 2011-02-26 00:43:50.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-terminfo__ads.htm 2014-09-01 16:33:22.298792026 +0200 -@@ -1,87 +1,99 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-terminfo.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-terminfo.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-terminfo.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-terminfo.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Terminfo --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.3 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Terminfo --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.3 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - --<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_44_35" HREF="terminal_interface-curses-terminfo__adb.htm#ref_48_40">Terminfo</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_44_35" HREF="terminal_interface-curses-terminfo__adb.htm#ref_48_40">Terminfo</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A>); - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page curs_terminfo.3x</EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- Not implemented: setupterm, setterm, set_curterm, del_curterm,</EM></FONT> -- <FONT COLOR=green><EM>-- restartterm, tparm, putp, vidputs, vidattr,</EM></FONT> -- <FONT COLOR=green><EM>-- mvcur</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page curs_terminfo.3x</EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- Not implemented: setupterm, setterm, set_curterm, del_curterm,</EM></span> -+ <span class="comment"><EM>-- restartterm, tparm, putp, vidputs, vidattr,</EM></span> -+ <span class="comment"><EM>-- mvcur</EM></span> - - <b>type</b> Terminfo_String <b>is</b> <b>new</b> String; - -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_57_14" HREF="terminal_interface-curses-terminfo__adb.htm#ref_83_14">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_57_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_83_26">Name</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_58_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_84_26">Value</A></FONT> : <b>out</b> Terminfo_String; -- <FONT COLOR=red><A NAME="ref_59_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_85_26">Result</A></FONT> : <b>out</b> Boolean); -- <b>function</b> <FONT COLOR=red><A NAME="ref_60_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_106_13">Has_String</A></FONT> (<FONT COLOR=red><A NAME="ref_60_25" HREF="terminal_interface-curses-terminfo__adb.htm#ref_106_25">Name</A></FONT> : String) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: tigetstr()</EM></FONT> -- -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_67_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="ref_64_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_67_23">Name</A></FONT> : String) <b>return</b> Boolean; -- <FONT COLOR=green><EM>-- AKA: tigetflag()</EM></FONT> -- -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>function</b> <FONT COLOR=red><A NAME="ref_68_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_126_13">Get_Number</A></FONT> (<FONT COLOR=red><A NAME="ref_68_25" HREF="terminal_interface-curses-terminfo__adb.htm#ref_126_25">Name</A></FONT> : String) <b>return</b> Integer; -- <FONT COLOR=green><EM>-- AKA: tigetnum()</EM></FONT> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_57_14" HREF="terminal_interface-curses-terminfo__adb.htm#ref_83_14">Get_String</A></span> (<span class="symbol"><A NAME="ref_57_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_83_26">Name</A></span> : String; -+ <span class="symbol"><A NAME="ref_58_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_84_26">Value</A></span> : <b>out</b> Terminfo_String; -+ <span class="symbol"><A NAME="ref_59_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_85_26">Result</A></span> : <b>out</b> Boolean); -+ <b>function</b> <span class="symbol"><A NAME="ref_60_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_106_13">Has_String</A></span> (<span class="symbol"><A NAME="ref_60_25" HREF="terminal_interface-curses-terminfo__adb.htm#ref_106_25">Name</A></span> : String) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: tigetstr()</EM></span> -+ -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_67_13">Get_Flag</A></span> (<span class="symbol"><A NAME="ref_64_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_67_23">Name</A></span> : String) <b>return</b> Boolean; -+ <span class="comment"><EM>-- AKA: tigetflag()</EM></span> -+ -+ <span class="comment"><EM>-- |</EM></span> -+ <b>function</b> <span class="symbol"><A NAME="ref_68_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_126_13">Get_Number</A></span> (<span class="symbol"><A NAME="ref_68_25" HREF="terminal_interface-curses-terminfo__adb.htm#ref_126_25">Name</A></span> : String) <b>return</b> Integer; -+ <span class="comment"><EM>-- AKA: tigetnum()</EM></span> - -- <b>type</b> <FONT COLOR=red><A NAME="ref_71_9">putctype</A></FONT> <b>is</b> <b>access</b> <b>function</b> (<FONT COLOR=red><A NAME="ref_71_38">c</A></FONT> : <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int) -- <b>return</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int; -+ <b>type</b> <span class="symbol"><A NAME="ref_71_9">putctype</A></span> <b>is</b> <b>access</b> <b>function</b> (<span class="symbol"><A NAME="ref_71_38">c</A></span> : <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int) -+ <b>return</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A>); - -- <FONT COLOR=green><EM>-- |</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_76_14" HREF="terminal_interface-curses-terminfo__adb.htm#ref_137_14">Put_String</A></FONT> (<FONT COLOR=red><A NAME="ref_76_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_137_26">Str</A></FONT> : Terminfo_String; -- <FONT COLOR=red><A NAME="ref_77_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_138_26">affcnt</A></FONT> : Natural := 1; -- <FONT COLOR=red><A NAME="ref_78_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_139_26">putc</A></FONT> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A> := <b>null</b>); -- <FONT COLOR=green><EM>-- AKA: tputs()</EM></FONT> -+ <span class="comment"><EM>-- |</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_76_14" HREF="terminal_interface-curses-terminfo__adb.htm#ref_137_14">Put_String</A></span> (<span class="symbol"><A NAME="ref_76_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_137_26">Str</A></span> : Terminfo_String; -+ <span class="symbol"><A NAME="ref_77_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_138_26">affcnt</A></span> : Natural := 1; -+ <span class="symbol"><A NAME="ref_78_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_139_26">putc</A></span> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A> := <b>null</b>); -+ <span class="comment"><EM>-- AKA: tputs()</EM></span> - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io__adb.htm 2011-03-26 22:54:30.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io__adb.htm 2014-09-01 16:33:22.304792036 +0200 -@@ -1,181 +1,193 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.20 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:38:49 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_42_40" HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A></FONT> <b>is</b> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.20 @</EM></span> -+<span class="comment"><EM>-- @Date: 2011/03/22 23:38:49 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_42_40" HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A></span> <b>is</b> - -- <FONT COLOR=red><A NAME="ref_44_4">Default_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A>; -+ <span class="symbol"><A NAME="ref_44_4">Default_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_59_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_46_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_59_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_59_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_46_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_59_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__adb.htm#ref_44_4">Default_Window</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_59_26">Win</A>; - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_59_14">Set_Window</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_52_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_52_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> - <b>is</b> - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_44_4">Default_Window</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> -- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>; -+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_477_13">Standard_Window</A>; - <b>else</b> - <b>return</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_44_4">Default_Window</A>; - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>; - <b>pragma</b> Inline (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_63_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_65_14">Flush</A></FONT> (<FONT COLOR=red><A NAME="ref_63_21" HREF="terminal_interface-curses-text_io__ads.htm#ref_65_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_63_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_65_14">Flush</A></span> (<span class="symbol"><A NAME="ref_63_21" HREF="terminal_interface-curses-text_io__ads.htm#ref_65_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1047_14">Refresh</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_65_21">Win</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1046_14">Refresh</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_65_21">Win</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_65_14">Flush</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_69_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_66_14">Flush</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_69_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_66_14">Flush</A></span> - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_65_14">Flush</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_66_14">Flush</A>; - -- <FONT COLOR=green><EM>--------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Specification of line and page lengths --</EM></FONT> -- <FONT COLOR=green><EM>--------------------------------------------</EM></FONT> -- -- <FONT COLOR=green><EM>-- There are no set routines in this package. I assume, that you allocate</EM></FONT> -- <FONT COLOR=green><EM>-- the window with an appropriate size.</EM></FONT> -- <FONT COLOR=green><EM>-- A scroll-window is interpreted as an page with unbounded page length,</EM></FONT> -- <FONT COLOR=green><EM>-- i.e. it returns the conventional 0 as page length.</EM></FONT> -- -- <b>function</b> <FONT COLOR=red><A NAME="ref_84_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_77_13">Line_Length</A></FONT> (<FONT COLOR=red><A NAME="ref_84_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_77_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> -- <b>is</b> -- <FONT COLOR=red><A NAME="ref_86_7">N_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_87_7">N_Cols</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_77_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_86_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_87_7">N_Cols</A>); -- <FONT COLOR=green><EM>-- if Natural (N_Cols) &gt; Natural (Count'Last) then</EM></FONT> -- <FONT COLOR=green><EM>-- raise Layout_Error;</EM></FONT> -- <FONT COLOR=green><EM>-- end if;</EM></FONT> -+ <span class="comment"><EM>--------------------------------------------</EM></span> -+ <span class="comment"><EM>-- Specification of line and page lengths --</EM></span> -+ <span class="comment"><EM>--------------------------------------------</EM></span> -+ -+ <span class="comment"><EM>-- There are no set routines in this package. I assume, that you allocate</EM></span> -+ <span class="comment"><EM>-- the window with an appropriate size.</EM></span> -+ <span class="comment"><EM>-- A scroll-window is interpreted as an page with unbounded page length,</EM></span> -+ <span class="comment"><EM>-- i.e. it returns the conventional 0 as page length.</EM></span> -+ -+ <b>function</b> <span class="symbol"><A NAME="ref_84_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_77_13">Line_Length</A></span> (<span class="symbol"><A NAME="ref_84_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_77_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> -+ <b>is</b> -+ <span class="symbol"><A NAME="ref_86_7">N_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_87_7">N_Cols</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <b>begin</b> -+ <A HREF="terminal_interface-curses__ads.htm#ref_1229_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_77_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_86_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_87_7">N_Cols</A>); -+ <span class="comment"><EM>-- if Natural (N_Cols) &gt; Natural (Count'Last) then</EM></span> -+ <span class="comment"><EM>-- raise Layout_Error;</EM></span> -+ <span class="comment"><EM>-- end if;</EM></span> - <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_87_7">N_Cols</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_77_13">Line_Length</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_96_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_78_13">Line_Length</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_96_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_78_13">Line_Length</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> - <b>is</b> - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_77_13">Line_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_78_13">Line_Length</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_102_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A></FONT> (<FONT COLOR=red><A NAME="ref_102_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_102_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A></span> (<span class="symbol"><A NAME="ref_102_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_104_7">N_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_105_7">N_Cols</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_104_7">N_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_105_7">N_Cols</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; - <b>begin</b> -- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1024_13">Scrolling_Allowed</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A>) <b>then</b> -+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1023_13">Scrolling_Allowed</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A>) <b>then</b> - <b>return</b> 0; - <b>else</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_104_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_105_7">N_Cols</A>); -- <FONT COLOR=green><EM>-- if Natural (N_Lines) &gt; Natural (Count'Last) then</EM></FONT> -- <FONT COLOR=green><EM>-- raise Layout_Error;</EM></FONT> -- <FONT COLOR=green><EM>-- end if;</EM></FONT> -+ <A HREF="terminal_interface-curses__ads.htm#ref_1229_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_104_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_105_7">N_Cols</A>); -+ <span class="comment"><EM>-- if Natural (N_Lines) &gt; Natural (Count'Last) then</EM></span> -+ <span class="comment"><EM>-- raise Layout_Error;</EM></span> -+ <span class="comment"><EM>-- end if;</EM></span> - <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_104_7">N_Lines</A>); - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_118_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_81_13">Page_Length</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_118_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_81_13">Page_Length</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> - <b>is</b> - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_81_13">Page_Length</A>; - -- <FONT COLOR=green><EM>------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Column, Line, and Page Control --</EM></FONT> -- <FONT COLOR=green><EM>------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_127_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_127_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_127_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_38">Spacing</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1) -+ <span class="comment"><EM>------------------------------------</EM></span> -+ <span class="comment"><EM>-- Column, Line, and Page Control --</EM></span> -+ <span class="comment"><EM>------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_127_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A></span> (<span class="symbol"><A NAME="ref_127_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_127_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_38">Spacing</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_129_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>); -+ <span class="symbol"><A NAME="ref_129_7">P_Size</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>); - <b>begin</b> - <b>if</b> <b>not</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_38">Spacing</A>'Valid <b>then</b> - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; - -- <b>for</b> <FONT COLOR=red><A NAME="ref_135_11">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_38">Spacing</A> <b>loop</b> -+ <b>for</b> <span class="symbol"><A NAME="ref_135_11">I</A></span> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_38">Spacing</A> <b>loop</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_129_7">P_Size</A> &gt; 0 <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_101_13">Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>) &gt;= <A HREF="terminal_interface-curses-text_io__adb.htm#ref_129_7">P_Size</A> <b>then</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>); - <b>else</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_530_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>, ASCII.LF); -+ <A HREF="terminal_interface-curses__ads.htm#ref_529_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>, ASCII.LF); - <b>end</b> <b>if</b>; - <b>end</b> <b>loop</b>; - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_144_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_87_14">New_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_144_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_87_24">Spacing</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_144_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_87_14">New_Line</A></span> (<span class="symbol"><A NAME="ref_144_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_87_24">Spacing</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_87_24">Spacing</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_87_14">New_Line</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_150_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_150_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_89_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_150_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A></span> (<span class="symbol"><A NAME="ref_150_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_89_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) - <b>is</b> - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1082_14">Clear</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_24">Win</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1081_14">Clear</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_24">Win</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_156_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_90_14">New_Page</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_156_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_90_14">New_Page</A></span> - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_90_14">New_Page</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_162_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_14">Set_Col</A></FONT> (<FONT COLOR=red><A NAME="ref_162_23" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_162_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_38">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_162_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_14">Set_Col</A></span> (<span class="symbol"><A NAME="ref_162_23" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_162_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_38">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_164_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_165_7">X1</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_166_7">X2</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_167_7">N</A></FONT> : Natural; -+ <span class="symbol"><A NAME="ref_164_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_165_7">X1</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_166_7">X2</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_167_7">N</A></span> : Natural; - <b>begin</b> - <b>if</b> <b>not</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_38">To</A>'Valid <b>then</b> - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; - -- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_164_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1245_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_164_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A>); - <A HREF="terminal_interface-curses-text_io__adb.htm#ref_167_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_38">To</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#ref_167_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#ref_167_7">N</A> - 1; - <A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_167_7">N</A>); - <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A> &gt; <A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A> <b>then</b> -@@ -184,7 +196,7 @@ - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A> &lt; <A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A> <b>then</b> - <b>declare</b> -- <FONT COLOR=red><A NAME="ref_182_13">Filler</A></FONT> : <b>constant</b> String (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A>) .. (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A>) - 1)) -+ <span class="symbol"><A NAME="ref_182_13">Filler</A></span> : <b>constant</b> String (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A>) .. (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A>) - 1)) - := (<b>others</b> =&gt; ' '); - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_182_13">Filler</A>); -@@ -192,24 +204,24 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_14">Set_Col</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_190_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_93_14">Set_Col</A></FONT> (<FONT COLOR=red><A NAME="ref_190_23" HREF="terminal_interface-curses-text_io__ads.htm#ref_93_23">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_190_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_93_14">Set_Col</A></span> (<span class="symbol"><A NAME="ref_190_23" HREF="terminal_interface-curses-text_io__ads.htm#ref_93_23">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_14">Set_Col</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_93_23">To</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_93_14">Set_Col</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_196_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_14">Set_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_196_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_196_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_38">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_196_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_14">Set_Line</A></span> (<span class="symbol"><A NAME="ref_196_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_196_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_38">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_198_7">Y1</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_199_7">Y2</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_200_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_201_7">N</A></FONT> : Natural; -+ <span class="symbol"><A NAME="ref_198_7">Y1</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_199_7">Y2</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_200_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_201_7">N</A></span> : Natural; - <b>begin</b> - <b>if</b> <b>not</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_38">To</A>'Valid <b>then</b> - <b>raise</b> Constraint_Error; - <b>end</b> <b>if</b>; - -- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_24">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_198_7">Y1</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_200_7">X</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1245_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_24">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_198_7">Y1</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_200_7">X</A>); - <b>pragma</b> Unreferenced (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_200_7">X</A>); - <A HREF="terminal_interface-curses-text_io__adb.htm#ref_201_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_38">To</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#ref_201_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#ref_201_7">N</A> - 1; - <A HREF="terminal_interface-curses-text_io__adb.htm#ref_199_7">Y2</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_201_7">N</A>); -@@ -222,119 +234,119 @@ - <b>end</b> <b>if</b>; - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_14">Set_Line</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_220_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_96_14">Set_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_220_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_96_24">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_220_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_96_14">Set_Line</A></span> (<span class="symbol"><A NAME="ref_220_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_96_24">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_14">Set_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_96_24">To</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_96_14">Set_Line</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_226_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_98_13">Col</A></FONT> (<FONT COLOR=red><A NAME="ref_226_18" HREF="terminal_interface-curses-text_io__ads.htm#ref_98_18">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_226_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_98_13">Col</A></span> (<span class="symbol"><A NAME="ref_226_18" HREF="terminal_interface-curses-text_io__ads.htm#ref_98_18">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_228_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_229_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_230_7">N</A></FONT> : Natural; -+ <span class="symbol"><A NAME="ref_228_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_229_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_230_7">N</A></span> : Natural; - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_98_18">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_228_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_229_7">X</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1245_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_98_18">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_228_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_229_7">X</A>); - <A HREF="terminal_interface-curses-text_io__adb.htm#ref_230_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_229_7">X</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#ref_230_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#ref_230_7">N</A> + 1; -- <FONT COLOR=green><EM>-- if N &gt; Natural (Count'Last) then</EM></FONT> -- <FONT COLOR=green><EM>-- raise Layout_Error;</EM></FONT> -- <FONT COLOR=green><EM>-- end if;</EM></FONT> -+ <span class="comment"><EM>-- if N &gt; Natural (Count'Last) then</EM></span> -+ <span class="comment"><EM>-- raise Layout_Error;</EM></span> -+ <span class="comment"><EM>-- end if;</EM></span> - <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_230_7">N</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_98_13">Col</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_240_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_99_13">Col</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_240_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_99_13">Col</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> - <b>is</b> - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_98_13">Col</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_99_13">Col</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_246_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_101_13">Line</A></FONT> (<FONT COLOR=red><A NAME="ref_246_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_101_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_246_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_101_13">Line</A></span> (<span class="symbol"><A NAME="ref_246_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_101_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> - <b>is</b> -- <FONT COLOR=red><A NAME="ref_248_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_249_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_250_7">N</A></FONT> : Natural; -+ <span class="symbol"><A NAME="ref_248_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_249_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_250_7">N</A></span> : Natural; - <b>begin</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_101_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_248_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_249_7">X</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1245_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_101_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_248_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_249_7">X</A>); - <A HREF="terminal_interface-curses-text_io__adb.htm#ref_250_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_248_7">Y</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#ref_250_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#ref_250_7">N</A> + 1; -- <FONT COLOR=green><EM>-- if N &gt; Natural (Count'Last) then</EM></FONT> -- <FONT COLOR=green><EM>-- raise Layout_Error;</EM></FONT> -- <FONT COLOR=green><EM>-- end if;</EM></FONT> -+ <span class="comment"><EM>-- if N &gt; Natural (Count'Last) then</EM></span> -+ <span class="comment"><EM>-- raise Layout_Error;</EM></span> -+ <span class="comment"><EM>-- end if;</EM></span> - <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_250_7">N</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_101_13">Line</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_260_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_102_13">Line</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> -+ <b>function</b> <span class="symbol"><A NAME="ref_260_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_102_13">Line</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> - <b>is</b> - <b>begin</b> - <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_101_13">Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_102_13">Line</A>; - -- <FONT COLOR=green><EM>-----------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Characters Output --</EM></FONT> -- <FONT COLOR=green><EM>-----------------------</EM></FONT> -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_270_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_270_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_270_34" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_34">Item</A></FONT> : Character) -- <b>is</b> -- <FONT COLOR=red><A NAME="ref_272_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>); -- <FONT COLOR=red><A NAME="ref_273_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_274_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_275_7">L</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_276_7">C</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="comment"><EM>-----------------------</EM></span> -+ <span class="comment"><EM>-- Characters Output --</EM></span> -+ <span class="comment"><EM>-----------------------</EM></span> -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_270_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A></span> (<span class="symbol"><A NAME="ref_270_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_270_34" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_34">Item</A></span> : Character) -+ <b>is</b> -+ <span class="symbol"><A NAME="ref_272_7">P_Size</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>); -+ <span class="symbol"><A NAME="ref_273_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_274_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_275_7">L</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_276_7">C</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_272_7">P_Size</A> &gt; 0 <b>then</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_273_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_274_7">X</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_275_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_276_7">C</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1245_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_273_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_274_7">X</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1229_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_275_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_276_7">C</A>); - <b>if</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_273_7">Y</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#ref_275_7">L</A> <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_274_7">X</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#ref_276_7">C</A> <b>then</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>); - <b>end</b> <b>if</b>; - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses__ads.htm#ref_530_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_34">Item</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_529_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_34">Item</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_288_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_109_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_288_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_109_19">Item</A></FONT> : Character) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_288_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_109_14">Put</A></span> (<span class="symbol"><A NAME="ref_288_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_109_19">Item</A></span> : Character) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_109_19">Item</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_109_14">Put</A>; - -- <FONT COLOR=green><EM>--------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Strings-Output --</EM></FONT> -- <FONT COLOR=green><EM>--------------------</EM></FONT> -- -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_298_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_298_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_298_34" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_34">Item</A></FONT> : String) -- <b>is</b> -- <FONT COLOR=red><A NAME="ref_300_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>); -- <FONT COLOR=red><A NAME="ref_301_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_302_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -- <FONT COLOR=red><A NAME="ref_303_7">L</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_304_7">C</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="comment"><EM>--------------------</EM></span> -+ <span class="comment"><EM>-- Strings-Output --</EM></span> -+ <span class="comment"><EM>--------------------</EM></span> -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_298_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A></span> (<span class="symbol"><A NAME="ref_298_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_298_34" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_34">Item</A></span> : String) -+ <b>is</b> -+ <span class="symbol"><A NAME="ref_300_7">P_Size</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>); -+ <span class="symbol"><A NAME="ref_301_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_302_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_303_7">L</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_304_7">C</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_300_7">P_Size</A> &gt; 0 <b>then</b> -- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_301_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_302_7">X</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_303_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_304_7">C</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1245_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_301_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_302_7">X</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1229_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_303_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_304_7">C</A>); - <b>if</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_301_7">Y</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#ref_303_7">L</A> <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_302_7">X</A> + 1 + <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_34">Item</A>'Length) &gt;= <A HREF="terminal_interface-curses-text_io__adb.htm#ref_304_7">C</A> <b>then</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>); - <b>end</b> <b>if</b>; - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses__ads.htm#ref_655_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_34">Item</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_654_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_34">Item</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_316_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_116_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_316_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_116_19">Item</A></FONT> : String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_316_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_116_14">Put</A></span> (<span class="symbol"><A NAME="ref_316_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_116_19">Item</A></span> : String) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_116_19">Item</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_116_14">Put</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_322_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_118_14">Put_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_323_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_119_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_324_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_120_7">Item</A></FONT> : String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_322_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_118_14">Put_Line</A></span> -+ (<span class="symbol"><A NAME="ref_323_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_119_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_324_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_120_7">Item</A></span> : String) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_119_7">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_120_7">Item</A>); - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_119_7">Win</A>, 1); - <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_118_14">Put_Line</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_331_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_122_14">Put_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_332_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_123_7">Item</A></FONT> : String) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_331_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_122_14">Put_Line</A></span> -+ (<span class="symbol"><A NAME="ref_332_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_123_7">Item</A></span> : String) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_118_14">Put_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_123_7">Item</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io__ads.htm 2011-03-26 22:54:30.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io__ads.htm 2014-09-01 16:33:22.304792036 +0200 -@@ -1,142 +1,154 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.14 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.14 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Text_IO; - <b>with</b> Ada.IO_Exceptions; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_44_35" HREF="terminal_interface-curses-text_io__adb.htm#ref_42_40">Text_IO</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_44_35" HREF="terminal_interface-curses-text_io__adb.htm#ref_42_40">Text_IO</A></span> <b>is</b> - - <b>use</b> <b>type</b> Ada.Text_IO.Count; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_47_12">Count</A></FONT> <b>is</b> Ada.Text_IO.Count; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_48_12">Positive_Count</A></FONT> <b>is</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>'Last; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_47_12">Count</A></span> <b>is</b> Ada.Text_IO.Count; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_48_12">Positive_Count</A></span> <b>is</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>'Last; - -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_50_12">Field</A></FONT> <b>is</b> Ada.Text_IO.Field; -- <b>subtype</b> <FONT COLOR=red><A NAME="ref_51_12">Number_Base</A></FONT> <b>is</b> Integer <b>range</b> 2 .. 16; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_50_12">Field</A></span> <b>is</b> Ada.Text_IO.Field; -+ <b>subtype</b> <span class="symbol"><A NAME="ref_51_12">Number_Base</A></span> <b>is</b> Integer <b>range</b> 2 .. 16; - -- <b>type</b> <FONT COLOR=red><A NAME="ref_53_9">Type_Set</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_53_22">Lower_Case</A></FONT>, <FONT COLOR=red><A NAME="ref_53_34">Upper_Case</A></FONT>, <FONT COLOR=red><A NAME="ref_53_46">Mixed_Case</A></FONT>); -+ <b>type</b> <span class="symbol"><A NAME="ref_53_9">Type_Set</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_53_22">Lower_Case</A></span>, <span class="symbol"><A NAME="ref_53_34">Upper_Case</A></span>, <span class="symbol"><A NAME="ref_53_46">Mixed_Case</A></span>); - -- <FONT COLOR=green><EM>-- For most of the routines you will see a version without a Window</EM></FONT> -- <FONT COLOR=green><EM>-- type parameter. They will operate on a default window, which can</EM></FONT> -- <FONT COLOR=green><EM>-- be set by the user. It is initially equal to Standard_Window.</EM></FONT> -+ <span class="comment"><EM>-- For most of the routines you will see a version without a Window</EM></span> -+ <span class="comment"><EM>-- type parameter. They will operate on a default window, which can</EM></span> -+ <span class="comment"><EM>-- be set by the user. It is initially equal to Standard_Window.</EM></span> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_46_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_59_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_46_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <FONT COLOR=green><EM>-- Set Win as the default window</EM></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_46_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_59_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_46_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <span class="comment"><EM>-- Set Win as the default window</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_62_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_52_13">Get_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=green><EM>-- Get the current default window</EM></FONT> -+ <b>function</b> <span class="symbol"><A NAME="ref_62_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_52_13">Get_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="comment"><EM>-- Get the current default window</EM></span> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_65_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_63_14">Flush</A></FONT> (<FONT COLOR=red><A NAME="ref_65_21" HREF="terminal_interface-curses-text_io__adb.htm#ref_63_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_69_14">Flush</A></FONT>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_65_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_63_14">Flush</A></span> (<span class="symbol"><A NAME="ref_65_21" HREF="terminal_interface-curses-text_io__adb.htm#ref_63_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_69_14">Flush</A></span>; - -- <FONT COLOR=green><EM>--------------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Specification of line and page lengths --</EM></FONT> -- <FONT COLOR=green><EM>--------------------------------------------</EM></FONT> -+ <span class="comment"><EM>--------------------------------------------</EM></span> -+ <span class="comment"><EM>-- Specification of line and page lengths --</EM></span> -+ <span class="comment"><EM>--------------------------------------------</EM></span> - -- <FONT COLOR=green><EM>-- There are no set routines in this package. I assume, that you allocate</EM></FONT> -- <FONT COLOR=green><EM>-- the window with an appropriate size.</EM></FONT> -- <FONT COLOR=green><EM>-- A scroll-window is interpreted as an page with unbounded page length,</EM></FONT> -- <FONT COLOR=green><EM>-- i.e. it returns the conventional 0 as page length.</EM></FONT> -+ <span class="comment"><EM>-- There are no set routines in this package. I assume, that you allocate</EM></span> -+ <span class="comment"><EM>-- the window with an appropriate size.</EM></span> -+ <span class="comment"><EM>-- A scroll-window is interpreted as an page with unbounded page length,</EM></span> -+ <span class="comment"><EM>-- i.e. it returns the conventional 0 as page length.</EM></span> - -- <b>function</b> <FONT COLOR=red><A NAME="ref_77_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_84_13">Line_Length</A></FONT> (<FONT COLOR=red><A NAME="ref_77_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_84_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_78_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_96_13">Line_Length</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_77_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_84_13">Line_Length</A></span> (<span class="symbol"><A NAME="ref_77_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_84_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_78_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_96_13">Line_Length</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_80_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_102_13">Page_Length</A></FONT> (<FONT COLOR=red><A NAME="ref_80_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_102_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_81_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_118_13">Page_Length</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_80_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_102_13">Page_Length</A></span> (<span class="symbol"><A NAME="ref_80_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_102_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_81_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_118_13">Page_Length</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>; - -- <FONT COLOR=green><EM>------------------------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Column, Line, and Page Control --</EM></FONT> -- <FONT COLOR=green><EM>------------------------------------</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_86_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_14">New_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_86_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_86_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_38">Spacing</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1); -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_87_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_144_14">New_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_87_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_144_24">Spacing</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1); -+ <span class="comment"><EM>------------------------------------</EM></span> -+ <span class="comment"><EM>-- Column, Line, and Page Control --</EM></span> -+ <span class="comment"><EM>------------------------------------</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_86_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_14">New_Line</A></span> (<span class="symbol"><A NAME="ref_86_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_86_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_38">Spacing</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_87_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_144_14">New_Line</A></span> (<span class="symbol"><A NAME="ref_87_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_144_24">Spacing</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_89_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_150_14">New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_89_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_150_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_90_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_156_14">New_Page</A></FONT>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_89_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_150_14">New_Page</A></span> (<span class="symbol"><A NAME="ref_89_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_150_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_90_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_156_14">New_Page</A></span>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_92_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_14">Set_Col</A></FONT> (<FONT COLOR=red><A NAME="ref_92_23" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_92_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_38">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>); -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_93_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_190_14">Set_Col</A></FONT> (<FONT COLOR=red><A NAME="ref_93_23" HREF="terminal_interface-curses-text_io__adb.htm#ref_190_23">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_92_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_14">Set_Col</A></span> (<span class="symbol"><A NAME="ref_92_23" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_92_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_38">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_93_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_190_14">Set_Col</A></span> (<span class="symbol"><A NAME="ref_93_23" HREF="terminal_interface-curses-text_io__adb.htm#ref_190_23">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_95_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_14">Set_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_95_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_95_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_38">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>); -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_96_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_220_14">Set_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_96_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_220_24">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_95_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_14">Set_Line</A></span> (<span class="symbol"><A NAME="ref_95_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_95_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_38">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_96_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_220_14">Set_Line</A></span> (<span class="symbol"><A NAME="ref_96_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_220_24">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>); - -- <b>function</b> <FONT COLOR=red><A NAME="ref_98_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_226_13">Col</A></FONT> (<FONT COLOR=red><A NAME="ref_98_18" HREF="terminal_interface-curses-text_io__adb.htm#ref_226_18">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_99_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_240_13">Col</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_98_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_226_13">Col</A></span> (<span class="symbol"><A NAME="ref_98_18" HREF="terminal_interface-curses-text_io__adb.htm#ref_226_18">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_99_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_240_13">Col</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>; - -- <b>function</b> <FONT COLOR=red><A NAME="ref_101_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_246_13">Line</A></FONT> (<FONT COLOR=red><A NAME="ref_101_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_246_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>; -- <b>function</b> <FONT COLOR=red><A NAME="ref_102_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_260_13">Line</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_101_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_246_13">Line</A></span> (<span class="symbol"><A NAME="ref_101_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_246_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>; -+ <b>function</b> <span class="symbol"><A NAME="ref_102_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_260_13">Line</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>; - -- <FONT COLOR=green><EM>-----------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Characters-Output --</EM></FONT> -- <FONT COLOR=green><EM>-----------------------</EM></FONT> -+ <span class="comment"><EM>-----------------------</EM></span> -+ <span class="comment"><EM>-- Characters-Output --</EM></span> -+ <span class="comment"><EM>-----------------------</EM></span> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_108_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_108_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_108_34" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_34">Item</A></FONT> : Character); -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_109_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_288_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_109_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_288_19">Item</A></FONT> : Character); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_108_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_14">Put</A></span> (<span class="symbol"><A NAME="ref_108_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_108_34" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_34">Item</A></span> : Character); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_109_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_288_14">Put</A></span> (<span class="symbol"><A NAME="ref_109_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_288_19">Item</A></span> : Character); - -- <FONT COLOR=green><EM>--------------------</EM></FONT> -- <FONT COLOR=green><EM>-- Strings-Output --</EM></FONT> -- <FONT COLOR=green><EM>--------------------</EM></FONT> -+ <span class="comment"><EM>--------------------</EM></span> -+ <span class="comment"><EM>-- Strings-Output --</EM></span> -+ <span class="comment"><EM>--------------------</EM></span> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_115_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_115_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_115_34" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_34">Item</A></FONT> : String); -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_116_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_316_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_116_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_316_19">Item</A></FONT> : String); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_115_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_14">Put</A></span> (<span class="symbol"><A NAME="ref_115_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="symbol"><A NAME="ref_115_34" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_34">Item</A></span> : String); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_116_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_316_14">Put</A></span> (<span class="symbol"><A NAME="ref_116_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_316_19">Item</A></span> : String); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_118_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_322_14">Put_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_119_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_323_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_120_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_324_7">Item</A></FONT> : String); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_118_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_322_14">Put_Line</A></span> -+ (<span class="symbol"><A NAME="ref_119_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_323_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_120_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_324_7">Item</A></span> : String); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_122_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_331_14">Put_Line</A></FONT> -- (<FONT COLOR=red><A NAME="ref_123_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_332_7">Item</A></FONT> : String); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_122_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_331_14">Put_Line</A></span> -+ (<span class="symbol"><A NAME="ref_123_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_332_7">Item</A></span> : String); - -- <FONT COLOR=green><EM>-- Exceptions</EM></FONT> -+ <span class="comment"><EM>-- Exceptions</EM></span> - -- <FONT COLOR=red><A NAME="ref_127_4">Status_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Status_Error; -- <FONT COLOR=red><A NAME="ref_128_4">Mode_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Mode_Error; -- <FONT COLOR=red><A NAME="ref_129_4">Name_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Name_Error; -- <FONT COLOR=red><A NAME="ref_130_4">Use_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Use_Error; -- <FONT COLOR=red><A NAME="ref_131_4">Device_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Device_Error; -- <FONT COLOR=red><A NAME="ref_132_4">End_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.End_Error; -- <FONT COLOR=red><A NAME="ref_133_4">Data_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Data_Error; -- <FONT COLOR=red><A NAME="ref_134_4">Layout_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Layout_Error; -+ <span class="symbol"><A NAME="ref_127_4">Status_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Status_Error; -+ <span class="symbol"><A NAME="ref_128_4">Mode_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Mode_Error; -+ <span class="symbol"><A NAME="ref_129_4">Name_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Name_Error; -+ <span class="symbol"><A NAME="ref_130_4">Use_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Use_Error; -+ <span class="symbol"><A NAME="ref_131_4">Device_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Device_Error; -+ <span class="symbol"><A NAME="ref_132_4">End_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.End_Error; -+ <span class="symbol"><A NAME="ref_133_4">Data_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Data_Error; -+ <span class="symbol"><A NAME="ref_134_4">Layout_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Layout_Error; - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm 2011-03-20 00:18:41.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm 2014-09-01 16:33:22.299792028 +0200 -@@ -1,69 +1,81 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-aux.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-aux.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-aux.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-aux.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Aux --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.13 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_42_48" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A></FONT> <b>is</b> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Aux --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.13 @</EM></span> -+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_42_48" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A></span> <b>is</b> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_44_14" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A></FONT> -- (<FONT COLOR=red><A NAME="ref_45_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_46_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A></FONT> : String; -- <FONT COLOR=red><A NAME="ref_47_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_51_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>; -- <FONT COLOR=red><A NAME="ref_48_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_52_7">Signal</A></FONT> : Boolean := True; -- <FONT COLOR=red><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_53_7">Ljust</A></FONT> : Boolean := False) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_44_14" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A></span> -+ (<span class="symbol"><A NAME="ref_45_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_46_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A></span> : String; -+ <span class="symbol"><A NAME="ref_47_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_51_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>; -+ <span class="symbol"><A NAME="ref_48_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_52_7">Signal</A></span> : Boolean := True; -+ <span class="symbol"><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_53_7">Ljust</A></span> : Boolean := False) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_51_7">L</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>; -- <FONT COLOR=red><A NAME="ref_52_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>; -- <FONT COLOR=red><A NAME="ref_53_7">W</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_51_7">Width</A>; -- <FONT COLOR=red><A NAME="ref_54_7">LC</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -- <FONT COLOR=red><A NAME="ref_55_7">CC</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -- <FONT COLOR=red><A NAME="ref_56_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -- <FONT COLOR=red><A NAME="ref_57_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; -+ <span class="symbol"><A NAME="ref_51_7">L</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>; -+ <span class="symbol"><A NAME="ref_52_7">Len</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>; -+ <span class="symbol"><A NAME="ref_53_7">W</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_51_7">Width</A>; -+ <span class="symbol"><A NAME="ref_54_7">LC</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>; -+ <span class="symbol"><A NAME="ref_55_7">CC</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>; -+ <span class="symbol"><A NAME="ref_56_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; -+ <span class="symbol"><A NAME="ref_57_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_17" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_17">Output</A></FONT> (<FONT COLOR=red><A NAME="ref_59_25" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_25">From</A></FONT>, <FONT COLOR=red><A NAME="ref_59_31" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_31">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_17" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_17">Output</A></span> (<span class="symbol"><A NAME="ref_59_25" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_25">From</A></span>, <span class="symbol"><A NAME="ref_59_31" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_31">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_61_17" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_17">Output</A></FONT> (<FONT COLOR=red><A NAME="ref_61_25" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_25">From</A></FONT>, <FONT COLOR=red><A NAME="ref_61_31" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_31">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_61_17" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_17">Output</A></span> (<span class="symbol"><A NAME="ref_61_25" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_25">From</A></span>, <span class="symbol"><A NAME="ref_61_31" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_31">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>) - <b>is</b> - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> &gt; 0 <b>then</b> -@@ -71,12 +83,12 @@ - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>; - <b>end</b> <b>if</b>; - <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> <b>then</b> -- <FONT COLOR=green><EM>-- LRM A10.6 (7) says this</EM></FONT> -+ <span class="comment"><EM>-- LRM A10.6 (7) says this</EM></span> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>; - <b>end</b> <b>if</b>; - - <b>pragma</b> Assert (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> &lt;= <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A>); -- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_54_7">LC</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_55_7">CC</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1229_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_54_7">LC</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_55_7">CC</A>); - <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>) &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_55_7">CC</A> <b>then</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_52_7">Signal</A> <b>then</b> - <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_134_4">Layout_Error</A>; -@@ -86,20 +98,20 @@ - <b>else</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> &lt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> <b>and</b> <b>then</b> <b>not</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_53_7">Ljust</A> <b>then</b> - <b>declare</b> -- <FONT COLOR=red><A NAME="ref_84_22">Filler</A></FONT> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>)) -+ <span class="symbol"><A NAME="ref_84_22">Filler</A></span> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>)) - := (<b>others</b> =&gt; ' '); - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_84_22">Filler</A>); - <b>end</b>; - <b>end</b> <b>if</b>; -- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_56_7">Y</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_57_7">X</A>); -+ <A HREF="terminal_interface-curses__ads.htm#ref_1245_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_56_7">Y</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_57_7">X</A>); - <b>if</b> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_57_7">X</A> + <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>)) &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_55_7">CC</A> <b>then</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>); - <b>end</b> <b>if</b>; - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_25">From</A> .. <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_31">To</A>)); - <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> &lt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_53_7">Ljust</A> <b>then</b> - <b>declare</b> -- <FONT COLOR=red><A NAME="ref_97_22">Filler</A></FONT> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>)) -+ <span class="symbol"><A NAME="ref_97_22">Filler</A></span> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>)) - := (<b>others</b> =&gt; ' '); - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_97_22">Filler</A>); -@@ -113,15 +125,15 @@ - <b>pragma</b> Assert (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A> /= <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A>); - <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_53_7">Ljust</A> <b>then</b> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> := 1; -- <b>for</b> <FONT COLOR=red><A NAME="ref_111_14">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A>'Length <b>loop</b> -+ <b>for</b> <span class="symbol"><A NAME="ref_111_14">I</A></span> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A>'Length <b>loop</b> - <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A>) = ' '; - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> + 1; - <b>end</b> <b>loop</b>; - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> - 1; - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_17">Output</A> (1, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>); -- <b>else</b> <FONT COLOR=green><EM>-- input buffer is not left justified</EM></FONT> -+ <b>else</b> <span class="comment"><EM>-- input buffer is not left justified</EM></span> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A>'Length; -- <b>for</b> <FONT COLOR=red><A NAME="ref_119_14">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A>'Length <b>loop</b> -+ <b>for</b> <span class="symbol"><A NAME="ref_119_14">I</A></span> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A>'Length <b>loop</b> - <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A>) = ' '; - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> - 1; - <b>end</b> <b>loop</b>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-aux__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-aux__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-aux__ads.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-aux__ads.htm 2014-09-01 16:33:22.299792028 +0200 -@@ -1,61 +1,73 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-aux.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-aux.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-aux.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-aux.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Aux --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.14 @</EM></FONT> --<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<b>private</b> <b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_42_51" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_42_48">Aux</A></FONT> <b>is</b> -- <FONT COLOR=green><EM>-- pragma Preelaborate (Aux);</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Aux --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.14 @</EM></span> -+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>private</b> <b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_42_51" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_42_48">Aux</A></span> <b>is</b> -+ <span class="comment"><EM>-- pragma Preelaborate (Aux);</EM></span> - -- <FONT COLOR=green><EM>-- This routine is called from the Text_IO output routines for numeric</EM></FONT> -- <FONT COLOR=green><EM>-- and enumeration types.</EM></FONT> -- <FONT COLOR=green><EM>--</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_48_14" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_44_14">Put_Buf</A></FONT> -- (<FONT COLOR=red><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_45_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=green><EM>-- The output window</EM></FONT> -- <FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_46_7">Buf</A></FONT> : String; <FONT COLOR=green><EM>-- The buffer containing the text</EM></FONT> -- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_47_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>; <FONT COLOR=green><EM>-- The width of the output field</EM></FONT> -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_48_7">Signal</A></FONT> : Boolean := True; <FONT COLOR=green><EM>-- If true, we raise Layout_Error</EM></FONT> -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_49_7">Ljust</A></FONT> : Boolean := False); <FONT COLOR=green><EM>-- The Buf is left justified</EM></FONT> -+ <span class="comment"><EM>-- This routine is called from the Text_IO output routines for numeric</EM></span> -+ <span class="comment"><EM>-- and enumeration types.</EM></span> -+ <span class="comment"><EM>--</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_48_14" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_44_14">Put_Buf</A></span> -+ (<span class="symbol"><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_45_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <span class="comment"><EM>-- The output window</EM></span> -+ <span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_46_7">Buf</A></span> : String; <span class="comment"><EM>-- The buffer containing the text</EM></span> -+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_47_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>; <span class="comment"><EM>-- The width of the output field</EM></span> -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_48_7">Signal</A></span> : Boolean := True; <span class="comment"><EM>-- If true, we raise Layout_Error</EM></span> -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_49_7">Ljust</A></span> : Boolean := False); <span class="comment"><EM>-- The Buf is left justified</EM></span> - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-complex_io__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-complex_io__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-complex_io__adb.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-complex_io__adb.htm 2014-09-01 16:33:22.299792028 +0200 -@@ -1,61 +1,73 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-complex_io.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-complex_io.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-complex_io.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-complex_io.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Complex_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Complex_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_43_48" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_46_43">Complex_IO</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_43_48" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_46_43">Complex_IO</A></span> <b>is</b> - - <b>package</b> FIO <b>is</b> <b>new</b> - <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A> (Complex_Types.Real'Base); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_48_14" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_55_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_48_14" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_55_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - Item : Complex; -- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_57_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_58_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_59_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>) -+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_57_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_58_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_59_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_55_7">Win</A>, '('); -@@ -65,11 +77,11 @@ - <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_55_7">Win</A>, ')'); - <b>end</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14">Put</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_63_14" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_61_14">Put</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_63_14" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_61_14">Put</A></span> - (Item : Complex; -- <FONT COLOR=red><A NAME="ref_65_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_63_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_66_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_64_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_65_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>) -+ <span class="symbol"><A NAME="ref_65_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_63_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_66_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_64_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_65_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, Item, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_63_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_64_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_65_7">Exp</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-complex_io__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-complex_io__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-complex_io__ads.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-complex_io__ads.htm 2014-09-01 16:33:22.299792028 +0200 -@@ -1,73 +1,85 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-complex_io.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-complex_io.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-complex_io.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-complex_io.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Complex_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Complex_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Numerics.Generic_Complex_Types; - - <b>generic</b> - <b>with</b> <b>package</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_46_43">Complex_Types</A> <b>is</b> <b>new</b> Ada.Numerics.Generic_Complex_Types (&lt;&gt;); - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_46_43" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_43_48">Complex_IO</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_46_43" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_43_48">Complex_IO</A></span> <b>is</b> - - <b>use</b> Complex_Types; - -- <FONT COLOR=red><A NAME="ref_50_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 2; -- <FONT COLOR=red><A NAME="ref_51_4">Default_Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := Real'<b>Digits</b> - 1; -- <FONT COLOR=red><A NAME="ref_52_4">Default_Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 3; -+ <span class="symbol"><A NAME="ref_50_4">Default_Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 2; -+ <span class="symbol"><A NAME="ref_51_4">Default_Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := Real'<b>Digits</b> - 1; -+ <span class="symbol"><A NAME="ref_52_4">Default_Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 3; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_54_14" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_48_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_49_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <b>procedure</b> <span class="symbol"><A NAME="ref_54_14" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_48_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_49_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; - <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14">Item</A> : Complex; -- <FONT COLOR=red><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_51_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_52_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_53_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>); -+ <span class="symbol"><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_51_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_52_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_53_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_63_14">Put</A></FONT> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_63_14">Put</A></span> - (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_61_14">Item</A> : Complex; -- <FONT COLOR=red><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_65_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_66_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_65_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_67_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>); -+ <span class="symbol"><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_65_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_66_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_65_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_67_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>); - - <b>private</b> - <b>pragma</b> Inline (Put); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-decimal_io__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-decimal_io__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-decimal_io__adb.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-decimal_io__adb.htm 2014-09-01 16:33:22.300792030 +0200 -@@ -1,65 +1,77 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-decimal_io.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-decimal_io.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-decimal_io.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-decimal_io.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Decimal_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Decimal_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Text_IO; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Decimal_IO</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Decimal_IO</A></span> <b>is</b> - -- <b>package</b> <FONT COLOR=red><A NAME="ref_46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; -+ <b>package</b> <span class="symbol"><A NAME="ref_46_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - <b>package</b> DIO <b>is</b> <b>new</b> Ada.Text_IO.Decimal_IO (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_50_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_51_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_52_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_53_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_54_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_55_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_50_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_51_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_52_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_53_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_54_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_55_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); -- <FONT COLOR=red><A NAME="ref_57_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_54_7">Aft</A>; -+ <span class="symbol"><A NAME="ref_56_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); -+ <span class="symbol"><A NAME="ref_57_7">Len</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_54_7">Aft</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_55_7">Exp</A> &gt; 0 <b>then</b> - <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_57_7">Len</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_57_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_55_7">Exp</A>; -@@ -68,11 +80,11 @@ - <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_57_7">Len</A>, False); - <b>end</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_50_14">Put</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_57_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_58_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_59_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_60_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_61_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>) <b>is</b> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_57_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_58_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_59_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_60_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_61_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>) <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_58_7">Item</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_59_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_60_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_61_7">Exp</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_57_14">Put</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-decimal_io__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-decimal_io__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-decimal_io__ads.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-decimal_io__ads.htm 2014-09-01 16:33:22.300792030 +0200 -@@ -1,69 +1,81 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-decimal_io.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-decimal_io.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-decimal_io.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-decimal_io.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Decimal_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Decimal_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Num</A></FONT> <b>is</b> <b>delta</b> &lt;&gt; <b>digits</b> &lt;&gt;; -+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Num</A></span> <b>is</b> <b>delta</b> &lt;&gt; <b>digits</b> &lt;&gt;; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_44_48">Decimal_IO</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_44_48">Decimal_IO</A></span> <b>is</b> - -- <FONT COLOR=red><A NAME="ref_46_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>'Fore; -- <FONT COLOR=red><A NAME="ref_47_4">Default_Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>'Aft; -- <FONT COLOR=red><A NAME="ref_48_4">Default_Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0; -+ <span class="symbol"><A NAME="ref_46_4">Default_Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>'Fore; -+ <span class="symbol"><A NAME="ref_47_4">Default_Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>'Aft; -+ <span class="symbol"><A NAME="ref_48_4">Default_Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_49_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_52_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_53_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_54_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_49_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_52_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_53_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_54_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_66_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_67_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_68_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_69_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_70_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_66_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_67_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_68_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_69_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_70_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>); - - <b>private</b> - <b>pragma</b> Inline (Put); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__adb.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__adb.htm 2014-09-01 16:33:22.300792030 +0200 -@@ -1,65 +1,77 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-enumeration_io.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-enumeration_io.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-enumeration_io.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-enumeration_io.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Enumeration_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Enumeration_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Text_IO; - <b>with</b> Ada.Characters.Handling; <b>use</b> Ada.Characters.Handling; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_45_48" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enumeration_IO</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_45_48" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enumeration_IO</A></span> <b>is</b> - -- <b>package</b> <FONT COLOR=red><A NAME="ref_47_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; -+ <b>package</b> <span class="symbol"><A NAME="ref_47_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - <b>package</b> EIO <b>is</b> <b>new</b> Ada.Text_IO.Enumeration_IO (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_49_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_52_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_53_7">Set</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_49_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_52_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_53_7">Set</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); -- <FONT COLOR=red><A NAME="ref_57_7">Tset</A></FONT> : Ada.Text_IO.Type_Set; -+ <span class="symbol"><A NAME="ref_56_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); -+ <span class="symbol"><A NAME="ref_57_7">Tset</A></span> : Ada.Text_IO.Type_Set; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_53_7">Set</A> /= <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_46">Mixed_Case</A> <b>then</b> - <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_57_7">Tset</A> := Ada.Text_IO.Type_Set'Val (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A>'Pos (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_53_7">Set</A>)); -@@ -73,10 +85,10 @@ - <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_47_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_50_7">Win</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_52_7">Width</A>, True, True); - <b>end</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_49_14">Put</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_71_14" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_55_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_72_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_56_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>; -- <FONT COLOR=red><A NAME="ref_73_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_57_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_74_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_58_7">Set</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_71_14" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_55_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_72_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_56_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>; -+ <span class="symbol"><A NAME="ref_73_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_57_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_74_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_58_7">Set</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_49_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_56_7">Item</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_57_7">Width</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_58_7">Set</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__ads.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__ads.htm 2014-09-01 16:33:22.301792031 +0200 -@@ -1,66 +1,78 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-enumeration_io.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-enumeration_io.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-enumeration_io.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-enumeration_io.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Enumeration_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Enumeration_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enum</A></FONT> <b>is</b> (&lt;&gt;); -+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enum</A></span> <b>is</b> (&lt;&gt;); - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_45_48">Enumeration_IO</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_45_48">Enumeration_IO</A></span> <b>is</b> - -- <FONT COLOR=red><A NAME="ref_46_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0; -- <FONT COLOR=red><A NAME="ref_47_4">Default_Setting</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_46">Mixed_Case</A>; -+ <span class="symbol"><A NAME="ref_46_4">Default_Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0; -+ <span class="symbol"><A NAME="ref_47_4">Default_Setting</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_46">Mixed_Case</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_50_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_51_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_52_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_53_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_54_7">Set</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_50_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_51_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_52_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_53_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_54_7">Set</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_71_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_72_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>; -- <FONT COLOR=red><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_73_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_74_7">Set</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_71_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_72_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>; -+ <span class="symbol"><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_73_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_74_7">Set</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>); - - <b>private</b> - <b>pragma</b> Inline (Put); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-fixed_io__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-fixed_io__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-fixed_io__adb.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-fixed_io__adb.htm 2014-09-01 16:33:22.301792031 +0200 -@@ -1,65 +1,77 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-fixed_io.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-fixed_io.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-fixed_io.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-fixed_io.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Fixed_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Fixed_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Text_IO; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Fixed_IO</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Fixed_IO</A></span> <b>is</b> - -- <b>package</b> <FONT COLOR=red><A NAME="ref_46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; -+ <b>package</b> <span class="symbol"><A NAME="ref_46_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - <b>package</b> FIXIO <b>is</b> <b>new</b> Ada.Text_IO.Fixed_IO (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_50_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_51_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_52_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_53_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_54_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_55_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_50_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_51_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_52_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_53_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_54_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_55_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); -- <FONT COLOR=red><A NAME="ref_57_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_54_7">Aft</A>; -+ <span class="symbol"><A NAME="ref_56_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); -+ <span class="symbol"><A NAME="ref_57_7">Len</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_54_7">Aft</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_55_7">Exp</A> &gt; 0 <b>then</b> - <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_57_7">Len</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_57_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_55_7">Exp</A>; -@@ -68,11 +80,11 @@ - <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_57_7">Len</A>, False); - <b>end</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_50_14">Put</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_57_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_58_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_59_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_60_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_61_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>) <b>is</b> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_57_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_58_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_59_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_60_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_61_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>) <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_58_7">Item</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_59_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_60_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_61_7">Exp</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_57_14">Put</A>; -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-fixed_io__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-fixed_io__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-fixed_io__ads.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-fixed_io__ads.htm 2014-09-01 16:33:22.301792031 +0200 -@@ -1,69 +1,81 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-fixed_io.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-fixed_io.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-fixed_io.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-fixed_io.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Fixed_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Fixed_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Num</A></FONT> <b>is</b> <b>delta</b> &lt;&gt;; -+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Num</A></span> <b>is</b> <b>delta</b> &lt;&gt;; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_44_48">Fixed_IO</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_44_48">Fixed_IO</A></span> <b>is</b> - -- <FONT COLOR=red><A NAME="ref_46_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>'Fore; -- <FONT COLOR=red><A NAME="ref_47_4">Default_Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>'Aft; -- <FONT COLOR=red><A NAME="ref_48_4">Default_Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0; -+ <span class="symbol"><A NAME="ref_46_4">Default_Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>'Fore; -+ <span class="symbol"><A NAME="ref_47_4">Default_Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>'Aft; -+ <span class="symbol"><A NAME="ref_48_4">Default_Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_49_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_52_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_53_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_54_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_49_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_52_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_53_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_54_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_66_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_67_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_68_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_69_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_70_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_66_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_67_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_68_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_69_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_70_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>); - - <b>private</b> - <b>pragma</b> Inline (Put); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-float_io__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-float_io__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-float_io__adb.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-float_io__adb.htm 2014-09-01 16:33:22.302792033 +0200 -@@ -1,65 +1,77 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-float_io.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-float_io.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-float_io.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-float_io.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Float_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Float_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Text_IO; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A></span> <b>is</b> - -- <b>package</b> <FONT COLOR=red><A NAME="ref_46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; -+ <b>package</b> <span class="symbol"><A NAME="ref_46_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - <b>package</b> FIO <b>is</b> <b>new</b> Ada.Text_IO.Float_IO (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_50_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_51_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_52_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_53_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_54_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_55_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_50_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_51_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_52_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_53_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_54_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_55_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); -- <FONT COLOR=red><A NAME="ref_57_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_54_7">Aft</A>; -+ <span class="symbol"><A NAME="ref_56_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); -+ <span class="symbol"><A NAME="ref_57_7">Len</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_54_7">Aft</A>; - <b>begin</b> - <b>if</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_55_7">Exp</A> &gt; 0 <b>then</b> - <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_57_7">Len</A> := <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_57_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_55_7">Exp</A>; -@@ -68,11 +80,11 @@ - <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_57_7">Len</A>, False); - <b>end</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_50_14">Put</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_57_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_58_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_59_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_60_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_61_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_57_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_58_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_59_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_60_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_61_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_58_7">Item</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_59_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_60_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_61_7">Exp</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-float_io__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-float_io__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-float_io__ads.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-float_io__ads.htm 2014-09-01 16:33:22.302792033 +0200 -@@ -1,69 +1,81 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-float_io.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-float_io.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-float_io.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-float_io.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Float_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Float_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Num</A></FONT> <b>is</b> <b>digits</b> &lt;&gt;; -+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Num</A></span> <b>is</b> <b>digits</b> &lt;&gt;; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_44_48">Float_IO</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_44_48">Float_IO</A></span> <b>is</b> - -- <FONT COLOR=red><A NAME="ref_46_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 2; -- <FONT COLOR=red><A NAME="ref_47_4">Default_Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>'<b>Digits</b> - 1; -- <FONT COLOR=red><A NAME="ref_48_4">Default_Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 3; -+ <span class="symbol"><A NAME="ref_46_4">Default_Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 2; -+ <span class="symbol"><A NAME="ref_47_4">Default_Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>'<b>Digits</b> - 1; -+ <span class="symbol"><A NAME="ref_48_4">Default_Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 3; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_49_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_52_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_53_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_54_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_49_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_52_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_53_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_54_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_66_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_67_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_68_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>; -- <FONT COLOR=red><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_69_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>; -- <FONT COLOR=red><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_70_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_66_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_67_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_68_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>; -+ <span class="symbol"><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_69_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>; -+ <span class="symbol"><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_70_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>); - - <b>private</b> - <b>pragma</b> Inline (Put); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-integer_io__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-integer_io__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-integer_io__adb.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-integer_io__adb.htm 2014-09-01 16:33:22.302792033 +0200 -@@ -1,72 +1,84 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-integer_io.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-integer_io.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-integer_io.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-integer_io.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Integer_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Integer_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Text_IO; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Integer_IO</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Integer_IO</A></span> <b>is</b> - -- <b>package</b> <FONT COLOR=red><A NAME="ref_46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; -+ <b>package</b> <span class="symbol"><A NAME="ref_46_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - <b>package</b> IIO <b>is</b> <b>new</b> Ada.Text_IO.Integer_IO (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_49_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_52_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_53_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_49_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_52_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_53_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_55_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); -+ <span class="symbol"><A NAME="ref_55_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); - <b>begin</b> - IIO.Put (<A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_51_7">Item</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_53_7">Base</A>); - <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_50_7">Win</A>, <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_52_7">Width</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_49_14">Put</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_55_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_62_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_56_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_57_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_58_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_55_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_62_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_56_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_57_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_58_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_49_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_56_7">Item</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_57_7">Width</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_58_7">Base</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-integer_io__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-integer_io__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-integer_io__ads.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-integer_io__ads.htm 2014-09-01 16:33:22.302792033 +0200 -@@ -1,66 +1,78 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-integer_io.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-integer_io.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-integer_io.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-integer_io.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Integer_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Integer_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Num</A></FONT> <b>is</b> <b>range</b> &lt;&gt;; -+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Num</A></span> <b>is</b> <b>range</b> &lt;&gt;; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_44_48">Integer_IO</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_44_48">Integer_IO</A></span> <b>is</b> - -- <FONT COLOR=red><A NAME="ref_46_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>'Width; -- <FONT COLOR=red><A NAME="ref_47_4">Default_Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := 10; -+ <span class="symbol"><A NAME="ref_46_4">Default_Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>'Width; -+ <span class="symbol"><A NAME="ref_47_4">Default_Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := 10; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_49_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_52_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_53_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_49_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_52_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_53_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_61_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_62_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_63_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_64_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_61_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_62_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_63_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_64_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>); - - <b>private</b> - <b>pragma</b> Inline (Put); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-modular_io__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-modular_io__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-modular_io__adb.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-modular_io__adb.htm 2014-09-01 16:33:22.303792034 +0200 -@@ -1,72 +1,84 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-modular_io.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-modular_io.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-modular_io.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-modular_io.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Modular_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Modular_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.11 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>with</b> Ada.Text_IO; - <b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Modular_IO</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Modular_IO</A></span> <b>is</b> - -- <b>package</b> <FONT COLOR=red><A NAME="ref_46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; -+ <b>package</b> <span class="symbol"><A NAME="ref_46_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>; - <b>package</b> MIO <b>is</b> <b>new</b> Ada.Text_IO.Modular_IO (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_49_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_52_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_53_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_49_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_52_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_53_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>) - <b>is</b> -- <FONT COLOR=red><A NAME="ref_55_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); -+ <span class="symbol"><A NAME="ref_55_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last); - <b>begin</b> - MIO.Put (<A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_51_7">Item</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_53_7">Base</A>); - <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_50_7">Win</A>, <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_52_7">Width</A>); - <b>end</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_49_14">Put</A>; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_55_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_62_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_56_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_57_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_58_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>) -+ <b>procedure</b> <span class="symbol"><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_55_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_62_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_56_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_57_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_58_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>) - <b>is</b> - <b>begin</b> - <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_49_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_56_7">Item</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_57_7">Width</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_58_7">Base</A>); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-modular_io__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-modular_io__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-modular_io__ads.htm 2010-01-09 21:31:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-text_io-modular_io__ads.htm 2014-09-01 16:33:22.303792034 +0200 -@@ -1,66 +1,78 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-text_io-modular_io.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-text_io-modular_io.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-modular_io.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-modular_io.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Modular_IO --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Modular_IO --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.12 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - <b>generic</b> -- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Num</A></FONT> <b>is</b> <b>mod</b> &lt;&gt;; -+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Num</A></span> <b>is</b> <b>mod</b> &lt;&gt;; - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_44_48">Modular_IO</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_44_48">Modular_IO</A></span> <b>is</b> - -- <FONT COLOR=red><A NAME="ref_46_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>'Width; -- <FONT COLOR=red><A NAME="ref_47_4">Default_Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := 10; -+ <span class="symbol"><A NAME="ref_46_4">Default_Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>'Width; -+ <span class="symbol"><A NAME="ref_47_4">Default_Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := 10; - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_49_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_52_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_53_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_49_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; -+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_52_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_53_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>); - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_61_14">Put</A></FONT> -- (<FONT COLOR=red><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_62_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>; -- <FONT COLOR=red><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_63_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>; -- <FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_64_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_61_14">Put</A></span> -+ (<span class="symbol"><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_62_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>; -+ <span class="symbol"><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_63_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>; -+ <span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_64_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>); - - <b>private</b> - <b>pragma</b> Inline (Put); -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-trace__adb.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-trace__adb.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-trace__adb.htm 2011-03-20 00:18:42.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-trace__adb.htm 2014-09-01 16:33:22.305792038 +0200 -@@ -1,62 +1,95 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-trace.adb</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-trace.adb</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-trace.adb </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-trace.adb </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Trace --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- B O D Y --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 2000-2004,2009 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.7 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Trace --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- B O D Y --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 2000-2004,2009 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.7 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; -+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; -+<b>with</b> Ada.Unchecked_Conversion; - --<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_42_40" HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A></FONT> <b>is</b> -+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_45_40" HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A></span> <b>is</b> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_44_14" HREF="terminal_interface-curses-trace__ads.htm#ref_106_14">Trace_On</A></FONT> (<FONT COLOR=red><A NAME="ref_44_24" HREF="terminal_interface-curses-trace__ads.htm#ref_106_24">x</A></FONT> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>) <b>is</b> -- <b>pragma</b> Unreferenced (<A HREF="terminal_interface-curses-trace__ads.htm#ref_106_24">x</A>); -+ <b>type</b> <span class="symbol"><A NAME="ref_47_9">C_TraceType</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_59_12">C_UInt</A>; -+ -+ <b>function</b> TraceAda_To_TraceC <b>is</b> <b>new</b> -+ Ada.Unchecked_Conversion (Source =&gt; <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>, -+ Target =&gt; <A HREF="terminal_interface-curses-trace__adb.htm#ref_47_9">C_TraceType</A>); -+ -+ <b>procedure</b> <span class="symbol"><A NAME="ref_53_14" HREF="terminal_interface-curses-trace__ads.htm#ref_105_14">Trace_On</A></span> (<span class="symbol"><A NAME="ref_53_24" HREF="terminal_interface-curses-trace__ads.htm#ref_105_24">x</A></span> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>) <b>is</b> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_54_17">traceC</A></span> (<span class="symbol"><A NAME="ref_54_25" HREF="terminal_interface-curses-trace__adb.htm#ref_54_17">y</A></span> : <A HREF="terminal_interface-curses-trace__adb.htm#ref_47_9">C_TraceType</A>); -+ <b>pragma</b> Import (C, traceC, "trace"); - <b>begin</b> -- <b>null</b>; -- <b>end</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_106_14">Trace_On</A>; -+ <A HREF="terminal_interface-curses-trace__adb.htm#ref_54_17">traceC</A> (TraceAda_To_TraceC (<A HREF="terminal_interface-curses-trace__ads.htm#ref_105_24">x</A>)); -+ <b>end</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_105_14">Trace_On</A>; -+ -+ <span class="comment"><EM>-- 75. (12) A C function that takes a variable number of arguments can</EM></span> -+ <span class="comment"><EM>-- correspond to several Ada subprograms, taking various specific</EM></span> -+ <span class="comment"><EM>-- numbers and types of parameters.</EM></span> - -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-trace__ads.htm#ref_110_14">Trace_Put</A></FONT> (<FONT COLOR=red><A NAME="ref_50_25" HREF="terminal_interface-curses-trace__ads.htm#ref_110_25">str</A></FONT> : String) <b>is</b> -- <b>pragma</b> Unreferenced (<A HREF="terminal_interface-curses-trace__ads.htm#ref_110_25">str</A>); -+ <b>procedure</b> <span class="symbol"><A NAME="ref_64_14" HREF="terminal_interface-curses-trace__ads.htm#ref_109_14">Trace_Put</A></span> (<span class="symbol"><A NAME="ref_64_25" HREF="terminal_interface-curses-trace__ads.htm#ref_109_25">str</A></span> : String) <b>is</b> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_65_17">tracef</A></span> (<span class="symbol"><A NAME="ref_65_25" HREF="terminal_interface-curses-trace__adb.htm#ref_65_17">format</A></span> : char_array; <span class="symbol"><A NAME="ref_65_46" HREF="terminal_interface-curses-trace__adb.htm#ref_65_17">s</A></span> : char_array); -+ <b>pragma</b> Import (C, tracef, "_traces"); -+ <span class="symbol"><A NAME="ref_67_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-trace__ads.htm#ref_109_25">str</A>'Length); -+ <span class="symbol"><A NAME="ref_68_7">Length</A></span> : size_t; -+ <span class="symbol"><A NAME="ref_69_7">formatstr</A></span> : <b>constant</b> String := "%s" &amp; ASCII.NUL; -+ <span class="symbol"><A NAME="ref_70_7">formattxt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-trace__adb.htm#ref_69_7">formatstr</A>'Length); - <b>begin</b> -- <b>null</b>; -- <b>end</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_110_14">Trace_Put</A>; -+ To_C (<A HREF="terminal_interface-curses-trace__adb.htm#ref_69_7">formatstr</A>, <A HREF="terminal_interface-curses-trace__adb.htm#ref_70_7">formattxt</A>, <A HREF="terminal_interface-curses-trace__adb.htm#ref_68_7">Length</A>); -+ To_C (<A HREF="terminal_interface-curses-trace__ads.htm#ref_109_25">str</A>, <A HREF="terminal_interface-curses-trace__adb.htm#ref_67_7">Txt</A>, <A HREF="terminal_interface-curses-trace__adb.htm#ref_68_7">Length</A>); -+ <A HREF="terminal_interface-curses-trace__adb.htm#ref_65_17">tracef</A> (<A HREF="terminal_interface-curses-trace__adb.htm#ref_70_7">formattxt</A>, <A HREF="terminal_interface-curses-trace__adb.htm#ref_67_7">Txt</A>); -+ <b>end</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_109_14">Trace_Put</A>; - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/ada/terminal_interface-curses-trace__ads.htm ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-trace__ads.htm ---- ncurses-5.9/doc/html/ada/terminal_interface-curses-trace__ads.htm 2011-03-20 00:18:42.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ada/terminal_interface-curses-trace__ads.htm 2014-09-01 16:33:22.305792038 +0200 -@@ -1,69 +1,80 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<HTML><HEAD><TITLE>terminal_interface-curses-trace.ads</TITLE></HEAD> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+<HTML> -+<HEAD> -+<TITLE>terminal_interface-curses-trace.ads</TITLE> -+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> -+<style type="text/css"> -+*.comment { -+ color: green; -+} -+*.symbol { -+ color: red; -+} -+</style> -+</HEAD> - <BODY> --<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-trace.ads </H1></DIV><HR> -+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-trace.ads </H1></DIV><HR> - <PRE> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Trace --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- S P E C --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT> --<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT> --<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT> --<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT> --<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT> --<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT> --<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT> --<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT> --<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT> --<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT> --<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT> --<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT> --<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT> --<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT> --<FONT COLOR=green><EM>-- --</EM></FONT> --<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT> --<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT> --<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT> --<FONT COLOR=green><EM>-- authorization. --</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> --<FONT COLOR=green><EM>-- Author: Eugene V. Melaragno &lt;aldomel@ix.netcom.com&gt; 2000</EM></FONT> --<FONT COLOR=green><EM>-- Version Control:</EM></FONT> --<FONT COLOR=green><EM>-- @Revision: 1.1 @</EM></FONT> --<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT> --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Terminal_Interface.Curses.Trace --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- S P E C --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span> -+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span> -+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span> -+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span> -+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span> -+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span> -+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span> -+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span> -+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span> -+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span> -+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span> -+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span> -+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span> -+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span> -+<span class="comment"><EM>-- --</EM></span> -+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span> -+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span> -+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span> -+<span class="comment"><EM>-- authorization. --</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> -+<span class="comment"><EM>-- Author: Eugene V. Melaragno &lt;aldomel@ix.netcom.com&gt; 2000</EM></span> -+<span class="comment"><EM>-- Version Control:</EM></span> -+<span class="comment"><EM>-- @Revision: 1.1 @</EM></span> -+<span class="comment"><EM>-- Binding Version 01.00</EM></span> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - --<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_42_35" HREF="terminal_interface-curses-trace__adb.htm#ref_42_40">Trace</A></FONT> <b>is</b> -+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<span class="symbol"><A NAME="ref_42_35" HREF="terminal_interface-curses-trace__adb.htm#ref_45_40">Trace</A></span> <b>is</b> - <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>); - - <b>pragma</b> Warnings (Off); -- <b>type</b> <FONT COLOR=red><A NAME="ref_46_9">Trace_Attribute_Set</A></FONT> <b>is</b> -+ <b>type</b> <span class="symbol"><A NAME="ref_46_9">Trace_Attribute_Set</A></span> <b>is</b> - <b>record</b> -- <FONT COLOR=red><A NAME="ref_48_10">Times</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_49_10">Tputs</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_50_10">Update</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_51_10">Cursor_Move</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_52_10">Character_Output</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_53_10">Calls</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_54_10">Virtual_Puts</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_55_10">Input_Events</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_56_10">TTY_State</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_57_10">Internal_Calls</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_58_10">Character_Calls</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_59_10">Termcap_TermInfo</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_60_10">Attributes_And_Colors</A></FONT> : Boolean; -- <FONT COLOR=red><A NAME="ref_61_10">Unused</A></FONT> : Boolean; -+ <span class="symbol"><A NAME="ref_48_10">Times</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_49_10">Tputs</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_50_10">Update</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_51_10">Cursor_Move</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_52_10">Character_Output</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_53_10">Calls</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_54_10">Virtual_Puts</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_55_10">Input_Events</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_56_10">TTY_State</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_57_10">Internal_Calls</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_58_10">Character_Calls</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_59_10">Termcap_TermInfo</A></span> : Boolean; -+ <span class="symbol"><A NAME="ref_60_10">Attributes_And_Colors</A></span> : Boolean; - <b>end</b> <b>record</b>; - <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>); - -@@ -82,41 +93,41 @@ - <A HREF="terminal_interface-curses-trace__ads.htm#ref_58_10">Character_Calls</A> <b>at</b> 0 <b>range</b> 10 .. 10; - <A HREF="terminal_interface-curses-trace__ads.htm#ref_59_10">Termcap_TermInfo</A> <b>at</b> 0 <b>range</b> 11 .. 11; - <A HREF="terminal_interface-curses-trace__ads.htm#ref_60_10">Attributes_And_Colors</A> <b>at</b> 0 <b>range</b> 12 .. 12; -- <A HREF="terminal_interface-curses-trace__ads.htm#ref_61_10">Unused</A> <b>at</b> 0 <b>range</b> 13 .. 31; - <b>end</b> <b>record</b>; -- <b>for</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>'Size <b>use</b> 32; -- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT> -- <FONT COLOR=green><EM>-- different on your system.</EM></FONT> -+ <b>pragma</b> Warnings (Off); <b>for</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>'Size <b>use</b> 32; -+ <b>pragma</b> Warnings (On); -+ <span class="comment"><EM>-- Please note: this rep. clause is generated and may be</EM></span> -+ <span class="comment"><EM>-- different on your system.</EM></span> - - <b>pragma</b> Warnings (On); - -- <FONT COLOR=red><A NAME="ref_88_4">Trace_Disable</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A> := (<b>others</b> =&gt; False); -+ <span class="symbol"><A NAME="ref_87_4">Trace_Disable</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A> := (<b>others</b> =&gt; False); - -- <FONT COLOR=red><A NAME="ref_90_4">Trace_Ordinary</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A> := -+ <span class="symbol"><A NAME="ref_89_4">Trace_Ordinary</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A> := - (<A HREF="terminal_interface-curses-trace__ads.htm#ref_48_10">Times</A> =&gt; True, - <A HREF="terminal_interface-curses-trace__ads.htm#ref_49_10">Tputs</A> =&gt; True, - <A HREF="terminal_interface-curses-trace__ads.htm#ref_50_10">Update</A> =&gt; True, - <A HREF="terminal_interface-curses-trace__ads.htm#ref_51_10">Cursor_Move</A> =&gt; True, - <A HREF="terminal_interface-curses-trace__ads.htm#ref_52_10">Character_Output</A> =&gt; True, - <b>others</b> =&gt; False); -- <FONT COLOR=red><A NAME="ref_97_4">Trace_Maximum</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A> := (<b>others</b> =&gt; True); -+ <span class="symbol"><A NAME="ref_96_4">Trace_Maximum</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A> := (<b>others</b> =&gt; True); - --<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> -+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span> - -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_trace.3x.html">curs_trace.3x</A></EM></FONT> -- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> -+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_trace.3x.html">curs_trace.3x</A></EM></span> -+ <span class="comment"><EM>-- |=====================================================================</EM></span> - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_106_14" HREF="terminal_interface-curses-trace__adb.htm#ref_44_14">Trace_On</A></FONT> (<FONT COLOR=red><A NAME="ref_106_24" HREF="terminal_interface-curses-trace__adb.htm#ref_44_24">x</A></FONT> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>); -- <FONT COLOR=green><EM>-- The debugging library has trace.</EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_105_14" HREF="terminal_interface-curses-trace__adb.htm#ref_53_14">Trace_On</A></span> (<span class="symbol"><A NAME="ref_105_24" HREF="terminal_interface-curses-trace__adb.htm#ref_53_24">x</A></span> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>); -+ <span class="comment"><EM>-- The debugging library has trace.</EM></span> - -- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> -- <b>procedure</b> <FONT COLOR=red><A NAME="ref_110_14" HREF="terminal_interface-curses-trace__adb.htm#ref_50_14">Trace_Put</A></FONT> (<FONT COLOR=red><A NAME="ref_110_25" HREF="terminal_interface-curses-trace__adb.htm#ref_50_25">str</A></FONT> : String); -- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_trace.3x.html">_tracef()</A></EM></FONT> -+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span> -+ <b>procedure</b> <span class="symbol"><A NAME="ref_109_14" HREF="terminal_interface-curses-trace__adb.htm#ref_64_14">Trace_Put</A></span> (<span class="symbol"><A NAME="ref_109_25" HREF="terminal_interface-curses-trace__adb.htm#ref_64_25">str</A></span> : String); -+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_trace.3x.html">_tracef()</A></EM></span> - -- <FONT COLOR=red><A NAME="ref_113_4">Current_Trace_Setting</A></FONT> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>; -- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-trace__ads.htm#ref_113_4">Current_Trace_Setting</A>, "_nc_tracing"); -+ <span class="symbol"><A NAME="ref_112_4">Current_Trace_Setting</A></span> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>; -+ <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-trace__ads.htm#ref_112_4">Current_Trace_Setting</A>, "_nc_tracing"); - - <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>; - </PRE></BODY></HTML> -diff -Naur ncurses-5.9/doc/html/Ada95.html ncurses-5.9.patch/doc/html/Ada95.html ---- ncurses-5.9/doc/html/Ada95.html 2010-12-04 17:42:54.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/Ada95.html 2014-09-01 16:33:22.259791961 +0200 -@@ -1,8 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - <!-- -- $Id: Ada95.html,v 1.8 2010/12/04 16:42:54 tom Exp $ -+ $Id: Ada95.html,v 1.14 2013/05/18 21:34:34 tom Exp $ - **************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,156 +28,316 @@ - * authorization. * - **************************************************************************** - --> --<HTML> --<HEAD> --<TITLE>Ada95 Binding for ncurses</Title> --<link rev=made href="mailto:bug-ncurses@gnu.org"> --<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> --</HEAD> --<BODY> --<H1>Ada95 Binding for ncurses</H1> --by J&uuml;rgen Pfeifer. -- --<HR SIZE=3 NOSHADE> --<H2>General Remarks</H2> --<UL> --<LI>This document describes Version 01.00 of the binding.</LI> --<LI>The functionality is modeled to be compatible with the ncurses --package, a clone of the SVr4 curses model.<BR> --I did the development on an Intel box running the latest stable release of --<A HREF="http://www.linux.org">Linux</A>, ncurses and the most recent released --<A HREF="http://www.gnat.com">GNU Ada Translator</A> --gnat versions. For any older versions of ncurses and gnat --it is not guaranteed to work.</LI> --<LI>You must have the m4 macroprocessor to build this package. --If you don't have this program, you can get the FSF version --<A HREF="ftp://ftp.gnu.org/pub/gnu/">here</A>.</LI> --<LI>Ada programs are supposed to be readable. One of my --favorite methods to make code readable is to use expressive --names for the identifiers. You can find a list of a mapping --of the cryptic curses names to the Ada names in this <A HREF="ada/table.html">table</A>.</LI> --<LI>This is not a typical one-to-one interface mapping. It is --close to one-to-one on the functional level. Each (n)curses function --has it's counterpart with a more or less similar formal parameter list --in the binding. It is not one-to-one with respect to the datatypes. --I tried to make records out of the flat chtype and similar structures, --so you don't have to do bit operations to mark an attributed character --as bold. Just make the boolean member <STRONG>bold</STRONG> of the record --true. The binding also hides the structures like WINDOW, PANEL, MENU, FORM --etc. ! It's a pure functional API.</LI> --<LI>I try to do as much error checking as possible and feasible --in the binding. I will raise an Ada exception when something --went wrong in the low-level curses. This has the effect that - at least --first time in my life - (n)curses programs have now a very rigid error --checking, but - thanks to Ada - you don't have to code the orgiastic --error checking style of C.</LI> --<LI>Support for wide characters is currently not in the binding, as it --is not really in ncurses at this point in time.</LI> --</UL> -- --<H2>Limitations</H2> --<UL> --<LI>I provide no SCREEN datatype and functions to set a new screen. --If you need this (mostly for debugging I guess), write a small --C routine doing all this and import it into your Ada program.</LI> --<LI>I provide no functions to switch on/off curses tracing options. --Same suggestion as above.</LI> --<LI>Although Ada95 is an OO Language, this binding doesn't provide --an OO abstraction of the (n)curses functionality. As mentioned above --it's a thin binding for the (n)curses functions. But without any --doubt it would be nice to build on top of this an OO abstraction --of (n)curses functionality.<BR> --The only exception is the method how fieldtypes are represented in --this Binding. We provide an abstract tagged type Field_Type from --which the various fieldtypes are derived.</LI> --<LI>I currently do not support the link_fieldtype functionality of the --forms subsystem.</LI> --<LI>The *_IO packages are currently output only.</LI> --</UL> -- --<H2>Hierarchy of packages</H2> --<UL> --<LI><A HREF="ada/terminal_interface__ads.htm">Terminal_Interface</A> -- <UL><LI><A HREF="ada/terminal_interface-curses__ads.htm">Curses</A> -- <UL><LI><A HREF="ada/terminal_interface-curses-mouse__ads.htm">Mouse</A> -- <LI><A HREF="ada/terminal_interface-curses-panels__ads.htm">Panels</A> -- <UL><LI><A HREF="ada/terminal_interface-curses-panels-user_data__ads.htm">User_Data</A> -- </UL> -- <LI><A HREF="ada/terminal_interface-curses-menus__ads.htm">Menus</A> -- <UL><LI><A HREF="ada/terminal_interface-curses-menus-menu_user_data__ads.htm">Menu_User_Data</A> -- <LI><A HREF="ada/terminal_interface-curses-menus-item_user_data__ads.htm">Item_User_Data</A> -- </UL> -- <LI><A HREF="ada/terminal_interface-curses-forms__ads.htm">Forms</A> -- <UL><LI><A HREF="ada/terminal_interface-curses-forms-form_user_data__ads.htm">Form_User_Data</A> -- <LI><A HREF="ada/terminal_interface-curses-forms-field_user_data__ads.htm">Field_User_Data</A> -- <LI><A HREF="ada/terminal_interface-curses-forms-field_types__ads.htm">Field_Types</A> -- <UL><LI><A HREF="ada/terminal_interface-curses-forms-field_types-alpha__ads.htm">Alpha</A> -- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm">AlphaNumeric</A> -- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-intfield__ads.htm">IntField</A> -- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-numeric__ads.htm">Numeric</A> -- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-regexp__ads.htm">RegExp</A> -- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm">IPV4_Address</A> -- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm">Enumeration</A> -- <UL><LI><A HREF="ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm">Ada</A> -- </UL> -- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-user__ads.htm">User</A> -- <UL><LI><A HREF="ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm">Choice</A> -- </UL> -- </UL> -- </UL> -- <LI><A HREF="ada/terminal_interface-curses-text_io__ads.htm">Text_IO</A> -- <UL><LI><A HREF="ada/terminal_interface-curses-text_io-integer_io__ads.htm">Integer_IO</A> -- <LI><A HREF="ada/terminal_interface-curses-text_io-float_io__ads.htm">Float_IO</A> -- <LI><A HREF="ada/terminal_interface-curses-text_io-fixed_io__ads.htm">Fixed_IO</A> -- <LI><A HREF="ada/terminal_interface-curses-text_io-decimal_io__ads.htm">Decimal_IO</A> -- <LI><A HREF="ada/terminal_interface-curses-text_io-modular_io__ads.htm">Modular_IO</A> -- <LI><A HREF="ada/terminal_interface-curses-text_io-enumeration_io__ads.htm">Enumeration_IO</A> -- <LI><A HREF="ada/terminal_interface-curses-text_io-complex_io__ads.htm">Complex_IO</A> -- </UL> -- </UL> -- </UL> --</UL> --If you want to navigate through the html pages of the package specs, click <A HREF="ada/index.htm">here</A>. --<H2>Implementation Details</H2> --<H4>Behind the abstraction</H4> --All the new types like <STRONG>Window</STRONG>, <STRONG>Panel</STRONG>, --<STRONG>Menu</STRONG>, <STRONG>Form</STRONG> etc. are just --opaque representations of the pointers to the corresponding --low level (n)curses structures like --<STRONG>WINDOW *</STRONG>, <STRONG>PANEL *</STRONG>, --<STRONG>MENU *</STRONG> or <STRONG>FORM *</STRONG>. --So you can safely pass them to C routines that expect a pointer --to one of those structures. --<H4>Extended ripoffline() usage</H4> --The official documentation of (n)curses says, that the line parameter --determines only whether or not exactly <STRONG>one</STRONG> line is --stolen from the top or bottom of the screen. So essentially only the --sign of the parameter is evaluated. ncurses has internally implemented --it in a way, that uses the line parameter also to control the amount of --lines to steal. This mechanism is used in the <STRONG>Rip_Off_Lines</STRONG> --routine of the binding. --<H4><A NAME="userpointer">How user defined field types work</A></H4> --TBD --<H4>Enumeration fields handling</H4> --The (n)curses documentation says, that the String arrays to be passed to --an TYPE_ENUM fieldtype must not be automatic variables. This is not true --in this binding, because it is internally arranged to safely copy these --values. --<H4><A NAME="compiler">Using other Ada compilers</A></H4> --This should basically not be a problem. --<H4>Port to other curses implementations</H4> --Basically it should not be too hard to make all this run on a regular SVr4 --implementation of curses. The problems are probably these:<BR> --<UL> --<LI>ncurses has some additional features which are presented in this binding. You --have two choices to deal with this: --<UL> --<LI>Emulate the feature in this binding</LI> --<LI>Raise an exception for non implemented features</LI> --</UL> --Most likely you will follow a mixed approach. Some features are easy to simulate, --others will be hard if not impossible.</LI> --</UL> --I'm quite sure I forgot something. --</BODY> --</HTML> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+ -+<html> -+<head> -+ <meta name="generator" content= -+ "HTML Tidy for Linux (vers 25 March 2009), see www.w3.org"> -+ -+ <title>Ada95 Binding for ncurses</title> -+ <link rev="made" href="mailto:bug-ncurses@gnu.org"> -+ <meta http-equiv="Content-Type" content= -+ "text/html; charset=us-ascii"> -+</head> -+ -+<body> -+ <h1>Ada95 Binding for ncurses</h1> -+ -+ <p>by J&uuml;rgen Pfeifer.</p> -+ <hr> -+ -+ <h2>General Remarks</h2> -+ -+ <ul> -+ <li>This document describes Version 01.00 of the binding.</li> -+ -+ <li>The functionality is modeled to be compatible with the -+ ncurses package, a clone of the SVr4 curses model.<br> -+ I did the development on an Intel box running the latest stable -+ release of <a href="http://www.linux.org">Linux</a>, ncurses -+ and the most recent released <a href="http://www.gnat.com">GNU -+ Ada Translator</a> gnat versions. For any older versions of -+ ncurses and gnat it is not guaranteed to work.</li> -+ -+ <li>You must have the m4 macroprocessor to build this package. -+ If you don't have this program, you can get the FSF version -+ <a href="ftp://ftp.gnu.org/pub/gnu/">here</a>.</li> -+ -+ <li>Ada programs are supposed to be readable. One of my -+ favorite methods to make code readable is to use expressive -+ names for the identifiers. You can find a list of a mapping of -+ the cryptic curses names to the Ada names in this <a href= -+ "ada/table.html">table</a>.</li> -+ -+ <li>This is not a typical one-to-one interface mapping. It is -+ close to one-to-one on the functional level. Each (n)curses -+ function has it's counterpart with a more or less similar -+ formal parameter list in the binding. It is not one-to-one with -+ respect to the datatypes. I tried to make records out of the -+ flat chtype and similar structures, so you don't have to do bit -+ operations to mark an attributed character as bold. Just make -+ the boolean member <strong>bold</strong> of the record true. -+ The binding also hides the structures like WINDOW, PANEL, MENU, -+ FORM etc. ! It's a pure functional API.</li> -+ -+ <li>I try to do as much error checking as possible and feasible -+ in the binding. I will raise an Ada exception when something -+ went wrong in the low-level curses. This has the effect that - -+ at least first time in my life - (n)curses programs have now a -+ very rigid error checking, but - thanks to Ada - you don't have -+ to code the orgiastic error checking style of C.</li> -+ -+ <li>Support for wide characters is currently not in the -+ binding, as it is not really in ncurses at this point in -+ time.</li> -+ </ul> -+ -+ <h2>Limitations</h2> -+ -+ <ul> -+ <li>I provide no SCREEN datatype and functions to set a new -+ screen. If you need this (mostly for debugging I guess), write -+ a small C routine doing all this and import it into your Ada -+ program.</li> -+ -+ <li>I provide no functions to switch on/off curses tracing -+ options. Same suggestion as above.</li> -+ -+ <li>Although Ada95 is an OO Language, this binding doesn't -+ provide an OO abstraction of the (n)curses functionality. As -+ mentioned above it's a thin binding for the (n)curses -+ functions. But without any doubt it would be nice to build on -+ top of this an OO abstraction of (n)curses functionality.<br> -+ The only exception is the method how fieldtypes are represented -+ in this Binding. We provide an abstract tagged type Field_Type -+ from which the various fieldtypes are derived.</li> -+ -+ <li>I currently do not support the link_fieldtype functionality -+ of the forms subsystem.</li> -+ -+ <li>The *_IO packages are currently output only.</li> -+ </ul> -+ -+ <h2>Hierarchy of packages</h2> -+ -+ <ul> -+ <li> -+ <a href= -+ "ada/terminal_interface__ads.htm">Terminal_Interface</a> -+ -+ <ul> -+ <li> -+ <a href= -+ "ada/terminal_interface-curses__ads.htm">Curses</a> -+ -+ <ul> -+ <li><a href= -+ "ada/terminal_interface-curses-mouse__ads.htm">Mouse</a></li> -+ -+ <li> -+ <a href= -+ "ada/terminal_interface-curses-panels__ads.htm">Panels</a> -+ -+ <ul> -+ <li><a href= -+ "ada/terminal_interface-curses-panels-user_data__ads.htm"> -+ User_Data</a></li> -+ </ul> -+ </li> -+ -+ <li> -+ <a href= -+ "ada/terminal_interface-curses-menus__ads.htm">Menus</a> -+ -+ <ul> -+ <li><a href= -+ "ada/terminal_interface-curses-menus-menu_user_data__ads.htm"> -+ Menu_User_Data</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-menus-item_user_data__ads.htm"> -+ Item_User_Data</a></li> -+ </ul> -+ </li> -+ -+ <li> -+ <a href= -+ "ada/terminal_interface-curses-forms__ads.htm">Forms</a> -+ -+ <ul> -+ <li><a href= -+ "ada/terminal_interface-curses-forms-form_user_data__ads.htm"> -+ Form_User_Data</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-forms-field_user_data__ads.htm"> -+ Field_User_Data</a></li> -+ -+ <li> -+ <a href= -+ "ada/terminal_interface-curses-forms-field_types__ads.htm"> -+ Field_Types</a> -+ -+ <ul> -+ <li><a href= -+ "ada/terminal_interface-curses-forms-field_types-alpha__ads.htm"> -+ Alpha</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm"> -+ AlphaNumeric</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-forms-field_types-intfield__ads.htm"> -+ IntField</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-forms-field_types-numeric__ads.htm"> -+ Numeric</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-forms-field_types-regexp__ads.htm"> -+ RegExp</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm"> -+ IPV4_Address</a></li> -+ -+ <li> -+ <a href= -+ "ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm"> -+ Enumeration</a> -+ -+ <ul> -+ <li><a href= -+ "ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm"> -+ Ada</a></li> -+ </ul> -+ </li> -+ -+ <li> -+ <a href= -+ "ada/terminal_interface-curses-forms-field_types-user__ads.htm"> -+ User</a> -+ -+ <ul> -+ <li><a href= -+ "ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm"> -+ Choice</a></li> -+ </ul> -+ </li> -+ </ul> -+ </li> -+ </ul> -+ </li> -+ -+ <li> -+ <a href= -+ "ada/terminal_interface-curses-text_io__ads.htm">Text_IO</a> -+ -+ <ul> -+ <li><a href= -+ "ada/terminal_interface-curses-text_io-integer_io__ads.htm"> -+ Integer_IO</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-text_io-float_io__ads.htm"> -+ Float_IO</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-text_io-fixed_io__ads.htm"> -+ Fixed_IO</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-text_io-decimal_io__ads.htm"> -+ Decimal_IO</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-text_io-modular_io__ads.htm"> -+ Modular_IO</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-text_io-enumeration_io__ads.htm"> -+ Enumeration_IO</a></li> -+ -+ <li><a href= -+ "ada/terminal_interface-curses-text_io-complex_io__ads.htm"> -+ Complex_IO</a></li> -+ </ul> -+ </li> -+ </ul> -+ </li> -+ </ul> -+ </li> -+ </ul> -+ -+ <p>If you want to navigate through the html pages of the package -+ specs, click <a href="ada/index.htm">here</a>.</p> -+ -+ <h2>Implementation Details</h2> -+ -+ <h4>Behind the abstraction</h4> -+ -+ <p>All the new types like <strong>Window</strong>, -+ <strong>Panel</strong>, <strong>Menu</strong>, -+ <strong>Form</strong> etc. are just opaque representations of the -+ pointers to the corresponding low level (n)curses structures like -+ <strong>WINDOW *</strong>, <strong>PANEL *</strong>, <strong>MENU -+ *</strong> or <strong>FORM *</strong>. So you can safely pass -+ them to C routines that expect a pointer to one of those -+ structures.</p> -+ -+ <h4>Extended ripoffline() usage</h4> -+ -+ <p>The official documentation of (n)curses says, that the line -+ parameter determines only whether or not exactly -+ <strong>one</strong> line is stolen from the top or bottom of the -+ screen. So essentially only the sign of the parameter is -+ evaluated. ncurses has internally implemented it in a way, that -+ uses the line parameter also to control the amount of lines to -+ steal. This mechanism is used in the -+ <strong>Rip_Off_Lines</strong> routine of the binding.</p> -+ -+ <h4><a name="userpointer" id="userpointer">How user defined field -+ types work</a></h4> -+ -+ <p>TBD</p> -+ -+ <h4>Enumeration fields handling</h4> -+ -+ <p>The (n)curses documentation says, that the String arrays to be -+ passed to an TYPE_ENUM fieldtype must not be automatic variables. -+ This is not true in this binding, because it is internally -+ arranged to safely copy these values.</p> -+ -+ <h4><a name="compiler" id="compiler">Using other Ada -+ compilers</a></h4> -+ -+ <p>This should basically not be a problem.</p> -+ -+ <h4>Port to other curses implementations</h4> -+ -+ <p>Basically it should not be too hard to make all this run on a -+ regular SVr4 implementation of curses. The problems are probably -+ these:<br></p> -+ -+ <ul> -+ <li>ncurses has some additional features which are presented in -+ this binding. You have two choices to deal with this: -+ -+ <ul> -+ <li>Emulate the feature in this binding</li> -+ -+ <li>Raise an exception for non implemented features</li> -+ </ul> -+ -+ <p>Most likely you will follow a mixed approach. Some -+ features are easy to simulate, others will be hard if not -+ impossible.</p> -+ </li> -+ </ul> -+ -+ <p>I'm quite sure I forgot something.</p> -+</body> -+</html> -diff -Naur ncurses-5.9/doc/html/announce.html ncurses-5.9.patch/doc/html/announce.html ---- ncurses-5.9/doc/html/announce.html 2011-04-04 11:46:33.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/announce.html 2014-09-01 16:33:22.315792055 +0200 -@@ -1,6 +1,6 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- -- $Id: announce.html,v 1.55 2011/04/04 09:46:33 tom Exp $ -+ $Id: announce.html,v 1.56 2013/05/17 23:34:26 tom Exp $ - **************************************************************************** - * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - * * -diff -Naur ncurses-5.9/doc/html/hackguide.html ncurses-5.9.patch/doc/html/hackguide.html ---- ncurses-5.9/doc/html/hackguide.html 2010-12-04 17:44:21.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/hackguide.html 2014-09-01 16:33:22.315792055 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- -- $Id: hackguide.html,v 1.28 2010/12/04 16:44:21 tom Exp $ -+ $Id: hackguide.html,v 1.29 2013/05/17 23:29:18 tom Exp $ - **************************************************************************** -- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -diff -Naur ncurses-5.9/doc/html/index.html ncurses-5.9.patch/doc/html/index.html ---- ncurses-5.9/doc/html/index.html 2010-12-04 19:36:44.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/index.html 2014-09-01 16:33:22.315792055 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- -- $Id: index.html,v 1.5 2010/12/04 18:36:44 tom Exp $ -+ $Id: index.html,v 1.6 2013/05/17 23:30:29 tom Exp $ - **************************************************************************** -- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -diff -Naur ncurses-5.9/doc/html/man/adacurses-config.1.html ncurses-5.9.patch/doc/html/man/adacurses-config.1.html ---- ncurses-5.9/doc/html/man/adacurses-config.1.html 2011-04-05 00:46:28.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/adacurses-config.1.html 2014-09-01 16:33:22.315792055 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 2010,2011 Free Software Foundation, Inc. * -@@ -83,7 +83,7 @@ - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - -diff -Naur ncurses-5.9/doc/html/man/captoinfo.1m.html ncurses-5.9.patch/doc/html/man/captoinfo.1m.html ---- ncurses-5.9/doc/html/man/captoinfo.1m.html 2011-04-05 00:46:28.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/captoinfo.1m.html 2014-09-01 16:33:22.316792056 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -@@ -87,8 +87,8 @@ - - </PRE> - <H2>FILES</H2><PRE> -- /usr/share/terminfo Compiled terminal description -- database. -+ /usr/share/terminfo Compiled terminal description data- -+ base. - - - </PRE> -@@ -101,7 +101,6 @@ - has not mistakenly translated a completely unknown and - random capability and/or syntax error. - -- - Nonstd Std From Terminfo - name name capability - ----------------------------------------------- -@@ -116,8 +115,8 @@ - EN @7 XENIX key_end - GE ae XENIX exit_alt_charset_mode - GS as XENIX enter_alt_charset_mode -- - HM kh XENIX key_home -+ - LD kL XENIX key_dl - PD kN XENIX key_npage - PN po XENIX prtr_off -@@ -139,7 +138,6 @@ - bilities for forms drawing, designed to take advantage of - the IBM PC high-half graphics. They were as follows: - -- - Cap Graphic - ----------------------------- - G2 upper left -@@ -182,7 +180,6 @@ - font0 s0ds - font1 s1ds - font2 s2ds -- - font3 s3ds - - Additionally, the AIX <EM>box1</EM> capability will be automati- -@@ -208,7 +205,7 @@ - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/clear.1.html ncurses-5.9.patch/doc/html/man/clear.1.html ---- ncurses-5.9/doc/html/man/clear.1.html 2011-04-05 00:46:28.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/clear.1.html 2014-09-01 16:33:22.316792056 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: clear.1,v 1.8 2010/12/04 18:36:44 tom Exp @ -+ * @Id: clear.1,v 1.10 2013/06/22 22:22:11 tom Exp @ - --> - <HTML> - <HEAD> -@@ -57,9 +57,11 @@ - - </PRE> - <H2>DESCRIPTION</H2><PRE> -- <STRONG>clear</STRONG> clears your screen if this is possible. It looks in -- the environment for the terminal type and then in the <STRONG>ter-</STRONG> -- <STRONG>minfo</STRONG> database to figure out how to clear the screen. -+ <STRONG>clear</STRONG> clears your screen if this is possible, including -+ its scrollback buffer (if the extended "E3" capability is -+ defined). <STRONG>clear</STRONG> looks in the environment for the terminal -+ type and then in the <STRONG>terminfo</STRONG> database to determine how to -+ clear the screen. - - <STRONG>clear</STRONG> ignores any command-line parameters that may be - present. -@@ -69,7 +71,7 @@ - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - -diff -Naur ncurses-5.9/doc/html/man/curs_addch.3x.html ncurses-5.9.patch/doc/html/man/curs_addch.3x.html ---- ncurses-5.9/doc/html/man/curs_addch.3x.html 2011-02-26 00:24:50.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_addch.3x.html 2014-09-01 16:33:22.316792056 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -@@ -70,7 +70,7 @@ - The <STRONG>addch</STRONG>, <STRONG>waddch</STRONG>, <STRONG>mvaddch</STRONG> and <STRONG>mvwaddch</STRONG> routines put the - character <EM>ch</EM> into the given window at its current window - position, which is then advanced. They are analogous to -- <STRONG>putchar</STRONG> in <STRONG><A HREF="stdio.3.html">stdio(3)</A></STRONG>. If the advance is at the right mar- -+ <STRONG>putchar</STRONG> in <STRONG>stdio(3)</STRONG>. If the advance is at the right mar- - gin, the cursor automatically wraps to the beginning of - the next line. At the bottom of the current scrolling - region, if <STRONG>scrollok</STRONG> is enabled, the scrolling region is -@@ -112,9 +112,8 @@ - characters to the screen with routines of the <STRONG>addch</STRONG> fam- - ily. The default character listed below is used if the - <STRONG>acsc</STRONG> capability does not define a terminal-specific -- replacement for it. The names are taken from VT100 -- nomenclature. -- -+ replacement for it. The names are taken from VT100 nomen- -+ clature. - - <EM>Name</EM> <EM>Default</EM> <EM>Description</EM> - -------------------------------------------------- -@@ -202,7 +201,7 @@ - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>, <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>, - <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, -- <STRONG><A HREF="putc.3.html">putc(3)</A></STRONG>. -+ <STRONG>putc(3)</STRONG>. - - Comparable functions in the wide-character (ncursesw) - library are described in <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>. -diff -Naur ncurses-5.9/doc/html/man/curs_addchstr.3x.html ncurses-5.9.patch/doc/html/man/curs_addchstr.3x.html ---- ncurses-5.9/doc/html/man/curs_addchstr.3x.html 2011-01-09 02:03:04.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_addchstr.3x.html 2014-09-01 16:33:22.316792056 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_addchstr.3x,v 1.15 2010/12/04 18:36:44 tom Exp @ -+ * @Id: curs_addchstr.3x,v 1.16 2012/11/03 22:54:43 tom Exp @ - --> - <HTML> - <HEAD> -@@ -62,62 +62,63 @@ - <STRONG>int</STRONG> <STRONG>waddchnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG> - <STRONG>int</STRONG> <STRONG>mvaddchstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr);</STRONG> - <STRONG>int</STRONG> <STRONG>mvaddchnstr(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG> -- <STRONG>int</STRONG> <STRONG>mvwaddchstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> -- <STRONG>*chstr);</STRONG> -- <STRONG>int</STRONG> <STRONG>mvwaddchnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> -- <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG> -+ <STRONG>int</STRONG> <STRONG>mvwaddchstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr);</STRONG> -+ <STRONG>int</STRONG> <STRONG>mvwaddchnstr(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <STRONG>*chstr,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG> - - - </PRE> - <H2>DESCRIPTION</H2><PRE> -- These routines copy <EM>chstr</EM> into the window image structure -- at and after the current cursor position. The four rou- -- tines with <EM>n</EM> as the last argument copy at most <EM>n</EM> elements, -- but no more than will fit on the line. If <STRONG>n</STRONG>=<STRONG>-1</STRONG> then the -- whole string is copied, to the maximum number of charac- -- ters that will fit on the line. -- -- The window cursor is <EM>not</EM> advanced, and these routines work -- faster than <STRONG>waddnstr</STRONG>. On the other hand, they do not per- -- form any kind of checking (such as for the newline, -- backspace, or carriage return characters), they do not ad- -- vance the current cursor position, they do not expand oth- -- er control characters to ^-escapes, and they truncate the -- string if it crosses the right margin, rather than wrap- -- ping it around to the new line. -+ These functions copy the (null-terminated) <EM>chstr</EM> array in- -+ to the window image structure starting at the current cur- -+ sor position. The four functions with <EM>n</EM> as the last argu- -+ ment copy at most <EM>n</EM> elements, but no more than will fit on -+ the line. If <STRONG>n</STRONG>=<STRONG>-1</STRONG> then the whole array is copied, to the -+ maximum number of characters that will fit on the line. -+ -+ The window cursor is <EM>not</EM> advanced. These functions work -+ faster than <STRONG>waddnstr</STRONG>. On the other hand: -+ -+ <STRONG>o</STRONG> they do not perform checking (such as for the newline, -+ backspace, or carriage return characters), -+ -+ <STRONG>o</STRONG> they do not advance the current cursor position, -+ -+ <STRONG>o</STRONG> they do not expand other control characters to ^-es- -+ capes, and -+ -+ <STRONG>o</STRONG> they truncate the string if it crosses the right mar- -+ gin, rather than wrapping it around to the new line. - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -- All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on -- success (the SVr4 manuals specify only "an integer value -- other than <STRONG>ERR</STRONG>") upon successful completion, unless other- -- wise noted in the preceding routine descriptions. -+<H2>RETURN VALUE</H2><PRE> -+ All functions return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> -+ on success. - -- X/Open does not define any error conditions. This imple- -+ X/Open does not define any error conditions. This imple- - mentation returns an error if the window pointer is null. - -- Functions with a "mv" prefix first perform a cursor move- -- ment using <STRONG>wmove</STRONG>, and return an error if the position is -+ Functions with a "mv" prefix first perform a cursor move- -+ ment using <STRONG>wmove</STRONG>, and return an error if the position is - outside the window, or if the window pointer is null. - - - </PRE> - <H2>NOTES</H2><PRE> -- Note that all routines except <STRONG>waddchnstr</STRONG> may be macros. -+ All functions except <STRONG>waddchnstr</STRONG> may be macros. - - - </PRE> - <H2>PORTABILITY</H2><PRE> -- These entry points are described in the XSI Curses stan- -+ These entry points are described in the XSI Curses stan- - dard, Issue 4. - - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>. -+ <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>. - -- Comparable functions in the wide-character (ncursesw) li- -+ Comparable functions in the wide-character (ncursesw) li- - brary are described in <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>. - - -diff -Naur ncurses-5.9/doc/html/man/curs_addstr.3x.html ncurses-5.9.patch/doc/html/man/curs_addstr.3x.html ---- ncurses-5.9/doc/html/man/curs_addstr.3x.html 2011-01-09 02:03:05.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_addstr.3x.html 2014-09-01 16:33:22.317792058 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_addstr.3x,v 1.16 2010/12/04 18:36:44 tom Exp @ -+ * @Id: curs_addstr.3x,v 1.17 2012/11/03 22:57:31 tom Exp @ - --> - <HTML> - <HEAD> -@@ -68,26 +68,32 @@ - - </PRE> - <H2>DESCRIPTION</H2><PRE> -- These routines write the characters of the (null-terminat- -- ed) character string <EM>str</EM> on the given window. It is simi- -- lar to calling <STRONG>waddch</STRONG> once for each character in the -- string. The four routines with <EM>n</EM> as the last argument -- write at most <EM>n</EM> characters. If <EM>n</EM> is -1, then the entire -- string will be added, up to the maximum number of charac- -- ters that will fit on the line, or until a terminating -- null is reached. -+ These functions write the (null-terminated) character -+ string <EM>str</EM> on the given window. It is similar to calling -+ <STRONG>waddch</STRONG> once for each character in the string. -+ -+ The <EM>mv</EM> functions perform cursor movement once, before -+ writing any characters. Thereafter, the cursor is ad- -+ vanced as a side-effect of writing to the window. -+ -+ The four functions with <EM>n</EM> as the last argument write at -+ most <EM>n</EM> characters, or until a terminating null is reached. -+ If <EM>n</EM> is -1, then the entire string will be added. - - - </PRE> - <H2>RETURN VALUE</H2><PRE> -- All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on -- success (the SVr4 manuals specify only "an integer value -- other than <STRONG>ERR</STRONG>") upon successful completion. -+ All functions return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> -+ on success. - - X/Open does not define any error conditions. This imple- -- mentation returns an error if the window pointer is null -- or if the string pointer is null or if the corresponding -- calls to <STRONG>waddch</STRONG> return an error. -+ mentation returns an error -+ -+ <STRONG>o</STRONG> if the window pointer is null or -+ -+ <STRONG>o</STRONG> if the string pointer is null or -+ -+ <STRONG>o</STRONG> if the corresponding calls to <STRONG>waddch</STRONG> return an error. - - Functions with a "mv" prefix first perform a cursor move- - ment using <STRONG>wmove</STRONG>, and return an error if the position is -@@ -96,16 +102,13 @@ - - </PRE> - <H2>NOTES</H2><PRE> -- Note that all of these routines except <STRONG>waddstr</STRONG> and -- <STRONG>waddnstr</STRONG> may be macros. -+ All of these functions except <STRONG>waddnstr</STRONG> may be macros. - - - </PRE> - <H2>PORTABILITY</H2><PRE> -- All these entry points are described in the XSI Curses -- standard, Issue 4. The XSI errors EILSEQ and EOVERFLOW, -- associated with extended-level conformance, are not yet -- detected. -+ These functions are described in the XSI Curses standard, -+ Issue 4. - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/curs_add_wch.3x.html ncurses-5.9.patch/doc/html/man/curs_add_wch.3x.html ---- ncurses-5.9/doc/html/man/curs_add_wch.3x.html 2011-02-26 00:24:49.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_add_wch.3x.html 2014-09-01 16:33:22.316792056 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2001-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 2001-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_add_wch.3x,v 1.14 2011/01/15 15:27:43 tom Exp @ -+ * @Id: curs_add_wch.3x,v 1.15 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -77,17 +77,17 @@ - ous character at that location is removed. A new - character specified by <EM>wch</EM> is placed at that location - with rendition specified by <EM>wch</EM>. The cursor then -- advances to the next spacing character on the screen. -+ advances to the next spacing character on the screen. - - <STRONG>o</STRONG> If <EM>wch</EM> refers to a non-spacing character, all previous -- characters at that location are preserved. The non- -- spacing characters of <EM>wch</EM> are added to the spacing -- complex character, and the rendition specified by <EM>wch</EM> -+ characters at that location are preserved. The non- -+ spacing characters of <EM>wch</EM> are added to the spacing -+ complex character, and the rendition specified by <EM>wch</EM> - is ignored. - -- <STRONG>o</STRONG> If the character part of <EM>wch</EM> is a tab, newline, -- backspace or other control character, the window is -- updated and the cursor moves as if <STRONG>addch</STRONG> were called. -+ <STRONG>o</STRONG> If the character part of <EM>wch</EM> is a tab, newline, -+ backspace or other control character, the window is -+ updated and the cursor moves as if <STRONG>addch</STRONG> were called. - - The <STRONG>echo_wchar</STRONG> function is functionally equivalent to a - call to <STRONG>add_wch</STRONG> followed by a call to <STRONG>refresh</STRONG>. Similarly, -@@ -99,11 +99,10 @@ - functions instead of their equivalents. - - <STRONG>Line</STRONG> <STRONG>Graphics</STRONG> -- Like <STRONG><A HREF="addch.3x.html">addch(3x)</A></STRONG>, <STRONG>addch_wch</STRONG> accepts symbols which make it -+ Like <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG>addch_wch</STRONG> accepts symbols which make it - simple to draw lines and other frequently used special - characters. These symbols correspond to the same VT100 -- line-drawing set as <STRONG><A HREF="addch.3x.html">addch(3x)</A></STRONG>. -- -+ line-drawing set as <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>. - - <EM>Name</EM> <EM>Unicode</EM> <EM>Default</EM> <EM>Description</EM> - ---------------------------------------------------------------- -@@ -111,8 +110,8 @@ - WACS_BOARD 0x2592 # board of squares - WACS_BTEE 0x2534 + bottom tee - WACS_BULLET 0x00b7 o bullet -- - WACS_CKBOARD 0x2592 : checker board (stipple) -+ - WACS_DARROW 0x2193 v arrow pointing down - WACS_DEGREE 0x00b0 ' degree symbol - WACS_DIAMOND 0x25c6 + diamond -@@ -144,7 +143,6 @@ - The wide-character configuration of ncurses also defines - symbols for thick- and double-lines: - -- - <EM>Name</EM> <EM>Unicode</EM> <EM>Default</EM> <EM>Description</EM> - --------------------------------------------------------------------- - WACS_T_ULCORNER 0x250f + thick upper left corner -@@ -172,7 +170,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on - success. - -@@ -217,7 +215,7 @@ - </PRE> - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>, -- <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="putwc.3.html">putwc(3)</A></STRONG> -+ <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG>putwc(3)</STRONG> - - - -diff -Naur ncurses-5.9/doc/html/man/curs_add_wchstr.3x.html ncurses-5.9.patch/doc/html/man/curs_add_wchstr.3x.html ---- ncurses-5.9/doc/html/man/curs_add_wchstr.3x.html 2011-01-09 02:03:05.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_add_wchstr.3x.html 2014-09-01 16:33:22.316792056 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_add_wchstr.3x,v 1.9 2010/12/04 18:36:44 tom Exp @ -+ * @Id: curs_add_wchstr.3x,v 1.10 2012/11/03 22:54:43 tom Exp @ - --> - <HTML> - <HEAD> -@@ -47,7 +47,7 @@ - - </PRE> - <H2>NAME</H2><PRE> -- <STRONG>add_wchstr</STRONG>, <STRONG>add_wchnstr</STRONG>, <STRONG>wadd_wchstr</STRONG>, <STRONG>wadd_wchnstr</STRONG>, -+ <STRONG>add_wchstr</STRONG>, <STRONG>add_wchnstr</STRONG>, <STRONG>wadd_wchstr</STRONG>, <STRONG>wadd_wchnstr</STRONG>, - <STRONG>mvadd_wchstr</STRONG>, <STRONG>mvadd_wchnstr</STRONG>, <STRONG>mvwadd_wchstr</STRONG>, <STRONG>mvwadd_wchnstr</STRONG> - - add an array of complex characters (and attributes) to a - curses window -@@ -69,39 +69,42 @@ - - </PRE> - <H2>DESCRIPTION</H2><PRE> -- These routines copy the array of complex characters <EM>wchstr</EM> -- into the window image structure at and after the current -- cursor position. The four routines with <EM>n</EM> as the last -- argument copy at most <EM>n</EM> elements, but no more than will -- fit on the line. If <STRONG>n</STRONG>=<STRONG>-1</STRONG> then the whole array is copied, -- to the maximum number of characters that will fit on the -- line. -- -- The window cursor is <EM>not</EM> advanced. These routines work -- faster than <STRONG>waddnstr</STRONG>. On the other hand, they do not per- -- form checking (such as for the newline, backspace, or car- -- riage return characters), they do not advance the current -- cursor position, they do not expand other control charac- -- ters to ^-escapes, and they truncate the string if it -- crosses the right margin, rather than wrapping it around -- to the new line. -- -- These routines end successfully on encountering a null -- <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>, or when they have filled the current line. If a -- complex character cannot completely fit at the end of the -- current line, the remaining columns are filled with the -+ These functions copy the (null-terminated) array of com- -+ plex characters <EM>wchstr</EM> into the window image structure -+ starting at the current cursor position. The four func- -+ tions with <EM>n</EM> as the last argument copy at most <EM>n</EM> elements, -+ but no more than will fit on the line. If <STRONG>n</STRONG>=<STRONG>-1</STRONG> then the -+ whole array is copied, to the maximum number of characters -+ that will fit on the line. -+ -+ The window cursor is <EM>not</EM> advanced. These functions work -+ faster than <STRONG>waddnstr</STRONG>. On the other hand: -+ -+ <STRONG>o</STRONG> they do not perform checking (such as for the newline, -+ backspace, or carriage return characters), -+ -+ <STRONG>o</STRONG> they do not advance the current cursor position, -+ -+ <STRONG>o</STRONG> they do not expand other control characters to ^-es- -+ capes, and -+ -+ <STRONG>o</STRONG> they truncate the string if it crosses the right mar- -+ gin, rather than wrapping it around to the new line. -+ -+ These functions end successfully on encountering a null -+ <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>, or when they have filled the current line. If a -+ complex character cannot completely fit at the end of the -+ current line, the remaining columns are filled with the - background character and rendition. - - - </PRE> --<H2>NOTES</H2><PRE> -- All functions except <STRONG>wadd_wchnstr</STRONG> may be macros. -+<H2>RETURN VALUE</H2><PRE> -+ All functions return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> -+ on success. - -- --</PRE> --<H2>RETURN VALUES</H2><PRE> -- All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on -- success. -+ X/Open does not define any error conditions. This imple- -+ mentation returns an error if the window pointer is null. - - Functions with a "mv" prefix first perform a cursor move- - ment using <STRONG>wmove</STRONG>, and return an error if the position is -@@ -109,14 +112,22 @@ - - - </PRE> -+<H2>NOTES</H2><PRE> -+ All functions except <STRONG>wadd_wchnstr</STRONG> may be macros. -+ -+ -+</PRE> - <H2>PORTABILITY</H2><PRE> -- All these entry points are described in the XSI Curses -- standard, Issue 4. -+ These entry points are described in the XSI Curses stan- -+ dard, Issue 4. - - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>, <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> -+ <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>. -+ -+ Comparable functions in the narrow-character (ncurses) li- -+ brary are described in <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>. - - - -diff -Naur ncurses-5.9/doc/html/man/curs_addwstr.3x.html ncurses-5.9.patch/doc/html/man/curs_addwstr.3x.html ---- ncurses-5.9/doc/html/man/curs_addwstr.3x.html 2011-01-09 02:03:05.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_addwstr.3x.html 2014-09-01 16:33:22.317792058 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_addwstr.3x,v 1.10 2010/12/04 18:36:44 tom Exp @ -+ * @Id: curs_addwstr.3x,v 1.11 2012/11/03 22:57:31 tom Exp @ - --> - <HTML> - <HEAD> -@@ -68,43 +68,51 @@ - - </PRE> - <H2>DESCRIPTION</H2><PRE> -- These routines write the characters of the (null-terminat- -- ed) <STRONG>wchar_t</STRONG> character string <EM>wstr</EM> on the given window. It -- is similar to constructing a <STRONG>cchar_t</STRONG> for each wchar_t in -- the string, then calling <STRONG>wadd_wch</STRONG> for the resulting -+ These functions write the characters of the (null-termi- -+ nated) <STRONG>wchar_t</STRONG> character string <EM>wstr</EM> on the given window. -+ It is similar to constructing a <STRONG>cchar_t</STRONG> for each wchar_t -+ in the string, then calling <STRONG>wadd_wch</STRONG> for the resulting - <STRONG>cchar_t</STRONG>. - -- The <EM>mv</EM> routines perform cursor movement once, before writ- -- ing any characters. Thereafter, the cursor is advanced as -- a side-effect of writing to the window. -+ The <EM>mv</EM> functions perform cursor movement once, before -+ writing any characters. Thereafter, the cursor is ad- -+ vanced as a side-effect of writing to the window. - -- The four routines with <EM>n</EM> as the last argument write at -- most <EM>n</EM> <STRONG>wchar_t</STRONG> characters. If <EM>n</EM> is -1, then the entire -- string will be added, up to the maximum number of charac- -- ters that will fit on the line, or until a terminating -- null is reached. -+ The four functions with <EM>n</EM> as the last argument write at -+ most <EM>n</EM> <STRONG>wchar_t</STRONG> characters, or until a terminating null is -+ reached. If <EM>n</EM> is -1, then the entire string will be -+ added. - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -- All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on -- success. -+<H2>RETURN VALUE</H2><PRE> -+ All functions return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> -+ on success. - -- Functions with a "mv" prefix first perform a cursor move- -- ment using <STRONG>wmove</STRONG>, and return an error if the position is -+ X/Open does not define any error conditions. This imple- -+ mentation returns an error -+ -+ <STRONG>o</STRONG> if the window pointer is null or -+ -+ <STRONG>o</STRONG> if the string pointer is null or -+ -+ <STRONG>o</STRONG> if the corresponding calls to <STRONG>wadd_wch</STRONG> return an er- -+ ror. -+ -+ Functions with a "mv" prefix first perform a cursor move- -+ ment using <STRONG>wmove</STRONG>, and return an error if the position is - outside the window, or if the window pointer is null. - - - </PRE> - <H2>NOTES</H2><PRE> -- Note that all of these routines except <STRONG>waddnwstr</STRONG> may be -- macros. -+ All of these functions except <STRONG>waddnwstr</STRONG> may be macros. - - - </PRE> - <H2>PORTABILITY</H2><PRE> -- All these entry points are described in the XSI Curses -- standard, Issue 4. -+ These functions are described in the XSI Curses standard, -+ Issue 4. - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/curs_attr.3x.html ncurses-5.9.patch/doc/html/man/curs_attr.3x.html ---- ncurses-5.9/doc/html/man/curs_attr.3x.html 2011-02-26 00:24:50.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_attr.3x.html 2014-09-01 16:33:22.317792058 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_attr.3x,v 1.36 2010/12/04 18:36:44 tom Exp @ -+ * @Id: curs_attr.3x,v 1.39 2013/09/21 20:39:49 Sven.Joachim Exp @ - --> - <HTML> - <HEAD> -@@ -148,19 +148,36 @@ - be passed to the routines <STRONG>attron</STRONG>, <STRONG>attroff</STRONG>, and <STRONG>attrset</STRONG>, or - OR'd with the characters passed to <STRONG>addch</STRONG>. - -+ <EM>Name</EM> <EM>Description</EM> -+ ------------------------------------------------------------ -+ <STRONG>A_NORMAL</STRONG> Normal display (no highlight) -+ <STRONG>A_STANDOUT</STRONG> Best highlighting mode of the terminal. -+ <STRONG>A_UNDERLINE</STRONG> Underlining -+ <STRONG>A_REVERSE</STRONG> Reverse video -+ <STRONG>A_BLINK</STRONG> Blinking -+ <STRONG>A_DIM</STRONG> Half bright -+ <STRONG>A_BOLD</STRONG> Extra bright or bold -+ <STRONG>A_PROTECT</STRONG> Protected mode -+ <STRONG>A_INVIS</STRONG> Invisible or blank mode -+ <STRONG>A_ALTCHARSET</STRONG> Alternate character set -+ <STRONG>A_ITALIC</STRONG> Italics (non-X/Open extension) -+ <STRONG>A_CHARTEXT</STRONG> Bit-mask to extract a character -+ <STRONG>COLOR_PAIR(</STRONG><EM>n</EM><STRONG>)</STRONG> Color-pair number <EM>n</EM> -+ -+ These video attributes are supported by <STRONG>attr_on</STRONG> and relat- -+ ed functions (which also support the attributes recognized -+ by <STRONG>attron</STRONG>, etc.): -+ -+ <EM>Name</EM> <EM>Description</EM> -+ ----------------------------------------- -+ <STRONG>WA_HORIZONTAL</STRONG> Horizontal highlight -+ <STRONG>WA_LEFT</STRONG> Left highlight -+ <STRONG>WA_LOW</STRONG> Low highlight -+ <STRONG>WA_RIGHT</STRONG> Right highlight -+ <STRONG>WA_TOP</STRONG> Top highlight -+ <STRONG>WA_VERTICAL</STRONG> Vertical highlight - -- <STRONG>A_NORMAL</STRONG> Normal display (no highlight) -- <STRONG>A_STANDOUT</STRONG> Best highlighting mode of the terminal. -- <STRONG>A_UNDERLINE</STRONG> Underlining -- <STRONG>A_REVERSE</STRONG> Reverse video -- <STRONG>A_BLINK</STRONG> Blinking -- <STRONG>A_DIM</STRONG> Half bright -- <STRONG>A_BOLD</STRONG> Extra bright or bold -- <STRONG>A_PROTECT</STRONG> Protected mode -- <STRONG>A_INVIS</STRONG> Invisible or blank mode -- <STRONG>A_ALTCHARSET</STRONG> Alternate character set -- <STRONG>A_CHARTEXT</STRONG> Bit-mask to extract a character -- <STRONG>COLOR_PAIR(</STRONG><EM>n</EM><STRONG>)</STRONG> Color-pair number <EM>n</EM> -+ For consistency - - The following macro is the reverse of <STRONG>COLOR_PAIR(</STRONG><EM>n</EM><STRONG>)</STRONG>: - -@@ -202,33 +219,44 @@ - correctly manipulate all other highlights (specifically, - <STRONG>A_ALTCHARSET</STRONG>, <STRONG>A_PROTECT</STRONG>, and <STRONG>A_INVIS</STRONG>). - -+ This implementation provides the <STRONG>A_ITALIC</STRONG> attribute for -+ terminals which have the <EM>enter</EM><STRONG>_</STRONG><EM>italics</EM><STRONG>_</STRONG><EM>mode</EM> (sitm) and <EM>ex-</EM> -+ <EM>it</EM><STRONG>_</STRONG><EM>italics</EM><STRONG>_</STRONG><EM>mode</EM> (ritm) capabilities. Italics are not men- -+ tioned in X/Open Curses. Unlike the other video at- -+ tributes, <STRONG>I_ITALIC</STRONG> is unrelated to the <EM>set</EM><STRONG>_</STRONG><EM>attributes</EM> ca- -+ pabilities. This implementation makes the assumption that -+ <EM>exit</EM><STRONG>_</STRONG><EM>attribute</EM><STRONG>_</STRONG><EM>mode</EM> may also reset italics. -+ - XSI Curses added the new entry points, <STRONG>attr_get</STRONG>, <STRONG>attr_on</STRONG>, - <STRONG>attr_off</STRONG>, <STRONG>attr_set</STRONG>, <STRONG>wattr_on</STRONG>, <STRONG>wattr_off</STRONG>, <STRONG>wattr_get</STRONG>, <STRONG>wat-</STRONG> - <STRONG>tr_set</STRONG>. These are intended to work with a new series of -- highlight macros prefixed with <STRONG>WA_</STRONG>. -- -- Older versions of this library did not force an update of -- the screen when changing the attributes. Use <STRONG>touchwin</STRONG> to -- force the screen to match the updated attributes. -+ highlight macros prefixed with <STRONG>WA_</STRONG>. The older macros have -+ direct counterparts in the newer set of names: - -+ <EM>Name</EM> <EM>Description</EM> -+ ------------------------------------------------------------ -+ <STRONG>WA_NORMAL</STRONG> Normal display (no highlight) -+ <STRONG>WA_STANDOUT</STRONG> Best highlighting mode of the terminal. -+ <STRONG>WA_UNDERLINE</STRONG> Underlining -+ <STRONG>WA_REVERSE</STRONG> Reverse video -+ <STRONG>WA_BLINK</STRONG> Blinking -+ <STRONG>WA_DIM</STRONG> Half bright -+ <STRONG>WA_BOLD</STRONG> Extra bright or bold -+ <STRONG>WA_ALTCHARSET</STRONG> Alternate character set - -- <STRONG>WA_NORMAL</STRONG> Normal display (no highlight) -- <STRONG>WA_STANDOUT</STRONG> Best highlighting mode of the terminal. -- <STRONG>WA_UNDERLINE</STRONG> Underlining -- <STRONG>WA_REVERSE</STRONG> Reverse video -- <STRONG>WA_BLINK</STRONG> Blinking -- <STRONG>WA_DIM</STRONG> Half bright -- <STRONG>WA_BOLD</STRONG> Extra bright or bold -- <STRONG>WA_ALTCHARSET</STRONG> Alternate character set -+ Older versions of this library did not force an update of -+ the screen when changing the attributes. Use <STRONG>touchwin</STRONG> to -+ force the screen to match the updated attributes. - - The XSI curses standard specifies that each pair of corre- -- sponding <STRONG>A_</STRONG> and <STRONG>WA_</STRONG>-using functions operates on the same -+ sponding <STRONG>A_</STRONG> and <STRONG>WA_</STRONG>-using functions operates on the same - current-highlight information. - - The XSI standard extended conformance level adds new high- - lights <STRONG>A_HORIZONTAL</STRONG>, <STRONG>A_LEFT</STRONG>, <STRONG>A_LOW</STRONG>, <STRONG>A_RIGHT</STRONG>, <STRONG>A_TOP</STRONG>, <STRONG>A_VER-</STRONG> -- <STRONG>TICAL</STRONG> (and corresponding <STRONG>WA_</STRONG> macros for each) which this -- implementation does not yet support. -+ <STRONG>TICAL</STRONG> (and corresponding <STRONG>WA_</STRONG> macros for each). As of Au- -+ gust 2013, no known terminal provides these highlights -+ (i.e., via the <STRONG>sgr1</STRONG> capability). - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/curs_beep.3x.html ncurses-5.9.patch/doc/html/man/curs_beep.3x.html ---- ncurses-5.9/doc/html/man/curs_beep.3x.html 2011-01-09 02:03:05.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_beep.3x.html 2014-09-01 16:33:22.317792058 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_bkgd.3x.html ncurses-5.9.patch/doc/html/man/curs_bkgd.3x.html ---- ncurses-5.9/doc/html/man/curs_bkgd.3x.html 2011-01-09 02:03:06.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_bkgd.3x.html 2014-09-01 16:33:22.317792058 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2003,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_bkgrnd.3x.html ncurses-5.9.patch/doc/html/man/curs_bkgrnd.3x.html ---- ncurses-5.9/doc/html/man/curs_bkgrnd.3x.html 2011-01-09 02:03:06.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_bkgrnd.3x.html 2014-09-01 16:33:22.317792058 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_bkgrnd.3x,v 1.4 2010/12/04 18:49:20 tom Exp @ -+ * @Id: curs_bkgrnd.3x,v 1.5 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -102,7 +102,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - The <STRONG>bkgrndset</STRONG> and <STRONG>wbkgrndset</STRONG> routines do not return a - value. - -diff -Naur ncurses-5.9/doc/html/man/curs_border.3x.html ncurses-5.9.patch/doc/html/man/curs_border.3x.html ---- ncurses-5.9/doc/html/man/curs_border.3x.html 2011-01-09 02:03:06.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_border.3x.html 2014-09-01 16:33:22.318792059 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_border_set.3x.html ncurses-5.9.patch/doc/html/man/curs_border_set.3x.html ---- ncurses-5.9/doc/html/man/curs_border_set.3x.html 2011-01-22 22:01:21.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_border_set.3x.html 2014-09-01 16:33:22.318792059 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2002-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_border_set.3x,v 1.10 2011/01/15 12:56:18 tom Exp @ -+ * @Id: curs_border_set.3x,v 1.11 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -154,7 +154,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - Upon successful completion, these functions return <STRONG>OK</STRONG>. - Otherwise, they return <STRONG>ERR</STRONG>. - -diff -Naur ncurses-5.9/doc/html/man/curs_clear.3x.html ncurses-5.9.patch/doc/html/man/curs_clear.3x.html ---- ncurses-5.9/doc/html/man/curs_clear.3x.html 2011-01-09 02:03:06.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_clear.3x.html 2014-09-01 16:33:22.318792059 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_color.3x.html ncurses-5.9.patch/doc/html/man/curs_color.3x.html ---- ncurses-5.9/doc/html/man/curs_color.3x.html 2011-01-09 02:03:06.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_color.3x.html 2014-09-01 16:33:22.318792059 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_delch.3x.html ncurses-5.9.patch/doc/html/man/curs_delch.3x.html ---- ncurses-5.9/doc/html/man/curs_delch.3x.html 2011-01-09 02:03:07.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_delch.3x.html 2014-09-01 16:33:22.318792059 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_deleteln.3x.html ncurses-5.9.patch/doc/html/man/curs_deleteln.3x.html ---- ncurses-5.9/doc/html/man/curs_deleteln.3x.html 2011-01-09 02:03:07.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_deleteln.3x.html 2014-09-01 16:33:22.318792059 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_extend.3x.html ncurses-5.9.patch/doc/html/man/curs_extend.3x.html ---- ncurses-5.9/doc/html/man/curs_extend.3x.html 2011-01-09 02:03:07.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_extend.3x.html 2014-09-01 16:33:22.318792059 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1999-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_getcchar.3x.html ncurses-5.9.patch/doc/html/man/curs_getcchar.3x.html ---- ncurses-5.9/doc/html/man/curs_getcchar.3x.html 2011-01-09 02:03:07.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_getcchar.3x.html 2014-09-01 16:33:22.319792061 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2001-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2001-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_getcchar.3x,v 1.15 2010/12/04 18:36:44 tom Exp @ -+ * @Id: curs_getcchar.3x,v 1.16 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -128,7 +128,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - When <EM>wch</EM> is a null pointer, <STRONG>getcchar</STRONG> returns the number of - wide characters referenced by <EM>wcval</EM>, including one for a - trailing null. -@@ -143,7 +143,7 @@ - </PRE> - <H2>SEE ALSO</H2><PRE> - Functions: <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, -- <STRONG><A HREF="wcwidth.3.html">wcwidth(3)</A></STRONG>. -+ <STRONG>wcwidth(3)</STRONG>. - - - -diff -Naur ncurses-5.9/doc/html/man/curs_getch.3x.html ncurses-5.9.patch/doc/html/man/curs_getch.3x.html ---- ncurses-5.9/doc/html/man/curs_getch.3x.html 2011-02-26 00:24:52.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_getch.3x.html 2014-09-01 16:33:22.319792061 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_getch.3x,v 1.36 2011/01/22 19:38:51 tom Exp @ -+ * @Id: curs_getch.3x,v 1.37 2012/07/07 20:04:56 tom Exp @ - --> - <HTML> - <HEAD> -@@ -110,7 +110,6 @@ - be returned by the next call to <STRONG>wgetch</STRONG>. There is just one - input queue for all windows. - -- - <STRONG>Function</STRONG> <STRONG>Keys</STRONG> - The following function keys, defined in <STRONG>&lt;curses.h&gt;</STRONG>, might - be returned by <STRONG>getch</STRONG> if <STRONG>keypad</STRONG> has been enabled. Note -@@ -179,8 +178,8 @@ - KEY_REPLACE Replace key - KEY_RESIZE Screen resized - KEY_RESTART Restart key -- KEY_RESUME Resume key - -+ KEY_RESUME Resume key - KEY_SAVE Save key - KEY_SBEG Shifted beginning key - KEY_SCANCEL Shifted cancel key -@@ -233,21 +232,18 @@ - sion of <STRONG>KEY_MOUSE</STRONG>. - - -- - </PRE> - <H2>RETURN VALUE</H2><PRE> - All routines return the integer <STRONG>ERR</STRONG> upon failure and an - integer value other than <STRONG>ERR</STRONG> (<STRONG>OK</STRONG> in the case of ungetch()) - upon successful completion. - -- <STRONG>ungetch</STRONG> -- returns an error if there is no more room in -- the FIFO. -- -- <STRONG>wgetch</STRONG> -- returns an error if the window pointer is -- null, or if its timeout expires without having -- any data. -+ <STRONG>ungetch</STRONG> -+ returns ERR if there is no more room in the FIFO. -+ -+ <STRONG>wgetch</STRONG> -+ returns ERR if the window pointer is null, or if -+ its timeout expires without having any data. - - Functions with a "mv" prefix first perform a cursor move- - ment using <STRONG>wmove</STRONG>, and return an error if the position is -@@ -321,7 +317,7 @@ - documentation. Under historical curses implementations, - it varied depending on whether the operating system's im- - plementation of handled signal receipt interrupts a -- <STRONG><A HREF="read.2.html">read(2)</A></STRONG> call in progress or not, and also (in some imple- -+ <STRONG>read(2)</STRONG> call in progress or not, and also (in some imple- - mentations) depending on whether an input timeout or non- - blocking mode has been set. - -diff -Naur ncurses-5.9/doc/html/man/curs_getstr.3x.html ncurses-5.9.patch/doc/html/man/curs_getstr.3x.html ---- ncurses-5.9/doc/html/man/curs_getstr.3x.html 2011-01-09 02:03:08.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_getstr.3x.html 2014-09-01 16:33:22.319792061 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_get_wch.3x.html ncurses-5.9.patch/doc/html/man/curs_get_wch.3x.html ---- ncurses-5.9/doc/html/man/curs_get_wch.3x.html 2010-09-18 23:35:17.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/curs_get_wch.3x.html 2014-09-01 16:33:22.319792061 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_get_wch.3x,v 1.7 2010/08/14 23:31:42 tom Exp @ -+ * @Id: curs_get_wch.3x,v 1.8 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -122,7 +122,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - When <STRONG>get_wch</STRONG>, <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, and <STRONG>mvwget_wch</STRONG> func- - tions successfully report the pressing of a function key, - they return <STRONG>KEY_CODE_YES</STRONG>. When they successfully report a -diff -Naur ncurses-5.9/doc/html/man/curs_get_wstr.3x.html ncurses-5.9.patch/doc/html/man/curs_get_wstr.3x.html ---- ncurses-5.9/doc/html/man/curs_get_wstr.3x.html 2011-01-09 02:03:08.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_get_wstr.3x.html 2014-09-01 16:33:22.319792061 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_get_wstr.3x,v 1.8 2010/12/04 18:36:44 tom Exp @ -+ * @Id: curs_get_wstr.3x,v 1.9 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -118,7 +118,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - All of these functions return <STRONG>OK</STRONG> upon successful comple- - tion. Otherwise, they return <STRONG>ERR</STRONG>. - -diff -Naur ncurses-5.9/doc/html/man/curs_getyx.3x.html ncurses-5.9.patch/doc/html/man/curs_getyx.3x.html ---- ncurses-5.9/doc/html/man/curs_getyx.3x.html 2011-01-09 02:03:08.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_getyx.3x.html 2014-09-01 16:33:22.319792061 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_inch.3x.html ncurses-5.9.patch/doc/html/man/curs_inch.3x.html ---- ncurses-5.9/doc/html/man/curs_inch.3x.html 2011-01-09 02:03:08.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_inch.3x.html 2014-09-01 16:33:22.320792063 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/curs_inchstr.3x.html ncurses-5.9.patch/doc/html/man/curs_inchstr.3x.html ---- ncurses-5.9/doc/html/man/curs_inchstr.3x.html 2011-01-09 02:03:09.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_inchstr.3x.html 2014-09-01 16:33:22.320792063 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_initscr.3x.html ncurses-5.9.patch/doc/html/man/curs_initscr.3x.html ---- ncurses-5.9/doc/html/man/curs_initscr.3x.html 2011-01-09 02:03:09.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_initscr.3x.html 2014-09-01 16:33:22.320792063 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_initscr.3x,v 1.17 2010/12/04 18:36:58 tom Exp @ -+ * @Id: curs_initscr.3x,v 1.19 2013/07/20 19:34:14 tom Exp @ - --> - <HTML> - <HEAD> -@@ -148,11 +148,19 @@ - rather than exiting. It is safe but redundant to check - the return value of <STRONG>initscr</STRONG> in XSI Curses. - -+ If the TERM variable is missing or empty, <STRONG>initscr</STRONG> uses the -+ value "unknown", which normally corresponds to a terminal -+ entry with the <EM>generic</EM> (<EM>gn</EM>) capability. Generic entries -+ are detected by <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> and cannot be used for full- -+ screen operation. Other implementations may handle a -+ missing/empty TERM variable differently. -+ - - </PRE> - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, -- <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>. -+ <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG>curs_vari-</STRONG> -+ <STRONG><A HREF="curs_variables.3x.html">ables(3x)</A></STRONG>. - - - -diff -Naur ncurses-5.9/doc/html/man/curs_inopts.3x.html ncurses-5.9.patch/doc/html/man/curs_inopts.3x.html ---- ncurses-5.9/doc/html/man/curs_inopts.3x.html 2011-01-09 02:03:09.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_inopts.3x.html 2014-09-01 16:33:22.320792063 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_inopts.3x,v 1.15 2010/12/04 18:40:45 tom Exp @ -+ * @Id: curs_inopts.3x,v 1.18 2013/07/20 19:42:02 tom Exp @ - --> - <HTML> - <HEAD> -@@ -135,7 +135,7 @@ - - Initially, whether the terminal returns 7 or 8 significant - bits on input depends on the control mode of the tty driv- -- er [see <STRONG><A HREF="termio.7.html">termio(7)</A></STRONG>]. To force 8 bits to be returned, in- -+ er [see <STRONG>termio(7)</STRONG>]. To force 8 bits to be returned, in- - voke <STRONG>meta</STRONG>(<EM>win</EM>, <STRONG>TRUE</STRONG>); this is equivalent, under POSIX, to - setting the CS8 flag on the terminal. To force 7 bits to - be returned, invoke <STRONG>meta</STRONG>(<EM>win</EM>, <STRONG>FALSE</STRONG>); this is equivalent, -@@ -168,7 +168,7 @@ - - When the <STRONG>noqiflush</STRONG> routine is used, normal flush of input - and output queues associated with the <STRONG>INTR</STRONG>, <STRONG>QUIT</STRONG> and <STRONG>SUSP</STRONG> -- characters will not be done [see <STRONG><A HREF="termio.7.html">termio(7)</A></STRONG>]. When <STRONG>qiflush</STRONG> -+ characters will not be done [see <STRONG>termio(7)</STRONG>]. When <STRONG>qiflush</STRONG> - is called, the queues will be flushed when these control - characters are read. You may want to call <STRONG>noqiflush()</STRONG> in - a signal handler if you want output to continue as though -@@ -185,7 +185,7 @@ - additional capability of being able to block for only <EM>de-</EM> - <EM>lay</EM> milliseconds (where <EM>delay</EM> is positive). - -- The <STRONG>curses</STRONG> library does ``line-breakout optimization'' by -+ The <STRONG>curses</STRONG> library does "line-breakout optimization" by - looking for typeahead periodically while updating the - screen. If input is found, and it is coming from a tty, - the current update is postponed until <STRONG>refresh</STRONG> or <STRONG>doupdate</STRONG> -@@ -229,24 +229,58 @@ - ty, set echo or noecho explicitly just after initializa- - tion, even if your program remains in cooked mode. - -+ When <STRONG>keypad</STRONG> is first enabled, ncurses loads the key-defi- -+ nitions for the current terminal description. If the ter- -+ minal description includes extended string capabilities, -+ e.g., from using the <STRONG>-x</STRONG> option of tic, then ncurses also -+ defines keys for the capabilities whose names begin with -+ "k". The corresponding keycodes are generated and (de- -+ pending on previous loads of terminal descriptions) may -+ differ from one execution of a program to the next. The -+ generated keycodes are recognized by the <STRONG>keyname</STRONG> function -+ (which will then return a name beginning with "k" denoting -+ the terminfo capability name rather than "K", used for -+ curses key-names). On the other hand, an application can -+ use <STRONG>define_key</STRONG> to establish a specific keycode for a given -+ string. This makes it possible for an application to -+ check for an extended capability's presence with <EM>tigetstr</EM>, -+ and reassign the keycode to match its own needs. -+ -+ Low-level applications can use <STRONG>tigetstr</STRONG> to obtain the def- -+ inition of any particular string capability. Higher-level -+ applications which use the curses <STRONG>wgetch</STRONG> and similar func- -+ tions to return keycodes rely upon the order in which the -+ strings are loaded. If more than one key definition has -+ the same string value, then <STRONG>wgetch</STRONG> can return only one -+ keycode. Most curses implementations (including ncurses) -+ load key definitions in the order defined by the array of -+ string capability names. The last key to be loaded deter- -+ mines the keycode which will be returned. In ncurses, you -+ may also have extended capabilities interpreted as key -+ definitions. These are loaded after the predefined keys, -+ and if a capability's value is the same as a previously- -+ loaded key definition, the later definition is the one -+ used. -+ - - </PRE> - <H2>NOTES</H2><PRE> -- Note that <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>meta</STRONG>, <STRONG>node-</STRONG> -- <STRONG>lay</STRONG>, <STRONG>notimeout</STRONG>, <STRONG>noqiflush</STRONG>, <STRONG>qiflush</STRONG>, <STRONG>timeout</STRONG>, and <STRONG>wtimeout</STRONG> -+ Note that <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>meta</STRONG>, <STRONG>node-</STRONG> -+ <STRONG>lay</STRONG>, <STRONG>notimeout</STRONG>, <STRONG>noqiflush</STRONG>, <STRONG>qiflush</STRONG>, <STRONG>timeout</STRONG>, and <STRONG>wtimeout</STRONG> - may be macros. - - The <STRONG>noraw</STRONG> and <STRONG>nocbreak</STRONG> calls follow historical practice in -- that they attempt to restore to normal (`cooked') mode -- from raw and cbreak modes respectively. Mixing raw/noraw -- and cbreak/nocbreak calls leads to tty driver control -- states that are hard to predict or understand; it is not -+ that they attempt to restore to normal (`cooked') mode -+ from raw and cbreak modes respectively. Mixing raw/noraw -+ and cbreak/nocbreak calls leads to tty driver control -+ states that are hard to predict or understand; it is not - recommended. - - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="termio.7.html">termio(7)</A></STRONG> -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, -+ <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>, <STRONG>termio(7)</STRONG> - - - -diff -Naur ncurses-5.9/doc/html/man/curs_insch.3x.html ncurses-5.9.patch/doc/html/man/curs_insch.3x.html ---- ncurses-5.9/doc/html/man/curs_insch.3x.html 2011-01-09 02:03:09.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_insch.3x.html 2014-09-01 16:33:22.320792063 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_insstr.3x.html ncurses-5.9.patch/doc/html/man/curs_insstr.3x.html ---- ncurses-5.9/doc/html/man/curs_insstr.3x.html 2011-01-09 02:03:09.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_insstr.3x.html 2014-09-01 16:33:22.321792065 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_instr.3x.html ncurses-5.9.patch/doc/html/man/curs_instr.3x.html ---- ncurses-5.9/doc/html/man/curs_instr.3x.html 2011-01-09 02:03:10.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_instr.3x.html 2014-09-01 16:33:22.321792065 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_ins_wch.3x.html ncurses-5.9.patch/doc/html/man/curs_ins_wch.3x.html ---- ncurses-5.9/doc/html/man/curs_ins_wch.3x.html 2011-01-09 02:03:10.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_ins_wch.3x.html 2014-09-01 16:33:22.320792063 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_ins_wstr.3x.html ncurses-5.9.patch/doc/html/man/curs_ins_wstr.3x.html ---- ncurses-5.9/doc/html/man/curs_ins_wstr.3x.html 2011-01-09 02:03:10.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_ins_wstr.3x.html 2014-09-01 16:33:22.320792063 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_ins_wstr.3x,v 1.6 2010/12/04 18:38:55 tom Exp @ -+ * @Id: curs_ins_wstr.3x,v 1.7 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -102,7 +102,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - Upon successful completion, these functions return OK. - Otherwise, they return ERR. - -diff -Naur ncurses-5.9/doc/html/man/curs_in_wch.3x.html ncurses-5.9.patch/doc/html/man/curs_in_wch.3x.html ---- ncurses-5.9/doc/html/man/curs_in_wch.3x.html 2011-01-09 02:03:10.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_in_wch.3x.html 2014-09-01 16:33:22.319792061 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_in_wchstr.3x.html ncurses-5.9.patch/doc/html/man/curs_in_wchstr.3x.html ---- ncurses-5.9/doc/html/man/curs_in_wchstr.3x.html 2011-01-09 02:03:10.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_in_wchstr.3x.html 2014-09-01 16:33:22.320792063 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_in_wchstr.3x,v 1.8 2010/12/04 18:36:44 tom Exp @ -+ * @Id: curs_in_wchstr.3x,v 1.9 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -90,7 +90,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - Upon successful completion, these functions return <STRONG>OK</STRONG>. - Otherwise, they return <STRONG>ERR</STRONG>. - -diff -Naur ncurses-5.9/doc/html/man/curs_inwstr.3x.html ncurses-5.9.patch/doc/html/man/curs_inwstr.3x.html ---- ncurses-5.9/doc/html/man/curs_inwstr.3x.html 2011-01-09 02:03:11.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_inwstr.3x.html 2014-09-01 16:33:22.321792065 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_inwstr.3x,v 1.7 2010/12/04 18:38:55 tom Exp @ -+ * @Id: curs_inwstr.3x,v 1.8 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -87,7 +87,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - All routines return <STRONG>ERR</STRONG> upon failure. Upon successful com- - pletion, the *<STRONG>inwstr</STRONG> routines return <STRONG>OK</STRONG>, and the *<STRONG>innwstr</STRONG> - routines return the number of characters read into the -diff -Naur ncurses-5.9/doc/html/man/curs_kernel.3x.html ncurses-5.9.patch/doc/html/man/curs_kernel.3x.html ---- ncurses-5.9/doc/html/man/curs_kernel.3x.html 2011-01-09 02:03:11.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_kernel.3x.html 2014-09-01 16:33:22.321792065 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_legacy.3x.html ncurses-5.9.patch/doc/html/man/curs_legacy.3x.html ---- ncurses-5.9/doc/html/man/curs_legacy.3x.html 2011-01-09 02:03:11.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_legacy.3x.html 2014-09-01 16:33:22.321792065 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 2007,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_memleaks.3x.html ncurses-5.9.patch/doc/html/man/curs_memleaks.3x.html ---- ncurses-5.9/doc/html/man/curs_memleaks.3x.html 2011-01-09 02:03:11.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_memleaks.3x.html 2014-09-01 16:33:22.321792065 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 2008,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_mouse.3x.html ncurses-5.9.patch/doc/html/man/curs_mouse.3x.html ---- ncurses-5.9/doc/html/man/curs_mouse.3x.html 2011-02-26 00:24:55.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_mouse.3x.html 2014-09-01 16:33:22.321792065 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_mouse.3x,v 1.38 2010/12/04 18:38:55 tom Exp @ -+ * @Id: curs_mouse.3x,v 1.39 2013/06/22 18:09:42 tom Exp @ - --> - <HTML> - <HEAD> -@@ -59,13 +59,12 @@ - - <STRONG>typedef</STRONG> <STRONG>unsigned</STRONG> <STRONG>long</STRONG> <STRONG>mmask_t;</STRONG> - -- typedef struct -- { -- short id; <EM>/*</EM> <EM>ID</EM> <EM>to</EM> <EM>distinguish</EM> <EM>multiple</EM> <EM>devices</EM> <EM>*/</EM> -+ <STRONG>typedef</STRONG> <STRONG>struct</STRONG> <STRONG>{</STRONG> -+ <STRONG>short</STRONG> <STRONG>id;</STRONG> <EM>/*</EM> <EM>ID</EM> <EM>to</EM> <EM>distinguish</EM> <EM>multiple</EM> <EM>devices</EM> <EM>*/</EM> - <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>y,</STRONG> <STRONG>z;</STRONG> <EM>/*</EM> <EM>event</EM> <EM>coordinates</EM> <EM>*/</EM> - <STRONG>mmask_t</STRONG> <STRONG>bstate;</STRONG> <EM>/*</EM> <EM>button</EM> <EM>state</EM> <EM>bits</EM> <EM>*/</EM> -- <STRONG>}</STRONG> -- <STRONG>MEVENT;</STRONG> -+ <STRONG>}</STRONG> <STRONG>MEVENT;</STRONG> -+ - <STRONG>bool</STRONG> <STRONG>has_mouse(void);</STRONG> - <STRONG>int</STRONG> <STRONG>getmouse(MEVENT</STRONG> <STRONG>*event);</STRONG> - <STRONG>int</STRONG> <STRONG>ungetmouse(MEVENT</STRONG> <STRONG>*event);</STRONG> -@@ -98,7 +97,6 @@ - - Here are the mouse event type masks which may be defined: - -- - <EM>Name</EM> <EM>Description</EM> - --------------------------------------------------------------------- - BUTTON1_PRESSED mouse button 1 down -@@ -111,11 +109,10 @@ - BUTTON2_RELEASED mouse button 2 up - BUTTON2_CLICKED mouse button 2 clicked - BUTTON2_DOUBLE_CLICKED mouse button 2 double clicked -- -- - BUTTON2_TRIPLE_CLICKED mouse button 2 triple clicked - --------------------------------------------------------------------- - BUTTON3_PRESSED mouse button 3 down -+ - BUTTON3_RELEASED mouse button 3 up - BUTTON3_CLICKED mouse button 3 clicked - BUTTON3_DOUBLE_CLICKED mouse button 3 double clicked -diff -Naur ncurses-5.9/doc/html/man/curs_move.3x.html ncurses-5.9.patch/doc/html/man/curs_move.3x.html ---- ncurses-5.9/doc/html/man/curs_move.3x.html 2011-01-09 02:03:12.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_move.3x.html 2014-09-01 16:33:22.322792066 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_opaque.3x.html ncurses-5.9.patch/doc/html/man/curs_opaque.3x.html ---- ncurses-5.9/doc/html/man/curs_opaque.3x.html 2011-01-09 02:03:12.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_opaque.3x.html 2014-09-01 16:33:22.322792066 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2007-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2007-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_opaque.3x,v 1.9 2010/12/04 18:40:45 tom Exp @ -+ * @Id: curs_opaque.3x,v 1.10 2013/07/20 19:42:29 tom Exp @ - --> - <HTML> - <HEAD> -@@ -76,7 +76,7 @@ - <H2>DESCRIPTION</H2><PRE> - This implementation provides functions which return prop- - erties set in the WINDOW structure, allowing it to be -- ``opaque'' if the symbol <STRONG>NCURSES_OPAQUE</STRONG> is defined: -+ "opaque" if the symbol <STRONG>NCURSES_OPAQUE</STRONG> is defined: - - <STRONG>is_cleared</STRONG> - returns the value set in <STRONG>clearok</STRONG> -diff -Naur ncurses-5.9/doc/html/man/curs_outopts.3x.html ncurses-5.9.patch/doc/html/man/curs_outopts.3x.html ---- ncurses-5.9/doc/html/man/curs_outopts.3x.html 2011-01-09 02:03:12.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_outopts.3x.html 2014-09-01 16:33:22.322792066 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_overlay.3x.html ncurses-5.9.patch/doc/html/man/curs_overlay.3x.html ---- ncurses-5.9/doc/html/man/curs_overlay.3x.html 2011-01-09 02:03:12.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_overlay.3x.html 2014-09-01 16:33:22.322792066 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_overlay.3x,v 1.16 2010/12/04 18:40:45 tom Exp @ -+ * @Id: curs_overlay.3x,v 1.17 2013/04/06 23:48:51 tom Exp @ - --> - <HTML> - <HEAD> -@@ -72,7 +72,7 @@ - (blanks are not copied) whereas <STRONG>overwrite</STRONG> is destructive. - - The <STRONG>copywin</STRONG> routine provides a finer granularity of con- -- trol over the <STRONG>overlay</STRONG> and <STRONG>overwrite</STRONG> routines. Like in the -+ trol over the <STRONG>overlay</STRONG> and <STRONG>overwrite</STRONG> routines. As in the - <STRONG>prefresh</STRONG> routine, a rectangle is specified in the destina- - tion window, (<EM>dminrow</EM>, <EM>dmincol</EM>) and (<EM>dmaxrow</EM>, <EM>dmaxcol</EM>), - and the upper-left-corner coordinates of the source win- -diff -Naur ncurses-5.9/doc/html/man/curs_pad.3x.html ncurses-5.9.patch/doc/html/man/curs_pad.3x.html ---- ncurses-5.9/doc/html/man/curs_pad.3x.html 2011-01-09 02:03:12.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_pad.3x.html 2014-09-01 16:33:22.322792066 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_print.3x.html ncurses-5.9.patch/doc/html/man/curs_print.3x.html ---- ncurses-5.9/doc/html/man/curs_print.3x.html 2011-01-09 02:03:12.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_print.3x.html 2014-09-01 16:33:22.322792066 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_printw.3x.html ncurses-5.9.patch/doc/html/man/curs_printw.3x.html ---- ncurses-5.9/doc/html/man/curs_printw.3x.html 2011-01-09 02:03:13.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_printw.3x.html 2014-09-01 16:33:22.322792066 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -@@ -69,12 +69,12 @@ - </PRE> - <H2>DESCRIPTION</H2><PRE> - The <STRONG>printw</STRONG>, <STRONG>wprintw</STRONG>, <STRONG>mvprintw</STRONG> and <STRONG>mvwprintw</STRONG> routines are -- analogous to <STRONG>printf</STRONG> [see <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG>]. In effect, the -+ analogous to <STRONG>printf</STRONG> [see <STRONG>printf(3)</STRONG>]. In effect, the - string that would be output by <STRONG>printf</STRONG> is output instead as - though <STRONG>waddstr</STRONG> were used on the given window. - - The <STRONG>vwprintw</STRONG> and <STRONG>wv_printw</STRONG> routines are analogous to -- <STRONG>vprintf</STRONG> [see <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG>] and perform a <STRONG>wprintw</STRONG> using a -+ <STRONG>vprintf</STRONG> [see <STRONG>printf(3)</STRONG>] and perform a <STRONG>wprintw</STRONG> using a - variable argument list. The third argument is a <STRONG>va_list</STRONG>, - a pointer to a list of arguments, as defined in - <STRONG>&lt;stdarg.h&gt;</STRONG>. -@@ -111,7 +111,7 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG>, <STRONG>vprintf(3)</STRONG> -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>printf(3)</STRONG>, <STRONG>vprintf(3)</STRONG> - - - -diff -Naur ncurses-5.9/doc/html/man/curs_refresh.3x.html ncurses-5.9.patch/doc/html/man/curs_refresh.3x.html ---- ncurses-5.9/doc/html/man/curs_refresh.3x.html 2011-01-09 02:03:13.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_refresh.3x.html 2014-09-01 16:33:22.322792066 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_scanw.3x.html ncurses-5.9.patch/doc/html/man/curs_scanw.3x.html ---- ncurses-5.9/doc/html/man/curs_scanw.3x.html 2011-01-09 02:03:13.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_scanw.3x.html 2014-09-01 16:33:22.323792068 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -@@ -66,9 +66,9 @@ - </PRE> - <H2>DESCRIPTION</H2><PRE> - The <STRONG>scanw</STRONG>, <STRONG>wscanw</STRONG> and <STRONG>mvscanw</STRONG> routines are analogous to -- <STRONG>scanf</STRONG> [see <STRONG><A HREF="scanf.3.html">scanf(3)</A></STRONG>]. The effect of these routines is as -+ <STRONG>scanf</STRONG> [see <STRONG>scanf(3)</STRONG>]. The effect of these routines is as - though <STRONG>wgetstr</STRONG> were called on the window, and the result- -- ing line used as input for <STRONG><A HREF="sscanf.3.html">sscanf(3)</A></STRONG>. Fields which do not -+ ing line used as input for <STRONG>sscanf(3)</STRONG>. Fields which do not - map to a variable in the <EM>fmt</EM> field are lost. - - The <STRONG>vwscanw</STRONG> and <STRONG>vw_scanw</STRONG> routines are analogous to <STRONG>vscanf</STRONG>. -@@ -118,7 +118,7 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>, <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>, <STRONG><A HREF="scanf.3.html">scanf(3)</A></STRONG> -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>, <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>, <STRONG>scanf(3)</STRONG> - - - -diff -Naur ncurses-5.9/doc/html/man/curs_scr_dump.3x.html ncurses-5.9.patch/doc/html/man/curs_scr_dump.3x.html ---- ncurses-5.9/doc/html/man/curs_scr_dump.3x.html 2011-01-09 02:03:13.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_scr_dump.3x.html 2014-09-01 16:33:22.323792068 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -@@ -122,7 +122,7 @@ - </PRE> - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, -- <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="system.3.html">system(3)</A></STRONG> -+ <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG>system(3)</STRONG> - - - -diff -Naur ncurses-5.9/doc/html/man/curs_scroll.3x.html ncurses-5.9.patch/doc/html/man/curs_scroll.3x.html ---- ncurses-5.9/doc/html/man/curs_scroll.3x.html 2011-01-09 02:03:13.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_scroll.3x.html 2014-09-01 16:33:22.323792068 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_slk.3x.html ncurses-5.9.patch/doc/html/man/curs_slk.3x.html ---- ncurses-5.9/doc/html/man/curs_slk.3x.html 2011-01-09 02:03:14.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_slk.3x.html 2014-09-01 16:33:22.323792068 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_sp_funcs.3x.html ncurses-5.9.patch/doc/html/man/curs_sp_funcs.3x.html ---- ncurses-5.9/doc/html/man/curs_sp_funcs.3x.html 2011-02-26 00:24:57.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_sp_funcs.3x.html 2014-09-01 16:33:22.323792068 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_sp_funcs.3x,v 1.5 2010/12/04 18:38:55 tom Exp @ -+ * @Id: curs_sp_funcs.3x,v 1.6 2013/06/22 17:53:59 tom Exp @ - * *************************************************************************** - * *************************************************************************** - * *************************************************************************** -@@ -131,7 +131,7 @@ - <STRONG>int</STRONG> <STRONG>slk_attron_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>chtype);</STRONG> - <STRONG>int</STRONG> <STRONG>slk_attr_set_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>attr_t,</STRONG> <STRONG>short,</STRONG> <STRONG>void*);</STRONG> - <STRONG>int</STRONG> <STRONG>slk_attrset_sp(SCREEN*,</STRONG> <STRONG>const</STRONG> <STRONG>chtype);</STRONG> -- <STRONG>int</STRONG> <STRONG>slk_attr_sp((SCREEN*);</STRONG> -+ <STRONG>int</STRONG> <STRONG>slk_attr_sp(SCREEN*);</STRONG> - <STRONG>int</STRONG> <STRONG>slk_clear_sp(SCREEN*);</STRONG> - <STRONG>int</STRONG> <STRONG>slk_color_sp(SCREEN*,</STRONG> <STRONG>short);</STRONG> - <STRONG>int</STRONG> <STRONG>slk_init_sp(SCREEN*,</STRONG> <STRONG>int);</STRONG> -@@ -193,16 +193,15 @@ - functions which improve the ability to manage multiple - screens. This feature can be added to any of the configu- - rations supported by ncurses; it adds new entrypoints -- without changing the meaning of any of the existing ones. -- -+ without changing the meaning of any of the existing ones. - - <STRONG>IMPROVED</STRONG> <STRONG>FUNCTIONS</STRONG> -- Most of the functions are new versions of existing func- -+ Most of the functions are new versions of existing func- - tions. A parameter is added at the front of the parameter - list. It is a SCREEN pointer. - -- The existing functions all use the current screen, which -- is a static variable. The extended functions use the -+ The existing functions all use the current screen, which -+ is a static variable. The extended functions use the - specified screen, thereby reducing the number of variables - which must be modified to update multiple screens. - -@@ -210,22 +209,22 @@ - Here are the new functions: - - ceiling_panel -- this returns a pointer to the topmost panel in the -+ this returns a pointer to the topmost panel in the - given screen. - - ground_panel -- this returns a pointer to the lowest panel in the -+ this returns a pointer to the lowest panel in the - given screen. - - new_prescr -- when creating a new screen, the library uses static -- variables which have been preset, e.g., by -- <STRONG><A HREF="use_env.3x.html">use_env(3x)</A></STRONG>, <STRONG><A HREF="filter.3x.html">filter(3x)</A></STRONG>, etc. With the screen-point- -+ when creating a new screen, the library uses static -+ variables which have been preset, e.g., by -+ <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, etc. With the screen-point- - er extension, there are situations where it must cre- -- ate a current screen before the unextended library -- does. The <STRONG>new_prescr</STRONG> function is used internally to -+ ate a current screen before the unextended library -+ does. The <STRONG>new_prescr</STRONG> function is used internally to - handle these cases. It is also provided as an entry- -- point to allow applications to customize the library -+ point to allow applications to customize the library - initialization. - - -@@ -234,37 +233,36 @@ - This extension introduces some new names: - - NCURSES_SP_FUNCS -- This is set to the library patch-level number. In -- the unextended library, this is zero (0), to make it -+ This is set to the library patch-level number. In -+ the unextended library, this is zero (0), to make it - useful for checking if the extension is provided. - - NCURSES_SP_NAME -- The new functions are named using the macro <EM>NCURS-</EM> -- <EM>ES</EM><STRONG>_</STRONG><EM>SP</EM><STRONG>_</STRONG><EM>NAME</EM>, which hides the actual implementation. -+ The new functions are named using the macro <EM>NCURS-</EM> -+ <EM>ES</EM><STRONG>_</STRONG><EM>SP</EM><STRONG>_</STRONG><EM>NAME</EM>, which hides the actual implementation. - Currently this adds a "_sp" suffix to the name of the -- unextended function. This manual page indexes the -+ unextended function. This manual page indexes the - extensions showing the full name. However the proper -- usage of these functions uses the macro, to provide -+ usage of these functions uses the macro, to provide - for the possibility of changing the naming convention - for specific library configurations. - - NCURSES_SP_OUTC -- This is a new function-pointer type to use in the -- screen-pointer functions where an <EM>NCURSES</EM><STRONG>_</STRONG><EM>OUTC</EM> is -+ This is a new function-pointer type to use in the -+ screen-pointer functions where an <EM>NCURSES</EM><STRONG>_</STRONG><EM>OUTC</EM> is - used in the unextended library. - - NCURSES_OUTC -- This is a function-pointer type used for the cases -- where a function passes characters to the output -- stream, e.g., <STRONG><A HREF="vidputs.3x.html">vidputs(3x)</A></STRONG>. -- -+ This is a function-pointer type used for the cases -+ where a function passes characters to the output -+ stream, e.g., <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>. - - - </PRE> - <H2>PORTABILITY</H2><PRE> -- These routines are specific to ncurses. They were not -- supported on Version 7, BSD or System V implementations. -- It is recommended that any code depending on ncurses ex- -+ These routines are specific to ncurses. They were not -+ supported on Version 7, BSD or System V implementations. -+ It is recommended that any code depending on ncurses ex- - tensions be conditioned using <EM>NCURSES</EM><STRONG>_</STRONG><EM>SP</EM><STRONG>_</STRONG><EM>FUNCS</EM>. - - -diff -Naur ncurses-5.9/doc/html/man/curs_termattrs.3x.html ncurses-5.9.patch/doc/html/man/curs_termattrs.3x.html ---- ncurses-5.9/doc/html/man/curs_termattrs.3x.html 2011-02-26 00:24:58.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_termattrs.3x.html 2014-09-01 16:33:22.323792068 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -@@ -111,11 +111,11 @@ - - If a given terminal does not support a video attribute - that an application program is trying to use, <STRONG>curses</STRONG> may -- substitute a different video attribute for it. The -- <STRONG>termattrs</STRONG> and <STRONG>term_attrs</STRONG> functions return a logical <STRONG>OR</STRONG> of -- all video attributes supported by the terminal using <EM>A</EM><STRONG>_</STRONG> -- and <EM>WA</EM><STRONG>_</STRONG> constants respectively. This information is use- -- ful when a <STRONG>curses</STRONG> program needs complete control over the -+ substitute a different video attribute for it. The <STRONG>ter-</STRONG> -+ <STRONG>mattrs</STRONG> and <STRONG>term_attrs</STRONG> functions return a logical <STRONG>OR</STRONG> of all -+ video attributes supported by the terminal using <EM>A</EM><STRONG>_</STRONG> and -+ <EM>WA</EM><STRONG>_</STRONG> constants respectively. This information is useful -+ when a <STRONG>curses</STRONG> program needs complete control over the - appearance of the screen. - - The <STRONG>termname</STRONG> routine returns the terminal name used by -diff -Naur ncurses-5.9/doc/html/man/curs_termcap.3x.html ncurses-5.9.patch/doc/html/man/curs_termcap.3x.html ---- ncurses-5.9/doc/html/man/curs_termcap.3x.html 2011-01-09 02:03:14.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_termcap.3x.html 2014-09-01 16:33:22.324792069 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_termcap.3x,v 1.26 2010/12/04 18:38:55 tom Exp @ -+ * @Id: curs_termcap.3x,v 1.30 2013/01/19 15:58:48 tom Exp @ - --> - <HTML> - <HEAD> -@@ -79,39 +79,62 @@ - bilities of entries for which a terminfo entry has been - compiled. - -- The <STRONG>tgetent</STRONG> routine loads the entry for <EM>name</EM>. It returns -- 1 on success, 0 if there is no such entry, and -1 if the -- terminfo database could not be found. The emulation ig- -- nores the buffer pointer <EM>bp</EM>. -+ <STRONG>INITIALIZATION</STRONG> -+ The <STRONG>tgetent</STRONG> routine loads the entry for <EM>name</EM>. It returns: - -+ 1 on success, -+ -+ 0 if there is no such entry (or that it is a generic -+ type, having too little information for curses ap- -+ plications to run), and -+ -+ -1 if the terminfo database could not be found. -+ -+ This differs from the <EM>termcap</EM> library in two ways: -+ -+ <STRONG>o</STRONG> The emulation ignores the buffer pointer <EM>bp</EM>. The -+ <EM>termcap</EM> library would store a copy of the terminal -+ description in the area referenced by this pointer. -+ However, ncurses stores its terminal descriptions -+ in compiled binary form, which is not the same -+ thing. -+ -+ <STRONG>o</STRONG> There is a difference in return codes. The <EM>termcap</EM> -+ library does not check if the terminal description -+ is marked with the <EM>generic</EM> capability, or if the -+ terminal description has cursor-addressing. -+ -+ <STRONG>CAPABILITY</STRONG> <STRONG>VALUES</STRONG> - The <STRONG>tgetflag</STRONG> routine gets the boolean entry for <EM>id</EM>, or ze- - ro if it is not available. - -- The <STRONG>tgetnum</STRONG> routine gets the numeric entry for <EM>id</EM>, or -1 -+ The <STRONG>tgetnum</STRONG> routine gets the numeric entry for <EM>id</EM>, or -1 - if it is not available. - -- The <STRONG>tgetstr</STRONG> routine returns the string entry for <EM>id</EM>, or -- zero if it is not available. Use <STRONG>tputs</STRONG> to output the re- -- turned string. The return value will also be copied to -- the buffer pointed to by <EM>area</EM>, and the <EM>area</EM> value will be -+ The <STRONG>tgetstr</STRONG> routine returns the string entry for <EM>id</EM>, or -+ zero if it is not available. Use <STRONG>tputs</STRONG> to output the re- -+ turned string. The return value will also be copied to -+ the buffer pointed to by <EM>area</EM>, and the <EM>area</EM> value will be - updated to point past the null ending this value. - - Only the first two characters of the <STRONG>id</STRONG> parameter of <STRONG>tget-</STRONG> - <STRONG>flag</STRONG>, <STRONG>tgetnum</STRONG> and <STRONG>tgetstr</STRONG> are compared in lookups. - -- The <STRONG>tgoto</STRONG> routine instantiates the parameters into the -- given capability. The output from this routine is to be -+ <STRONG>FORMATTING</STRONG> <STRONG>CAPABILITIES</STRONG> -+ The <STRONG>tgoto</STRONG> routine instantiates the parameters into the -+ given capability. The output from this routine is to be - passed to <STRONG>tputs</STRONG>. - -- The <STRONG>tputs</STRONG> routine is described on the <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> -+ The <STRONG>tputs</STRONG> routine is described on the <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> - manual page. It can retrieve capabilities by either term- - cap or terminfo name. - -+ <STRONG>GLOBAL</STRONG> <STRONG>VARIABLES</STRONG> - The variables <STRONG>PC</STRONG>, <STRONG>UP</STRONG> and <STRONG>BC</STRONG> are set by <STRONG>tgetent</STRONG> to the ter- - minfo entry's data for <STRONG>pad_char</STRONG>, <STRONG>cursor_up</STRONG> and -- <STRONG>backspace_if_not_bs</STRONG>, respectively. <STRONG>UP</STRONG> is not used by -+ <STRONG>backspace_if_not_bs</STRONG>, respectively. <STRONG>UP</STRONG> is not used by - ncurses. <STRONG>PC</STRONG> is used in the <STRONG>tdelay_output</STRONG> function. <STRONG>BC</STRONG> is -- used in the <STRONG>tgoto</STRONG> emulation. The variable <STRONG>ospeed</STRONG> is set -+ used in the <STRONG>tgoto</STRONG> emulation. The variable <STRONG>ospeed</STRONG> is set - by ncurses in a system-specific coding to reflect the ter- - minal speed. - -@@ -119,7 +142,7 @@ - </PRE> - <H2>RETURN VALUE</H2><PRE> - Except where explicitly noted, routines that return an in- -- teger return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4 only specifies -+ teger return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4 only specifies - "an integer value other than <STRONG>ERR</STRONG>") upon successful comple- - tion. - -@@ -129,54 +152,76 @@ - </PRE> - <H2>BUGS</H2><PRE> - If you call <STRONG>tgetstr</STRONG> to fetch <STRONG>ca</STRONG> or any other parameterized -- string, be aware that it will be returned in terminfo no- -+ string, be aware that it will be returned in terminfo no- - tation, not the older and not-quite-compatible termcap no- -- tation. This will not cause problems if all you do with -- it is call <STRONG>tgoto</STRONG> or <STRONG>tparm</STRONG>, which both expand terminfo- -- style strings as terminfo. (The <STRONG>tgoto</STRONG> function, if con- -- figured to support termcap, will check if the string is -- indeed terminfo-style by looking for "%p" parameters or -- "$&lt;..&gt;" delays, and invoke a termcap-style parser if the -+ tation. This will not cause problems if all you do with -+ it is call <STRONG>tgoto</STRONG> or <STRONG>tparm</STRONG>, which both expand terminfo- -+ style strings as terminfo. (The <STRONG>tgoto</STRONG> function, if con- -+ figured to support termcap, will check if the string is -+ indeed terminfo-style by looking for "%p" parameters or -+ "$&lt;..&gt;" delays, and invoke a termcap-style parser if the - string does not appear to be terminfo). - -- Because terminfo conventions for representing padding in -- string capabilities differ from termcap's, <STRONG>tputs("50");</STRONG> -- will put out a literal "50" rather than busy-waiting for -+ Because terminfo conventions for representing padding in -+ string capabilities differ from termcap's, <STRONG>tputs("50");</STRONG> -+ will put out a literal "50" rather than busy-waiting for - 50 milliseconds. Cope with it. - -- Note that termcap has nothing analogous to terminfo's <STRONG>sgr</STRONG> -- string. One consequence of this is that termcap applica- -- tions assume me (terminfo <STRONG>sgr0</STRONG>) does not reset the alter- -- nate character set. This implementation checks for, and -+ Note that termcap has nothing analogous to terminfo's <STRONG>sgr</STRONG> -+ string. One consequence of this is that termcap applica- -+ tions assume me (terminfo <STRONG>sgr0</STRONG>) does not reset the alter- -+ nate character set. This implementation checks for, and - modifies the data shown to the termcap interface to accom- - modate termcap's limitation in this respect. - - - </PRE> - <H2>PORTABILITY</H2><PRE> -- The XSI Curses standard, Issue 4 describes these func- -- tions. However, they are marked TO BE WITHDRAWN and may -+ The XSI Curses standard, Issue 4 describes these func- -+ tions. However, they are marked TO BE WITHDRAWN and may - be removed in future versions. - -- Neither the XSI Curses standard nor the SVr4 man pages -- documented the return values of <STRONG>tgetent</STRONG> correctly, though -- all three were in fact returned ever since SVr1. In par- -- ticular, an omission in the XSI Curses documentation has -- been misinterpreted to mean that <STRONG>tgetent</STRONG> returns <STRONG>OK</STRONG> or -+ Neither the XSI Curses standard nor the SVr4 man pages -+ documented the return values of <STRONG>tgetent</STRONG> correctly, though -+ all three were in fact returned ever since SVr1. In par- -+ ticular, an omission in the XSI Curses documentation has -+ been misinterpreted to mean that <STRONG>tgetent</STRONG> returns <STRONG>OK</STRONG> or - <STRONG>ERR</STRONG>. Because the purpose of these functions is to provide -- compatibility with the <EM>termcap</EM> library, that is a defect -+ compatibility with the <EM>termcap</EM> library, that is a defect - in XCurses, Issue 4, Version 2 rather than in ncurses. - -- External variables are provided for support of certain -- termcap applications. However, termcap applications' use -+ External variables are provided for support of certain -+ termcap applications. However, termcap applications' use - of those variables is poorly documented, e.g., not distin- -- guishing between input and output. In particular, some -+ guishing between input and output. In particular, some - applications are reported to declare and/or modify <STRONG>ospeed</STRONG>. - -+ The comment that only the first two characters of the <STRONG>id</STRONG> -+ parameter are used escapes many application developers. -+ The original BSD 4.2 termcap library (and historical -+ relics thereof) did not require a trailing null NUL on the -+ parameter name passed to <STRONG>tgetstr</STRONG>, <STRONG>tgetnum</STRONG> and <STRONG>tgetflag</STRONG>. -+ Some applications assume that the termcap interface does -+ not require the trailing NUL for the parameter name. Tak- -+ ing into account these issues: -+ -+ <STRONG>o</STRONG> As a special case, <STRONG>tgetflag</STRONG> matched against a single- -+ character identifier provided that was at the end of -+ the terminal description. You should not rely upon -+ this behavior in portable programs. This implementa- -+ tion disallows matches against single-character capa- -+ bility names. -+ -+ <STRONG>o</STRONG> This implementation disallows matches by the termcap -+ interface against extended capability names which are -+ longer than two characters. -+ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG><A HREF="putc.3.html">putc(3)</A></STRONG>. -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>. -+ -+ http://invisible-island.net/ncurses/tctest.html - - - -diff -Naur ncurses-5.9/doc/html/man/curs_terminfo.3x.html ncurses-5.9.patch/doc/html/man/curs_terminfo.3x.html ---- ncurses-5.9/doc/html/man/curs_terminfo.3x.html 2011-01-09 02:03:15.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_terminfo.3x.html 2014-09-01 16:33:22.324792069 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1999-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1999-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,12 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_terminfo.3x,v 1.35 2010/12/04 18:38:55 tom Exp @ -+ * @Id: curs_terminfo.3x,v 1.43 2013/07/20 19:29:59 tom Exp @ -+ * *************************************************************************** -+ * *************************************************************************** -+ * *************************************************************************** -+ * *************************************************************************** -+ * *************************************************************************** - --> - <HTML> - <HEAD> -@@ -68,7 +73,7 @@ - <STRONG>int</STRONG> <STRONG>putp(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG> - <STRONG>int</STRONG> <STRONG>vidputs(chtype</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>putc</EM><STRONG>)(int));</STRONG> - <STRONG>int</STRONG> <STRONG>vidattr(chtype</STRONG> <EM>attrs</EM><STRONG>);</STRONG> -- <STRONG>int</STRONG> <STRONG>vid_puts(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>putc</EM><STRONG>)(char));</STRONG> -+ <STRONG>int</STRONG> <STRONG>vid_puts(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>putc</EM><STRONG>)(int));</STRONG> - <STRONG>int</STRONG> <STRONG>vid_attr(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG> - <STRONG>int</STRONG> <STRONG>mvcur(int</STRONG> <EM>oldrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>oldcol</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>newrow</EM>, int <EM>newcol</EM><STRONG>);</STRONG> - <STRONG>int</STRONG> <STRONG>tigetflag(char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> -@@ -85,38 +90,51 @@ - tion keys. For all other functionality, <STRONG>curses</STRONG> routines - are more suitable and their use is recommended. - -+ <STRONG>Initialization</STRONG> - Initially, <STRONG>setupterm</STRONG> should be called. Note that <STRONG>se-</STRONG> - <STRONG>tupterm</STRONG> is automatically called by <STRONG>initscr</STRONG> and <STRONG>newterm</STRONG>. - This defines the set of terminal-dependent variables -- [listed in <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>]. The <STRONG>terminfo</STRONG> variables <STRONG>lines</STRONG> and -- <STRONG>columns</STRONG> are initialized by <STRONG>setupterm</STRONG> as follows: -+ [listed in <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>]. - -- If <STRONG>use_env(FALSE)</STRONG> has been called, values for <STRONG>lines</STRONG> -- and <STRONG>columns</STRONG> specified in <STRONG>terminfo</STRONG> are used. -+ Each initialization routine provides applications with the -+ terminal capabilities either directly (via header defini- -+ tions), or by special functions. The header files <STRONG>curs-</STRONG> -+ <STRONG>es.h</STRONG> and <STRONG>term.h</STRONG> should be included (in this order) to get -+ the definitions for these strings, numbers, and flags. - -- Otherwise, if the environment variables <STRONG>LINES</STRONG> and -- <STRONG>COLUMNS</STRONG> exist, their values are used. If these en- -- vironment variables do not exist and the program is -- running in a window, the current window size is -- used. Otherwise, if the environment variables do -- not exist, the values for <STRONG>lines</STRONG> and <STRONG>columns</STRONG> speci- -- fied in the <STRONG>terminfo</STRONG> database are used. -- -- The header files <STRONG>curses.h</STRONG> and <STRONG>term.h</STRONG> should be included -- (in this order) to get the definitions for these strings, -- numbers, and flags. Parameterized strings should be -- passed through <STRONG>tparm</STRONG> to instantiate them. All <STRONG>terminfo</STRONG> -- strings [including the output of <STRONG>tparm</STRONG>] should be printed -- with <STRONG>tputs</STRONG> or <STRONG>putp</STRONG>. Call the <STRONG>reset_shell_mode</STRONG> to restore -- the tty modes before exiting [see <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>]. Pro- -- grams which use cursor addressing should output <STRONG>en-</STRONG> -- <STRONG>ter_ca_mode</STRONG> upon startup and should output <STRONG>exit_ca_mode</STRONG> -- before exiting. Programs desiring shell escapes should -- call -- -- <STRONG>reset_shell_mode</STRONG> and output <STRONG>exit_ca_mode</STRONG> before the shell -- is called and should output <STRONG>enter_ca_mode</STRONG> and call <STRONG>re-</STRONG> -- <STRONG>set_prog_mode</STRONG> after returning from the shell. -+ The <STRONG>terminfo</STRONG> variables <STRONG>lines</STRONG> and <STRONG>columns</STRONG> are initialized -+ by <STRONG>setupterm</STRONG> as follows: -+ -+ <STRONG>o</STRONG> If <STRONG>use_env(FALSE)</STRONG> has been called, values for <STRONG>lines</STRONG> -+ and <STRONG>columns</STRONG> specified in <STRONG>terminfo</STRONG> are used. -+ -+ <STRONG>o</STRONG> Otherwise, if the environment variables <STRONG>LINES</STRONG> and <STRONG>COL-</STRONG> -+ <STRONG>UMNS</STRONG> exist, their values are used. If these environ- -+ ment variables do not exist and the program is running -+ in a window, the current window size is used. Other- -+ wise, if the environment variables do not exist, the -+ values for <STRONG>lines</STRONG> and <STRONG>columns</STRONG> specified in the <STRONG>terminfo</STRONG> -+ database are used. -+ -+ Parameterized strings should be passed through <STRONG>tparm</STRONG> to -+ instantiate them. All <STRONG>terminfo</STRONG> strings [including the -+ output of <STRONG>tparm</STRONG>] should be printed with <STRONG>tputs</STRONG> or <STRONG>putp</STRONG>. -+ Call <STRONG>reset_shell_mode</STRONG> to restore the tty modes before ex- -+ iting [see <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>]. -+ -+ Programs which use cursor addressing should -+ -+ <STRONG>o</STRONG> output <STRONG>enter_ca_mode</STRONG> upon startup and -+ -+ <STRONG>o</STRONG> output <STRONG>exit_ca_mode</STRONG> before exiting. -+ -+ Programs which execute shell subprocesses should -+ -+ <STRONG>o</STRONG> call <STRONG>reset_shell_mode</STRONG> and output <STRONG>exit_ca_mode</STRONG> before -+ the shell is called and -+ -+ <STRONG>o</STRONG> output <STRONG>enter_ca_mode</STRONG> and call <STRONG>reset_prog_mode</STRONG> after -+ returning from the shell. - - The <STRONG>setupterm</STRONG> routine reads in the <STRONG>terminfo</STRONG> database, ini- - tializing the <STRONG>terminfo</STRONG> structures, but does not set up the -@@ -129,54 +147,74 @@ - <EM>rret</EM>. A return value of <STRONG>OK</STRONG> combined with status of <STRONG>1</STRONG> in - <EM>errret</EM> is normal. If <STRONG>ERR</STRONG> is returned, examine <EM>errret</EM>: - -- <STRONG>1</STRONG> means that the terminal is hardcopy, cannot be -- used for curses applications. -+ <STRONG>1</STRONG> means that the terminal is hardcopy, cannot be used -+ for curses applications. -+ -+ <STRONG>setupterm</STRONG> determines if the entry is a hardcopy type -+ by checking the <EM>hc</EM> (<EM>hardcopy</EM>) capability. - -- <STRONG>0</STRONG> means that the terminal could not be found, or -- that it is a generic type, having too little -- information for curses applications to run. -+ <STRONG>0</STRONG> means that the terminal could not be found, or that -+ it is a generic type, having too little information -+ for curses applications to run. - -- <STRONG>-1</STRONG> means that the <STRONG>terminfo</STRONG> database could not be -- found. -+ <STRONG>setupterm</STRONG> determines if the entry is a generic type -+ by checking the <EM>gn</EM> (<EM>generic</EM>) capability. - -- If <EM>errret</EM> is null, <STRONG>setupterm</STRONG> prints an error message upon -+ <STRONG>-1</STRONG> means that the <STRONG>terminfo</STRONG> database could not be found. -+ -+ If <EM>errret</EM> is null, <STRONG>setupterm</STRONG> prints an error message upon - finding an error and exits. Thus, the simplest call is: - - <STRONG>setupterm((char</STRONG> <STRONG>*)0,</STRONG> <STRONG>1,</STRONG> <STRONG>(int</STRONG> <STRONG>*)0);</STRONG>, - -- which uses all the defaults and sends the output to <STRONG>std-</STRONG> -+ which uses all the defaults and sends the output to <STRONG>std-</STRONG> - <STRONG>out</STRONG>. - -- The <STRONG>setterm</STRONG> routine is being replaced by <STRONG>setupterm</STRONG>. The -- call: -+ The <STRONG>setterm</STRONG> routine was replaced by <STRONG>setupterm</STRONG>. The call: - - <STRONG>setupterm(</STRONG><EM>term</EM><STRONG>,</STRONG> <STRONG>1,</STRONG> <STRONG>(int</STRONG> <STRONG>*)0)</STRONG> - - provides the same functionality as <STRONG>setterm(</STRONG><EM>term</EM><STRONG>)</STRONG>. The -- <STRONG>setterm</STRONG> routine is included here for BSD compatibility, -- and is not recommended for new programs. -+ <STRONG>setterm</STRONG> routine is provided for BSD compatibility, and is -+ not recommended for new programs. - -- The <STRONG>set_curterm</STRONG> routine sets the variable <STRONG>cur_term</STRONG> to -- <EM>nterm</EM>, and makes all of the <STRONG>terminfo</STRONG> boolean, numeric, and -- string variables use the values from <EM>nterm</EM>. It returns -- the old value of <STRONG>cur_term</STRONG>. -+ <STRONG>The</STRONG> <STRONG>Terminal</STRONG> <STRONG>State</STRONG> -+ The <STRONG>setupterm</STRONG> routine stores its information about the -+ terminal in a <STRONG>TERMINAL</STRONG> structure pointed to by the global -+ variable <STRONG>cur_term</STRONG>. If it detects an error, or decides -+ that the terminal is unsuitable (hardcopy or generic), it -+ discards this information, making it not available to ap- -+ plications. -+ -+ If <STRONG>setupterm</STRONG> is called repeatedly for the same terminal -+ type, it will reuse the information. It maintains only -+ one copy of a given terminal's capabilities in memory. If -+ it is called for different terminal types, <STRONG>setupterm</STRONG> allo- -+ cates new storage for each set of terminal capabilities. -+ -+ The <STRONG>set_curterm</STRONG> routine sets <STRONG>cur_term</STRONG> to <EM>nterm</EM>, and makes -+ all of the <STRONG>terminfo</STRONG> boolean, numeric, and string variables -+ use the values from <EM>nterm</EM>. It returns the old value of -+ <STRONG>cur_term</STRONG>. - -- The <STRONG>del_curterm</STRONG> routine frees the space pointed to by -+ The <STRONG>del_curterm</STRONG> routine frees the space pointed to by - <EM>oterm</EM> and makes it available for further use. If <EM>oterm</EM> is -- the same as <STRONG>cur_term</STRONG>, references to any of the <STRONG>terminfo</STRONG> -- boolean, numeric, and string variables thereafter may re- -- fer to invalid memory locations until another <STRONG>setupterm</STRONG> -+ the same as <STRONG>cur_term</STRONG>, references to any of the <STRONG>terminfo</STRONG> -+ boolean, numeric, and string variables thereafter may re- -+ fer to invalid memory locations until another <STRONG>setupterm</STRONG> - has been called. - - The <STRONG>restartterm</STRONG> routine is similar to <STRONG>setupterm</STRONG> and -- <STRONG>initscr</STRONG>, except that it is called after restoring memory -- to a previous state (for example, when reloading a game -- saved as a core image dump). It assumes that the windows -- and the input and output options are the same as when mem- -- ory was saved, but the terminal type and baud rate may be -- different. Accordingly, it saves various tty state bits, -- calls <STRONG>setupterm</STRONG>, and then restores the bits. -+ <STRONG>initscr</STRONG>, except that it is called after restoring memory -+ to a previous state (for example, when reloading a game -+ saved as a core image dump). <STRONG>restartterm</STRONG> assumes that the -+ windows and the input and output options are the same as -+ when memory was saved, but the terminal type and baud rate -+ may be different. Accordingly, <STRONG>restartterm</STRONG> saves various -+ tty state bits, calls <STRONG>setupterm</STRONG>, and then restores the -+ bits. - -+ <STRONG>Formatting</STRONG> <STRONG>Output</STRONG> - The <STRONG>tparm</STRONG> routine instantiates the string <EM>str</EM> with parame- - ters <EM>pi</EM>. A pointer is returned to the result of <EM>str</EM> with - the parameters applied. -@@ -185,6 +223,7 @@ - rather than a fixed-parameter list. Its numeric parame- - ters are integers (int) rather than longs. - -+ <STRONG>Output</STRONG> <STRONG>Functions</STRONG> - The <STRONG>tputs</STRONG> routine applies padding information to the - string <EM>str</EM> and outputs it. The <EM>str</EM> must be a terminfo - string variable or the return value from <STRONG>tparm</STRONG>, <STRONG>tgetstr</STRONG>, -@@ -218,36 +257,48 @@ - takes effect immediately (rather than at the next re- - fresh). - -+ <STRONG>Terminal</STRONG> <STRONG>Capability</STRONG> <STRONG>Functions</STRONG> - The <STRONG>tigetflag</STRONG>, <STRONG>tigetnum</STRONG> and <STRONG>tigetstr</STRONG> routines return the - value of the capability corresponding to the <STRONG>terminfo</STRONG> <EM>cap-</EM> -- <EM>name</EM> passed to them, such as <STRONG>xenl</STRONG>. -+ <EM>name</EM> passed to them, such as <STRONG>xenl</STRONG>. The <EM>capname</EM> for each -+ capability is given in the table column entitled <EM>capname</EM> -+ code in the capabilities section of <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. -+ -+ These routines return special values to denote errors. -+ -+ The <STRONG>tigetflag</STRONG> routine returns -+ -+ <STRONG>-1</STRONG> if <EM>capname</EM> is not a boolean capability, or -+ -+ <STRONG>0</STRONG> if it is canceled or absent from the terminal de- -+ scription. - -- The <STRONG>tigetflag</STRONG> routine returns the value <STRONG>-1</STRONG> if <EM>capname</EM> is -- not a boolean capability, or <STRONG>0</STRONG> if it is canceled or absent -- from the terminal description. -- -- The <STRONG>tigetnum</STRONG> routine returns the value <STRONG>-2</STRONG> if <EM>capname</EM> is -- not a numeric capability, or <STRONG>-1</STRONG> if it is canceled or ab- -- sent from the terminal description. -- -- The <STRONG>tigetstr</STRONG> routine returns the value <STRONG>(char</STRONG> <STRONG>*)-1</STRONG> if <EM>cap-</EM> -- <EM>name</EM> is not a string capability, or <STRONG>0</STRONG> if it is canceled or -- absent from the terminal description. -- -- The <EM>capname</EM> for each capability is given in the table col- -- umn entitled <EM>capname</EM> code in the capabilities section of -- <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. -+ The <STRONG>tigetnum</STRONG> routine returns - -+ <STRONG>-2</STRONG> if <EM>capname</EM> is not a numeric capability, or -+ -+ <STRONG>-1</STRONG> if it is canceled or absent from the terminal de- -+ scription. -+ -+ The <STRONG>tigetstr</STRONG> routine returns -+ -+ <STRONG>(char</STRONG> <STRONG>*)-1</STRONG> -+ if <EM>capname</EM> is not a string capability, or -+ -+ <STRONG>0</STRONG> if it is canceled or absent from the terminal de- -+ scription. -+ -+ <STRONG>Terminal</STRONG> <STRONG>Capability</STRONG> <STRONG>Names</STRONG> -+ These null-terminated arrays contain the short terminfo -+ names ("codes"), the <STRONG>termcap</STRONG> names, and the long terminfo -+ names ("fnames") for each of the predefined <STRONG>terminfo</STRONG> vari- -+ ables: - <STRONG>char</STRONG> <STRONG>*boolnames[]</STRONG>, <STRONG>*boolcodes[]</STRONG>, <STRONG>*boolfnames[]</STRONG> - - <STRONG>char</STRONG> <STRONG>*numnames[]</STRONG>, <STRONG>*numcodes[]</STRONG>, <STRONG>*numfnames[]</STRONG> - - <STRONG>char</STRONG> <STRONG>*strnames[]</STRONG>, <STRONG>*strcodes[]</STRONG>, <STRONG>*strfnames[]</STRONG> - -- These null-terminated arrays contain the <EM>capnames</EM>, the -- <STRONG>termcap</STRONG> codes, and the full C names, for each of the <STRONG>ter-</STRONG> -- <STRONG>minfo</STRONG> variables. -- - - </PRE> - <H2>RETURN VALUE</H2><PRE> -@@ -261,49 +312,64 @@ - X/Open defines no error conditions. In this implementa- - tion - -- <STRONG>del_curterm</STRONG> -- returns an error if its terminal parameter is -- null. -- -- <STRONG>putp</STRONG> calls <STRONG>tputs</STRONG>, returning the same error-codes. -- -- <STRONG>restartterm</STRONG> -- returns an error if the associated call to <STRONG>se-</STRONG> -- <STRONG>tupterm</STRONG> returns an error. -- -- <STRONG>setupterm</STRONG> -- returns an error if it cannot allocate enough -- memory, or create the initial windows (stdscr, -- curscr, newscr). Other error conditions are -- documented above. -- -- <STRONG>tputs</STRONG> -- returns an error if the string parameter is -- null. It does not detect I/O errors: X/Open -- states that <STRONG>tputs</STRONG> ignores the return value of -- the output function <EM>putc</EM>. -- -- --</PRE> --<H2>NOTES</H2><PRE> -- The <STRONG>setupterm</STRONG> routine should be used in place of <STRONG>setterm</STRONG>. -- It may be useful when you want to test for terminal capa- -- bilities without committing to the allocation of storage -- involved in <STRONG>initscr</STRONG>. -- -- Note that <STRONG>vidattr</STRONG> and <STRONG>vidputs</STRONG> may be macros. -+ <STRONG>del_curterm</STRONG> -+ returns an error if its terminal parameter is -+ null. -+ -+ <STRONG>putp</STRONG> calls <STRONG>tputs</STRONG>, returning the same error-codes. -+ -+ <STRONG>restartterm</STRONG> -+ returns an error if the associated call to <STRONG>se-</STRONG> -+ <STRONG>tupterm</STRONG> returns an error. -+ -+ <STRONG>setupterm</STRONG> -+ returns an error if it cannot allocate enough -+ memory, or create the initial windows (stdscr, -+ curscr, newscr). Other error conditions are -+ documented above. -+ -+ <STRONG>tputs</STRONG> -+ returns an error if the string parameter is -+ null. It does not detect I/O errors: X/Open -+ states that <STRONG>tputs</STRONG> ignores the return value of -+ the output function <EM>putc</EM>. - - - </PRE> - <H2>PORTABILITY</H2><PRE> -- The function <STRONG>setterm</STRONG> is not described by X/Open and must -- be considered non-portable. All other functions are as -+ X/Open notes that <STRONG>vidattr</STRONG> and <STRONG>vidputs</STRONG> may be macros. -+ -+ The function <STRONG>setterm</STRONG> is not described by X/Open and must -+ be considered non-portable. All other functions are as - described by X/Open. - -- <STRONG>setupterm</STRONG> copies the terminal name to the array <STRONG>ttytype</STRONG>. -- This is not part of X/Open Curses, but is assumed by some -+ <STRONG>setupterm</STRONG> copies the terminal name to the array <STRONG>ttytype</STRONG>. -+ This is not part of X/Open Curses, but is assumed by some - applications. - -+ If configured to use the terminal-driver, e.g., for the -+ MinGW port, -+ -+ <STRONG>o</STRONG> <STRONG>setupterm</STRONG> interprets a missing/empty TERM variable as -+ the special value "unknown". -+ -+ <STRONG>o</STRONG> <STRONG>setupterm</STRONG> allows explicit use of the the windows con- -+ sole driver by checking if $TERM is set to "#win32con" -+ or an abbreviation of that string. -+ -+ Older versions of <STRONG>ncurses</STRONG> assumed that the file descriptor -+ passed to <STRONG>setupterm</STRONG> from <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> uses buffered -+ I/O, and would write to the corresponding stream. In ad- -+ dition to the limitation that the terminal was left in -+ block-buffered mode on exit (like SystemV curses), it was -+ problematic because <STRONG>ncurses</STRONG> did not allow a reliable way -+ to cleanup on receiving SIGTSTP. The current version uses -+ output buffers managed directly by <STRONG>ncurses</STRONG>. Some of the -+ low-level functions described in this manual page write to -+ the standard output. They are not signal-safe. The high- -+ level functions in <STRONG>ncurses</STRONG> use alternate versions of these -+ functions using the more reliable buffering scheme. -+ - In System V Release 4, <STRONG>set_curterm</STRONG> has an <STRONG>int</STRONG> return type - and returns <STRONG>OK</STRONG> or <STRONG>ERR</STRONG>. We have chosen to implement the - X/Open Curses semantics. -@@ -323,12 +389,12 @@ - zeroes are fine for this purpose. - - In response to comments by Thomas E. Dickey, X/Open Curses -- Issue 7 proposed the <STRONG>tiparam</STRONG> function in mid-2009. -+ Issue 7 proposed the <STRONG>tiparm</STRONG> function in mid-2009. - - X/Open notes that after calling <STRONG>mvcur</STRONG>, the curses state - may not match the actual terminal state, and that an ap- - plication should touch and refresh the window before re- -- suming normal curses calls. Both ncurses and System V Re- -+ suming normal curses calls. Both <STRONG>ncurses</STRONG> and System V Re- - lease 4 curses implement <STRONG>mvcur</STRONG> using the SCREEN data allo- - cated in either <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>. So though it is docu- - mented as a terminfo function, <STRONG>mvcur</STRONG> is really a curses -@@ -339,15 +405,18 @@ - for the old ordinates. In that case, the old location is - unknown. - -+ Other implementions may not declare the capability name -+ arrays. Some provide them without declaring them. X/Open -+ does not specify them. -+ - Extended terminal capability names, e.g., as defined by -- <STRONG>tic</STRONG> <STRONG>-x</STRONG>, are not stored in the arrays described in this -- section. -+ <STRONG>tic</STRONG> <STRONG>-x</STRONG>, are not stored in the arrays described here. - - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>, <STRONG>curs_term-</STRONG> -- <STRONG><A HREF="curs_termcap.3x.html">cap(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG><A HREF="putc.3.html">putc(3)</A></STRONG>, -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>, <STRONG>curs_term-</STRONG> -+ <STRONG><A HREF="curs_termcap.3x.html">cap(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>, - <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> - - -diff -Naur ncurses-5.9/doc/html/man/curs_threads.3x.html ncurses-5.9.patch/doc/html/man/curs_threads.3x.html ---- ncurses-5.9/doc/html/man/curs_threads.3x.html 2011-01-09 02:03:15.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_threads.3x.html 2014-09-01 16:33:22.324792069 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2008-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_threads.3x,v 1.18 2010/12/04 18:38:55 tom Exp @ -+ * @Id: curs_threads.3x,v 1.19 2012/05/26 17:03:26 tom Exp @ - * *************************************************************************** - * *************************************************************************** - --> -@@ -61,9 +61,9 @@ - <STRONG>int</STRONG> <STRONG>get_escdelay(void);</STRONG> - <STRONG>int</STRONG> <STRONG>set_escdelay(int</STRONG> <STRONG>size);</STRONG> - <STRONG>int</STRONG> <STRONG>set_tabsize(int</STRONG> <STRONG>size);</STRONG> -- <STRONG>int</STRONG> <STRONG>use_screen(SCREEN</STRONG> <STRONG>*scr,</STRONG> <STRONG>NCURSES_WINDOW_CB</STRONG> <STRONG>func,</STRONG> <STRONG>void</STRONG> -+ <STRONG>int</STRONG> <STRONG>use_screen(SCREEN</STRONG> <STRONG>*scr,</STRONG> <STRONG>NCURSES_SCREEN_CB</STRONG> <STRONG>func,</STRONG> <STRONG>void</STRONG> - <STRONG>*data);</STRONG> -- <STRONG>int</STRONG> <STRONG>use_window(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>NCURSES_SCREEN_CB</STRONG> <STRONG>func,</STRONG> <STRONG>void</STRONG> -+ <STRONG>int</STRONG> <STRONG>use_window(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>NCURSES_WINDOW_CB</STRONG> <STRONG>func,</STRONG> <STRONG>void</STRONG> - <STRONG>*data);</STRONG> - - -diff -Naur ncurses-5.9/doc/html/man/curs_touch.3x.html ncurses-5.9.patch/doc/html/man/curs_touch.3x.html ---- ncurses-5.9/doc/html/man/curs_touch.3x.html 2011-01-09 02:03:15.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_touch.3x.html 2014-09-01 16:33:22.324792069 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_trace.3x.html ncurses-5.9.patch/doc/html/man/curs_trace.3x.html ---- ncurses-5.9/doc/html/man/curs_trace.3x.html 2011-01-09 02:03:16.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_trace.3x.html 2014-09-01 16:33:22.324792069 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 2000-2009,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/curs_util.3x.html ncurses-5.9.patch/doc/html/man/curs_util.3x.html ---- ncurses-5.9/doc/html/man/curs_util.3x.html 2011-02-26 00:24:59.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_util.3x.html 2014-09-01 16:33:22.325792071 +0200 -@@ -1,7 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- -+ * t - **************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +28,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_util.3x,v 1.32 2010/12/04 18:38:55 tom Exp @ -+ * @Id: curs_util.3x,v 1.37 2013/07/20 19:43:45 tom Exp @ - --> - <HTML> - <HEAD> -@@ -48,8 +49,8 @@ - </PRE> - <H2>NAME</H2><PRE> - <STRONG>delay_output</STRONG>, <STRONG>filter</STRONG>, <STRONG>flushinp</STRONG>, <STRONG>getwin</STRONG>, <STRONG>key_name</STRONG>, <STRONG>keyname</STRONG>, -- <STRONG>nofilter</STRONG>, <STRONG>putwin</STRONG>, <STRONG>unctrl</STRONG>, <STRONG>use_env</STRONG>, <STRONG>wunctrl</STRONG> - miscellaneous -- <STRONG>curses</STRONG> utility routines -+ <STRONG>nofilter</STRONG>, <STRONG>putwin</STRONG>, <STRONG>unctrl</STRONG>, <STRONG>use_env</STRONG>, <STRONG>use_tioctl</STRONG>, <STRONG>wunctrl</STRONG> - -+ miscellaneous <STRONG>curses</STRONG> utility routines - - - </PRE> -@@ -63,6 +64,7 @@ - <STRONG>void</STRONG> <STRONG>filter(void);</STRONG> - <STRONG>void</STRONG> <STRONG>nofilter(void);</STRONG> - <STRONG>void</STRONG> <STRONG>use_env(bool</STRONG> <STRONG>f);</STRONG> -+ <STRONG>void</STRONG> <STRONG>use_tioctl(bool</STRONG> <STRONG>f);</STRONG> - <STRONG>int</STRONG> <STRONG>putwin(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>FILE</STRONG> <STRONG>*filep);</STRONG> - <STRONG>WINDOW</STRONG> <STRONG>*getwin(FILE</STRONG> <STRONG>*filep);</STRONG> - <STRONG>int</STRONG> <STRONG>delay_output(int</STRONG> <STRONG>ms);</STRONG> -@@ -122,16 +124,66 @@ - <STRONG>$TERM</STRONG>. The limitation arises because the <STRONG>filter</STRONG> routine - modifies the in-memory copy of the terminal information. - -- The <STRONG>use_env</STRONG> routine, if used, is called before <STRONG>initscr</STRONG> or -- <STRONG>newterm</STRONG> are called. When called with <STRONG>FALSE</STRONG> as an argu- -- ment, the values of <STRONG>lines</STRONG> and <STRONG>columns</STRONG> specified in the -- <EM>terminfo</EM> database will be used, even if environment vari- -- ables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> (used by default) are set, or if -- <STRONG>curses</STRONG> is running in a window (in which case default be- -- havior would be to use the window size if <STRONG>LINES</STRONG> and -- <STRONG>COLUMNS</STRONG> are not set). Note that setting <STRONG>LINES</STRONG> or <STRONG>COLUMNS</STRONG> -- overrides the corresponding size which may be obtained -- from the operating system. -+ The <STRONG>use_env</STRONG> routine, if used, should be called before -+ <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> are called (because those compute the -+ screen size). It modifies the way <STRONG>ncurses</STRONG> treats environ- -+ ment variables when determining the screen size. -+ -+ <STRONG>o</STRONG> Normally ncurses looks first at the terminal database -+ for the screen size. -+ -+ If <STRONG>use_env</STRONG> was called with <STRONG>FALSE</STRONG> for parameter, it -+ stops here unless If <STRONG>use_tioctl</STRONG> was also called with -+ <STRONG>TRUE</STRONG> for parameter. -+ -+ <STRONG>o</STRONG> Then it asks for the screen size via operating system -+ calls. If successful, it overrides the values from -+ the terminal database. -+ -+ <STRONG>o</STRONG> Finally (unless <STRONG>use_env</STRONG> was called with <STRONG>FALSE</STRONG> parame- -+ ter), ncurses examines the <STRONG>LINES</STRONG> or <STRONG>COLUMNS</STRONG> environ- -+ ment variables, using a value in those to override the -+ results from the operating system or terminal data- -+ base. -+ -+ Ncurses also updates the screen size in response to -+ SIGWINCH, unless overridden by the <STRONG>LINES</STRONG> or <STRONG>COLUMNS</STRONG> -+ environment variables, -+ -+ The <STRONG>use_tioctl</STRONG> routine, if used, should be called before -+ <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> are called (because those compute the -+ screen size). After <STRONG>use_tioctl</STRONG> is called with <STRONG>TRUE</STRONG> as an -+ argument, ncurses modifies the last step in its computa- -+ tion of screen size as follows: -+ -+ <STRONG>o</STRONG> checks if the <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> environment variables -+ are set to a number greater than zero. -+ -+ <STRONG>o</STRONG> for each, ncurses updates the corresponding environ- -+ ment variable with the value that it has obtained via -+ operating system call or from the terminal database. -+ -+ <STRONG>o</STRONG> ncurses re-fetches the value of the environment vari- -+ ables so that it is still the environment variables -+ which set the screen size. -+ -+ The <STRONG>use_env</STRONG> and <STRONG>use_tioctl</STRONG> routines combine as summarized -+ here: -+ -+ <EM>use</EM><STRONG>_</STRONG><EM>env</EM> <EM>use</EM><STRONG>_</STRONG><EM>tioctl</EM> <EM>Summary</EM> -+ ---------------------------------------------------------------- -+ TRUE FALSE This is the default behavior. ncurses -+ uses operating system calls unless over- -+ ridden by $LINES or $COLUMNS environment -+ variables. -+ TRUE TRUE ncurses updates $LINES and $COLUMNS -+ based on operating system calls. -+ -+ FALSE TRUE ncurses ignores $LINES and $COLUMNS, us- -+ es operating system calls to obtain -+ size. -+ FALSE FALSE ncurses relies on the terminal database -+ to determine size. - - The <STRONG>putwin</STRONG> routine writes all data associated with window - <EM>win</EM> into the file to which <EM>filep</EM> points. This information -@@ -191,60 +243,60 @@ - control code. If <STRONG>use_legacy_coding</STRONG> has been called - with a <STRONG>2</STRONG> parameter, <STRONG>unctrl</STRONG> returns the parameter, - i.e., a one-character string with the parameter as -- the first character. Otherwise, it returns ``~@'', -- ``~A'', etc., analogous to ``^@'', ``^A'', C0 con- -- trols. -- -- X/Open Curses does not document whether <STRONG>unctrl</STRONG> can -- be called before initializing curses. This imple- -- mentation permits that, and returns the ``~@'', -- etc., values in that case. -+ the first character. Otherwise, it returns "~@", -+ "~A", etc., analogous to "^@", "^A", C0 controls. - -- <STRONG>o</STRONG> parameter values outside the 0 to 255 range. <STRONG>unc-</STRONG> -+ X/Open Curses does not document whether <STRONG>unctrl</STRONG> can -+ be called before initializing curses. This imple- -+ mentation permits that, and returns the "~@", etc., -+ values in that case. -+ -+ <STRONG>o</STRONG> parameter values outside the 0 to 255 range. <STRONG>unc-</STRONG> - <STRONG>trl</STRONG> returns a null pointer. - - The SVr4 documentation describes the action of <STRONG>filter</STRONG> only -- in the vaguest terms. The description here is adapted -- from the XSI Curses standard (which erroneously fails to -+ in the vaguest terms. The description here is adapted -+ from the XSI Curses standard (which erroneously fails to - describe the disabling of <STRONG>cuu</STRONG>). - -- The strings returned by <STRONG>unctrl</STRONG> in this implementation are -- determined at compile time, showing C1 controls from the -- upper-128 codes with a `~' prefix rather than `^'. Other -- implementations have different conventions. For example, -- they may show both sets of control characters with `^', -- and strip the parameter to 7 bits. Or they may ignore C1 -- controls and treat all of the upper-128 codes as print- -+ The strings returned by <STRONG>unctrl</STRONG> in this implementation are -+ determined at compile time, showing C1 controls from the -+ upper-128 codes with a `~' prefix rather than `^'. Other -+ implementations have different conventions. For example, -+ they may show both sets of control characters with `^', -+ and strip the parameter to 7 bits. Or they may ignore C1 -+ controls and treat all of the upper-128 codes as print- - able. This implementation uses 8 bits but does not modify - the string to reflect locale. The <STRONG>use_legacy_coding</STRONG> func- - tion allows the caller to change the output of <STRONG>unctrl</STRONG>. - -- Likewise, the <STRONG>meta</STRONG> function allows the caller to change -- the output of <STRONG>keyname</STRONG>, i.e., it determines whether to use -- the `M-' prefix for ``meta'' keys (codes in the range 128 -- to 255). Both <STRONG>use_legacy_coding</STRONG> and <STRONG>meta</STRONG> succeed only af- -- ter curses is initialized. X/Open Curses does not docu- -- ment the treatment of codes 128 to 159. When treating -- them as ``meta'' keys (or if <STRONG>keyname</STRONG> is called before ini- -- tializing curses), this implementation returns strings -- ``M-^@'', ``M-^A'', etc. -- -- The <STRONG>keyname</STRONG> function may return the names of user-defined -- string capabilities which are defined in the terminfo en- -- try via the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG>. This implementation auto- -- matically assigns at run-time keycodes to user-defined -- strings which begin with "k". The keycodes start at -- KEY_MAX, but are not guaranteed to be the same value for -- different runs because user-defined codes are merged from -- all terminal descriptions which have been loaded. The -- <STRONG>use_extended_names</STRONG> function controls whether this data is -- loaded when the terminal description is read by the li- -+ Likewise, the <STRONG>meta</STRONG> function allows the caller to change -+ the output of <STRONG>keyname</STRONG>, i.e., it determines whether to use -+ the `M-' prefix for "meta" keys (codes in the range 128 to -+ 255). Both <STRONG>use_legacy_coding</STRONG> and <STRONG>meta</STRONG> succeed only after -+ curses is initialized. X/Open Curses does not document -+ the treatment of codes 128 to 159. When treating them as -+ "meta" keys (or if <STRONG>keyname</STRONG> is called before initializing -+ curses), this implementation returns strings "M-^@", -+ "M-^A", etc. -+ -+ The <STRONG>keyname</STRONG> function may return the names of user-defined -+ string capabilities which are defined in the terminfo en- -+ try via the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG>. This implementation auto- -+ matically assigns at run-time keycodes to user-defined -+ strings which begin with "k". The keycodes start at -+ KEY_MAX, but are not guaranteed to be the same value for -+ different runs because user-defined codes are merged from -+ all terminal descriptions which have been loaded. The -+ <STRONG>use_extended_names</STRONG> function controls whether this data is -+ loaded when the terminal description is read by the li- - brary. - -- The <STRONG>nofilter</STRONG> routine is specific to ncurses. It was not -- supported on Version 7, BSD or System V implementations. -- It is recommended that any code depending on ncurses ex- -- tensions be conditioned using NCURSES_VERSION. -+ The <STRONG>nofilter</STRONG> and <STRONG>use_tioctl</STRONG> routines are specific to -+ ncurses. They were not supported on Version 7, BSD or -+ System V implementations. It is recommended that any code -+ depending on ncurses extensions be conditioned using -+ NCURSES_VERSION. - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/curs_variables.3x.html ncurses-5.9.patch/doc/html/man/curs_variables.3x.html ---- ncurses-5.9/doc/html/man/curs_variables.3x.html 2011-01-09 02:03:16.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_variables.3x.html 2014-09-01 16:33:22.325792071 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: curs_variables.3x,v 1.4 2010/12/04 18:38:55 tom Exp @ -+ * @Id: curs_variables.3x,v 1.6 2013/12/21 18:41:32 tom Exp @ - --> - <HTML> - <HEAD> -@@ -73,10 +73,10 @@ - <STRONG><A HREF="ncurses.3x.html">es(3x)</A></STRONG> manual page. - - Depending on the configuration, these may be actual vari- -- ables, or macros (see <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>) which provide -- read-only access to <EM>curses</EM>'s state. In either case, ap- -- plications should treat them as read-only to avoid confus- -- ing the library. -+ ables, or macros (see <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> and -+ <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>) which provide read-only access to <EM>curs-</EM> -+ <EM>es</EM>'s state. In either case, applications should treat -+ them as read-only to avoid confusing the library. - - <STRONG>COLOR_PAIRS</STRONG> - After initializing curses, this variable contains the num- -@@ -133,7 +133,7 @@ - </PRE> - <H2>NOTES</H2><PRE> - The curses library is initialized using either -- <STRONG><A HREF="initscr.3x.html">initscr(3x)</A></STRONG>, or <STRONG><A HREF="newterm.3x.html">newterm(3x)</A></STRONG>. -+ <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, or <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>. - - If <STRONG>curses</STRONG> is configured to use separate curses/terminfo - libraries, most of these variables reside in the curses -@@ -148,8 +148,8 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG>termin-</STRONG> -- <STRONG><A HREF="terminfo.3x.html">fo(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, -+ <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. - - - -diff -Naur ncurses-5.9/doc/html/man/curs_window.3x.html ncurses-5.9.patch/doc/html/man/curs_window.3x.html ---- ncurses-5.9/doc/html/man/curs_window.3x.html 2011-01-09 02:03:17.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/curs_window.3x.html 2014-09-01 16:33:22.325792071 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/default_colors.3x.html ncurses-5.9.patch/doc/html/man/default_colors.3x.html ---- ncurses-5.9/doc/html/man/default_colors.3x.html 2011-01-09 02:03:17.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/default_colors.3x.html 2014-09-01 16:33:22.325792071 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -@@ -159,7 +159,7 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG><A HREF="ded.1.html">ded(1)</A></STRONG>. -+ <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG>ded(1)</STRONG>. - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/define_key.3x.html ncurses-5.9.patch/doc/html/man/define_key.3x.html ---- ncurses-5.9/doc/html/man/define_key.3x.html 2011-01-09 02:03:17.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/define_key.3x.html 2014-09-01 16:33:22.325792071 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/form.3x.html ncurses-5.9.patch/doc/html/man/form.3x.html ---- ncurses-5.9/doc/html/man/form.3x.html 2011-04-05 00:46:40.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/form.3x.html 2014-09-01 16:33:22.325792071 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -@@ -243,7 +243,7 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - -diff -Naur ncurses-5.9/doc/html/man/form_cursor.3x.html ncurses-5.9.patch/doc/html/man/form_cursor.3x.html ---- ncurses-5.9/doc/html/man/form_cursor.3x.html 2011-01-09 02:03:17.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_cursor.3x.html 2014-09-01 16:33:22.325792071 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_data.3x.html ncurses-5.9.patch/doc/html/man/form_data.3x.html ---- ncurses-5.9/doc/html/man/form_data.3x.html 2011-01-09 02:03:18.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_data.3x.html 2014-09-01 16:33:22.326792073 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_driver.3x.html ncurses-5.9.patch/doc/html/man/form_driver.3x.html ---- ncurses-5.9/doc/html/man/form_driver.3x.html 2011-01-09 02:03:18.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_driver.3x.html 2014-09-01 16:33:22.326792073 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -@@ -342,7 +342,7 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>, <STRONG><A HREF="form_variables.3x.html">form_variables(3x)</A></STRONG>, <STRONG><A HREF="getch.3x.html">getch(3x)</A></STRONG>. -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>, <STRONG><A HREF="form_variables.3x.html">form_variables(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>. - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/form_field.3x.html ncurses-5.9.patch/doc/html/man/form_field.3x.html ---- ncurses-5.9/doc/html/man/form_field.3x.html 2011-01-09 02:03:18.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_field.3x.html 2014-09-01 16:33:22.326792073 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: form_field.3x,v 1.10 2010/12/04 18:40:45 tom Exp @ -+ * @Id: form_field.3x,v 1.11 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -78,7 +78,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - The function <STRONG>form_fields</STRONG> returns a pointer (which may be - <STRONG>NULL</STRONG>). It does not set errno. - -diff -Naur ncurses-5.9/doc/html/man/form_field_attributes.3x.html ncurses-5.9.patch/doc/html/man/form_field_attributes.3x.html ---- ncurses-5.9/doc/html/man/form_field_attributes.3x.html 2011-01-09 02:03:18.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_field_attributes.3x.html 2014-09-01 16:33:22.326792073 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_field_buffer.3x.html ncurses-5.9.patch/doc/html/man/form_field_buffer.3x.html ---- ncurses-5.9/doc/html/man/form_field_buffer.3x.html 2011-02-26 00:25:01.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_field_buffer.3x.html 2014-09-01 16:33:22.326792073 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -@@ -151,8 +151,8 @@ - When configured for wide characters, <STRONG>field_buffer</STRONG> returns - a pointer to temporary storage (allocated and freed by the - library). The application should not attempt to modify -- the data. It will be freed on the next call to -- <STRONG>field_buffer</STRONG> to return the same buffer. <STRONG>&lt;curses.h&gt;</STRONG>. -+ the data. It will be freed on the next call to <STRONG>field_buf-</STRONG> -+ <STRONG>fer</STRONG> to return the same buffer. <STRONG>&lt;curses.h&gt;</STRONG>. - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/form_field_info.3x.html ncurses-5.9.patch/doc/html/man/form_field_info.3x.html ---- ncurses-5.9/doc/html/man/form_field_info.3x.html 2011-01-09 02:03:19.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_field_info.3x.html 2014-09-01 16:33:22.326792073 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_field_just.3x.html ncurses-5.9.patch/doc/html/man/form_field_just.3x.html ---- ncurses-5.9/doc/html/man/form_field_just.3x.html 2011-01-09 02:03:19.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_field_just.3x.html 2014-09-01 16:33:22.326792073 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_field_new.3x.html ncurses-5.9.patch/doc/html/man/form_field_new.3x.html ---- ncurses-5.9/doc/html/man/form_field_new.3x.html 2011-01-09 02:03:19.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_field_new.3x.html 2014-09-01 16:33:22.326792073 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_field_opts.3x.html ncurses-5.9.patch/doc/html/man/form_field_opts.3x.html ---- ncurses-5.9/doc/html/man/form_field_opts.3x.html 2011-01-09 02:03:19.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_field_opts.3x.html 2014-09-01 16:33:22.327792074 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_fieldtype.3x.html ncurses-5.9.patch/doc/html/man/form_fieldtype.3x.html ---- ncurses-5.9/doc/html/man/form_fieldtype.3x.html 2011-02-26 00:25:02.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_fieldtype.3x.html 2014-09-01 16:33:22.327792074 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -@@ -112,8 +112,8 @@ - <STRONG>REQ_PREV_CHOICE</STRONG> assume that the possible values of a field - form an ordered set, and provide the forms user with a way - to move through the set. The <STRONG>set_fieldtype_choice</STRONG> func- -- tion allows forms programmers to define successor and -- predecessor functions for the field type. These functions -+ tion allows forms programmers to define successor and pre- -+ decessor functions for the field type. These functions - take the field pointer and an argument-block structure as - arguments. - -diff -Naur ncurses-5.9/doc/html/man/form_field_userptr.3x.html ncurses-5.9.patch/doc/html/man/form_field_userptr.3x.html ---- ncurses-5.9/doc/html/man/form_field_userptr.3x.html 2011-01-09 02:03:20.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_field_userptr.3x.html 2014-09-01 16:33:22.327792074 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_field_validation.3x.html ncurses-5.9.patch/doc/html/man/form_field_validation.3x.html ---- ncurses-5.9/doc/html/man/form_field_validation.3x.html 2011-01-09 02:03:20.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_field_validation.3x.html 2014-09-01 16:33:22.327792074 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/form_hook.3x.html ncurses-5.9.patch/doc/html/man/form_hook.3x.html ---- ncurses-5.9/doc/html/man/form_hook.3x.html 2011-01-09 02:03:20.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_hook.3x.html 2014-09-01 16:33:22.327792074 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_new.3x.html ncurses-5.9.patch/doc/html/man/form_new.3x.html ---- ncurses-5.9/doc/html/man/form_new.3x.html 2011-01-09 02:03:20.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_new.3x.html 2014-09-01 16:33:22.327792074 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_new_page.3x.html ncurses-5.9.patch/doc/html/man/form_new_page.3x.html ---- ncurses-5.9/doc/html/man/form_new_page.3x.html 2011-01-09 02:03:20.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_new_page.3x.html 2014-09-01 16:33:22.327792074 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_opts.3x.html ncurses-5.9.patch/doc/html/man/form_opts.3x.html ---- ncurses-5.9/doc/html/man/form_opts.3x.html 2011-01-09 02:03:21.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_opts.3x.html 2014-09-01 16:33:22.327792074 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_page.3x.html ncurses-5.9.patch/doc/html/man/form_page.3x.html ---- ncurses-5.9/doc/html/man/form_page.3x.html 2011-01-09 02:03:21.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_page.3x.html 2014-09-01 16:33:22.328792076 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_post.3x.html ncurses-5.9.patch/doc/html/man/form_post.3x.html ---- ncurses-5.9/doc/html/man/form_post.3x.html 2011-01-09 02:03:21.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_post.3x.html 2014-09-01 16:33:22.328792076 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_requestname.3x.html ncurses-5.9.patch/doc/html/man/form_requestname.3x.html ---- ncurses-5.9/doc/html/man/form_requestname.3x.html 2011-01-09 02:03:21.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_requestname.3x.html 2014-09-01 16:33:22.328792076 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_userptr.3x.html ncurses-5.9.patch/doc/html/man/form_userptr.3x.html ---- ncurses-5.9/doc/html/man/form_userptr.3x.html 2011-01-09 02:03:21.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_userptr.3x.html 2014-09-01 16:33:22.328792076 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/form_variables.3x.html ncurses-5.9.patch/doc/html/man/form_variables.3x.html ---- ncurses-5.9/doc/html/man/form_variables.3x.html 2011-01-09 02:03:21.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_variables.3x.html 2014-09-01 16:33:22.328792076 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: form_variables.3x,v 1.3 2010/12/04 18:38:55 tom Exp @ -+ * @Id: form_variables.3x,v 1.4 2013/06/22 17:58:32 tom Exp @ - --> - <HTML> - <HEAD> -@@ -68,7 +68,7 @@ - </PRE> - <H2>DESCRIPTION</H2><PRE> - These are building blocks for the form library, defining -- fields that can be created using <STRONG><A HREF="set_fieldtype.3x.html">set_fieldtype(3x)</A></STRONG>. Each -+ fields that can be created using <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>. Each - provides functions for field- and character-validation, - according to the given datatype. - -diff -Naur ncurses-5.9/doc/html/man/form_win.3x.html ncurses-5.9.patch/doc/html/man/form_win.3x.html ---- ncurses-5.9/doc/html/man/form_win.3x.html 2011-01-09 02:03:22.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/form_win.3x.html 2014-09-01 16:33:22.328792076 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/index.html ncurses-5.9.patch/doc/html/man/index.html ---- ncurses-5.9/doc/html/man/index.html 2010-01-09 21:36:50.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/index.html 2014-09-01 16:33:22.328792076 +0200 -@@ -1,8 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN"> - <!-- -- $Id: index.html,v 1.4 2010/01/09 20:36:50 tom Exp $ -+ $Id: index.html,v 1.7 2013/06/07 20:12:36 tom Exp $ - **************************************************************************** -- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,39 +28,83 @@ - * authorization. * - **************************************************************************** - --> --<HTML> --<HEAD> --<TITLE>NCURSES &ndash; Manual Pages</TITLE> --<LINK REV=MADE HREF="mailto:dickey@invisible-island.net"> --</HEAD> --<BODY> --<HR> --<ul> --<li>Programs: --<ul> --<li><a href = "captoinfo.1m.html">captoinfo &ndash; convert a termcap description into a terminfo description</a> --<li><a href = "clear.1.html">clear &ndash; clear the terminal screen</a> --<li><a href = "infocmp.1m.html">infocmp &ndash; compare or print out terminfo descriptions</a> --<li><a href = "infotocap.1m.html">infotocap &ndash; convert a terminfo description into a termcap description</a> --<li><a href = "tabs.1.html">tabs &ndash; set tabs on a terminal</a> --<li><a href = "tic.1m.html">tic &ndash; the terminfo entry-description compiler</a> --<li><a href = "toe.1m.html">toe &ndash; table of (terminfo) entries</a> --<li><a href = "tput.1.html">tput &ndash; initialize a terminal or query terminfo database</a> --<li><a href = "tset.1.html">tset &ndash; terminal initialization</a> --</ul> --<li>Libraries: --<ul> --<li><a href = "ncurses.3x.html">ncurses &ndash; CRT screen handling and optimization package</a> --<li><a href = "panel.3x.html">panel- panel stack extension for curses</a> --<li><a href = "form.3x.html">form &ndash; curses extension for programming forms</a> --<li><a href = "menu.3x.html">menu &ndash; curses extension for programming menus</a> --</ul> --<li>File formats: --<ul> --<li><a href = "terminfo.5.html">terminfo &ndash; terminal capability data base</a> --<li><a href = "term.5.html">term &ndash; format of compiled term file.</a> --<li><a href = "term.7.html">term &ndash; conventions for naming terminal types</a> --</ul> --</ul> --</BODY> --</HTML> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> -+ -+<html> -+<head> -+ <meta name="generator" content= -+ "HTML Tidy for Linux (vers 25 March 2009), see www.w3.org"> -+ -+ <title>NCURSES &ndash; Manual Pages</title> -+ <link rev="MADE" href="mailto:dickey@invisible-island.net"> -+ <meta http-equiv="Content-Type" content= -+ "text/html; charset=us-ascii"> -+</head> -+ -+<body> -+ <ul> -+ <li>Programs: -+ -+ <ul> -+ <li><a href="captoinfo.1m.html">captoinfo &ndash; convert a -+ termcap description into a terminfo description</a></li> -+ -+ <li><a href="clear.1.html">clear &ndash; clear the terminal -+ screen</a></li> -+ -+ <li><a href="infocmp.1m.html">infocmp &ndash; compare or -+ print out terminfo descriptions</a></li> -+ -+ <li><a href="infotocap.1m.html">infotocap &ndash; convert a -+ terminfo description into a termcap description</a></li> -+ -+ <li><a href="tabs.1.html">tabs &ndash; set tabs on a -+ terminal</a></li> -+ -+ <li><a href="tic.1m.html">tic &ndash; the terminfo -+ entry-description compiler</a></li> -+ -+ <li><a href="toe.1m.html">toe &ndash; table of (terminfo) -+ entries</a></li> -+ -+ <li><a href="tput.1.html">tput &ndash; initialize a -+ terminal or query terminfo database</a></li> -+ -+ <li><a href="tset.1.html">tset &ndash; terminal -+ initialization</a></li> -+ </ul> -+ </li> -+ -+ <li>Libraries: -+ -+ <ul> -+ <li><a href="ncurses.3x.html">ncurses &ndash; CRT screen -+ handling and optimization package</a></li> -+ -+ <li><a href="panel.3x.html">panel- panel stack extension -+ for curses</a></li> -+ -+ <li><a href="form.3x.html">form &ndash; curses extension -+ for programming forms</a></li> -+ -+ <li><a href="menu.3x.html">menu &ndash; curses extension -+ for programming menus</a></li> -+ </ul> -+ </li> -+ -+ <li>File formats: -+ -+ <ul> -+ <li><a href="terminfo.5.html">terminfo &ndash; terminal -+ capability data base</a></li> -+ -+ <li><a href="term.5.html">term &ndash; format of compiled -+ term file.</a></li> -+ -+ <li><a href="term.7.html">term &ndash; conventions for -+ naming terminal types</a></li> -+ </ul> -+ </li> -+ </ul> -+</body> -+</html> -diff -Naur ncurses-5.9/doc/html/man/infocmp.1m.html ncurses-5.9.patch/doc/html/man/infocmp.1m.html ---- ncurses-5.9/doc/html/man/infocmp.1m.html 2011-04-05 00:46:44.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/infocmp.1m.html 2014-09-01 16:33:22.329792078 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: infocmp.1m,v 1.46 2010/12/04 18:40:45 tom Exp @ -+ * @Id: infocmp.1m,v 1.53 2013/02/02 22:07:35 tom Exp @ - --> - <HTML> - <HEAD> -@@ -53,7 +53,7 @@ - - </PRE> - <H2>SYNOPSIS</H2><PRE> -- <STRONG>infocmp</STRONG> [<STRONG>-1CEFGILTUVcdegilnpqrtux</STRONG>] -+ <STRONG>infocmp</STRONG> [<STRONG>-1CDEFGIKLTUVcdegilnpqrtux</STRONG>] - [<STRONG>-v</STRONG> <EM>n</EM>] [<STRONG>-s</STRONG> <STRONG>d</STRONG>| <STRONG>i</STRONG>| <STRONG>l</STRONG>| <STRONG>c</STRONG>] [<STRONG>-R</STRONG> <STRONG>subset</STRONG>] - [<STRONG>-w</STRONG> <EM>width</EM>] [<STRONG>-A</STRONG> <EM>directory</EM>] [<STRONG>-B</STRONG> <EM>directory</EM>] - [<EM>termname</EM>...] -@@ -72,76 +72,91 @@ - <STRONG>Default</STRONG> <STRONG>Options</STRONG> - If no options are specified and zero or one <EM>termnames</EM> are - specified, the <STRONG>-I</STRONG> option will be assumed. If more than -- one <EM>termname</EM> is specified, the <STRONG>-d</STRONG> option will be assumed. -+ one <EM>termname</EM> is specified, the <STRONG>-d</STRONG> option will be assumed. - - <STRONG>Comparison</STRONG> <STRONG>Options</STRONG> <STRONG>[-d]</STRONG> <STRONG>[-c]</STRONG> <STRONG>[-n]</STRONG> -- <STRONG>infocmp</STRONG> compares the <STRONG>terminfo</STRONG> description of the first -- terminal <EM>termname</EM> with each of the descriptions given by -- the entries for the other terminal's <EM>termnames</EM>. If a -- capability is defined for only one of the terminals, the -- value returned will depend on the type of the capability: -- <STRONG>F</STRONG> for boolean variables, <STRONG>-1</STRONG> for integer variables, and -+ <STRONG>infocmp</STRONG> compares the <STRONG>terminfo</STRONG> description of the first -+ terminal <EM>termname</EM> with each of the descriptions given by -+ the entries for the other terminal's <EM>termnames</EM>. If a -+ capability is defined for only one of the terminals, the -+ value returned will depend on the type of the capability: -+ <STRONG>F</STRONG> for boolean variables, <STRONG>-1</STRONG> for integer variables, and - <STRONG>NULL</STRONG> for string variables. - -- The <STRONG>-d</STRONG> option produces a list of each capability that is -- different between two entries. This option is useful to -- show the difference between two entries, created by dif- -+ The <STRONG>-d</STRONG> option produces a list of each capability that is -+ different between two entries. This option is useful to -+ show the difference between two entries, created by dif- - ferent people, for the same or similar terminals. - -- The <STRONG>-c</STRONG> option produces a list of each capability that is -- common between two entries. Capabilities that are not set -- are ignored. This option can be used as a quick check to -- see if the <STRONG>-u</STRONG> option is worth using. -- -- The <STRONG>-n</STRONG> option produces a list of each capability that is -- in neither entry. If no <EM>termnames</EM> are given, the environ- -- ment variable <STRONG>TERM</STRONG> will be used for both of the <EM>termnames</EM>. -- This can be used as a quick check to see if anything was -- left out of a description. -+ The <STRONG>-c</STRONG> option produces a list of each capability that is -+ common between two or more entries. Capabilities that are -+ not set are ignored. This option can be used as a quick -+ check to see if the <STRONG>-u</STRONG> option is worth using. -+ -+ The <STRONG>-n</STRONG> option produces a list of each capability that is -+ in none of the given entries. If no <EM>termnames</EM> are given, -+ the environment variable <STRONG>TERM</STRONG> will be used for both of the -+ <EM>termnames</EM>. This can be used as a quick check to see if -+ anything was left out of a description. - - <STRONG>Source</STRONG> <STRONG>Listing</STRONG> <STRONG>Options</STRONG> <STRONG>[-I]</STRONG> <STRONG>[-L]</STRONG> <STRONG>[-C]</STRONG> <STRONG>[-r]</STRONG> -- The <STRONG>-I</STRONG>, <STRONG>-L</STRONG>, and <STRONG>-C</STRONG> options will produce a source listing -+ The <STRONG>-I</STRONG>, <STRONG>-L</STRONG>, and <STRONG>-C</STRONG> options will produce a source listing - for each terminal named. - - <STRONG>-I</STRONG> use the <STRONG>terminfo</STRONG> names - <STRONG>-L</STRONG> use the long C variable name listed in &lt;<STRONG>term.h</STRONG>&gt; - <STRONG>-C</STRONG> use the <STRONG>termcap</STRONG> names - <STRONG>-r</STRONG> when using <STRONG>-C</STRONG>, put out all capabilities in <STRONG>termcap</STRONG> form -+ <STRONG>-K</STRONG> modifies the <STRONG>-C</STRONG> option, improving BSD-compatibility. - -- If no <EM>termnames</EM> are given, the environment variable <STRONG>TERM</STRONG> -+ If no <EM>termnames</EM> are given, the environment variable <STRONG>TERM</STRONG> - will be used for the terminal name. - -- The source produced by the <STRONG>-C</STRONG> option may be used directly -- as a <STRONG>termcap</STRONG> entry, but not all parameterized strings can -+ The source produced by the <STRONG>-C</STRONG> option may be used directly -+ as a <STRONG>termcap</STRONG> entry, but not all parameterized strings can - be changed to the <STRONG>termcap</STRONG> format. <STRONG>infocmp</STRONG> will attempt to -- convert most of the parameterized information, and any- -- thing not converted will be plainly marked in the output -+ convert most of the parameterized information, and any- -+ thing not converted will be plainly marked in the output - and commented out. These should be edited by hand. - -- All padding information for strings will be collected -- together and placed at the beginning of the string where -- <STRONG>termcap</STRONG> expects it. Mandatory padding (padding informa- -+ For best results when converting to <STRONG>termcap</STRONG> format, you -+ should use both <STRONG>-C</STRONG> and <STRONG>-r</STRONG>. Normally a termcap description -+ is limited to 1023 bytes. infocmp trims away less essen- -+ tial parts to make it fit. If you are converting to one -+ of the (rare) termcap implementations which accept an -+ unlimited size of termcap, you may want to add the <STRONG>-T</STRONG> -+ option. More often however, you must help the termcap -+ implementation, and trim excess whitespace (use the <STRONG>-0</STRONG> -+ option for that). -+ -+ All padding information for strings will be collected -+ together and placed at the beginning of the string where -+ <STRONG>termcap</STRONG> expects it. Mandatory padding (padding informa- - tion with a trailing '/') will become optional. - - All <STRONG>termcap</STRONG> variables no longer supported by <STRONG>terminfo</STRONG>, but - which are derivable from other <STRONG>terminfo</STRONG> variables, will be - output. Not all <STRONG>terminfo</STRONG> capabilities will be translated; -- only those variables which were part of <STRONG>termcap</STRONG> will nor- -- mally be output. Specifying the <STRONG>-r</STRONG> option will take off -- this restriction, allowing all capabilities to be output -- in <EM>termcap</EM> form. -+ only those variables which were part of <STRONG>termcap</STRONG> will nor- -+ mally be output. Specifying the <STRONG>-r</STRONG> option will take off -+ this restriction, allowing all capabilities to be output -+ in <EM>termcap</EM> form. Normally you would use both the <STRONG>-C</STRONG> and -+ <STRONG>-r</STRONG> options. The actual format used incorporates some -+ improvements for escaped characters from terminfo format. -+ For a stricter BSD-compatible translation, use the <STRONG>-K</STRONG> -+ option rather than <STRONG>-C</STRONG>. - - Note that because padding is collected to the beginning of -- the capability, not all capabilities are output. Manda- -- tory padding is not supported. Because <STRONG>termcap</STRONG> strings -- are not as flexible, it is not always possible to convert -- a <STRONG>terminfo</STRONG> string capability into an equivalent <STRONG>termcap</STRONG> -- format. A subsequent conversion of the <STRONG>termcap</STRONG> file back -- into <STRONG>terminfo</STRONG> format will not necessarily reproduce the -+ the capability, not all capabilities are output. Manda- -+ tory padding is not supported. Because <STRONG>termcap</STRONG> strings -+ are not as flexible, it is not always possible to convert -+ a <STRONG>terminfo</STRONG> string capability into an equivalent <STRONG>termcap</STRONG> -+ format. A subsequent conversion of the <STRONG>termcap</STRONG> file back -+ into <STRONG>terminfo</STRONG> format will not necessarily reproduce the - original <STRONG>terminfo</STRONG> source. - -- Some common <STRONG>terminfo</STRONG> parameter sequences, their <STRONG>termcap</STRONG> -- equivalents, and some terminal types which commonly have -+ Some common <STRONG>terminfo</STRONG> parameter sequences, their <STRONG>termcap</STRONG> -+ equivalents, and some terminal types which commonly have - such sequences, are: - - <STRONG>terminfo</STRONG> <STRONG>termcap</STRONG> Representative Terminals -@@ -154,66 +169,77 @@ - <STRONG>%p2</STRONG> is printed before <STRONG>%p1</STRONG> <STRONG>%r</STRONG> hp - - <STRONG>Use=</STRONG> <STRONG>Option</STRONG> <STRONG>[-u]</STRONG> -- The <STRONG>-u</STRONG> option produces a <STRONG>terminfo</STRONG> source description of -- the first terminal <EM>termname</EM> which is relative to the sum -- of the descriptions given by the entries for the other -- terminals <EM>termnames</EM>. It does this by analyzing the dif- -- ferences between the first <EM>termname</EM> and the other -+ The <STRONG>-u</STRONG> option produces a <STRONG>terminfo</STRONG> source description of -+ the first terminal <EM>termname</EM> which is relative to the sum -+ of the descriptions given by the entries for the other -+ terminals <EM>termnames</EM>. It does this by analyzing the dif- -+ ferences between the first <EM>termname</EM> and the other - <EM>termnames</EM> and producing a description with <STRONG>use=</STRONG> fields for -- the other terminals. In this manner, it is possible to -- retrofit generic terminfo entries into a terminal's -+ the other terminals. In this manner, it is possible to -+ retrofit generic terminfo entries into a terminal's - description. Or, if two similar terminals exist, but were -- coded at different times or by different people so that -+ coded at different times or by different people so that - each description is a full description, using <STRONG>infocmp</STRONG> will - show what can be done to change one description to be rel- - ative to the other. - - A capability will get printed with an at-sign (@) if it no -- longer exists in the first <EM>termname</EM>, but one of the other -- <EM>termname</EM> entries contains a value for it. A capability's -- value gets printed if the value in the first <EM>termname</EM> is -- not found in any of the other <EM>termname</EM> entries, or if the -+ longer exists in the first <EM>termname</EM>, but one of the other -+ <EM>termname</EM> entries contains a value for it. A capability's -+ value gets printed if the value in the first <EM>termname</EM> is -+ not found in any of the other <EM>termname</EM> entries, or if the - first of the other <EM>termname</EM> entries that has this capabil- -- ity gives a different value for the capability than that -+ ity gives a different value for the capability than that - in the first <EM>termname</EM>. - -- The order of the other <EM>termname</EM> entries is significant. -- Since the terminfo compiler <STRONG>tic</STRONG> does a left-to-right scan -+ The order of the other <EM>termname</EM> entries is significant. -+ Since the terminfo compiler <STRONG>tic</STRONG> does a left-to-right scan - of the capabilities, specifying two <STRONG>use=</STRONG> entries that con- - tain differing entries for the same capabilities will pro- -- duce different results depending on the order that the -- entries are given in. <STRONG>infocmp</STRONG> will flag any such incon- -- sistencies between the other <EM>termname</EM> entries as they are -+ duce different results depending on the order that the -+ entries are given in. <STRONG>infocmp</STRONG> will flag any such incon- -+ sistencies between the other <EM>termname</EM> entries as they are - found. - -- Alternatively, specifying a capability <EM>after</EM> a <STRONG>use=</STRONG> entry -+ Alternatively, specifying a capability <EM>after</EM> a <STRONG>use=</STRONG> entry - that contains that capability will cause the second speci- -- fication to be ignored. Using <STRONG>infocmp</STRONG> to recreate a -+ fication to be ignored. Using <STRONG>infocmp</STRONG> to recreate a - description can be a useful check to make sure that every- -- thing was specified correctly in the original source -+ thing was specified correctly in the original source - description. - -- Another error that does not cause incorrect compiled -- files, but will slow down the compilation time, is speci- -- fying extra <STRONG>use=</STRONG> fields that are superfluous. <STRONG>infocmp</STRONG> -- will flag any other <EM>termname</EM> <EM>use=</EM> fields that were not -+ Another error that does not cause incorrect compiled -+ files, but will slow down the compilation time, is speci- -+ fying extra <STRONG>use=</STRONG> fields that are superfluous. <STRONG>infocmp</STRONG> -+ will flag any other <EM>termname</EM> <EM>use=</EM> fields that were not - needed. - - <STRONG>Changing</STRONG> <STRONG>Databases</STRONG> <STRONG>[-A</STRONG> <EM>directory</EM>] [-B <EM>directory</EM>] -- The location of the compiled <STRONG>terminfo</STRONG> database is taken -- from the environment variable <STRONG>TERMINFO</STRONG> . If the variable -- is not defined, or the terminal is not found in that loca- -- tion, the system <STRONG>terminfo</STRONG> database, in <STRONG>/usr/share/ter-</STRONG> -- <STRONG>minfo</STRONG>, will be used. The options <STRONG>-A</STRONG> and <STRONG>-B</STRONG> may be used to -- override this location. The <STRONG>-A</STRONG> option will set <STRONG>TERMINFO</STRONG> -- for the first <EM>termname</EM> and the <STRONG>-B</STRONG> option will set <STRONG>TERMINFO</STRONG> -- for the other <EM>termnames</EM>. With this, it is possible to -- compare descriptions for a terminal with the same name -- located in two different databases. This is useful for -- comparing descriptions for the same terminal created by -- different people. -+ Like other <STRONG>ncurses</STRONG> utilities, infocmp looks for the termi- -+ nal descriptions in several places. You can use the <STRONG>TER-</STRONG> -+ <STRONG>MINFO</STRONG> and <STRONG>TERMINFO_DIRS</STRONG> environment variables to override -+ the compiled-in default list of places to search (see -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> for details). -+ -+ You can also use the options <STRONG>-A</STRONG> and <STRONG>-B</STRONG> to override the -+ list of places to search when comparing terminal descrip- -+ tions: -+ -+ <STRONG>o</STRONG> The <STRONG>-A</STRONG> option sets the location for the first <EM>termname</EM> -+ -+ <STRONG>o</STRONG> The <STRONG>-B</STRONG> option sets the location for the other -+ <EM>termnames</EM>. -+ -+ Using these options, it is possible to compare descrip- -+ tions for a terminal with the same name located in two -+ different databases. For instance, you can use this fea- -+ ture for comparing descriptions for the same terminal cre- -+ ated by different people. - - <STRONG>Other</STRONG> <STRONG>Options</STRONG> -+ <STRONG>-0</STRONG> causes the fields to be printed on one line, without -+ wrapping. -+ - <STRONG>-1</STRONG> causes the fields to be printed out one to a line. - Otherwise, the fields will be printed several to a - line to a maximum width of 60 characters. -@@ -222,67 +248,71 @@ - rather than discarding them. Capabilities are com- - mented by prefixing them with a period. - -+ <STRONG>-D</STRONG> tells <STRONG>infocmp</STRONG> to print the database locations that it -+ knows about, and exit. -+ - <STRONG>-E</STRONG> Dump the capabilities of the given terminal as -- tables, needed in the C initializer for a TERMTYPE -- structure (the terminal capability structure in the -- <STRONG>&lt;term.h&gt;</STRONG>). This option is useful for preparing ver- -- sions of the curses library hardwired for a given -- terminal type. The tables are all declared static, -- and are named according to the type and the name of -+ tables, needed in the C initializer for a TERMTYPE -+ structure (the terminal capability structure in the -+ <STRONG>&lt;term.h&gt;</STRONG>). This option is useful for preparing ver- -+ sions of the curses library hardwired for a given -+ terminal type. The tables are all declared static, -+ and are named according to the type and the name of - the corresponding terminal entry. - -- Before ncurses 5.0, the split between the <STRONG>-e</STRONG> and <STRONG>-E</STRONG> -- options was not needed; but support for extended -+ Before ncurses 5.0, the split between the <STRONG>-e</STRONG> and <STRONG>-E</STRONG> -+ options was not needed; but support for extended - names required making the arrays of terminal capabil- - ities separate from the TERMTYPE structure. - -- <STRONG>-e</STRONG> Dump the capabilities of the given terminal as a C -- initializer for a TERMTYPE structure (the terminal -- capability structure in the <STRONG>&lt;term.h&gt;</STRONG>). This option -+ <STRONG>-e</STRONG> Dump the capabilities of the given terminal as a C -+ initializer for a TERMTYPE structure (the terminal -+ capability structure in the <STRONG>&lt;term.h&gt;</STRONG>). This option - is useful for preparing versions of the curses - library hardwired for a given terminal type. - -- <STRONG>-F</STRONG> compare terminfo files. This assumes that two fol- -- lowing arguments are filenames. The files are -- searched for pairwise matches between entries, with -+ <STRONG>-F</STRONG> compare terminfo files. This assumes that two fol- -+ lowing arguments are filenames. The files are -+ searched for pairwise matches between entries, with - two entries considered to match if any of their names -- do. The report printed to standard output lists -- entries with no matches in the other file, and -- entries with more than one match. For entries with -- exactly one match it includes a difference report. -- Normally, to reduce the volume of the report, use -- references are not resolved before looking for dif- -+ do. The report printed to standard output lists -+ entries with no matches in the other file, and -+ entries with more than one match. For entries with -+ exactly one match it includes a difference report. -+ Normally, to reduce the volume of the report, use -+ references are not resolved before looking for dif- - ferences, but resolution can be forced by also speci- - fying <STRONG>-r</STRONG>. - -- <STRONG>-f</STRONG> Display complex terminfo strings which contain -+ <STRONG>-f</STRONG> Display complex terminfo strings which contain - if/then/else/endif expressions indented for readabil- - ity. - - <STRONG>-G</STRONG> Display constant literals in decimal form rather than - their character equivalents. - -- <STRONG>-g</STRONG> Display constant character literals in quoted form -+ <STRONG>-g</STRONG> Display constant character literals in quoted form - rather than their decimal equivalents. - - <STRONG>-i</STRONG> Analyze the initialization (<STRONG>is1</STRONG>, <STRONG>is2</STRONG>, <STRONG>is3</STRONG>), and reset -- (<STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>), strings in the entry. For each -- string, the code tries to analyze it into actions in -+ (<STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>), strings in the entry. For each -+ string, the code tries to analyze it into actions in - terms of the other capabilities in the entry, certain -- X3.64/ISO 6429/ECMA-48 capabilities, and certain DEC -- VT-series private modes (the set of recognized spe- -- cial sequences has been selected for completeness -- over the existing terminfo database). Each report -- line consists of the capability name, followed by a -+ X3.64/ISO 6429/ECMA-48 capabilities, and certain DEC -+ VT-series private modes (the set of recognized spe- -+ cial sequences has been selected for completeness -+ over the existing terminfo database). Each report -+ line consists of the capability name, followed by a - colon and space, followed by a printable expansion of -- the capability string with sections matching recog- -- nized actions translated into {}-bracketed descrip- -- tions. Here is a list of the DEC/ANSI special -+ the capability string with sections matching recog- -+ nized actions translated into {}-bracketed descrip- -+ tions. Here is a list of the DEC/ANSI special - sequences recognized: i. - - Action Meaning - ----------------------------------------- - RIS full reset -+ - SC save cursor - RC restore cursor - LL home-down -@@ -310,17 +340,16 @@ - DEC[+-]CKM application cursor keys - DEC[+-]ANM set VT52 mode - DEC[+-]COLM 132-column mode -- - DEC[+-]SCLM smooth scroll - DEC[+-]SCNM reverse video mode - DEC[+-]OM origin mode - DEC[+-]AWM wraparound mode - DEC[+-]ARM auto-repeat mode - -- It also recognizes a SGR action corresponding to -- ANSI/ISO 6429/ECMA Set Graphics Rendition, with the -- values NORMAL, BOLD, UNDERLINE, BLINK, and REVERSE. -- All but NORMAL may be prefixed with `+' (turn on) or -+ It also recognizes a SGR action corresponding to -+ ANSI/ISO 6429/ECMA Set Graphics Rendition, with the -+ values NORMAL, BOLD, UNDERLINE, BLINK, and REVERSE. -+ All but NORMAL may be prefixed with `+' (turn on) or - `-' (turn off). - - An SGR0 designates an empty highlight sequence (equivalent -@@ -398,18 +427,19 @@ - - </PRE> - <H2>FILES</H2><PRE> -- /usr/share/terminfo Compiled terminal description -- database. -+ /usr/share/terminfo Compiled terminal description data- -+ base. - - - </PRE> - <H2>EXTENSIONS</H2><PRE> -- The <STRONG>-E</STRONG>, <STRONG>-F</STRONG>, <STRONG>-G</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-i</STRONG>, <STRONG>-l</STRONG>, <STRONG>-p</STRONG>, <STRONG>-q</STRONG> -- and <STRONG>-t</STRONG> options are not supported in SVr4 curses. -+ The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-E</STRONG>, <STRONG>-F</STRONG>, <STRONG>-G</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-i</STRONG>, -+ <STRONG>-l</STRONG>, <STRONG>-p</STRONG>, <STRONG>-q</STRONG> and <STRONG>-t</STRONG> options are not supported in SVr4 -+ curses. - - The <STRONG>-r</STRONG> option's notion of `termcap' capabilities is System -- V Release 4's. Actual BSD curses versions will have a -- more restricted set. To see only the 4.4BSD set, use <STRONG>-r</STRONG> -+ V Release 4's. Actual BSD curses versions will have a -+ more restricted set. To see only the 4.4BSD set, use <STRONG>-r</STRONG> - <STRONG>-RBSD</STRONG>. - - -@@ -420,10 +450,12 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, -+ <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, - <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ http://invisible-island.net/ncurses/tctest.html -+ -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/infotocap.1m.html ncurses-5.9.patch/doc/html/man/infotocap.1m.html ---- ncurses-5.9/doc/html/man/infotocap.1m.html 2011-04-05 00:46:44.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/infotocap.1m.html 2014-09-01 16:33:22.329792078 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -@@ -80,8 +80,8 @@ - - </PRE> - <H2>FILES</H2><PRE> -- /usr/share/terminfo Compiled terminal description -- database. -+ /usr/share/terminfo Compiled terminal description data- -+ base. - - - </PRE> -@@ -94,7 +94,7 @@ - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/keybound.3x.html ncurses-5.9.patch/doc/html/man/keybound.3x.html ---- ncurses-5.9/doc/html/man/keybound.3x.html 2011-01-09 02:03:23.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/keybound.3x.html 2014-09-01 16:33:22.329792078 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1999-2008,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/key_defined.3x.html ncurses-5.9.patch/doc/html/man/key_defined.3x.html ---- ncurses-5.9/doc/html/man/key_defined.3x.html 2011-01-09 02:03:23.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/key_defined.3x.html 2014-09-01 16:33:22.329792078 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 2003-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/keyok.3x.html ncurses-5.9.patch/doc/html/man/keyok.3x.html ---- ncurses-5.9/doc/html/man/keyok.3x.html 2011-01-09 02:03:23.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/keyok.3x.html 2014-09-01 16:33:22.329792078 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/legacy_coding.3x.html ncurses-5.9.patch/doc/html/man/legacy_coding.3x.html ---- ncurses-5.9/doc/html/man/legacy_coding.3x.html 2011-01-09 02:03:23.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/legacy_coding.3x.html 2014-09-01 16:33:22.329792078 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 2005-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/menu.3x.html ncurses-5.9.patch/doc/html/man/menu.3x.html ---- ncurses-5.9/doc/html/man/menu.3x.html 2011-04-05 00:46:45.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/menu.3x.html 2014-09-01 16:33:22.329792078 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -@@ -226,7 +226,7 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - -diff -Naur ncurses-5.9/doc/html/man/menu_attributes.3x.html ncurses-5.9.patch/doc/html/man/menu_attributes.3x.html ---- ncurses-5.9/doc/html/man/menu_attributes.3x.html 2011-01-09 02:03:24.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_attributes.3x.html 2014-09-01 16:33:22.329792078 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_cursor.3x.html ncurses-5.9.patch/doc/html/man/menu_cursor.3x.html ---- ncurses-5.9/doc/html/man/menu_cursor.3x.html 2011-01-09 02:03:24.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_cursor.3x.html 2014-09-01 16:33:22.330792079 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_driver.3x.html ncurses-5.9.patch/doc/html/man/menu_driver.3x.html ---- ncurses-5.9/doc/html/man/menu_driver.3x.html 2011-02-26 00:25:05.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_driver.3x.html 2014-09-01 16:33:22.330792079 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -@@ -119,8 +119,8 @@ - Clear the menu pattern buffer. - - REQ_BACK_PATTERN -- Delete the previous character from the pattern -- buffer. -+ Delete the previous character from the pattern buf- -+ fer. - - REQ_NEXT_MATCH - Move to the next item matching the pattern match. -@@ -128,20 +128,20 @@ - REQ_PREV_MATCH - Move to the previous item matching the pattern match. - -- If the second argument is a printable character, the code -- appends it to the pattern buffer and attempts to move to -- the next item matching the new pattern. If there is no -+ If the second argument is a printable character, the code -+ appends it to the pattern buffer and attempts to move to -+ the next item matching the new pattern. If there is no - such match, <STRONG>menu_driver</STRONG> returns <STRONG>E_NO_MATCH</STRONG> and deletes the - appended character from the buffer. - -- If the second argument is one of the above pre-defined -+ If the second argument is one of the above pre-defined - requests, the corresponding action is performed. - - <STRONG>MOUSE</STRONG> <STRONG>HANDLING</STRONG> -- If the second argument is the KEY_MOUSE special key, the -+ If the second argument is the KEY_MOUSE special key, the - associated mouse event is translated into one of the above -- pre-defined requests. Currently only clicks in the user -- window (e.g., inside the menu display area or the decora- -+ pre-defined requests. Currently only clicks in the user -+ window (e.g., inside the menu display area or the decora- - tion window) are handled. - - If you click above the display region of the menu: -@@ -160,32 +160,32 @@ - - <STRONG>o</STRONG> a REQ_LAST_ITEM is generated for a triple-click. - -- If you click at an item inside the display area of the -+ If you click at an item inside the display area of the - menu: - - <STRONG>o</STRONG> the menu cursor is positioned to that item. - -- <STRONG>o</STRONG> If you double-click an item a REQ_TOGGLE_ITEM is gen- -+ <STRONG>o</STRONG> If you double-click an item a REQ_TOGGLE_ITEM is gen- - erated and <STRONG>E_UNKNOWN_COMMAND</STRONG> is returned. This return -- value makes sense, because a double click usually -+ value makes sense, because a double click usually - means that an item-specific action should be returned. - It is exactly the purpose of this return value to sig- -- nal that an application specific command should be -+ nal that an application specific command should be - executed. - -- <STRONG>o</STRONG> If a translation into a request was done, <STRONG>menu_driver</STRONG> -+ <STRONG>o</STRONG> If a translation into a request was done, <STRONG>menu_driver</STRONG> - returns the result of this request. - -- If you clicked outside the user window or the mouse event -- could not be translated into a menu request an -+ If you clicked outside the user window or the mouse event -+ could not be translated into a menu request an - <STRONG>E_REQUEST_DENIED</STRONG> is returned. - - <STRONG>APPLICATION-DEFINED</STRONG> <STRONG>COMMANDS</STRONG> - If the second argument is neither printable nor one of the -- above pre-defined menu requests or KEY_MOUSE, the drive -- assumes it is an application-specific command and returns -+ above pre-defined menu requests or KEY_MOUSE, the drive -+ assumes it is an application-specific command and returns - <STRONG>E_UNKNOWN_COMMAND</STRONG>. Application-defined commands should be -- defined relative to <STRONG>MAX_COMMAND</STRONG>, the maximum value of -+ defined relative to <STRONG>MAX_COMMAND</STRONG>, the maximum value of - these pre-defined requests. - - -@@ -199,7 +199,7 @@ - System error occurred (see <STRONG>errno</STRONG>). - - <STRONG>E_BAD_ARGUMENT</STRONG> -- Routine detected an incorrect or out-of-range argu- -+ Routine detected an incorrect or out-of-range argu- - ment. - - <STRONG>E_BAD_STATE</STRONG> -@@ -221,7 +221,7 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>, <STRONG><A HREF="getch.3x.html">getch(3x)</A></STRONG>. -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>. - - - </PRE> -@@ -232,14 +232,14 @@ - - </PRE> - <H2>PORTABILITY</H2><PRE> -- These routines emulate the System V menu library. They -- were not supported on Version 7 or BSD versions. The sup- -+ These routines emulate the System V menu library. They -+ were not supported on Version 7 or BSD versions. The sup- - port for mouse events is ncurses specific. - - - </PRE> - <H2>AUTHORS</H2><PRE> -- Juergen Pfeifer. Manual pages and adaptation for new -+ Juergen Pfeifer. Manual pages and adaptation for new - curses by Eric S. Raymond. - - -diff -Naur ncurses-5.9/doc/html/man/menu_format.3x.html ncurses-5.9.patch/doc/html/man/menu_format.3x.html ---- ncurses-5.9/doc/html/man/menu_format.3x.html 2011-01-09 02:03:24.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_format.3x.html 2014-09-01 16:33:22.330792079 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_hook.3x.html ncurses-5.9.patch/doc/html/man/menu_hook.3x.html ---- ncurses-5.9/doc/html/man/menu_hook.3x.html 2011-01-09 02:03:24.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_hook.3x.html 2014-09-01 16:33:22.330792079 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_items.3x.html ncurses-5.9.patch/doc/html/man/menu_items.3x.html ---- ncurses-5.9/doc/html/man/menu_items.3x.html 2011-01-09 02:03:24.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_items.3x.html 2014-09-01 16:33:22.330792079 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: menu_items.3x,v 1.9 2010/12/04 18:40:45 tom Exp @ -+ * @Id: menu_items.3x,v 1.10 2012/11/03 23:03:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -74,7 +74,7 @@ - - - </PRE> --<H2>RETURN VALUES</H2><PRE> -+<H2>RETURN VALUE</H2><PRE> - The function <STRONG>menu_items</STRONG> returns a pointer (which may be - <STRONG>NULL</STRONG>). It does not set errno. - -diff -Naur ncurses-5.9/doc/html/man/menu_mark.3x.html ncurses-5.9.patch/doc/html/man/menu_mark.3x.html ---- ncurses-5.9/doc/html/man/menu_mark.3x.html 2011-01-09 02:03:24.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_mark.3x.html 2014-09-01 16:33:22.330792079 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_new.3x.html ncurses-5.9.patch/doc/html/man/menu_new.3x.html ---- ncurses-5.9/doc/html/man/menu_new.3x.html 2011-01-09 02:03:25.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_new.3x.html 2014-09-01 16:33:22.330792079 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_opts.3x.html ncurses-5.9.patch/doc/html/man/menu_opts.3x.html ---- ncurses-5.9/doc/html/man/menu_opts.3x.html 2011-01-09 02:03:25.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_opts.3x.html 2014-09-01 16:33:22.330792079 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_pattern.3x.html ncurses-5.9.patch/doc/html/man/menu_pattern.3x.html ---- ncurses-5.9/doc/html/man/menu_pattern.3x.html 2011-01-09 02:03:25.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_pattern.3x.html 2014-09-01 16:33:22.331792081 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/menu_post.3x.html ncurses-5.9.patch/doc/html/man/menu_post.3x.html ---- ncurses-5.9/doc/html/man/menu_post.3x.html 2011-01-09 02:03:25.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_post.3x.html 2014-09-01 16:33:22.331792081 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_requestname.3x.html ncurses-5.9.patch/doc/html/man/menu_requestname.3x.html ---- ncurses-5.9/doc/html/man/menu_requestname.3x.html 2011-01-09 02:03:25.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_requestname.3x.html 2014-09-01 16:33:22.331792081 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_spacing.3x.html ncurses-5.9.patch/doc/html/man/menu_spacing.3x.html ---- ncurses-5.9/doc/html/man/menu_spacing.3x.html 2011-01-09 02:03:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_spacing.3x.html 2014-09-01 16:33:22.331792081 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_userptr.3x.html ncurses-5.9.patch/doc/html/man/menu_userptr.3x.html ---- ncurses-5.9/doc/html/man/menu_userptr.3x.html 2011-01-09 02:03:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_userptr.3x.html 2014-09-01 16:33:22.331792081 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/menu_win.3x.html ncurses-5.9.patch/doc/html/man/menu_win.3x.html ---- ncurses-5.9/doc/html/man/menu_win.3x.html 2011-01-09 02:03:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/menu_win.3x.html 2014-09-01 16:33:22.331792081 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/mitem_current.3x.html ncurses-5.9.patch/doc/html/man/mitem_current.3x.html ---- ncurses-5.9/doc/html/man/mitem_current.3x.html 2011-01-09 02:03:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/mitem_current.3x.html 2014-09-01 16:33:22.331792081 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/mitem_name.3x.html ncurses-5.9.patch/doc/html/man/mitem_name.3x.html ---- ncurses-5.9/doc/html/man/mitem_name.3x.html 2011-01-09 02:03:26.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/mitem_name.3x.html 2014-09-01 16:33:22.331792081 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/mitem_new.3x.html ncurses-5.9.patch/doc/html/man/mitem_new.3x.html ---- ncurses-5.9/doc/html/man/mitem_new.3x.html 2011-01-09 02:03:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/mitem_new.3x.html 2014-09-01 16:33:22.331792081 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/mitem_opts.3x.html ncurses-5.9.patch/doc/html/man/mitem_opts.3x.html ---- ncurses-5.9/doc/html/man/mitem_opts.3x.html 2011-01-09 02:03:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/mitem_opts.3x.html 2014-09-01 16:33:22.331792081 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/mitem_userptr.3x.html ncurses-5.9.patch/doc/html/man/mitem_userptr.3x.html ---- ncurses-5.9/doc/html/man/mitem_userptr.3x.html 2011-01-09 02:03:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/mitem_userptr.3x.html 2014-09-01 16:33:22.332792083 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/mitem_value.3x.html ncurses-5.9.patch/doc/html/man/mitem_value.3x.html ---- ncurses-5.9/doc/html/man/mitem_value.3x.html 2011-01-09 02:03:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/mitem_value.3x.html 2014-09-01 16:33:22.332792083 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/mitem_visible.3x.html ncurses-5.9.patch/doc/html/man/mitem_visible.3x.html ---- ncurses-5.9/doc/html/man/mitem_visible.3x.html 2011-01-09 02:03:27.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/mitem_visible.3x.html 2014-09-01 16:33:22.332792083 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -diff -Naur ncurses-5.9/doc/html/man/ncurses.3x.html ncurses-5.9.patch/doc/html/man/ncurses.3x.html ---- ncurses-5.9/doc/html/man/ncurses.3x.html 2011-04-05 00:46:49.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/ncurses.3x.html 2014-09-01 16:33:22.333792084 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: ncurses.3x,v 1.103 2011/02/05 23:21:29 tom Exp @ -+ * @Id: ncurses.3x,v 1.112 2013/07/20 19:29:59 tom Exp @ - --> - <HTML> - <HEAD> -@@ -60,10 +60,10 @@ - <H2>DESCRIPTION</H2><PRE> - The <STRONG>ncurses</STRONG> library routines give the user a terminal- - independent method of updating character screens with rea- -- sonable optimization. This implementation is ``new -- curses'' (ncurses) and is the approved replacement for -- 4.4BSD classic curses, which has been discontinued. This -- describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ sonable optimization. This implementation is "new curses" -+ (ncurses) and is the approved replacement for 4.4BSD clas- -+ sic curses, which has been discontinued. This describes -+ <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - The <STRONG>ncurses</STRONG> library emulates the curses library of System - V Release 4 UNIX, and XPG4 (X/Open Portability Guide) -@@ -150,48 +150,48 @@ - Among those, the most basic routines are <STRONG>move</STRONG> and <STRONG>addch</STRONG>. - More general versions of these routines are included with - names beginning with <STRONG>w</STRONG>, allowing the user to specify a -- window. The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>. -+ window. The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>. - -- After using routines to manipulate a window, <STRONG>refresh</STRONG> is -- called, telling <STRONG>curses</STRONG> to make the user's CRT screen look -- like <STRONG>stdscr</STRONG>. The characters in a window are actually of -- type <STRONG>chtype</STRONG>, (character and attribute data) so that other -- information about the character may also be stored with -+ After using routines to manipulate a window, <STRONG>refresh</STRONG> is -+ called, telling <STRONG>curses</STRONG> to make the user's CRT screen look -+ like <STRONG>stdscr</STRONG>. The characters in a window are actually of -+ type <STRONG>chtype</STRONG>, (character and attribute data) so that other -+ information about the character may also be stored with - each character. - -- Special windows called <EM>pads</EM> may also be manipulated. -+ Special windows called <EM>pads</EM> may also be manipulated. - These are windows which are not constrained to the size of -- the screen and whose contents need not be completely dis- -+ the screen and whose contents need not be completely dis- - played. See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more information. - -- In addition to drawing characters on the screen, video -- attributes and colors may be supported, causing the char- -- acters to show up in such modes as underlined, in reverse -- video, or in color on terminals that support such display -+ In addition to drawing characters on the screen, video -+ attributes and colors may be supported, causing the char- -+ acters to show up in such modes as underlined, in reverse -+ video, or in color on terminals that support such display - enhancements. Line drawing characters may be specified to -- be output. On input, <STRONG>curses</STRONG> is also able to translate -- arrow and function keys that transmit escape sequences -- into single values. The video attributes, line drawing -- characters, and input values use names, defined in -+ be output. On input, <STRONG>curses</STRONG> is also able to translate -+ arrow and function keys that transmit escape sequences -+ into single values. The video attributes, line drawing -+ characters, and input values use names, defined in - <STRONG>&lt;curses.h&gt;</STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and <STRONG>KEY_LEFT</STRONG>. - - If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or -- if the program is executing in a window environment, line -- and column information in the environment will override -+ if the program is executing in a window environment, line -+ and column information in the environment will override - information read by <EM>terminfo</EM>. This would affect a program -- running in an AT&amp;T 630 layer, for example, where the size -+ running in an AT&amp;T 630 layer, for example, where the size - of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>). - -- If the environment variable <STRONG>TERMINFO</STRONG> is defined, any pro- -- gram using <STRONG>curses</STRONG> checks for a local terminal definition -- before checking in the standard place. For example, if -+ If the environment variable <STRONG>TERMINFO</STRONG> is defined, any pro- -+ gram using <STRONG>curses</STRONG> checks for a local terminal definition -+ before checking in the standard place. For example, if - <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the compiled terminal defini- - tion is found in - - <STRONG>/usr/share/terminfo/a/att4424</STRONG>. - - (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid -- creation of huge directories.) However, if <STRONG>TERMINFO</STRONG> is -+ creation of huge directories.) However, if <STRONG>TERMINFO</STRONG> is - set to <STRONG>$HOME/myterms</STRONG>, <STRONG>curses</STRONG> first checks - - <STRONG>$HOME/myterms/a/att4424</STRONG>, -@@ -200,119 +200,117 @@ - - <STRONG>/usr/share/terminfo/a/att4424</STRONG>. - -- This is useful for developing experimental definitions or -+ This is useful for developing experimental definitions or - when write permission in <STRONG>/usr/share/terminfo</STRONG> is not avail- - able. - -- The integer variables <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> are defined in -- <STRONG>&lt;curses.h&gt;</STRONG> and will be filled in by <STRONG>initscr</STRONG> with the size -+ The integer variables <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> are defined in -+ <STRONG>&lt;curses.h&gt;</STRONG> and will be filled in by <STRONG>initscr</STRONG> with the size - of the screen. The constants <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the val- - ues <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively. - -- The <STRONG>curses</STRONG> routines also define the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable -+ The <STRONG>curses</STRONG> routines also define the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable - <STRONG>curscr</STRONG> which is used for certain low-level operations like -- clearing and redrawing a screen containing garbage. The -+ clearing and redrawing a screen containing garbage. The - <STRONG>curscr</STRONG> can be used in only a few routines. - - <STRONG>Routine</STRONG> <STRONG>and</STRONG> <STRONG>Argument</STRONG> <STRONG>Names</STRONG> -- Many <STRONG>curses</STRONG> routines have two or more versions. The rou- -+ Many <STRONG>curses</STRONG> routines have two or more versions. The rou- - tines prefixed with <STRONG>w</STRONG> require a window argument. The rou- - tines prefixed with <STRONG>p</STRONG> require a pad argument. Those with- - out a prefix generally use <STRONG>stdscr</STRONG>. - - The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate -- to move to before performing the appropriate action. The -- <STRONG>mv</STRONG> routines imply a call to <STRONG>move</STRONG> before the call to the -- other routine. The coordinate <EM>y</EM> always refers to the row -- (of the window), and <EM>x</EM> always refers to the column. The -+ to move to before performing the appropriate action. The -+ <STRONG>mv</STRONG> routines imply a call to <STRONG>move</STRONG> before the call to the -+ other routine. The coordinate <EM>y</EM> always refers to the row -+ (of the window), and <EM>x</EM> always refers to the column. The - upper left-hand corner is always (0,0), not (1,1). - - The routines prefixed with <STRONG>mvw</STRONG> take both a window argument -- and <EM>x</EM> and <EM>y</EM> coordinates. The window argument is always -+ and <EM>x</EM> and <EM>y</EM> coordinates. The window argument is always - specified before the coordinates. - -- In each case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the -+ In each case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the - pad affected; <EM>win</EM> and <EM>pad</EM> are always pointers to type <STRONG>WIN-</STRONG> - <STRONG>DOW</STRONG>. - - Option setting routines require a Boolean flag <EM>bf</EM> with the -- value <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>. Most of -- the data types used in the library routines, such as <STRONG>WIN-</STRONG> -- <STRONG>DOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are defined in <STRONG>&lt;curses.h&gt;</STRONG>. -- Types used for the terminfo routines such as <STRONG>TERMINAL</STRONG> are -+ value <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>. Most of -+ the data types used in the library routines, such as <STRONG>WIN-</STRONG> -+ <STRONG>DOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are defined in <STRONG>&lt;curses.h&gt;</STRONG>. -+ Types used for the terminfo routines such as <STRONG>TERMINAL</STRONG> are - defined in <STRONG>&lt;term.h&gt;</STRONG>. - -- This manual page describes functions which may appear in -- any configuration of the library. There are two common -+ This manual page describes functions which may appear in -+ any configuration of the library. There are two common - configurations of the library: - - ncurses - the "normal" library, which handles 8-bit - characters. The normal (8-bit) library stores -- characters combined with attributes in <STRONG>chtype</STRONG> -+ characters combined with attributes in <STRONG>chtype</STRONG> - data. - -- Attributes alone (no corresponding character) -- may be stored in <STRONG>chtype</STRONG> or the equivalent -- <STRONG>attr_t</STRONG> data. In either case, the data is -+ Attributes alone (no corresponding character) -+ may be stored in <STRONG>chtype</STRONG> or the equivalent -+ <STRONG>attr_t</STRONG> data. In either case, the data is - stored in something like an integer. - -- Each cell (row and column) in a <STRONG>WINDOW</STRONG> is -+ Each cell (row and column) in a <STRONG>WINDOW</STRONG> is - stored as a <STRONG>chtype</STRONG>. - - ncursesw -- the so-called "wide" library, which handles -- multibyte characters (see the section on -+ the so-called "wide" library, which handles -+ multibyte characters (see the section on - <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>). The "wide" library -- includes all of the calls from the "normal" -- library. It adds about one third more calls -+ includes all of the calls from the "normal" -+ library. It adds about one third more calls - using data types which store multibyte charac- - ters: - - <STRONG>cchar_t</STRONG> -- corresponds to <STRONG>chtype</STRONG>. However it is a -- structure, because more data is stored -- than can fit into an integer. The char- -+ corresponds to <STRONG>chtype</STRONG>. However it is a -+ structure, because more data is stored -+ than can fit into an integer. The char- - acters are large enough to require a full -- integer value - and there may be more -- than one character per cell. The video -- attributes and color are stored in sepa- -+ integer value - and there may be more -+ than one character per cell. The video -+ attributes and color are stored in sepa- - rate fields of the structure. - - Each cell (row and column) in a <STRONG>WINDOW</STRONG> is - stored as a <STRONG>cchar_t</STRONG>. - - <STRONG>wchar_t</STRONG> -- stores a "wide" character. Like <STRONG>chtype</STRONG>, -+ stores a "wide" character. Like <STRONG>chtype</STRONG>, - this may be an integer. - - <STRONG>wint_t</STRONG> -- stores a <STRONG>wchar_t</STRONG> or <STRONG>WEOF</STRONG> - not the same, -+ stores a <STRONG>wchar_t</STRONG> or <STRONG>WEOF</STRONG> - not the same, - though both may have the same size. - - The "wide" library provides new functions -- which are analogous to functions in the "nor- -- mal" library. There is a naming convention -- which relates many of the normal/wide vari- -- ants: a "_w" is inserted into the name. For -+ which are analogous to functions in the "nor- -+ mal" library. There is a naming convention -+ which relates many of the normal/wide vari- -+ ants: a "_w" is inserted into the name. For - example, <STRONG>waddch</STRONG> becomes <STRONG>wadd_wch</STRONG>. - -- - <STRONG>Routine</STRONG> <STRONG>Name</STRONG> <STRONG>Index</STRONG> - The following table lists each <STRONG>curses</STRONG> routine and the name -- of the manual page on which it is described. Routines -- flagged with `*' are ncurses-specific, not described by -+ of the manual page on which it is described. Routines -+ flagged with `*' are ncurses-specific, not described by - XPG4 or present in SVr4. - -- - <STRONG>curses</STRONG> Routine Name Manual Page Name - -------------------------------------------- - COLOR_PAIR <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> - PAIR_NUMBER <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> - _nc_free_and_exit <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>* -- - _nc_freeall <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>* - _nc_tracebits <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* -+ - _traceattr <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* - _traceattr2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* - _tracechar <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* -@@ -376,9 +374,9 @@ - echo <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> - echo_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> - echochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> -- - endwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> - erase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG> -+ - erasechar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> - erasewchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> - filter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> -@@ -442,9 +440,9 @@ - intrflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> - inwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> - is_cleared <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* -- - is_idcok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* - is_idlok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* -+ - is_immedok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* - is_keypad <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* - is_leaveok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* -@@ -508,9 +506,9 @@ - mvinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG> - mvinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> - mvinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> -- - mvinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> - mvinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> -+ - mvprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG> - mvscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG> - mvvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> -@@ -574,9 +572,9 @@ - pair_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> - pechochar <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> - pnoutrefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> -- - prefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> - printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG> -+ - putp <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> - putwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> - qiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> -@@ -640,9 +638,9 @@ - tigetstr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> - timeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> - touchline <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG> -- - touchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG> - tparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> -+ - tputs <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> - tputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> - trace <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* -@@ -656,6 +654,7 @@ - use_env <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> - use_extended_names <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>* - use_legacy_coding <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>* -+ use_tioctl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> - vid_attr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> - vid_puts <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> - vidattr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> -@@ -706,8 +705,8 @@ - wgetbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> - wgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> - wgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> -- - wgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> -+ - wgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> - whline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> - whline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> -@@ -752,11 +751,14 @@ - - </PRE> - <H2>RETURN VALUE</H2><PRE> -- Routines that return an integer return <STRONG>ERR</STRONG> upon failure -- and an integer value other than <STRONG>ERR</STRONG> upon successful com- -- pletion, unless otherwise noted in the routine descrip- -+ Routines that return an integer return <STRONG>ERR</STRONG> upon failure -+ and an integer value other than <STRONG>ERR</STRONG> upon successful com- -+ pletion, unless otherwise noted in the routine descrip- - tions. - -+ As a general rule, routines check for null pointers passed -+ as parameters, and handle this as an error. -+ - All macros return the value of the <STRONG>w</STRONG> version, except - <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>. The - return values of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, -@@ -773,52 +775,56 @@ - important ones have been already discussed in detail. - - BAUDRATE -- The debugging library checks this environment symbol -- when the application has redirected output to a file. -- The symbol's numeric value is used for the baudrate. -- If no value is found, <STRONG>ncurses</STRONG> uses 9600. This allows -- testers to construct repeatable test-cases that take -- into account costs that depend on baudrate. -+ The debugging library checks this environment vari- -+ able when the application has redirected output to a -+ file. The variable's numeric value is used for the -+ baudrate. If no value is found, <STRONG>ncurses</STRONG> uses 9600. -+ This allows testers to construct repeatable test- -+ cases that take into account costs that depend on -+ baudrate. - - CC When set, change occurrences of the command_character -- (i.e., the <STRONG>cmdch</STRONG> capability) of the loaded terminfo -- entries to the value of this symbol. Very few ter- -+ (i.e., the <STRONG>cmdch</STRONG> capability) of the loaded terminfo -+ entries to the value of this variable. Very few ter- - minfo entries provide this feature. - -- Because this name is also used in development envi- -- ronments to represent the C compiler's name, <STRONG>ncurses</STRONG> -+ Because this name is also used in development envi- -+ ronments to represent the C compiler's name, <STRONG>ncurses</STRONG> - ignores it if it does not happen to be a single char- - acter. - - COLUMNS - Specify the width of the screen in characters. -- Applications running in a windowing environment usu- -- ally are able to obtain the width of the window in -- which they are executing. If neither the <STRONG>COLUMNS</STRONG> -- value nor the terminal's screen size is available, -- <STRONG>ncurses</STRONG> uses the size which may be specified in the -+ Applications running in a windowing environment usu- -+ ally are able to obtain the width of the window in -+ which they are executing. If neither the <STRONG>COLUMNS</STRONG> -+ value nor the terminal's screen size is available, -+ <STRONG>ncurses</STRONG> uses the size which may be specified in the - terminfo database (i.e., the <STRONG>cols</STRONG> capability). - -- It is important that your application use a correct -- size for the screen. This is not always possible -- because your application may be running on a host -- which does not honor NAWS (Negotiations About Window -- Size), or because you are temporarily running as -- another user. However, setting <STRONG>COLUMNS</STRONG> and/or <STRONG>LINES</STRONG> -+ It is important that your application use a correct -+ size for the screen. This is not always possible -+ because your application may be running on a host -+ which does not honor NAWS (Negotiations About Window -+ Size), or because you are temporarily running as -+ another user. However, setting <STRONG>COLUMNS</STRONG> and/or <STRONG>LINES</STRONG> - overrides the library's use of the screen size - obtained from the operating system. - -- Either <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> symbols may be specified -- independently. This is mainly useful to circumvent -- legacy misfeatures of terminal descriptions, e.g., -+ Either <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> symbols may be specified -+ independently. This is mainly useful to circumvent -+ legacy misfeatures of terminal descriptions, e.g., - xterm which commonly specifies a 65 line screen. For -- best results, <STRONG>lines</STRONG> and <STRONG>cols</STRONG> should not be specified -+ best results, <STRONG>lines</STRONG> and <STRONG>cols</STRONG> should not be specified - in a terminal description for terminals which are run - as emulations. - - Use the <STRONG>use_env</STRONG> function to disable all use of exter- -- nal environment (including system calls) to determine -- the screen size. -+ nal environment (but not including system calls) to -+ determine the screen size. Use the <STRONG>use_tioctl</STRONG> func- -+ tion to update <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> to match the screen -+ size obtained from system calls or the terminal data- -+ base. - - ESCDELAY - Specifies the total time, in milliseconds, for which -@@ -858,234 +864,278 @@ - - LINES - Like COLUMNS, specify the height of the screen in -- characters. See COLUMNS for a detailed description. -+ characters. See COLUMNS for a detailed description. - - MOUSE_BUTTONS_123 - This applies only to the OS/2 EMX port. It specifies -- the order of buttons on the mouse. OS/2 numbers a -+ the order of buttons on the mouse. OS/2 numbers a - 3-button mouse inconsistently from other platforms: - - 1 = left - 2 = right - 3 = middle. - -- This symbol lets you customize the mouse. The symbol -- must be three numeric digits 1-3 in any order, e.g., -- 123 or 321. If it is not specified, <STRONG>ncurses</STRONG> uses -- 132. -+ This variable lets you customize the mouse. The -+ variable must be three numeric digits 1-3 in any -+ order, e.g., 123 or 321. If it is not specified, -+ <STRONG>ncurses</STRONG> uses 132. - - NCURSES_ASSUMED_COLORS -- Override the compiled-in assumption that the termi- -- nal's default colors are white-on-black (see -- <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>). You may set the foreground and -- background color values with this environment vari- -- able by proving a 2-element list: foreground,back- -- ground. For example, to tell ncurses to not assume -- anything about the colors, set this to "-1,-1". To -- make it green-on-black, set it to "2,0". Any posi- -+ Override the compiled-in assumption that the termi- -+ nal's default colors are white-on-black (see -+ <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>). You may set the foreground and -+ background color values with this environment vari- -+ able by proving a 2-element list: foreground,back- -+ ground. For example, to tell ncurses to not assume -+ anything about the colors, set this to "-1,-1". To -+ make it green-on-black, set it to "2,0". Any posi- - tive value from zero to the terminfo <STRONG>max_colors</STRONG> value - is allowed. - - NCURSES_GPM_TERMS -- This applies only to ncurses configured to use the -+ This applies only to ncurses configured to use the - GPM interface. - - If present, the environment variable is a list of one -- or more terminal names against which the TERM envi- -- ronment variable is matched. Setting it to an empty -- value disables the GPM interface; using the built-in -+ or more terminal names against which the TERM envi- -+ ronment variable is matched. Setting it to an empty -+ value disables the GPM interface; using the built-in - support for xterm, etc. - -- If the environment variable is absent, ncurses will -+ If the environment variable is absent, ncurses will - attempt to open GPM if TERM contains "linux". - - NCURSES_NO_HARD_TABS -- <STRONG>Ncurses</STRONG> may use tabs as part of the cursor movement -- optimization. In some cases, your terminal driver -- may not handle these properly. Set this environment -+ <STRONG>Ncurses</STRONG> may use tabs as part of the cursor movement -+ optimization. In some cases, your terminal driver -+ may not handle these properly. Set this environment - variable to disable the feature. You can also adjust - your <STRONG>stty</STRONG> settings to avoid the problem. - - NCURSES_NO_MAGIC_COOKIES - Some terminals use a magic-cookie feature which -- requires special handling to make highlighting and -- other video attributes display properly. You can -- suppress the highlighting entirely for these termi- -+ requires special handling to make highlighting and -+ other video attributes display properly. You can -+ suppress the highlighting entirely for these termi- - nals by setting this environment variable. - - NCURSES_NO_PADDING -- Most of the terminal descriptions in the terminfo -- database are written for real "hardware" terminals. -- Many people use terminal emulators which run in a -- windowing environment and use curses-based applica- -- tions. Terminal emulators can duplicate all of the -+ Most of the terminal descriptions in the terminfo -+ database are written for real "hardware" terminals. -+ Many people use terminal emulators which run in a -+ windowing environment and use curses-based applica- -+ tions. Terminal emulators can duplicate all of the - important aspects of a hardware terminal, but they do -- not have the same limitations. The chief limitation -- of a hardware terminal from the standpoint of your -+ not have the same limitations. The chief limitation -+ of a hardware terminal from the standpoint of your - application is the management of dataflow, i.e., tim- - ing. Unless a hardware terminal is interfaced into a -- terminal concentrator (which does flow control), it -- (or your application) must manage dataflow, prevent- -- ing overruns. The cheapest solution (no hardware -+ terminal concentrator (which does flow control), it -+ (or your application) must manage dataflow, prevent- -+ ing overruns. The cheapest solution (no hardware - cost) is for your program to do this by pausing after -- operations that the terminal does slowly, such as -+ operations that the terminal does slowly, such as - clearing the display. - -- As a result, many terminal descriptions (including -- the vt100) have delay times embedded. You may wish -- to use these descriptions, but not want to pay the -+ As a result, many terminal descriptions (including -+ the vt100) have delay times embedded. You may wish -+ to use these descriptions, but not want to pay the - performance penalty. - -- Set the NCURSES_NO_PADDING symbol to disable all but -- mandatory padding. Mandatory padding is used as a -- part of special control sequences such as <EM>flash</EM>. -+ Set the NCURSES_NO_PADDING environment variable to -+ disable all but mandatory padding. Mandatory padding -+ is used as a part of special control sequences such -+ as <EM>flash</EM>. - - NCURSES_NO_SETBUF -- Normally <STRONG>ncurses</STRONG> enables buffered output during ter- -- minal initialization. This is done (as in SVr4 -- curses) for performance reasons. For testing pur- -- poses, both of <STRONG>ncurses</STRONG> and certain applications, this -- feature is made optional. Setting the -- NCURSES_NO_SETBUF variable disables output buffering, -- leaving the output in the original (usually line -- buffered) mode. -+ This setting is obsolete. Before changes -+ -+ <STRONG>o</STRONG> started with 5.9 patch 20120825 and -+ -+ <STRONG>o</STRONG> continued though 5.9 patch 20130126 -+ -+ <STRONG>ncurses</STRONG> enabled buffered output during terminal ini- -+ tialization. This was done (as in SVr4 curses) for -+ performance reasons. For testing purposes, both of -+ <STRONG>ncurses</STRONG> and certain applications, this feature was -+ made optional. Setting the NCURSES_NO_SETBUF vari- -+ able disabled output buffering, leaving the output in -+ the original (usually line buffered) mode. -+ -+ In the current implementation, ncurses performs its -+ own buffering and does not require this workaround. -+ It does not modify the buffering of the standard out- -+ put. -+ -+ The reason for the change was to make the behavior -+ for interrupts and other signals more robust. One -+ drawback is that certain nonconventional programs -+ would mix ordinary stdio calls with ncurses calls and -+ (usually) work. This is no longer possible since -+ ncurses is not using the buffered standard output but -+ its own output (to the same file descriptor). As a -+ special case, the low-level calls such as <STRONG>putp</STRONG> still -+ use the standard output. But high-level curses calls -+ do not. - - NCURSES_NO_UTF8_ACS - During initialization, the <STRONG>ncurses</STRONG> library checks for -- special cases where VT100 line-drawing (and the cor- -- responding alternate character set capabilities) -- described in the terminfo are known to be missing. -- Specifically, when running in a UTF-8 locale, the -- Linux console emulator and the GNU screen program -- ignore these. Ncurses checks the TERM environment -- variable for these. For other special cases, you -- should set this environment variable. Doing this -- tells ncurses to use Unicode values which correspond -+ special cases where VT100 line-drawing (and the cor- -+ responding alternate character set capabilities) -+ described in the terminfo are known to be missing. -+ Specifically, when running in a UTF-8 locale, the -+ Linux console emulator and the GNU screen program -+ ignore these. Ncurses checks the TERM environment -+ variable for these. For other special cases, you -+ should set this environment variable. Doing this -+ tells ncurses to use Unicode values which correspond - to the VT100 line-drawing glyphs. That works for the - special cases cited, and is likely to work for termi- - nal emulators. - -- When setting this variable, you should set it to a -- nonzero value. Setting it to zero (or to a nonnum- -- ber) disables the special check for "linux" and -+ When setting this variable, you should set it to a -+ nonzero value. Setting it to zero (or to a nonnum- -+ ber) disables the special check for "linux" and - "screen". - -- As an alternative to the environment variable, -- ncurses checks for an extended terminfo capability -- <STRONG>U8</STRONG>. This is a numeric capability which can be com- -+ As an alternative to the environment variable, -+ ncurses checks for an extended terminfo capability -+ <STRONG>U8</STRONG>. This is a numeric capability which can be com- - piled using <STRONG>tic</STRONG> <STRONG>-x</STRONG>. For example - - # linux console, if patched to provide working - # VT100 shift-in/shift-out, with corresponding font. - linux-vt100|linux console with VT100 line-graphics, -- U8#0, use=linux, -+ U8#0, use=linux, - - # uxterm with vt100Graphics resource set to false - xterm-utf8|xterm relying on UTF-8 line-graphics, -- U8#1, use=xterm, -+ U8#1, use=xterm, - - The name "U8" is chosen to be two characters, to per- -- mit it to be used by applications that use ncurses' -+ mit it to be used by applications that use ncurses' - termcap interface. - - NCURSES_TRACE -- During initialization, the <STRONG>ncurses</STRONG> debugging library -- checks the NCURSES_TRACE symbol. If it is defined, -- to a numeric value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> function, -- using that value as the argument. -- -- The argument values, which are defined in <STRONG>curses.h</STRONG>, -- provide several types of information. When running -- with traces enabled, your application will write the -+ During initialization, the <STRONG>ncurses</STRONG> debugging library -+ checks the NCURSES_TRACE environment variable. If it -+ is defined, to a numeric value, <STRONG>ncurses</STRONG> calls the -+ <STRONG>trace</STRONG> function, using that value as the argument. -+ -+ The argument values, which are defined in <STRONG>curses.h</STRONG>, -+ provide several types of information. When running -+ with traces enabled, your application will write the - file <STRONG>trace</STRONG> to the current directory. - -- TERM Denotes your terminal type. Each terminal type is -+ TERM Denotes your terminal type. Each terminal type is - distinct, though many are similar. - - TERMCAP - If the <STRONG>ncurses</STRONG> library has been configured with <EM>term-</EM> -- <EM>cap</EM> support, <STRONG>ncurses</STRONG> will check for a terminal's -+ <EM>cap</EM> support, <STRONG>ncurses</STRONG> will check for a terminal's - description in termcap form if it is not available in - the terminfo database. - -- The TERMCAP symbol contains either a terminal -- description (with newlines stripped out), or a file -- name telling where the information denoted by the -- TERM symbol exists. In either case, setting it -- directs <STRONG>ncurses</STRONG> to ignore the usual place for this -- information, e.g., /etc/termcap. -+ The TERMCAP environment variable contains either a -+ terminal description (with newlines stripped out), or -+ a file name telling where the information denoted by -+ the TERM environment variable exists. In either -+ case, setting it directs <STRONG>ncurses</STRONG> to ignore the usual -+ place for this information, e.g., /etc/termcap. - - TERMINFO - Overrides the directory in which <STRONG>ncurses</STRONG> searches for - your terminal description. This is the simplest, but -- not the only way to change the list of directories. -+ not the only way to change the list of directories. - The complete list of directories in order follows: - -- <STRONG>o</STRONG> the last directory to which <STRONG>ncurses</STRONG> wrote, if -+ <STRONG>o</STRONG> the last directory to which <STRONG>ncurses</STRONG> wrote, if - any, is searched first - -- <STRONG>o</STRONG> the directory specified by the TERMINFO symbol -+ <STRONG>o</STRONG> the directory specified by the TERMINFO environ- -+ ment variable - - <STRONG>o</STRONG> $HOME/.terminfo - -- <STRONG>o</STRONG> directories listed in the TERMINFO_DIRS symbol -+ <STRONG>o</STRONG> directories listed in the TERMINFO_DIRS environ- -+ ment variable -+ -+ <STRONG>o</STRONG> one or more directories whose names are config- -+ ured and compiled into the ncurses library, i.e., - -- <STRONG>o</STRONG> one or more directories whose names are config- -- ured and compiled into the ncurses library, e.g., -- /usr/share/terminfo -+ <STRONG>o</STRONG> /usr/local/ncurses/share/ter- -+ minfo:/usr/share/terminfo (corresponding to -+ the TERMINFO_DIRS variable) -+ -+ <STRONG>o</STRONG> /usr/share/terminfo (corresponding to the -+ TERMINFO variable) - - TERMINFO_DIRS -- Specifies a list of directories to search for termi- -- nal descriptions. The list is separated by colons -- (i.e., ":") on Unix, semicolons on OS/2 EMX. All of -- the terminal descriptions are in terminfo form, which -- makes a subdirectory named for the first letter of -- the terminal names therein. -+ Specifies a list of directories to search for termi- -+ nal descriptions. The list is separated by colons -+ (i.e., ":") on Unix, semicolons on OS/2 EMX. -+ -+ All of the terminal descriptions are in terminfo -+ form. Normally these are stored in a directory tree, -+ using subdirectories named by the first letter of the -+ terminal names therein. -+ -+ If <STRONG>ncurses</STRONG> is built with a hashed database, then each -+ entry in this list can also be the path of the corre- -+ sponding database file. -+ -+ If <STRONG>ncurses</STRONG> is built with a support for reading term- -+ cap files directly, then an entry in this list may be -+ the path of a termcap file. - - TERMPATH -- If TERMCAP does not hold a file name then <STRONG>ncurses</STRONG> -- checks the TERMPATH symbol. This is a list of file- -- names separated by spaces or colons (i.e., ":") on -- Unix, semicolons on OS/2 EMX. If the TERMPATH symbol -- is not set, <STRONG>ncurses</STRONG> looks in the files /etc/termcap, -- /usr/share/misc/termcap and $HOME/.termcap, in that -+ If TERMCAP does not hold a file name then <STRONG>ncurses</STRONG> -+ checks the TERMPATH environment variable. This is a -+ list of filenames separated by spaces or colons -+ (i.e., ":") on Unix, semicolons on OS/2 EMX. -+ -+ If the TERMPATH environment variable is not set, -+ <STRONG>ncurses</STRONG> looks in the files /etc/termcap, -+ /usr/share/misc/termcap and $HOME/.termcap, in that - order. - -- The library may be configured to disregard the following -- variables when the current user is the superuser (root), -- or if the application uses setuid or setgid permissions: -- $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME. -+ The library may be configured to disregard the following -+ variables when the current user is the superuser (root), -+ or if the application uses setuid or setgid permissions: -+ -+ $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as -+ $HOME. - - - </PRE> - <H2>ALTERNATE CONFIGURATIONS</H2><PRE> -- Several different configurations are possible, depending -- on the configure script options used when building -- <STRONG>ncurses</STRONG>. There are a few main options whose effects are -+ Several different configurations are possible, depending -+ on the configure script options used when building -+ <STRONG>ncurses</STRONG>. There are a few main options whose effects are - visible to the applications developer using <STRONG>ncurses</STRONG>: - - --disable-overwrite -- The standard include for <STRONG>ncurses</STRONG> is as noted in <STRONG>SYN-</STRONG> -+ The standard include for <STRONG>ncurses</STRONG> is as noted in <STRONG>SYN-</STRONG> - <STRONG>OPSIS</STRONG>: - - <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG> - -- This option is used to avoid filename conflicts when -- <STRONG>ncurses</STRONG> is not the main implementation of curses of -- the computer. If <STRONG>ncurses</STRONG> is installed disabling -- overwrite, it puts its headers in a subdirectory, -+ This option is used to avoid filename conflicts when -+ <STRONG>ncurses</STRONG> is not the main implementation of curses of -+ the computer. If <STRONG>ncurses</STRONG> is installed disabling -+ overwrite, it puts its headers in a subdirectory, - e.g., - - <STRONG>#include</STRONG> <STRONG>&lt;ncurses/curses.h&gt;</STRONG> - -- It also omits a symbolic link which would allow you -+ It also omits a symbolic link which would allow you - to use <STRONG>-lcurses</STRONG> to build executables. - - --enable-widec -- The configure script renames the library and (if the -- <STRONG>--disable-overwrite</STRONG> option is used) puts the header -+ The configure script renames the library and (if the -+ <STRONG>--disable-overwrite</STRONG> option is used) puts the header - files in a different subdirectory. All of the -- library names have a "w" appended to them, i.e., -+ library names have a "w" appended to them, i.e., - instead of - - <STRONG>-lncurses</STRONG> -@@ -1095,16 +1145,16 @@ - <STRONG>-lncursesw</STRONG> - - You must also define <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> when com- -- piling for the wide-character library to use the -- extended (wide-character) functions. The <STRONG>curses.h</STRONG> -- file which is installed for the wide-character -- library is designed to be compatible with the normal -+ piling for the wide-character library to use the -+ extended (wide-character) functions. The <STRONG>curses.h</STRONG> -+ file which is installed for the wide-character -+ library is designed to be compatible with the normal - library's header. Only the size of the <STRONG>WINDOW</STRONG> struc- -- ture differs, and very few applications require more -- than a pointer to <STRONG>WINDOW</STRONG>s. If the headers are -- installed allowing overwrite, the wide-character -- library's headers should be installed last, to allow -- applications to be built using either library from -+ ture differs, and very few applications require more -+ than a pointer to <STRONG>WINDOW</STRONG>s. If the headers are -+ installed allowing overwrite, the wide-character -+ library's headers should be installed last, to allow -+ applications to be built using either library from - the same set of headers. - - --with-shared -@@ -1114,16 +1164,16 @@ - --with-debug - - --with-profile -- The shared and normal (static) library names differ -- by their suffixes, e.g., <STRONG>libncurses.so</STRONG> and -- <STRONG>libncurses.a</STRONG>. The debug and profiling libraries add -- a "_g" and a "_p" to the root names respectively, -- e.g., <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>. -+ The shared and normal (static) library names differ -+ by their suffixes, e.g., <STRONG>libncurses.so</STRONG> and <STRONG>libn-</STRONG> -+ <STRONG>curses.a</STRONG>. The debug and profiling libraries add a -+ "_g" and a "_p" to the root names respectively, e.g., -+ <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>. - - --with-trace -- The <STRONG>trace</STRONG> function normally resides in the debug -+ The <STRONG>trace</STRONG> function normally resides in the debug - library, but it is sometimes useful to configure this -- in the shared library. Configure scripts should -+ in the shared library. Configure scripts should - check for the function's existence rather than assum- - ing it is always in the debug library. - -@@ -1131,14 +1181,14 @@ - </PRE> - <H2>FILES</H2><PRE> - /usr/share/tabset -- directory containing initialization files for the -+ directory containing initialization files for the - terminal capability database /usr/share/terminfo ter- - minal capability database - - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_" -+ <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_" - for detailed routine descriptions. - <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG> - -@@ -1148,52 +1198,61 @@ - The <STRONG>ncurses</STRONG> library can be compiled with an option - (<STRONG>-DUSE_GETCAP</STRONG>) that falls back to the old-style /etc/term- - cap file if the terminal setup code cannot find a terminfo -- entry corresponding to <STRONG>TERM</STRONG>. Use of this feature is not -- recommended, as it essentially includes an entire termcap -- compiler in the <STRONG>ncurses</STRONG> startup code, at significant cost -+ entry corresponding to <STRONG>TERM</STRONG>. Use of this feature is not -+ recommended, as it essentially includes an entire termcap -+ compiler in the <STRONG>ncurses</STRONG> startup code, at significant cost - in core and startup cycles. - -- The <STRONG>ncurses</STRONG> library includes facilities for capturing -- mouse events on certain terminals (including xterm). See -+ The <STRONG>ncurses</STRONG> library includes facilities for capturing -+ mouse events on certain terminals (including xterm). See - the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details. - -- The <STRONG>ncurses</STRONG> library includes facilities for responding to -- window resizing events, e.g., when running in an xterm. -- See the <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> and <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual pages for -- details. In addition, the library may be configured with -+ The <STRONG>ncurses</STRONG> library includes facilities for responding to -+ window resizing events, e.g., when running in an xterm. -+ See the <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> and <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual pages for -+ details. In addition, the library may be configured with - a SIGWINCH handler. - -- The <STRONG>ncurses</STRONG> library extends the fixed set of function key -- capabilities of terminals by allowing the application -- designer to define additional key sequences at runtime. -+ The <STRONG>ncurses</STRONG> library extends the fixed set of function key -+ capabilities of terminals by allowing the application -+ designer to define additional key sequences at runtime. - See the <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>, and <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG> man- - ual pages for details. - - The <STRONG>ncurses</STRONG> library can exploit the capabilities of termi- -- nals which implement the ISO-6429 SGR 39 and SGR 49 con- -+ nals which implement the ISO-6429 SGR 39 and SGR 49 con- - trols, which allow an application to reset the terminal to -- its original foreground and background colors. From the -- users' perspective, the application is able to draw col- -- ored text on a background whose color is set indepen- -- dently, providing better control over color contrasts. -+ its original foreground and background colors. From the -+ users' perspective, the application is able to draw col- -+ ored text on a background whose color is set indepen- -+ dently, providing better control over color contrasts. - See the <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details. - -- The <STRONG>ncurses</STRONG> library includes a function for directing -- application output to a printer attached to the terminal -+ The <STRONG>ncurses</STRONG> library includes a function for directing -+ application output to a printer attached to the terminal - device. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details. - - - </PRE> - <H2>PORTABILITY</H2><PRE> -- The <STRONG>ncurses</STRONG> library is intended to be BASE-level confor- -+ The <STRONG>ncurses</STRONG> library is intended to be BASE-level confor- - mant with XSI Curses. The EXTENDED XSI Curses functional- - ity (including color support) is supported. - -- A small number of local differences (that is, individual -- differences between the XSI Curses and <STRONG>ncurses</STRONG> calls) are -- described in <STRONG>PORTABILITY</STRONG> sections of the library man -+ A small number of local differences (that is, individual -+ differences between the XSI Curses and <STRONG>ncurses</STRONG> calls) are -+ described in <STRONG>PORTABILITY</STRONG> sections of the library man - pages. - -+ Unlike other implementations, this one checks parameters -+ such as pointers to WINDOW structures to ensure they are -+ not null. The main reason for providing this behavior is -+ to guard against programmer error. The standard interface -+ does not provide a way for the library to tell an applica- -+ tion which of several possible errors were detected. -+ Relying on this (or some other) extension will adversely -+ affect the portability of curses applications. -+ - This implementation also contains several extensions: - - <STRONG>o</STRONG> The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it -@@ -1227,31 +1286,31 @@ - - <STRONG>o</STRONG> This implementation can also be configured to provide - a set of functions which improve the ability to manage -- multiple screens. See <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> for details. -+ multiple screens. See <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> for details. - -- In historic curses versions, delays embedded in the capa- -+ In historic curses versions, delays embedded in the capa- - bilities <STRONG>cr</STRONG>, <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding -- delay bits in the UNIX tty driver. In this implementa- -- tion, all padding is done by sending NUL bytes. This -- method is slightly more expensive, but narrows the inter- -- face to the UNIX kernel significantly and increases the -+ delay bits in the UNIX tty driver. In this implementa- -+ tion, all padding is done by sending NUL bytes. This -+ method is slightly more expensive, but narrows the inter- -+ face to the UNIX kernel significantly and increases the - package's portability correspondingly. - - - </PRE> - <H2>NOTES</H2><PRE> -- The header file <STRONG>&lt;curses.h&gt;</STRONG> automatically includes the -+ The header file <STRONG>&lt;curses.h&gt;</STRONG> automatically includes the - header files <STRONG>&lt;stdio.h&gt;</STRONG> and <STRONG>&lt;unctrl.h&gt;</STRONG>. - -- If standard output from a <STRONG>ncurses</STRONG> program is re-directed -- to something which is not a tty, screen updates will be -+ If standard output from a <STRONG>ncurses</STRONG> program is re-directed -+ to something which is not a tty, screen updates will be - directed to standard error. This was an undocumented fea- - ture of AT&amp;T System V Release 3 curses. - - - </PRE> - <H2>AUTHORS</H2><PRE> -- Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey. -+ Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey. - Based on pcurses by Pavel Curtis. - - -diff -Naur ncurses-5.9/doc/html/man/ncurses5-config.1.html ncurses-5.9.patch/doc/html/man/ncurses5-config.1.html ---- ncurses-5.9/doc/html/man/ncurses5-config.1.html 2011-04-05 00:46:49.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/ncurses5-config.1.html 2014-09-01 16:33:22.333792084 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 2010 Free Software Foundation, Inc. * -@@ -105,10 +105,11 @@ - - <STRONG>--terminfo-dirs</STRONG> - echos the $TERMINFO_DIRS directory list, e.g., -- /usr/local/ncurses/lib/terminfo:/usr/share/terminfo -+ /usr/local/ncurses/share/terminfo:/usr/share/ter- -+ minfo - - <STRONG>--termpath</STRONG> -- echos the $TERMPATH termcap list, if support for -+ echos the $TERMPATH termcap list, if support for - termcap is configured. - - <STRONG>--help</STRONG> prints this message -@@ -118,7 +119,7 @@ - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - -diff -Naur ncurses-5.9/doc/html/man/panel.3x.html ncurses-5.9.patch/doc/html/man/panel.3x.html ---- ncurses-5.9/doc/html/man/panel.3x.html 2011-04-05 00:46:49.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/panel.3x.html 2014-09-01 16:33:22.333792084 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -@@ -174,35 +174,35 @@ - - </PRE> - <H2>DIAGNOSTICS</H2><PRE> -- Each routine that returns a pointer returns <STRONG>NULL</STRONG> if an -- error occurs. Each routine that returns an int value -+ Each routine that returns a pointer returns <STRONG>NULL</STRONG> if an -+ error occurs. Each routine that returns an int value - returns <STRONG>OK</STRONG> if it executes successfully and <STRONG>ERR</STRONG> if not. - - - </PRE> - <H2>COMPATIBILITY</H2><PRE> -- Reasonable care has been taken to ensure compatibility -- with the native panel facility introduced in SVr3.2 -- (inspection of the SVr4 manual pages suggests the -- programming interface is unchanged). The <STRONG>PANEL</STRONG> data -- structures are merely similar. The programmer is cau- -- tioned not to directly use <STRONG>PANEL</STRONG> fields. -+ Reasonable care has been taken to ensure compatibility -+ with the native panel facility introduced in SVr3.2 -+ (inspection of the SVr4 manual pages suggests the program- -+ ming interface is unchanged). The <STRONG>PANEL</STRONG> data structures -+ are merely similar. The programmer is cautioned not to -+ directly use <STRONG>PANEL</STRONG> fields. - -- The functions <STRONG>show_panel()</STRONG> and <STRONG>top_panel()</STRONG> are identical -- in this implementation, and work equally well with dis- -+ The functions <STRONG>show_panel()</STRONG> and <STRONG>top_panel()</STRONG> are identical -+ in this implementation, and work equally well with dis- - played or hidden panels. In the native System V implemen- - tation, <STRONG>show_panel()</STRONG> is intended for making a hidden panel -- visible (at the top of the stack) and <STRONG>top_panel()</STRONG> is -- intended for making an already-visible panel move to the -- top of the stack. You are cautioned to use the correct -- function to ensure compatibility with native panel -+ visible (at the top of the stack) and <STRONG>top_panel()</STRONG> is -+ intended for making an already-visible panel move to the -+ top of the stack. You are cautioned to use the correct -+ function to ensure compatibility with native panel - libraries. - - - </PRE> - <H2>NOTE</H2><PRE> -- In your library list, libpanel.a should be before libn- -- curses.a; that is, you want to say `-lpanel -lncurses', -+ In your library list, libpanel.a should be before libn- -+ curses.a; that is, you want to say `-lpanel -lncurses', - not the other way around (which would usually give a link- - error). - -@@ -218,14 +218,14 @@ - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - </PRE> - <H2>AUTHOR</H2><PRE> -- Originally written by Warren Tucker &lt;wht@n4hgf.mt- -- park.ga.us&gt;, primarily to assist in porting u386mon to -- systems without a native panels library. Repackaged for -+ Originally written by Warren Tucker &lt;wht@n4hgf.mt- -+ park.ga.us&gt;, primarily to assist in porting u386mon to -+ systems without a native panels library. Repackaged for - ncurses by Zeyd ben-Halim. - - -diff -Naur ncurses-5.9/doc/html/man/resizeterm.3x.html ncurses-5.9.patch/doc/html/man/resizeterm.3x.html ---- ncurses-5.9/doc/html/man/resizeterm.3x.html 2011-01-09 02:03:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/resizeterm.3x.html 2014-09-01 16:33:22.333792084 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,8 +27,8 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * Author: Thomas E. Dickey 1996-2005 -- * @Id: resizeterm.3x,v 1.14 2010/12/04 18:38:55 tom Exp @ -+ * Author: Thomas E. Dickey 1996-on -+ * @Id: resizeterm.3x,v 1.17 2013/06/22 20:41:54 tom Exp @ - --> - <HTML> - <HEAD> -@@ -69,28 +69,29 @@ - terminal (e.g., xterm). The function <STRONG>resizeterm</STRONG> resizes - the standard and current windows to the specified dimen- - sions, and adjusts other bookkeeping data used by the -- <STRONG>ncurses</STRONG> library that record the window dimensions. -+ <STRONG>ncurses</STRONG> library that record the window dimensions such as -+ the <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> variables. - -- Most of the work is done by the inner function -+ Most of the work is done by the inner function - <STRONG>resize_term</STRONG>. The outer function <STRONG>resizeterm</STRONG> adds bookkeep- -- ing for the SIGWINCH handler. When resizing the windows, -- <STRONG>resize_term</STRONG> blank-fills the areas that are extended. The -+ ing for the SIGWINCH handler. When resizing the windows, -+ <STRONG>resize_term</STRONG> blank-fills the areas that are extended. The - calling application should fill in these areas with appro- -- priate data. The <STRONG>resize_term</STRONG> function attempts to resize -- all windows. However, due to the calling convention of -- pads, it is not possible to resize these without addi- -+ priate data. The <STRONG>resize_term</STRONG> function attempts to resize -+ all windows. However, due to the calling convention of -+ pads, it is not possible to resize these without addi- - tional interaction with the application. - -- A support function <STRONG>is_term_resized</STRONG> is provided so that -- applications can check if the <STRONG>resize_term</STRONG> function would -+ A support function <STRONG>is_term_resized</STRONG> is provided so that -+ applications can check if the <STRONG>resize_term</STRONG> function would - modify the window structures. It returns TRUE if the win- - dows would be modified, and FALSE otherwise. - - - </PRE> - <H2>RETURN VALUE</H2><PRE> -- Except as notes, these function return the integer <STRONG>ERR</STRONG> -- upon failure and <STRONG>OK</STRONG> on success. They will fail if either -+ Except as noted, these functions return the integer <STRONG>ERR</STRONG> -+ upon failure and <STRONG>OK</STRONG> on success. They will fail if either - of the dimensions are less than or equal to zero, or if an - error occurs while (re)allocating memory for the windows. - -@@ -98,29 +99,27 @@ - </PRE> - <H2>NOTES</H2><PRE> - While these functions are intended to be used to support a -- signal handler (i.e., for SIGWINCH), care should be taken -- to avoid invoking them in a context where <STRONG>malloc</STRONG> or <STRONG>real-</STRONG> -- <STRONG>loc</STRONG> may have been interrupted, since it uses those func- -+ signal handler (i.e., for SIGWINCH), care should be taken -+ to avoid invoking them in a context where <STRONG>malloc</STRONG> or <STRONG>real-</STRONG> -+ <STRONG>loc</STRONG> may have been interrupted, since it uses those func- - tions. - -- If ncurses is configured to supply its own SIGWINCH han- -- dler, the <STRONG>resizeterm</STRONG> function ungetch's a <STRONG>KEY_RESIZE</STRONG> which -- will be read on the next call to <STRONG>getch</STRONG>. This is used to -+ If ncurses is configured to supply its own SIGWINCH han- -+ dler, the <STRONG>resizeterm</STRONG> function <STRONG>ungetch</STRONG>'s a <STRONG>KEY_RESIZE</STRONG> which -+ will be read on the next call to <STRONG>getch</STRONG>. This is used to - alert an application that the screen size has changed, and -- that it should repaint special features such as pads that -+ that it should repaint special features such as pads that - cannot be done automatically. - -- If the environment variables <STRONG>LINES</STRONG> or <STRONG>COLUMNS</STRONG> are set, -- this overrides the library's use of the window size -- obtained from the operating system. Thus, even if a SIG- -- WINCH is received, no screen size change may be recorded. -- In that case, no <STRONG>KEY_RESIZE</STRONG> is queued for the next call to -- <STRONG>getch</STRONG>; an <STRONG>ERR</STRONG> will be returned instead. -+ If the environment variables <STRONG>LINES</STRONG> or <STRONG>COLUMNS</STRONG> are set, -+ this overrides the library's use of the window size -+ obtained from the operating system. Thus, even if a SIG- -+ WINCH is received, no screen size change may be recorded. - - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>. -+ <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>. - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/tabs.1.html ncurses-5.9.patch/doc/html/man/tabs.1.html ---- ncurses-5.9/doc/html/man/tabs.1.html 2011-04-05 00:46:50.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/tabs.1.html 2014-09-01 16:33:22.333792084 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2008-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: tabs.1,v 1.8 2010/12/04 18:40:45 tom Exp @ -+ * @Id: tabs.1,v 1.11 2013/06/22 18:11:57 tom Exp @ - --> - <HTML> - <HEAD> -@@ -52,7 +52,7 @@ - - </PRE> - <H2>SYNOPSIS</H2><PRE> -- <STRONG>tabs</STRONG> [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-ahuUV</STRONG>] <EM>file...</EM> -+ <STRONG>tabs</STRONG> [<EM>options</EM>]] <EM>[tabstop-list]</EM> - - - </PRE> -@@ -85,14 +85,17 @@ - any debugging option, but not to modify the terminal - settings. - -- The <STRONG>tabs</STRONG> program processes a single list of tab stops. -- The last option to be processed which defines a list is -+ <STRONG>-V</STRONG> reports the version of ncurses which was used in this -+ program, and exits. -+ -+ The <STRONG>tabs</STRONG> program processes a single list of tab stops. -+ The last option to be processed which defines a list is - the one that determines the list to be processed. - - <STRONG>Implicit</STRONG> <STRONG>Lists</STRONG> -- Use a single number as an option, e.g., "<STRONG>-5</STRONG>" to set tabs -- at the given interval (in this case 1, 6, 11, 16, 21, -- etc.). Tabs are repeated up to the right margin of the -+ Use a single number as an option, e.g., "<STRONG>-5</STRONG>" to set tabs -+ at the given interval (in this case 1, 6, 11, 16, 21, -+ etc.). Tabs are repeated up to the right margin of the - screen. - - Use "<STRONG>-0</STRONG>" to clear all tabs. -@@ -100,17 +103,18 @@ - Use "<STRONG>-8</STRONG>" to set tabs to the standard interval. - - <STRONG>Explicit</STRONG> <STRONG>Lists</STRONG> -- An explicit list can be defined after the options (this -- does not use a "-"). The values in the list must be in -+ An explicit list can be defined after the options (this -+ does not use a "-"). The values in the list must be in - increasing numeric order, and greater than zero. They are - separated by a comma or a blank, for example, - - tabs 1,6,11,16,21 - tabs 1 6 11 16 21 -- Use a '+' to treat a number as an increment relative to -+ Use a '+' to treat a number as an increment relative to - the previous value, e.g., - - tabs 1,+5,+5,+5,+5 -+ - which is equivalent to the 1,6,11,16,21 example. - - <STRONG>Predefined</STRONG> <STRONG>Tab-Stops</STRONG> -@@ -137,18 +141,18 @@ - - </PRE> - <H2>PORTABILITY</H2><PRE> -- X/Open describes a <STRONG>+m</STRONG> option, to set a terminal's left- -- margin. Very few of the entries in the terminal database -+ X/Open describes a <STRONG>+m</STRONG> option, to set a terminal's left- -+ margin. Very few of the entries in the terminal database - provide this capability. - -- The <STRONG>-d</STRONG> (debug) and <STRONG>-n</STRONG> (no-op) options are extensions not -+ The <STRONG>-d</STRONG> (debug) and <STRONG>-n</STRONG> (no-op) options are extensions not - provided by other implementations. - -- Documentation for other implementations states that there -- is a limit on the number of tab stops. While some termi- -+ Documentation for other implementations states that there -+ is a limit on the number of tab stops. While some termi- - nals may not accept an arbitrary number of tab stops, this -- implementation will attempt to set tab stops up to the -- right margin of the screen, if the given list happens to -+ implementation will attempt to set tab stops up to the -+ right margin of the screen, if the given list happens to - be that long. - - -@@ -156,7 +160,7 @@ - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - -diff -Naur ncurses-5.9/doc/html/man/term.5.html ncurses-5.9.patch/doc/html/man/term.5.html ---- ncurses-5.9/doc/html/man/term.5.html 2011-01-09 02:03:28.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/term.5.html 2014-09-01 16:33:22.333792084 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/man/term.7.html ncurses-5.9.patch/doc/html/man/term.7.html ---- ncurses-5.9/doc/html/man/term.7.html 2011-02-26 00:25:09.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/term.7.html 2014-09-01 16:33:22.333792084 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: term.7,v 1.22 2010/12/04 18:41:07 tom Exp @ -+ * @Id: term.7,v 1.23 2011/12/17 23:32:17 tom Exp @ - --> - <HTML> - <HEAD> -@@ -85,9 +85,9 @@ - the tty device and baud rate. - - Setting your own <STRONG>TERM</STRONG> value may also be useful if you have -- created a custom entry incorporating options (such as -- visual bell or reverse-video) which you wish to override -- the system default type for your line. -+ created a custom entry incorporating options (such as vis- -+ ual bell or reverse-video) which you wish to override the -+ system default type for your line. - - Terminal type descriptions are stored as files of capabil- - ity data underneath /usr/share/terminfo. To browse a list -diff -Naur ncurses-5.9/doc/html/man/terminfo.5.html ncurses-5.9.patch/doc/html/man/terminfo.5.html ---- ncurses-5.9/doc/html/man/terminfo.5.html 2011-04-05 00:46:51.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/terminfo.5.html 2014-09-01 16:33:22.335792088 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - * DO NOT EDIT THIS FILE BY HAND! -@@ -6,7 +6,7 @@ - * Note: this must be run through tbl before nroff. - * The magic cookie on the first line triggers this under some man programs. - **************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,9 +32,9 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: terminfo.head,v 1.18 2010/07/31 16:08:48 tom Exp @ -+ * @Id: terminfo.head,v 1.21 2013/03/09 22:11:36 tom Exp @ - * Head of terminfo man page ends here -- * @Id: terminfo.tail,v 1.53 2010/12/04 18:38:55 tom Exp @ -+ * @Id: terminfo.tail,v 1.68 2013/11/09 15:20:48 tom Exp @ - * Beginning of terminfo.tail file - * This file is part of ncurses. - * See "terminfo.head" for copyright. -@@ -73,12 +73,12 @@ - </PRE> - <H2>DESCRIPTION</H2><PRE> - <EM>Terminfo</EM> is a data base describing terminals, used by -- screen-oriented programs such as <STRONG><A HREF="nvi.1.html">nvi(1)</A></STRONG>, <STRONG><A HREF="rogue.1.html">rogue(1)</A></STRONG> and -+ screen-oriented programs such as <STRONG>nvi(1)</STRONG>, <STRONG>rogue(1)</STRONG> and - libraries such as <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>. <EM>Terminfo</EM> describes termi- - nals by giving a set of capabilities which they have, by - specifying how to perform screen operations, and by speci- - fying padding requirements and initialization sequences. -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - Entries in <EM>terminfo</EM> consist of a sequence of `,' separated - fields (embedded commas may be escaped with a backslash or -@@ -106,14 +106,13 @@ - Terminal names (except for the last, verbose entry) should - be chosen using the following conventions. The particular - piece of hardware making up the terminal should have a -- root name, thus ``hp2621''. This name should not contain -+ root name, thus "hp2621". This name should not contain - hyphens. Modes that the hardware can be in, or user pref- - erences, should be indicated by appending a hyphen and a - mode suffix. Thus, a vt100 in 132 column mode would be - vt100-w. The following suffixes should be used where pos- - sible: - -- - <STRONG>Suffix</STRONG> <STRONG>Meaning</STRONG> <STRONG>Example</STRONG> - -<EM>nn</EM> Number of lines on the screen aaa-60 - -<EM>n</EM>p Number of pages of memory c100-4p -@@ -126,14 +125,14 @@ - -ns No status line hp2626-ns - -rv Reverse video c100-rv - -s Enable status line vt100-s -- - -vb Use visible bell instead of beep wy370-vb -+ - -w Wide mode (&gt; 80 columns, usually 132) vt100-w - - For more on terminal naming conventions, see the <STRONG>term(7)</STRONG> - manual page. - -- <STRONG>Capabilities</STRONG> -+ <STRONG>Predefined</STRONG> <STRONG>Capabilities</STRONG> - The following is a complete table of the capabilities - included in a terminfo description block and available to - terminfo-using code. In each line of the table, -@@ -176,133 +175,134 @@ - These are the boolean capabilities: - - -- <STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG> -- <STRONG>Booleans</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG> -- auto_left_margin bw bw cub1 wraps from col- -+ <STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG> -+ <STRONG>Booleans</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG> -+ auto_left_margin bw bw cub1 wraps from col- - umn 0 to last column -- auto_right_margin am am terminal has auto- -+ auto_right_margin am am terminal has auto- - matic margins -- back_color_erase bce ut screen erased with -+ back_color_erase bce ut screen erased with - background color -- can_change ccc cc terminal can re- -+ can_change ccc cc terminal can re- - define existing col- - ors -- ceol_standout_glitch xhp xs standout not erased -+ ceol_standout_glitch xhp xs standout not erased - by overwriting (hp) -- col_addr_glitch xhpa YA only positive motion -+ col_addr_glitch xhpa YA only positive motion - for hpa/mhpa caps - - -- cpi_changes_res cpix YF changing character -+ -+ cpi_changes_res cpix YF changing character - pitch changes reso- - lution -- cr_cancels_micro_mode crxm YB using cr turns off -+ cr_cancels_micro_mode crxm YB using cr turns off - micro mode -- dest_tabs_magic_smso xt xt tabs destructive, -+ dest_tabs_magic_smso xt xt tabs destructive, - magic so char - (t1061) -- eat_newline_glitch xenl xn newline ignored -+ eat_newline_glitch xenl xn newline ignored - after 80 cols (con- - cept) -- erase_overstrike eo eo can erase over- -+ erase_overstrike eo eo can erase over- - strikes with a blank -- generic_type gn gn generic line type -- hard_copy hc hc hardcopy terminal -- hard_cursor chts HC cursor is hard to -+ generic_type gn gn generic line type -+ hard_copy hc hc hardcopy terminal -+ hard_cursor chts HC cursor is hard to - see -- has_meta_key km km Has a meta key -+ has_meta_key km km Has a meta key - (i.e., sets 8th-bit) -- has_print_wheel daisy YC printer needs opera- -+ has_print_wheel daisy YC printer needs opera- - tor to change char- - acter set -- has_status_line hs hs has extra status -+ has_status_line hs hs has extra status - line -- hue_lightness_saturation hls hl terminal uses only -+ hue_lightness_saturation hls hl terminal uses only - HLS color notation - (Tektronix) -- insert_null_glitch in in insert mode distin- -+ insert_null_glitch in in insert mode distin- - guishes nulls -- lpi_changes_res lpix YG changing line pitch -+ lpi_changes_res lpix YG changing line pitch - changes resolution -- memory_above da da display may be -+ memory_above da da display may be - retained above the - screen -- memory_below db db display may be -+ memory_below db db display may be - retained below the - screen -- move_insert_mode mir mi safe to move while -+ move_insert_mode mir mi safe to move while - in insert mode -- move_standout_mode msgr ms safe to move while -+ move_standout_mode msgr ms safe to move while - in standout mode -- needs_xon_xoff nxon nx padding will not -+ needs_xon_xoff nxon nx padding will not - work, xon/xoff - required -- no_esc_ctlc xsb xb beehive (f1=escape, -+ no_esc_ctlc xsb xb beehive (f1=escape, - f2=ctrl C) -- no_pad_char npc NP pad character does -+ no_pad_char npc NP pad character does - not exist -- non_dest_scroll_region ndscr ND scrolling region is -+ non_dest_scroll_region ndscr ND scrolling region is - non-destructive -- non_rev_rmcup nrrmc NR smcup does not -+ non_rev_rmcup nrrmc NR smcup does not - reverse rmcup -- over_strike os os terminal can over- -+ over_strike os os terminal can over- - strike -- prtr_silent mc5i 5i printer will not -+ prtr_silent mc5i 5i printer will not - echo on screen -- row_addr_glitch xvpa YD only positive motion -+ row_addr_glitch xvpa YD only positive motion - for vpa/mvpa caps -- semi_auto_right_margin sam YE printing in last -+ semi_auto_right_margin sam YE printing in last - column causes cr -- status_line_esc_ok eslok es escape can be used -+ status_line_esc_ok eslok es escape can be used - on the status line -- tilde_glitch hz hz cannot print ~'s -+ tilde_glitch hz hz cannot print ~'s - (hazeltine) - - -- transparent_underline ul ul underline character -+ transparent_underline ul ul underline character - overstrikes -- xon_xoff xon xo terminal uses -+ xon_xoff xon xo terminal uses - xon/xoff handshaking - - These are the numeric capabilities: - - -- <STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG> -- <STRONG>Numeric</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG> -- columns cols co number of columns in -+ <STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG> -+ <STRONG>Numeric</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG> -+ columns cols co number of columns in - a line -- init_tabs it it tabs initially every -+ init_tabs it it tabs initially every - # spaces -- label_height lh lh rows in each label -- label_width lw lw columns in each -+ label_height lh lh rows in each label -+ label_width lw lw columns in each - label -- lines lines li number of lines on -+ lines lines li number of lines on - screen or page -- lines_of_memory lm lm lines of memory if &gt; -+ lines_of_memory lm lm lines of memory if &gt; - line. 0 means varies -- magic_cookie_glitch xmc sg number of blank -+ magic_cookie_glitch xmc sg number of blank - characters left by - smso or rmso -- max_attributes ma ma maximum combined -+ max_attributes ma ma maximum combined - attributes terminal - can handle -- max_colors colors Co maximum number of -+ max_colors colors Co maximum number of - colors on screen -- max_pairs pairs pa maximum number of -+ max_pairs pairs pa maximum number of - color-pairs on the - screen -- maximum_windows wnum MW maximum number of -+ maximum_windows wnum MW maximum number of - defineable windows -- no_color_video ncv NC video attributes -+ no_color_video ncv NC video attributes - that cannot be used - with colors -- num_labels nlab Nl number of labels on -+ num_labels nlab Nl number of labels on - screen -- padding_baud_rate pb pb lowest baud rate -+ padding_baud_rate pb pb lowest baud rate - where padding needed -- virtual_terminal vt vt virtual terminal -+ virtual_terminal vt vt virtual terminal - number (CB/unix) -- width_status_line wsl ws number of columns in -+ width_status_line wsl ws number of columns in - status line - - The following numeric capabilities are present in the -@@ -310,47 +310,47 @@ - man page. They came in with SVr4's printer support. - - -- <STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG> -- <STRONG>Numeric</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG> -- bit_image_entwining bitwin Yo number of passes for -+ <STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG> -+ <STRONG>Numeric</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG> -+ bit_image_entwining bitwin Yo number of passes for - each bit-image row -- bit_image_type bitype Yp type of bit-image -+ bit_image_type bitype Yp type of bit-image - device -- buffer_capacity bufsz Ya numbers of bytes -+ buffer_capacity bufsz Ya numbers of bytes - buffered before - printing -- buttons btns BT number of buttons on -+ buttons btns BT number of buttons on - mouse -- dot_horz_spacing spinh Yc spacing of dots hor- -+ dot_horz_spacing spinh Yc spacing of dots hor- - izontally in dots - per inch - -- dot_vert_spacing spinv Yb spacing of pins ver- -+ dot_vert_spacing spinv Yb spacing of pins ver- - tically in pins per - inch -- max_micro_address maddr Yd maximum value in -+ max_micro_address maddr Yd maximum value in - micro_..._address -- max_micro_jump mjump Ye maximum value in -+ max_micro_jump mjump Ye maximum value in - parm_..._micro -- micro_col_size mcs Yf character step size -+ micro_col_size mcs Yf character step size - when in micro mode -- micro_line_size mls Yg line step size when -+ micro_line_size mls Yg line step size when - in micro mode -- number_of_pins npins Yh numbers of pins in -+ number_of_pins npins Yh numbers of pins in - print-head -- output_res_char orc Yi horizontal resolu- -+ output_res_char orc Yi horizontal resolu- - tion in units per - line -- output_res_horz_inch orhi Yk horizontal resolu- -+ output_res_horz_inch orhi Yk horizontal resolu- - tion in units per - inch -- output_res_line orl Yj vertical resolution -+ output_res_line orl Yj vertical resolution - in units per line -- output_res_vert_inch orvi Yl vertical resolution -+ output_res_vert_inch orvi Yl vertical resolution - in units per inch -- print_rate cps Ym print rate in char- -+ print_rate cps Ym print rate in char- - acters per second -- wide_char_size widcs Yn character step size -+ wide_char_size widcs Yn character step size - when in double wide - mode - -@@ -402,8 +402,8 @@ - prototype !? - create_window cwin CW define a window #1 - from #2,#3 to #4,#5 -- cursor_address cup cm move to row #1 -- columns #2 -+ cursor_address cup cm move to row #1 col- -+ umns #2 - cursor_down cud1 do down one line - cursor_home home ho home cursor (if no - cup) -@@ -904,8 +904,8 @@ - zero_motion zerom Zx No motion for subse- - quent character - -- The following string capabilities are present in the -- SVr4.0 term structure, but were originally not documented -+ The following string capabilities are present in the -+ SVr4.0 term structure, but were originally not documented - in the man page. - - -@@ -989,13 +989,14 @@ - bottom margins to - #1, #2 - -- The XSI Curses standard added these. They are some -- post-4.1 versions of System V curses, e.g., Solaris 2.5 -- and IRIX 6.x. The <STRONG>ncurses</STRONG> termcap names for them are -- invented; according to the XSI Curses standard, they have -- no termcap names. If your compiled terminfo entries use -- these, they may not be binary-compatible with System V -- terminfo entries after SVr4.1; beware! -+ The XSI Curses standard added these hardcopy capabili- -+ ties. They were used in some post-4.1 versions of System -+ V curses, e.g., Solaris 2.5 and IRIX 6.x. Except for <STRONG>YI</STRONG>, -+ the <STRONG>ncurses</STRONG> termcap names for them are invented. Accord- -+ ing to the XSI Curses standard, they have no termcap -+ names. If your compiled terminfo entries use these, they -+ may not be binary-compatible with System V terminfo -+ entries after SVr4.1; beware! - - - <STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG> -@@ -1015,123 +1016,210 @@ - set_a_attributes sgr1 sA Define second set of - video attributes - #1-#6 -- set_pglen_inch slengthsL YI Set page length -- to #1 hundredth of -- an inch -+ set_pglen_inch slengthYI Set page length to -+ #1 hundredth of an -+ inch (some implemen- -+ tations use sL for -+ termcap). -+ -+ <STRONG>User-Defined</STRONG> <STRONG>Capabilities</STRONG> -+ The preceding section listed the <EM>predefined</EM> capabilities. -+ They deal with some special features for terminals no -+ longer (or possibly never) produced. Occasionally there -+ are special features of newer terminals which are awkward -+ or impossible to represent by reusing the predefined capa- -+ bilities. -+ -+ <STRONG>ncurses</STRONG> addresses this limitation by allowing user-defined -+ capabilities. The <STRONG>tic</STRONG> and <STRONG>infocmp</STRONG> programs provide the <STRONG>-x</STRONG> -+ option for this purpose. When <STRONG>-x</STRONG> is set, <STRONG>tic</STRONG> treats -+ unknown capabilities as user-defined. That is, if <STRONG>tic</STRONG> -+ encounters a capability name which it does not recognize, -+ it infers its type (boolean, number or string) from the -+ syntax and makes an extended table entry for that capabil- -+ ity. The <STRONG>use_extended_names</STRONG> function makes this informa- -+ tion conditionally available to applications. The ncurses -+ library provides the data leaving most of the behavior to -+ applications: -+ -+ <STRONG>o</STRONG> User-defined capability strings whose name begins with -+ "k" are treated as function keys. -+ -+ <STRONG>o</STRONG> The types (boolean, number, string) determined by <STRONG>tic</STRONG> -+ can be inferred by successful calls on <STRONG>tigetflag</STRONG>, etc. -+ -+ <STRONG>o</STRONG> If the capability name happens to be two characters, -+ the capability is also available through the termcap -+ interface. -+ -+ While termcap is said to be extensible because it does not -+ use a predefined set of capabilities, in practice it has -+ been limited to the capabilities defined by terminfo -+ implementations. As a rule, user-defined capabilities -+ intended for use by termcap applications should be limited -+ to booleans and numbers to avoid running past the 1023 -+ byte limit assumed by termcap implementations and their -+ applications. In particular, providing extended sets of -+ function keys (past the 60 numbered keys and the handful -+ of special named keys) is best done using the longer names -+ available using terminfo. - - <STRONG>A</STRONG> <STRONG>Sample</STRONG> <STRONG>Entry</STRONG> - The following entry, describing an ANSI-standard terminal, -- is representative of what a <STRONG>terminfo</STRONG> entry for a modern -+ is representative of what a <STRONG>terminfo</STRONG> entry for a modern - terminal typically looks like. - -- ansi|ansi/pc-term compatible with color, -- mc5i, -- colors#8, ncv#3, pairs#64, -- cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC, -- cuu=\E[%p1%dA, dch=\E[%p1%dP, dl=\E[%p1%dM, -- ech=\E[%p1%dX, el1=\E[1K, hpa=\E[%p1%dG, ht=\E[I, -- ich=\E[%p1%d@, il=\E[%p1%dL, indn=\E[%p1%dS, .indn=\E[%p1%dT, -- kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kf1=\E[M, kf10=\E[V, -- kf11=\E[W, kf12=\E[X, kf2=\E[N, kf3=\E[O, kf4=\E[P, -- kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, kf9=\E[U, -- kich1=\E[L, mc4=\E[4i, mc5=\E[5i, nel=\r\E[S, -- op=\E[37;40m, rep=%p1%c\E[%p2%{1}%-%db, -- rin=\E[%p1%dT, s0ds=\E(B, s1ds=\E)B, s2ds=\E*B, -- s3ds=\E+B, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;12%;m, -- sgr0=\E[0;10m, tbc=\E[2g, u6=\E[%d;%dR, u7=\E[6n, -- u8=\E[?%[;0123456789]c, u9=\E[c, vpa=\E[%p1%dd, -- -- Entries may continue onto multiple lines by placing white -- space at the beginning of each line except the first. -- Comments may be included on lines beginning with ``#''. -- Capabilities in <EM>terminfo</EM> are of three types: Boolean capa- -- bilities which indicate that the terminal has some partic- -- ular feature, numeric capabilities giving the size of the -- terminal or the size of particular delays, and string -- capabilities, which give a sequence which can be used to -- perform particular terminal operations. -+ ansi|ansi/pc-term compatible with color, -+ am, mc5i, mir, msgr, -+ colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260 -+ j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303 -+ u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -+ cr=^M, cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -+ el1=\E[1K, home=\E[H, hpa=\E[%i%p1%dG, ht=\E[I, hts=\EH, -+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ indn=\E[%p1%dS, invis=\E[8m, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L, -+ mc4=\E[4i, mc5=\E[5i, nel=\r\E[S, op=\E[39;49m, -+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, rin=\E[%p1%dT, -+ rmacs=\E[10m, rmpch=\E[10m, rmso=\E[m, rmul=\E[m, -+ s0ds=\E(B, s1ds=\E)B, s2ds=\E*B, s3ds=\E+B, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=\E[0;10%?%p1%t;7%; -+ %?%p2%t;4%; -+ %?%p3%t;7%; -+ %?%p4%t;5%; -+ %?%p6%t;1%; -+ %?%p7%t;8%; -+ %?%p9%t;11%;m, -+ sgr0=\E[0;10m, smacs=\E[11m, smpch=\E[11m, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, -+ u8=\E[?%[;0123456789]c, u9=\E[c, vpa=\E[%i%p1%dd, -+ -+ Entries may continue onto multiple lines by placing white -+ space at the beginning of each line except the first. -+ Comments may be included on lines beginning with "#". -+ Capabilities in <EM>terminfo</EM> are of three types: -+ -+ <STRONG>o</STRONG> Boolean capabilities which indicate that the terminal -+ has some particular feature, -+ -+ <STRONG>o</STRONG> numeric capabilities giving the size of the terminal -+ or the size of particular delays, and - -+ <STRONG>o</STRONG> string capabilities, which give a sequence which can -+ be used to perform particular terminal operations. - - <STRONG>Types</STRONG> <STRONG>of</STRONG> <STRONG>Capabilities</STRONG> -- All capabilities have names. For instance, the fact that -- ANSI-standard terminals have <EM>automatic</EM> <EM>margins</EM> (i.e., an -- automatic return and line-feed when the end of a line is -- reached) is indicated by the capability <STRONG>am</STRONG>. Hence the -+ All capabilities have names. For instance, the fact that -+ ANSI-standard terminals have <EM>automatic</EM> <EM>margins</EM> (i.e., an -+ automatic return and line-feed when the end of a line is -+ reached) is indicated by the capability <STRONG>am</STRONG>. Hence the - description of ansi includes <STRONG>am</STRONG>. Numeric capabilities are -- followed by the character `#' and then a positive value. -- Thus <STRONG>cols</STRONG>, which indicates the number of columns the ter- -- minal has, gives the value `80' for ansi. Values for -+ followed by the character "#" and then a positive value. -+ Thus <STRONG>cols</STRONG>, which indicates the number of columns the ter- -+ minal has, gives the value "80" for ansi. Values for - numeric capabilities may be specified in decimal, octal or -- hexadecimal, using the C programming language conventions -+ hexadecimal, using the C programming language conventions - (e.g., 255, 0377 and 0xff or 0xFF). - -- Finally, string valued capabilities, such as <STRONG>el</STRONG> (clear to -+ Finally, string valued capabilities, such as <STRONG>el</STRONG> (clear to - end of line sequence) are given by the two-character code, -- an `=', and then a string ending at the next following -- `,'. -+ an "=", and then a string ending at the next following -+ ",". - -- A number of escape sequences are provided in the string -+ A number of escape sequences are provided in the string - valued capabilities for easy encoding of characters there. -- Both <STRONG>\E</STRONG> and <STRONG>\e</STRONG> map to an ESCAPE character, <STRONG>^x</STRONG> maps to a -- control-x for any appropriate x, and the sequences <STRONG>\n</STRONG> <STRONG>\l</STRONG> -- <STRONG>\r</STRONG> <STRONG>\t</STRONG> <STRONG>\b</STRONG> <STRONG>\f</STRONG> <STRONG>\s</STRONG> give a newline, line-feed, return, tab, -- backspace, form-feed, and space. Other escapes include <STRONG>\^</STRONG> -- for <STRONG>^</STRONG>, <STRONG>\\</STRONG> for <STRONG>\</STRONG>, <STRONG>\</STRONG>, for comma, <STRONG>\:</STRONG> for <STRONG>:</STRONG>, and <STRONG>\0</STRONG> for null. -- (<STRONG>\0</STRONG> will produce \200, which does not terminate a string -- but behaves as a null character on most terminals, provid- -- ing CS7 is specified. See <STRONG><A HREF="stty.1.html">stty(1)</A></STRONG>.) Finally, characters -- may be given as three octal digits after a <STRONG>\</STRONG>. -- -- A delay in milliseconds may appear anywhere in a string -- capability, enclosed in $&lt;..&gt; brackets, as in <STRONG>el</STRONG>=\EK$&lt;5&gt;, -- and padding characters are supplied by <EM>tputs</EM> to provide -- this delay. The delay must be a number with at most one -+ Both <STRONG>\E</STRONG> and <STRONG>\e</STRONG> map to an ESCAPE character, <STRONG>^x</STRONG> maps to a -+ control-x for any appropriate x, and the sequences <STRONG>\n</STRONG> <STRONG>\l</STRONG> -+ <STRONG>\r</STRONG> <STRONG>\t</STRONG> <STRONG>\b</STRONG> <STRONG>\f</STRONG> <STRONG>\s</STRONG> give a newline, line-feed, return, tab, -+ backspace, form-feed, and space. Other escapes include -+ -+ <STRONG>o</STRONG> <STRONG>\^</STRONG> for <STRONG>^</STRONG>, -+ -+ <STRONG>o</STRONG> <STRONG>\\</STRONG> for <STRONG>\</STRONG>, -+ -+ <STRONG>o</STRONG> <STRONG>\</STRONG>, for comma, -+ -+ <STRONG>o</STRONG> <STRONG>\:</STRONG> for <STRONG>:</STRONG>, -+ -+ <STRONG>o</STRONG> and <STRONG>\0</STRONG> for null. -+ -+ <STRONG>\0</STRONG> will produce \200, which does not terminate a -+ string but behaves as a null character on most termi- -+ nals, providing CS7 is specified. See <STRONG>stty(1)</STRONG>. -+ -+ The reason for this quirk is to maintain binary com- -+ patibility of the compiled terminfo files with other -+ implementations, e.g., the SVr4 systems, which docu- -+ ment this. Compiled terminfo files use null-termi- -+ nated strings, with no lengths. Modifying this would -+ require a new binary format, which would not work with -+ other implementations. -+ -+ Finally, characters may be given as three octal digits -+ after a <STRONG>\</STRONG>. -+ -+ A delay in milliseconds may appear anywhere in a string -+ capability, enclosed in $&lt;..&gt; brackets, as in <STRONG>el</STRONG>=\EK$&lt;5&gt;, -+ and padding characters are supplied by <EM>tputs</EM> to provide -+ this delay. The delay must be a number with at most one - decimal place of precision; it may be followed by suffixes -- `*' or '/' or both. A `*' indicates that the padding -- required is proportional to the number of lines affected -- by the operation, and the amount given is the per- -- affected-unit padding required. (In the case of insert -+ "*" or "/" or both. A "*" indicates that the padding -+ required is proportional to the number of lines affected -+ by the operation, and the amount given is the per- -+ affected-unit padding required. (In the case of insert - character, the factor is still the number of <EM>lines</EM> -- affected.) Normally, padding is advisory if the device -- has the <STRONG>xon</STRONG> capability; it is used for cost computation -- but does not trigger delays. A `/' suffix indicates that -- the padding is mandatory and forces a delay of the given -- number of milliseconds even on devices for which <STRONG>xon</STRONG> is -+ affected.) Normally, padding is advisory if the device -+ has the <STRONG>xon</STRONG> capability; it is used for cost computation -+ but does not trigger delays. A "/" suffix indicates that -+ the padding is mandatory and forces a delay of the given -+ number of milliseconds even on devices for which <STRONG>xon</STRONG> is - present to indicate flow control. - -- Sometimes individual capabilities must be commented out. -- To do this, put a period before the capability name. For -+ Sometimes individual capabilities must be commented out. -+ To do this, put a period before the capability name. For - example, see the second <STRONG>ind</STRONG> in the example above. - -- - <STRONG>Fetching</STRONG> <STRONG>Compiled</STRONG> <STRONG>Descriptions</STRONG> -- If the environment variable TERMINFO is set, it is inter- -- preted as the pathname of a directory containing the com- -- piled description you are working on. Only that directory -- is searched. -- -- If TERMINFO is not set, the <STRONG>ncurses</STRONG> version of the ter- -- minfo reader code will instead look in the directory -- <STRONG>$HOME/.terminfo</STRONG> for a compiled description. If it fails -- to find one there, and the environment variable TER- -- MINFO_DIRS is set, it will interpret the contents of that -- variable as a list of colon- separated directories to be -- searched (an empty entry is interpreted as a command to -- search <EM>/usr/share/terminfo</EM>). If no description is found -- in any of the TERMINFO_DIRS directories, the fetch fails. -- -- If neither TERMINFO nor TERMINFO_DIRS is set, the last -- place tried will be the system terminfo directory, -- <EM>/usr/share/terminfo</EM>. -- -- (Neither the <STRONG>$HOME/.terminfo</STRONG> lookups nor TERMINFO_DIRS -- extensions are supported under stock System V ter- -- minfo/curses.) -+ The <STRONG>ncurses</STRONG> library searches for terminal descriptions in -+ several places. It uses only the first description found. -+ The library has a compiled-in list of places to search -+ which can be overridden by environment variables. Before -+ starting to search, <STRONG>ncurses</STRONG> eliminates duplicates in its -+ search list. -+ -+ <STRONG>o</STRONG> If the environment variable TERMINFO is set, it is -+ interpreted as the pathname of a directory containing -+ the compiled description you are working on. Only -+ that directory is searched. -+ -+ <STRONG>o</STRONG> If TERMINFO is not set, <STRONG>ncurses</STRONG> will instead look in -+ the directory <STRONG>$HOME/.terminfo</STRONG> for a compiled descrip- -+ tion. -+ -+ <STRONG>o</STRONG> Next, if the environment variable TERMINFO_DIRS is -+ set, <STRONG>ncurses</STRONG> will interpret the contents of that vari- -+ able as a list of colon-separated directories (or -+ database files) to be searched. -+ -+ An empty directory name (i.e., if the variable begins -+ or ends with a colon, or contains adacent colons) is -+ interpreted as the system location <EM>/usr/share/ter-</EM> -+ <EM>minfo</EM>. -+ -+ <STRONG>o</STRONG> Finally, <STRONG>ncurses</STRONG> searches these compiled-in locations: -+ -+ <STRONG>o</STRONG> a list of directories -+ (/usr/local/ncurses/share/terminfo:/usr/share/ter- -+ minfo), and - -+ <STRONG>o</STRONG> the system terminfo directory, <EM>/usr/share/terminfo</EM> -+ (the compiled-in default). - - <STRONG>Preparing</STRONG> <STRONG>Descriptions</STRONG> - We now outline how to prepare descriptions of terminals. -@@ -1147,12 +1235,11 @@ - To get the padding for insert line right (if the terminal - manufacturer did not document it) a severe test is to edit - a large file at 9600 baud, delete 16 or so lines from the -- middle of the screen, then hit the `u' key several times -+ middle of the screen, then hit the "u" key several times - quickly. If the terminal messes up, more padding is usu- - ally needed. A similar test can be used for insert char- - acter. - -- - <STRONG>Basic</STRONG> <STRONG>Capabilities</STRONG> - The number of columns on each line for the terminal is - given by the <STRONG>cols</STRONG> numeric capability. If the terminal is -@@ -1178,7 +1265,7 @@ - as <STRONG>cub1</STRONG>. Similarly, codes to move to the right, up, and - down should be given as <STRONG>cuf1</STRONG>, <STRONG>cuu1</STRONG>, and <STRONG>cud1</STRONG>. These local - cursor motions should not alter the text they pass over, -- for example, you would not normally use `<STRONG>cuf1</STRONG>= ' because -+ for example, you would not normally use "<STRONG>cuf1</STRONG>= " because - the space would erase the character moved over. - - A very important point here is that the local cursor -@@ -1190,137 +1277,135 @@ - left corner of the screen and send the <STRONG>ind</STRONG> (index) string. - - To scroll text down, a program goes to the top left corner -- of the screen and sends the <STRONG>ri</STRONG> (reverse index) string. -- The strings <STRONG>ind</STRONG> and <STRONG>ri</STRONG> are undefined when not on their -+ of the screen and sends the <STRONG>ri</STRONG> (reverse index) string. -+ The strings <STRONG>ind</STRONG> and <STRONG>ri</STRONG> are undefined when not on their - respective corners of the screen. - - Parameterized versions of the scrolling sequences are <STRONG>indn</STRONG> - and <STRONG>rin</STRONG> which have the same semantics as <STRONG>ind</STRONG> and <STRONG>ri</STRONG> except -- that they take one parameter, and scroll that many lines. -- They are also undefined except at the appropriate edge of -+ that they take one parameter, and scroll that many lines. -+ They are also undefined except at the appropriate edge of - the screen. - -- The <STRONG>am</STRONG> capability tells whether the cursor sticks at the -- right edge of the screen when text is output, but this -+ The <STRONG>am</STRONG> capability tells whether the cursor sticks at the -+ right edge of the screen when text is output, but this - does not necessarily apply to a <STRONG>cuf1</STRONG> from the last column. -- The only local motion which is defined from the left edge -- is if <STRONG>bw</STRONG> is given, then a <STRONG>cub1</STRONG> from the left edge will -- move to the right edge of the previous row. If <STRONG>bw</STRONG> is not -- given, the effect is undefined. This is useful for draw- -- ing a box around the edge of the screen, for example. If -- the terminal has switch selectable automatic margins, the -- <EM>terminfo</EM> file usually assumes that this is on; i.e., <STRONG>am</STRONG>. -- If the terminal has a command which moves to the first -- column of the next line, that command can be given as <STRONG>nel</STRONG> -- (newline). It does not matter if the command clears the -- remainder of the current line, so if the terminal has no -- <STRONG>cr</STRONG> and <STRONG>lf</STRONG> it may still be possible to craft a working <STRONG>nel</STRONG> -+ The only local motion which is defined from the left edge -+ is if <STRONG>bw</STRONG> is given, then a <STRONG>cub1</STRONG> from the left edge will -+ move to the right edge of the previous row. If <STRONG>bw</STRONG> is not -+ given, the effect is undefined. This is useful for draw- -+ ing a box around the edge of the screen, for example. If -+ the terminal has switch selectable automatic margins, the -+ <EM>terminfo</EM> file usually assumes that this is on; i.e., <STRONG>am</STRONG>. -+ If the terminal has a command which moves to the first -+ column of the next line, that command can be given as <STRONG>nel</STRONG> -+ (newline). It does not matter if the command clears the -+ remainder of the current line, so if the terminal has no -+ <STRONG>cr</STRONG> and <STRONG>lf</STRONG> it may still be possible to craft a working <STRONG>nel</STRONG> - out of one or both of them. - - These capabilities suffice to describe hard-copy and -- "glass-tty" terminals. Thus the model 33 teletype is -+ "glass-tty" terminals. Thus the model 33 teletype is - described as - - 33|tty33|tty|model 33 teletype, -- bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os, -+ bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os, - - while the Lear Siegler ADM-3 is described as - - adm3|3|lsi adm3, -- am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J, -- ind=^J, lines#24, -- -+ am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J, -+ ind=^J, lines#24, - - <STRONG>Parameterized</STRONG> <STRONG>Strings</STRONG> -- Cursor addressing and other strings requiring parameters -- in the terminal are described by a parameterized string -- capability, with <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG> like escapes <STRONG>%x</STRONG> in it. For -- example, to address the cursor, the <STRONG>cup</STRONG> capability is -+ Cursor addressing and other strings requiring parameters -+ in the terminal are described by a parameterized string -+ capability, with <EM>printf</EM>-like escapes such as <EM>%x</EM> in it. -+ For example, to address the cursor, the <STRONG>cup</STRONG> capability is - given, using two parameters: the row and column to address - to. (Rows and columns are numbered from zero and refer to - the physical screen visible to the user, not to any unseen -- memory.) If the terminal has memory relative cursor -+ memory.) If the terminal has memory relative cursor - addressing, that can be indicated by <STRONG>mrcup</STRONG>. - -- The parameter mechanism uses a stack and special <STRONG>%</STRONG> codes -- to manipulate it. Typically a sequence will push one of -- the parameters onto the stack and then print it in some -- format. Print (e.g., "%d") is a special case. Other -- operations, including "%t" pop their operand from the -+ The parameter mechanism uses a stack and special <STRONG>%</STRONG> codes -+ to manipulate it. Typically a sequence will push one of -+ the parameters onto the stack and then print it in some -+ format. Print (e.g., "%d") is a special case. Other -+ operations, including "%t" pop their operand from the - stack. It is noted that more complex operations are often - necessary, e.g., in the <STRONG>sgr</STRONG> string. - - The <STRONG>%</STRONG> encodings have the following meanings: - -+ <STRONG>%%</STRONG> outputs "%" - -- %% outputs `%' -- -- %<EM>[[</EM>:<EM>]flags][width[.precision]][</EM>doxXs<EM>]</EM> -- as in <STRONG>printf</STRONG>, flags are [-+#] and space. Use a `:' -- to allow the next character to be a `-' flag, avoid- -+ <STRONG>%</STRONG><EM>[[</EM>:<EM>]flags][width[.precision]][</EM><STRONG>doxXs</STRONG><EM>]</EM> -+ as in <STRONG>printf</STRONG>, flags are <EM>[-+#]</EM> and <EM>space</EM>. Use a ":" -+ to allow the next character to be a "-" flag, avoid- - ing interpreting "%-" as an operator. - - %c print pop() like %c in <STRONG>printf</STRONG> - -- %s print pop() like %s in <STRONG>printf</STRONG> -+ <STRONG>%s</STRONG> print pop() like %s in <STRONG>printf</STRONG> - -- %p[1-9] -+ <STRONG>%p</STRONG><EM>[1-9]</EM> - push <EM>i</EM>'th parameter - -- %P[a-z] -- set dynamic variable [a-z] to pop() -+ <STRONG>%P</STRONG><EM>[a-z]</EM> -+ set dynamic variable <EM>[a-z]</EM> to pop() - -- %g[a-z] -- get dynamic variable [a-z] and push it -+ <STRONG>%g</STRONG><EM>[a-z]/</EM> -+ get dynamic variable <EM>[a-z]</EM> and push it - -- %P[A-Z] -- set static variable [a-z] to pop() -+ <STRONG>%P</STRONG><EM>[A-Z]</EM> -+ set static variable <EM>[a-z]</EM> to <EM>pop()</EM> - -- %g[A-Z] -- get static variable [a-z] and push it -- -- The terms "static" and "dynamic" are misleading. -- Historically, these are simply two different sets of -- variables, whose values are not reset between calls -- to <STRONG>tparm</STRONG>. However, that fact is not documented in -- other implementations. Relying on it will adversely -+ <STRONG>%g</STRONG><EM>[A-Z]</EM> -+ get static variable <EM>[a-z]</EM> and push it -+ -+ The terms "static" and "dynamic" are misleading. -+ Historically, these are simply two different sets of -+ variables, whose values are not reset between calls -+ to <STRONG>tparm</STRONG>. However, that fact is not documented in -+ other implementations. Relying on it will adversely - impact portability to other implementations. - -- %'<EM>c</EM>' char constant <EM>c</EM> -+ <STRONG>%'</STRONG><EM>c</EM><STRONG>'</STRONG> char constant <EM>c</EM> - -- %{<EM>nn</EM>} -+ <STRONG>%{</STRONG><EM>nn</EM><STRONG>}</STRONG> - integer constant <EM>nn</EM> - -- %l push strlen(pop) -+ <STRONG>%l</STRONG> push strlen(pop) - -- %+ %- %* %/ %m -- arithmetic (%m is mod): push(pop() op pop()) -+ <STRONG>%+</STRONG>, <STRONG>%-</STRONG>, <STRONG>%*</STRONG>, <STRONG>%/</STRONG>, <STRONG>%m</STRONG> -+ arithmetic (%m is mod): <EM>push(pop()</EM> <EM>op</EM> <EM>pop())</EM> - -- %&amp; %| %^ -- bit operations (AND, OR and exclusive-OR): push(pop() -- op pop()) -+ <STRONG>%&amp;</STRONG>, <STRONG>%|</STRONG>, <STRONG>%^</STRONG> -+ bit operations (AND, OR and exclusive-OR): <EM>push(pop()</EM> -+ <EM>op</EM> <EM>pop())</EM> - -- %= %&gt; %&lt; -- logical operations: push(pop() op pop()) -+ <STRONG>%=</STRONG>, <STRONG>%&gt;</STRONG>, <STRONG>%&lt;</STRONG> -+ logical operations: <EM>push(pop()</EM> <EM>op</EM> <EM>pop())</EM> - -- %A, %O -+ <STRONG>%A</STRONG>, <STRONG>%O</STRONG> - logical AND and OR operations (for conditionals) - -- %! %~ -- unary operations (logical and bit complement): -+ <STRONG>%!</STRONG>, <STRONG>%~</STRONG> -+ unary operations (logical and bit complement): - push(op pop()) - -- %i add 1 to first two parameters (for ANSI terminals) -+ <STRONG>%i</STRONG> add 1 to first two parameters (for ANSI terminals) - -- %? <EM>expr</EM> %t <EM>thenpart</EM> %e <EM>elsepart</EM> %; -- This forms an if-then-else. The %e <EM>elsepart</EM> is -- optional. Usually the %? <EM>expr</EM> part pushes a value -- onto the stack, and %t pops it from the stack, test- -- ing if it is nonzero (true). If it is zero (false), -- control passes to the %e (else) part. -+ <STRONG>%?</STRONG> <EM>expr</EM> <STRONG>%t</STRONG> <EM>thenpart</EM> <STRONG>%e</STRONG> <EM>elsepart</EM> <STRONG>%;</STRONG> -+ This forms an if-then-else. The <STRONG>%e</STRONG> <EM>elsepart</EM> is -+ optional. Usually the <STRONG>%?</STRONG> <EM>expr</EM> part pushes a value -+ onto the stack, and <STRONG>%t</STRONG> pops it from the stack, test- -+ ing if it is nonzero (true). If it is zero (false), -+ control passes to the <STRONG>%e</STRONG> (else) part. - - It is possible to form else-if's a la Algol 68: -- %? c1 %t b1 %e c2 %t b2 %e c3 %t b3 %e c4 %t b4 %e %; -+ <STRONG>%?</STRONG> c1 <STRONG>%t</STRONG> b1 <STRONG>%e</STRONG> c2 <STRONG>%t</STRONG> b2 <STRONG>%e</STRONG> c3 <STRONG>%t</STRONG> b3 <STRONG>%e</STRONG> c4 <STRONG>%t</STRONG> b4 <STRONG>%e</STRONG> <STRONG>%;</STRONG> - - where ci are conditions, bi are bodies. - -@@ -1332,7 +1417,7 @@ - - Binary operations are in postfix form with the operands in - the usual order. That is, to get x-5 one would use -- "%gx%{5}%-". %P and %g variables are persistent across -+ "%gx%{5}%-". <STRONG>%P</STRONG> and <STRONG>%g</STRONG> variables are persistent across - escape-string evaluations. - - Consider the HP2645, which, to get to row 3 and column 12, -@@ -1342,241 +1427,238 @@ - its. Thus its <STRONG>cup</STRONG> capability is "cup=6\E&amp;%p2%2dc%p1%2dY". - - The Microterm ACT-IV needs the current row and column sent -- preceded by a <STRONG>^T</STRONG>, with the row and column simply encoded -- in binary, "cup=^T%p1%c%p2%c". Terminals which use "%c" -- need to be able to backspace the cursor (<STRONG>cub1</STRONG>), and to -+ preceded by a <STRONG>^T</STRONG>, with the row and column simply encoded -+ in binary, "cup=^T%p1%c%p2%c". Terminals which use "%c" -+ need to be able to backspace the cursor (<STRONG>cub1</STRONG>), and to - move the cursor up one line on the screen (<STRONG>cuu1</STRONG>). This is -- necessary because it is not always safe to transmit <STRONG>\n</STRONG> <STRONG>^D</STRONG> -- and <STRONG>\r</STRONG>, as the system may change or discard them. (The -- library routines dealing with terminfo set tty modes so -+ necessary because it is not always safe to transmit <STRONG>\n</STRONG> <STRONG>^D</STRONG> -+ and <STRONG>\r</STRONG>, as the system may change or discard them. (The -+ library routines dealing with terminfo set tty modes so - that tabs are never expanded, so \t is safe to send. This - turns out to be essential for the Ann Arbor 4080.) - - A final example is the LSI ADM-3a, which uses row and col- - umn offset by a blank character, thus "cup=\E=%p1%' -- '%+%c%p2%' '%+%c". After sending `\E=', this pushes the -- first parameter, pushes the ASCII value for a space (32), -- adds them (pushing the sum on the stack in place of the -- two previous values) and outputs that value as a charac- -- ter. Then the same is done for the second parameter. -+ '%+%c%p2%' '%+%c". After sending "\E=", this pushes the -+ first parameter, pushes the ASCII value for a space (32), -+ adds them (pushing the sum on the stack in place of the -+ two previous values) and outputs that value as a charac- -+ ter. Then the same is done for the second parameter. - More complex arithmetic is possible using the stack. - -- - <STRONG>Cursor</STRONG> <STRONG>Motions</STRONG> - If the terminal has a fast way to home the cursor (to very -- upper left corner of screen) then this can be given as -- <STRONG>home</STRONG>; similarly a fast way of getting to the lower left- -- hand corner can be given as <STRONG>ll</STRONG>; this may involve going up -- with <STRONG>cuu1</STRONG> from the home position, but a program should -- never do this itself (unless <STRONG>ll</STRONG> does) because it can make -- no assumption about the effect of moving up from the home -- position. Note that the home position is the same as -+ upper left corner of screen) then this can be given as -+ <STRONG>home</STRONG>; similarly a fast way of getting to the lower left- -+ hand corner can be given as <STRONG>ll</STRONG>; this may involve going up -+ with <STRONG>cuu1</STRONG> from the home position, but a program should -+ never do this itself (unless <STRONG>ll</STRONG> does) because it can make -+ no assumption about the effect of moving up from the home -+ position. Note that the home position is the same as - addressing to (0,0): to the top left corner of the screen, -- not of memory. (Thus, the \EH sequence on HP terminals -+ not of memory. (Thus, the \EH sequence on HP terminals - cannot be used for <STRONG>home</STRONG>.) - - If the terminal has row or column absolute cursor address- -- ing, these can be given as single parameter capabilities -+ ing, these can be given as single parameter capabilities - <STRONG>hpa</STRONG> (horizontal position absolute) and <STRONG>vpa</STRONG> (vertical posi- - tion absolute). Sometimes these are shorter than the more -- general two parameter sequence (as with the hp2645) and -- can be used in preference to <STRONG>cup</STRONG>. If there are -- parameterized local motions (e.g., move <EM>n</EM> spaces to the -- right) these can be given as <STRONG>cud</STRONG>, <STRONG>cub</STRONG>, <STRONG>cuf</STRONG>, and <STRONG>cuu</STRONG> with a -- single parameter indicating how many spaces to move. -- These are primarily useful if the terminal does not have -- <STRONG>cup</STRONG>, such as the TEKTRONIX 4025. -+ general two parameter sequence (as with the hp2645) and -+ can be used in preference to <STRONG>cup</STRONG>. If there are parameter- -+ ized local motions (e.g., move <EM>n</EM> spaces to the right) -+ these can be given as <STRONG>cud</STRONG>, <STRONG>cub</STRONG>, <STRONG>cuf</STRONG>, and <STRONG>cuu</STRONG> with a single -+ parameter indicating how many spaces to move. These are -+ primarily useful if the terminal does not have <STRONG>cup</STRONG>, such -+ as the TEKTRONIX 4025. - - If the terminal needs to be in a special mode when running - a program that uses these capabilities, the codes to enter -- and exit this mode can be given as <STRONG>smcup</STRONG> and <STRONG>rmcup</STRONG>. This -- arises, for example, from terminals like the Concept with -- more than one page of memory. If the terminal has only -- memory relative cursor addressing and not screen relative -+ and exit this mode can be given as <STRONG>smcup</STRONG> and <STRONG>rmcup</STRONG>. This -+ arises, for example, from terminals like the Concept with -+ more than one page of memory. If the terminal has only -+ memory relative cursor addressing and not screen relative - cursor addressing, a one screen-sized window must be fixed -- into the terminal for cursor addressing to work properly. -+ into the terminal for cursor addressing to work properly. - This is also used for the TEKTRONIX 4025, where <STRONG>smcup</STRONG> sets -- the command character to be the one used by terminfo. If -- the <STRONG>smcup</STRONG> sequence will not restore the screen after an -+ the command character to be the one used by terminfo. If -+ the <STRONG>smcup</STRONG> sequence will not restore the screen after an - <STRONG>rmcup</STRONG> sequence is output (to the state prior to outputting - <STRONG>rmcup</STRONG>), specify <STRONG>nrrmc</STRONG>. - -- - <STRONG>Area</STRONG> <STRONG>Clears</STRONG> - If the terminal can clear from the current position to the -- end of the line, leaving the cursor where it is, this -+ end of the line, leaving the cursor where it is, this - should be given as <STRONG>el</STRONG>. If the terminal can clear from the -- beginning of the line to the current position inclusive, -- leaving the cursor where it is, this should be given as -- <STRONG>el1</STRONG>. If the terminal can clear from the current position -- to the end of the display, then this should be given as -- <STRONG>ed</STRONG>. <STRONG>Ed</STRONG> is only defined from the first column of a line. -- (Thus, it can be simulated by a request to delete a large -+ beginning of the line to the current position inclusive, -+ leaving the cursor where it is, this should be given as -+ <STRONG>el1</STRONG>. If the terminal can clear from the current position -+ to the end of the display, then this should be given as -+ <STRONG>ed</STRONG>. <STRONG>Ed</STRONG> is only defined from the first column of a line. -+ (Thus, it can be simulated by a request to delete a large - number of lines, if a true <STRONG>ed</STRONG> is not available.) - -- - <STRONG>Insert/delete</STRONG> <STRONG>line</STRONG> <STRONG>and</STRONG> <STRONG>vertical</STRONG> <STRONG>motions</STRONG> -- If the terminal can open a new blank line before the line -- where the cursor is, this should be given as <STRONG>il1</STRONG>; this is -- done only from the first position of a line. The cursor -+ If the terminal can open a new blank line before the line -+ where the cursor is, this should be given as <STRONG>il1</STRONG>; this is -+ done only from the first position of a line. The cursor - must then appear on the newly blank line. If the terminal -- can delete the line which the cursor is on, then this -- should be given as <STRONG>dl1</STRONG>; this is done only from the first -- position on the line to be deleted. Versions of <STRONG>il1</STRONG> and -- <STRONG>dl1</STRONG> which take a single parameter and insert or delete -+ can delete the line which the cursor is on, then this -+ should be given as <STRONG>dl1</STRONG>; this is done only from the first -+ position on the line to be deleted. Versions of <STRONG>il1</STRONG> and -+ <STRONG>dl1</STRONG> which take a single parameter and insert or delete - that many lines can be given as <STRONG>il</STRONG> and <STRONG>dl</STRONG>. - -- If the terminal has a settable scrolling region (like the -- vt100) the command to set this can be described with the -- <STRONG>csr</STRONG> capability, which takes two parameters: the top and -+ If the terminal has a settable scrolling region (like the -+ vt100) the command to set this can be described with the -+ <STRONG>csr</STRONG> capability, which takes two parameters: the top and - bottom lines of the scrolling region. The cursor position - is, alas, undefined after using this command. - -- It is possible to get the effect of insert or delete line -+ It is possible to get the effect of insert or delete line - using <STRONG>csr</STRONG> on a properly chosen region; the <STRONG>sc</STRONG> and <STRONG>rc</STRONG> (save -- and restore cursor) commands may be useful for ensuring -- that your synthesized insert/delete string does not move -- the cursor. (Note that the <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> library does this -- synthesis automatically, so you need not compose -+ and restore cursor) commands may be useful for ensuring -+ that your synthesized insert/delete string does not move -+ the cursor. (Note that the <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> library does this -+ synthesis automatically, so you need not compose - insert/delete strings for an entry with <STRONG>csr</STRONG>). - - Yet another way to construct insert and delete might be to -- use a combination of index with the memory-lock feature -- found on some terminals (like the HP-700/90 series, which -+ use a combination of index with the memory-lock feature -+ found on some terminals (like the HP-700/90 series, which - however also has insert/delete). - -- Inserting lines at the top or bottom of the screen can -- also be done using <STRONG>ri</STRONG> or <STRONG>ind</STRONG> on many terminals without a -- true insert/delete line, and is often faster even on ter- -+ Inserting lines at the top or bottom of the screen can -+ also be done using <STRONG>ri</STRONG> or <STRONG>ind</STRONG> on many terminals without a -+ true insert/delete line, and is often faster even on ter- - minals with those features. - -- The boolean <STRONG>non_dest_scroll_region</STRONG> should be set if each -- scrolling window is effectively a view port on a screen- -- sized canvas. To test for this capability, create a -- scrolling region in the middle of the screen, write some- -- thing to the bottom line, move the cursor to the top of -+ The boolean <STRONG>non_dest_scroll_region</STRONG> should be set if each -+ scrolling window is effectively a view port on a screen- -+ sized canvas. To test for this capability, create a -+ scrolling region in the middle of the screen, write some- -+ thing to the bottom line, move the cursor to the top of - the region, and do <STRONG>ri</STRONG> followed by <STRONG>dl1</STRONG> or <STRONG>ind</STRONG>. If the data -- scrolled off the bottom of the region by the <STRONG>ri</STRONG> re- -- appears, then scrolling is non-destructive. System V and -- XSI Curses expect that <STRONG>ind</STRONG>, <STRONG>ri</STRONG>, <STRONG>indn</STRONG>, and <STRONG>rin</STRONG> will simu- -- late destructive scrolling; their documentation cautions -- you not to define <STRONG>csr</STRONG> unless this is true. This <STRONG>curses</STRONG> -+ scrolled off the bottom of the region by the <STRONG>ri</STRONG> re- -+ appears, then scrolling is non-destructive. System V and -+ XSI Curses expect that <STRONG>ind</STRONG>, <STRONG>ri</STRONG>, <STRONG>indn</STRONG>, and <STRONG>rin</STRONG> will simu- -+ late destructive scrolling; their documentation cautions -+ you not to define <STRONG>csr</STRONG> unless this is true. This <STRONG>curses</STRONG> - implementation is more liberal and will do explicit erases - after scrolling if <STRONG>ndstr</STRONG> is defined. - - If the terminal has the ability to define a window as part -- of memory, which all commands affect, it should be given -+ of memory, which all commands affect, it should be given - as the parameterized string <STRONG>wind</STRONG>. The four parameters are -- the starting and ending lines in memory and the starting -+ the starting and ending lines in memory and the starting - and ending columns in memory, in that order. - -- If the terminal can retain display memory above, then the -- <STRONG>da</STRONG> capability should be given; if display memory can be -- retained below, then <STRONG>db</STRONG> should be given. These indicate -- that deleting a line or scrolling may bring non-blank -- lines up from below or that scrolling back with <STRONG>ri</STRONG> may -+ If the terminal can retain display memory above, then the -+ <STRONG>da</STRONG> capability should be given; if display memory can be -+ retained below, then <STRONG>db</STRONG> should be given. These indicate -+ that deleting a line or scrolling may bring non-blank -+ lines up from below or that scrolling back with <STRONG>ri</STRONG> may - bring down non-blank lines. - -- - <STRONG>Insert/Delete</STRONG> <STRONG>Character</STRONG> -- There are two basic kinds of intelligent terminals with -- respect to insert/delete character which can be described -- using <EM>terminfo.</EM> The most common insert/delete character -- operations affect only the characters on the current line -- and shift characters off the end of the line rigidly. -- Other terminals, such as the Concept 100 and the Perkin -- Elmer Owl, make a distinction between typed and untyped -- blanks on the screen, shifting upon an insert or delete -- only to an untyped blank on the screen which is either -- eliminated, or expanded to two untyped blanks. You can -- determine the kind of terminal you have by clearing the -- screen and then typing text separated by cursor motions. -- Type "abc def" using local cursor motions (not spaces) -- between the "abc" and the "def". Then position the cursor -- before the "abc" and put the terminal in insert mode. If -- typing characters causes the rest of the line to shift -- rigidly and characters to fall off the end, then your ter- -- minal does not distinguish between blanks and untyped -- positions. If the "abc" shifts over to the "def" which -- then move together around the end of the current line and -- onto the next as you insert, you have the second type of -- terminal, and should give the capability <STRONG>in</STRONG>, which stands -- for "insert null". While these are two logically separate -- attributes (one line versus multi-line insert mode, and -- special treatment of untyped spaces) we have seen no ter- -- minals whose insert mode cannot be described with the sin- -- gle attribute. -+ There are two basic kinds of intelligent terminals with -+ respect to insert/delete character which can be described -+ using <EM>terminfo.</EM> The most common insert/delete character -+ operations affect only the characters on the current line -+ and shift characters off the end of the line rigidly. -+ Other terminals, such as the Concept 100 and the Perkin -+ Elmer Owl, make a distinction between typed and untyped -+ blanks on the screen, shifting upon an insert or delete -+ only to an untyped blank on the screen which is either -+ eliminated, or expanded to two untyped blanks. -+ -+ You can determine the kind of terminal you have by clear- -+ ing the screen and then typing text separated by cursor -+ motions. Type "abc def" using local cursor motions -+ (not spaces) between the "abc" and the "def". Then posi- -+ tion the cursor before the "abc" and put the terminal in -+ insert mode. If typing characters causes the rest of the -+ line to shift rigidly and characters to fall off the end, -+ then your terminal does not distinguish between blanks and -+ untyped positions. If the "abc" shifts over to the "def" -+ which then move together around the end of the current -+ line and onto the next as you insert, you have the second -+ type of terminal, and should give the capability <STRONG>in</STRONG>, which -+ stands for "insert null". -+ -+ While these are two logically separate attributes (one -+ line versus multi-line insert mode, and special treatment -+ of untyped spaces) we have seen no terminals whose insert -+ mode cannot be described with the single attribute. - -- Terminfo can describe both terminals which have an insert -+ Terminfo can describe both terminals which have an insert - mode, and terminals which send a simple sequence to open a -- blank position on the current line. Give as <STRONG>smir</STRONG> the -- sequence to get into insert mode. Give as <STRONG>rmir</STRONG> the -- sequence to leave insert mode. Now give as <STRONG>ich1</STRONG> any -- sequence needed to be sent just before sending the -- character to be inserted. Most terminals with a true -- insert mode will not give <STRONG>ich1</STRONG>; terminals which send a -- sequence to open a screen position should give it here. -- -- If your terminal has both, insert mode is usually prefer- -- able to <STRONG>ich1</STRONG>. Technically, you should not give both -- unless the terminal actually requires both to be used in -- combination. Accordingly, some non-curses applications -- get confused if both are present; the symptom is doubled -+ blank position on the current line. Give as <STRONG>smir</STRONG> the -+ sequence to get into insert mode. Give as <STRONG>rmir</STRONG> the -+ sequence to leave insert mode. Now give as <STRONG>ich1</STRONG> any -+ sequence needed to be sent just before sending the charac- -+ ter to be inserted. Most terminals with a true insert -+ mode will not give <STRONG>ich1</STRONG>; terminals which send a sequence -+ to open a screen position should give it here. -+ -+ If your terminal has both, insert mode is usually prefer- -+ able to <STRONG>ich1</STRONG>. Technically, you should not give both -+ unless the terminal actually requires both to be used in -+ combination. Accordingly, some non-curses applications -+ get confused if both are present; the symptom is doubled - characters in an update using insert. This requirement is - now rare; most <STRONG>ich</STRONG> sequences do not require previous smir, - and most smir insert modes do not require <STRONG>ich1</STRONG> before each -- character. Therefore, the new <STRONG>curses</STRONG> actually assumes -- this is the case and uses either <STRONG>rmir</STRONG>/<STRONG>smir</STRONG> or <STRONG>ich</STRONG>/<STRONG>ich1</STRONG> as -+ character. Therefore, the new <STRONG>curses</STRONG> actually assumes -+ this is the case and uses either <STRONG>rmir</STRONG>/<STRONG>smir</STRONG> or <STRONG>ich</STRONG>/<STRONG>ich1</STRONG> as - appropriate (but not both). If you have to write an entry -- to be used under new curses for a terminal old enough to -+ to be used under new curses for a terminal old enough to - need both, include the <STRONG>rmir</STRONG>/<STRONG>smir</STRONG> sequences in <STRONG>ich1</STRONG>. - - If post insert padding is needed, give this as a number of -- milliseconds in <STRONG>ip</STRONG> (a string option). Any other sequence -- which may need to be sent after an insert of a single -+ milliseconds in <STRONG>ip</STRONG> (a string option). Any other sequence -+ which may need to be sent after an insert of a single - character may also be given in <STRONG>ip</STRONG>. If your terminal needs -- both to be placed into an `insert mode' and a special code -- to precede each inserted character, then both <STRONG>smir</STRONG>/<STRONG>rmir</STRONG> -- and <STRONG>ich1</STRONG> can be given, and both will be used. The <STRONG>ich</STRONG> -+ both to be placed into an "insert mode" and a special code -+ to precede each inserted character, then both <STRONG>smir</STRONG>/<STRONG>rmir</STRONG> -+ and <STRONG>ich1</STRONG> can be given, and both will be used. The <STRONG>ich</STRONG> - capability, with one parameter, <EM>n</EM>, will repeat the effects - of <STRONG>ich1</STRONG> <EM>n</EM> times. - - If padding is necessary between characters typed while not -- in insert mode, give this as a number of milliseconds -- padding in <STRONG>rmp</STRONG>. -+ in insert mode, give this as a number of milliseconds pad- -+ ding in <STRONG>rmp</STRONG>. - -- It is occasionally necessary to move around while in -- insert mode to delete characters on the same line (e.g., -- if there is a tab after the insertion position). If your -- terminal allows motion while in insert mode you can give -- the capability <STRONG>mir</STRONG> to speed up inserting in this case. -- Omitting <STRONG>mir</STRONG> will affect only speed. Some terminals -+ It is occasionally necessary to move around while in -+ insert mode to delete characters on the same line (e.g., -+ if there is a tab after the insertion position). If your -+ terminal allows motion while in insert mode you can give -+ the capability <STRONG>mir</STRONG> to speed up inserting in this case. -+ Omitting <STRONG>mir</STRONG> will affect only speed. Some terminals - (notably Datamedia's) must not have <STRONG>mir</STRONG> because of the way - their insert mode works. - -- Finally, you can specify <STRONG>dch1</STRONG> to delete a single charac- -- ter, <STRONG>dch</STRONG> with one parameter, <EM>n</EM>, to delete <EM>n</EM> <EM>characters,</EM> -- and delete mode by giving <STRONG>smdc</STRONG> and <STRONG>rmdc</STRONG> to enter and exit -- delete mode (any mode the terminal needs to be placed in -+ Finally, you can specify <STRONG>dch1</STRONG> to delete a single charac- -+ ter, <STRONG>dch</STRONG> with one parameter, <EM>n</EM>, to delete <EM>n</EM> <EM>characters,</EM> -+ and delete mode by giving <STRONG>smdc</STRONG> and <STRONG>rmdc</STRONG> to enter and exit -+ delete mode (any mode the terminal needs to be placed in - for <STRONG>dch1</STRONG> to work). - -- A command to erase <EM>n</EM> characters (equivalent to outputting -- <EM>n</EM> blanks without moving the cursor) can be given as <STRONG>ech</STRONG> -+ A command to erase <EM>n</EM> characters (equivalent to outputting -+ <EM>n</EM> blanks without moving the cursor) can be given as <STRONG>ech</STRONG> - with one parameter. - -- - <STRONG>Highlighting,</STRONG> <STRONG>Underlining,</STRONG> <STRONG>and</STRONG> <STRONG>Visible</STRONG> <STRONG>Bells</STRONG> - If your terminal has one or more kinds of display -- attributes, these can be represented in a number of dif- -+ attributes, these can be represented in a number of dif- - ferent ways. You should choose one display form as <EM>stand-</EM> - <EM>out</EM> <EM>mode</EM>, representing a good, high contrast, easy-on-the- -- eyes, format for highlighting error messages and other -- attention getters. (If you have a choice, reverse video -- plus half-bright is good, or reverse video alone.) The -- sequences to enter and exit standout mode are given as -- <STRONG>smso</STRONG> and <STRONG>rmso</STRONG>, respectively. If the code to change into -- or out of standout mode leaves one or even two blank -- spaces on the screen, as the TVI 912 and Teleray 1061 do, -+ eyes, format for highlighting error messages and other -+ attention getters. (If you have a choice, reverse video -+ plus half-bright is good, or reverse video alone.) The -+ sequences to enter and exit standout mode are given as -+ <STRONG>smso</STRONG> and <STRONG>rmso</STRONG>, respectively. If the code to change into -+ or out of standout mode leaves one or even two blank spa- -+ ces on the screen, as the TVI 912 and Teleray 1061 do, - then <STRONG>xmc</STRONG> should be given to tell how many spaces are left. - - Codes to begin underlining and end underlining can be -@@ -1605,19 +1687,18 @@ - - For example, the DEC vt220 supports most of the modes: - -+ <STRONG>tparm</STRONG> <STRONG>parameter</STRONG> <STRONG>attribute</STRONG> <STRONG>escape</STRONG> <STRONG>sequence</STRONG> - -- <STRONG>tparm</STRONG> <STRONG>parameter</STRONG> <STRONG>attribute</STRONG> <STRONG>escape</STRONG> <STRONG>sequence</STRONG> -- -- none none \E[0m -- p1 standout \E[0;1;7m -- p2 underline \E[0;4m -- p3 reverse \E[0;7m -- p4 blink \E[0;5m -- p5 dim not available -- p6 bold \E[0;1m -- p7 invis \E[0;8m -- p8 protect not used -- p9 altcharset ^O (off) ^N (on) -+ none none \E[0m -+ p1 standout \E[0;1;7m -+ p2 underline \E[0;4m -+ p3 reverse \E[0;7m -+ p4 blink \E[0;5m -+ p5 dim not available -+ p6 bold \E[0;1m -+ p7 invis \E[0;8m -+ p8 protect not used -+ p9 altcharset ^O (off) ^N (on) - - We begin each escape sequence by turning off any existing - modes, since there is no quick way to determine whether -@@ -1637,23 +1718,21 @@ - Writing out the above sequences, along with their depen- - dencies yields - -+ <STRONG>sequence</STRONG> <STRONG>when</STRONG> <STRONG>to</STRONG> <STRONG>output</STRONG> <STRONG>terminfo</STRONG> <STRONG>translation</STRONG> - -- <STRONG>sequence</STRONG> <STRONG>when</STRONG> <STRONG>to</STRONG> <STRONG>output</STRONG> <STRONG>terminfo</STRONG> <STRONG>translation</STRONG> -- -- \E[0 always \E[0 -- ;1 if p1 or p6 %?%p1%p6%|%t;1%; -- ;4 if p2 %?%p2%|%t;4%; -- ;5 if p4 %?%p4%|%t;5%; -- -- ;7 if p1 or p3 %?%p1%p3%|%t;7%; -- ;8 if p7 %?%p7%|%t;8%; -- m always m -- ^N or ^O if p9 ^N, else ^O %?%p9%t^N%e^O%; -+ \E[0 always \E[0 -+ ;1 if p1 or p6 %?%p1%p6%|%t;1%; -+ ;4 if p2 %?%p2%|%t;4%; -+ ;5 if p4 %?%p4%|%t;5%; -+ ;7 if p1 or p3 %?%p1%p3%|%t;7%; -+ ;8 if p7 %?%p7%|%t;8%; -+ m always m -+ ^N or ^O if p9 ^N, else ^O %?%p9%t^N%e^O%; - - Putting this all together into the sgr sequence gives: - -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%; -- %?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p4%t;5%; -+ %?%p1%p3%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, - - Remember that if you specify sgr, you must also specify - sgr0. Also, some implementations rely on sgr being given -@@ -1664,8 +1743,8 @@ - assumes that sgr0 does not exit alternate character set - mode. - -- Terminals with the ``magic cookie'' glitch (<STRONG>xmc</STRONG>) deposit -- special ``cookies'' when they receive mode-setting -+ Terminals with the "magic cookie" glitch (<STRONG>xmc</STRONG>) deposit -+ special "cookies" when they receive mode-setting - sequences, which affect the display algorithm rather than - having extra bits for each character. Some terminals, - such as the HP 2621, automatically leave standout mode -@@ -1695,7 +1774,6 @@ - erasable with a blank, then this should be indicated by - giving <STRONG>eo</STRONG>. - -- - <STRONG>Keypad</STRONG> <STRONG>and</STRONG> <STRONG>Function</STRONG> <STRONG>Keys</STRONG> - If the terminal has a keypad that transmits codes when the - keys are pressed, this information can be given. Note -@@ -1704,27 +1782,57 @@ - unshifted HP 2621 keys). If the keypad can be set to - transmit or not transmit, give these codes as <STRONG>smkx</STRONG> and - <STRONG>rmkx</STRONG>. Otherwise the keypad is assumed to always transmit. -- The codes sent by the left arrow, right arrow, up arrow, -- down arrow, and home keys can be given as <STRONG>kcub1,</STRONG> <STRONG>kcuf1,</STRONG> -- <STRONG>kcuu1,</STRONG> <STRONG>kcud1,</STRONG> and <STRONG>khome</STRONG> respectively. If there are func- -- tion keys such as f0, f1, ..., f10, the codes they send -- can be given as <STRONG>kf0,</STRONG> <STRONG>kf1,</STRONG> <STRONG>...,</STRONG> <STRONG>kf10</STRONG>. If these keys have -- labels other than the default f0 through f10, the labels -- can be given as <STRONG>lf0,</STRONG> <STRONG>lf1,</STRONG> <STRONG>...,</STRONG> <STRONG>lf10</STRONG>. The codes -- transmitted by certain other special keys can be given: -- <STRONG>kll</STRONG> (home down), <STRONG>kbs</STRONG> (backspace), <STRONG>ktbc</STRONG> (clear all tabs), -- <STRONG>kctab</STRONG> (clear the tab stop in this column), <STRONG>kclr</STRONG> (clear -- screen or erase key), <STRONG>kdch1</STRONG> (delete character), <STRONG>kdl1</STRONG> -- (delete line), <STRONG>krmir</STRONG> (exit insert mode), <STRONG>kel</STRONG> (clear to end -- of line), <STRONG>ked</STRONG> (clear to end of screen), <STRONG>kich1</STRONG> (insert -- character or enter insert mode), <STRONG>kil1</STRONG> (insert line), <STRONG>knp</STRONG> -- (next page), <STRONG>kpp</STRONG> (previous page), <STRONG>kind</STRONG> (scroll for- -- ward/down), <STRONG>kri</STRONG> (scroll backward/up), <STRONG>khts</STRONG> (set a tab stop -- in this column). In addition, if the keypad has a 3 by 3 -- array of keys including the four arrow keys, the other -- five keys can be given as <STRONG>ka1</STRONG>, <STRONG>ka3</STRONG>, <STRONG>kb2</STRONG>, <STRONG>kc1</STRONG>, and <STRONG>kc3</STRONG>. -- These keys are useful when the effects of a 3 by 3 direc- -- tional pad are needed. -+ -+ The codes sent by the left arrow, right arrow, up arrow, -+ down arrow, and home keys can be given as <STRONG>kcub1,</STRONG> <STRONG>kcuf1,</STRONG> -+ <STRONG>kcuu1,</STRONG> <STRONG>kcud1,</STRONG> and <STRONG>khome</STRONG> respectively. If there are func- -+ tion keys such as f0, f1, ..., f10, the codes they send -+ can be given as <STRONG>kf0,</STRONG> <STRONG>kf1,</STRONG> <STRONG>...,</STRONG> <STRONG>kf10</STRONG>. If these keys have -+ labels other than the default f0 through f10, the labels -+ can be given as <STRONG>lf0,</STRONG> <STRONG>lf1,</STRONG> <STRONG>...,</STRONG> <STRONG>lf10</STRONG>. -+ -+ The codes transmitted by certain other special keys can be -+ given: -+ -+ <STRONG>o</STRONG> <STRONG>kll</STRONG> (home down), -+ -+ <STRONG>o</STRONG> <STRONG>kbs</STRONG> (backspace), -+ -+ <STRONG>o</STRONG> <STRONG>ktbc</STRONG> (clear all tabs), -+ -+ <STRONG>o</STRONG> <STRONG>kctab</STRONG> (clear the tab stop in this column), -+ -+ <STRONG>o</STRONG> <STRONG>kclr</STRONG> (clear screen or erase key), -+ -+ <STRONG>o</STRONG> <STRONG>kdch1</STRONG> (delete character), -+ -+ <STRONG>o</STRONG> <STRONG>kdl1</STRONG> (delete line), -+ -+ <STRONG>o</STRONG> <STRONG>krmir</STRONG> (exit insert mode), -+ -+ <STRONG>o</STRONG> <STRONG>kel</STRONG> (clear to end of line), -+ -+ <STRONG>o</STRONG> <STRONG>ked</STRONG> (clear to end of screen), -+ -+ <STRONG>o</STRONG> <STRONG>kich1</STRONG> (insert character or enter insert mode), -+ -+ <STRONG>o</STRONG> <STRONG>kil1</STRONG> (insert line), -+ -+ <STRONG>o</STRONG> <STRONG>knp</STRONG> (next page), -+ -+ <STRONG>o</STRONG> <STRONG>kpp</STRONG> (previous page), -+ -+ <STRONG>o</STRONG> <STRONG>kind</STRONG> (scroll forward/down), -+ -+ <STRONG>o</STRONG> <STRONG>kri</STRONG> (scroll backward/up), -+ -+ <STRONG>o</STRONG> <STRONG>khts</STRONG> (set a tab stop in this column). -+ -+ In addition, if the keypad has a 3 by 3 array of keys -+ including the four arrow keys, the other five keys can be -+ given as <STRONG>ka1</STRONG>, <STRONG>ka3</STRONG>, <STRONG>kb2</STRONG>, <STRONG>kc1</STRONG>, and <STRONG>kc3</STRONG>. These keys are use- -+ ful when the effects of a 3 by 3 directional pad are -+ needed. - - Strings to program function keys can be given as <STRONG>pfkey</STRONG>, - <STRONG>pfloc</STRONG>, and <STRONG>pfx</STRONG>. A string to program screen labels should -@@ -1746,12 +1854,11 @@ - or more pln sequences to make sure that the change becomes - visible. - -- - <STRONG>Tabs</STRONG> <STRONG>and</STRONG> <STRONG>Initialization</STRONG> - If the terminal has hardware tabs, the command to advance - to the next tab stop can be given as <STRONG>ht</STRONG> (usually control -- I). A ``back-tab'' command which moves leftward to the -- preceding tab stop can be given as <STRONG>cbt</STRONG>. By convention, if -+ I). A "back-tab" command which moves leftward to the pre- -+ ceding tab stop can be given as <STRONG>cbt</STRONG>. By convention, if - the teletype modes indicate that tabs are being expanded - by the computer rather than being sent to the terminal, - programs should not use <STRONG>ht</STRONG> or <STRONG>cbt</STRONG> even if they are -@@ -1851,9 +1958,8 @@ - ter as a pad, then this can be given as <STRONG>pad</STRONG>. Only the - first character of the <STRONG>pad</STRONG> string is used. - -- - <STRONG>Status</STRONG> <STRONG>Lines</STRONG> -- Some terminals have an extra `status line' which is not -+ Some terminals have an extra "status line" which is not - normally used by software (and thus not counted in the - terminal's <STRONG>lines</STRONG> capability). - -@@ -1883,110 +1989,105 @@ - The boolean capability <STRONG>eslok</STRONG> specifies that escape - sequences, tabs, etc., work ordinarily in the status line. - -- The <STRONG>ncurses</STRONG> implementation does not yet use any of these -- capabilities. They are documented here in case they ever -+ The <STRONG>ncurses</STRONG> implementation does not yet use any of these -+ capabilities. They are documented here in case they ever - become important. - -- - <STRONG>Line</STRONG> <STRONG>Graphics</STRONG> -- Many terminals have alternate character sets useful for -- forms-drawing. Terminfo and <STRONG>curses</STRONG> build in support for -- the drawing characters supported by the VT100, with some -- characters from the AT&amp;T 4410v1 added. This alternate -+ Many terminals have alternate character sets useful for -+ forms-drawing. Terminfo and <STRONG>curses</STRONG> build in support for -+ the drawing characters supported by the VT100, with some -+ characters from the AT&amp;T 4410v1 added. This alternate - character set may be specified by the <STRONG>acsc</STRONG> capability. - -- -- <STRONG>Glyph</STRONG> <STRONG>ACS</STRONG> <STRONG>Ascii</STRONG> <STRONG>VT100</STRONG> -- <STRONG>Name</STRONG> <STRONG>Name</STRONG> <STRONG>Default</STRONG> <STRONG>Name</STRONG> -- UK pound sign ACS_STERLING f } -- arrow pointing down ACS_DARROW v . -- arrow pointing left ACS_LARROW &lt; , -- arrow pointing right ACS_RARROW &gt; + -- arrow pointing up ACS_UARROW ^ - -- board of squares ACS_BOARD # h -- bullet ACS_BULLET o ~ -- checker board (stipple) ACS_CKBOARD : a -- degree symbol ACS_DEGREE \ f -- diamond ACS_DIAMOND + ` -- greater-than-or-equal-to ACS_GEQUAL &gt; z -- greek pi ACS_PI * { -- horizontal line ACS_HLINE - q -- lantern symbol ACS_LANTERN # i -- large plus or crossover ACS_PLUS + n -- less-than-or-equal-to ACS_LEQUAL &lt; y -- -- lower left corner ACS_LLCORNER + m -- lower right corner ACS_LRCORNER + j -- not-equal ACS_NEQUAL ! | -- plus/minus ACS_PLMINUS # g -- scan line 1 ACS_S1 ~ o -- scan line 3 ACS_S3 - p -- scan line 7 ACS_S7 - r -- scan line 9 ACS_S9 _ s -- solid square block ACS_BLOCK # 0 -- tee pointing down ACS_TTEE + w -- tee pointing left ACS_RTEE + u -- tee pointing right ACS_LTEE + t -- tee pointing up ACS_BTEE + v -- upper left corner ACS_ULCORNER + l -- upper right corner ACS_URCORNER + k -- vertical line ACS_VLINE | x -- -- The best way to define a new device's graphics set is to -- add a column to a copy of this table for your terminal, -- giving the character which (when emitted between -- <STRONG>smacs</STRONG>/<STRONG>rmacs</STRONG> switches) will be rendered as the correspond- -- ing graphic. Then read off the VT100/your terminal char- -- acter pairs right to left in sequence; these become the -+ <STRONG>Glyph</STRONG> <STRONG>ACS</STRONG> <STRONG>Ascii</STRONG> <STRONG>VT100</STRONG> -+ <STRONG>Name</STRONG> <STRONG>Name</STRONG> <STRONG>Default</STRONG> <STRONG>Name</STRONG> -+ UK pound sign ACS_STERLING f } -+ arrow pointing down ACS_DARROW v . -+ arrow pointing left ACS_LARROW &lt; , -+ arrow pointing right ACS_RARROW &gt; + -+ arrow pointing up ACS_UARROW ^ - -+ board of squares ACS_BOARD # h -+ bullet ACS_BULLET o ~ -+ checker board (stipple) ACS_CKBOARD : a -+ degree symbol ACS_DEGREE \ f -+ diamond ACS_DIAMOND + ` -+ greater-than-or-equal-to ACS_GEQUAL &gt; z -+ greek pi ACS_PI * { -+ horizontal line ACS_HLINE - q -+ lantern symbol ACS_LANTERN # i -+ large plus or crossover ACS_PLUS + n -+ less-than-or-equal-to ACS_LEQUAL &lt; y -+ lower left corner ACS_LLCORNER + m -+ lower right corner ACS_LRCORNER + j -+ not-equal ACS_NEQUAL ! | -+ plus/minus ACS_PLMINUS # g -+ scan line 1 ACS_S1 ~ o -+ scan line 3 ACS_S3 - p -+ scan line 7 ACS_S7 - r -+ scan line 9 ACS_S9 _ s -+ solid square block ACS_BLOCK # 0 -+ tee pointing down ACS_TTEE + w -+ tee pointing left ACS_RTEE + u -+ tee pointing right ACS_LTEE + t -+ tee pointing up ACS_BTEE + v -+ upper left corner ACS_ULCORNER + l -+ upper right corner ACS_URCORNER + k -+ vertical line ACS_VLINE | x -+ -+ The best way to define a new device's graphics set is to -+ add a column to a copy of this table for your terminal, -+ giving the character which (when emitted between -+ <STRONG>smacs</STRONG>/<STRONG>rmacs</STRONG> switches) will be rendered as the correspond- -+ ing graphic. Then read off the VT100/your terminal char- -+ acter pairs right to left in sequence; these become the - ACSC string. - -- - <STRONG>Color</STRONG> <STRONG>Handling</STRONG> -- Most color terminals are either `Tektronix-like' or `HP- -- like'. Tektronix-like terminals have a predefined set of -- N colors (where N usually 8), and can set character-cell -+ Most color terminals are either "Tektronix-like" or "HP- -+ like". Tektronix-like terminals have a predefined set of -+ N colors (where N usually 8), and can set character-cell - foreground and background characters independently, mixing -- them into N * N color-pairs. On HP-like terminals, the -+ them into N * N color-pairs. On HP-like terminals, the - use must set each color pair up separately (foreground and -- background are not independently settable). Up to M -- color-pairs may be set up from 2*M different colors. -+ background are not independently settable). Up to M -+ color-pairs may be set up from 2*M different colors. - ANSI-compatible terminals are Tektronix-like. - - Some basic color capabilities are independent of the color - method. The numeric capabilities <STRONG>colors</STRONG> and <STRONG>pairs</STRONG> specify -- the maximum numbers of colors and color-pairs that can be -- displayed simultaneously. The <STRONG>op</STRONG> (original pair) string -- resets foreground and background colors to their default -- values for the terminal. The <STRONG>oc</STRONG> string resets all colors -- or color-pairs to their default values for the terminal. -- Some terminals (including many PC terminal emulators) -- erase screen areas with the current background color -- rather than the power-up default background; these should -+ the maximum numbers of colors and color-pairs that can be -+ displayed simultaneously. The <STRONG>op</STRONG> (original pair) string -+ resets foreground and background colors to their default -+ values for the terminal. The <STRONG>oc</STRONG> string resets all colors -+ or color-pairs to their default values for the terminal. -+ Some terminals (including many PC terminal emulators) -+ erase screen areas with the current background color -+ rather than the power-up default background; these should - have the boolean capability <STRONG>bce</STRONG>. - -- To change the current foreground or background color on a -- Tektronix-type terminal, use <STRONG>setaf</STRONG> (set ANSI foreground) -- and <STRONG>setab</STRONG> (set ANSI background) or <STRONG>setf</STRONG> (set foreground) -- and <STRONG>setb</STRONG> (set background). These take one parameter, the -+ To change the current foreground or background color on a -+ Tektronix-type terminal, use <STRONG>setaf</STRONG> (set ANSI foreground) -+ and <STRONG>setab</STRONG> (set ANSI background) or <STRONG>setf</STRONG> (set foreground) -+ and <STRONG>setb</STRONG> (set background). These take one parameter, the - color number. The SVr4 documentation describes only -- <STRONG>setaf</STRONG>/<STRONG>setab</STRONG>; the XPG4 draft says that "If the terminal -+ <STRONG>setaf</STRONG>/<STRONG>setab</STRONG>; the XPG4 draft says that "If the terminal - supports ANSI escape sequences to set background and fore- -- ground, they should be coded as <STRONG>setaf</STRONG> and <STRONG>setab</STRONG>, respec- -- tively. If the terminal supports other escape sequences -- to set background and foreground, they should be coded as -- <STRONG>setf</STRONG> and <STRONG>setb</STRONG>, respectively. The <EM>vidputs()</EM> function and -- the refresh functions use <STRONG>setaf</STRONG> and <STRONG>setab</STRONG> if they are -+ ground, they should be coded as <STRONG>setaf</STRONG> and <STRONG>setab</STRONG>, respec- -+ tively. If the terminal supports other escape sequences -+ to set background and foreground, they should be coded as -+ <STRONG>setf</STRONG> and <STRONG>setb</STRONG>, respectively. The <EM>vidputs()</EM> function and -+ the refresh functions use <STRONG>setaf</STRONG> and <STRONG>setab</STRONG> if they are - defined." - -- The <STRONG>setaf</STRONG>/<STRONG>setab</STRONG> and <STRONG>setf</STRONG>/<STRONG>setb</STRONG> capabilities take a single -+ The <STRONG>setaf</STRONG>/<STRONG>setab</STRONG> and <STRONG>setf</STRONG>/<STRONG>setb</STRONG> capabilities take a single - numeric argument each. Argument values 0-7 of <STRONG>setaf</STRONG>/<STRONG>setab</STRONG> -- are portably defined as follows (the middle column is the -+ are portably defined as follows (the middle column is the - symbolic #define available in the header for the <STRONG>curses</STRONG> or -- <STRONG>ncurses</STRONG> libraries). The terminal hardware is free to map -- these as it likes, but the RGB values indicate normal -+ <STRONG>ncurses</STRONG> libraries). The terminal hardware is free to map -+ these as it likes, but the RGB values indicate normal - locations in color space. - -- - <STRONG>Color</STRONG> <STRONG>#define</STRONG> <STRONG>Value</STRONG> <STRONG>RGB</STRONG> - black <STRONG>COLOR_BLACK</STRONG> 0 0, 0, 0 - red <STRONG>COLOR_RED</STRONG> 1 max,0,0 -@@ -1997,7 +2098,7 @@ - cyan <STRONG>COLOR_CYAN</STRONG> 6 0,max,max - white <STRONG>COLOR_WHITE</STRONG> 7 max,max,max - -- The argument values of <STRONG>setf</STRONG>/<STRONG>setb</STRONG> historically correspond -+ The argument values of <STRONG>setf</STRONG>/<STRONG>setb</STRONG> historically correspond - to a different mapping, i.e., - - <STRONG>Color</STRONG> <STRONG>#define</STRONG> <STRONG>Value</STRONG> <STRONG>RGB</STRONG> -@@ -2009,132 +2110,137 @@ - magenta <STRONG>COLOR_MAGENTA</STRONG> 5 max,0,max - yellow <STRONG>COLOR_YELLOW</STRONG> 6 max,max,0 - white <STRONG>COLOR_WHITE</STRONG> 7 max,max,max -+ - It is important to not confuse the two sets of color capa- -- bilities; otherwise red/blue will be interchanged on the -+ bilities; otherwise red/blue will be interchanged on the - display. - -- On an HP-like terminal, use <STRONG>scp</STRONG> with a color-pair number -+ On an HP-like terminal, use <STRONG>scp</STRONG> with a color-pair number - parameter to set which color pair is current. - -- On a Tektronix-like terminal, the capability <STRONG>ccc</STRONG> may be -- present to indicate that colors can be modified. If so, -+ On a Tektronix-like terminal, the capability <STRONG>ccc</STRONG> may be -+ present to indicate that colors can be modified. If so, - the <STRONG>initc</STRONG> capability will take a color number (0 to <STRONG>colors</STRONG> -- - 1)and three more parameters which describe the color. -+ - 1)and three more parameters which describe the color. - These three parameters default to being interpreted as RGB -- (Red, Green, Blue) values. If the boolean capability <STRONG>hls</STRONG> -+ (Red, Green, Blue) values. If the boolean capability <STRONG>hls</STRONG> - is present, they are instead as HLS (Hue, Lightness, Satu- - ration) indices. The ranges are terminal-dependent. - -- On an HP-like terminal, <STRONG>initp</STRONG> may give a capability for -- changing a color-pair value. It will take seven parame- -- ters; a color-pair number (0 to <STRONG>max_pairs</STRONG> - 1), and two -- triples describing first background and then foreground -- colors. These parameters must be (Red, Green, Blue) or -+ On an HP-like terminal, <STRONG>initp</STRONG> may give a capability for -+ changing a color-pair value. It will take seven parame- -+ ters; a color-pair number (0 to <STRONG>max_pairs</STRONG> - 1), and two -+ triples describing first background and then foreground -+ colors. These parameters must be (Red, Green, Blue) or - (Hue, Lightness, Saturation) depending on <STRONG>hls</STRONG>. - -- On some color terminals, colors collide with highlights. -+ On some color terminals, colors collide with highlights. - You can register these collisions with the <STRONG>ncv</STRONG> capability. -- This is a bit-mask of attributes not to be used when col- -- ors are enabled. The correspondence with the attributes -+ This is a bit-mask of attributes not to be used when col- -+ ors are enabled. The correspondence with the attributes - understood by <STRONG>curses</STRONG> is as follows: - -- -- <STRONG>Attribute</STRONG> <STRONG>Bit</STRONG> <STRONG>Decimal</STRONG> -- A_STANDOUT 0 1 -- A_UNDERLINE 1 2 -- A_REVERSE 2 4 -- A_BLINK 3 8 -- A_DIM 4 16 -- A_BOLD 5 32 -- A_INVIS 6 64 -- A_PROTECT 7 128 -- A_ALTCHARSET 8 256 -- -- For example, on many IBM PC consoles, the underline -- attribute collides with the foreground color blue and is -- not available in color mode. These should have an <STRONG>ncv</STRONG> -+ <STRONG>Attribute</STRONG> <STRONG>Bit</STRONG> <STRONG>Decimal</STRONG> <STRONG>Set</STRONG> <STRONG>by</STRONG> -+ A_STANDOUT 0 1 sgr -+ A_UNDERLINE 1 2 sgr -+ A_REVERSE 2 4 sgr -+ A_BLINK 3 8 sgr -+ A_DIM 4 16 sgr -+ A_BOLD 5 32 sgr -+ A_INVIS 6 64 sgr -+ A_PROTECT 7 128 sgr -+ A_ALTCHARSET 8 256 sgr -+ A_HORIZONTAL 9 512 sgr1 -+ A_LEFT 10 1024 sgr1 -+ A_LOW 11 2048 sgr1 -+ A_RIGHT 12 4096 sgr1 -+ A_TOP 13 8192 sgr1 -+ A_VERTICAL 14 16384 sgr1 -+ A_ITALIC 15 32768 sitm -+ -+ For example, on many IBM PC consoles, the underline -+ attribute collides with the foreground color blue and is -+ not available in color mode. These should have an <STRONG>ncv</STRONG> - capability of 2. - -- SVr4 curses does nothing with <STRONG>ncv</STRONG>, ncurses recognizes it -+ SVr4 curses does nothing with <STRONG>ncv</STRONG>, ncurses recognizes it - and optimizes the output in favor of colors. - -- - <STRONG>Miscellaneous</STRONG> -- If the terminal requires other than a null (zero) charac- -- ter as a pad, then this can be given as pad. Only the -- first character of the pad string is used. If the termi- -+ If the terminal requires other than a null (zero) charac- -+ ter as a pad, then this can be given as pad. Only the -+ first character of the pad string is used. If the termi- - nal does not have a pad character, specify npc. Note that -- ncurses implements the termcap-compatible <STRONG>PC</STRONG> variable; -- though the application may set this value to something -- other than a null, ncurses will test <STRONG>npc</STRONG> first and use -+ ncurses implements the termcap-compatible <STRONG>PC</STRONG> variable; -+ though the application may set this value to something -+ other than a null, ncurses will test <STRONG>npc</STRONG> first and use - napms if the terminal has no pad character. - -- If the terminal can move up or down half a line, this can -- be indicated with <STRONG>hu</STRONG> (half-line up) and <STRONG>hd</STRONG> (half-line -+ If the terminal can move up or down half a line, this can -+ be indicated with <STRONG>hu</STRONG> (half-line up) and <STRONG>hd</STRONG> (half-line - down). This is primarily useful for superscripts and sub- -- scripts on hard-copy terminals. If a hard-copy terminal -- can eject to the next page (form feed), give this as <STRONG>ff</STRONG> -+ scripts on hard-copy terminals. If a hard-copy terminal -+ can eject to the next page (form feed), give this as <STRONG>ff</STRONG> - (usually control L). - -- If there is a command to repeat a given character a given -- number of times (to save time transmitting a large number -- of identical characters) this can be indicated with the -- parameterized string <STRONG>rep</STRONG>. The first parameter is the -- character to be repeated and the second is the number of -- times to repeat it. Thus, tparm(repeat_char, 'x', 10) is -- the same as `xxxxxxxxxx'. -+ If there is a command to repeat a given character a given -+ number of times (to save time transmitting a large number -+ of identical characters) this can be indicated with the -+ parameterized string <STRONG>rep</STRONG>. The first parameter is the -+ character to be repeated and the second is the number of -+ times to repeat it. Thus, tparm(repeat_char, 'x', 10) is -+ the same as "xxxxxxxxxx". - -- If the terminal has a settable command character, such as -- the TEKTRONIX 4025, this can be indicated with <STRONG>cmdch</STRONG>. A -+ If the terminal has a settable command character, such as -+ the TEKTRONIX 4025, this can be indicated with <STRONG>cmdch</STRONG>. A - prototype command character is chosen which is used in all -- capabilities. This character is given in the <STRONG>cmdch</STRONG> capa- -- bility to identify it. The following convention is sup- -- ported on some UNIX systems: The environment is to be -- searched for a <STRONG>CC</STRONG> variable, and if found, all occurrences -+ capabilities. This character is given in the <STRONG>cmdch</STRONG> capa- -+ bility to identify it. The following convention is sup- -+ ported on some UNIX systems: The environment is to be -+ searched for a <STRONG>CC</STRONG> variable, and if found, all occurrences - of the prototype character are replaced with the character - in the environment variable. - -- Terminal descriptions that do not represent a specific -+ Terminal descriptions that do not represent a specific - kind of known terminal, such as <EM>switch</EM>, <EM>dialup</EM>, <EM>patch</EM>, and -- <EM>network</EM>, should include the <STRONG>gn</STRONG> (generic) capability so -- that programs can complain that they do not know how to -- talk to the terminal. (This capability does not apply to -- <EM>virtual</EM> terminal descriptions for which the escape -+ <EM>network</EM>, should include the <STRONG>gn</STRONG> (generic) capability so -+ that programs can complain that they do not know how to -+ talk to the terminal. (This capability does not apply to -+ <EM>virtual</EM> terminal descriptions for which the escape - sequences are known.) - -- If the terminal has a ``meta key'' which acts as a shift -- key, setting the 8th bit of any character transmitted, -- this fact can be indicated with <STRONG>km</STRONG>. Otherwise, software -+ If the terminal has a "meta key" which acts as a shift -+ key, setting the 8th bit of any character transmitted, -+ this fact can be indicated with <STRONG>km</STRONG>. Otherwise, software - will assume that the 8th bit is parity and it will usually -- be cleared. If strings exist to turn this ``meta mode'' -- on and off, they can be given as <STRONG>smm</STRONG> and <STRONG>rmm</STRONG>. -+ be cleared. If strings exist to turn this "meta mode" on -+ and off, they can be given as <STRONG>smm</STRONG> and <STRONG>rmm</STRONG>. - -- If the terminal has more lines of memory than will fit on -- the screen at once, the number of lines of memory can be -- indicated with <STRONG>lm</STRONG>. A value of <STRONG>lm</STRONG>#0 indicates that the -+ If the terminal has more lines of memory than will fit on -+ the screen at once, the number of lines of memory can be -+ indicated with <STRONG>lm</STRONG>. A value of <STRONG>lm</STRONG>#0 indicates that the - number of lines is not fixed, but that there is still more - memory than fits on the screen. - - If the terminal is one of those supported by the UNIX vir- -- tual terminal protocol, the terminal number can be given -+ tual terminal protocol, the terminal number can be given - as <STRONG>vt</STRONG>. - - Media copy strings which control an auxiliary printer con- - nected to the terminal can be given as <STRONG>mc0</STRONG>: print the con- -- tents of the screen, <STRONG>mc4</STRONG>: turn off the printer, and <STRONG>mc5</STRONG>: -- turn on the printer. When the printer is on, all text -- sent to the terminal will be sent to the printer. It is -+ tents of the screen, <STRONG>mc4</STRONG>: turn off the printer, and <STRONG>mc5</STRONG>: -+ turn on the printer. When the printer is on, all text -+ sent to the terminal will be sent to the printer. It is - undefined whether the text is also displayed on the termi- - nal screen when the printer is on. A variation <STRONG>mc5p</STRONG> takes - one parameter, and leaves the printer on for as many char- -- acters as the value of the parameter, then turns the -- printer off. The parameter should not exceed 255. All -+ acters as the value of the parameter, then turns the -+ printer off. The parameter should not exceed 255. All - text, including <STRONG>mc4</STRONG>, is transparently passed to the - printer while an <STRONG>mc5p</STRONG> is in effect. - -- - <STRONG>Glitches</STRONG> <STRONG>and</STRONG> <STRONG>Braindamage</STRONG> -- Hazeltine terminals, which do not allow `~' characters to -+ Hazeltine terminals, which do not allow "~" characters to - be displayed should indicate <STRONG>hz</STRONG>. - - Terminals which ignore a line-feed immediately after an <STRONG>am</STRONG> -@@ -2147,10 +2253,10 @@ - Teleray terminals, where tabs turn all characters moved - over to blanks, should indicate <STRONG>xt</STRONG> (destructive tabs). - Note: the variable indicating this is now -- `dest_tabs_magic_smso'; in older versions, it was tel- -+ "dest_tabs_magic_smso"; in older versions, it was tel- - eray_glitch. This glitch is also taken to mean that it is -- not possible to position the cursor on top of a ``magic -- cookie'', that to erase standout mode it is instead neces- -+ not possible to position the cursor on top of a "magic -+ cookie", that to erase standout mode it is instead neces- - sary to use delete and insert line. The ncurses implemen- - tation ignores this glitch. - -@@ -2159,13 +2265,12 @@ - ing that the f1 key is used for escape and f2 for control - C. (Only certain Superbees have this problem, depending - on the ROM.) Note that in older terminfo versions, this -- capability was called `beehive_glitch'; it is now -- `no_esc_ctl_c'. -+ capability was called "beehive_glitch"; it is now -+ "no_esc_ctl_c". - - Other specific terminal problems may be corrected by - adding more capabilities of the form <STRONG>x</STRONG><EM>x</EM>. - -- - <STRONG>Similar</STRONG> <STRONG>Terminals</STRONG> - If there are two very similar terminals, one (the variant) - can be defined as being just like the other (the base) -@@ -2183,14 +2288,13 @@ - the use reference that imports it, where <EM>xx</EM> is the capa- - bility. For example, the entry - -- 2621-nl, smkx@, rmkx@, use=2621, -+ 2621-nl, smkx@, rmkx@, use=2621, - - defines a 2621-nl that does not have the <STRONG>smkx</STRONG> or <STRONG>rmkx</STRONG> - capabilities, and hence does not turn on the function key - labels when in visual mode. This is useful for different - modes for a terminal, or for different user preferences. - -- - <STRONG>Pitfalls</STRONG> <STRONG>of</STRONG> <STRONG>Long</STRONG> <STRONG>Entries</STRONG> - Long terminfo entries are unlikely to be a problem; to - date, no entry has even approached terminfo's 4096-byte -@@ -2229,21 +2333,21 @@ - libraries strip off the final newline, too (GNU termcap - does not). Now suppose: - -- * a termcap entry before expansion is more than 1023 -- bytes long, -+ <STRONG>o</STRONG> a termcap entry before expansion is more than 1023 -+ bytes long, - -- * and the application has only allocated a 1k buffer, -+ <STRONG>o</STRONG> and the application has only allocated a 1k buffer, - -- * and the termcap library (like the one in BSD/OS 1.1 -- and GNU) reads the whole entry into the buffer, no -- matter what its length, to see if it is the entry it -- wants, -- -- * and <STRONG>tgetent()</STRONG> is searching for a terminal type that -- either is the long entry, appears in the termcap file -- after the long entry, or does not appear in the file -- at all (so that <STRONG>tgetent()</STRONG> has to search the whole -- termcap file). -+ <STRONG>o</STRONG> and the termcap library (like the one in BSD/OS 1.1 -+ and GNU) reads the whole entry into the buffer, no -+ matter what its length, to see if it is the entry it -+ wants, -+ -+ <STRONG>o</STRONG> and <STRONG>tgetent()</STRONG> is searching for a terminal type that -+ either is the long entry, appears in the termcap file -+ after the long entry, or does not appear in the file -+ at all (so that <STRONG>tgetent()</STRONG> has to search the whole -+ termcap file). - - Then <STRONG>tgetent()</STRONG> will overwrite memory, perhaps its stack, - and probably core dump the program. Programs like telnet -@@ -2288,61 +2392,72 @@ - - </PRE> - <H2>EXTENSIONS</H2><PRE> -- Some SVr4 <STRONG>curses</STRONG> implementations, and all previous to -- SVr4, do not interpret the %A and %O operators in parame- -+ Searching for terminal descriptions in <STRONG>$HOME/.terminfo</STRONG> and -+ TERMINFO_DIRS is not supported by older implementations. -+ -+ Some SVr4 <STRONG>curses</STRONG> implementations, and all previous to -+ SVr4, do not interpret the %A and %O operators in parame- - ter strings. - -- SVr4/XPG4 do not specify whether <STRONG>msgr</STRONG> licenses movement -- while in an alternate-character-set mode (such modes may, -- among other things, map CR and NL to characters that do -- not trigger local motions). The <STRONG>ncurses</STRONG> implementation -- ignores <STRONG>msgr</STRONG> in <STRONG>ALTCHARSET</STRONG> mode. This raises the possi- -- bility that an XPG4 implementation making the opposite -- interpretation may need terminfo entries made for <STRONG>ncurses</STRONG> -+ SVr4/XPG4 do not specify whether <STRONG>msgr</STRONG> licenses movement -+ while in an alternate-character-set mode (such modes may, -+ among other things, map CR and NL to characters that do -+ not trigger local motions). The <STRONG>ncurses</STRONG> implementation -+ ignores <STRONG>msgr</STRONG> in <STRONG>ALTCHARSET</STRONG> mode. This raises the possi- -+ bility that an XPG4 implementation making the opposite -+ interpretation may need terminfo entries made for <STRONG>ncurses</STRONG> - to have <STRONG>msgr</STRONG> turned off. - -- The <STRONG>ncurses</STRONG> library handles insert-character and insert- -+ The <STRONG>ncurses</STRONG> library handles insert-character and insert- - character modes in a slightly non-standard way to get bet- -- ter update efficiency. See the <STRONG>Insert/Delete</STRONG> <STRONG>Character</STRONG> -+ ter update efficiency. See the <STRONG>Insert/Delete</STRONG> <STRONG>Character</STRONG> - subsection above. - -- The parameter substitutions for <STRONG>set_clock</STRONG> and <STRONG>dis-</STRONG> -- <STRONG>play_clock</STRONG> are not documented in SVr4 or the XSI Curses -+ The parameter substitutions for <STRONG>set_clock</STRONG> and <STRONG>dis-</STRONG> -+ <STRONG>play_clock</STRONG> are not documented in SVr4 or the XSI Curses - standard. They are deduced from the documentation for the - AT&amp;T 505 terminal. - -- Be careful assigning the <STRONG>kmous</STRONG> capability. The <STRONG>ncurses</STRONG> -- wants to interpret it as <STRONG>KEY_MOUSE</STRONG>, for use by terminals -- and emulators like xterm that can return mouse-tracking -+ Be careful assigning the <STRONG>kmous</STRONG> capability. The <STRONG>ncurses</STRONG> -+ wants to interpret it as <STRONG>KEY_MOUSE</STRONG>, for use by terminals -+ and emulators like xterm that can return mouse-tracking - information in the keyboard-input stream. - -- Different commercial ports of terminfo and curses support -- different subsets of the XSI Curses standard and (in some -+ X/Open Curses does not mention italics. Portable applica- -+ tions must assume that numeric capabilities are signed -+ 16-bit values. This includes the <EM>no</EM><STRONG>_</STRONG><EM>color</EM><STRONG>_</STRONG><EM>video</EM> (ncv) -+ capability. The 32768 mask value used for italics with -+ ncv can be confused with an absent or cancelled ncv. If -+ italics should work with colors, then the ncv value must -+ be specified, even if it is zero. -+ -+ Different commercial ports of terminfo and curses support -+ different subsets of the XSI Curses standard and (in some - cases) different extension sets. Here is a summary, accu- - rate as of October 1995: - - <STRONG>SVR4,</STRONG> <STRONG>Solaris,</STRONG> <STRONG>ncurses</STRONG> -- These support all SVr4 capabili- - ties. - -- <STRONG>SGI</STRONG> -- Supports the SVr4 set, adds one undocumented -+ <STRONG>SGI</STRONG> -- Supports the SVr4 set, adds one undocumented - extended string capability (<STRONG>set_pglen</STRONG>). - -- <STRONG>SVr1,</STRONG> <STRONG>Ultrix</STRONG> -- These support a restricted subset of ter- -- minfo capabilities. The booleans end with <STRONG>xon_xoff</STRONG>; the -- numerics with <STRONG>width_status_line</STRONG>; and the strings with -+ <STRONG>SVr1,</STRONG> <STRONG>Ultrix</STRONG> -- These support a restricted subset of ter- -+ minfo capabilities. The booleans end with <STRONG>xon_xoff</STRONG>; the -+ numerics with <STRONG>width_status_line</STRONG>; and the strings with - <STRONG>prtr_non</STRONG>. - -- <STRONG>HP/UX</STRONG> -- Supports the SVr1 subset, plus the SVr[234] -+ <STRONG>HP/UX</STRONG> -- Supports the SVr1 subset, plus the SVr[234] - numerics <STRONG>num_labels</STRONG>, <STRONG>label_height</STRONG>, <STRONG>label_width</STRONG>, plus func- -- tion keys 11 through 63, plus <STRONG>plab_norm</STRONG>, <STRONG>label_on</STRONG>, and -+ tion keys 11 through 63, plus <STRONG>plab_norm</STRONG>, <STRONG>label_on</STRONG>, and - <STRONG>label_off</STRONG>, plus some incompatible extensions in the string - table. - -- <STRONG>AIX</STRONG> -- Supports the SVr1 subset, plus function keys 11 -- through 63, plus a number of incompatible string table -+ <STRONG>AIX</STRONG> -- Supports the SVr1 subset, plus function keys 11 -+ through 63, plus a number of incompatible string table - extensions. - -- <STRONG>OSF</STRONG> -- Supports both the SVr4 set and the AIX extensions. -+ <STRONG>OSF</STRONG> -- Supports both the SVr4 set and the AIX extensions. - - - </PRE> -@@ -2353,7 +2468,7 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>. -+ <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>printf(3)</STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>. - <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>. - - -diff -Naur ncurses-5.9/doc/html/man/term_variables.3x.html ncurses-5.9.patch/doc/html/man/term_variables.3x.html ---- ncurses-5.9/doc/html/man/term_variables.3x.html 2011-01-09 02:03:29.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/term_variables.3x.html 2014-09-01 16:33:22.334792086 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: term_variables.3x,v 1.2 2010/12/04 18:38:55 tom Exp @ -+ * @Id: term_variables.3x,v 1.3 2011/12/17 23:31:50 tom Exp @ - --> - <HTML> - <HEAD> -@@ -99,8 +99,8 @@ - <STRONG>Current</STRONG> <STRONG>Terminal</STRONG> <STRONG>Data</STRONG> - After initializing the curses or terminfo interfaces, the - <STRONG>cur_term</STRONG> contains data describing the current terminal. -- This variable is also set as a side-effect of <STRONG><A HREF="set_term.3x.html">set_term(3x)</A></STRONG> -- and <STRONG><A HREF="delscreen.3x.html">delscreen(3x)</A></STRONG>. -+ This variable is also set as a side-effect of <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> -+ and <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>. - - It is possible to save a value of <STRONG>cur_term</STRONG> for subsequent - use as a parameter to <STRONG>set_term</STRONG>, for switching between -@@ -108,7 +108,7 @@ - from <STRONG>newterm</STRONG> or <STRONG>setupterm</STRONG> to reuse in <STRONG>set_term</STRONG>. - - <STRONG>Terminfo</STRONG> <STRONG>Names</STRONG> -- The <STRONG><A HREF="tic.1.html">tic(1)</A></STRONG> and <STRONG><A HREF="infocmp.1.html">infocmp(1)</A></STRONG> programs use lookup tables for -+ The <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG> and <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> programs use lookup tables for - the long and short names of terminfo capabilities, as well - as the corresponding names for termcap capabilities. - These are available to other applications, though the -@@ -130,8 +130,8 @@ - - </PRE> - <H2>NOTES</H2><PRE> -- The low-level terminfo interface is initialized using <STRONG>se-</STRONG> -- <STRONG><A HREF="setupterm.3x.html">tupterm(3x)</A></STRONG>. The upper-level curses interface uses the -+ The low-level terminfo interface is initialized using -+ <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>. The upper-level curses interface uses the - low-level terminfo interface, internally. - - -@@ -149,8 +149,8 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>, <STRONG>termin-</STRONG> -- <STRONG><A HREF="terminfo.3x.html">fo(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>, -+ <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. - - - -diff -Naur ncurses-5.9/doc/html/man/tic.1m.html ncurses-5.9.patch/doc/html/man/tic.1m.html ---- ncurses-5.9/doc/html/man/tic.1m.html 2011-04-05 00:46:51.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/tic.1m.html 2014-09-01 16:33:22.335792088 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: tic.1m,v 1.47 2010/12/04 18:38:55 tom Exp @ -+ * @Id: tic.1m,v 1.58 2013/07/20 19:31:25 tom Exp @ - --> - <HTML> - <HEAD> -@@ -52,84 +52,141 @@ - - </PRE> - <H2>SYNOPSIS</H2><PRE> -- <STRONG>tic</STRONG> [<STRONG>-1CGILNTUVacfgrstx</STRONG>] [<STRONG>-e</STRONG> <EM>names</EM>] [<STRONG>-o</STRONG> <EM>dir</EM>] [<STRONG>-R</STRONG> <EM>subset</EM>] -- [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-w</STRONG>[<EM>n</EM>]] <EM>file</EM> -+ <STRONG>tic</STRONG> [<STRONG>-01CDGIKLNTUVacfgrstx</STRONG>] [<STRONG>-e</STRONG> <EM>names</EM>] [<STRONG>-o</STRONG> <EM>dir</EM>] [<STRONG>-R</STRONG> <EM>sub-</EM> -+ <EM>set</EM>] [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-w</STRONG>[<EM>n</EM>]] <EM>file</EM> - - - </PRE> - <H2>DESCRIPTION</H2><PRE> -- The command <STRONG>tic</STRONG> translates a <STRONG>terminfo</STRONG> file from source -+ The <STRONG>tic</STRONG> command translates a <STRONG>terminfo</STRONG> file from source - format into compiled format. The compiled format is nec- - essary for use with the library routines in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>. - -- The results are normally placed in the system terminfo -- directory <STRONG>/usr/share/terminfo</STRONG>. There are two ways to -- change this behavior. -+ As described in <STRONG><A HREF="term.5.html">term(5)</A></STRONG>, the database may be either a -+ directory tree (one file per terminal entry) or a hashed -+ database (one record per entry). The <STRONG>tic</STRONG> command writes -+ only one type of entry, depending on how it was built: -+ -+ <STRONG>o</STRONG> For directory trees, the top-level directory, e.g., -+ /usr/share/terminfo, specifies the location of the -+ database. -+ -+ <STRONG>o</STRONG> For hashed databases, a filename is needed. If the -+ given file is not found by that name, but can be found -+ by adding the suffix ".db", then that is used. -+ -+ The default name for the hashed database is the same -+ as the default directory name (only adding a ".db" -+ suffix). -+ -+ In either case (directory or hashed database), <STRONG>tic</STRONG> will -+ create the container if it does not exist. For a direc- -+ tory, this would be the "terminfo" leaf, versus a "ter- -+ minfo.db" file. - -- First, you may override the system default by setting the -- variable <STRONG>TERMINFO</STRONG> in your shell environment to a valid -- (existing) directory name. -- -- Secondly, if <STRONG>tic</STRONG> cannot get access to <EM>/usr/share/terminfo</EM> -- or your TERMINFO directory, it looks for the directory -- <EM>$HOME/.terminfo</EM>; if that directory exists, the entry is -- placed there. -+ The results are normally placed in the system terminfo -+ database <STRONG>/usr/share/terminfo</STRONG>. The compiled terminal -+ description can be placed in a different terminfo data- -+ base. There are two ways to achieve this: -+ -+ <STRONG>o</STRONG> First, you may override the system default either by -+ using the <STRONG>-o</STRONG> option, or by setting the variable <STRONG>TER-</STRONG> -+ <STRONG>MINFO</STRONG> in your shell environment to a valid database -+ location. -+ -+ <STRONG>o</STRONG> Secondly, if <STRONG>tic</STRONG> cannot write in <EM>/usr/share/terminfo</EM> -+ or the location specified using your TERMINFO vari- -+ able, it looks for the directory <EM>$HOME/.terminfo</EM> (or -+ hashed database <EM>$HOME/.terminfo.db)</EM>; if that location -+ exists, the entry is placed there. - - Libraries that read terminfo entries are expected to check -- for a TERMINFO directory first, look at <EM>$HOME/.terminfo</EM> if -- TERMINFO is not set, and finally look in <EM>/usr/share/ter-</EM> -- <EM>minfo</EM>. -+ in succession -+ -+ <STRONG>o</STRONG> a location specified with the TERMINFO environment -+ variable, -+ -+ <STRONG>o</STRONG> <EM>$HOME/.terminfo</EM>, -+ -+ <STRONG>o</STRONG> directories listed in the TERMINFO_DIRS environment -+ variable, -+ -+ <STRONG>o</STRONG> a compiled-in list of directories -+ (/usr/local/ncurses/share/terminfo:/usr/share/ter- -+ minfo), and -+ -+ <STRONG>o</STRONG> the system terminfo database (<EM>/usr/share/terminfo</EM>). -+ -+ <STRONG>OPTIONS</STRONG> -+ <STRONG>-0</STRONG> restricts the output to a single line - - <STRONG>-1</STRONG> restricts the output to a single column - - <STRONG>-a</STRONG> tells <STRONG>tic</STRONG> to retain commented-out capabilities - rather than discarding them. Capabilities are com- -- mented by prefixing them with a period. This sets -- the <STRONG>-x</STRONG> option, because it treats the commented-out -- entries as user-defined names. If the source is -- termcap, accept the 2-character names required by -+ mented by prefixing them with a period. This sets -+ the <STRONG>-x</STRONG> option, because it treats the commented-out -+ entries as user-defined names. If the source is -+ termcap, accept the 2-character names required by - version 6. Otherwise these are ignored. - -- <STRONG>-C</STRONG> Force source translation to termcap format. Note: -- this differs from the <STRONG>-C</STRONG> option of <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> in -+ <STRONG>-C</STRONG> Force source translation to termcap format. Note: -+ this differs from the <STRONG>-C</STRONG> option of <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> in - that it does not merely translate capability names, -- but also translates terminfo strings to termcap -+ but also translates terminfo strings to termcap - format. Capabilities that are not translatable are -- left in the entry under their terminfo names but -- commented out with two preceding dots. -+ left in the entry under their terminfo names but -+ commented out with two preceding dots. The actual -+ format used incorporates some improvements for -+ escaped characters from terminfo format. For a -+ stricter BSD-compatible translation, add the <STRONG>-K</STRONG> -+ option. - -- <STRONG>-c</STRONG> tells <STRONG>tic</STRONG> to only check <EM>file</EM> for errors, including -- syntax problems and bad use links. If you specify -+ <STRONG>-c</STRONG> tells <STRONG>tic</STRONG> to only check <EM>file</EM> for errors, including -+ syntax problems and bad use links. If you specify - <STRONG>-C</STRONG> (<STRONG>-I</STRONG>) with this option, the code will print warn- - ings about entries which, after use resolution, are -- more than 1023 (4096) bytes long. Due to a fixed -- buffer length in older termcap libraries (and a -- documented limit in terminfo), these entries may -- cause core dumps. -+ more than 1023 (4096) bytes long. Due to a fixed -+ buffer length in older termcap libraries, as well -+ as buggy checking for the buffer length (and a doc- -+ umented limit in terminfo), these entries may cause -+ core dumps with other implementations. -+ -+ <STRONG>-D</STRONG> tells <STRONG>tic</STRONG> to print the database locations that it -+ knows about, and exit. The first location shown is -+ the one to which it would write compiled terminal -+ descriptions. If <STRONG>tic</STRONG> is not able to find a -+ writable database location according to the rules -+ summarized above, it will print a diagnostic and -+ exit with an error rather than printing a list of -+ database locations. - - <STRONG>-e</STRONG> <EM>names</EM> -- Limit writes and translations to the following -- comma-separated list of terminals. If any name or -+ Limit writes and translations to the following -+ comma-separated list of terminals. If any name or - alias of a terminal matches one of the names in the -- list, the entry will be written or translated as -- normal. Otherwise no output will be generated for -+ list, the entry will be written or translated as -+ normal. Otherwise no output will be generated for - it. The option value is interpreted as a file con- -- taining the list if it contains a '/'. (Note: -- depending on how tic was compiled, this option may -+ taining the list if it contains a '/'. (Note: -+ depending on how tic was compiled, this option may - require <STRONG>-I</STRONG> or <STRONG>-C</STRONG>.) - - <STRONG>-f</STRONG> Display complex terminfo strings which contain -- if/then/else/endif expressions indented for read- -+ if/then/else/endif expressions indented for read- - ability. - -- <STRONG>-G</STRONG> Display constant literals in decimal form rather -+ <STRONG>-G</STRONG> Display constant literals in decimal form rather - than their character equivalents. - -- <STRONG>-g</STRONG> Display constant character literals in quoted form -+ <STRONG>-g</STRONG> Display constant character literals in quoted form - rather than their decimal equivalents. - - <STRONG>-I</STRONG> Force source translation to terminfo format. - -+ <STRONG>-K</STRONG> Suppress some longstanding ncurses extensions to -+ termcap format, e.g., "\s" for space. -+ - <STRONG>-L</STRONG> Force source translation to terminfo format using - the long C variable names listed in &lt;<STRONG>term.h</STRONG>&gt; - -@@ -145,8 +202,8 @@ - This option forces a more literal translation that - also preserves the obsolete capabilities. - -- <STRONG>-o</STRONG><EM>dir</EM> Write compiled entries to given directory. Over- -- rides the TERMINFO environment variable. -+ <STRONG>-o</STRONG><EM>dir</EM> Write compiled entries to given database location. -+ Overrides the TERMINFO environment variable. - - <STRONG>-R</STRONG><EM>subset</EM> - Restrict output to a given subset. This option is -@@ -160,15 +217,15 @@ - - <STRONG>-r</STRONG> Force entry resolution (so there are no remaining - tc capabilities) even when doing translation to -- termcap format. This may be needed if you are -- preparing a termcap file for a termcap library -- (such as GNU termcap through version 1.3 or BSD -- termcap through 4.3BSD) that does not handle multi- -- ple tc capabilities per entry. -- -- <STRONG>-s</STRONG> Summarize the compile by showing the directory into -- which entries are written, and the number of -- entries which are compiled. -+ termcap format. This may be needed if you are pre- -+ paring a termcap file for a termcap library (such -+ as GNU termcap through version 1.3 or BSD termcap -+ through 4.3BSD) that does not handle multiple tc -+ capabilities per entry. -+ -+ <STRONG>-s</STRONG> Summarize the compile by showing the database loca- -+ tion into which entries are written, and the number -+ of entries which are compiled. - - <STRONG>-T</STRONG> eliminates size-restrictions on the generated text. - This is mainly useful for testing and analysis, -@@ -195,41 +252,48 @@ - 1. If <EM>n</EM> is specified and greater than 1, the level - of detail is increased. - -- <STRONG>-w</STRONG><EM>n</EM> specifies the width of the output. The parameter is -- optional. If it is omitted, it defaults to 60. -+ The debug flag levels are as follows: - -- <STRONG>-x</STRONG> Treat unknown capabilities as user-defined. That is, -- if you supply a capability name which <STRONG>tic</STRONG> does not -- recognize, it will infer its type (boolean, number or -- string) from the syntax and make an extended table -- entry for that. User-defined capability strings -- whose name begins with ``k'' are treated as function -- keys. -+ 1 Names of files created and linked - -- <EM>file</EM> contains one or more <STRONG>terminfo</STRONG> terminal descriptions -- in source format [see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>]. Each description -- in the file describes the capabilities of a particu- -- lar terminal. -+ 2 Information related to the "use" facility - -- The debug flag levels are as follows: -+ 3 Statistics from the hashing algorithm - -- 1 Names of files created and linked -+ 5 String-table memory allocations - -- 2 Information related to the ``use'' facility -+ 7 Entries into the string-table - -- 3 Statistics from the hashing algorithm -+ 8 List of tokens encountered by scanner - -- 5 String-table memory allocations -+ 9 All values computed in construction of the -+ hash table - -- 7 Entries into the string-table -+ If the debug level <EM>n</EM> is not given, it is taken to be -+ one. - -- 8 List of tokens encountered by scanner -+ <STRONG>-w</STRONG><EM>n</EM> specifies the width of the output. The parameter is -+ optional. If it is omitted, it defaults to 60. - -- 9 All values computed in construction of the hash ta- -- ble -+ <STRONG>-x</STRONG> Treat unknown capabilities as user-defined. That is, -+ if you supply a capability name which <STRONG>tic</STRONG> does not -+ recognize, it will infer its type (boolean, number or -+ string) from the syntax and make an extended table -+ entry for that. User-defined capability strings -+ whose name begins with "k" are treated as function -+ keys. - -- If the debug level <EM>n</EM> is not given, it is taken to be one. -+ <STRONG>PARAMETERS</STRONG> -+ <EM>file</EM> contains one or more <STRONG>terminfo</STRONG> terminal descriptions -+ in source format [see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>]. Each descrip- -+ tion in the file describes the capabilities of a -+ particular terminal. -+ -+ If <EM>file</EM> is "-", then the data is read from the -+ standard input. The <EM>file</EM> parameter may also be the -+ path of a character-device. - -+ <STRONG>PROCESSING</STRONG> - All but one of the capabilities recognized by <STRONG>tic</STRONG> are doc- - umented in <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. The exception is the <STRONG>use</STRONG> capabil- - ity. -@@ -237,10 +301,8 @@ - When a <STRONG>use</STRONG>=<EM>entry</EM>-<EM>name</EM> field is discovered in a terminal - entry currently being compiled, <STRONG>tic</STRONG> reads in the binary - from <STRONG>/usr/share/terminfo</STRONG> to complete the entry. (Entries -- created from <EM>file</EM> will be used first. If the environment -- variable <STRONG>TERMINFO</STRONG> is set, that directory is searched -- instead of <STRONG>/usr/share/terminfo</STRONG>.) <STRONG>tic</STRONG> duplicates the capa- -- bilities in <EM>entry</EM>-<EM>name</EM> for the current entry, with the -+ created from <EM>file</EM> will be used first. <STRONG>tic</STRONG> duplicates the -+ capabilities in <EM>entry</EM>-<EM>name</EM> for the current entry, with the - exception of those capabilities that explicitly are - defined in the current entry. - -@@ -249,52 +311,49 @@ - <EM>entry</EM>_<EM>name</EM>_<EM>2</EM> must also appear in <STRONG>entry_name_1</STRONG> before <STRONG>use=</STRONG> - for these capabilities to be canceled in <STRONG>entry_name_1</STRONG>. - -- If the environment variable <STRONG>TERMINFO</STRONG> is set, the compiled -- results are placed there instead of <STRONG>/usr/share/terminfo</STRONG>. -- - Total compiled entries cannot exceed 4096 bytes. The name -- field cannot exceed 512 bytes. Terminal names exceeding -- the maximum alias length (32 characters on systems with -+ field cannot exceed 512 bytes. Terminal names exceeding -+ the maximum alias length (32 characters on systems with - long filenames, 14 characters otherwise) will be truncated -- to the maximum alias length and a warning message will be -+ to the maximum alias length and a warning message will be - printed. - - - </PRE> - <H2>COMPATIBILITY</H2><PRE> -- There is some evidence that historic <STRONG>tic</STRONG> implementations -- treated description fields with no whitespace in them as -- additional aliases or short names. This <STRONG>tic</STRONG> does not do -- that, but it does warn when description fields may be -- treated that way and check them for dangerous characters. -+ There is some evidence that historic <STRONG>tic</STRONG> implementations -+ treated description fields with no whitespace in them as -+ additional aliases or short names. This <STRONG>tic</STRONG> does not do -+ that, but it does warn when description fields may be -+ treated that way and check them for dangerous characters. - - - </PRE> - <H2>EXTENSIONS</H2><PRE> -- Unlike the stock SVr4 <STRONG>tic</STRONG> command, this implementation can -- actually compile termcap sources. In fact, entries in -- terminfo and termcap syntax can be mixed in a single -- source file. See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for the list of termcap -- names taken to be equivalent to terminfo names. -+ Unlike the SVr4 <STRONG>tic</STRONG> command, this implementation can actu- -+ ally compile termcap sources. In fact, entries in ter- -+ minfo and termcap syntax can be mixed in a single source -+ file. See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for the list of termcap names taken -+ to be equivalent to terminfo names. - - The SVr4 manual pages are not clear on the resolution - rules for <STRONG>use</STRONG> capabilities. This implementation of <STRONG>tic</STRONG> - will find <STRONG>use</STRONG> targets anywhere in the source file, or any- - where in the file tree rooted at <STRONG>TERMINFO</STRONG> (if <STRONG>TERMINFO</STRONG> is -- defined), or in the user's <EM>$HOME/.terminfo</EM> directory (if -- it exists), or (finally) anywhere in the system's file -- tree of compiled entries. -+ defined), or in the user's <EM>$HOME/.terminfo</EM> database (if it -+ exists), or (finally) anywhere in the system's file tree -+ of compiled entries. - - The error messages from this <STRONG>tic</STRONG> have the same format as - GNU C error messages, and can be parsed by GNU Emacs's - compile facility. - -- The <STRONG>-C</STRONG>, <STRONG>-G</STRONG>, <STRONG>-I</STRONG>, <STRONG>-N</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-o</STRONG>, <STRONG>-r</STRONG>, -- <STRONG>-s</STRONG>, <STRONG>-t</STRONG> and <STRONG>-x</STRONG> options are not supported under SVr4. The -- SVr4 <STRONG>-c</STRONG> mode does not report bad use links. -+ The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-C</STRONG>, <STRONG>-G</STRONG>, <STRONG>-I</STRONG>, <STRONG>-N</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, -+ <STRONG>-o</STRONG>, <STRONG>-r</STRONG>, <STRONG>-s</STRONG>, <STRONG>-t</STRONG> and <STRONG>-x</STRONG> options are not supported under -+ SVr4. The SVr4 <STRONG>-c</STRONG> mode does not report bad use links. - - System V does not compile entries to or read entries from -- your <EM>$HOME/.terminfo</EM> directory unless TERMINFO is explic- -+ your <EM>$HOME/.terminfo</EM> database unless TERMINFO is explic- - itly set to it. - - -@@ -307,9 +366,9 @@ - </PRE> - <H2>SEE ALSO</H2><PRE> - <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, <STRONG><A HREF="toe.1m.html">toe(1m)</A></STRONG>, -- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. -+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="term.5.html">term(5)</A></STRONG>. <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - </PRE> -diff -Naur ncurses-5.9/doc/html/man/toe.1m.html ncurses-5.9.patch/doc/html/man/toe.1m.html ---- ncurses-5.9/doc/html/man/toe.1m.html 2011-04-05 00:46:51.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/toe.1m.html 2014-09-01 16:33:22.335792088 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: toe.1m,v 1.23 2010/12/04 18:40:45 tom Exp @ -+ * @Id: toe.1m,v 1.26 2012/01/01 00:40:51 tom Exp @ - --> - <HTML> - <HEAD> -@@ -52,7 +52,7 @@ - - </PRE> - <H2>SYNOPSIS</H2><PRE> -- <STRONG>toe</STRONG> [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-ahuUV</STRONG>] <EM>file...</EM> -+ <STRONG>toe</STRONG> [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-ahsuUV</STRONG>] <EM>file...</EM> - - - </PRE> -@@ -71,6 +71,14 @@ - ncurses would search, rather than only the first - one that it finds. - -+ If the <STRONG>-s</STRONG> is also given, <STRONG>toe</STRONG> adds a column to the -+ report, showing (like <STRONG>conflict(1)</STRONG>) which entries -+ which belong to a given terminal database. An "*" -+ marks entries which differ, and "+" marks equiva- -+ lent entries. -+ -+ <STRONG>-s</STRONG> sort the output by the entry names. -+ - <STRONG>-u</STRONG> <EM>file</EM> - says to write a report to the standard output, - listing dependencies in the given terminfo/termcap -@@ -111,7 +119,7 @@ - <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG>, <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>, <STRONG><A HREF="captoinfo.1m.html">captoinfo(1m)</A></STRONG>, <STRONG><A HREF="infotocap.1m.html">infotocap(1m)</A></STRONG>, - <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - -diff -Naur ncurses-5.9/doc/html/man/tput.1.html ncurses-5.9.patch/doc/html/man/tput.1.html ---- ncurses-5.9/doc/html/man/tput.1.html 2011-04-05 00:46:51.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/tput.1.html 2014-09-01 16:33:22.336792090 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - * t - **************************************************************************** -- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: tput.1,v 1.29 2010/12/04 18:41:07 tom Exp @ -+ * @Id: tput.1,v 1.32 2012/07/14 21:06:45 tom Exp @ - --> - <HTML> - <HEAD> -@@ -66,7 +66,7 @@ - <H2>DESCRIPTION</H2><PRE> - The <STRONG>tput</STRONG> utility uses the <STRONG>terminfo</STRONG> database to make the - values of terminal-dependent capabilities and information -- available to the shell (see <STRONG><A HREF="sh.1.html">sh(1)</A></STRONG>), to initialize or reset -+ available to the shell (see <STRONG>sh(1)</STRONG>), to initialize or reset - the terminal, or return the long name of the requested - terminal type. The result depends upon the capability's - type: -@@ -87,7 +87,7 @@ - - Before using a value returned on the standard output, the - application should test the exit code (e.g., <STRONG>$?</STRONG>, see -- <STRONG><A HREF="sh.1.html">sh(1)</A></STRONG>) to be sure it is <STRONG>0</STRONG>. (See the <STRONG>EXIT</STRONG> <STRONG>CODES</STRONG> and <STRONG>DIAG-</STRONG> -+ <STRONG>sh(1)</STRONG>) to be sure it is <STRONG>0</STRONG>. (See the <STRONG>EXIT</STRONG> <STRONG>CODES</STRONG> and <STRONG>DIAG-</STRONG> - <STRONG>NOSTICS</STRONG> sections.) For a complete list of capabilities - and the <EM>capname</EM> associated with each, see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. - -@@ -95,54 +95,53 @@ - option is unnecessary, because the default is taken - from the environment variable <STRONG>TERM</STRONG>. If <STRONG>-T</STRONG> is spec- - ified, then the shell variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> -- will be ignored,and the operating system will not -- be queried for the actual screen size. -+ will also be ignored. - - <EM>capname</EM> -- indicates the capability from the <STRONG>terminfo</STRONG> -- database. When <STRONG>termcap</STRONG> support is compiled in, the -+ indicates the capability from the <STRONG>terminfo</STRONG> data- -+ base. When <STRONG>termcap</STRONG> support is compiled in, the - <STRONG>termcap</STRONG> name for the capability is also accepted. - -- <EM>parms</EM> If the capability is a string that takes parame- -+ <EM>parms</EM> If the capability is a string that takes parame- - ters, the arguments <EM>parms</EM> will be instantiated into - the string. - -- Most parameters are numbers. Only a few terminfo -+ Most parameters are numbers. Only a few terminfo - capabilities require string parameters; <STRONG>tput</STRONG> uses a - table to decide which to pass as strings. Normally -- <STRONG>tput</STRONG> uses <STRONG>tparm</STRONG> (3x) to perform the substitution. -+ <STRONG>tput</STRONG> uses <STRONG>tparm</STRONG> (3x) to perform the substitution. - If no parameters are given for the capability, <STRONG>tput</STRONG> -- writes the string without performing the -- substitution. -+ writes the string without performing the substitu- -+ tion. - -- <STRONG>-S</STRONG> allows more than one capability per invocation of -+ <STRONG>-S</STRONG> allows more than one capability per invocation of - <STRONG>tput</STRONG>. The capabilities must be passed to <STRONG>tput</STRONG> from - the standard input instead of from the command line -- (see example). Only one <EM>capname</EM> is allowed per -- line. The <STRONG>-S</STRONG> option changes the meaning of the <STRONG>0</STRONG> -- and <STRONG>1</STRONG> boolean and string exit codes (see the EXIT -+ (see example). Only one <EM>capname</EM> is allowed per -+ line. The <STRONG>-S</STRONG> option changes the meaning of the <STRONG>0</STRONG> -+ and <STRONG>1</STRONG> boolean and string exit codes (see the EXIT - CODES section). - - Again, <STRONG>tput</STRONG> uses a table and the presence of param- -- eters in its input to decide whether to use <STRONG>tparm</STRONG> -+ eters in its input to decide whether to use <STRONG>tparm</STRONG> - (3x), and how to interpret the parameters. - -- <STRONG>-V</STRONG> reports the version of ncurses which was used in -+ <STRONG>-V</STRONG> reports the version of ncurses which was used in - this program, and exits. - -- <STRONG>init</STRONG> If the <STRONG>terminfo</STRONG> database is present and an entry -+ <STRONG>init</STRONG> If the <STRONG>terminfo</STRONG> database is present and an entry - for the user's terminal exists (see <STRONG>-T</STRONG><EM>type</EM>, above), - the following will occur: - -- (1) if present, the terminal's initialization -- strings will be output as detailed in the -- <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> section on <EM>Tabs</EM> <EM>and</EM> <EM>Initializa-</EM> -+ (1) if present, the terminal's initialization -+ strings will be output as detailed in the -+ <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> section on <EM>Tabs</EM> <EM>and</EM> <EM>Initializa-</EM> - <EM>tion</EM>, - -- (2) any delays (e.g., newline) specified in the -+ (2) any delays (e.g., newline) specified in the - entry will be set in the tty driver, - -- (3) tabs expansion will be turned on or off -+ (3) tabs expansion will be turned on or off - according to the specification in the entry, - and - -@@ -153,22 +152,22 @@ - for any of the four above activities, that activity - will silently be skipped. - -- <STRONG>reset</STRONG> Instead of putting out initialization strings, the -- terminal's reset strings will be output if present -- (<STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>, <STRONG>rf</STRONG>). If the reset strings are not -- present, but initialization strings are, the ini- -- tialization strings will be output. Otherwise, -+ <STRONG>reset</STRONG> Instead of putting out initialization strings, the -+ terminal's reset strings will be output if present -+ (<STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>, <STRONG>rf</STRONG>). If the reset strings are not -+ present, but initialization strings are, the ini- -+ tialization strings will be output. Otherwise, - <STRONG>reset</STRONG> acts identically to <STRONG>init</STRONG>. - - <STRONG>longname</STRONG> -- If the <STRONG>terminfo</STRONG> database is present and an entry -- for the user's terminal exists (see <STRONG>-T</STRONG><EM>type</EM> above), -+ If the <STRONG>terminfo</STRONG> database is present and an entry -+ for the user's terminal exists (see <STRONG>-T</STRONG><EM>type</EM> above), - then the long name of the terminal will be put out. - The long name is the last name in the first line of - the terminal's description in the <STRONG>terminfo</STRONG> database - [see <STRONG><A HREF="term.5.html">term(5)</A></STRONG>]. - -- If <STRONG>tput</STRONG> is invoked by a link named <STRONG>reset</STRONG>, this has the -+ If <STRONG>tput</STRONG> is invoked by a link named <STRONG>reset</STRONG>, this has the - same effect as <STRONG>tput</STRONG> <STRONG>reset</STRONG>. See <STRONG>tset</STRONG> for comparison, which - has similar behavior. - -@@ -177,13 +176,13 @@ - <H2>EXAMPLES</H2><PRE> - <STRONG>tput</STRONG> <STRONG>init</STRONG> - Initialize the terminal according to the type of ter- -- minal in the environmental variable <STRONG>TERM</STRONG>. This com- -- mand should be included in everyone's .profile after -+ minal in the environmental variable <STRONG>TERM</STRONG>. This com- -+ mand should be included in everyone's .profile after - the environmental variable <STRONG>TERM</STRONG> has been exported, as -- illustrated on the <STRONG><A HREF="profile.5.html">profile(5)</A></STRONG> manual page. -+ illustrated on the <STRONG>profile(5)</STRONG> manual page. - - <STRONG>tput</STRONG> <STRONG>-T5620</STRONG> <STRONG>reset</STRONG> -- Reset an AT&amp;T 5620 terminal, overriding the type of -+ Reset an AT&amp;T 5620 terminal, overriding the type of - terminal in the environmental variable <STRONG>TERM</STRONG>. - - <STRONG>tput</STRONG> <STRONG>cup</STRONG> <STRONG>0</STRONG> <STRONG>0</STRONG> -@@ -263,29 +262,29 @@ - type of <EM>capname</EM>: - - <EM>boolean</EM> -- a value of <STRONG>0</STRONG> is set for TRUE and <STRONG>1</STRONG> for FALSE. -+ a value of <STRONG>0</STRONG> is set for TRUE and <STRONG>1</STRONG> for FALSE. - -- <EM>string</EM> a value of <STRONG>0</STRONG> is set if the <EM>capname</EM> is defined -- for this terminal <EM>type</EM> (the value of <EM>capname</EM> -- is returned on standard output); a value of <STRONG>1</STRONG> -+ <EM>string</EM> a value of <STRONG>0</STRONG> is set if the <EM>capname</EM> is defined -+ for this terminal <EM>type</EM> (the value of <EM>capname</EM> -+ is returned on standard output); a value of <STRONG>1</STRONG> - is set if <EM>capname</EM> is not defined for this ter- -- minal <EM>type</EM> (nothing is written to standard -+ minal <EM>type</EM> (nothing is written to standard - output). - - <EM>integer</EM> -- a value of <STRONG>0</STRONG> is always set, whether or not -+ a value of <STRONG>0</STRONG> is always set, whether or not - <EM>capname</EM> is defined for this terminal <EM>type</EM>. To -- determine if <EM>capname</EM> is defined for this ter- -+ determine if <EM>capname</EM> is defined for this ter- - minal <EM>type</EM>, the user must test the value writ- -- ten to standard output. A value of <STRONG>-1</STRONG> means -- that <EM>capname</EM> is not defined for this terminal -+ ten to standard output. A value of <STRONG>-1</STRONG> means -+ that <EM>capname</EM> is not defined for this terminal - <EM>type</EM>. - -- <EM>other</EM> <STRONG>reset</STRONG> or <STRONG>init</STRONG> may fail to find their respec- -- tive files. In that case, the exit code is -+ <EM>other</EM> <STRONG>reset</STRONG> or <STRONG>init</STRONG> may fail to find their respec- -+ tive files. In that case, the exit code is - set to 4 + <STRONG>errno</STRONG>. - -- Any other exit code indicates an error; see the DIAGNOS- -+ Any other exit code indicates an error; see the DIAGNOS- - TICS section. - - -@@ -294,11 +293,10 @@ - <STRONG>tput</STRONG> prints the following error messages and sets the cor- - responding exit codes. - -- - exit code error message - --------------------------------------------------------------------- -- <STRONG>0</STRONG> (<EM>capname</EM> is a numeric variable that is not specified in -- the <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> database for this terminal type, e.g. -+ <STRONG>0</STRONG> (<EM>capname</EM> is a numeric variable that is not specified in -+ the <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> database for this terminal type, e.g. - <STRONG>tput</STRONG> <STRONG>-T450</STRONG> <STRONG>lines</STRONG> and <STRONG>tput</STRONG> <STRONG>-T2621</STRONG> <STRONG>xmc</STRONG>) - <STRONG>1</STRONG> no error message is printed, see the <STRONG>EXIT</STRONG> <STRONG>CODES</STRONG> section. - <STRONG>2</STRONG> usage error -@@ -310,25 +308,37 @@ - - </PRE> - <H2>PORTABILITY</H2><PRE> -- The <STRONG>longname</STRONG> and <STRONG>-S</STRONG> options, and the parameter-substitu- -- tion features used in the <STRONG>cup</STRONG> example, are not supported -+ The <STRONG>longname</STRONG> and <STRONG>-S</STRONG> options, and the parameter-substitu- -+ tion features used in the <STRONG>cup</STRONG> example, are not supported - in BSD curses or in AT&amp;T/USL curses before SVr4. - -- X/Open documents only the operands for <STRONG>clear</STRONG>, <STRONG>init</STRONG> and -- <STRONG>reset</STRONG>. In this implementation, <STRONG>clear</STRONG> is part of the <EM>cap-</EM> -+ X/Open documents only the operands for <STRONG>clear</STRONG>, <STRONG>init</STRONG> and -+ <STRONG>reset</STRONG>. In this implementation, <STRONG>clear</STRONG> is part of the <EM>cap-</EM> - <EM>name</EM> support. Other implementations of <STRONG>tput</STRONG> on SVr4-based - systems such as Solaris, IRIX64 and HPUX as well as others -- such as AIX and Tru64 provide support for <EM>capname</EM> -- operands. A few platforms such as FreeBSD and NetBSD rec- -- ognize termcap names rather than terminfo capability names -- in their respective <STRONG>tput</STRONG> commands. -+ such as AIX and Tru64 provide support for <EM>capname</EM> oper- -+ ands. -+ -+ A few platforms such as FreeBSD and NetBSD recognize term- -+ cap names rather than terminfo capability names in their -+ respective <STRONG>tput</STRONG> commands. -+ -+ Most implementations which provide support for <EM>capname</EM> op- -+ erands use the <EM>tparm</EM> function to expand parameters in it. -+ That function expects a mixture of numeric and string -+ parameters, requiring <STRONG>tput</STRONG> to know which type to use. -+ This implementation uses a table to determine that for the -+ standard <EM>capname</EM> operands, and an internal library func- -+ tion to analyze nonstandard <EM>capname</EM> operands. Other -+ implementations may simply guess that an operand contain- -+ ing only digits is intended to be a number. - - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG><A HREF="stty.1.html">stty(1)</A></STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. -+ <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>. - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - -diff -Naur ncurses-5.9/doc/html/man/tset.1.html ncurses-5.9.patch/doc/html/man/tset.1.html ---- ncurses-5.9/doc/html/man/tset.1.html 2011-04-05 00:46:52.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/man/tset.1.html 2014-09-01 16:33:22.336792090 +0200 -@@ -1,7 +1,7 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - * sale, use or other dealings in this Software without prior written * - * authorization. * - **************************************************************************** -- * @Id: tset.1,v 1.25 2010/12/04 18:38:55 tom Exp @ -+ * @Id: tset.1,v 1.28 2013/07/20 19:40:55 tom Exp @ - --> - <HTML> - <HEAD> -@@ -74,14 +74,14 @@ - tion, <EM>getty</EM> does this job by setting <STRONG>TERM</STRONG> according to the - type passed to it by <EM>/etc/inittab</EM>.) - -- 4. The default terminal type, ``unknown''. -+ 4. The default terminal type, "unknown". - - If the terminal type was not specified on the command- - line, the <STRONG>-m</STRONG> option mappings are then applied (see the - section <STRONG>TERMINAL</STRONG> <STRONG>TYPE</STRONG> <STRONG>MAPPING</STRONG> for more information). - Then, if the terminal type begins with a question mark -- (``?''), the user is prompted for confirmation of the ter- -- minal type. An empty response confirms the type, or, -+ ("?"), the user is prompted for confirmation of the termi- -+ nal type. An empty response confirms the type, or, - another type can be entered to specify a new type. Once - the terminal type has been determined, the terminfo entry - for the terminal is retrieved. If no terminfo entry is -@@ -116,8 +116,9 @@ - - The options are as follows: - -- <STRONG>-c</STRONG> Set control characters and modes. <STRONG>-e</STRONG> Set the erase -- character to <EM>ch</EM>. -+ <STRONG>-c</STRONG> Set control characters and modes. -+ -+ <STRONG>-e</STRONG> Set the erase character to <EM>ch</EM>. - - <STRONG>-I</STRONG> Do not send the terminal or tab initialization - strings to the terminal. -@@ -126,36 +127,35 @@ - - <STRONG>-k</STRONG> Set the line kill character to <EM>ch</EM>. - -- <STRONG>-m</STRONG> Specify a mapping from a port type to a terminal. -+ <STRONG>-m</STRONG> Specify a mapping from a port type to a terminal. - See the section <STRONG>TERMINAL</STRONG> <STRONG>TYPE</STRONG> <STRONG>MAPPING</STRONG> for more infor- - mation. - -- <STRONG>-Q</STRONG> Do not display any values for the erase, interrupt -+ <STRONG>-Q</STRONG> Do not display any values for the erase, interrupt - and line kill characters. Normally <STRONG>tset</STRONG> displays the -- values for control characters which differ from the -+ values for control characters which differ from the - system's default values. - -- <STRONG>-q</STRONG> The terminal type is displayed to the standard out- -- put, and the terminal is not initialized in any way. -+ <STRONG>-q</STRONG> The terminal type is displayed to the standard out- -+ put, and the terminal is not initialized in any way. - The option `-' by itself is equivalent but archaic. - - <STRONG>-r</STRONG> Print the terminal type to the standard error output. - - <STRONG>-s</STRONG> Print the sequence of shell commands to initialize - the environment variable <STRONG>TERM</STRONG> to the standard output. -- See the section <STRONG>SETTING</STRONG> <STRONG>THE</STRONG> <STRONG>ENVIRONMENT</STRONG> for details. -+ See the section <STRONG>SETTING</STRONG> <STRONG>THE</STRONG> <STRONG>ENVIRONMENT</STRONG> for details. - - <STRONG>-V</STRONG> reports the version of ncurses which was used in this - program, and exits. - -- <STRONG>-w</STRONG> Resize the window to match the size deduced via -+ <STRONG>-w</STRONG> Resize the window to match the size deduced via - <STRONG>setupterm</STRONG>. Normally this has no effect, unless - <STRONG>setupterm</STRONG> is not able to detect the window size. - - The arguments for the <STRONG>-e</STRONG>, <STRONG>-i</STRONG>, and <STRONG>-k</STRONG> options may either be -- entered as actual characters or by using the `hat' nota- -- tion, i.e., control-h may be specified as ``^H'' or -- ``^h''. -+ entered as actual characters or by using the `hat' nota- -+ tion, i.e., control-h may be specified as "^H" or "^h". - - - </PRE> -@@ -167,7 +167,7 @@ - When the <STRONG>-s</STRONG> option is specified, the commands to enter the - information into the shell's environment are written to - the standard output. If the <STRONG>SHELL</STRONG> environmental variable -- ends in ``csh'', the commands are for <STRONG>csh</STRONG>, otherwise, they -+ ends in "csh", the commands are for <STRONG>csh</STRONG>, otherwise, they - are for <STRONG>sh</STRONG>. Note, the <STRONG>csh</STRONG> commands set and unset the - shell variable <STRONG>noglob</STRONG>, leaving it unset. The following - line in the <STRONG>.login</STRONG> or <STRONG>.profile</STRONG> files will initialize the -@@ -187,21 +187,21 @@ - terminal used on such ports. - - The purpose of the <STRONG>-m</STRONG> option is to map from some set of -- conditions to a terminal type, that is, to tell <STRONG>tset</STRONG> ``If -+ conditions to a terminal type, that is, to tell <STRONG>tset</STRONG> "If - I'm on this port at a particular speed, guess that I'm on -- that kind of terminal''. -+ that kind of terminal". - - The argument to the <STRONG>-m</STRONG> option consists of an optional port - type, an optional operator, an optional baud rate specifi- -- cation, an optional colon (``:'') character and a terminal -+ cation, an optional colon (":") character and a terminal - type. The port type is a string (delimited by either the - operator or the colon character). The operator may be any -- combination of ``&gt;'', ``&lt;'', ``@'', and ``!''; ``&gt;'' means -- greater than, ``&lt;'' means less than, ``@'' means equal to -- and ``!'' inverts the sense of the test. The baud rate is -- specified as a number and is compared with the speed of -- the standard error output (which should be the control -- terminal). The terminal type is a string. -+ combination of "&gt;", "&lt;", "@", and "!"; "&gt;" means greater -+ than, "&lt;" means less than, "@" means equal to and "!" -+ inverts the sense of the test. The baud rate is specified -+ as a number and is compared with the speed of the standard -+ error output (which should be the control terminal). The -+ terminal type is a string. - - If the terminal type is not specified on the command line, - the <STRONG>-m</STRONG> mappings are applied to the terminal type. If the -@@ -232,8 +232,8 @@ - argument. Also, to avoid problems with meta-characters, - it is suggested that the entire <STRONG>-m</STRONG> option argument be - placed within single quote characters, and that <STRONG>csh</STRONG> users -- insert a backslash character (``\'') before any exclama- -- tion marks (``!''). -+ insert a backslash character ("\") before any exclamation -+ marks ("!"). - - - </PRE> -@@ -248,14 +248,14 @@ - <H2>COMPATIBILITY</H2><PRE> - The <STRONG>tset</STRONG> utility has been provided for backward-compati- - bility with BSD environments (under most modern UNIXes, -- <STRONG>/etc/inittab</STRONG> and <STRONG><A HREF="getty.1.html">getty(1)</A></STRONG> can set <STRONG>TERM</STRONG> appropriately for -+ <STRONG>/etc/inittab</STRONG> and <STRONG>getty(1)</STRONG> can set <STRONG>TERM</STRONG> appropriately for - each dial-up line; this obviates what was <STRONG>tset</STRONG>'s most - important use). This implementation behaves like 4.4BSD - tset, with a few exceptions specified here. - - The <STRONG>-S</STRONG> option of BSD tset no longer works; it prints an - error message to stderr and dies. The <STRONG>-s</STRONG> option only sets -- <STRONG>TERM</STRONG>, not <STRONG>TERMCAP</STRONG>. Both these changes are because the -+ <STRONG>TERM</STRONG>, not <STRONG>TERMCAP</STRONG>. Both of these changes are because the - <STRONG>TERMCAP</STRONG> variable is no longer supported under terminfo- - based <STRONG>ncurses</STRONG>, which makes <STRONG>tset</STRONG> <STRONG>-S</STRONG> useless (we made it die - noisily rather than silently induce lossage). -@@ -316,10 +316,10 @@ - - </PRE> - <H2>SEE ALSO</H2><PRE> -- <STRONG><A HREF="csh.1.html">csh(1)</A></STRONG>, <STRONG><A HREF="sh.1.html">sh(1)</A></STRONG>, <STRONG><A HREF="stty.1.html">stty(1)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG><A HREF="tty.4.html">tty(4)</A></STRONG>, ter- -- <STRONG><A HREF="minfo.5.html">minfo(5)</A></STRONG>, <STRONG><A HREF="ttys.5.html">ttys(5)</A></STRONG>, <STRONG><A HREF="environ.7.html">environ(7)</A></STRONG> -+ <STRONG>csh(1)</STRONG>, <STRONG>sh(1)</STRONG>, <STRONG>stty(1)</STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG>tty(4)</STRONG>, -+ <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG>ttys(5)</STRONG>, <STRONG>environ(7)</STRONG> - -- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404). -+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221). - - - -diff -Naur ncurses-5.9/doc/html/man/wresize.3x.html ncurses-5.9.patch/doc/html/man/wresize.3x.html ---- ncurses-5.9/doc/html/man/wresize.3x.html 2011-01-09 02:03:30.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/man/wresize.3x.html 2014-09-01 16:33:22.336792090 +0200 -@@ -1,4 +1,4 @@ --<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- - **************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -diff -Naur ncurses-5.9/doc/html/ncurses-intro.html ncurses-5.9.patch/doc/html/ncurses-intro.html ---- ncurses-5.9/doc/html/ncurses-intro.html 2010-12-04 17:46:22.000000000 +0100 -+++ ncurses-5.9.patch/doc/html/ncurses-intro.html 2014-09-01 16:33:22.336792090 +0200 -@@ -1,8 +1,8 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> - <!-- -- $Id: ncurses-intro.html,v 1.44 2010/12/04 16:46:22 tom Exp $ -+ $Id: ncurses-intro.html,v 1.46 2013/05/17 23:29:27 tom Exp $ - **************************************************************************** -- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -431,6 +431,7 @@ - Here is a sample program to motivate the discussion: - - <PRE> -+#include &lt;stdlib.h&gt; - #include &lt;curses.h&gt; - #include &lt;signal.h&gt; - -diff -Naur ncurses-5.9/doc/html/NCURSES-Programming-HOWTO.html ncurses-5.9.patch/doc/html/NCURSES-Programming-HOWTO.html ---- ncurses-5.9/doc/html/NCURSES-Programming-HOWTO.html 2005-06-21 23:50:00.000000000 +0200 -+++ ncurses-5.9.patch/doc/html/NCURSES-Programming-HOWTO.html 2014-09-01 16:33:22.266791973 +0200 -@@ -1,516 +1,1282 @@ --<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> --<html> --<head> --<meta name="generator" content= --"HTML Tidy for Linux/x86 (vers 1st December 2004), see www.w3.org"> --<title>NCURSES Programming HOWTO</title> --<meta name="GENERATOR" content= --"Modular DocBook HTML Stylesheet Version 1.7"> --</head> --<body class="ARTICLE" bgcolor="#FFFFFF" text="#000000" link= --"#0000FF" vlink="#840084" alink="#0000FF"> --<div class="ARTICLE"> --<div class="TITLEPAGE"> --<h1 class="TITLE"><a name="AEN2" id="AEN2">NCURSES Programming --HOWTO</a></h1> --<h3 class="AUTHOR"><a name="AEN4" id="AEN4">Pradeep Padala</a></h3> --<div class="AFFILIATION"> --<div class="ADDRESS"> --<p class="ADDRESS"><code class="EMAIL">&lt;<a href= --"mailto:ppadala@gmail.com">ppadala@gmail.com</a>&gt;</code></p> --</div> --</div> --<p class="PUBDATE">v1.9, 2005-06-20<br></p> --<div class="REVHISTORY"> --<table width="100%" border="0"> --<tr> --<th align="left" valign="top" colspan="3"><b>Revision --History</b></th> --</tr> --<tr> --<td align="left">Revision 1.9</td> --<td align="left">2005-06-20</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">The license has been changed to the --MIT-style license used by NCURSES. Note that the programs are also --re-licensed under this.</td> --</tr> --<tr> --<td align="left">Revision 1.8</td> --<td align="left">2005-06-17</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">Lots of updates. Added references and --perl examples. Changes to examples. Many grammatical and stylistic --changes to the content. Changes to NCURSES history.</td> --</tr> --<tr> --<td align="left">Revision 1.7.1</td> --<td align="left">2002-06-25</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">Added a README file for building and --instructions for building from source.</td> --</tr> --<tr> --<td align="left">Revision 1.7</td> --<td align="left">2002-06-25</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">Added "Other formats" section and made --a lot of fancy changes to the programs. Inlining of programs is --gone.</td> --</tr> --<tr> --<td align="left">Revision 1.6.1</td> --<td align="left">2002-02-24</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">Removed the old Changelog section, --cleaned the makefiles</td> --</tr> --<tr> --<td align="left">Revision 1.6</td> --<td align="left">2002-02-16</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">Corrected a lot of spelling mistakes, --added ACS variables section</td> --</tr> --<tr> --<td align="left">Revision 1.5</td> --<td align="left">2002-01-05</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">Changed structure to present proper --TOC</td> --</tr> --<tr> --<td align="left">Revision 1.3.1</td> --<td align="left">2001-07-26</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">Corrected maintainers paragraph, --Corrected stable release number</td> --</tr> --<tr> --<td align="left">Revision 1.3</td> --<td align="left">2001-07-24</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">Added copyright notices to main --document (LDP license) and programs (GPL), Corrected --printw_example.</td> --</tr> --<tr> --<td align="left">Revision 1.2</td> --<td align="left">2001-06-05</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">Incorporated ravi's changes. Mainly to --introduction, menu, form, justforfun sections</td> --</tr> --<tr> --<td align="left">Revision 1.1</td> --<td align="left">2001-05-22</td> --<td align="left">Revised by: ppadala</td> --</tr> --<tr> --<td align="left" colspan="3">Added "a word about window" section, --Added scanw_example.</td> --</tr> --</table> --</div> --<div> --<div class="ABSTRACT"><a name="AEN67" id="AEN67"></a> --<p><em>This document is intended to be an "All in One" guide for --programming with ncurses and its sister libraries. We graduate from --a simple "Hello World" program to more complex form manipulation. --No prior experience in ncurses is assumed. Send comments to --<a href="mailto:ppadala@gmail.com" target="_top">this --address</a></em></p> --</div> --</div> --<hr></div> --<div class="TOC"> --<dl> --<dt><b>Table of Contents</b></dt> --<dt>1. <a href="#INTRO">Introduction</a></dt> --<dd> --<dl> --<dt>1.1. <a href="#WHATIS">What is NCURSES?</a></dt> --<dt>1.2. <a href="#WHATCANWEDO">What we can do with --NCURSES</a></dt> --<dt>1.3. <a href="#WHERETOGETIT">Where to get it</a></dt> --<dt>1.4. <a href="#PURPOSE">Purpose/Scope of the document</a></dt> --<dt>1.5. <a href="#ABOUTPROGRAMS">About the Programs</a></dt> --<dt>1.6. <a href="#OTHERFORMATS">Other Formats of the --document</a></dt> --<dt>1.7. <a href="#CREDITS">Credits</a></dt> --<dt>1.8. <a href="#WISHLIST">Wish List</a></dt> --<dt>1.9. <a href="#COPYRIGHT">Copyright</a></dt> --</dl> --</dd> --<dt>2. <a href="#HELLOWORLD">Hello World !!!</a></dt> --<dd> --<dl> --<dt>2.1. <a href="#COMPILECURSES">Compiling With the NCURSES --Library</a></dt> --<dt>2.2. <a href="#DISSECTION">Dissection</a></dt> --</dl> --</dd> --<dt>3. <a href="#GORY">The Gory Details</a></dt> --<dt>4. <a href="#INIT">Initialization</a></dt> --<dd> --<dl> --<dt>4.1. <a href="#ABOUTINIT">Initialization functions</a></dt> --<dt>4.2. <a href="#RAWCBREAK">raw() and cbreak()</a></dt> --<dt>4.3. <a href="#ECHONOECHO">echo() and noecho()</a></dt> --<dt>4.4. <a href="#KEYPAD">keypad()</a></dt> --<dt>4.5. <a href="#HALFDELAY">halfdelay()</a></dt> --<dt>4.6. <a href="#MISCINIT">Miscellaneous Initialization --functions</a></dt> --<dt>4.7. <a href="#INITEX">An Example</a></dt> --</dl> --</dd> --<dt>5. <a href="#AWORDWINDOWS">A Word about Windows</a></dt> --<dt>6. <a href="#PRINTW">Output functions</a></dt> --<dd> --<dl> --<dt>6.1. <a href="#ADDCHCLASS">addch() class of functions</a></dt> --<dt>6.2. <a href="#AEN298">mvaddch(), waddch() and --mvwaddch()</a></dt> --<dt>6.3. <a href="#PRINTWCLASS">printw() class of --functions</a></dt> --<dt>6.4. <a href="#ADDSTRCLASS">addstr() class of --functions</a></dt> --<dt>6.5. <a href="#ACAUTION">A word of caution</a></dt> --</dl> --</dd> --<dt>7. <a href="#SCANW">Input functions</a></dt> --<dd> --<dl> --<dt>7.1. <a href="#GETCHCLASS">getch() class of functions</a></dt> --<dt>7.2. <a href="#SCANWCLASS">scanw() class of functions</a></dt> --<dt>7.3. <a href="#GETSTRCLASS">getstr() class of --functions</a></dt> --<dt>7.4. <a href="#GETSTREX">Some examples</a></dt> --</dl> --</dd> --<dt>8. <a href="#ATTRIB">Attributes</a></dt> --<dd> --<dl> --<dt>8.1. <a href="#ATTRIBDETAILS">The details</a></dt> --<dt>8.2. <a href="#ATTRONVSATTRSET">attron() vs attrset()</a></dt> --<dt>8.3. <a href="#ATTR_GET">attr_get()</a></dt> --<dt>8.4. <a href="#ATTR_FUNCS">attr_ functions</a></dt> --<dt>8.5. <a href="#WATTRFUNCS">wattr functions</a></dt> --<dt>8.6. <a href="#CHGAT">chgat() functions</a></dt> --</dl> --</dd> --<dt>9. <a href="#WINDOWS">Windows</a></dt> --<dd> --<dl> --<dt>9.1. <a href="#WINDOWBASICS">The basics</a></dt> --<dt>9.2. <a href="#LETBEWINDOW">Let there be a Window !!!</a></dt> --<dt>9.3. <a href="#BORDEREXEXPL">Explanation</a></dt> --<dt>9.4. <a href="#OTHERSTUFF">The other stuff in the --example</a></dt> --<dt>9.5. <a href="#OTHERBORDERFUNCS">Other Border --functions</a></dt> --</dl> --</dd> --<dt>10. <a href="#COLOR">Colors</a></dt> --<dd> --<dl> --<dt>10.1. <a href="#COLORBASICS">The basics</a></dt> --<dt>10.2. <a href="#CHANGECOLORDEFS">Changing Color --Definitions</a></dt> --<dt>10.3. <a href="#COLORCONTENT">Color Content</a></dt> --</dl> --</dd> --<dt>11. <a href="#KEYS">Interfacing with the key board</a></dt> --<dd> --<dl> --<dt>11.1. <a href="#KEYSBASICS">The Basics</a></dt> --<dt>11.2. <a href="#SIMPLEKEYEX">A Simple Key Usage --example</a></dt> --</dl> --</dd> --<dt>12. <a href="#MOUSE">Interfacing with the mouse</a></dt> --<dd> --<dl> --<dt>12.1. <a href="#MOUSEBASICS">The Basics</a></dt> --<dt>12.2. <a href="#GETTINGEVENTS">Getting the events</a></dt> --<dt>12.3. <a href="#MOUSETOGETHER">Putting it all Together</a></dt> --<dt>12.4. <a href="#MISCMOUSEFUNCS">Miscellaneous --Functions</a></dt> --</dl> --</dd> --<dt>13. <a href="#SCREEN">Screen Manipulation</a></dt> --<dd> --<dl> --<dt>13.1. <a href="#GETYX">getyx() functions</a></dt> --<dt>13.2. <a href="#SCREENDUMP">Screen Dumping</a></dt> --<dt>13.3. <a href="#WINDOWDUMP">Window Dumping</a></dt> --</dl> --</dd> --<dt>14. <a href="#MISC">Miscellaneous features</a></dt> --<dd> --<dl> --<dt>14.1. <a href="#CURSSET">curs_set()</a></dt> --<dt>14.2. <a href="#TEMPLEAVE">Temporarily Leaving Curses --mode</a></dt> --<dt>14.3. <a href="#ACSVARS">ACS_ variables</a></dt> --</dl> --</dd> --<dt>15. <a href="#OTHERLIB">Other libraries</a></dt> --<dt>16. <a href="#PANELS">Panel Library</a></dt> --<dd> --<dl> --<dt>16.1. <a href="#PANELBASICS">The Basics</a></dt> --<dt>16.2. <a href="#COMPILEPANELS">Compiling With the Panels --Library</a></dt> --<dt>16.3. <a href="#PANELBROWSING">Panel Window Browsing</a></dt> --<dt>16.4. <a href="#USERPTRUSING">Using User Pointers</a></dt> --<dt>16.5. <a href="#PANELMOVERESIZE">Moving and Resizing --Panels</a></dt> --<dt>16.6. <a href="#PANELSHOWHIDE">Hiding and Showing --Panels</a></dt> --<dt>16.7. <a href="#PANELABOVE">panel_above() and panel_below() --Functions</a></dt> --</dl> --</dd> --<dt>17. <a href="#MENUS">Menus Library</a></dt> --<dd> --<dl> --<dt>17.1. <a href="#MENUBASICS">The Basics</a></dt> --<dt>17.2. <a href="#COMPILEMENUS">Compiling With the Menu --Library</a></dt> --<dt>17.3. <a href="#MENUDRIVER">Menu Driver: The work horse of the --menu system</a></dt> --<dt>17.4. <a href="#MENUWINDOWS">Menu Windows</a></dt> --<dt>17.5. <a href="#SCROLLMENUS">Scrolling Menus</a></dt> --<dt>17.6. <a href="#MULTICOLUMN">Multi Columnar Menus</a></dt> --<dt>17.7. <a href="#MULTIVALUEMENUS">Multi Valued Menus</a></dt> --<dt>17.8. <a href="#MENUOPT">Menu Options</a></dt> --<dt>17.9. <a href="#MENUUSERPTR">The useful User Pointer</a></dt> --</dl> --</dd> --<dt>18. <a href="#FORMS">Forms Library</a></dt> --<dd> --<dl> --<dt>18.1. <a href="#FORMBASICS">The Basics</a></dt> --<dt>18.2. <a href="#COMPILEFORMS">Compiling With the Forms --Library</a></dt> --<dt>18.3. <a href="#PLAYFIELDS">Playing with Fields</a></dt> --<dt>18.4. <a href="#FORMWINDOWS">Form Windows</a></dt> --<dt>18.5. <a href="#FILEDVALIDATE">Field Validation</a></dt> --<dt>18.6. <a href="#FORMDRIVER">Form Driver: The work horse of the --forms system</a></dt> --</dl> --</dd> --<dt>19. <a href="#TOOLS">Tools and Widget Libraries</a></dt> --<dd> --<dl> --<dt>19.1. <a href="#CDK">CDK (Curses Development Kit)</a></dt> --<dt>19.2. <a href="#DIALOG">The dialog</a></dt> --<dt>19.3. <a href="#PERLCURSES">Perl Curses Modules CURSES::FORM --and CURSES::WIDGETS</a></dt> --</dl> --</dd> --<dt>20. <a href="#JUSTFORFUN">Just For Fun !!!</a></dt> --<dd> --<dl> --<dt>20.1. <a href="#GAMEOFLIFE">The Game of Life</a></dt> --<dt>20.2. <a href="#MAGIC">Magic Square</a></dt> --<dt>20.3. <a href="#HANOI">Towers of Hanoi</a></dt> --<dt>20.4. <a href="#QUEENS">Queens Puzzle</a></dt> --<dt>20.5. <a href="#SHUFFLE">Shuffle</a></dt> --<dt>20.6. <a href="#TT">Typing Tutor</a></dt> --</dl> --</dd> --<dt>21. <a href="#REF">References</a></dt> --</dl> --</div> --<div class="SECT1"> --<h2 class="SECT1"><a name="INTRO" id="INTRO">1. --Introduction</a></h2> --<p>In the olden days of teletype terminals, terminals were away --from computers and were connected to them through serial cables. --The terminals could be configured by sending a series of bytes. All --the capabilities (such as moving the cursor to a new location, --erasing part of the screen, scrolling the screen, changing modes --etc.) of terminals could be accessed through these series of bytes. --These control seeuqnces are usually called escape sequences, --because they start with an escape(0x1B) character. Even today, with --proper emulation, we can send escape sequences to the emulator and --achieve the same effect on a terminal window.</p> --<p>Suppose you wanted to print a line in color. Try typing this on --your console.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000">echo "^[[0;31;40mIn Color"</font> --</pre></td> --</tr> --</table> --<p>The first character is an escape character, which looks like two --characters ^ and [. To be able to print it, you have to press --CTRL+V and then the ESC key. All the others are normal printable --characters. You should be able to see the string "In Color" in red. --It stays that way and to revert back to the original mode type --this.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000">echo "^[[0;37;40m"</font> --</pre></td> --</tr> --</table> --<p>Now, what do these magic characters mean? Difficult to --comprehend? They might even be different for different terminals. --So the designers of UNIX invented a mechanism named <var class= --"LITERAL">termcap</var>. It is a file that lists all the --capabilities of a particular terminal, along with the escape --sequences needed to achieve a particular effect. In the later --years, this was replaced by <var class="LITERAL">terminfo</var>. --Without delving too much into details, this mechanism allows --application programs to query the terminfo database and obtain the --control characters to be sent to a terminal or terminal --emulator.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="WHATIS" id="WHATIS">1.1. What is --NCURSES?</a></h3> --<p>You might be wondering, what the import of all this technical --gibberish is. In the above scenario, every application program is --supposed to query the terminfo and perform the necessary stuff --(sending control characters etc.). It soon became difficult to --manage this complexity and this gave birth to 'CURSES'. Curses is a --pun on the name "cursor optimization". The Curses library forms a --wrapper over working with raw terminal codes, and provides highly --flexible and efficient API (Application Programming Interface). It --provides functions to move the cursor, create windows, produce --colors, play with mouse etc. The application programs need not --worry about the underlying terminal capabilities.</p> --<p>So what is NCURSES? NCURSES is a clone of the original System V --Release 4.0 (SVr4) curses. It is a freely distributable library, --fully compatible with older version of curses. In short, it is a --library of functions that manages an application's display on --character-cell terminals. In the remainder of the document, the --terms curses and ncurses are used interchangeably.</p> --<p>A detailed history of NCURSES can be found in the NEWS file from --the source distribution. The current package is maintained by --<a href="mailto:dickey@his.com" target="_top">Thomas Dickey</a>. --You can contact the maintainers at <a href= --"mailto:bug-ncurses@gnu.org" target= --"_top">bug-ncurses@gnu.org</a>.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="WHATCANWEDO" id="WHATCANWEDO">1.2. What --we can do with NCURSES</a></h3> --<p>NCURSES not only creates a wrapper over terminal capabilities, --but also gives a robust framework to create nice looking UI (User --Interface)s in text mode. It provides functions to create windows --etc. Its sister libraries panel, menu and form provide an extension --to the basic curses library. These libraries usually come along --with curses. One can create applications that contain multiple --windows, menus, panels and forms. Windows can be managed --independently, can provide 'scrollability' and even can be --hidden.</p> --<p>Menus provide the user with an easy command selection option. --Forms allow the creation of easy-to-use data entry and display --windows. Panels extend the capabilities of ncurses to deal with --overlapping and stacked windows.</p> --<p>These are just some of the basic things we can do with ncurses. --As we move along, We will see all the capabilities of these --libraries.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="WHERETOGETIT" id="WHERETOGETIT">1.3. --Where to get it</a></h3> --<p>All right, now that you know what you can do with ncurses, you --must be rearing to get started. NCURSES is usually shipped with --your installation. In case you don't have the library or want to --compile it on your own, read on.</p> --<p><em>Compiling the package</em></p> --<p>NCURSES can be obtained from <a href= --"ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses.tar.gz" target= --"_top">ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses.tar.gz</a> or any --of the ftp sites mentioned in <a href= --"http://www.gnu.org/order/ftp.html" target= --"_top">http://www.gnu.org/order/ftp.html</a>.</p> --<p>Read the README and INSTALL files for details on to how to --install it. It usually involves the following operations.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000"> tar zxvf ncurses&lt;version&gt;.tar.gz # unzip and untar the archive -+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"> -+<HTML -+><HEAD -+><TITLE -+> NCURSES Programming HOWTO </TITLE -+><META -+NAME="GENERATOR" -+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"></HEAD -+><BODY -+CLASS="ARTICLE" -+BGCOLOR="#FFFFFF" -+TEXT="#000000" -+LINK="#0000FF" -+VLINK="#840084" -+ALINK="#0000FF" -+><DIV -+CLASS="ARTICLE" -+><DIV -+CLASS="TITLEPAGE" -+><H1 -+CLASS="TITLE" -+><A -+NAME="AEN2" -+>NCURSES Programming HOWTO</A -+></H1 -+><H3 -+CLASS="AUTHOR" -+><A -+NAME="AEN4" -+> Pradeep Padala </A -+></H3 -+><DIV -+CLASS="AFFILIATION" -+><DIV -+CLASS="ADDRESS" -+><P -+CLASS="ADDRESS" -+><CODE -+CLASS="EMAIL" -+>&#60;<A -+HREF="mailto:ppadala@gmail.com" -+>ppadala@gmail.com</A -+>&#62;</CODE -+></P -+></DIV -+></DIV -+><P -+CLASS="PUBDATE" -+>v1.9, 2005-06-20<BR></P -+><DIV -+CLASS="REVHISTORY" -+><TABLE -+WIDTH="100%" -+BORDER="0" -+><TR -+><TH -+ALIGN="LEFT" -+VALIGN="TOP" -+COLSPAN="3" -+><B -+>Revision History</B -+></TH -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.9</TD -+><TD -+ALIGN="LEFT" -+>2005-06-20</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>The license has been changed to the MIT-style license used -+ by NCURSES. Note that the programs are also re-licensed under this.</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.8</TD -+><TD -+ALIGN="LEFT" -+>2005-06-17</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>Lots of updates. Added references and perl examples. -+ Changes to examples. Many grammatical and stylistic changes to the -+ content. Changes to NCURSES history.</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.7.1</TD -+><TD -+ALIGN="LEFT" -+>2002-06-25</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>Added a README file for building and instructions -+ for building from source.</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.7</TD -+><TD -+ALIGN="LEFT" -+>2002-06-25</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>Added "Other formats" section and made a lot of fancy -+ changes to the programs. Inlining of programs is gone.</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.6.1</TD -+><TD -+ALIGN="LEFT" -+>2002-02-24</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>Removed the old Changelog section, cleaned the makefiles</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.6</TD -+><TD -+ALIGN="LEFT" -+>2002-02-16</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>Corrected a lot of spelling mistakes, added ACS variables -+ section</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.5</TD -+><TD -+ALIGN="LEFT" -+>2002-01-05</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>Changed structure to present proper TOC</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.3.1</TD -+><TD -+ALIGN="LEFT" -+>2001-07-26</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>Corrected maintainers paragraph, Corrected stable release number</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.3</TD -+><TD -+ALIGN="LEFT" -+>2001-07-24</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>Added copyright notices to main document (LDP license) -+ and programs (GPL), Corrected -+ printw_example.</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.2</TD -+><TD -+ALIGN="LEFT" -+>2001-06-05</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>Incorporated ravi's changes. Mainly to introduction, menu, -+ form, justforfun sections</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+>Revision 1.1</TD -+><TD -+ALIGN="LEFT" -+>2001-05-22</TD -+><TD -+ALIGN="LEFT" -+>Revised by: ppadala</TD -+></TR -+><TR -+><TD -+ALIGN="LEFT" -+COLSPAN="3" -+>Added "a word about window" section, Added scanw_example.</TD -+></TR -+></TABLE -+></DIV -+><DIV -+><DIV -+CLASS="ABSTRACT" -+><P -+></P -+><A -+NAME="AEN67" -+></A -+><P -+> <SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>This document is intended to be an "All in One" guide for programming with -+ncurses and its sister libraries. We graduate from a simple "Hello World" -+program to more complex form manipulation. No prior experience in ncurses is -+assumed. Send comments to <A -+HREF="mailto:ppadala@gmail.com" -+TARGET="_top" -+>this address</A -+> -+ </I -+></SPAN -+> -+ </P -+><P -+></P -+></DIV -+></DIV -+><HR></DIV -+><DIV -+CLASS="TOC" -+><DL -+><DT -+><B -+>Table of Contents</B -+></DT -+><DT -+>1. <A -+HREF="#INTRO" -+>Introduction</A -+></DT -+><DD -+><DL -+><DT -+>1.1. <A -+HREF="#WHATIS" -+>What is NCURSES?</A -+></DT -+><DT -+>1.2. <A -+HREF="#WHATCANWEDO" -+>What we can do with NCURSES</A -+></DT -+><DT -+>1.3. <A -+HREF="#WHERETOGETIT" -+>Where to get it</A -+></DT -+><DT -+>1.4. <A -+HREF="#PURPOSE" -+>Purpose/Scope of the document</A -+></DT -+><DT -+>1.5. <A -+HREF="#ABOUTPROGRAMS" -+>About the Programs</A -+></DT -+><DT -+>1.6. <A -+HREF="#OTHERFORMATS" -+>Other Formats of the document</A -+></DT -+><DD -+><DL -+><DT -+>1.6.1. <A -+HREF="#LISTFORMATS" -+>Readily available formats from tldp.org</A -+></DT -+><DT -+>1.6.2. <A -+HREF="#BUILDSOURCE" -+>Building from source</A -+></DT -+></DL -+></DD -+><DT -+>1.7. <A -+HREF="#CREDITS" -+>Credits</A -+></DT -+><DT -+>1.8. <A -+HREF="#WISHLIST" -+>Wish List</A -+></DT -+><DT -+>1.9. <A -+HREF="#COPYRIGHT" -+>Copyright</A -+></DT -+></DL -+></DD -+><DT -+>2. <A -+HREF="#HELLOWORLD" -+>Hello World !!!</A -+></DT -+><DD -+><DL -+><DT -+>2.1. <A -+HREF="#COMPILECURSES" -+>Compiling With the NCURSES Library</A -+></DT -+><DT -+>2.2. <A -+HREF="#DISSECTION" -+>Dissection</A -+></DT -+><DD -+><DL -+><DT -+>2.2.1. <A -+HREF="#ABOUT-INITSCR" -+>About initscr()</A -+></DT -+><DT -+>2.2.2. <A -+HREF="#MYST-REFRESH" -+>The mysterious refresh()</A -+></DT -+><DT -+>2.2.3. <A -+HREF="#ABOUT-ENDWIN" -+>About endwin()</A -+></DT -+></DL -+></DD -+></DL -+></DD -+><DT -+>3. <A -+HREF="#GORY" -+>The Gory Details</A -+></DT -+><DT -+>4. <A -+HREF="#INIT" -+>Initialization</A -+></DT -+><DD -+><DL -+><DT -+>4.1. <A -+HREF="#ABOUTINIT" -+>Initialization functions</A -+></DT -+><DT -+>4.2. <A -+HREF="#RAWCBREAK" -+>raw() and cbreak()</A -+></DT -+><DT -+>4.3. <A -+HREF="#ECHONOECHO" -+>echo() and noecho()</A -+></DT -+><DT -+>4.4. <A -+HREF="#KEYPAD" -+>keypad()</A -+></DT -+><DT -+>4.5. <A -+HREF="#HALFDELAY" -+>halfdelay()</A -+></DT -+><DT -+>4.6. <A -+HREF="#MISCINIT" -+>Miscellaneous Initialization functions</A -+></DT -+><DT -+>4.7. <A -+HREF="#INITEX" -+>An Example</A -+></DT -+></DL -+></DD -+><DT -+>5. <A -+HREF="#AWORDWINDOWS" -+>A Word about Windows</A -+></DT -+><DT -+>6. <A -+HREF="#PRINTW" -+>Output functions</A -+></DT -+><DD -+><DL -+><DT -+>6.1. <A -+HREF="#ADDCHCLASS" -+>addch() class of functions</A -+></DT -+><DT -+>6.2. <A -+HREF="#AEN298" -+>mvaddch(), waddch() and mvwaddch()</A -+></DT -+><DT -+>6.3. <A -+HREF="#PRINTWCLASS" -+>printw() class of functions</A -+></DT -+><DD -+><DL -+><DT -+>6.3.1. <A -+HREF="#PRINTWMVPRINTW" -+>printw() and mvprintw</A -+></DT -+><DT -+>6.3.2. <A -+HREF="#WPRINTWMVWPRINTW" -+>wprintw() and mvwprintw</A -+></DT -+><DT -+>6.3.3. <A -+HREF="#VWPRINTW" -+>vwprintw()</A -+></DT -+><DT -+>6.3.4. <A -+HREF="#SIMPLEPRINTWEX" -+>A Simple printw example</A -+></DT -+></DL -+></DD -+><DT -+>6.4. <A -+HREF="#ADDSTRCLASS" -+>addstr() class of functions</A -+></DT -+><DT -+>6.5. <A -+HREF="#ACAUTION" -+>A word of caution</A -+></DT -+></DL -+></DD -+><DT -+>7. <A -+HREF="#SCANW" -+>Input functions</A -+></DT -+><DD -+><DL -+><DT -+>7.1. <A -+HREF="#GETCHCLASS" -+>getch() class of functions</A -+></DT -+><DT -+>7.2. <A -+HREF="#SCANWCLASS" -+>scanw() class of functions</A -+></DT -+><DD -+><DL -+><DT -+>7.2.1. <A -+HREF="#SCANWMVSCANW" -+>scanw() and mvscanw</A -+></DT -+><DT -+>7.2.2. <A -+HREF="#WSCANWMVWSCANW" -+>wscanw() and mvwscanw()</A -+></DT -+><DT -+>7.2.3. <A -+HREF="#VWSCANW" -+>vwscanw()</A -+></DT -+></DL -+></DD -+><DT -+>7.3. <A -+HREF="#GETSTRCLASS" -+>getstr() class of functions</A -+></DT -+><DT -+>7.4. <A -+HREF="#GETSTREX" -+>Some examples</A -+></DT -+></DL -+></DD -+><DT -+>8. <A -+HREF="#ATTRIB" -+>Attributes</A -+></DT -+><DD -+><DL -+><DT -+>8.1. <A -+HREF="#ATTRIBDETAILS" -+>The details</A -+></DT -+><DT -+>8.2. <A -+HREF="#ATTRONVSATTRSET" -+>attron() vs attrset()</A -+></DT -+><DT -+>8.3. <A -+HREF="#ATTR_GET" -+>attr_get()</A -+></DT -+><DT -+>8.4. <A -+HREF="#ATTR_FUNCS" -+>attr_ functions</A -+></DT -+><DT -+>8.5. <A -+HREF="#WATTRFUNCS" -+>wattr functions</A -+></DT -+><DT -+>8.6. <A -+HREF="#CHGAT" -+>chgat() functions</A -+></DT -+></DL -+></DD -+><DT -+>9. <A -+HREF="#WINDOWS" -+>Windows</A -+></DT -+><DD -+><DL -+><DT -+>9.1. <A -+HREF="#WINDOWBASICS" -+>The basics</A -+></DT -+><DT -+>9.2. <A -+HREF="#LETBEWINDOW" -+>Let there be a Window !!!</A -+></DT -+><DT -+>9.3. <A -+HREF="#BORDEREXEXPL" -+>Explanation</A -+></DT -+><DT -+>9.4. <A -+HREF="#OTHERSTUFF" -+>The other stuff in the example</A -+></DT -+><DT -+>9.5. <A -+HREF="#OTHERBORDERFUNCS" -+>Other Border functions</A -+></DT -+></DL -+></DD -+><DT -+>10. <A -+HREF="#COLOR" -+>Colors</A -+></DT -+><DD -+><DL -+><DT -+>10.1. <A -+HREF="#COLORBASICS" -+>The basics</A -+></DT -+><DT -+>10.2. <A -+HREF="#CHANGECOLORDEFS" -+>Changing Color Definitions</A -+></DT -+><DT -+>10.3. <A -+HREF="#COLORCONTENT" -+>Color Content</A -+></DT -+></DL -+></DD -+><DT -+>11. <A -+HREF="#KEYS" -+>Interfacing with the key board</A -+></DT -+><DD -+><DL -+><DT -+>11.1. <A -+HREF="#KEYSBASICS" -+>The Basics</A -+></DT -+><DT -+>11.2. <A -+HREF="#SIMPLEKEYEX" -+>A Simple Key Usage example</A -+></DT -+></DL -+></DD -+><DT -+>12. <A -+HREF="#MOUSE" -+>Interfacing with the mouse</A -+></DT -+><DD -+><DL -+><DT -+>12.1. <A -+HREF="#MOUSEBASICS" -+>The Basics</A -+></DT -+><DT -+>12.2. <A -+HREF="#GETTINGEVENTS" -+>Getting the events</A -+></DT -+><DT -+>12.3. <A -+HREF="#MOUSETOGETHER" -+>Putting it all Together</A -+></DT -+><DT -+>12.4. <A -+HREF="#MISCMOUSEFUNCS" -+>Miscellaneous Functions</A -+></DT -+></DL -+></DD -+><DT -+>13. <A -+HREF="#SCREEN" -+>Screen Manipulation</A -+></DT -+><DD -+><DL -+><DT -+>13.1. <A -+HREF="#GETYX" -+>getyx() functions</A -+></DT -+><DT -+>13.2. <A -+HREF="#SCREENDUMP" -+>Screen Dumping</A -+></DT -+><DT -+>13.3. <A -+HREF="#WINDOWDUMP" -+>Window Dumping</A -+></DT -+></DL -+></DD -+><DT -+>14. <A -+HREF="#MISC" -+>Miscellaneous features</A -+></DT -+><DD -+><DL -+><DT -+>14.1. <A -+HREF="#CURSSET" -+>curs_set()</A -+></DT -+><DT -+>14.2. <A -+HREF="#TEMPLEAVE" -+>Temporarily Leaving Curses mode</A -+></DT -+><DT -+>14.3. <A -+HREF="#ACSVARS" -+>ACS_ variables</A -+></DT -+></DL -+></DD -+><DT -+>15. <A -+HREF="#OTHERLIB" -+>Other libraries</A -+></DT -+><DT -+>16. <A -+HREF="#PANELS" -+>Panel Library</A -+></DT -+><DD -+><DL -+><DT -+>16.1. <A -+HREF="#PANELBASICS" -+>The Basics</A -+></DT -+><DT -+>16.2. <A -+HREF="#COMPILEPANELS" -+>Compiling With the Panels Library</A -+></DT -+><DT -+>16.3. <A -+HREF="#PANELBROWSING" -+>Panel Window Browsing</A -+></DT -+><DT -+>16.4. <A -+HREF="#USERPTRUSING" -+>Using User Pointers</A -+></DT -+><DT -+>16.5. <A -+HREF="#PANELMOVERESIZE" -+>Moving and Resizing Panels</A -+></DT -+><DT -+>16.6. <A -+HREF="#PANELSHOWHIDE" -+>Hiding and Showing Panels</A -+></DT -+><DT -+>16.7. <A -+HREF="#PANELABOVE" -+>panel_above() and panel_below() Functions</A -+></DT -+></DL -+></DD -+><DT -+>17. <A -+HREF="#MENUS" -+>Menus Library</A -+></DT -+><DD -+><DL -+><DT -+>17.1. <A -+HREF="#MENUBASICS" -+>The Basics</A -+></DT -+><DT -+>17.2. <A -+HREF="#COMPILEMENUS" -+>Compiling With the Menu Library</A -+></DT -+><DT -+>17.3. <A -+HREF="#MENUDRIVER" -+>Menu Driver: The work horse of the menu system</A -+></DT -+><DT -+>17.4. <A -+HREF="#MENUWINDOWS" -+>Menu Windows</A -+></DT -+><DT -+>17.5. <A -+HREF="#SCROLLMENUS" -+>Scrolling Menus</A -+></DT -+><DT -+>17.6. <A -+HREF="#MULTICOLUMN" -+>Multi Columnar Menus</A -+></DT -+><DT -+>17.7. <A -+HREF="#MULTIVALUEMENUS" -+>Multi Valued Menus</A -+></DT -+><DT -+>17.8. <A -+HREF="#MENUOPT" -+>Menu Options</A -+></DT -+><DT -+>17.9. <A -+HREF="#MENUUSERPTR" -+>The useful User Pointer</A -+></DT -+></DL -+></DD -+><DT -+>18. <A -+HREF="#FORMS" -+>Forms Library</A -+></DT -+><DD -+><DL -+><DT -+>18.1. <A -+HREF="#FORMBASICS" -+>The Basics</A -+></DT -+><DT -+>18.2. <A -+HREF="#COMPILEFORMS" -+>Compiling With the Forms Library</A -+></DT -+><DT -+>18.3. <A -+HREF="#PLAYFIELDS" -+>Playing with Fields</A -+></DT -+><DD -+><DL -+><DT -+>18.3.1. <A -+HREF="#FETCHINFO" -+>Fetching Size and Location of Field</A -+></DT -+><DT -+>18.3.2. <A -+HREF="#MOVEFIELD" -+>Moving the field</A -+></DT -+><DT -+>18.3.3. <A -+HREF="#JUSTIFYFIELD" -+>Field Justification</A -+></DT -+><DT -+>18.3.4. <A -+HREF="#FIELDDISPATTRIB" -+>Field Display Attributes</A -+></DT -+><DT -+>18.3.5. <A -+HREF="#FIELDOPTIONBITS" -+>Field Option Bits</A -+></DT -+><DT -+>18.3.6. <A -+HREF="#FIELDSTATUS" -+>Field Status</A -+></DT -+><DT -+>18.3.7. <A -+HREF="#FIELDUSERPTR" -+>Field User Pointer</A -+></DT -+><DT -+>18.3.8. <A -+HREF="#VARIABLESIZEFIELDS" -+>Variable-Sized Fields</A -+></DT -+></DL -+></DD -+><DT -+>18.4. <A -+HREF="#FORMWINDOWS" -+>Form Windows</A -+></DT -+><DT -+>18.5. <A -+HREF="#FILEDVALIDATE" -+>Field Validation</A -+></DT -+><DT -+>18.6. <A -+HREF="#FORMDRIVER" -+>Form Driver: The work horse of the forms system</A -+></DT -+><DD -+><DL -+><DT -+>18.6.1. <A -+HREF="#PAGENAVREQ" -+>Page Navigation Requests</A -+></DT -+><DT -+>18.6.2. <A -+HREF="#INTERFIELDNAVREQ" -+>Inter-Field Navigation Requests</A -+></DT -+><DT -+>18.6.3. <A -+HREF="#INTRAFIELDNAVREQ" -+>Intra-Field Navigation Requests</A -+></DT -+><DT -+>18.6.4. <A -+HREF="#SCROLLREQ" -+>Scrolling Requests</A -+></DT -+><DT -+>18.6.5. <A -+HREF="#EDITREQ" -+>Editing Requests</A -+></DT -+><DT -+>18.6.6. <A -+HREF="#ORDERREQ" -+>Order Requests</A -+></DT -+><DT -+>18.6.7. <A -+HREF="#APPLICCOMMANDS" -+>Application Commands</A -+></DT -+></DL -+></DD -+></DL -+></DD -+><DT -+>19. <A -+HREF="#TOOLS" -+>Tools and Widget Libraries</A -+></DT -+><DD -+><DL -+><DT -+>19.1. <A -+HREF="#CDK" -+>CDK (Curses Development Kit)</A -+></DT -+><DD -+><DL -+><DT -+>19.1.1. <A -+HREF="#WIDGETLIST" -+>Widget List</A -+></DT -+><DT -+>19.1.2. <A -+HREF="#CDKATTRACT" -+>Some Attractive Features</A -+></DT -+><DT -+>19.1.3. <A -+HREF="#CDKCONCLUSION" -+>Conclusion</A -+></DT -+></DL -+></DD -+><DT -+>19.2. <A -+HREF="#DIALOG" -+>The dialog</A -+></DT -+><DT -+>19.3. <A -+HREF="#PERLCURSES" -+>Perl Curses Modules CURSES::FORM and CURSES::WIDGETS</A -+></DT -+></DL -+></DD -+><DT -+>20. <A -+HREF="#JUSTFORFUN" -+>Just For Fun !!!</A -+></DT -+><DD -+><DL -+><DT -+>20.1. <A -+HREF="#GAMEOFLIFE" -+>The Game of Life</A -+></DT -+><DT -+>20.2. <A -+HREF="#MAGIC" -+>Magic Square</A -+></DT -+><DT -+>20.3. <A -+HREF="#HANOI" -+>Towers of Hanoi</A -+></DT -+><DT -+>20.4. <A -+HREF="#QUEENS" -+>Queens Puzzle</A -+></DT -+><DT -+>20.5. <A -+HREF="#SHUFFLE" -+>Shuffle</A -+></DT -+><DT -+>20.6. <A -+HREF="#TT" -+>Typing Tutor</A -+></DT -+></DL -+></DD -+><DT -+>21. <A -+HREF="#REF" -+>References</A -+></DT -+></DL -+></DIV -+><DIV -+CLASS="SECT1" -+><H2 -+CLASS="SECT1" -+><A -+NAME="INTRO" -+>1. Introduction</A -+></H2 -+><P -+>In the olden days of teletype terminals, terminals were away from computers and -+were connected to them through serial cables. The terminals could be configured -+by sending a series of bytes. All the capabilities (such as -+moving the cursor to a new location, erasing part of the screen, scrolling the -+screen, changing modes etc.) of terminals could be accessed through these -+series of bytes. These control seeuqnces are usually called escape sequences, -+because they start -+with an escape(0x1B) character. Even today, with proper emulation, we can send -+escape sequences to the emulator and achieve the same effect on a terminal -+window.</P -+><P -+>Suppose you wanted to print a line in color. Try typing this on your console.</P -+><PRE -+CLASS="PROGRAMLISTING" -+>echo "^[[0;31;40mIn Color"</PRE -+><P -+>The first character is an escape character, which looks like two characters ^ -+and [. To be able to print it, you have to press CTRL+V and then the ESC key. -+All the others are normal printable characters. You should be able to see the -+string "In Color" in red. It stays that way and to revert back to the original -+mode type this.</P -+><PRE -+CLASS="PROGRAMLISTING" -+>echo "^[[0;37;40m"</PRE -+><P -+>Now, what do these magic characters mean? Difficult to comprehend? They might -+even be different for different terminals. So the designers of UNIX invented a -+mechanism named <TT -+CLASS="LITERAL" -+>termcap</TT -+>. It is a file that -+lists all the capabilities of a particular terminal, along with the escape -+sequences needed to achieve a particular effect. In the later years, this was -+replaced by <TT -+CLASS="LITERAL" -+>terminfo</TT -+>. Without delving too -+much into details, this mechanism allows application -+programs to query the terminfo database and obtain the control characters to be -+sent to a terminal or terminal emulator.</P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="WHATIS" -+>1.1. What is NCURSES?</A -+></H3 -+><P -+> -+You might be wondering, what the import of all this technical gibberish is. In -+the above scenario, every application program is supposed to query the terminfo -+and perform the necessary stuff (sending control characters etc.). It soon became -+difficult to manage this complexity and this gave birth to 'CURSES'. Curses is -+a pun on the name "cursor optimization". The Curses library forms a wrapper -+over working with raw terminal codes, and provides highly flexible and -+efficient API (Application Programming Interface). It provides functions to -+move the cursor, create windows, produce colors, play with mouse etc. The -+application programs need not worry about the underlying terminal capabilities.</P -+><P -+>So what is NCURSES? NCURSES is a clone of the original System V Release 4.0 -+(SVr4) curses. It is a freely distributable library, fully compatible with -+older version of curses. In short, it is a library of functions that manages -+an application's display on character-cell terminals. In the remainder of the -+document, the terms curses and ncurses are used interchangeably. </P -+><P -+>A detailed history of NCURSES can be found in the NEWS file from the source -+distribution. The current package is maintained by -+<A -+HREF="mailto:dickey@his.com" -+TARGET="_top" -+>Thomas Dickey</A -+>. -+You can contact the maintainers at <A -+HREF="mailto:bug-ncurses@gnu.org" -+TARGET="_top" -+>bug-ncurses@gnu.org</A -+>.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="WHATCANWEDO" -+>1.2. What we can do with NCURSES</A -+></H3 -+><P -+>NCURSES not only creates a wrapper over terminal capabilities, but also gives a -+robust framework to create nice looking UI (User Interface)s in text mode. It -+provides functions to create windows etc. Its sister libraries panel, menu and -+form provide an extension to the basic curses library. These libraries usually -+come along with curses. One can create applications that contain multiple -+windows, menus, panels and forms. Windows can be managed independently, can -+provide 'scrollability' and even can be hidden.</P -+><P -+> -+Menus provide the user with an easy command selection option. Forms allow the -+creation of easy-to-use data entry and display windows. Panels extend the -+capabilities of ncurses to deal with overlapping and stacked windows.</P -+><P -+>These are just some of the basic things we can do with ncurses. As we move -+along, We will see all the capabilities of these libraries. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="WHERETOGETIT" -+>1.3. Where to get it</A -+></H3 -+><P -+>All right, now that you know what you can do with ncurses, you must be rearing -+to get started. NCURSES is usually shipped with your installation. In case -+you don't have the library or want to compile it on your own, read on.</P -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>Compiling the package</I -+></SPAN -+> </P -+><P -+>NCURSES can be obtained from <A -+HREF="ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses.tar.gz" -+TARGET="_top" -+>ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses.tar.gz</A -+> or any of the ftp -+sites mentioned in <A -+HREF="http://www.gnu.org/order/ftp.html" -+TARGET="_top" -+>http://www.gnu.org/order/ftp.html</A -+>. </P -+><P -+>Read the README and INSTALL files for details on to how to install it. It -+usually involves the following operations.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> tar zxvf ncurses&lt;version&gt;.tar.gz # unzip and untar the archive - cd ncurses&lt;version&gt; # cd to the directory - ./configure # configure the build according to your - # environment - make # make it - su root # become root -- make install # install it</font> --</pre></td> --</tr> --</table> --<p><em>Using the RPM</em></p> --<p>NCURSES RPM can be found and downloaded from <a href= --"http://rpmfind.net" target="_top">http://rpmfind.net</a> . The RPM --can be installed with the following command after becoming --root.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> rpm -i &lt;downloaded rpm&gt;</font> --</pre></td> --</tr> --</table> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="PURPOSE" id="PURPOSE">1.4. Purpose/Scope --of the document</a></h3> --<p>This document is intended to be a "All in One" guide for --programming with ncurses and its sister libraries. We graduate from --a simple "Hello World" program to more complex form manipulation. --No prior experience in ncurses is assumed. The writing is informal, --but a lot of detail is provided for each of the examples.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ABOUTPROGRAMS" id="ABOUTPROGRAMS">1.5. --About the Programs</a></h3> --<p>All the programs in the document are available in zipped form --<a href= --"http://www.tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs.tar.gz" --target="_top">here</a>. Unzip and untar it. The directory structure --looks like this.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000">ncurses -+ make install # install it</PRE -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>Using the RPM </I -+></SPAN -+></P -+><P -+>NCURSES RPM can be found and downloaded from <A -+HREF="http://rpmfind.net" -+TARGET="_top" -+>http://rpmfind.net </A -+>. The RPM can be installed with the following -+command after becoming root.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> rpm -i &lt;downloaded rpm&gt;</PRE -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="PURPOSE" -+>1.4. Purpose/Scope of the document</A -+></H3 -+><P -+>This document is intended to be a "All in One" guide for programming with -+ncurses and its sister libraries. We graduate from a simple "Hello World" -+program to more complex form manipulation. No prior experience in ncurses is -+assumed. The writing is informal, but a lot of detail is provided for -+each of the examples.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ABOUTPROGRAMS" -+>1.5. About the Programs</A -+></H3 -+><P -+>All the programs in the document are available in zipped form -+<A -+HREF="http://www.tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs.tar.gz" -+TARGET="_top" -+>here</A -+>. Unzip and untar it. The directory structure looks like this.</P -+><PRE -+CLASS="PROGRAMLISTING" -+>ncurses - | - |----&gt; JustForFun -- just for fun programs - |----&gt; basics -- basic programs -@@ -524,16 +1290,12 @@ - | by Anuradha Ratnaweera) - |----&gt; Makefile -- the top level Makefile - |----&gt; README -- the top level README file. contains instructions -- |----&gt; COPYING -- copyright notice</font> --</pre></td> --</tr> --</table> --<p>The individual directories contain the following files.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000">Description of files in each directory -+ |----&gt; COPYING -- copyright notice</PRE -+><P -+>The individual directories contain the following files.</P -+><PRE -+CLASS="PROGRAMLISTING" -+>Description of files in each directory - -------------------------------------- - JustForFun - | -@@ -592,73 +1354,96 @@ - |----&gt; panel_simple.c -- A simple panel example - - perl -- |----&gt; 01-10.pl -- Perl equivalents of first ten example programs</font> --</pre></td> --</tr> --</table> --<p>There is a top level Makefile included in the main directory. It --builds all the files and puts the ready-to-use exes in demo/exe --directory. You can also do selective make by going into the --corresponding directory. Each directory contains a README file --explaining the purpose of each c file in the directory.</p> --<p>For every example, I have included path name for the file --relative to the examples directory.</p> --<p>If you prefer browsing individual programs, point your browser --to <a href= --"http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs/" --target= --"_top">http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs/</a></p> --<p>All the programs are released under the same license that is --used by ncurses (MIT-style). This gives you the ability to do --pretty much anything other than claiming them as yours. Feel free --to use them in your programs as appropriate.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="OTHERFORMATS" id="OTHERFORMATS">1.6. --Other Formats of the document</a></h3> --<p>This howto is also availabe in various other formats on the --tldp.org site. Here are the links to other formats of this --document.</p> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="LISTFORMATS" id="LISTFORMATS">1.6.1. --Readily available formats from tldp.org</a></h4> --<ul> --<li> --<p><a href= --"http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/NCURSES-Programming-HOWTO.pdf" --target="_top">Acrobat PDF Format</a></p> --</li> --<li> --<p><a href= --"http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/ps/NCURSES-Programming-HOWTO.ps.gz" --target="_top">PostScript Format</a></p> --</li> --<li> --<p><a href= --"http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html/NCURSES-Programming-HOWTO-html.tar.gz" --target="_top">In Multiple HTML pages</a></p> --</li> --<li> --<p><a href= --"http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/NCURSES-Programming-HOWTO.html" --target="_top">In One big HTML format</a></p> --</li> --</ul> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="BUILDSOURCE" id="BUILDSOURCE">1.6.2. --Building from source</a></h4> --<p>If above links are broken or if you want to experiment with sgml --read on.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">&#13; Get both the source and the tar,gzipped programs, available at -+ |----&gt; 01-10.pl -- Perl equivalents of first ten example programs</PRE -+><P -+>There is a top level Makefile included in the main directory. It builds all the -+files and puts the ready-to-use exes in demo/exe directory. You can also -+do selective make by going into the corresponding directory. Each directory -+contains a README file explaining the purpose of each c file in the directory.</P -+><P -+>For every example, I have included path name for the file relative to the -+examples directory. </P -+><P -+> If you prefer browsing individual programs, point your browser to -+<A -+HREF="http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs/" -+TARGET="_top" -+>http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs/</A -+></P -+><P -+>All the programs are released under the same license that is used by ncurses -+(MIT-style). This gives you the ability to do pretty much anything other than -+claiming them as yours. Feel free to use them in your programs as appropriate.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="OTHERFORMATS" -+>1.6. Other Formats of the document</A -+></H3 -+><P -+>This howto is also availabe in various other formats on the tldp.org site. -+Here are the links to other formats of this document.</P -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="LISTFORMATS" -+>1.6.1. Readily available formats from tldp.org</A -+></H4 -+><P -+></P -+><UL -+><LI -+><P -+><A -+HREF="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/NCURSES-Programming-HOWTO.pdf" -+TARGET="_top" -+>Acrobat PDF Format</A -+></P -+></LI -+><LI -+><P -+><A -+HREF="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/ps/NCURSES-Programming-HOWTO.ps.gz" -+TARGET="_top" -+>PostScript Format</A -+></P -+></LI -+><LI -+><P -+><A -+HREF="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html/NCURSES-Programming-HOWTO-html.tar.gz" -+TARGET="_top" -+>In Multiple HTML pages</A -+></P -+></LI -+><LI -+><P -+><A -+HREF="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/NCURSES-Programming-HOWTO.html" -+TARGET="_top" -+>In One big HTML format</A -+></P -+></LI -+></UL -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="BUILDSOURCE" -+>1.6.2. Building from source</A -+></H4 -+><P -+>If above links are broken or if you want to experiment with sgml read on. -+<PRE -+CLASS="PROGRAMLISTING" -+>&#13; Get both the source and the tar,gzipped programs, available at - http://cvsview.tldp.org/index.cgi/LDP/howto/docbook/ - NCURSES-HOWTO/NCURSES-Programming-HOWTO.sgml - http://cvsview.tldp.org/index.cgi/LDP/howto/docbook/ -@@ -679,588 +1464,862 @@ - NCURSES-ONE-BIG-FILE.html - for ps, you would use - htmldoc --size universal -t ps --firstpage p1 -f &lt;output file name.ps&gt; -- NCURSES-ONE-BIG-FILE.html</font> --</pre></td> --</tr> --</table> --<p>See <a href="http://www.tldp.org/LDP/LDP-Author-Guide/" target= --"_top">LDP Author guide</a> for more details. If all else failes, --mail me at <a href="ppadala@gmail.com" target= --"_top">ppadala@gmail.com</a></p> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="CREDITS" id="CREDITS">1.7. --Credits</a></h3> --<p>I thank <a href="mailto:sharath_1@usa.net" target= --"_top">Sharath</a> and Emre Akbas for helping me with few sections. --The introduction was initially written by sharath. I rewrote it --with few excerpts taken from his initial work. Emre helped in --writing printw and scanw sections.</p> --<p>Perl equivalents of the example programs are contributed by --<a href="mailto:Aratnaweera@virtusa.com" target="_top">Anuradha --Ratnaweera</a>.</p> --<p>Then comes <a href="mailto:parimi@ece.arizona.edu" target= --"_top">Ravi Parimi</a>, my dearest friend, who has been on this --project before even one line was written. He constantly bombarded --me with suggestions and patiently reviewed the whole text. He also --checked each program on Linux and Solaris.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="WISHLIST" id="WISHLIST">1.8. Wish --List</a></h3> --<p>This is the wish list, in the order of priority. If you have a --wish or you want to work on completing the wish, mail <a href= --"mailto:ppadala@gmail.com" target="_top">me</a>.</p> --<ul> --<li> --<p>Add examples to last parts of forms section.</p> --</li> --<li> --<p>Prepare a Demo showing all the programs and allow the user to --browse through description of each program. Let the user compile --and see the program in action. A dialog based interface is --preferred.</p> --</li> --<li> --<p>Add debug info. _tracef, _tracemouse stuff.</p> --</li> --<li> --<p>Accessing termcap, terminfo using functions provided by ncurses --package.</p> --</li> --<li> --<p>Working on two terminals simultaneously.</p> --</li> --<li> --<p>Add more stuff to miscellaneous section.</p> --</li> --</ul> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="COPYRIGHT" id="COPYRIGHT">1.9. --Copyright</a></h3> --<p>Copyright &copy; 2001 by Pradeep Padala.</p> --<p>Permission is hereby granted, free of charge, to any person --obtaining a copy of this software and associated documentation --files (the "Software"), to deal in the Software without --restriction, including without limitation the rights to use, copy, --modify, merge, publish, distribute, distribute with modifications, --sublicense, and/or sell copies of the Software, and to permit --persons to whom the Software is furnished to do so, subject to the --following conditions:</p> --<p>The above copyright notice and this permission notice shall be --included in all copies or substantial portions of the Software.</p> --<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, --EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND --NONINFRINGEMENT. IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE --LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN --ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN --CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE --SOFTWARE.</p> --<p>Except as contained in this notice, the name(s) of the above --copyright holders shall not be used in advertising or otherwise to --promote the sale, use or other dealings in this Software without --prior written authorization.</p> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="HELLOWORLD" id="HELLOWORLD">2. Hello --World !!!</a></h2> --<p>Welcome to the world of curses. Before we plunge into the --library and look into its various features, let's write a simple --program and say hello to the world.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="COMPILECURSES" id="COMPILECURSES">2.1. --Compiling With the NCURSES Library</a></h3> --<p>To use ncurses library functions, you have to include ncurses.h --in your programs. To link the program with ncurses the flag ---lncurses should be added.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> #include &lt;ncurses.h&gt; -+ NCURSES-ONE-BIG-FILE.html</PRE -+></P -+><P -+>See <A -+HREF="http://www.tldp.org/LDP/LDP-Author-Guide/" -+TARGET="_top" -+>LDP Author guide</A -+> for more details. If all else failes, mail me at -+<A -+HREF="ppadala@gmail.com" -+TARGET="_top" -+>ppadala@gmail.com</A -+></P -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="CREDITS" -+>1.7. Credits</A -+></H3 -+><P -+>I thank <A -+HREF="mailto:sharath_1@usa.net" -+TARGET="_top" -+>Sharath</A -+> and Emre Akbas for -+helping me with few sections. The introduction was initially written by sharath. -+I rewrote it with few excerpts taken from his initial work. Emre helped in -+writing printw and scanw sections.</P -+><P -+>Perl equivalents of the example programs are contributed by <A -+HREF="mailto:Aratnaweera@virtusa.com" -+TARGET="_top" -+>Anuradha Ratnaweera</A -+>. </P -+><P -+>Then comes <A -+HREF="mailto:parimi@ece.arizona.edu" -+TARGET="_top" -+>Ravi Parimi</A -+>, my -+dearest friend, who has been on this project before even one line was written. -+He constantly bombarded me with suggestions and patiently reviewed the whole -+text. He also checked each program on Linux and Solaris. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="WISHLIST" -+>1.8. Wish List</A -+></H3 -+><P -+>This is the wish list, in the order of priority. If you have a wish or you want -+to work on completing the wish, mail <A -+HREF="mailto:ppadala@gmail.com" -+TARGET="_top" -+>me</A -+>. </P -+><P -+></P -+><UL -+><LI -+><P -+>Add examples to last parts of forms section.</P -+></LI -+><LI -+><P -+>Prepare a Demo showing all the programs and allow the user to browse through -+description of each program. Let the user compile and see the program in action. -+A dialog based interface is preferred.</P -+></LI -+><LI -+><P -+>Add debug info. _tracef, _tracemouse stuff.</P -+></LI -+><LI -+><P -+>Accessing termcap, terminfo using functions provided by ncurses -+package.</P -+></LI -+><LI -+><P -+>Working on two terminals simultaneously.</P -+></LI -+><LI -+><P -+>Add more stuff to miscellaneous section.</P -+></LI -+></UL -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="COPYRIGHT" -+>1.9. Copyright</A -+></H3 -+><P -+>Copyright &copy; 2001 by Pradeep Padala. </P -+><P -+>Permission is hereby granted, free of charge, to any person obtaining a copy -+of this software and associated documentation files (the "Software"), to deal -+in the Software without restriction, including without limitation the rights -+to use, copy, modify, merge, publish, distribute, distribute with -+modifications, sublicense, and/or sell copies of the Software, and to permit -+persons to whom the Software is furnished to do so, subject to the following -+conditions:</P -+><P -+>The above copyright notice and this permission notice shall be included in all -+copies or substantial portions of the Software.</P -+><P -+>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -+ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -+IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</P -+><P -+>Except as contained in this notice, the name(s) of the above copyright holders -+shall not be used in advertising or otherwise to promote the sale, use or -+other dealings in this Software without prior written authorization. </P -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="HELLOWORLD" -+>2. Hello World !!!</A -+></H2 -+><P -+>Welcome to the world of curses. Before we plunge into the library and look into -+its various features, let's write a simple program and say -+hello to the world. </P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="COMPILECURSES" -+>2.1. Compiling With the NCURSES Library</A -+></H3 -+><P -+>To use ncurses library functions, you have to include ncurses.h in your -+programs. To link the -+program with ncurses the flag -lncurses should be added.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> #include &lt;ncurses.h&gt; - . - . - . - -- compile and link: gcc &lt;program file&gt; -lncurses</font> --</pre></td> --</tr> --</table> --<div class="EXAMPLE"><a name="BHW" id="BHW"></a> --<p><b>Example 1. The Hello World !!! Program</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; -+ compile and link: gcc &lt;program file&gt; -lncurses</PRE -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BHW" -+></A -+><P -+><B -+>Example 1. The Hello World !!! Program </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; - - int main() --{ -- initscr(); /* Start curses mode */ -- printw("Hello World !!!"); /* Print Hello World */ -- refresh(); /* Print it on to the real screen */ -- getch(); /* Wait for user input */ -- endwin(); /* End curses mode */ -- -- return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="DISSECTION" id="DISSECTION">2.2. --Dissection</a></h3> --<p>The above program prints "Hello World !!!" to the screen and --exits. This program shows how to initialize curses and do screen --manipulation and end curses mode. Let's dissect it line by --line.</p> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="ABOUT-INITSCR" id="ABOUT-INITSCR">2.2.1. --About initscr()</a></h4> --<p>The function initscr() initializes the terminal in curses mode. --In some implementations, it clears the screen and presents a blank --screen. To do any screen manipulation using curses package this has --to be called first. This function initializes the curses system and --allocates memory for our present window (called <var class= --"LITERAL">stdscr</var>) and some other data-structures. Under --extreme cases this function might fail due to insufficient memory --to allocate memory for curses library's data structures.</p> --<p>After this is done, we can do a variety of initializations to --customize our curses settings. These details will be explained --<a href="#INIT">later</a> .</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="MYST-REFRESH" id="MYST-REFRESH">2.2.2. --The mysterious refresh()</a></h4> --<p>The next line printw prints the string "Hello World !!!" on to --the screen. This function is analogous to normal printf in all --respects except that it prints the data on a window called stdscr --at the current (y,x) co-ordinates. Since our present co-ordinates --are at 0,0 the string is printed at the left hand corner of the --window.</p> --<p>This brings us to that mysterious refresh(). Well, when we --called printw the data is actually written to an imaginary window, --which is not updated on the screen yet. The job of printw is to --update a few flags and data structures and write the data to a --buffer corresponding to stdscr. In order to show it on the screen, --we need to call refresh() and tell the curses system to dump the --contents on the screen.</p> --<p>The philosophy behind all this is to allow the programmer to do --multiple updates on the imaginary screen or windows and do a --refresh once all his screen update is done. refresh() checks the --window and updates only the portion which has been changed. This --improves performance and offers greater flexibility too. But, it is --sometimes frustrating to beginners. A common mistake committed by --beginners is to forget to call refresh() after they did some update --through printw() class of functions. I still forget to add it --sometimes :-)</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="ABOUT-ENDWIN" id="ABOUT-ENDWIN">2.2.3. --About endwin()</a></h4> --<p>And finally don't forget to end the curses mode. Otherwise your --terminal might behave strangely after the program quits. endwin() --frees the memory taken by curses sub-system and its data structures --and puts the terminal in normal mode. This function must be called --after you are done with the curses mode.</p> --</div> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="GORY" id="GORY">3. The Gory --Details</a></h2> --<p>Now that we have seen how to write a simple curses program let's --get into the details. There are many functions that help customize --what you see on screen and many features which can be put to full --use.</p> --<p>Here we go...</p> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="INIT" id="INIT">4. --Initialization</a></h2> --<p>We now know that to initialize curses system the function --initscr() has to be called. There are functions which can be called --after this initialization to customize our curses session. We may --ask the curses system to set the terminal in raw mode or initialize --color or initialize the mouse etc.. Let's discuss some of the --functions that are normally called immediately after initscr();</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ABOUTINIT" id="ABOUTINIT">4.1. --Initialization functions</a></h3> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="RAWCBREAK" id="RAWCBREAK">4.2. raw() and --cbreak()</a></h3> --<p>Normally the terminal driver buffers the characters a user types --until a new line or carriage return is encountered. But most --programs require that the characters be available as soon as the --user types them. The above two functions are used to disable line --buffering. The difference between these two functions is in the way --control characters like suspend (CTRL-Z), interrupt and quit --(CTRL-C) are passed to the program. In the raw() mode these --characters are directly passed to the program without generating a --signal. In the <var class="LITERAL">cbreak()</var> mode these --control characters are interpreted as any other character by the --terminal driver. I personally prefer to use raw() as I can exercise --greater control over what the user does.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ECHONOECHO" id="ECHONOECHO">4.3. echo() --and noecho()</a></h3> --<p>These functions control the echoing of characters typed by the --user to the terminal. <var class="LITERAL">noecho()</var> switches --off echoing. The reason you might want to do this is to gain more --control over echoing or to suppress unnecessary echoing while --taking input from the user through the getch() etc. functions. Most --of the interactive programs call <var class= --"LITERAL">noecho()</var> at initialization and do the echoing of --characters in a controlled manner. It gives the programmer the --flexibility of echoing characters at any place in the window --without updating current (y,x) co-ordinates.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="KEYPAD" id="KEYPAD">4.4. --keypad()</a></h3> --<p>This is my favorite initialization function. It enables the --reading of function keys like F1, F2, arrow keys etc. Almost every --interactive program enables this, as arrow keys are a major part of --any User Interface. Do <var class="LITERAL">keypad(stdscr, --TRUE)</var> to enable this feature for the regular screen (stdscr). --You will learn more about key management in later sections of this --document.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="HALFDELAY" id="HALFDELAY">4.5. --halfdelay()</a></h3> --<p>This function, though not used very often, is a useful one at --times. halfdelay()is called to enable the half-delay mode, which is --similar to the cbreak() mode in that characters typed are --immediately available to program. However, it waits for 'X' tenths --of a second for input and then returns ERR, if no input is --available. 'X' is the timeout value passed to the function --halfdelay(). This function is useful when you want to ask the user --for input, and if he doesn't respond with in certain time, we can --do some thing else. One possible example is a timeout at the --password prompt.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MISCINIT" id="MISCINIT">4.6. --Miscellaneous Initialization functions</a></h3> --<p>There are few more functions which are called at initialization --to customize curses behavior. They are not used as extensively as --those mentioned above. Some of them are explained where --appropriate.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="INITEX" id="INITEX">4.7. An --Example</a></h3> --<p>Let's write a program which will clarify the usage of these --functions.</p> --<div class="EXAMPLE"><a name="BINFU" id="BINFU"></a> --<p><b>Example 2. Initialization Function Usage example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; -+{ -+ initscr(); /* Start curses mode */ -+ printw("Hello World !!!"); /* Print Hello World */ -+ refresh(); /* Print it on to the real screen */ -+ getch(); /* Wait for user input */ -+ endwin(); /* End curses mode */ -+ -+ return 0; -+}</SPAN -+></PRE -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="DISSECTION" -+>2.2. Dissection</A -+></H3 -+><P -+> -+The above program prints "Hello World !!!" to the screen and exits. This -+program shows how to initialize curses and do screen manipulation and -+end curses mode. Let's dissect it line by line. </P -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="ABOUT-INITSCR" -+>2.2.1. About initscr()</A -+></H4 -+><P -+>The function initscr() initializes the terminal in curses mode. In some -+implementations, it clears the screen and presents a blank screen. To do any -+screen manipulation using curses package this has to be called first. This -+function initializes the curses system and allocates memory for our present -+window (called <TT -+CLASS="LITERAL" -+>stdscr</TT -+>) and some other data-structures. Under extreme -+cases this function might fail due to insufficient memory to allocate memory -+for curses library's data structures. </P -+><P -+> -+After this is done, we can do a variety of initializations to customize -+our curses settings. These details will be explained <A -+HREF="#INIT" -+>later </A -+>.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="MYST-REFRESH" -+>2.2.2. The mysterious refresh()</A -+></H4 -+><P -+>The next line printw prints the string "Hello World !!!" on to the screen. This -+function is analogous to normal printf in all respects except that it prints -+the data on a window called stdscr at the current (y,x) co-ordinates. Since our -+present co-ordinates are at 0,0 the string is printed at the left hand corner -+of the window.</P -+><P -+>This brings us to that mysterious refresh(). Well, when we called printw -+the data is actually written to an imaginary window, which is not updated -+on the screen yet. The job of printw is to update a few flags -+and data structures and write the data to a buffer corresponding to stdscr. -+In order to show it on the screen, we need to call refresh() and tell the -+curses system to dump the contents on the screen.</P -+><P -+>The philosophy behind all this is to allow the programmer to do multiple updates -+on the imaginary screen or windows and do a refresh once all his screen update -+is done. refresh() checks the window and updates only the portion which has been -+changed. This improves performance and offers greater flexibility too. But, it is -+sometimes frustrating to beginners. A common mistake committed by beginners is -+to forget to call refresh() after they did some update through printw() class of -+functions. I still forget to add it sometimes :-) </P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="ABOUT-ENDWIN" -+>2.2.3. About endwin()</A -+></H4 -+><P -+>And finally don't forget to end the curses mode. Otherwise your terminal might -+behave strangely after the program quits. endwin() frees the memory taken by -+curses sub-system and its data structures and puts the terminal in normal -+mode. This function must be called after you are done with the curses mode. </P -+></DIV -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="GORY" -+>3. The Gory Details</A -+></H2 -+><P -+>Now that we have seen how to write a simple curses program let's get into the -+details. There are many functions that help customize what you see on screen and -+many features which can be put to full use. </P -+><P -+>Here we go...</P -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="INIT" -+>4. Initialization</A -+></H2 -+><P -+>We now know that to initialize curses system the function initscr() has to be -+called. There are functions which can be called after this initialization to -+customize our curses session. We may ask the curses system to set the terminal -+in raw mode or initialize color or initialize the mouse etc.. Let's discuss some -+of the functions that are normally called immediately after initscr();</P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ABOUTINIT" -+>4.1. Initialization functions</A -+></H3 -+><P -+> </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="RAWCBREAK" -+>4.2. raw() and cbreak()</A -+></H3 -+><P -+>Normally the terminal driver buffers the characters a user types until a new -+line or carriage return is encountered. But most programs require that the -+characters be available as soon as the user types them. The above two functions -+are used to disable line buffering. The difference between these two functions -+is in the way control characters like suspend (CTRL-Z), interrupt and quit -+(CTRL-C) are passed to the program. In the raw() mode these characters are -+directly passed to the program without generating a signal. In the -+<TT -+CLASS="LITERAL" -+>cbreak()</TT -+> mode these control characters are -+interpreted as any other character by the terminal driver. I personally prefer -+to use raw() as I can exercise greater control over what the user does.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ECHONOECHO" -+>4.3. echo() and noecho()</A -+></H3 -+><P -+> -+These functions control the echoing of characters typed by the user to the -+terminal. <TT -+CLASS="LITERAL" -+>noecho()</TT -+> switches off echoing. The -+reason you might want to do this is to gain more control over echoing or to -+suppress unnecessary echoing while taking input from the user through the -+getch() etc. functions. Most of the interactive programs call -+<TT -+CLASS="LITERAL" -+>noecho()</TT -+> at initialization and do the echoing -+of characters in a controlled manner. It gives the programmer the flexibility -+of echoing characters at any place in the window without updating current (y,x) -+co-ordinates. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="KEYPAD" -+>4.4. keypad()</A -+></H3 -+><P -+>This is my favorite initialization function. It enables the reading of function -+keys like F1, F2, arrow keys etc. Almost every interactive program enables this, -+as arrow keys are a major part of any User Interface. Do -+<TT -+CLASS="LITERAL" -+>keypad(stdscr, TRUE) </TT -+> to enable this feature -+for the regular screen (stdscr). You will learn more about key management in -+later sections of this document.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="HALFDELAY" -+>4.5. halfdelay()</A -+></H3 -+><P -+>This function, though not used very often, is a useful one at times. -+halfdelay()is called to enable the half-delay mode, which is similar to the -+cbreak() mode in that characters typed are immediately available to program. -+However, it waits for 'X' tenths of a second for input and then returns ERR, if -+no input is available. 'X' is the timeout value passed to the function -+halfdelay(). This function is useful when you want to ask the user for input, -+and if he doesn't respond with in certain time, we can do some thing else. One -+possible example is a timeout at the password prompt. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MISCINIT" -+>4.6. Miscellaneous Initialization functions</A -+></H3 -+><P -+>There are few more functions which are called at initialization to -+customize curses behavior. They are not used as extensively as those mentioned -+above. Some of them are explained where appropriate.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="INITEX" -+>4.7. An Example</A -+></H3 -+><P -+>Let's write a program which will clarify the usage of these functions.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BINFU" -+></A -+><P -+><B -+>Example 2. Initialization Function Usage example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; - - int main() --{ int ch; -+{ int ch; - -- initscr(); /* Start curses mode */ -- raw(); /* Line buffering disabled */ -- keypad(stdscr, TRUE); /* We get F1, F2 etc.. */ -- noecho(); /* Don't echo() while we do getch */ -- -- printw("Type any character to see it in bold\n"); -- ch = getch(); /* If raw() hadn't been called -- * we have to press enter before it -- * gets to the program */ -- if(ch == KEY_F(1)) /* Without keypad enabled this will */ -- printw("F1 Key pressed");/* not get to us either */ -- /* Without noecho() some ugly escape -- * charachters might have been printed -- * on screen */ -- else -- { printw("The pressed key is "); -- attron(A_BOLD); -- printw("%c", ch); -- attroff(A_BOLD); -- } -- refresh(); /* Print it on to the real screen */ -- getch(); /* Wait for user input */ -- endwin(); /* End curses mode */ -- -- return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>This program is self-explanatory. But I used functions which --aren't explained yet. The function <var class= --"LITERAL">getch()</var> is used to get a character from user. It is --equivalent to normal <var class="LITERAL">getchar()</var> except --that we can disable the line buffering to avoid &lt;enter&gt; after --input. Look for more about <var class="LITERAL">getch()</var>and --reading keys in the <a href="#KEYS">key management section</a> . --The functions attron and attroff are used to switch some attributes --on and off respectively. In the example I used them to print the --character in bold. These functions are explained in detail --later.</p> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="AWORDWINDOWS" id="AWORDWINDOWS">5. A --Word about Windows</a></h2> --<p>Before we plunge into the myriad ncurses functions, let me clear --few things about windows. Windows are explained in detail in --following <a href="#WINDOWS">sections</a></p> --<p>A Window is an imaginary screen defined by curses system. A --window does not mean a bordered window which you usually see on --Win9X platforms. When curses is initialized, it creates a default --window named <var class="LITERAL">stdscr</var> which represents --your 80x25 (or the size of window in which you are running) screen. --If you are doing simple tasks like printing few strings, reading --input etc., you can safely use this single window for all of your --purposes. You can also create windows and call functions which --explicitly work on the specified window.</p> --<p>For example, if you call</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> printw("Hi There !!!"); -- refresh();</font> --</pre></td> --</tr> --</table> --<p>It prints the string on stdscr at the present cursor position. --Similarly the call to refresh(), works on stdscr only.</p> --<p>Say you have created <a href="#WINDOWS">windows</a> then you --have to call a function with a 'w' added to the usual function.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> wprintw(win, "Hi There !!!"); -- wrefresh(win);</font> --</pre></td> --</tr> --</table> --<p>As you will see in the rest of the document, naming of functions --follow the same convention. For each function there usually are --three more functions.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000"> printw(string); /* Print on stdscr at present cursor position */ -+ initscr(); /* Start curses mode */ -+ raw(); /* Line buffering disabled */ -+ keypad(stdscr, TRUE); /* We get F1, F2 etc.. */ -+ noecho(); /* Don't echo() while we do getch */ -+ -+ printw("Type any character to see it in bold\n"); -+ ch = getch(); /* If raw() hadn't been called -+ * we have to press enter before it -+ * gets to the program */ -+ if(ch == KEY_F(1)) /* Without keypad enabled this will */ -+ printw("F1 Key pressed");/* not get to us either */ -+ /* Without noecho() some ugly escape -+ * charachters might have been printed -+ * on screen */ -+ else -+ { printw("The pressed key is "); -+ attron(A_BOLD); -+ printw("%c", ch); -+ attroff(A_BOLD); -+ } -+ refresh(); /* Print it on to the real screen */ -+ getch(); /* Wait for user input */ -+ endwin(); /* End curses mode */ -+ -+ return 0; -+}</SPAN -+></PRE -+></DIV -+><P -+>This program is self-explanatory. But I used functions which aren't explained -+yet. The function <TT -+CLASS="LITERAL" -+>getch()</TT -+> is used to get a -+character from user. It is equivalent to normal -+<TT -+CLASS="LITERAL" -+>getchar()</TT -+> except that we can disable the line -+buffering to avoid &lt;enter&gt; after input. Look for more about -+<TT -+CLASS="LITERAL" -+>getch()</TT -+>and reading keys in the <A -+HREF="#KEYS" -+> key management section </A -+>. The functions attron and attroff -+are used to switch some attributes on and off respectively. In the example I -+used them to print the character in bold. These functions are explained in detail -+later.</P -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="AWORDWINDOWS" -+>5. A Word about Windows</A -+></H2 -+><P -+> -+Before we plunge into the myriad ncurses functions, let me clear few things -+about windows. Windows are explained in detail in following <A -+HREF="#WINDOWS" -+> sections </A -+></P -+><P -+>A Window is an imaginary screen defined by curses system. A window does not mean -+a bordered window which you usually see on Win9X platforms. When curses is -+initialized, it creates a default window named -+<TT -+CLASS="LITERAL" -+>stdscr</TT -+> which represents your 80x25 (or the size -+of window in which you are running) screen. If you are doing simple tasks like -+printing few strings, reading input etc., you can safely use this single window -+for all of your purposes. You can also create windows and call functions which -+explicitly work on the specified window.</P -+><P -+>For example, if you call</P -+><PRE -+CLASS="PROGRAMLISTING" -+> printw("Hi There !!!"); -+ refresh();</PRE -+><P -+>It prints the string on stdscr at the present cursor position. Similarly the -+call to refresh(), works on stdscr only. </P -+><P -+>Say you have created <A -+HREF="#WINDOWS" -+>windows</A -+> then you have to -+call a function with a 'w' added to the usual function.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> wprintw(win, "Hi There !!!"); -+ wrefresh(win);</PRE -+><P -+>As you will see in the rest of the document, naming of functions follow the -+same convention. For each function there usually are three more functions.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> printw(string); /* Print on stdscr at present cursor position */ - mvprintw(y, x, string);/* Move to (y, x) then print string */ - wprintw(win, string); /* Print on window win at present cursor position */ - /* in the window */ - mvwprintw(win, y, x, string); /* Move to (y, x) relative to window */ -- /* co-ordinates and then print */</font> --</pre></td> --</tr> --</table> --<p>Usually the w-less functions are macros which expand to --corresponding w-function with stdscr as the window parameter.</p> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="PRINTW" id="PRINTW">6. Output --functions</a></h2> --<p>I guess you can't wait any more to see some action. Back to our --odyssey of curses functions. Now that curses is initialized, let's --interact with world.</p> --<p>There are three classes of functions which you can use to do --output on screen.</p> --<ol type="1"> --<li> --<p>addch() class: Print single character with attributes</p> --</li> --<li> --<p>printw() class: Print formatted output similar to printf()</p> --</li> --<li> --<p>addstr() class: Print strings</p> --</li> --</ol> --<p>These functions can be used interchangeably and it's a matter of --style as to which class is used. Let's see each one in detail.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ADDCHCLASS" id="ADDCHCLASS">6.1. addch() --class of functions</a></h3> --<p>These functions put a single character into the current cursor --location and advance the position of the cursor. You can give the --character to be printed but they usually are used to print a --character with some attributes. Attributes are explained in detail --in later <a href="#ATTRIB">sections</a> of the document. If a --character is associated with an attribute(bold, reverse video --etc.), when curses prints the character, it is printed in that --attribute.</p> --<p>In order to combine a character with some attributes, you have --two options:</p> --<ul> --<li> --<p>By OR'ing a single character with the desired attribute macros. --These attribute macros could be found in the header file --<var class="LITERAL">ncurses.h</var>. For example, you want to --print a character ch(of type char) bold and underlined, you would --call addch() as below.</p> --<table border="0" bgcolor="#E0E0E0" width="90%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> addch(ch | A_BOLD | A_UNDERLINE);</font> --</pre></td> --</tr> --</table> --</li> --<li> --<p>By using functions like <var class= --"LITERAL">attrset(),attron(),attroff()</var>. These functions are --explained in the <a href="#ATTRIB">Attributes</a> section. Briefly, --they manipulate the current attributes of the given window. Once --set, the character printed in the window are associated with the --attributes until it is turned off.</p> --</li> --</ul> --<p>Additionally, <var class="LITERAL">curses</var> provides some --special characters for character-based graphics. You can draw --tables, horizontal or vertical lines, etc. You can find all --avaliable characters in the header file <var class= --"LITERAL">ncurses.h</var>. Try looking for macros beginning with --<var class="LITERAL">ACS_</var> in this file.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="AEN298" id="AEN298">6.2. mvaddch(), --waddch() and mvwaddch()</a></h3> --<p><var class="LITERAL">mvaddch()</var> is used to move the cursor --to a given point, and then print. Thus, the calls:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000"> move(row,col); /* moves the cursor to row<em>th</em> row and col<em>th</em> column */ -- addch(ch);</font> --</pre></td> --</tr> --</table> -+ /* co-ordinates and then print */</PRE -+><P -+>Usually the w-less functions are macros which expand to corresponding w-function -+with stdscr as the window parameter.</P -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="PRINTW" -+>6. Output functions</A -+></H2 -+><P -+>I guess you can't wait any more to see some action. Back to our odyssey of -+curses functions. Now that curses is initialized, let's interact with -+world.</P -+><P -+>There are three classes of functions which you can use to do output on screen. -+<P -+></P -+><OL -+TYPE="1" -+><LI -+><P -+>addch() class: Print single character with attributes </P -+></LI -+><LI -+><P -+>printw() class: Print formatted output similar to printf()</P -+></LI -+><LI -+><P -+>addstr() class: Print strings</P -+></LI -+></OL -+></P -+><P -+>These functions can be used interchangeably and it's a matter of style as to -+which class is used. Let's see each one in detail.</P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ADDCHCLASS" -+>6.1. addch() class of functions</A -+></H3 -+><P -+>These functions put a single character into the current cursor location and -+advance the position of the cursor. You can give the character to be printed but -+they usually are used to print a character with some attributes. Attributes are -+explained in detail in later <A -+HREF="#ATTRIB" -+> sections </A -+> of the -+document. If a character is associated with an attribute(bold, reverse video -+etc.), when curses prints the character, it is printed in that attribute.</P -+><P -+>In order to combine a character with some attributes, you have two options:</P -+><P -+></P -+><UL -+><LI -+><P -+>By OR'ing a single character with the desired attribute macros. These attribute -+macros could be found in the header file -+<TT -+CLASS="LITERAL" -+>ncurses.h</TT -+>. For example, you want to print a -+character ch(of type char) bold and underlined, you would call addch() as below. -+<PRE -+CLASS="PROGRAMLISTING" -+> addch(ch | A_BOLD | A_UNDERLINE);</PRE -+></P -+></LI -+><LI -+><P -+>By using functions like <TT -+CLASS="LITERAL" -+>attrset(),attron(),attroff()</TT -+>. These functions are explained in the <A -+HREF="#ATTRIB" -+>Attributes</A -+> section. Briefly, they manipulate the current attributes of -+the given window. Once set, the character printed in the window are associated -+with the attributes until it is turned off.</P -+></LI -+></UL -+><P -+>Additionally, <TT -+CLASS="LITERAL" -+>curses</TT -+> provides some special -+characters for character-based graphics. You can draw tables, horizontal or -+vertical lines, etc. You can find all avaliable characters in the header file -+<TT -+CLASS="LITERAL" -+>ncurses.h</TT -+>. Try looking for macros beginning -+with <TT -+CLASS="LITERAL" -+>ACS_</TT -+> in this file. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="AEN298" -+>6.2. mvaddch(), waddch() and mvwaddch()</A -+></H3 -+><P -+><TT -+CLASS="LITERAL" -+>mvaddch()</TT -+> is used to move the cursor to a -+given point, and then print. Thus, the calls: -+<PRE -+CLASS="PROGRAMLISTING" -+> move(row,col); /* moves the cursor to row<SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>th</I -+></SPAN -+> row and col<SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>th</I -+></SPAN -+> column */ -+ addch(ch);</PRE -+> - can be replaced by --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> mvaddch(row,col,ch);</font> --</pre></td> --</tr> --</table> --<p><var class="LITERAL">waddch()</var> is similar to <var class= --"LITERAL">addch()</var>, except that it adds a character into the --given window. (Note that <var class="LITERAL">addch()</var> adds a --character into the window <var class="LITERAL">stdscr</var>.)</p> --<p>In a similar fashion <var class="LITERAL">mvwaddch()</var> --function is used to add a character into the given window at the --given coordinates.</p> --<p>Now, we are familiar with the basic output function <var class= --"LITERAL">addch()</var>. But, if we want to print a string, it --would be very annoying to print it character by character. --Fortunately, <var class="LITERAL">ncurses</var> provides --<var class="LITERAL">printf</var><em>-like</em> or <var class= --"LITERAL">puts</var><em>-like</em> functions.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="PRINTWCLASS" id="PRINTWCLASS">6.3. --printw() class of functions</a></h3> --<p>These functions are similar to <var class= --"LITERAL">printf()</var> with the added capability of printing at --any position on the screen.</p> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="PRINTWMVPRINTW" id= --"PRINTWMVPRINTW">6.3.1. printw() and mvprintw</a></h4> --<p>These two functions work much like <var class= --"LITERAL">printf()</var>. <var class="LITERAL">mvprintw()</var> can --be used to move the cursor to a position and then print. If you --want to move the cursor first and then print using <var class= --"LITERAL">printw()</var> function, use <var class= --"LITERAL">move()</var> first and then use <var class= --"LITERAL">printw()</var> though I see no point why one should avoid --using <var class="LITERAL">mvprintw()</var>, you have the --flexibility to manipulate.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="WPRINTWMVWPRINTW" id= --"WPRINTWMVWPRINTW">6.3.2. wprintw() and mvwprintw</a></h4> --<p>These two functions are similar to above two except that they --print in the corresponding window given as argument.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="VWPRINTW" id="VWPRINTW">6.3.3. --vwprintw()</a></h4> --<p>This function is similar to <var class= --"LITERAL">vprintf()</var>. This can be used when variable number of --arguments are to be printed.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="SIMPLEPRINTWEX" id= --"SIMPLEPRINTWEX">6.3.4. A Simple printw example</a></h4> --<div class="EXAMPLE"><a name="BPREX" id="BPREX"></a> --<p><b>Example 3. A Simple printw example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; /* ncurses.h includes stdio.h */ --#include &lt;string.h&gt; -+<PRE -+CLASS="PROGRAMLISTING" -+> mvaddch(row,col,ch);</PRE -+></P -+><P -+><TT -+CLASS="LITERAL" -+>waddch()</TT -+> is similar to -+<TT -+CLASS="LITERAL" -+>addch()</TT -+>, except that it adds a character into -+the given window. (Note that <TT -+CLASS="LITERAL" -+>addch()</TT -+> adds a -+character into the window <TT -+CLASS="LITERAL" -+>stdscr</TT -+>.)</P -+><P -+>In a similar fashion <TT -+CLASS="LITERAL" -+>mvwaddch()</TT -+> function is -+used to add a character into the given window at the given coordinates.</P -+><P -+>Now, we are familiar with the basic output function -+<TT -+CLASS="LITERAL" -+>addch()</TT -+>. But, if we want to print a string, it -+would be very annoying to print it character by character. Fortunately, -+<TT -+CLASS="LITERAL" -+>ncurses</TT -+> provides <TT -+CLASS="LITERAL" -+>printf</TT -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>-like</I -+></SPAN -+> or -+<TT -+CLASS="LITERAL" -+>puts</TT -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>-like</I -+></SPAN -+> functions.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="PRINTWCLASS" -+>6.3. printw() class of functions</A -+></H3 -+><P -+>These functions are similar to <TT -+CLASS="LITERAL" -+>printf()</TT -+> with -+the added capability of printing at any position on the screen. </P -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="PRINTWMVPRINTW" -+>6.3.1. printw() and mvprintw</A -+></H4 -+><P -+>These two functions work much like <TT -+CLASS="LITERAL" -+>printf()</TT -+>. -+<TT -+CLASS="LITERAL" -+>mvprintw()</TT -+> can be used to move the cursor to a -+position and then print. If you want to move the cursor first and then print -+using <TT -+CLASS="LITERAL" -+>printw()</TT -+> function, use -+<TT -+CLASS="LITERAL" -+>move() </TT -+> first and then use -+<TT -+CLASS="LITERAL" -+>printw()</TT -+> though I see no point why one should -+avoid using <TT -+CLASS="LITERAL" -+>mvprintw()</TT -+>, you have the -+flexibility to manipulate. </P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="WPRINTWMVWPRINTW" -+>6.3.2. wprintw() and mvwprintw</A -+></H4 -+><P -+>These two functions are similar to above two except that they print in the -+corresponding window given as argument. </P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="VWPRINTW" -+>6.3.3. vwprintw()</A -+></H4 -+><P -+>This function is similar to <TT -+CLASS="LITERAL" -+>vprintf()</TT -+>. This can -+be used when variable number of arguments are to be printed.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="SIMPLEPRINTWEX" -+>6.3.4. A Simple printw example</A -+></H4 -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BPREX" -+></A -+><P -+><B -+>Example 3. A Simple printw example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; /* ncurses.h includes stdio.h */ -+#include &#60;string.h&#62; - - int main() - { -- char mesg[]="Just a string"; /* message to be appeared on the screen */ -- int row,col; /* to store the number of rows and * -- * the number of colums of the screen */ -- initscr(); /* start the curses mode */ -- getmaxyx(stdscr,row,col); /* get the number of rows and columns */ -+ char mesg[]="Just a string"; /* message to be appeared on the screen */ -+ int row,col; /* to store the number of rows and * -+ * the number of colums of the screen */ -+ initscr(); /* start the curses mode */ -+ getmaxyx(stdscr,row,col); /* get the number of rows and columns */ - mvprintw(row/2,(col-strlen(mesg))/2,"%s",mesg); -- /* print the message at the center of the screen */ -+ /* print the message at the center of the screen */ - mvprintw(row-2,0,"This screen has %d rows and %d columns\n",row,col); - printw("Try resizing your window(if possible) and then run this program again"); - refresh(); -@@ -1268,192 +2327,302 @@ - endwin(); - - return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>Above program demonstrates how easy it is to use <var class= --"LITERAL">printw</var>. You just feed the coordinates and the --message to be appeared on the screen, then it does what you --want.</p> --<p>The above program introduces us to a new function <var class= --"LITERAL">getmaxyx()</var>, a macro defined in <var class= --"LITERAL">ncurses.h</var>. It gives the number of columns and the --number of rows in a given window. <var class= --"LITERAL">getmaxyx()</var> does this by updating the variables --given to it. Since <var class="LITERAL">getmaxyx()</var> is not a --function we don't pass pointers to it, we just give two integer --variables.</p> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ADDSTRCLASS" id="ADDSTRCLASS">6.4. --addstr() class of functions</a></h3> --<p><var class="LITERAL">addstr()</var> is used to put a character --string into a given window. This function is similar to calling --<var class="LITERAL">addch()</var> once for each character in a --given string. This is true for all output functions. There are --other functions from this family such as <var class= --"LITERAL">mvaddstr(),mvwaddstr()</var> and <var class= --"LITERAL">waddstr()</var>, which obey the naming convention of --curses.(e.g. mvaddstr() is similar to the respective calls move() --and then addstr().) Another function of this family is addnstr(), --which takes an integer parameter(say n) additionally. This function --puts at most n characters into the screen. If n is negative, then --the entire string will be added.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ACAUTION" id="ACAUTION">6.5. A word of --caution</a></h3> --<p>All these functions take y co-ordinate first and then x in their --arguments. A common mistake by beginners is to pass x,y in that --order. If you are doing too many manipulations of (y,x) --co-ordinates, think of dividing the screen into windows and --manipulate each one separately. Windows are explained in the --<a href="#WINDOWS">windows</a> section.</p> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="SCANW" id="SCANW">7. Input --functions</a></h2> --<p>Well, printing without taking input, is boring. Let's see --functions which allow us to get input from user. These functions --also can be divided into three categories.</p> --<ol type="1"> --<li> --<p>getch() class: Get a character</p> --</li> --<li> --<p>scanw() class: Get formatted input</p> --</li> --<li> --<p>getstr() class: Get strings</p> --</li> --</ol> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="GETCHCLASS" id="GETCHCLASS">7.1. getch() --class of functions</a></h3> --<p>These functions read a single character from the terminal. But --there are several subtle facts to consider. For example if you --don't use the function cbreak(), curses will not read your input --characters contiguously but will begin read them only after a new --line or an EOF is encountered. In order to avoid this, the cbreak() --function must used so that characters are immediately available to --your program. Another widely used function is noecho(). As the name --suggests, when this function is set (used), the characters that are --keyed in by the user will not show up on the screen. The two --functions cbreak() and noecho() are typical examples of key --management. Functions of this genre are explained in the <a href= --"#KEYS">key management section</a> .</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="SCANWCLASS" id="SCANWCLASS">7.2. scanw() --class of functions</a></h3> --<p>These functions are similar to <var class= --"LITERAL">scanf()</var> with the added capability of getting the --input from any location on the screen.</p> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="SCANWMVSCANW" id="SCANWMVSCANW">7.2.1. --scanw() and mvscanw</a></h4> --<p>The usage of these functions is similar to that of <var class= --"LITERAL">sscanf()</var>, where the line to be scanned is provided --by <var class="LITERAL">wgetstr()</var> function. That is, these --functions call to <var class="LITERAL">wgetstr()</var> --function(explained below) and uses the resulting line for a --scan.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="WSCANWMVWSCANW" id= --"WSCANWMVWSCANW">7.2.2. wscanw() and mvwscanw()</a></h4> --<p>These are similar to above two functions except that they read --from a window, which is supplied as one of the arguments to these --functions.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="VWSCANW" id="VWSCANW">7.2.3. --vwscanw()</a></h4> --<p>This function is similar to <var class="LITERAL">vscanf()</var>. --This can be used when a variable number of arguments are to be --scanned.</p> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="GETSTRCLASS" id="GETSTRCLASS">7.3. --getstr() class of functions</a></h3> --<p>These functions are used to get strings from the terminal. In --essence, this function performs the same task as would be achieved --by a series of calls to <var class="LITERAL">getch()</var> until a --newline, carriage return, or end-of-file is received. The resulting --string of characters are pointed to by <var class= --"LITERAL">str</var>, which is a character pointer provided by the --user.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="GETSTREX" id="GETSTREX">7.4. Some --examples</a></h3> --<div class="EXAMPLE"><a name="BSCEX" id="BSCEX"></a> --<p><b>Example 4. A Simple scanw example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; /* ncurses.h includes stdio.h */ --#include &lt;string.h&gt; -+}</SPAN -+></PRE -+></DIV -+><P -+>Above program demonstrates how easy it is to use <TT -+CLASS="LITERAL" -+>printw</TT -+>. You just feed the coordinates and the message to be appeared -+on the screen, then it does what you want.</P -+><P -+>The above program introduces us to a new function -+<TT -+CLASS="LITERAL" -+>getmaxyx()</TT -+>, a macro defined in -+<TT -+CLASS="LITERAL" -+>ncurses.h</TT -+>. It gives the number of columns and -+the number of rows in a given window. -+<TT -+CLASS="LITERAL" -+>getmaxyx()</TT -+> does this by updating the variables -+given to it. Since <TT -+CLASS="LITERAL" -+>getmaxyx()</TT -+> is not a function -+we don't pass pointers to it, we just give two integer variables. </P -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ADDSTRCLASS" -+>6.4. addstr() class of functions</A -+></H3 -+><P -+><TT -+CLASS="LITERAL" -+>addstr()</TT -+> is used to put a character string into -+a given window. This function is similar to calling -+<TT -+CLASS="LITERAL" -+>addch()</TT -+> once for each character in a given -+string. This is true for all output functions. There are other functions from -+this family such as <TT -+CLASS="LITERAL" -+>mvaddstr(),mvwaddstr()</TT -+> and -+<TT -+CLASS="LITERAL" -+>waddstr()</TT -+>, which obey the naming convention of -+curses.(e.g. mvaddstr() is similar to the respective calls move() and then -+addstr().) Another function of this family is addnstr(), which takes an integer -+parameter(say n) additionally. This function puts at most n characters into the -+screen. If n is negative, then the entire string will be added. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ACAUTION" -+>6.5. A word of caution</A -+></H3 -+><P -+>All these functions take y co-ordinate first and then x in their arguments. -+A common mistake by beginners is to pass x,y in that order. If you are -+doing too many manipulations of (y,x) co-ordinates, think of dividing the -+screen into windows and manipulate each one separately. Windows are explained -+in the <A -+HREF="#WINDOWS" -+> windows </A -+> section.</P -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="SCANW" -+>7. Input functions</A -+></H2 -+><P -+>Well, printing without taking input, is boring. Let's see functions which -+allow us to get input from user. These functions also can be divided into -+three categories.</P -+><P -+></P -+><OL -+TYPE="1" -+><LI -+><P -+>getch() class: Get a character</P -+></LI -+><LI -+><P -+>scanw() class: Get formatted input</P -+></LI -+><LI -+><P -+>getstr() class: Get strings</P -+></LI -+></OL -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="GETCHCLASS" -+>7.1. getch() class of functions</A -+></H3 -+><P -+>These functions read a single character from the terminal. But there are several -+subtle facts to consider. For example if you don't use the function cbreak(), -+curses will not read your input characters contiguously but will begin read them -+only after a new line or an EOF is encountered. In order to avoid this, the -+cbreak() function must used so that characters are immediately available to your -+program. Another widely used function is noecho(). As the name suggests, when -+this function is set (used), the characters that are keyed in by the user will -+not show up on the screen. The two functions cbreak() and noecho() are typical -+examples of key management. Functions of this genre are explained in the -+<A -+HREF="#KEYS" -+>key management section </A -+>.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="SCANWCLASS" -+>7.2. scanw() class of functions</A -+></H3 -+><P -+>These functions are similar to <TT -+CLASS="LITERAL" -+>scanf()</TT -+> with the -+added capability of getting the input from any location on the screen.</P -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="SCANWMVSCANW" -+>7.2.1. scanw() and mvscanw</A -+></H4 -+><P -+>The usage of these functions is similar to that of -+<TT -+CLASS="LITERAL" -+>sscanf()</TT -+>, where the line to be scanned is -+provided by <TT -+CLASS="LITERAL" -+>wgetstr()</TT -+> function. That is, these -+functions call to <TT -+CLASS="LITERAL" -+>wgetstr()</TT -+> function(explained -+below) and uses the resulting line for a scan. </P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="WSCANWMVWSCANW" -+>7.2.2. wscanw() and mvwscanw()</A -+></H4 -+><P -+>These are similar to above two functions except that they read from a window, -+which is supplied as one of the arguments to these functions. </P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="VWSCANW" -+>7.2.3. vwscanw()</A -+></H4 -+><P -+>This function is similar to <TT -+CLASS="LITERAL" -+>vscanf()</TT -+>. This can -+be used when a variable number of arguments are to be scanned.</P -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="GETSTRCLASS" -+>7.3. getstr() class of functions</A -+></H3 -+><P -+>These functions are used to get strings from the terminal. In essence, this -+function performs the same task as would be achieved by a series of calls to -+<TT -+CLASS="LITERAL" -+>getch()</TT -+> until a newline, carriage return, or -+end-of-file is received. The resulting string of characters are pointed to by -+<TT -+CLASS="LITERAL" -+>str</TT -+>, which is a character pointer provided by -+the user.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="GETSTREX" -+>7.4. Some examples</A -+></H3 -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BSCEX" -+></A -+><P -+><B -+>Example 4. A Simple scanw example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; /* ncurses.h includes stdio.h */ -+#include &#60;string.h&#62; - - int main() - { -- char mesg[]="Enter a string: "; /* message to be appeared on the screen */ -+ char mesg[]="Enter a string: "; /* message to be appeared on the screen */ - char str[80]; -- int row,col; /* to store the number of rows and * -- * the number of colums of the screen */ -- initscr(); /* start the curses mode */ -- getmaxyx(stdscr,row,col); /* get the number of rows and columns */ -+ int row,col; /* to store the number of rows and * -+ * the number of colums of the screen */ -+ initscr(); /* start the curses mode */ -+ getmaxyx(stdscr,row,col); /* get the number of rows and columns */ - mvprintw(row/2,(col-strlen(mesg))/2,"%s",mesg); -- /* print the message at the center of the screen */ -+ /* print the message at the center of the screen */ - getstr(str); - mvprintw(LINES - 2, 0, "You Entered: %s", str); - getch(); - endwin(); - - return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="ATTRIB" id="ATTRIB">8. --Attributes</a></h2> --<p>We have seen an example of how attributes can be used to print --characters with some special effects. Attributes, when set --prudently, can present information in an easy, understandable --manner. The following program takes a C file as input and prints --the file with comments in bold. Scan through the code.</p> --<div class="EXAMPLE"><a name="BSIAT" id="BSIAT"></a> --<p><b>Example 5. A Simple Attributes example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">/* pager functionality by Joseph Spainhour" &lt;spainhou@bellsouth.net&gt; */ --#include &lt;ncurses.h&gt; --#include &lt;stdlib.h&gt; -+}</SPAN -+></PRE -+></DIV -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="ATTRIB" -+>8. Attributes</A -+></H2 -+><P -+>We have seen an example of how attributes can be used to print characters with -+some special effects. Attributes, when set prudently, can present information in -+an easy, understandable manner. The following program takes a C file as input -+and prints the file with comments in bold. Scan through the code. </P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BSIAT" -+></A -+><P -+><B -+>Example 5. A Simple Attributes example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>/* pager functionality by Joseph Spainhour" &#60;spainhou@bellsouth.net&#62; */ -+#include &#60;ncurses.h&#62; -+#include &#60;stdlib.h&#62; - - int main(int argc, char *argv[]) - { -@@ -1464,7 +2633,7 @@ - - if(argc != 2) - { -- printf("Usage: %s &lt;a c file name&gt;\n", argv[0]); -+ printf("Usage: %s &#60;a c file name&#62;\n", argv[0]); - exit(1); - } - fp = fopen(argv[1], "r"); -@@ -1473,77 +2642,101 @@ - perror("Cannot open input file"); - exit(1); - } -- initscr(); /* Start curses mode */ -- getmaxyx(stdscr, row, col); /* find the boundaries of the screeen */ -- while((ch = fgetc(fp)) != EOF) /* read the file till we reach the end */ -+ initscr(); /* Start curses mode */ -+ getmaxyx(stdscr, row, col); /* find the boundaries of the screeen */ -+ while((ch = fgetc(fp)) != EOF) /* read the file till we reach the end */ - { -- getyx(stdscr, y, x); /* get the current curser position */ -- if(y == (row - 1)) /* are we are at the end of the screen */ -+ getyx(stdscr, y, x); /* get the current curser position */ -+ if(y == (row - 1)) /* are we are at the end of the screen */ - { -- printw("&lt;-Press Any Key-&gt;"); /* tell the user to press a key */ -+ printw("&#60;-Press Any Key-&#62;"); /* tell the user to press a key */ - getch(); -- clear(); /* clear the screen */ -- move(0, 0); /* start at the beginning of the screen */ -+ clear(); /* clear the screen */ -+ move(0, 0); /* start at the beginning of the screen */ - } -- if(prev == '/' &amp;&amp; ch == '*') /* If it is / and * then only -- * switch bold on */ -+ if(prev == '/' &#38;&#38; ch == '*') /* If it is / and * then only -+ * switch bold on */ - { -- attron(A_BOLD); /* cut bold on */ -- getyx(stdscr, y, x); /* get the current curser position */ -- move(y, x - 1); /* back up one space */ -- printw("%c%c", '/', ch); /* The actual printing is done here */ -+ attron(A_BOLD); /* cut bold on */ -+ getyx(stdscr, y, x); /* get the current curser position */ -+ move(y, x - 1); /* back up one space */ -+ printw("%c%c", '/', ch); /* The actual printing is done here */ - } - else - printw("%c", ch); - refresh(); -- if(prev == '*' &amp;&amp; ch == '/') -- attroff(A_BOLD); /* Switch it off once we got * -- * and then / */ -+ if(prev == '*' &#38;&#38; ch == '/') -+ attroff(A_BOLD); /* Switch it off once we got * -+ * and then / */ - prev = ch; - } -- endwin(); /* End curses mode */ -+ endwin(); /* End curses mode */ - fclose(fp); - return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>Don't worry about all those initialization and other crap. --Concentrate on the while loop. It reads each character in the file --and searches for the pattern /*. Once it spots the pattern, it --switches the BOLD attribute on with <var class= --"LITERAL">attron()</var> . When we get the pattern */ it is --switched off by <var class="LITERAL">attroff()</var> .</p> --<p>The above program also introduces us to two useful functions --<var class="LITERAL">getyx()</var> and <var class= --"LITERAL">move()</var>. The first function gets the co-ordinates of --the present cursor into the variables y, x. Since getyx() is a -+}</SPAN -+></PRE -+></DIV -+><P -+> -+Don't worry about all those initialization and other crap. Concentrate on -+the while loop. It reads each character in the file and searches for the -+pattern /*. Once it spots the pattern, it switches the BOLD attribute on with -+<TT -+CLASS="LITERAL" -+> attron()</TT -+> . When we get the pattern */ it is -+switched off by <TT -+CLASS="LITERAL" -+> attroff()</TT -+> .</P -+><P -+> -+The above program also introduces us to two useful functions -+<TT -+CLASS="LITERAL" -+>getyx() </TT -+> and -+<TT -+CLASS="LITERAL" -+>move()</TT -+>. The first function gets the -+co-ordinates of the present cursor into the variables y, x. Since getyx() is a - macro we don't have to pass pointers to variables. The function --<var class="LITERAL">move()</var> moves the cursor to the --co-ordinates given to it.</p> --<p>The above program is really a simple one which doesn't do much. --On these lines one could write a more useful program which reads a --C file, parses it and prints it in different colors. One could even --extend it to other languages as well.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ATTRIBDETAILS" id="ATTRIBDETAILS">8.1. --The details</a></h3> --<p>Let's get into more details of attributes. The functions --<var class="LITERAL">attron(), attroff(), attrset()</var> , and --their sister functions <var class="LITERAL">attr_get()</var> etc.. --can be used to switch attributes on/off , get attributes and --produce a colorful display.</p> --<p>The functions attron and attroff take a bit-mask of attributes --and switch them on or off, respectively. The following video --attributes, which are defined in &lt;curses.h&gt; can be passed to --these functions.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> -+<TT -+CLASS="LITERAL" -+>move()</TT -+> moves the cursor to the co-ordinates -+given to it. </P -+><P -+> -+The above program is really a simple one which doesn't do much. On these lines -+one could write a more useful program which reads a C file, parses it and prints -+it in different colors. One could even extend it to other languages as well.</P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ATTRIBDETAILS" -+>8.1. The details</A -+></H3 -+><P -+>Let's get into more details of attributes. The functions <TT -+CLASS="LITERAL" -+>attron(), attroff(), attrset() </TT -+>, and their sister functions -+<TT -+CLASS="LITERAL" -+> attr_get()</TT -+> etc.. can be used to switch -+attributes on/off , get attributes and produce a colorful display.</P -+><P -+>The functions attron and attroff take a bit-mask of attributes and switch them -+on or off, respectively. The following video attributes, which are defined in -+&lt;curses.h&gt; can be passed to these functions. </P -+><PRE -+CLASS="PROGRAMLISTING" -+> - A_NORMAL Normal display (no highlight) - A_STANDOUT Best highlighting mode of the terminal. - A_UNDERLINE Underlining -@@ -1556,368 +2749,445 @@ - A_ALTCHARSET Alternate character set - A_CHARTEXT Bit-mask to extract a character - COLOR_PAIR(n) Color-pair number n -- </font> --</pre></td> --</tr> --</table> --<p>The last one is the most colorful one :-) Colors are explained --in the <a href="#color" target="_top">next sections</a>.</p> --<p>We can OR(|) any number of above attributes to get a combined --effect. If you wanted reverse video with blinking characters you --can use</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> attron(A_REVERSE | A_BLINK);</font> --</pre></td> --</tr> --</table> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ATTRONVSATTRSET" id= --"ATTRONVSATTRSET">8.2. attron() vs attrset()</a></h3> --<p>Then what is the difference between attron() and attrset()? --attrset sets the attributes of window whereas attron just switches --on the attribute given to it. So attrset() fully overrides whatever --attributes the window previously had and sets it to the new --attribute(s). Similarly attroff() just switches off the --attribute(s) given to it as an argument. This gives us the --flexibility of managing attributes easily.But if you use them --carelessly you may loose track of what attributes the window has --and garble the display. This is especially true while managing --menus with colors and highlighting. So decide on a consistent --policy and stick to it. You can always use <var class= --"LITERAL">standend()</var> which is equivalent to <var class= --"LITERAL">attrset(A_NORMAL)</var> which turns off all attributes --and brings you to normal mode.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ATTR_GET" id="ATTR_GET">8.3. --attr_get()</a></h3> --<p>The function attr_get() gets the current attributes and color --pair of the window. Though we might not use this as often as the --above functions, this is useful in scanning areas of screen. Say we --wanted to do some complex update on screen and we are not sure what --attribute each character is associated with. Then this function can --be used with either attrset or attron to produce the desired --effect.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ATTR_FUNCS" id="ATTR_FUNCS">8.4. attr_ --functions</a></h3> --<p>There are series of functions like attr_set(), attr_on etc.. --These are similar to above functions except that they take --parameters of type <var class="LITERAL">attr_t</var>.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="WATTRFUNCS" id="WATTRFUNCS">8.5. wattr --functions</a></h3> --<p>For each of the above functions we have a corresponding function --with 'w' which operates on a particular window. The above functions --operate on stdscr.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="CHGAT" id="CHGAT">8.6. chgat() --functions</a></h3> --<p>The function chgat() is listed in the end of the man page --curs_attr. It actually is a useful one. This function can be used --to set attributes for a group of characters without moving. I mean --it !!! without moving the cursor :-) It changes the attributes of a --given number of characters starting at the current cursor --location.</p> --<p>We can give -1 as the character count to update till end of --line. If you want to change attributes of characters from current --position to end of line, just use this.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> chgat(-1, A_REVERSE, 0, NULL);</font> --</pre></td> --</tr> --</table> --<p>This function is useful when changing attributes for characters --that are already on the screen. Move to the character from which --you want to change and change the attribute.</p> --<p>Other functions wchgat(), mvchgat(), wchgat() behave similarly --except that the w functions operate on the particular window. The --mv functions first move the cursor then perform the work given to --them. Actually chgat is a macro which is replaced by a wchgat() --with stdscr as the window. Most of the "w-less" functions are --macros.</p> --<div class="EXAMPLE"><a name="BWICH" id="BWICH"></a> --<p><b>Example 6. Chgat() Usage example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; -+ </PRE -+><P -+> -+The last one is the most colorful one :-) Colors are explained in the -+<A -+HREF="#color" -+TARGET="_top" -+>next sections</A -+>.</P -+><P -+>We can OR(|) any number of above attributes to get a combined effect. If you -+wanted reverse video with blinking characters you can use</P -+><PRE -+CLASS="PROGRAMLISTING" -+> attron(A_REVERSE | A_BLINK);</PRE -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ATTRONVSATTRSET" -+>8.2. attron() vs attrset()</A -+></H3 -+><P -+>Then what is the difference between attron() and attrset()? attrset sets the -+attributes of window whereas attron just switches on the attribute given to it. -+So attrset() fully overrides whatever attributes the window previously had and -+sets it to the new attribute(s). Similarly attroff() just switches off the -+attribute(s) given to it as an argument. This gives us the flexibility of -+managing attributes easily.But if you use them carelessly you may loose track of -+what attributes the window has and garble the display. This is especially true -+while managing menus with colors and highlighting. So decide on a consistent -+policy and stick to it. You can always use <TT -+CLASS="LITERAL" -+> standend()</TT -+> which is equivalent to <TT -+CLASS="LITERAL" -+> attrset(A_NORMAL)</TT -+> which turns off all attributes and brings you to normal mode.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ATTR_GET" -+>8.3. attr_get()</A -+></H3 -+><P -+>&#13;The function attr_get() gets the current attributes and color pair of the -+window. Though we might not use this as often as the above functions, this is -+useful in scanning areas of screen. Say we wanted to do some complex update on -+screen and we are not sure what attribute each character is associated with. -+Then this function can be used with either attrset or attron to produce the -+desired effect.&#13;</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ATTR_FUNCS" -+>8.4. attr_ functions</A -+></H3 -+><P -+>There are series of functions like attr_set(), attr_on etc.. These are similar -+to above functions except that they take parameters of type -+<TT -+CLASS="LITERAL" -+>attr_t</TT -+>.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="WATTRFUNCS" -+>8.5. wattr functions</A -+></H3 -+><P -+>For each of the above functions we have a corresponding function with 'w' which -+operates on a particular window. The above functions operate on stdscr. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="CHGAT" -+>8.6. chgat() functions</A -+></H3 -+><P -+>The function chgat() is listed in the end of the man page curs_attr. It actually -+is a useful one. This function can be used to set attributes for a group of -+characters without moving. I mean it !!! without moving the cursor :-) It -+changes the attributes of a given number of characters starting at the current -+cursor location.</P -+><P -+>We can give -1 as the character count to update till end of line. If you want to -+change attributes of characters from current position to end of line, just use -+this.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> chgat(-1, A_REVERSE, 0, NULL);</PRE -+><P -+> -+This function is useful when changing attributes for characters that are -+already on the screen. Move to the character from which you want to change and -+change the attribute. </P -+><P -+>Other functions wchgat(), mvchgat(), wchgat() behave similarly except that the w -+functions operate on the particular window. The mv functions first move the -+cursor then perform the work given to them. Actually chgat is a macro which is -+replaced by a wchgat() with stdscr as the window. Most of the "w-less" functions -+are macros.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BWICH" -+></A -+><P -+><B -+>Example 6. Chgat() Usage example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; - - int main(int argc, char *argv[]) --{ initscr(); /* Start curses mode */ -- start_color(); /* Start color functionality */ -- -- init_pair(1, COLOR_CYAN, COLOR_BLACK); -- printw("A Big string which i didn't care to type fully "); -- mvchgat(0, 0, -1, A_BLINK, 1, NULL); -- /* -- * First two parameters specify the position at which to start -- * Third parameter number of characters to update. -1 means till -- * end of line -- * Forth parameter is the normal attribute you wanted to give -- * to the charcter -- * Fifth is the color index. It is the index given during init_pair() -- * use 0 if you didn't want color -- * Sixth one is always NULL -- */ -- refresh(); -- getch(); -- endwin(); /* End curses mode */ -- return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>This example also introduces us to the color world of curses. --Colors will be explained in detail later. Use 0 for no color.</p> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="WINDOWS" id="WINDOWS">9. --Windows</a></h2> --<p>Windows form the most important concept in curses. You have seen --the standard window stdscr above where all the functions implicitly --operated on this window. Now to make design even a simplest GUI, --you need to resort to windows. The main reason you may want to use --windows is to manipulate parts of the screen separately, for better --efficiency, by updating only the windows that need to be changed --and for a better design. I would say the last reason is the most --important in going for windows. You should always strive for a --better and easy-to-manage design in your programs. If you are --writing big, complex GUIs this is of pivotal importance before you --start doing anything.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="WINDOWBASICS" id="WINDOWBASICS">9.1. The --basics</a></h3> --<p>A Window can be created by calling the function <var class= --"LITERAL">newwin()</var>. It doesn't create any thing on the screen --actually. It allocates memory for a structure to manipulate the --window and updates the structure with data regarding the window --like it's size, beginy, beginx etc.. Hence in curses, a window is --just an abstraction of an imaginary window, which can be --manipulated independent of other parts of screen. The function --newwin() returns a pointer to structure WINDOW, which can be passed --to window related functions like wprintw() etc.. Finally the window --can be destroyed with delwin(). It will deallocate the memory --associated with the window structure.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="LETBEWINDOW" id="LETBEWINDOW">9.2. Let --there be a Window !!!</a></h3> --<p>What fun is it, if a window is created and we can't see it. So --the fun part begins by displaying the window. The function --<var class="LITERAL">box()</var> can be used to draw a border --around the window. Let's explore these functions in more detail in --this example.</p> --<div class="EXAMPLE"><a name="BWIBO" id="BWIBO"></a> --<p><b>Example 7. Window Border example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; -+{ initscr(); /* Start curses mode */ -+ start_color(); /* Start color functionality */ -+ -+ init_pair(1, COLOR_CYAN, COLOR_BLACK); -+ printw("A Big string which i didn't care to type fully "); -+ mvchgat(0, 0, -1, A_BLINK, 1, NULL); -+ /* -+ * First two parameters specify the position at which to start -+ * Third parameter number of characters to update. -1 means till -+ * end of line -+ * Forth parameter is the normal attribute you wanted to give -+ * to the charcter -+ * Fifth is the color index. It is the index given during init_pair() -+ * use 0 if you didn't want color -+ * Sixth one is always NULL -+ */ -+ refresh(); -+ getch(); -+ endwin(); /* End curses mode */ -+ return 0; -+}</SPAN -+></PRE -+></DIV -+><P -+>This example also introduces us to the color world of curses. Colors will be -+explained in detail later. Use 0 for no color.</P -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="WINDOWS" -+>9. Windows</A -+></H2 -+><P -+>Windows form the most important concept in curses. You have seen the standard -+window stdscr above where all the functions implicitly operated on this window. -+Now to make design even a simplest GUI, you need to resort to windows. The main -+reason you may want to use windows is to manipulate parts of the screen -+separately, for better efficiency, by updating only the windows that need to be -+changed and for a better design. I would say the last reason is the most -+important in going for windows. You should always strive for a better and -+easy-to-manage design in your programs. If you are writing big, complex GUIs -+this is of pivotal importance before you start doing anything.</P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="WINDOWBASICS" -+>9.1. The basics</A -+></H3 -+><P -+>A Window can be created by calling the function -+<TT -+CLASS="LITERAL" -+>newwin()</TT -+>. It doesn't create any thing on the -+screen actually. It allocates memory for a structure to manipulate the window -+and updates the structure with data regarding the window like it's size, beginy, -+beginx etc.. Hence in curses, a window is just an abstraction of an imaginary -+window, which can be manipulated independent of other parts of screen. The -+function newwin() returns a pointer to structure WINDOW, which can be passed to -+window related functions like wprintw() etc.. Finally the window can be -+destroyed with delwin(). It will deallocate the memory associated with the -+window structure.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="LETBEWINDOW" -+>9.2. Let there be a Window !!!</A -+></H3 -+><P -+>What fun is it, if a window is created and we can't see it. So the fun part -+begins by displaying the window. The function -+<TT -+CLASS="LITERAL" -+>box()</TT -+> can be used to draw a border around the -+window. Let's explore these functions in more detail in this example.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BWIBO" -+></A -+><P -+><B -+>Example 7. Window Border example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; - - - WINDOW *create_newwin(int height, int width, int starty, int startx); - void destroy_win(WINDOW *local_win); - - int main(int argc, char *argv[]) --{ WINDOW *my_win; -- int startx, starty, width, height; -- int ch; -- -- initscr(); /* Start curses mode */ -- cbreak(); /* Line buffering disabled, Pass on -- * everty thing to me */ -- keypad(stdscr, TRUE); /* I need that nifty F1 */ -- -- height = 3; -- width = 10; -- starty = (LINES - height) / 2; /* Calculating for a center placement */ -- startx = (COLS - width) / 2; /* of the window */ -- printw("Press F1 to exit"); -- refresh(); -- my_win = create_newwin(height, width, starty, startx); -- -- while((ch = getch()) != KEY_F(1)) -- { switch(ch) -- { case KEY_LEFT: -- destroy_win(my_win); -- my_win = create_newwin(height, width, starty,--startx); -- break; -- case KEY_RIGHT: -- destroy_win(my_win); -- my_win = create_newwin(height, width, starty,++startx); -- break; -- case KEY_UP: -- destroy_win(my_win); -- my_win = create_newwin(height, width, --starty,startx); -- break; -- case KEY_DOWN: -- destroy_win(my_win); -- my_win = create_newwin(height, width, ++starty,startx); -- break; -- } -- } -- -- endwin(); /* End curses mode */ -- return 0; -+{ WINDOW *my_win; -+ int startx, starty, width, height; -+ int ch; -+ -+ initscr(); /* Start curses mode */ -+ cbreak(); /* Line buffering disabled, Pass on -+ * everty thing to me */ -+ keypad(stdscr, TRUE); /* I need that nifty F1 */ -+ -+ height = 3; -+ width = 10; -+ starty = (LINES - height) / 2; /* Calculating for a center placement */ -+ startx = (COLS - width) / 2; /* of the window */ -+ printw("Press F1 to exit"); -+ refresh(); -+ my_win = create_newwin(height, width, starty, startx); -+ -+ while((ch = getch()) != KEY_F(1)) -+ { switch(ch) -+ { case KEY_LEFT: -+ destroy_win(my_win); -+ my_win = create_newwin(height, width, starty,--startx); -+ break; -+ case KEY_RIGHT: -+ destroy_win(my_win); -+ my_win = create_newwin(height, width, starty,++startx); -+ break; -+ case KEY_UP: -+ destroy_win(my_win); -+ my_win = create_newwin(height, width, --starty,startx); -+ break; -+ case KEY_DOWN: -+ destroy_win(my_win); -+ my_win = create_newwin(height, width, ++starty,startx); -+ break; -+ } -+ } -+ -+ endwin(); /* End curses mode */ -+ return 0; - } - - WINDOW *create_newwin(int height, int width, int starty, int startx) --{ WINDOW *local_win; -+{ WINDOW *local_win; - -- local_win = newwin(height, width, starty, startx); -- box(local_win, 0 , 0); /* 0, 0 gives default characters -- * for the vertical and horizontal -- * lines */ -- wrefresh(local_win); /* Show that box */ -+ local_win = newwin(height, width, starty, startx); -+ box(local_win, 0 , 0); /* 0, 0 gives default characters -+ * for the vertical and horizontal -+ * lines */ -+ wrefresh(local_win); /* Show that box */ - -- return local_win; -+ return local_win; - } - - void destroy_win(WINDOW *local_win) --{ -- /* box(local_win, ' ', ' '); : This won't produce the desired -- * result of erasing the window. It will leave it's four corners -- * and so an ugly remnant of window. -- */ -- wborder(local_win, ' ', ' ', ' ',' ',' ',' ',' ',' '); -- /* The parameters taken are -- * 1. win: the window on which to operate -- * 2. ls: character to be used for the left side of the window -- * 3. rs: character to be used for the right side of the window -- * 4. ts: character to be used for the top side of the window -- * 5. bs: character to be used for the bottom side of the window -- * 6. tl: character to be used for the top left corner of the window -- * 7. tr: character to be used for the top right corner of the window -- * 8. bl: character to be used for the bottom left corner of the window -- * 9. br: character to be used for the bottom right corner of the window -- */ -- wrefresh(local_win); -- delwin(local_win); --}</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="BORDEREXEXPL" id="BORDEREXEXPL">9.3. --Explanation</a></h3> --<p>Don't scream. I know it's a big example. But I have to explain --some important things here :-). This program creates a rectangular --window that can be moved with left, right, up, down arrow keys. It --repeatedly creates and destroys windows as user press a key. Don't --go beyond the screen limits. Checking for those limits is left as --an exercise for the reader. Let's dissect it by line by line.</p> --<p>The <var class="LITERAL">create_newwin()</var> function creates --a window with <var class="LITERAL">newwin()</var> and displays a --border around it with box. The function <var class= --"LITERAL">destroy_win()</var> first erases the window from screen --by painting a border with ' ' character and then calling --<var class="LITERAL">delwin()</var> to deallocate memory related to --it. Depending on the key the user presses, starty or startx is --changed and a new window is created.</p> --<p>In the destroy_win, as you can see, I used wborder instead of --box. The reason is written in the comments (You missed it. I know. --Read the code :-)). wborder draws a border around the window with --the characters given to it as the 4 corner points and the 4 lines. --To put it clearly, if you have called wborder as below:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000"> wborder(win, '|', '|', '-', '-', '+', '+', '+', '+');</font> --</pre></td> --</tr> --</table> --<p>it produces some thing like</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> +------------+ -+{ -+ /* box(local_win, ' ', ' '); : This won't produce the desired -+ * result of erasing the window. It will leave it's four corners -+ * and so an ugly remnant of window. -+ */ -+ wborder(local_win, ' ', ' ', ' ',' ',' ',' ',' ',' '); -+ /* The parameters taken are -+ * 1. win: the window on which to operate -+ * 2. ls: character to be used for the left side of the window -+ * 3. rs: character to be used for the right side of the window -+ * 4. ts: character to be used for the top side of the window -+ * 5. bs: character to be used for the bottom side of the window -+ * 6. tl: character to be used for the top left corner of the window -+ * 7. tr: character to be used for the top right corner of the window -+ * 8. bl: character to be used for the bottom left corner of the window -+ * 9. br: character to be used for the bottom right corner of the window -+ */ -+ wrefresh(local_win); -+ delwin(local_win); -+}</SPAN -+></PRE -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="BORDEREXEXPL" -+>9.3. Explanation</A -+></H3 -+><P -+>Don't scream. I know it's a big example. But I have to explain some important -+things here :-). This program creates a rectangular window that can be moved -+with left, right, up, down arrow keys. It repeatedly creates and destroys -+windows as user press a key. Don't go beyond the screen limits. Checking for -+those limits is left as an exercise for the reader. Let's dissect it by line by line.</P -+><P -+>The <TT -+CLASS="LITERAL" -+>create_newwin()</TT -+> function creates a window -+with <TT -+CLASS="LITERAL" -+>newwin() </TT -+> and displays a border around it -+with box. The function <TT -+CLASS="LITERAL" -+> destroy_win()</TT -+> first -+erases the window from screen by painting a border with ' ' character and then -+calling <TT -+CLASS="LITERAL" -+>delwin()</TT -+> to deallocate memory related -+to it. Depending on the key the user presses, starty or startx is changed and a -+new window is created.</P -+><P -+>In the destroy_win, as you can see, I used wborder instead of box. The reason is -+written in the comments (You missed it. I know. Read the code :-)). wborder -+draws a border around the window with the characters given to it as the 4 corner -+points and the 4 lines. To put it clearly, if you have called wborder as below: -+<PRE -+CLASS="PROGRAMLISTING" -+> wborder(win, '|', '|', '-', '-', '+', '+', '+', '+');</PRE -+></P -+><P -+>it produces some thing like </P -+><PRE -+CLASS="PROGRAMLISTING" -+> +------------+ - | | - | | - | | - | | - | | - | | -- +------------+</font> --</pre></td> --</tr> --</table> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="OTHERSTUFF" id="OTHERSTUFF">9.4. The --other stuff in the example</a></h3> --<p>You can also see in the above examples, that I have used the --variables COLS, LINES which are initialized to the screen sizes --after initscr(). They can be useful in finding screen dimensions --and finding the center co-ordinate of the screen as above. The --function <var class="LITERAL">getch()</var> as usual gets the key --from keyboard and according to the key it does the corresponding --work. This type of switch- case is very common in any GUI based --programs.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="OTHERBORDERFUNCS" id= --"OTHERBORDERFUNCS">9.5. Other Border functions</a></h3> --<p>Above program is grossly inefficient in that with each press of --a key, a window is destroyed and another is created. So let's write --a more efficient program which uses other border related --functions.</p> --<p>The following program uses <var class="LITERAL">mvhline()</var> --and <var class="LITERAL">mvvline()</var> to achieve similar effect. --These two functions are simple. They create a horizontal or --vertical line of the specified length at the specified --position.</p> --<div class="EXAMPLE"><a name="BOTBO" id="BOTBO"></a> --<p><b>Example 8. More border functions</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; -+ +------------+</PRE -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="OTHERSTUFF" -+>9.4. The other stuff in the example</A -+></H3 -+><P -+>You can also see in the above examples, that I have used the variables COLS, -+LINES which are initialized to the screen sizes after initscr(). They can be -+useful in finding screen dimensions and finding the center co-ordinate of the -+screen as above. The function <TT -+CLASS="LITERAL" -+>getch()</TT -+> as usual -+gets the key from keyboard and according to the key it does the corresponding -+work. This type of switch- case is very common in any GUI based programs.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="OTHERBORDERFUNCS" -+>9.5. Other Border functions</A -+></H3 -+><P -+>Above program is grossly inefficient in that with each press of a key, a window -+is destroyed and another is created. So let's write a more efficient program -+which uses other border related functions.</P -+><P -+>The following program uses <TT -+CLASS="LITERAL" -+>mvhline()</TT -+> and -+<TT -+CLASS="LITERAL" -+>mvvline()</TT -+> to achieve similar effect. These two -+functions are simple. They create a horizontal or vertical line of the specified -+length at the specified position.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BOTBO" -+></A -+><P -+><B -+>Example 8. More border functions</B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; - - typedef struct _win_border_struct { -- chtype ls, rs, ts, bs, -- tl, tr, bl, br; -+ chtype ls, rs, ts, bs, -+ tl, tr, bl, br; - }WIN_BORDER; - - typedef struct _WIN_struct { - -- int startx, starty; -- int height, width; -- WIN_BORDER border; -+ int startx, starty; -+ int height, width; -+ WIN_BORDER border; - }WIN; - - void init_win_params(WIN *p_win); -@@ -1925,319 +3195,380 @@ - void create_box(WIN *win, bool flag); - - int main(int argc, char *argv[]) --{ WIN win; -- int ch; -- -- initscr(); /* Start curses mode */ -- start_color(); /* Start the color functionality */ -- cbreak(); /* Line buffering disabled, Pass on -- * everty thing to me */ -- keypad(stdscr, TRUE); /* I need that nifty F1 */ -- noecho(); -- init_pair(1, COLOR_CYAN, COLOR_BLACK); -+{ WIN win; -+ int ch; - -- /* Initialize the window parameters */ -- init_win_params(&amp;win); -- print_win_params(&amp;win); -- -- attron(COLOR_PAIR(1)); -- printw("Press F1 to exit"); -- refresh(); -- attroff(COLOR_PAIR(1)); -- -- create_box(&amp;win, TRUE); -- while((ch = getch()) != KEY_F(1)) -- { switch(ch) -- { case KEY_LEFT: -- create_box(&amp;win, FALSE); -- --win.startx; -- create_box(&amp;win, TRUE); -- break; -- case KEY_RIGHT: -- create_box(&amp;win, FALSE); -- ++win.startx; -- create_box(&amp;win, TRUE); -- break; -- case KEY_UP: -- create_box(&amp;win, FALSE); -- --win.starty; -- create_box(&amp;win, TRUE); -- break; -- case KEY_DOWN: -- create_box(&amp;win, FALSE); -- ++win.starty; -- create_box(&amp;win, TRUE); -- break; -- } -- } -- endwin(); /* End curses mode */ -- return 0; -+ initscr(); /* Start curses mode */ -+ start_color(); /* Start the color functionality */ -+ cbreak(); /* Line buffering disabled, Pass on -+ * everty thing to me */ -+ keypad(stdscr, TRUE); /* I need that nifty F1 */ -+ noecho(); -+ init_pair(1, COLOR_CYAN, COLOR_BLACK); -+ -+ /* Initialize the window parameters */ -+ init_win_params(&#38;win); -+ print_win_params(&#38;win); -+ -+ attron(COLOR_PAIR(1)); -+ printw("Press F1 to exit"); -+ refresh(); -+ attroff(COLOR_PAIR(1)); -+ -+ create_box(&#38;win, TRUE); -+ while((ch = getch()) != KEY_F(1)) -+ { switch(ch) -+ { case KEY_LEFT: -+ create_box(&#38;win, FALSE); -+ --win.startx; -+ create_box(&#38;win, TRUE); -+ break; -+ case KEY_RIGHT: -+ create_box(&#38;win, FALSE); -+ ++win.startx; -+ create_box(&#38;win, TRUE); -+ break; -+ case KEY_UP: -+ create_box(&#38;win, FALSE); -+ --win.starty; -+ create_box(&#38;win, TRUE); -+ break; -+ case KEY_DOWN: -+ create_box(&#38;win, FALSE); -+ ++win.starty; -+ create_box(&#38;win, TRUE); -+ break; -+ } -+ } -+ endwin(); /* End curses mode */ -+ return 0; - } - void init_win_params(WIN *p_win) - { -- p_win-&gt;height = 3; -- p_win-&gt;width = 10; -- p_win-&gt;starty = (LINES - p_win-&gt;height)/2; -- p_win-&gt;startx = (COLS - p_win-&gt;width)/2; -- -- p_win-&gt;border.ls = '|'; -- p_win-&gt;border.rs = '|'; -- p_win-&gt;border.ts = '-'; -- p_win-&gt;border.bs = '-'; -- p_win-&gt;border.tl = '+'; -- p_win-&gt;border.tr = '+'; -- p_win-&gt;border.bl = '+'; -- p_win-&gt;border.br = '+'; -+ p_win-&#62;height = 3; -+ p_win-&#62;width = 10; -+ p_win-&#62;starty = (LINES - p_win-&#62;height)/2; -+ p_win-&#62;startx = (COLS - p_win-&#62;width)/2; -+ -+ p_win-&#62;border.ls = '|'; -+ p_win-&#62;border.rs = '|'; -+ p_win-&#62;border.ts = '-'; -+ p_win-&#62;border.bs = '-'; -+ p_win-&#62;border.tl = '+'; -+ p_win-&#62;border.tr = '+'; -+ p_win-&#62;border.bl = '+'; -+ p_win-&#62;border.br = '+'; - - } - void print_win_params(WIN *p_win) - { - #ifdef _DEBUG -- mvprintw(25, 0, "%d %d %d %d", p_win-&gt;startx, p_win-&gt;starty, -- p_win-&gt;width, p_win-&gt;height); -- refresh(); -+ mvprintw(25, 0, "%d %d %d %d", p_win-&#62;startx, p_win-&#62;starty, -+ p_win-&#62;width, p_win-&#62;height); -+ refresh(); - #endif - } - void create_box(WIN *p_win, bool flag) --{ int i, j; -- int x, y, w, h; -- -- x = p_win-&gt;startx; -- y = p_win-&gt;starty; -- w = p_win-&gt;width; -- h = p_win-&gt;height; -- -- if(flag == TRUE) -- { mvaddch(y, x, p_win-&gt;border.tl); -- mvaddch(y, x + w, p_win-&gt;border.tr); -- mvaddch(y + h, x, p_win-&gt;border.bl); -- mvaddch(y + h, x + w, p_win-&gt;border.br); -- mvhline(y, x + 1, p_win-&gt;border.ts, w - 1); -- mvhline(y + h, x + 1, p_win-&gt;border.bs, w - 1); -- mvvline(y + 1, x, p_win-&gt;border.ls, h - 1); -- mvvline(y + 1, x + w, p_win-&gt;border.rs, h - 1); -- -- } -- else -- for(j = y; j &lt;= y + h; ++j) -- for(i = x; i &lt;= x + w; ++i) -- mvaddch(j, i, ' '); -- -- refresh(); -+{ int i, j; -+ int x, y, w, h; - --}</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="COLOR" id="COLOR">10. Colors</a></h2> --<div class="SECT2"> --<h3 class="SECT2"><a name="COLORBASICS" id="COLORBASICS">10.1. The --basics</a></h3> --<p>Life seems dull with no colors. Curses has a nice mechanism to --handle colors. Let's get into the thick of the things with a small --program.</p> --<div class="EXAMPLE"><a name="BSICO" id="BSICO"></a> --<p><b>Example 9. A Simple Color example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; -+ x = p_win-&#62;startx; -+ y = p_win-&#62;starty; -+ w = p_win-&#62;width; -+ h = p_win-&#62;height; -+ -+ if(flag == TRUE) -+ { mvaddch(y, x, p_win-&#62;border.tl); -+ mvaddch(y, x + w, p_win-&#62;border.tr); -+ mvaddch(y + h, x, p_win-&#62;border.bl); -+ mvaddch(y + h, x + w, p_win-&#62;border.br); -+ mvhline(y, x + 1, p_win-&#62;border.ts, w - 1); -+ mvhline(y + h, x + 1, p_win-&#62;border.bs, w - 1); -+ mvvline(y + 1, x, p_win-&#62;border.ls, h - 1); -+ mvvline(y + 1, x + w, p_win-&#62;border.rs, h - 1); -+ -+ } -+ else -+ for(j = y; j &#60;= y + h; ++j) -+ for(i = x; i &#60;= x + w; ++i) -+ mvaddch(j, i, ' '); -+ -+ refresh(); -+ -+}</SPAN -+></PRE -+></DIV -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="COLOR" -+>10. Colors</A -+></H2 -+><DIV -+CLASS="SECT2" -+><H3 -+CLASS="SECT2" -+><A -+NAME="COLORBASICS" -+>10.1. The basics</A -+></H3 -+><P -+>Life seems dull with no colors. Curses has a nice mechanism to handle colors. -+Let's get into the thick of the things with a small program.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BSICO" -+></A -+><P -+><B -+>Example 9. A Simple Color example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; - - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string); - int main(int argc, char *argv[]) --{ initscr(); /* Start curses mode */ -- if(has_colors() == FALSE) -- { endwin(); -- printf("Your terminal does not support color\n"); -- exit(1); -- } -- start_color(); /* Start color */ -- init_pair(1, COLOR_RED, COLOR_BLACK); -- -- attron(COLOR_PAIR(1)); -- print_in_middle(stdscr, LINES / 2, 0, 0, "Viola !!! In color ..."); -- attroff(COLOR_PAIR(1)); -- getch(); -- endwin(); -+{ initscr(); /* Start curses mode */ -+ if(has_colors() == FALSE) -+ { endwin(); -+ printf("Your terminal does not support color\n"); -+ exit(1); -+ } -+ start_color(); /* Start color */ -+ init_pair(1, COLOR_RED, COLOR_BLACK); -+ -+ attron(COLOR_PAIR(1)); -+ print_in_middle(stdscr, LINES / 2, 0, 0, "Viola !!! In color ..."); -+ attroff(COLOR_PAIR(1)); -+ getch(); -+ endwin(); - } - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string) --{ int length, x, y; -- float temp; -+{ int length, x, y; -+ float temp; - -- if(win == NULL) -- win = stdscr; -- getyx(win, y, x); -- if(startx != 0) -- x = startx; -- if(starty != 0) -- y = starty; -- if(width == 0) -- width = 80; -- -- length = strlen(string); -- temp = (width - length)/ 2; -- x = startx + (int)temp; -- mvwprintw(win, y, x, "%s", string); -- refresh(); -+ if(win == NULL) -+ win = stdscr; -+ getyx(win, y, x); -+ if(startx != 0) -+ x = startx; -+ if(starty != 0) -+ y = starty; -+ if(width == 0) -+ width = 80; -+ -+ length = strlen(string); -+ temp = (width - length)/ 2; -+ x = startx + (int)temp; -+ mvwprintw(win, y, x, "%s", string); -+ refresh(); - } --</span></font> --</pre></td> --</tr> --</table> --</div> --<p>As you can see, to start using color, you should first call the --function <var class="LITERAL">start_color()</var>. After that, you --can use color capabilities of your terminals using various --functions. To find out whether a terminal has color capabilities or --not, you can use <var class="LITERAL">has_colors()</var> function, --which returns FALSE if the terminal does not support color.</p> --<p>Curses initializes all the colors supported by terminal when --start_color() is called. These can be accessed by the define --constants like <var class="LITERAL">COLOR_BLACK</var> etc. Now to --actually start using colors, you have to define pairs. Colors are --always used in pairs. That means you have to use the function --<var class="LITERAL">init_pair()</var> to define the foreground and --background for the pair number you give. After that that pair --number can be used as a normal attribute with <var class= --"LITERAL">COLOR_PAIR()</var>function. This may seem to be --cumbersome at first. But this elegant solution allows us to manage --color pairs very easily. To appreciate it, you have to look into --the the source code of "dialog", a utility for displaying dialog --boxes from shell scripts. The developers have defined foreground --and background combinations for all the colors they might need and --initialized at the beginning. This makes it very easy to set --attributes just by accessing a pair which we already have defined --as a constant.</p> --<p>The following colors are defined in <var class= --"LITERAL">curses.h</var>. You can use these as parameters for --various color functions.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> COLOR_BLACK 0 -+</SPAN -+></PRE -+></DIV -+><P -+>As you can see, to start using color, you should first call the function -+<TT -+CLASS="LITERAL" -+> start_color()</TT -+>. After that, you can use color -+capabilities of your terminals using various functions. To find out whether a -+terminal has color capabilities or not, you can use -+<TT -+CLASS="LITERAL" -+>has_colors()</TT -+> function, which returns FALSE if -+the terminal does not support color. </P -+><P -+>Curses initializes all the colors supported by terminal when start_color() is -+called. These can be accessed by the define constants like -+<TT -+CLASS="LITERAL" -+>COLOR_BLACK </TT -+> etc. Now to actually start using -+colors, you have to define pairs. Colors are always used in pairs. That means -+you have to use the function <TT -+CLASS="LITERAL" -+>init_pair() </TT -+> to -+define the foreground and background for the pair number you give. After that -+that pair number can be used as a normal attribute with <TT -+CLASS="LITERAL" -+>COLOR_PAIR()</TT -+>function. This may seem to be cumbersome at first. -+But this elegant solution allows us to manage color pairs very easily. To -+appreciate it, you have to look into the the source code of "dialog", a utility -+for displaying dialog boxes from shell scripts. The developers have defined -+foreground and background combinations for all the colors they might need and -+initialized at the beginning. This makes it very easy to set attributes just by -+accessing a pair which we already have defined as a constant.</P -+><P -+>The following colors are defined in <TT -+CLASS="LITERAL" -+>curses.h</TT -+>. -+You can use these as parameters for various color functions. -+<PRE -+CLASS="PROGRAMLISTING" -+> COLOR_BLACK 0 - COLOR_RED 1 - COLOR_GREEN 2 - COLOR_YELLOW 3 - COLOR_BLUE 4 - COLOR_MAGENTA 5 - COLOR_CYAN 6 -- COLOR_WHITE 7</font> --</pre></td> --</tr> --</table> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="CHANGECOLORDEFS" id= --"CHANGECOLORDEFS">10.2. Changing Color Definitions</a></h3> --<p>The function <var class="LITERAL">init_color()</var>can be used --to change the rgb values for the colors defined by curses --initially. Say you wanted to lighten the intensity of red color by --a minuscule. Then you can use this function as</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> init_color(COLOR_RED, 700, 0, 0); -+ COLOR_WHITE 7</PRE -+></P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="CHANGECOLORDEFS" -+>10.2. Changing Color Definitions</A -+></H3 -+><P -+>The function <TT -+CLASS="LITERAL" -+>init_color()</TT -+>can be used to change -+the rgb values for the colors defined by curses initially. Say you wanted to -+lighten the intensity of red color by a minuscule. Then you can use this -+function as</P -+><PRE -+CLASS="PROGRAMLISTING" -+> init_color(COLOR_RED, 700, 0, 0); - /* param 1 : color name -- * param 2, 3, 4 : rgb content min = 0, max = 1000 */</font> --</pre></td> --</tr> --</table> --<p>If your terminal cannot change the color definitions, the --function returns ERR. The function <var class= --"LITERAL">can_change_color()</var> can be used to find out whether --the terminal has the capability of changing color content or not. --The rgb content is scaled from 0 to 1000. Initially RED color is --defined with content 1000(r), 0(g), 0(b).</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="COLORCONTENT" id="COLORCONTENT">10.3. --Color Content</a></h3> --<p>The functions <var class="LITERAL">color_content()</var> and --<var class="LITERAL">pair_content()</var> can be used to find the --color content and foreground, background combination for the --pair.</p> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="KEYS" id="KEYS">11. Interfacing with the --key board</a></h2> --<div class="SECT2"> --<h3 class="SECT2"><a name="KEYSBASICS" id="KEYSBASICS">11.1. The --Basics</a></h3> --<p>No GUI is complete without a strong user interface and to --interact with the user, a curses program should be sensitive to key --presses or the mouse actions done by the user. Let's deal with the --keys first.</p> --<p>As you have seen in almost all of the above examples, it's very --easy to get key input from the user. A simple way of getting key --presses is to use <var class="LITERAL">getch()</var> function. The --cbreak mode should be enabled to read keys when you are interested --in reading individual key hits rather than complete lines of text --(which usually end with a carriage return). keypad should be --enabled to get the Functions keys, arrow keys etc. See the --initialization section for details.</p> --<p><var class="LITERAL">getch()</var> returns an integer --corresponding to the key pressed. If it is a normal character, the --integer value will be equivalent to the character. Otherwise it --returns a number which can be matched with the constants defined in --<var class="LITERAL">curses.h</var>. For example if the user --presses F1, the integer returned is 265. This can be checked using --the macro KEY_F() defined in curses.h. This makes reading keys --portable and easy to manage.</p> --<p>For example, if you call getch() like this</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> int ch; -- -- ch = getch();</font> --</pre></td> --</tr> --</table> --<p>getch() will wait for the user to press a key, (unless you --specified a timeout) and when user presses a key, the corresponding --integer is returned. Then you can check the value returned with the --constants defined in curses.h to match against the keys you --want.</p> --<p>The following code piece will do that job.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> if(ch == KEY_LEFT) -- printw("Left arrow is pressed\n");</font> --</pre></td> --</tr> --</table> --<p>Let's write a small program which creates a menu which can be --navigated by up and down arrows.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="SIMPLEKEYEX" id="SIMPLEKEYEX">11.2. A --Simple Key Usage example</a></h3> --<div class="EXAMPLE"><a name="BSIKE" id="BSIKE"></a> --<p><b>Example 10. A Simple Key Usage example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;stdio.h&gt; --#include &lt;ncurses.h&gt; -+ * param 2, 3, 4 : rgb content min = 0, max = 1000 */</PRE -+><P -+>If your terminal cannot change the color definitions, the function returns ERR. -+The function <TT -+CLASS="LITERAL" -+>can_change_color()</TT -+> can be used to -+find out whether the terminal has the capability of changing color content or -+not. The rgb content is scaled from 0 to 1000. Initially RED color is defined -+with content 1000(r), 0(g), 0(b). </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="COLORCONTENT" -+>10.3. Color Content</A -+></H3 -+><P -+>The functions <TT -+CLASS="LITERAL" -+>color_content()</TT -+> and -+<TT -+CLASS="LITERAL" -+>pair_content()</TT -+> can be used to find the color -+content and foreground, background combination for the pair. </P -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="KEYS" -+>11. Interfacing with the key board</A -+></H2 -+><DIV -+CLASS="SECT2" -+><H3 -+CLASS="SECT2" -+><A -+NAME="KEYSBASICS" -+>11.1. The Basics</A -+></H3 -+><P -+>No GUI is complete without a strong user interface and to interact with the -+user, a curses program should be sensitive to key presses or the mouse actions -+done by the user. Let's deal with the keys first.</P -+><P -+>As you have seen in almost all of the above examples, it's very easy to get key -+input from the user. A simple way of getting key presses is to use -+<TT -+CLASS="LITERAL" -+>getch()</TT -+> function. The cbreak mode should be -+enabled to read keys when you are interested in reading individual key hits -+rather than complete lines of text (which usually end with a carriage return). -+keypad should be enabled to get the Functions keys, arrow keys etc. See the -+initialization section for details.</P -+><P -+><TT -+CLASS="LITERAL" -+>getch()</TT -+> returns an integer corresponding to the -+key pressed. If it is a normal character, the integer value will be equivalent -+to the character. Otherwise it returns a number which can be matched with the -+constants defined in <TT -+CLASS="LITERAL" -+>curses.h</TT -+>. For example if -+the user presses F1, the integer returned is 265. This can be checked using the -+macro KEY_F() defined in curses.h. This makes reading keys portable and easy to -+manage.</P -+><P -+>For example, if you call getch() like this</P -+><PRE -+CLASS="PROGRAMLISTING" -+> int ch; -+ -+ ch = getch();</PRE -+><P -+>getch() will wait for the user to press a key, (unless you specified a timeout) -+and when user presses a key, the corresponding integer is returned. Then you can -+check the value returned with the constants defined in curses.h to match against -+the keys you want.</P -+><P -+>The following code piece will do that job.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> if(ch == KEY_LEFT) -+ printw("Left arrow is pressed\n");</PRE -+><P -+>Let's write a small program which creates a menu which can be navigated by up -+and down arrows.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="SIMPLEKEYEX" -+>11.2. A Simple Key Usage example</A -+></H3 -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BSIKE" -+></A -+><P -+><B -+>Example 10. A Simple Key Usage example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;stdio.h&#62; -+#include &#60;ncurses.h&#62; - - #define WIDTH 30 - #define HEIGHT 10 -@@ -2246,127 +3577,132 @@ - int starty = 0; - - char *choices[] = { -- "Choice 1", -- "Choice 2", -- "Choice 3", -- "Choice 4", -- "Exit", -- }; -+ "Choice 1", -+ "Choice 2", -+ "Choice 3", -+ "Choice 4", -+ "Exit", -+ }; - int n_choices = sizeof(choices) / sizeof(char *); - void print_menu(WINDOW *menu_win, int highlight); - - int main() --{ WINDOW *menu_win; -- int highlight = 1; -- int choice = 0; -- int c; -- -- initscr(); -- clear(); -- noecho(); -- cbreak(); /* Line buffering disabled. pass on everything */ -- startx = (80 - WIDTH) / 2; -- starty = (24 - HEIGHT) / 2; -- -- menu_win = newwin(HEIGHT, WIDTH, starty, startx); -- keypad(menu_win, TRUE); -- mvprintw(0, 0, "Use arrow keys to go up and down, Press enter to select a choice"); -- refresh(); -- print_menu(menu_win, highlight); -- while(1) -- { c = wgetch(menu_win); -- switch(c) -- { case KEY_UP: -- if(highlight == 1) -- highlight = n_choices; -- else -- --highlight; -- break; -- case KEY_DOWN: -- if(highlight == n_choices) -- highlight = 1; -- else -- ++highlight; -- break; -- case 10: -- choice = highlight; -- break; -- default: -- mvprintw(24, 0, "Charcter pressed is = %3d Hopefully it can be printed as '%c'", c, c); -- refresh(); -- break; -- } -- print_menu(menu_win, highlight); -- if(choice != 0) /* User did a choice come out of the infinite loop */ -- break; -- } -- mvprintw(23, 0, "You chose choice %d with choice string %s\n", choice, choices[choice - 1]); -- clrtoeol(); -- refresh(); -- endwin(); -- return 0; -+{ WINDOW *menu_win; -+ int highlight = 1; -+ int choice = 0; -+ int c; -+ -+ initscr(); -+ clear(); -+ noecho(); -+ cbreak(); /* Line buffering disabled. pass on everything */ -+ startx = (80 - WIDTH) / 2; -+ starty = (24 - HEIGHT) / 2; -+ -+ menu_win = newwin(HEIGHT, WIDTH, starty, startx); -+ keypad(menu_win, TRUE); -+ mvprintw(0, 0, "Use arrow keys to go up and down, Press enter to select a choice"); -+ refresh(); -+ print_menu(menu_win, highlight); -+ while(1) -+ { c = wgetch(menu_win); -+ switch(c) -+ { case KEY_UP: -+ if(highlight == 1) -+ highlight = n_choices; -+ else -+ --highlight; -+ break; -+ case KEY_DOWN: -+ if(highlight == n_choices) -+ highlight = 1; -+ else -+ ++highlight; -+ break; -+ case 10: -+ choice = highlight; -+ break; -+ default: -+ mvprintw(24, 0, "Charcter pressed is = %3d Hopefully it can be printed as '%c'", c, c); -+ refresh(); -+ break; -+ } -+ print_menu(menu_win, highlight); -+ if(choice != 0) /* User did a choice come out of the infinite loop */ -+ break; -+ } -+ mvprintw(23, 0, "You chose choice %d with choice string %s\n", choice, choices[choice - 1]); -+ clrtoeol(); -+ refresh(); -+ endwin(); -+ return 0; - } - - - void print_menu(WINDOW *menu_win, int highlight) - { -- int x, y, i; -+ int x, y, i; - -- x = 2; -- y = 2; -- box(menu_win, 0, 0); -- for(i = 0; i &lt; n_choices; ++i) -- { if(highlight == i + 1) /* High light the present choice */ -- { wattron(menu_win, A_REVERSE); -- mvwprintw(menu_win, y, x, "%s", choices[i]); -- wattroff(menu_win, A_REVERSE); -- } -- else -- mvwprintw(menu_win, y, x, "%s", choices[i]); -- ++y; -- } -- wrefresh(menu_win); -+ x = 2; -+ y = 2; -+ box(menu_win, 0, 0); -+ for(i = 0; i &#60; n_choices; ++i) -+ { if(highlight == i + 1) /* High light the present choice */ -+ { wattron(menu_win, A_REVERSE); -+ mvwprintw(menu_win, y, x, "%s", choices[i]); -+ wattroff(menu_win, A_REVERSE); -+ } -+ else -+ mvwprintw(menu_win, y, x, "%s", choices[i]); -+ ++y; -+ } -+ wrefresh(menu_win); - } --</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="MOUSE" id="MOUSE">12. Interfacing with --the mouse</a></h2> --<p>Now that you have seen how to get keys, lets do the same thing --from mouse. Usually each UI allows the user to interact with both --keyboard and mouse.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MOUSEBASICS" id="MOUSEBASICS">12.1. The --Basics</a></h3> --<p>Before you do any thing else, the events you want to receive --have to be enabled with <var class="LITERAL">mousemask()</var>.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000"> mousemask( mmask_t newmask, /* The events you want to listen to */ -- mmask_t *oldmask) /* The old events mask */</font> --</pre></td> --</tr> --</table> --<p>The first parameter to above function is a bit mask of events --you would like to listen. By default, all the events are turned --off. The bit mask <var class="LITERAL">ALL_MOUSE_EVENTS</var> can --be used to get all the events.</p> --<p>The following are all the event masks:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> Name Description -+</SPAN -+></PRE -+></DIV -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="MOUSE" -+>12. Interfacing with the mouse</A -+></H2 -+><P -+>Now that you have seen how to get keys, lets do the same thing from mouse. -+Usually each UI allows the user to interact with both keyboard and mouse. </P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MOUSEBASICS" -+>12.1. The Basics</A -+></H3 -+><P -+>Before you do any thing else, the events you want to receive have to be enabled -+with <TT -+CLASS="LITERAL" -+>mousemask()</TT -+>.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> mousemask( mmask_t newmask, /* The events you want to listen to */ -+ mmask_t *oldmask) /* The old events mask */</PRE -+><P -+>The first parameter to above function is a bit mask of events you would like to -+listen. By default, all the events are turned off. The bit mask <TT -+CLASS="LITERAL" -+> ALL_MOUSE_EVENTS</TT -+> can be used to get all the events.</P -+><P -+>The following are all the event masks:</P -+><PRE -+CLASS="PROGRAMLISTING" -+> Name Description - --------------------------------------------------------------------- - BUTTON1_PRESSED mouse button 1 down - BUTTON1_RELEASED mouse button 1 up -@@ -2392,79 +3728,85 @@ - BUTTON_CTRL control was down during button state change - BUTTON_ALT alt was down during button state change - ALL_MOUSE_EVENTS report all button state changes -- REPORT_MOUSE_POSITION report mouse movement</font> --</pre></td> --</tr> --</table> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="GETTINGEVENTS" id="GETTINGEVENTS">12.2. --Getting the events</a></h3> --<p>Once a class of mouse events have been enabled, getch() class of --functions return KEY_MOUSE every time some mouse event happens. --Then the mouse event can be retrieved with <var class= --"LITERAL">getmouse()</var>.</p> --<p>The code approximately looks like this:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> MEVENT event; -+ REPORT_MOUSE_POSITION report mouse movement</PRE -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="GETTINGEVENTS" -+>12.2. Getting the events</A -+></H3 -+><P -+>Once a class of mouse events have been enabled, getch() class of functions -+return KEY_MOUSE every time some mouse event happens. Then the mouse event can -+be retrieved with <TT -+CLASS="LITERAL" -+>getmouse()</TT -+>.</P -+><P -+>The code approximately looks like this:</P -+><PRE -+CLASS="PROGRAMLISTING" -+> MEVENT event; - - ch = getch(); - if(ch == KEY_MOUSE) - if(getmouse(&amp;event) == OK) - . /* Do some thing with the event */ - . -- .</font> --</pre></td> --</tr> --</table> --<p>getmouse() returns the event into the pointer given to it. It's --a structure which contains</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> typedef struct -+ .</PRE -+><P -+> -+getmouse() returns the event into the pointer given to it. It's a structure -+which contains</P -+><PRE -+CLASS="PROGRAMLISTING" -+> typedef struct - { - short id; /* ID to distinguish multiple devices */ - int x, y, z; /* event coordinates */ - mmask_t bstate; /* button state bits */ -- } </font> --</pre></td> --</tr> --</table> --<p>The <var class="LITERAL">bstate</var> is the main variable we --are interested in. It tells the button state of the mouse.</p> --<p>Then with a code snippet like the following, we can find out --what happened.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> if(event.bstate &amp; BUTTON1_PRESSED) -- printw("Left Button Pressed");</font> --</pre></td> --</tr> --</table> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MOUSETOGETHER" id="MOUSETOGETHER">12.3. --Putting it all Together</a></h3> --<p>That's pretty much interfacing with mouse. Let's create the same --menu and enable mouse interaction. To make things simpler, key --handling is removed.</p> --<div class="EXAMPLE"><a name="BMOME" id="BMOME"></a> --<p><b>Example 11. Access the menu with mouse !!!</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; -+ } </PRE -+><P -+>The <TT -+CLASS="LITERAL" -+>bstate</TT -+> is the main variable we are -+interested in. It tells the button state of the mouse.</P -+><P -+>Then with a code snippet like the following, we can find out what happened.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> if(event.bstate &amp; BUTTON1_PRESSED) -+ printw("Left Button Pressed");</PRE -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MOUSETOGETHER" -+>12.3. Putting it all Together</A -+></H3 -+><P -+>That's pretty much interfacing with mouse. Let's create the same menu and enable -+mouse interaction. To make things simpler, key handling is removed.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BMOME" -+></A -+><P -+><B -+>Example 11. Access the menu with mouse !!! </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; - - #define WIDTH 30 - #define HEIGHT 10 -@@ -2472,12 +3814,12 @@ - int startx = 0; - int starty = 0; - --char *choices[] = { "Choice 1", -- "Choice 2", -- "Choice 3", -- "Choice 4", -- "Exit", -- }; -+char *choices[] = { "Choice 1", -+ "Choice 2", -+ "Choice 3", -+ "Choice 4", -+ "Exit", -+ }; - - int n_choices = sizeof(choices) / sizeof(char *); - -@@ -2485,270 +3827,338 @@ - void report_choice(int mouse_x, int mouse_y, int *p_choice); - - int main() --{ int c, choice = 0; -- WINDOW *menu_win; -- MEVENT event; -- -- /* Initialize curses */ -- initscr(); -- clear(); -- noecho(); -- cbreak(); //Line buffering disabled. pass on everything -- -- /* Try to put the window in the middle of screen */ -- startx = (80 - WIDTH) / 2; -- starty = (24 - HEIGHT) / 2; -- -- attron(A_REVERSE); -- mvprintw(23, 1, "Click on Exit to quit (Works best in a virtual console)"); -- refresh(); -- attroff(A_REVERSE); -- -- /* Print the menu for the first time */ -- menu_win = newwin(HEIGHT, WIDTH, starty, startx); -- print_menu(menu_win, 1); -- /* Get all the mouse events */ -- mousemask(ALL_MOUSE_EVENTS, NULL); -- -- while(1) -- { c = wgetch(menu_win); -- switch(c) -- { case KEY_MOUSE: -- if(getmouse(&amp;event) == OK) -- { /* When the user clicks left mouse button */ -- if(event.bstate &amp; BUTTON1_PRESSED) -- { report_choice(event.x + 1, event.y + 1, &amp;choice); -- if(choice == -1) //Exit chosen -- goto end; -- mvprintw(22, 1, "Choice made is : %d String Chosen is \"%10s\"", choice, choices[choice - 1]); -- refresh(); -- } -- } -- print_menu(menu_win, choice); -- break; -- } -- } -+{ int c, choice = 0; -+ WINDOW *menu_win; -+ MEVENT event; -+ -+ /* Initialize curses */ -+ initscr(); -+ clear(); -+ noecho(); -+ cbreak(); //Line buffering disabled. pass on everything -+ -+ /* Try to put the window in the middle of screen */ -+ startx = (80 - WIDTH) / 2; -+ starty = (24 - HEIGHT) / 2; -+ -+ attron(A_REVERSE); -+ mvprintw(23, 1, "Click on Exit to quit (Works best in a virtual console)"); -+ refresh(); -+ attroff(A_REVERSE); -+ -+ /* Print the menu for the first time */ -+ menu_win = newwin(HEIGHT, WIDTH, starty, startx); -+ print_menu(menu_win, 1); -+ /* Get all the mouse events */ -+ mousemask(ALL_MOUSE_EVENTS, NULL); -+ -+ while(1) -+ { c = wgetch(menu_win); -+ switch(c) -+ { case KEY_MOUSE: -+ if(getmouse(&#38;event) == OK) -+ { /* When the user clicks left mouse button */ -+ if(event.bstate &#38; BUTTON1_PRESSED) -+ { report_choice(event.x + 1, event.y + 1, &#38;choice); -+ if(choice == -1) //Exit chosen -+ goto end; -+ mvprintw(22, 1, "Choice made is : %d String Chosen is \"%10s\"", choice, choices[choice - 1]); -+ refresh(); -+ } -+ } -+ print_menu(menu_win, choice); -+ break; -+ } -+ } - end: -- endwin(); -- return 0; -+ endwin(); -+ return 0; - } - - - void print_menu(WINDOW *menu_win, int highlight) - { -- int x, y, i; -+ int x, y, i; - -- x = 2; -- y = 2; -- box(menu_win, 0, 0); -- for(i = 0; i &lt; n_choices; ++i) -- { if(highlight == i + 1) -- { wattron(menu_win, A_REVERSE); -- mvwprintw(menu_win, y, x, "%s", choices[i]); -- wattroff(menu_win, A_REVERSE); -- } -- else -- mvwprintw(menu_win, y, x, "%s", choices[i]); -- ++y; -- } -- wrefresh(menu_win); -+ x = 2; -+ y = 2; -+ box(menu_win, 0, 0); -+ for(i = 0; i &#60; n_choices; ++i) -+ { if(highlight == i + 1) -+ { wattron(menu_win, A_REVERSE); -+ mvwprintw(menu_win, y, x, "%s", choices[i]); -+ wattroff(menu_win, A_REVERSE); -+ } -+ else -+ mvwprintw(menu_win, y, x, "%s", choices[i]); -+ ++y; -+ } -+ wrefresh(menu_win); - } - - /* Report the choice according to mouse position */ - void report_choice(int mouse_x, int mouse_y, int *p_choice) --{ int i,j, choice; -+{ int i,j, choice; - -- i = startx + 2; -- j = starty + 3; -- -- for(choice = 0; choice &lt; n_choices; ++choice) -- if(mouse_y == j + choice &amp;&amp; mouse_x &gt;= i &amp;&amp; mouse_x &lt;= i + strlen(choices[choice])) -- { if(choice == n_choices - 1) -- *p_choice = -1; -- else -- *p_choice = choice + 1; -- break; -- } --}</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MISCMOUSEFUNCS" id= --"MISCMOUSEFUNCS">12.4. Miscellaneous Functions</a></h3> --<p>The functions mouse_trafo() and wmouse_trafo() can be used to --convert to mouse co-ordinates to screen relative co-ordinates. See --curs_mouse(3X) man page for details.</p> --<p>The mouseinterval function sets the maximum time (in thousands --of a second) that can elapse between press and release events in --order for them to be recognized as a click. This function returns --the previous interval value. The default is one fifth of a --second.</p> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="SCREEN" id="SCREEN">13. Screen --Manipulation</a></h2> --<p>In this section, we will look into some functions, which allow --us to manage the screen efficiently and to write some fancy --programs. This is especially important in writing games.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="GETYX" id="GETYX">13.1. getyx() --functions</a></h3> --<p>The function <var class="LITERAL">getyx()</var> can be used to --find out the present cursor co-ordinates. It will fill the values --of x and y co-ordinates in the arguments given to it. Since getyx() --is a macro you don't have to pass the address of the variables. It --can be called as</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> getyx(win, y, x); -+ i = startx + 2; -+ j = starty + 3; -+ -+ for(choice = 0; choice &#60; n_choices; ++choice) -+ if(mouse_y == j + choice &#38;&#38; mouse_x &#62;= i &#38;&#38; mouse_x &#60;= i + strlen(choices[choice])) -+ { if(choice == n_choices - 1) -+ *p_choice = -1; -+ else -+ *p_choice = choice + 1; -+ break; -+ } -+}</SPAN -+></PRE -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MISCMOUSEFUNCS" -+>12.4. Miscellaneous Functions</A -+></H3 -+><P -+>The functions mouse_trafo() and wmouse_trafo() can be used to convert to mouse -+co-ordinates to screen relative co-ordinates. See curs_mouse(3X) man page for details.</P -+><P -+>The mouseinterval function sets the maximum time (in thousands of a -+second) that can elapse between press and release events in order for -+them to be recognized as a click. This function returns the previous -+interval value. The default is one fifth of a second.</P -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="SCREEN" -+>13. Screen Manipulation</A -+></H2 -+><P -+>In this section, we will look into some functions, which allow us to manage the -+screen efficiently and to write some fancy programs. This is especially -+important in writing games. </P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="GETYX" -+>13.1. getyx() functions</A -+></H3 -+><P -+>&#13;The function <TT -+CLASS="LITERAL" -+>getyx()</TT -+> can be used to find out -+the present cursor co-ordinates. It will fill the values of x and y co-ordinates -+in the arguments given to it. Since getyx() is a macro you don't have to pass -+the address of the variables. It can be called as</P -+><PRE -+CLASS="PROGRAMLISTING" -+> getyx(win, y, x); - /* win: window pointer - * y, x: y, x co-ordinates will be put into this variables -- */</font> --</pre></td> --</tr> --</table> --<p>The function getparyx() gets the beginning co-ordinates of the --sub window relative to the main window. This is some times useful --to update a sub window. When designing fancy stuff like writing --multiple menus, it becomes difficult to store the menu positions, --their first option co-ordinates etc. A simple solution to this --problem, is to create menus in sub windows and later find the --starting co-ordinates of the menus by using getparyx().</p> --<p>The functions getbegyx() and getmaxyx() store current window's --beginning and maximum co-ordinates. These functions are useful in --the same way as above in managing the windows and sub windows --effectively.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="SCREENDUMP" id="SCREENDUMP">13.2. Screen --Dumping</a></h3> --<p>While writing games, some times it becomes necessary to store --the state of the screen and restore it back to the same state. The --function scr_dump() can be used to dump the screen contents to a --file given as an argument. Later it can be restored by scr_restore --function. These two simple functions can be used effectively to --maintain a fast moving game with changing scenarios.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="WINDOWDUMP" id="WINDOWDUMP">13.3. Window --Dumping</a></h3> --<p>To store and restore windows, the functions <var class= --"LITERAL">putwin()</var> and <var class="LITERAL">getwin()</var> --can be used. <var class="LITERAL">putwin()</var> puts the present --window state into a file, which can be later restored by --<var class="LITERAL">getwin()</var>.</p> --<p>The function <var class="LITERAL">copywin()</var> can be used to --copy a window completely onto another window. It takes the source --and destination windows as parameters and according to the --rectangle specified, it copies the rectangular region from source --to destination window. It's last parameter specifies whether to --overwrite or just overlay the contents on to the destination --window. If this argument is true, then the copying is --non-destructive.</p> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="MISC" id="MISC">14. Miscellaneous --features</a></h2> --<p>Now you know enough features to write a good curses program, --with all bells and whistles. There are some miscellaneous functions --which are useful in various cases. Let's go headlong into some of --those.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="CURSSET" id="CURSSET">14.1. --curs_set()</a></h3> --<p>This function can be used to make the cursor invisible. The --parameter to this function should be</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> 0 : invisible or -+ */</PRE -+><P -+>The function getparyx() gets the beginning co-ordinates of the sub window -+relative to the main window. This is some times useful to update a sub window. -+When designing fancy stuff like writing multiple menus, it becomes difficult to -+store the menu positions, their first option co-ordinates etc. A simple solution -+to this problem, is to create menus in sub windows and later find the starting -+co-ordinates of the menus by using getparyx().</P -+><P -+>The functions getbegyx() and getmaxyx() store current window's beginning and -+maximum co-ordinates. These functions are useful in the same way as above in -+managing the windows and sub windows effectively.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="SCREENDUMP" -+>13.2. Screen Dumping</A -+></H3 -+><P -+>While writing games, some times it becomes necessary to store the state of the -+screen and restore it back to the same state. The function scr_dump() can be -+used to dump the screen contents to a file given as an argument. Later it can be -+restored by scr_restore function. These two simple functions can be used -+effectively to maintain a fast moving game with changing scenarios. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="WINDOWDUMP" -+>13.3. Window Dumping</A -+></H3 -+><P -+>To store and restore windows, the functions -+<TT -+CLASS="LITERAL" -+>putwin()</TT -+> and <TT -+CLASS="LITERAL" -+>getwin()</TT -+> can be used. <TT -+CLASS="LITERAL" -+>putwin()</TT -+> puts -+the present window state into a file, which can be later restored by -+<TT -+CLASS="LITERAL" -+>getwin()</TT -+>.</P -+><P -+> -+The function <TT -+CLASS="LITERAL" -+>copywin()</TT -+> can be used to copy a -+window completely onto another window. It takes the source and destination -+windows as parameters and according to the rectangle specified, it copies the -+rectangular region from source to destination window. It's last parameter -+specifies whether to overwrite or just overlay the contents on to the -+destination window. If this argument is true, then the copying is -+non-destructive.</P -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="MISC" -+>14. Miscellaneous features</A -+></H2 -+><P -+>Now you know enough features to write a good curses program, with all bells and -+whistles. There are some miscellaneous functions which are useful in various -+cases. Let's go headlong into some of those.</P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="CURSSET" -+>14.1. curs_set()</A -+></H3 -+><P -+>This function can be used to make the cursor invisible. The parameter to this -+function should be </P -+><PRE -+CLASS="PROGRAMLISTING" -+> 0 : invisible or - 1 : normal or -- 2 : very visible.</font> --</pre></td> --</tr> --</table> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="TEMPLEAVE" id="TEMPLEAVE">14.2. --Temporarily Leaving Curses mode</a></h3> --<p>Some times you may want to get back to cooked mode (normal line --buffering mode) temporarily. In such a case you will first need to --save the tty modes with a call to <var class= --"LITERAL">def_prog_mode()</var> and then call <var class= --"LITERAL">endwin()</var> to end the curses mode. This will leave --you in the original tty mode. To get back to curses once you are --done, call <var class="LITERAL">reset_prog_mode()</var> . This --function returns the tty to the state stored by <var class= --"LITERAL">def_prog_mode()</var>. Then do refresh(), and you are --back to the curses mode. Here is an example showing the sequence of --things to be done.</p> --<div class="EXAMPLE"><a name="BTELE" id="BTELE"></a> --<p><b>Example 12. Temporarily Leaving Curses Mode</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; -+ 2 : very visible.</PRE -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="TEMPLEAVE" -+>14.2. Temporarily Leaving Curses mode</A -+></H3 -+><P -+>Some times you may want to get back to cooked mode (normal line buffering mode) -+temporarily. In such a case you will first need to save the tty modes with a -+call to <TT -+CLASS="LITERAL" -+>def_prog_mode()</TT -+> and then call -+<TT -+CLASS="LITERAL" -+>endwin()</TT -+> to end the curses mode. This will -+leave you in the original tty mode. To get back to curses once you are done, -+call <TT -+CLASS="LITERAL" -+>reset_prog_mode() </TT -+>. This function returns -+the tty to the state stored by <TT -+CLASS="LITERAL" -+>def_prog_mode()</TT -+>. Then do refresh(), and you are back to the curses mode. Here -+is an example showing the sequence of things to be done.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BTELE" -+></A -+><P -+><B -+>Example 12. Temporarily Leaving Curses Mode </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; - - int main() --{ -- initscr(); /* Start curses mode */ -- printw("Hello World !!!\n"); /* Print Hello World */ -- refresh(); /* Print it on to the real screen */ -- def_prog_mode(); /* Save the tty modes */ -- endwin(); /* End curses mode temporarily */ -- system("/bin/sh"); /* Do whatever you like in cooked mode */ -- reset_prog_mode(); /* Return to the previous tty mode*/ -- /* stored by def_prog_mode() */ -- refresh(); /* Do refresh() to restore the */ -- /* Screen contents */ -- printw("Another String\n"); /* Back to curses use the full */ -- refresh(); /* capabilities of curses */ -- endwin(); /* End curses mode */ -- -- return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="ACSVARS" id="ACSVARS">14.3. ACS_ --variables</a></h3> --<p>If you have ever programmed in DOS, you know about those nifty --characters in extended character set. They are printable only on --some terminals. NCURSES functions like <var class= --"LITERAL">box()</var> use these characters. All these variables --start with ACS meaning alternative character set. You might have --noticed me using these characters in some of the programs above. --Here's an example showing all the characters.</p> --<div class="EXAMPLE"><a name="BACSVARS" id="BACSVARS"></a> --<p><b>Example 13. ACS Variables Example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; -+{ -+ initscr(); /* Start curses mode */ -+ printw("Hello World !!!\n"); /* Print Hello World */ -+ refresh(); /* Print it on to the real screen */ -+ def_prog_mode(); /* Save the tty modes */ -+ endwin(); /* End curses mode temporarily */ -+ system("/bin/sh"); /* Do whatever you like in cooked mode */ -+ reset_prog_mode(); /* Return to the previous tty mode*/ -+ /* stored by def_prog_mode() */ -+ refresh(); /* Do refresh() to restore the */ -+ /* Screen contents */ -+ printw("Another String\n"); /* Back to curses use the full */ -+ refresh(); /* capabilities of curses */ -+ endwin(); /* End curses mode */ -+ -+ return 0; -+}</SPAN -+></PRE -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="ACSVARS" -+>14.3. ACS_ variables</A -+></H3 -+><P -+>If you have ever programmed in DOS, you know about those nifty characters in -+extended character set. They are printable only on some terminals. NCURSES -+functions like <TT -+CLASS="LITERAL" -+>box()</TT -+> use these characters. All -+these variables start with ACS meaning alternative character set. You might have -+noticed me using these characters in some of the programs above. Here's an example -+showing all the characters.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="BACSVARS" -+></A -+><P -+><B -+>Example 13. ACS Variables Example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;ncurses.h&#62; - - int main() - { -@@ -2790,181 +4200,218 @@ - getch(); - endwin(); - -- return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="OTHERLIB" id="OTHERLIB">15. Other --libraries</a></h2> --<p>Apart from the curses library, there are few text mode --libraries, which provide more functionality and a lot of features. --The following sections explain three standard libraries which are --usually distributed along with curses.</p> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="PANELS" id="PANELS">16. Panel --Library</a></h2> --<p>Now that you are proficient in curses, you wanted to do some --thing big. You created a lot of overlapping windows to give a --professional windows-type look. Unfortunately, it soon becomes --difficult to manage these. The multiple refreshes, updates plunge --you into a nightmare. The overlapping windows create blotches, --whenever you forget to refresh the windows in the proper order.</p> --<p>Don't despair. There's an elegant solution provided in panels --library. In the words of developers of ncurses</p> --<p><em>When your interface design is such that windows may dive --deeper into the visibility stack or pop to the top at runtime, the --resulting book-keeping can be tedious and difficult to get right. --Hence the panels library.</em></p> --<p>If you have lot of overlapping windows, then panels library is --the way to go. It obviates the need of doing series of --wnoutrefresh(), doupdate() and relieves the burden of doing it --correctly(bottom up). The library maintains information about the --order of windows, their overlapping and update the screen properly. --So why wait? Let's take a close peek into panels.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="PANELBASICS" id="PANELBASICS">16.1. The --Basics</a></h3> --<p>Panel object is a window that is implicitly treated as part of a --deck including all other panel objects. The deck is treated as a --stack with the top panel being completely visible and the other --panels may or may not be obscured according to their positions. So --the basic idea is to create a stack of overlapping panels and use --panels library to display them correctly. There is a function --similar to refresh() which, when called , displays panels in the --correct order. Functions are provided to hide or show panels, move --panels, change its size etc.. The overlapping problem is managed by --the panels library during all the calls to these functions.</p> --<p>The general flow of a panel program goes like this:</p> --<ol type="1"> --<li> --<p>Create the windows (with newwin()) to be attached to the --panels.</p> --</li> --<li> --<p>Create panels with the chosen visibility order. Stack them up --according to the desired visibility. The function new_panel() is --used to created panels.</p> --</li> --<li> --<p>Call update_panels() to write the panels to the virtual screen --in correct visibility order. Do a doupdate() to show it on the --screen.</p> --</li> --<li> --<p>Mainpulate the panels with show_panel(), hide_panel(), --move_panel() etc. Make use of helper functions like panel_hidden() --and panel_window(). Make use of user pointer to store custom data --for a panel. Use the functions set_panel_userptr() and --panel_userptr() to set and get the user pointer for a panel.</p> --</li> --<li> --<p>When you are done with the panel use del_panel() to delete the --panel.</p> --</li> --</ol> --<p>Let's make the concepts clear, with some programs. The following --is a simple program which creates 3 overlapping panels and shows --them on the screen.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="COMPILEPANELS" id="COMPILEPANELS">16.2. --Compiling With the Panels Library</a></h3> --<p>To use panels library functions, you have to include panel.h and --to link the program with panels library the flag -lpanel should be --added along with -lncurses in that order.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> #include &lt;panel.h&gt; -+ return 0; -+}</SPAN -+></PRE -+></DIV -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="OTHERLIB" -+>15. Other libraries</A -+></H2 -+><P -+>Apart from the curses library, there are few text mode libraries, which provide -+more functionality and a lot of features. The following sections explain three -+standard libraries which are usually distributed along with curses. </P -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="PANELS" -+>16. Panel Library</A -+></H2 -+><P -+>Now that you are proficient in curses, you wanted to do some thing big. You -+created a lot of overlapping windows to give a professional windows-type look. -+Unfortunately, it soon becomes difficult to manage these. The multiple -+refreshes, updates plunge you into a nightmare. The overlapping windows create -+blotches, whenever you forget to refresh the windows in the proper order. </P -+><P -+>Don't despair. There's an elegant solution provided in panels library. In the -+words of developers of ncurses </P -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>When your interface design is such that windows may dive deeper into the -+visibility stack or pop to the top at runtime, the resulting book-keeping can be -+tedious and difficult to get right. Hence the panels library.</I -+></SPAN -+></P -+><P -+>If you have lot of overlapping windows, then panels library is the way to go. It -+obviates the need of doing series of wnoutrefresh(), doupdate() and relieves the -+burden of doing it correctly(bottom up). The library maintains information about -+the order of windows, their overlapping and update the screen properly. So why -+wait? Let's take a close peek into panels.</P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="PANELBASICS" -+>16.1. The Basics</A -+></H3 -+><P -+>Panel object is a window that is implicitly treated as part of a deck including -+all other panel objects. The deck is treated as a stack with the top panel being -+completely visible and the other panels may or may not be obscured according to -+their positions. So the basic idea is to create a stack of overlapping panels -+and use panels library to display them correctly. There is a function similar to -+refresh() which, when called , displays panels in the correct order. Functions -+are provided to hide or show panels, move panels, change its size etc.. The -+overlapping problem is managed by the panels library during all the calls to -+these functions. </P -+><P -+>The general flow of a panel program goes like this: -+ -+<P -+></P -+><OL -+TYPE="1" -+><LI -+><P -+>Create the windows (with newwin()) to be attached to the panels.</P -+></LI -+><LI -+><P -+>Create panels with the chosen visibility order. Stack them up according to the -+desired visibility. The function new_panel() is used to created panels.</P -+></LI -+><LI -+><P -+>Call update_panels() to write the panels to the virtual screen in correct -+visibility order. Do a doupdate() to show it on the screen. </P -+></LI -+><LI -+><P -+>Mainpulate the panels with show_panel(), hide_panel(), move_panel() etc. Make -+use of helper functions like panel_hidden() and panel_window(). Make use of user -+pointer to store custom data for a panel. Use the functions set_panel_userptr() -+and panel_userptr() to set and get the user pointer for a panel.</P -+></LI -+><LI -+><P -+>When you are done with the panel use del_panel() to delete the panel.</P -+></LI -+></OL -+></P -+><P -+>Let's make the concepts clear, with some programs. The following is a simple -+program which creates 3 overlapping panels and shows them on the screen. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="COMPILEPANELS" -+>16.2. Compiling With the Panels Library</A -+></H3 -+><P -+>To use panels library functions, you have to include panel.h and to link the -+program with panels library the flag -lpanel should be added along with -+-lncurses in that order.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> #include &lt;panel.h&gt; - . - . - . - -- compile and link: gcc &lt;program file&gt; -lpanel -lncurses</font> --</pre></td> --</tr> --</table> --<div class="EXAMPLE"><a name="PPASI" id="PPASI"></a> --<p><b>Example 14. Panel basics</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;panel.h&gt; -+ compile and link: gcc &lt;program file&gt; -lpanel -lncurses</PRE -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="PPASI" -+></A -+><P -+><B -+>Example 14. Panel basics</B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;panel.h&#62; - - int main() --{ WINDOW *my_wins[3]; -- PANEL *my_panels[3]; -- int lines = 10, cols = 40, y = 2, x = 4, i; -- -- initscr(); -- cbreak(); -- noecho(); -- -- /* Create windows for the panels */ -- my_wins[0] = newwin(lines, cols, y, x); -- my_wins[1] = newwin(lines, cols, y + 1, x + 5); -- my_wins[2] = newwin(lines, cols, y + 2, x + 10); -- -- /* -- * Create borders around the windows so that you can see the effect -- * of panels -- */ -- for(i = 0; i &lt; 3; ++i) -- box(my_wins[i], 0, 0); -- -- /* Attach a panel to each window */ /* Order is bottom up */ -- my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */ -- my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */ -- my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */ -- -- /* Update the stacking order. 2nd panel will be on top */ -- update_panels(); -- -- /* Show it on the screen */ -- doupdate(); -- -- getch(); -- endwin(); -+{ WINDOW *my_wins[3]; -+ PANEL *my_panels[3]; -+ int lines = 10, cols = 40, y = 2, x = 4, i; -+ -+ initscr(); -+ cbreak(); -+ noecho(); -+ -+ /* Create windows for the panels */ -+ my_wins[0] = newwin(lines, cols, y, x); -+ my_wins[1] = newwin(lines, cols, y + 1, x + 5); -+ my_wins[2] = newwin(lines, cols, y + 2, x + 10); -+ -+ /* -+ * Create borders around the windows so that you can see the effect -+ * of panels -+ */ -+ for(i = 0; i &#60; 3; ++i) -+ box(my_wins[i], 0, 0); -+ -+ /* Attach a panel to each window */ /* Order is bottom up */ -+ my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */ -+ my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */ -+ my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */ -+ -+ /* Update the stacking order. 2nd panel will be on top */ -+ update_panels(); -+ -+ /* Show it on the screen */ -+ doupdate(); -+ -+ getch(); -+ endwin(); - } --</span></font> --</pre></td> --</tr> --</table> --</div> --<p>As you can see, above program follows a simple flow as --explained. The windows are created with newwin() and then they are --attached to panels with new_panel(). As we attach one panel after --another, the stack of panels gets updated. To put them on screen --update_panels() and doupdate() are called.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="PANELBROWSING" id="PANELBROWSING">16.3. --Panel Window Browsing</a></h3> --<p>A slightly complicated example is given below. This program --creates 3 windows which can be cycled through using tab. Have a --look at the code.</p> --<div class="EXAMPLE"><a name="PPABR" id="PPABR"></a> --<p><b>Example 15. Panel Window Browsing Example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;panel.h&gt; -+</SPAN -+></PRE -+></DIV -+><P -+>As you can see, above program follows a simple flow as explained. The windows -+are created with newwin() and then they are attached to panels with new_panel(). -+As we attach one panel after another, the stack of panels gets updated. To put -+them on screen update_panels() and doupdate() are called.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="PANELBROWSING" -+>16.3. Panel Window Browsing</A -+></H3 -+><P -+>A slightly complicated example is given below. This program creates 3 -+windows which can be cycled through using tab. Have a look at the code.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="PPABR" -+></A -+><P -+><B -+>Example 15. Panel Window Browsing Example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;panel.h&#62; - - #define NLINES 10 - #define NCOLS 40 -@@ -2974,172 +4421,191 @@ - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color); - - int main() --{ WINDOW *my_wins[3]; -- PANEL *my_panels[3]; -- PANEL *top; -- int ch; -- -- /* Initialize curses */ -- initscr(); -- start_color(); -- cbreak(); -- noecho(); -- keypad(stdscr, TRUE); -- -- /* Initialize all the colors */ -- init_pair(1, COLOR_RED, COLOR_BLACK); -- init_pair(2, COLOR_GREEN, COLOR_BLACK); -- init_pair(3, COLOR_BLUE, COLOR_BLACK); -- init_pair(4, COLOR_CYAN, COLOR_BLACK); -- -- init_wins(my_wins, 3); -- -- /* Attach a panel to each window */ /* Order is bottom up */ -- my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */ -- my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */ -- my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */ -- -- /* Set up the user pointers to the next panel */ -- set_panel_userptr(my_panels[0], my_panels[1]); -- set_panel_userptr(my_panels[1], my_panels[2]); -- set_panel_userptr(my_panels[2], my_panels[0]); -- -- /* Update the stacking order. 2nd panel will be on top */ -- update_panels(); -- -- /* Show it on the screen */ -- attron(COLOR_PAIR(4)); -- mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)"); -- attroff(COLOR_PAIR(4)); -- doupdate(); -- -- top = my_panels[2]; -- while((ch = getch()) != KEY_F(1)) -- { switch(ch) -- { case 9: -- top = (PANEL *)panel_userptr(top); -- top_panel(top); -- break; -- } -- update_panels(); -- doupdate(); -- } -- endwin(); -- return 0; -+{ WINDOW *my_wins[3]; -+ PANEL *my_panels[3]; -+ PANEL *top; -+ int ch; -+ -+ /* Initialize curses */ -+ initscr(); -+ start_color(); -+ cbreak(); -+ noecho(); -+ keypad(stdscr, TRUE); -+ -+ /* Initialize all the colors */ -+ init_pair(1, COLOR_RED, COLOR_BLACK); -+ init_pair(2, COLOR_GREEN, COLOR_BLACK); -+ init_pair(3, COLOR_BLUE, COLOR_BLACK); -+ init_pair(4, COLOR_CYAN, COLOR_BLACK); -+ -+ init_wins(my_wins, 3); -+ -+ /* Attach a panel to each window */ /* Order is bottom up */ -+ my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */ -+ my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */ -+ my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */ -+ -+ /* Set up the user pointers to the next panel */ -+ set_panel_userptr(my_panels[0], my_panels[1]); -+ set_panel_userptr(my_panels[1], my_panels[2]); -+ set_panel_userptr(my_panels[2], my_panels[0]); -+ -+ /* Update the stacking order. 2nd panel will be on top */ -+ update_panels(); -+ -+ /* Show it on the screen */ -+ attron(COLOR_PAIR(4)); -+ mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)"); -+ attroff(COLOR_PAIR(4)); -+ doupdate(); -+ -+ top = my_panels[2]; -+ while((ch = getch()) != KEY_F(1)) -+ { switch(ch) -+ { case 9: -+ top = (PANEL *)panel_userptr(top); -+ top_panel(top); -+ break; -+ } -+ update_panels(); -+ doupdate(); -+ } -+ endwin(); -+ return 0; - } - - /* Put all the windows */ - void init_wins(WINDOW **wins, int n) --{ int x, y, i; -- char label[80]; -+{ int x, y, i; -+ char label[80]; - -- y = 2; -- x = 10; -- for(i = 0; i &lt; n; ++i) -- { wins[i] = newwin(NLINES, NCOLS, y, x); -- sprintf(label, "Window Number %d", i + 1); -- win_show(wins[i], label, i + 1); -- y += 3; -- x += 7; -- } -+ y = 2; -+ x = 10; -+ for(i = 0; i &#60; n; ++i) -+ { wins[i] = newwin(NLINES, NCOLS, y, x); -+ sprintf(label, "Window Number %d", i + 1); -+ win_show(wins[i], label, i + 1); -+ y += 3; -+ x += 7; -+ } - } - - /* Show the window with a border and a label */ - void win_show(WINDOW *win, char *label, int label_color) --{ int startx, starty, height, width; -+{ int startx, starty, height, width; - -- getbegyx(win, starty, startx); -- getmaxyx(win, height, width); -+ getbegyx(win, starty, startx); -+ getmaxyx(win, height, width); - -- box(win, 0, 0); -- mvwaddch(win, 2, 0, ACS_LTEE); -- mvwhline(win, 2, 1, ACS_HLINE, width - 2); -- mvwaddch(win, 2, width - 1, ACS_RTEE); -- -- print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color)); -+ box(win, 0, 0); -+ mvwaddch(win, 2, 0, ACS_LTEE); -+ mvwhline(win, 2, 1, ACS_HLINE, width - 2); -+ mvwaddch(win, 2, width - 1, ACS_RTEE); -+ -+ print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color)); - } - - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color) --{ int length, x, y; -- float temp; -+{ int length, x, y; -+ float temp; - -- if(win == NULL) -- win = stdscr; -- getyx(win, y, x); -- if(startx != 0) -- x = startx; -- if(starty != 0) -- y = starty; -- if(width == 0) -- width = 80; -- -- length = strlen(string); -- temp = (width - length)/ 2; -- x = startx + (int)temp; -- wattron(win, color); -- mvwprintw(win, y, x, "%s", string); -- wattroff(win, color); -- refresh(); --}</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="USERPTRUSING" id="USERPTRUSING">16.4. --Using User Pointers</a></h3> --<p>In the above example I used user pointers to find out the next --window in the cycle. We can attach custom information to the panel --by specifying a user pointer, which can point to any information --you want to store. In this case I stored the pointer to the next --panel in the cycle. User pointer for a panel can be set with the --function <var class="LITERAL">set_panel_userptr()</var>. It can be --accessed using the function <var class= --"LITERAL">panel_userptr()</var> which will return the user pointer --for the panel given as argument. After finding the next panel in --the cycle It's brought to the top by the function top_panel(). This --function brings the panel given as argument to the top of the panel --stack.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="PANELMOVERESIZE" id= --"PANELMOVERESIZE">16.5. Moving and Resizing Panels</a></h3> --<p>The function <var class="LITERAL">move_panel()</var> can be used --to move a panel to the desired location. It does not change the --position of the panel in the stack. Make sure that you use --move_panel() instead mvwin() on the window associated with the --panel.</p> --<p>Resizing a panel is slightly complex. There is no straight --forward function just to resize the window associated with a panel. --A solution to resize a panel is to create a new window with the --desired sizes, change the window associated with the panel using --replace_panel(). Don't forget to delete the old window. The window --associated with a panel can be found by using the function --panel_window().</p> --<p>The following program shows these concepts, in supposedly simple --program. You can cycle through the window with &lt;TAB&gt; as --usual. To resize or move the active panel press 'r' for resize 'm' --for moving. Then use arrow keys to resize or move it to the desired --way and press enter to end your resizing or moving. This example --makes use of user data to get the required data to do the --operations.</p> --<div class="EXAMPLE"><a name="PPARE" id="PPARE"></a> --<p><b>Example 16. Panel Moving and Resizing example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;panel.h&gt; -+ if(win == NULL) -+ win = stdscr; -+ getyx(win, y, x); -+ if(startx != 0) -+ x = startx; -+ if(starty != 0) -+ y = starty; -+ if(width == 0) -+ width = 80; -+ -+ length = strlen(string); -+ temp = (width - length)/ 2; -+ x = startx + (int)temp; -+ wattron(win, color); -+ mvwprintw(win, y, x, "%s", string); -+ wattroff(win, color); -+ refresh(); -+}</SPAN -+></PRE -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="USERPTRUSING" -+>16.4. Using User Pointers</A -+></H3 -+><P -+>In the above example I used user pointers to find out the next window in the -+cycle. We can attach custom information to the panel by specifying a user -+pointer, which can point to any information you want to store. In this case I -+stored the pointer to the next panel in the cycle. User pointer for a panel can -+be set with the function <TT -+CLASS="LITERAL" -+> set_panel_userptr()</TT -+>. -+It can be accessed using the function <TT -+CLASS="LITERAL" -+>panel_userptr()</TT -+> which will return the user pointer for the panel given as -+argument. After finding the next panel in the cycle It's brought to the top by -+the function top_panel(). This function brings the panel given as argument to -+the top of the panel stack. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="PANELMOVERESIZE" -+>16.5. Moving and Resizing Panels</A -+></H3 -+><P -+>The function <TT -+CLASS="LITERAL" -+>move_panel()</TT -+> can be used to move a -+panel to the desired location. It does not change the position of the panel in -+the stack. Make sure that you use move_panel() instead mvwin() on the window -+associated with the panel.</P -+><P -+>Resizing a panel is slightly complex. There is no straight forward function -+just to resize the window associated with a panel. A solution to resize a panel -+is to create a new window with the desired sizes, change the window associated -+with the panel using replace_panel(). Don't forget to delete the old window. The -+window associated with a panel can be found by using the function -+panel_window().</P -+><P -+>The following program shows these concepts, in supposedly simple program. You -+can cycle through the window with &lt;TAB&gt; as usual. To resize or move the -+active panel press 'r' for resize 'm' for moving. Then use arrow keys to resize -+or move it to the desired way and press enter to end your resizing or moving. -+This example makes use of user data to get the required data to do the -+operations. </P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="PPARE" -+></A -+><P -+><B -+>Example 16. Panel Moving and Resizing example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;panel.h&#62; - - typedef struct _PANEL_DATA { -- int x, y, w, h; -- char label[80]; -- int label_color; -- PANEL *next; -+ int x, y, w, h; -+ char label[80]; -+ int label_color; -+ PANEL *next; - }PANEL_DATA; - - #define NLINES 10 -@@ -3151,275 +4617,289 @@ - void set_user_ptrs(PANEL **panels, int n); - - int main() --{ WINDOW *my_wins[3]; -- PANEL *my_panels[3]; -- PANEL_DATA *top; -- PANEL *stack_top; -- WINDOW *temp_win, *old_win; -- int ch; -- int newx, newy, neww, newh; -- int size = FALSE, move = FALSE; -- -- /* Initialize curses */ -- initscr(); -- start_color(); -- cbreak(); -- noecho(); -- keypad(stdscr, TRUE); -- -- /* Initialize all the colors */ -- init_pair(1, COLOR_RED, COLOR_BLACK); -- init_pair(2, COLOR_GREEN, COLOR_BLACK); -- init_pair(3, COLOR_BLUE, COLOR_BLACK); -- init_pair(4, COLOR_CYAN, COLOR_BLACK); -- -- init_wins(my_wins, 3); -- -- /* Attach a panel to each window */ /* Order is bottom up */ -- my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */ -- my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */ -- my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */ -- -- set_user_ptrs(my_panels, 3); -- /* Update the stacking order. 2nd panel will be on top */ -- update_panels(); -- -- /* Show it on the screen */ -- attron(COLOR_PAIR(4)); -- mvprintw(LINES - 3, 0, "Use 'm' for moving, 'r' for resizing"); -- mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)"); -- attroff(COLOR_PAIR(4)); -- doupdate(); -- -- stack_top = my_panels[2]; -- top = (PANEL_DATA *)panel_userptr(stack_top); -- newx = top-&gt;x; -- newy = top-&gt;y; -- neww = top-&gt;w; -- newh = top-&gt;h; -- while((ch = getch()) != KEY_F(1)) -- { switch(ch) -- { case 9: /* Tab */ -- top = (PANEL_DATA *)panel_userptr(stack_top); -- top_panel(top-&gt;next); -- stack_top = top-&gt;next; -- top = (PANEL_DATA *)panel_userptr(stack_top); -- newx = top-&gt;x; -- newy = top-&gt;y; -- neww = top-&gt;w; -- newh = top-&gt;h; -- break; -- case 'r': /* Re-Size*/ -- size = TRUE; -- attron(COLOR_PAIR(4)); -- mvprintw(LINES - 4, 0, "Entered Resizing :Use Arrow Keys to resize and press &lt;ENTER&gt; to end resizing"); -- refresh(); -- attroff(COLOR_PAIR(4)); -- break; -- case 'm': /* Move */ -- attron(COLOR_PAIR(4)); -- mvprintw(LINES - 4, 0, "Entered Moving: Use Arrow Keys to Move and press &lt;ENTER&gt; to end moving"); -- refresh(); -- attroff(COLOR_PAIR(4)); -- move = TRUE; -- break; -- case KEY_LEFT: -- if(size == TRUE) -- { --newx; -- ++neww; -- } -- if(move == TRUE) -- --newx; -- break; -- case KEY_RIGHT: -- if(size == TRUE) -- { ++newx; -- --neww; -- } -- if(move == TRUE) -- ++newx; -- break; -- case KEY_UP: -- if(size == TRUE) -- { --newy; -- ++newh; -- } -- if(move == TRUE) -- --newy; -- break; -- case KEY_DOWN: -- if(size == TRUE) -- { ++newy; -- --newh; -- } -- if(move == TRUE) -- ++newy; -- break; -- case 10: /* Enter */ -- move(LINES - 4, 0); -- clrtoeol(); -- refresh(); -- if(size == TRUE) -- { old_win = panel_window(stack_top); -- temp_win = newwin(newh, neww, newy, newx); -- replace_panel(stack_top, temp_win); -- win_show(temp_win, top-&gt;label, top-&gt;label_color); -- delwin(old_win); -- size = FALSE; -- } -- if(move == TRUE) -- { move_panel(stack_top, newy, newx); -- move = FALSE; -- } -- break; -- -- } -- attron(COLOR_PAIR(4)); -- mvprintw(LINES - 3, 0, "Use 'm' for moving, 'r' for resizing"); -- mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)"); -- attroff(COLOR_PAIR(4)); -- refresh(); -- update_panels(); -- doupdate(); -- } -- endwin(); -- return 0; -+{ WINDOW *my_wins[3]; -+ PANEL *my_panels[3]; -+ PANEL_DATA *top; -+ PANEL *stack_top; -+ WINDOW *temp_win, *old_win; -+ int ch; -+ int newx, newy, neww, newh; -+ int size = FALSE, move = FALSE; -+ -+ /* Initialize curses */ -+ initscr(); -+ start_color(); -+ cbreak(); -+ noecho(); -+ keypad(stdscr, TRUE); -+ -+ /* Initialize all the colors */ -+ init_pair(1, COLOR_RED, COLOR_BLACK); -+ init_pair(2, COLOR_GREEN, COLOR_BLACK); -+ init_pair(3, COLOR_BLUE, COLOR_BLACK); -+ init_pair(4, COLOR_CYAN, COLOR_BLACK); -+ -+ init_wins(my_wins, 3); -+ -+ /* Attach a panel to each window */ /* Order is bottom up */ -+ my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */ -+ my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */ -+ my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */ -+ -+ set_user_ptrs(my_panels, 3); -+ /* Update the stacking order. 2nd panel will be on top */ -+ update_panels(); -+ -+ /* Show it on the screen */ -+ attron(COLOR_PAIR(4)); -+ mvprintw(LINES - 3, 0, "Use 'm' for moving, 'r' for resizing"); -+ mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)"); -+ attroff(COLOR_PAIR(4)); -+ doupdate(); -+ -+ stack_top = my_panels[2]; -+ top = (PANEL_DATA *)panel_userptr(stack_top); -+ newx = top-&#62;x; -+ newy = top-&#62;y; -+ neww = top-&#62;w; -+ newh = top-&#62;h; -+ while((ch = getch()) != KEY_F(1)) -+ { switch(ch) -+ { case 9: /* Tab */ -+ top = (PANEL_DATA *)panel_userptr(stack_top); -+ top_panel(top-&#62;next); -+ stack_top = top-&#62;next; -+ top = (PANEL_DATA *)panel_userptr(stack_top); -+ newx = top-&#62;x; -+ newy = top-&#62;y; -+ neww = top-&#62;w; -+ newh = top-&#62;h; -+ break; -+ case 'r': /* Re-Size*/ -+ size = TRUE; -+ attron(COLOR_PAIR(4)); -+ mvprintw(LINES - 4, 0, "Entered Resizing :Use Arrow Keys to resize and press &#60;ENTER&#62; to end resizing"); -+ refresh(); -+ attroff(COLOR_PAIR(4)); -+ break; -+ case 'm': /* Move */ -+ attron(COLOR_PAIR(4)); -+ mvprintw(LINES - 4, 0, "Entered Moving: Use Arrow Keys to Move and press &#60;ENTER&#62; to end moving"); -+ refresh(); -+ attroff(COLOR_PAIR(4)); -+ move = TRUE; -+ break; -+ case KEY_LEFT: -+ if(size == TRUE) -+ { --newx; -+ ++neww; -+ } -+ if(move == TRUE) -+ --newx; -+ break; -+ case KEY_RIGHT: -+ if(size == TRUE) -+ { ++newx; -+ --neww; -+ } -+ if(move == TRUE) -+ ++newx; -+ break; -+ case KEY_UP: -+ if(size == TRUE) -+ { --newy; -+ ++newh; -+ } -+ if(move == TRUE) -+ --newy; -+ break; -+ case KEY_DOWN: -+ if(size == TRUE) -+ { ++newy; -+ --newh; -+ } -+ if(move == TRUE) -+ ++newy; -+ break; -+ case 10: /* Enter */ -+ move(LINES - 4, 0); -+ clrtoeol(); -+ refresh(); -+ if(size == TRUE) -+ { old_win = panel_window(stack_top); -+ temp_win = newwin(newh, neww, newy, newx); -+ replace_panel(stack_top, temp_win); -+ win_show(temp_win, top-&#62;label, top-&#62;label_color); -+ delwin(old_win); -+ size = FALSE; -+ } -+ if(move == TRUE) -+ { move_panel(stack_top, newy, newx); -+ move = FALSE; -+ } -+ break; -+ -+ } -+ attron(COLOR_PAIR(4)); -+ mvprintw(LINES - 3, 0, "Use 'm' for moving, 'r' for resizing"); -+ mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)"); -+ attroff(COLOR_PAIR(4)); -+ refresh(); -+ update_panels(); -+ doupdate(); -+ } -+ endwin(); -+ return 0; - } - - /* Put all the windows */ - void init_wins(WINDOW **wins, int n) --{ int x, y, i; -- char label[80]; -+{ int x, y, i; -+ char label[80]; - -- y = 2; -- x = 10; -- for(i = 0; i &lt; n; ++i) -- { wins[i] = newwin(NLINES, NCOLS, y, x); -- sprintf(label, "Window Number %d", i + 1); -- win_show(wins[i], label, i + 1); -- y += 3; -- x += 7; -- } -+ y = 2; -+ x = 10; -+ for(i = 0; i &#60; n; ++i) -+ { wins[i] = newwin(NLINES, NCOLS, y, x); -+ sprintf(label, "Window Number %d", i + 1); -+ win_show(wins[i], label, i + 1); -+ y += 3; -+ x += 7; -+ } - } - - /* Set the PANEL_DATA structures for individual panels */ - void set_user_ptrs(PANEL **panels, int n) --{ PANEL_DATA *ptrs; -- WINDOW *win; -- int x, y, w, h, i; -- char temp[80]; -- -- ptrs = (PANEL_DATA *)calloc(n, sizeof(PANEL_DATA)); -- -- for(i = 0;i &lt; n; ++i) -- { win = panel_window(panels[i]); -- getbegyx(win, y, x); -- getmaxyx(win, h, w); -- ptrs[i].x = x; -- ptrs[i].y = y; -- ptrs[i].w = w; -- ptrs[i].h = h; -- sprintf(temp, "Window Number %d", i + 1); -- strcpy(ptrs[i].label, temp); -- ptrs[i].label_color = i + 1; -- if(i + 1 == n) -- ptrs[i].next = panels[0]; -- else -- ptrs[i].next = panels[i + 1]; -- set_panel_userptr(panels[i], &amp;ptrs[i]); -- } -+{ PANEL_DATA *ptrs; -+ WINDOW *win; -+ int x, y, w, h, i; -+ char temp[80]; -+ -+ ptrs = (PANEL_DATA *)calloc(n, sizeof(PANEL_DATA)); -+ -+ for(i = 0;i &#60; n; ++i) -+ { win = panel_window(panels[i]); -+ getbegyx(win, y, x); -+ getmaxyx(win, h, w); -+ ptrs[i].x = x; -+ ptrs[i].y = y; -+ ptrs[i].w = w; -+ ptrs[i].h = h; -+ sprintf(temp, "Window Number %d", i + 1); -+ strcpy(ptrs[i].label, temp); -+ ptrs[i].label_color = i + 1; -+ if(i + 1 == n) -+ ptrs[i].next = panels[0]; -+ else -+ ptrs[i].next = panels[i + 1]; -+ set_panel_userptr(panels[i], &#38;ptrs[i]); -+ } - } - - /* Show the window with a border and a label */ - void win_show(WINDOW *win, char *label, int label_color) --{ int startx, starty, height, width; -+{ int startx, starty, height, width; - -- getbegyx(win, starty, startx); -- getmaxyx(win, height, width); -+ getbegyx(win, starty, startx); -+ getmaxyx(win, height, width); - -- box(win, 0, 0); -- mvwaddch(win, 2, 0, ACS_LTEE); -- mvwhline(win, 2, 1, ACS_HLINE, width - 2); -- mvwaddch(win, 2, width - 1, ACS_RTEE); -- -- print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color)); -+ box(win, 0, 0); -+ mvwaddch(win, 2, 0, ACS_LTEE); -+ mvwhline(win, 2, 1, ACS_HLINE, width - 2); -+ mvwaddch(win, 2, width - 1, ACS_RTEE); -+ -+ print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color)); - } - - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color) --{ int length, x, y; -- float temp; -+{ int length, x, y; -+ float temp; - -- if(win == NULL) -- win = stdscr; -- getyx(win, y, x); -- if(startx != 0) -- x = startx; -- if(starty != 0) -- y = starty; -- if(width == 0) -- width = 80; -- -- length = strlen(string); -- temp = (width - length)/ 2; -- x = startx + (int)temp; -- wattron(win, color); -- mvwprintw(win, y, x, "%s", string); -- wattroff(win, color); -- refresh(); --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>Concentrate on the main while loop. Once it finds out the type --of key pressed, it takes appropriate action. If 'r' is pressed --resizing mode is started. After this the new sizes are updated as --the user presses the arrow keys. When the user presses --&lt;ENTER&gt; present selection ends and panel is resized by using --the concept explained. While in resizing mode the program doesn't --show how the window is getting resized. It's left as an exercise to --the reader to print a dotted border while it gets resized to a new --position.</p> --<p>When the user presses 'm' the move mode starts. This is a bit --simpler than resizing. As the arrow keys are pressed the new --position is updated and pressing of &lt;ENTER&gt; causes the panel --to be moved by calling the function move_panel().</p> --<p>In this program the user data which is represented as --PANEL_DATA, plays very important role in finding the associated --information with a panel. As written in the comments, the --PANEL_DATA stores the panel sizes, label, label color and a pointer --to the next panel in the cycle.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="PANELSHOWHIDE" id="PANELSHOWHIDE">16.6. --Hiding and Showing Panels</a></h3> --<p>A Panel can be hidden by using the function hide_panel(). This --function merely removes it form the stack of panels, thus hiding it --on the screen once you do update_panels() and doupdate(). It --doesn't destroy the PANEL structure associated with the hidden --panel. It can be shown again by using the show_panel() --function.</p> --<p>The following program shows the hiding of panels. Press 'a' or --'b' or 'c' to show or hide first, second and third windows --respectively. It uses a user data with a small variable hide, which --keeps track of whether the window is hidden or not. For some reason --the function <var class="LITERAL">panel_hidden()</var> which tells --whether a panel is hidden or not is not working. A bug report was --also presented by Michael Andres <a href= --"http://www.geocrawler.com/archives/3/344/1999/9/0/2643549/" --target="_top">here</a></p> --<div class="EXAMPLE"><a name="PPAHI" id="PPAHI"></a> --<p><b>Example 17. Panel Hiding and Showing example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;panel.h&gt; -+ if(win == NULL) -+ win = stdscr; -+ getyx(win, y, x); -+ if(startx != 0) -+ x = startx; -+ if(starty != 0) -+ y = starty; -+ if(width == 0) -+ width = 80; -+ -+ length = strlen(string); -+ temp = (width - length)/ 2; -+ x = startx + (int)temp; -+ wattron(win, color); -+ mvwprintw(win, y, x, "%s", string); -+ wattroff(win, color); -+ refresh(); -+}</SPAN -+></PRE -+></DIV -+><P -+>Concentrate on the main while loop. Once it finds out the type of key pressed, -+it takes appropriate action. If 'r' is pressed resizing mode is started. After -+this the new sizes are updated as the user presses the arrow keys. When the user -+presses &lt;ENTER&gt; present selection ends and panel is resized by using the -+concept explained. While in resizing mode the program doesn't show how the -+window is getting resized. It's left as an exercise to the reader to print a -+dotted border while it gets resized to a new position. </P -+><P -+>When the user presses 'm' the move mode starts. This is a bit simpler than -+resizing. As the arrow keys are pressed the new position is updated and -+pressing of &lt;ENTER&gt; causes the panel to be moved by calling the function -+move_panel().</P -+><P -+>In this program the user data which is represented as PANEL_DATA, plays very -+important role in finding the associated information with a panel. As written in -+the comments, the PANEL_DATA stores the panel sizes, label, label color and a -+pointer to the next panel in the cycle.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="PANELSHOWHIDE" -+>16.6. Hiding and Showing Panels</A -+></H3 -+><P -+>A Panel can be hidden by using the function hide_panel(). This function merely -+removes it form the stack of panels, thus hiding it on the screen once you do -+update_panels() and doupdate(). It doesn't destroy the PANEL structure -+associated with the hidden panel. It can be shown again by using the -+show_panel() function.</P -+><P -+>The following program shows the hiding of panels. Press 'a' or 'b' or 'c' to -+show or hide first, second and third windows respectively. It uses a user data -+with a small variable hide, which keeps track of whether the window is hidden or -+not. For some reason the function -+<TT -+CLASS="LITERAL" -+>panel_hidden()</TT -+> which tells whether a panel is -+hidden or not is not working. A bug report was also presented by Michael Andres -+<A -+HREF="http://www.geocrawler.com/archives/3/344/1999/9/0/2643549/" -+TARGET="_top" -+> here</A -+></P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="PPAHI" -+></A -+><P -+><B -+>Example 17. Panel Hiding and Showing example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;panel.h&#62; - - typedef struct _PANEL_DATA { -- int hide; /* TRUE if panel is hidden */ -+ int hide; /* TRUE if panel is hidden */ - }PANEL_DATA; - - #define NLINES 10 -@@ -3430,257 +4910,292 @@ - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color); - - int main() --{ WINDOW *my_wins[3]; -- PANEL *my_panels[3]; -- PANEL_DATA panel_datas[3]; -- PANEL_DATA *temp; -- int ch; -- -- /* Initialize curses */ -- initscr(); -- start_color(); -- cbreak(); -- noecho(); -- keypad(stdscr, TRUE); -- -- /* Initialize all the colors */ -- init_pair(1, COLOR_RED, COLOR_BLACK); -- init_pair(2, COLOR_GREEN, COLOR_BLACK); -- init_pair(3, COLOR_BLUE, COLOR_BLACK); -- init_pair(4, COLOR_CYAN, COLOR_BLACK); -- -- init_wins(my_wins, 3); -- -- /* Attach a panel to each window */ /* Order is bottom up */ -- my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */ -- my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */ -- my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */ -- -- /* Initialize panel datas saying that nothing is hidden */ -- panel_datas[0].hide = FALSE; -- panel_datas[1].hide = FALSE; -- panel_datas[2].hide = FALSE; -- -- set_panel_userptr(my_panels[0], &amp;panel_datas[0]); -- set_panel_userptr(my_panels[1], &amp;panel_datas[1]); -- set_panel_userptr(my_panels[2], &amp;panel_datas[2]); -- -- /* Update the stacking order. 2nd panel will be on top */ -- update_panels(); -- -- /* Show it on the screen */ -- attron(COLOR_PAIR(4)); -- mvprintw(LINES - 3, 0, "Show or Hide a window with 'a'(first window) 'b'(Second Window) 'c'(Third Window)"); -- mvprintw(LINES - 2, 0, "F1 to Exit"); -- -- attroff(COLOR_PAIR(4)); -- doupdate(); -- -- while((ch = getch()) != KEY_F(1)) -- { switch(ch) -- { case 'a': -- temp = (PANEL_DATA *)panel_userptr(my_panels[0]); -- if(temp-&gt;hide == FALSE) -- { hide_panel(my_panels[0]); -- temp-&gt;hide = TRUE; -- } -- else -- { show_panel(my_panels[0]); -- temp-&gt;hide = FALSE; -- } -- break; -- case 'b': -- temp = (PANEL_DATA *)panel_userptr(my_panels[1]); -- if(temp-&gt;hide == FALSE) -- { hide_panel(my_panels[1]); -- temp-&gt;hide = TRUE; -- } -- else -- { show_panel(my_panels[1]); -- temp-&gt;hide = FALSE; -- } -- break; -- case 'c': -- temp = (PANEL_DATA *)panel_userptr(my_panels[2]); -- if(temp-&gt;hide == FALSE) -- { hide_panel(my_panels[2]); -- temp-&gt;hide = TRUE; -- } -- else -- { show_panel(my_panels[2]); -- temp-&gt;hide = FALSE; -- } -- break; -- } -- update_panels(); -- doupdate(); -- } -- endwin(); -- return 0; -+{ WINDOW *my_wins[3]; -+ PANEL *my_panels[3]; -+ PANEL_DATA panel_datas[3]; -+ PANEL_DATA *temp; -+ int ch; -+ -+ /* Initialize curses */ -+ initscr(); -+ start_color(); -+ cbreak(); -+ noecho(); -+ keypad(stdscr, TRUE); -+ -+ /* Initialize all the colors */ -+ init_pair(1, COLOR_RED, COLOR_BLACK); -+ init_pair(2, COLOR_GREEN, COLOR_BLACK); -+ init_pair(3, COLOR_BLUE, COLOR_BLACK); -+ init_pair(4, COLOR_CYAN, COLOR_BLACK); -+ -+ init_wins(my_wins, 3); -+ -+ /* Attach a panel to each window */ /* Order is bottom up */ -+ my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */ -+ my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */ -+ my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */ -+ -+ /* Initialize panel datas saying that nothing is hidden */ -+ panel_datas[0].hide = FALSE; -+ panel_datas[1].hide = FALSE; -+ panel_datas[2].hide = FALSE; -+ -+ set_panel_userptr(my_panels[0], &#38;panel_datas[0]); -+ set_panel_userptr(my_panels[1], &#38;panel_datas[1]); -+ set_panel_userptr(my_panels[2], &#38;panel_datas[2]); -+ -+ /* Update the stacking order. 2nd panel will be on top */ -+ update_panels(); -+ -+ /* Show it on the screen */ -+ attron(COLOR_PAIR(4)); -+ mvprintw(LINES - 3, 0, "Show or Hide a window with 'a'(first window) 'b'(Second Window) 'c'(Third Window)"); -+ mvprintw(LINES - 2, 0, "F1 to Exit"); -+ -+ attroff(COLOR_PAIR(4)); -+ doupdate(); -+ -+ while((ch = getch()) != KEY_F(1)) -+ { switch(ch) -+ { case 'a': -+ temp = (PANEL_DATA *)panel_userptr(my_panels[0]); -+ if(temp-&#62;hide == FALSE) -+ { hide_panel(my_panels[0]); -+ temp-&#62;hide = TRUE; -+ } -+ else -+ { show_panel(my_panels[0]); -+ temp-&#62;hide = FALSE; -+ } -+ break; -+ case 'b': -+ temp = (PANEL_DATA *)panel_userptr(my_panels[1]); -+ if(temp-&#62;hide == FALSE) -+ { hide_panel(my_panels[1]); -+ temp-&#62;hide = TRUE; -+ } -+ else -+ { show_panel(my_panels[1]); -+ temp-&#62;hide = FALSE; -+ } -+ break; -+ case 'c': -+ temp = (PANEL_DATA *)panel_userptr(my_panels[2]); -+ if(temp-&#62;hide == FALSE) -+ { hide_panel(my_panels[2]); -+ temp-&#62;hide = TRUE; -+ } -+ else -+ { show_panel(my_panels[2]); -+ temp-&#62;hide = FALSE; -+ } -+ break; -+ } -+ update_panels(); -+ doupdate(); -+ } -+ endwin(); -+ return 0; - } - - /* Put all the windows */ - void init_wins(WINDOW **wins, int n) --{ int x, y, i; -- char label[80]; -+{ int x, y, i; -+ char label[80]; - -- y = 2; -- x = 10; -- for(i = 0; i &lt; n; ++i) -- { wins[i] = newwin(NLINES, NCOLS, y, x); -- sprintf(label, "Window Number %d", i + 1); -- win_show(wins[i], label, i + 1); -- y += 3; -- x += 7; -- } -+ y = 2; -+ x = 10; -+ for(i = 0; i &#60; n; ++i) -+ { wins[i] = newwin(NLINES, NCOLS, y, x); -+ sprintf(label, "Window Number %d", i + 1); -+ win_show(wins[i], label, i + 1); -+ y += 3; -+ x += 7; -+ } - } - - /* Show the window with a border and a label */ - void win_show(WINDOW *win, char *label, int label_color) --{ int startx, starty, height, width; -+{ int startx, starty, height, width; - -- getbegyx(win, starty, startx); -- getmaxyx(win, height, width); -+ getbegyx(win, starty, startx); -+ getmaxyx(win, height, width); - -- box(win, 0, 0); -- mvwaddch(win, 2, 0, ACS_LTEE); -- mvwhline(win, 2, 1, ACS_HLINE, width - 2); -- mvwaddch(win, 2, width - 1, ACS_RTEE); -- -- print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color)); -+ box(win, 0, 0); -+ mvwaddch(win, 2, 0, ACS_LTEE); -+ mvwhline(win, 2, 1, ACS_HLINE, width - 2); -+ mvwaddch(win, 2, width - 1, ACS_RTEE); -+ -+ print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color)); - } - - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color) --{ int length, x, y; -- float temp; -+{ int length, x, y; -+ float temp; - -- if(win == NULL) -- win = stdscr; -- getyx(win, y, x); -- if(startx != 0) -- x = startx; -- if(starty != 0) -- y = starty; -- if(width == 0) -- width = 80; -- -- length = strlen(string); -- temp = (width - length)/ 2; -- x = startx + (int)temp; -- wattron(win, color); -- mvwprintw(win, y, x, "%s", string); -- wattroff(win, color); -- refresh(); --}</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="PANELABOVE" id="PANELABOVE">16.7. --panel_above() and panel_below() Functions</a></h3> --<p>The functions <var class="LITERAL">panel_above()</var> and --<var class="LITERAL">panel_below()</var> can be used to find out --the panel above and below a panel. If the argument to these --functions is NULL, then they return a pointer to bottom panel and --top panel respectively.</p> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="MENUS" id="MENUS">17. Menus --Library</a></h2> --<p>The menus library provides a nice extension to basic curses, --through which you can create menus. It provides a set of functions --to create menus. But they have to be customized to give a nicer --look, with colors etc. Let's get into the details.</p> --<p>A menu is a screen display that assists the user to choose some --subset of a given set of items. To put it simple, a menu is a --collection of items from which one or more items can be chosen. --Some readers might not be aware of multiple item selection --capability. Menu library provides functionality to write menus from --which the user can chose more than one item as the preferred --choice. This is dealt with in a later section. Now it is time for --some rudiments.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MENUBASICS" id="MENUBASICS">17.1. The --Basics</a></h3> --<p>To create menus, you first create items, and then post the menu --to the display. After that, all the processing of user responses is --done in an elegant function menu_driver() which is the work horse --of any menu program.</p> --<p>The general flow of control of a menu program looks like --this.</p> --<ol type="1"> --<li> --<p>Initialize curses</p> --</li> --<li> --<p>Create items using new_item(). You can specify a name and --description for the items.</p> --</li> --<li> --<p>Create the menu with new_menu() by specifying the items to be --attached with.</p> --</li> --<li> --<p>Post the menu with menu_post() and refresh the screen.</p> --</li> --<li> --<p>Process the user requests with a loop and do necessary updates --to menu with menu_driver.</p> --</li> --<li> --<p>Unpost the menu with menu_unpost()</p> --</li> --<li> --<p>Free the memory allocated to menu by free_menu()</p> --</li> --<li> --<p>Free the memory allocated to the items with free_item()</p> --</li> --<li> --<p>End curses</p> --</li> --</ol> --<p>Let's see a program which prints a simple menu and updates the --current selection with up, down arrows.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="COMPILEMENUS" id="COMPILEMENUS">17.2. --Compiling With the Menu Library</a></h3> --<p>To use menu library functions, you have to include menu.h and to --link the program with menu library the flag -lmenu should be added --along with -lncurses in that order.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> #include &lt;menu.h&gt; -+ if(win == NULL) -+ win = stdscr; -+ getyx(win, y, x); -+ if(startx != 0) -+ x = startx; -+ if(starty != 0) -+ y = starty; -+ if(width == 0) -+ width = 80; -+ -+ length = strlen(string); -+ temp = (width - length)/ 2; -+ x = startx + (int)temp; -+ wattron(win, color); -+ mvwprintw(win, y, x, "%s", string); -+ wattroff(win, color); -+ refresh(); -+}</SPAN -+></PRE -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="PANELABOVE" -+>16.7. panel_above() and panel_below() Functions</A -+></H3 -+><P -+>The functions <TT -+CLASS="LITERAL" -+>panel_above()</TT -+> and -+<TT -+CLASS="LITERAL" -+>panel_below()</TT -+> can be used to find out the panel -+above and below a panel. If the argument to these functions is NULL, then they -+return a pointer to bottom panel and top panel respectively.</P -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="MENUS" -+>17. Menus Library</A -+></H2 -+><P -+>The menus library provides a nice extension to basic curses, through which you -+can create menus. It provides a set of functions to create menus. But they have -+to be customized to give a nicer look, with colors etc. Let's get into the -+details.</P -+><P -+>A menu is a screen display that assists the user to choose some subset of a -+given set of items. To put it simple, a menu is a collection of items from which -+one or more items can be chosen. Some readers might not be aware of multiple -+item selection capability. Menu library provides functionality to write menus -+from which the user can chose more than one item as the preferred choice. This -+is dealt with in a later section. Now it is time for some rudiments.</P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MENUBASICS" -+>17.1. The Basics</A -+></H3 -+><P -+>To create menus, you first create items, and then post the menu to the display. -+After that, all the processing of user responses is done in an elegant function -+menu_driver() which is the work horse of any menu program. </P -+><P -+>The general flow of control of a menu program looks like this. -+<P -+></P -+><OL -+TYPE="1" -+><LI -+><P -+>Initialize curses</P -+></LI -+><LI -+><P -+>Create items using new_item(). You can specify a name and description for the -+items.</P -+></LI -+><LI -+><P -+>Create the menu with new_menu() by specifying the items to be attached with.</P -+></LI -+><LI -+><P -+>Post the menu with menu_post() and refresh the screen.</P -+></LI -+><LI -+><P -+>Process the user requests with a loop and do necessary updates to menu with -+menu_driver.</P -+></LI -+><LI -+><P -+>Unpost the menu with menu_unpost()</P -+></LI -+><LI -+><P -+>Free the memory allocated to menu by free_menu()</P -+></LI -+><LI -+><P -+>Free the memory allocated to the items with free_item() </P -+></LI -+><LI -+><P -+>End curses </P -+></LI -+></OL -+></P -+><P -+>Let's see a program which prints a simple menu and updates the current selection -+with up, down arrows. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="COMPILEMENUS" -+>17.2. Compiling With the Menu Library</A -+></H3 -+><P -+>To use menu library functions, you have to include menu.h and to link the -+program with menu library the flag -lmenu should be added along with -lncurses -+in that order.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> #include &lt;menu.h&gt; - . - . - . - -- compile and link: gcc &lt;program file&gt; -lmenu -lncurses</font> --</pre></td> --</tr> --</table> --<div class="EXAMPLE"><a name="MMESI" id="MMESI"></a> --<p><b>Example 18. Menu Basics</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;curses.h&gt; --#include &lt;menu.h&gt; -+ compile and link: gcc &lt;program file&gt; -lmenu -lncurses</PRE -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="MMESI" -+></A -+><P -+><B -+>Example 18. Menu Basics </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;curses.h&#62; -+#include &#60;menu.h&#62; - - #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0])) --#define CTRLD 4 -+#define CTRLD 4 - - char *choices[] = { - "Choice 1", -@@ -3691,69 +5206,64 @@ - }; - - int main() --{ ITEM **my_items; -- int c; -- MENU *my_menu; -- int n_choices, i; -- ITEM *cur_item; -- -- -- initscr(); -- cbreak(); -- noecho(); -- keypad(stdscr, TRUE); -- -- n_choices = ARRAY_SIZE(choices); -- my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *)); -- -- for(i = 0; i &lt; n_choices; ++i) -- my_items[i] = new_item(choices[i], choices[i]); -- my_items[n_choices] = (ITEM *)NULL; -- -- my_menu = new_menu((ITEM **)my_items); -- mvprintw(LINES - 2, 0, "F1 to Exit"); -- post_menu(my_menu); -- refresh(); -- -- while((c = getch()) != KEY_F(1)) -- { switch(c) -- { case KEY_DOWN: -- menu_driver(my_menu, REQ_DOWN_ITEM); -- break; -- case KEY_UP: -- menu_driver(my_menu, REQ_UP_ITEM); -- break; -- } -- } -- -- free_item(my_items[0]); -- free_item(my_items[1]); -- free_menu(my_menu); -- endwin(); -+{ ITEM **my_items; -+ int c; -+ MENU *my_menu; -+ int n_choices, i; -+ ITEM *cur_item; -+ -+ -+ initscr(); -+ cbreak(); -+ noecho(); -+ keypad(stdscr, TRUE); -+ -+ n_choices = ARRAY_SIZE(choices); -+ my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *)); -+ -+ for(i = 0; i &#60; n_choices; ++i) -+ my_items[i] = new_item(choices[i], choices[i]); -+ my_items[n_choices] = (ITEM *)NULL; -+ -+ my_menu = new_menu((ITEM **)my_items); -+ mvprintw(LINES - 2, 0, "F1 to Exit"); -+ post_menu(my_menu); -+ refresh(); -+ -+ while((c = getch()) != KEY_F(1)) -+ { switch(c) -+ { case KEY_DOWN: -+ menu_driver(my_menu, REQ_DOWN_ITEM); -+ break; -+ case KEY_UP: -+ menu_driver(my_menu, REQ_UP_ITEM); -+ break; -+ } -+ } -+ -+ free_item(my_items[0]); -+ free_item(my_items[1]); -+ free_menu(my_menu); -+ endwin(); - } -- </span></font> --</pre></td> --</tr> --</table> --</div> --<p>This program demonstrates the basic concepts involved in --creating a menu using menus library. First we create the items --using new_item() and then attach them to the menu with new_menu() --function. After posting the menu and refreshing the screen, the --main processing loop starts. It reads user input and takes --corresponding action. The function menu_driver() is the main work --horse of the menu system. The second parameter to this function --tells what's to be done with the menu. According to the parameter, --menu_driver() does the corresponding task. The value can be either --a menu navigational request, an ascii character, or a KEY_MOUSE --special key associated with a mouse event.</p> --<p>The menu_driver accepts following navigational requests.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">&#13; REQ_LEFT_ITEM Move left to an item. -+ </SPAN -+></PRE -+></DIV -+><P -+>This program demonstrates the basic concepts involved in creating a menu using -+menus library. First we create the items using new_item() and then attach them -+to the menu with new_menu() function. After posting the menu and refreshing the -+screen, the main processing loop starts. It reads user input and takes -+corresponding action. The function menu_driver() is the main work horse of the -+menu system. The second parameter to this function tells what's to be done with -+the menu. According to the parameter, menu_driver() does the corresponding task. -+The value can be either a menu navigational request, an ascii character, or a -+KEY_MOUSE special key associated with a mouse event.</P -+><P -+>The menu_driver accepts following navigational requests. -+<PRE -+CLASS="PROGRAMLISTING" -+>&#13; REQ_LEFT_ITEM Move left to an item. - REQ_RIGHT_ITEM Move right to an item. - REQ_UP_ITEM Move up to an item. - REQ_DOWN_ITEM Move down to an item. -@@ -3769,87 +5279,144 @@ - REQ_CLEAR_PATTERN Clear the menu pattern buffer. - REQ_BACK_PATTERN Delete the previous character from the pattern buffer. - REQ_NEXT_MATCH Move to the next item matching the pattern match. -- REQ_PREV_MATCH Move to the previous item matching the pattern match.&#13;</font> --</pre></td> --</tr> --</table> --<p>Don't get overwhelmed by the number of options. We will see them --slowly one after another. The options of interest in this example --are REQ_UP_ITEM and REQ_DOWN_ITEM. These two options when passed to --menu_driver, menu driver updates the current item to one item up or --down respectively.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MENUDRIVER" id="MENUDRIVER">17.3. Menu --Driver: The work horse of the menu system</a></h3> --<p>As you have seen in the above example, menu_driver plays an --important role in updating the menu. It is very important to --understand various options it takes and what they do. As explained --above, the second parameter to menu_driver() can be either a --navigational request, a printable character or a KEY_MOUSE key. --Let's dissect the different navigational requests.</p> --<ul> --<li> --<p><em>REQ_LEFT_ITEM and REQ_RIGHT_ITEM</em></p> --<p>A Menu can be displayed with multiple columns for more than one --item. This can be done by using the <var class= --"LITERAL">menu_format()</var>function. When a multi columnar menu --is displayed these requests cause the menu driver to move the --current selection to left or right.</p> --</li> --<li> --<p><em>REQ_UP_ITEM and REQ_DOWN_ITEM</em></p> --<p>These two options you have seen in the above example. These --options when given, makes the menu_driver to move the current --selection to an item up or down.</p> --</li> --<li> --<p><em>REQ_SCR_* options</em></p> --<p>The four options REQ_SCR_ULINE, REQ_SCR_DLINE, REQ_SCR_DPAGE, --REQ_SCR_UPAGE are related to scrolling. If all the items in the --menu cannot be displayed in the menu sub window, then the menu is --scrollable. These requests can be given to the menu_driver to do --the scrolling either one line up, down or one page down or up --respectively.</p> --</li> --<li> --<p><em>REQ_FIRST_ITEM, REQ_LAST_ITEM, REQ_NEXT_ITEM and --REQ_PREV_ITEM</em></p> --<p>These requests are self explanatory.</p> --</li> --<li> --<p><em>REQ_TOGGLE_ITEM</em></p> --<p>This request when given, toggles the present selection. This --option is to be used only in a multi valued menu. So to use this --request the option O_ONEVALUE must be off. This option can be made --off or on with set_menu_opts().</p> --</li> --<li> --<p><em>Pattern Requests</em></p> --<p>Every menu has an associated pattern buffer, which is used to --find the nearest match to the ascii characters entered by the user. --Whenever ascii characters are given to menu_driver, it puts in to --the pattern buffer. It also tries to find the nearest match to the --pattern in the items list and moves current selection to that item. --The request REQ_CLEAR_PATTERN clears the pattern buffer. The --request REQ_BACK_PATTERN deletes the previous character in the --pattern buffer. In case the pattern matches more than one item then --the matched items can be cycled through REQ_NEXT_MATCH and --REQ_PREV_MATCH which move the current selection to the next and --previous matches respectively.</p> --</li> --<li> --<p><em>Mouse Requests</em></p> --<p>In case of KEY_MOUSE requests, according to the mouse position --an action is taken accordingly. The action to be taken is explained --in the man page as,</p> --<table border="0" bgcolor="#E0E0E0" width="90%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000"><em> If the second argument is the KEY_MOUSE special key, the -+ REQ_PREV_MATCH Move to the previous item matching the pattern match.&#13;</PRE -+></P -+><P -+>Don't get overwhelmed by the number of options. We will see them slowly one -+after another. The options of interest in this example are REQ_UP_ITEM and -+REQ_DOWN_ITEM. These two options when passed to menu_driver, menu driver -+updates the current item to one item up or down respectively.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MENUDRIVER" -+>17.3. Menu Driver: The work horse of the menu system</A -+></H3 -+><P -+>As you have seen in the above example, menu_driver plays an important role in -+updating the menu. It is very important to understand various options it takes -+and what they do. As explained above, the second parameter to menu_driver() can -+be either a navigational request, a printable character or a KEY_MOUSE key. -+Let's dissect the different navigational requests.</P -+><P -+></P -+><UL -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_LEFT_ITEM and REQ_RIGHT_ITEM</I -+></SPAN -+></P -+><P -+>A Menu can be displayed with multiple columns for more than one item. This can -+be done by using the <TT -+CLASS="LITERAL" -+>menu_format()</TT -+>function. -+When a multi columnar menu is displayed these requests cause the menu driver to -+move the current selection to left or right.</P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_UP_ITEM and REQ_DOWN_ITEM </I -+></SPAN -+> </P -+><P -+>These two options you have seen in the above example. These options when given, -+makes the menu_driver to move the current selection to an item up or down.</P -+></LI -+><LI -+><P -+> <SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_* options</I -+></SPAN -+> </P -+><P -+>The four options REQ_SCR_ULINE, REQ_SCR_DLINE, REQ_SCR_DPAGE, REQ_SCR_UPAGE are -+related to scrolling. If all the items in the menu cannot be displayed in the -+menu sub window, then the menu is scrollable. These requests can be given to the -+menu_driver to do the scrolling either one line up, down or one page down or up -+respectively. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_FIRST_ITEM, REQ_LAST_ITEM, REQ_NEXT_ITEM and -+REQ_PREV_ITEM </I -+></SPAN -+> </P -+><P -+>These requests are self explanatory.</P -+></LI -+><LI -+><P -+> <SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_TOGGLE_ITEM</I -+></SPAN -+> </P -+><P -+>This request when given, toggles the present selection. This option is to be -+used only in a multi valued menu. So to use this request the option O_ONEVALUE -+must be off. This option can be made off or on with set_menu_opts().</P -+></LI -+><LI -+><P -+> <SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>Pattern Requests </I -+></SPAN -+></P -+><P -+>Every menu has an associated pattern buffer, which is used to find the nearest -+match to the ascii characters entered by the user. Whenever ascii characters are -+given to menu_driver, it puts in to the pattern buffer. It also tries to find -+the nearest match to the pattern in the items list and moves current selection -+to that item. The request REQ_CLEAR_PATTERN clears the pattern buffer. The -+request REQ_BACK_PATTERN deletes the previous character in the pattern buffer. -+In case the pattern matches more than one item then the matched items can be -+cycled through REQ_NEXT_MATCH and REQ_PREV_MATCH which move the current -+selection to the next and previous matches respectively.</P -+></LI -+><LI -+><P -+> <SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>Mouse Requests</I -+></SPAN -+></P -+><P -+>In case of KEY_MOUSE requests, according to the mouse position an action is -+taken accordingly. The action to be taken is explained in the man page as, </P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+> If the second argument is the KEY_MOUSE special key, the - associated mouse event is translated into one of the above - pre-defined requests. Currently only clicks in the user - window (e.g. inside the menu display area or the decora&shy; -@@ -3861,39 +5428,49 @@ - generated, if you doubleclick a REQ_SCR_DPAGE is generated - and if you tripleclick a REQ_LAST_ITEM is generated. If - you click at an item inside the display area of the menu, -- the menu cursor is positioned to that item.</em></font> --</pre></td> --</tr> --</table> --</li> --</ul> --<p>Each of the above requests will be explained in the following --lines with several examples whenever appropriate.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MENUWINDOWS" id="MENUWINDOWS">17.4. Menu --Windows</a></h3> --<p>Every menu created is associated with a window and a sub window. --The menu window displays any title or border associated with the --menu. The menu sub window displays the menu items currently --available for selection. But we didn't specify any window or sub --window in the simple example. When a window is not specified, --stdscr is taken as the main window, and then menu system calculates --the sub window size required for the display of items. Then items --are displayed in the calculated sub window. So let's play with --these windows and display a menu with a border and a title.</p> --<div class="EXAMPLE"><a name="MMEWI" id="MMEWI"></a> --<p><b>Example 19. Menu Windows Usage example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;menu.h&gt; -+ the menu cursor is positioned to that item.</I -+></SPAN -+></PRE -+></LI -+></UL -+><P -+>Each of the above requests will be explained in the following lines with several -+examples whenever appropriate.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MENUWINDOWS" -+>17.4. Menu Windows</A -+></H3 -+><P -+>Every menu created is associated with a window and a sub window. The menu window -+displays any title or border associated with the menu. The menu sub window -+displays the menu items currently available for selection. But we didn't specify -+any window or sub window in the simple example. When a window is not specified, -+stdscr is taken as the main window, and then menu system calculates the sub -+window size required for the display of items. Then items are displayed in the -+calculated sub window. So let's play with these windows and display a menu with -+a border and a title.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="MMEWI" -+></A -+><P -+><B -+>Example 19. Menu Windows Usage example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;menu.h&#62; - - #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0])) --#define CTRLD 4 -+#define CTRLD 4 - - char *choices[] = { - "Choice 1", -@@ -3906,392 +5483,403 @@ - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color); - - int main() --{ ITEM **my_items; -- int c; -- MENU *my_menu; -+{ ITEM **my_items; -+ int c; -+ MENU *my_menu; - WINDOW *my_menu_win; - int n_choices, i; -- -- /* Initialize curses */ -- initscr(); -- start_color(); -+ -+ /* Initialize curses */ -+ initscr(); -+ start_color(); - cbreak(); - noecho(); -- keypad(stdscr, TRUE); -- init_pair(1, COLOR_RED, COLOR_BLACK); -+ keypad(stdscr, TRUE); -+ init_pair(1, COLOR_RED, COLOR_BLACK); - -- /* Create items */ -+ /* Create items */ - n_choices = ARRAY_SIZE(choices); - my_items = (ITEM **)calloc(n_choices, sizeof(ITEM *)); -- for(i = 0; i &lt; n_choices; ++i) -+ for(i = 0; i &#60; n_choices; ++i) - my_items[i] = new_item(choices[i], choices[i]); - -- /* Crate menu */ -- my_menu = new_menu((ITEM **)my_items); -+ /* Crate menu */ -+ my_menu = new_menu((ITEM **)my_items); - -- /* Create the window to be associated with the menu */ -+ /* Create the window to be associated with the menu */ - my_menu_win = newwin(10, 40, 4, 4); - keypad(my_menu_win, TRUE); - -- /* Set main window and sub window */ -+ /* Set main window and sub window */ - set_menu_win(my_menu, my_menu_win); - set_menu_sub(my_menu, derwin(my_menu_win, 6, 38, 3, 1)); - -- /* Set menu mark to the string " * " */ -+ /* Set menu mark to the string " * " */ - set_menu_mark(my_menu, " * "); - -- /* Print a border around the main window and print a title */ -+ /* Print a border around the main window and print a title */ - box(my_menu_win, 0, 0); -- print_in_middle(my_menu_win, 1, 0, 40, "My Menu", COLOR_PAIR(1)); -- mvwaddch(my_menu_win, 2, 0, ACS_LTEE); -- mvwhline(my_menu_win, 2, 1, ACS_HLINE, 38); -- mvwaddch(my_menu_win, 2, 39, ACS_RTEE); -- mvprintw(LINES - 2, 0, "F1 to exit"); -- refresh(); -+ print_in_middle(my_menu_win, 1, 0, 40, "My Menu", COLOR_PAIR(1)); -+ mvwaddch(my_menu_win, 2, 0, ACS_LTEE); -+ mvwhline(my_menu_win, 2, 1, ACS_HLINE, 38); -+ mvwaddch(my_menu_win, 2, 39, ACS_RTEE); -+ mvprintw(LINES - 2, 0, "F1 to exit"); -+ refresh(); - -- /* Post the menu */ -- post_menu(my_menu); -- wrefresh(my_menu_win); -- -- while((c = wgetch(my_menu_win)) != KEY_F(1)) -- { switch(c) -- { case KEY_DOWN: -- menu_driver(my_menu, REQ_DOWN_ITEM); -- break; -- case KEY_UP: -- menu_driver(my_menu, REQ_UP_ITEM); -- break; -- } -+ /* Post the menu */ -+ post_menu(my_menu); -+ wrefresh(my_menu_win); -+ -+ while((c = wgetch(my_menu_win)) != KEY_F(1)) -+ { switch(c) -+ { case KEY_DOWN: -+ menu_driver(my_menu, REQ_DOWN_ITEM); -+ break; -+ case KEY_UP: -+ menu_driver(my_menu, REQ_UP_ITEM); -+ break; -+ } - wrefresh(my_menu_win); -- } -+ } - -- /* Unpost and free all the memory taken up */ -+ /* Unpost and free all the memory taken up */ - unpost_menu(my_menu); - free_menu(my_menu); -- for(i = 0; i &lt; n_choices; ++i) -+ for(i = 0; i &#60; n_choices; ++i) - free_item(my_items[i]); -- endwin(); -+ endwin(); - } - - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color) --{ int length, x, y; -- float temp; -+{ int length, x, y; -+ float temp; - -- if(win == NULL) -- win = stdscr; -- getyx(win, y, x); -- if(startx != 0) -- x = startx; -- if(starty != 0) -- y = starty; -- if(width == 0) -- width = 80; -- -- length = strlen(string); -- temp = (width - length)/ 2; -- x = startx + (int)temp; -- wattron(win, color); -- mvwprintw(win, y, x, "%s", string); -- wattroff(win, color); -- refresh(); --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>This example creates a menu with a title, border, a fancy line --separating title and the items. As you can see, in order to attach --a window to a menu the function set_menu_win() has to be used. Then --we attach the sub window also. This displays the items in the sub --window. You can also set the mark string which gets displayed to --the left of the selected item with set_menu_mark().</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="SCROLLMENUS" id="SCROLLMENUS">17.5. --Scrolling Menus</a></h3> --<p>If the sub window given for a window is not big enough to show --all the items, then the menu will be scrollable. When you are on --the last item in the present list, if you send REQ_DOWN_ITEM, it --gets translated into REQ_SCR_DLINE and the menu scrolls by one --item. You can manually give REQ_SCR_ operations to do scrolling. --Let's see how it can be done.</p> --<div class="EXAMPLE"><a name="MMESC" id="MMESC"></a> --<p><b>Example 20. Scrolling Menus example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;curses.h&gt; --#include &lt;menu.h&gt; -+ if(win == NULL) -+ win = stdscr; -+ getyx(win, y, x); -+ if(startx != 0) -+ x = startx; -+ if(starty != 0) -+ y = starty; -+ if(width == 0) -+ width = 80; -+ -+ length = strlen(string); -+ temp = (width - length)/ 2; -+ x = startx + (int)temp; -+ wattron(win, color); -+ mvwprintw(win, y, x, "%s", string); -+ wattroff(win, color); -+ refresh(); -+}</SPAN -+></PRE -+></DIV -+><P -+>This example creates a menu with a title, border, a fancy line separating title -+and the items. As you can see, in order to attach a window to a menu the -+function set_menu_win() has to be used. Then we attach the sub window also. This -+displays the items in the sub window. You can also set the mark string which -+gets displayed to the left of the selected item with set_menu_mark().</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="SCROLLMENUS" -+>17.5. Scrolling Menus</A -+></H3 -+><P -+>If the sub window given for a window is not big enough to show all the items, -+then the menu will be scrollable. When you are on the last item in the present -+list, if you send REQ_DOWN_ITEM, it gets translated into REQ_SCR_DLINE and the -+menu scrolls by one item. You can manually give REQ_SCR_ operations to do -+scrolling. Let's see how it can be done.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="MMESC" -+></A -+><P -+><B -+>Example 20. Scrolling Menus example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;curses.h&#62; -+#include &#60;menu.h&#62; - - #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0])) --#define CTRLD 4 -+#define CTRLD 4 - - char *choices[] = { - "Choice 1", - "Choice 2", - "Choice 3", - "Choice 4", -- "Choice 5", -- "Choice 6", -- "Choice 7", -- "Choice 8", -- "Choice 9", -- "Choice 10", -+ "Choice 5", -+ "Choice 6", -+ "Choice 7", -+ "Choice 8", -+ "Choice 9", -+ "Choice 10", - "Exit", - (char *)NULL, - }; - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color); - - int main() --{ ITEM **my_items; -- int c; -- MENU *my_menu; -+{ ITEM **my_items; -+ int c; -+ MENU *my_menu; - WINDOW *my_menu_win; - int n_choices, i; -- -- /* Initialize curses */ -- initscr(); -- start_color(); -+ -+ /* Initialize curses */ -+ initscr(); -+ start_color(); - cbreak(); - noecho(); -- keypad(stdscr, TRUE); -- init_pair(1, COLOR_RED, COLOR_BLACK); -- init_pair(2, COLOR_CYAN, COLOR_BLACK); -+ keypad(stdscr, TRUE); -+ init_pair(1, COLOR_RED, COLOR_BLACK); -+ init_pair(2, COLOR_CYAN, COLOR_BLACK); - -- /* Create items */ -+ /* Create items */ - n_choices = ARRAY_SIZE(choices); - my_items = (ITEM **)calloc(n_choices, sizeof(ITEM *)); -- for(i = 0; i &lt; n_choices; ++i) -+ for(i = 0; i &#60; n_choices; ++i) - my_items[i] = new_item(choices[i], choices[i]); - -- /* Crate menu */ -- my_menu = new_menu((ITEM **)my_items); -+ /* Crate menu */ -+ my_menu = new_menu((ITEM **)my_items); - -- /* Create the window to be associated with the menu */ -+ /* Create the window to be associated with the menu */ - my_menu_win = newwin(10, 40, 4, 4); - keypad(my_menu_win, TRUE); - -- /* Set main window and sub window */ -+ /* Set main window and sub window */ - set_menu_win(my_menu, my_menu_win); - set_menu_sub(my_menu, derwin(my_menu_win, 6, 38, 3, 1)); -- set_menu_format(my_menu, 5, 1); -- -- /* Set menu mark to the string " * " */ -+ set_menu_format(my_menu, 5, 1); -+ -+ /* Set menu mark to the string " * " */ - set_menu_mark(my_menu, " * "); - -- /* Print a border around the main window and print a title */ -+ /* Print a border around the main window and print a title */ - box(my_menu_win, 0, 0); -- print_in_middle(my_menu_win, 1, 0, 40, "My Menu", COLOR_PAIR(1)); -- mvwaddch(my_menu_win, 2, 0, ACS_LTEE); -- mvwhline(my_menu_win, 2, 1, ACS_HLINE, 38); -- mvwaddch(my_menu_win, 2, 39, ACS_RTEE); -+ print_in_middle(my_menu_win, 1, 0, 40, "My Menu", COLOR_PAIR(1)); -+ mvwaddch(my_menu_win, 2, 0, ACS_LTEE); -+ mvwhline(my_menu_win, 2, 1, ACS_HLINE, 38); -+ mvwaddch(my_menu_win, 2, 39, ACS_RTEE); - -- /* Post the menu */ -- post_menu(my_menu); -- wrefresh(my_menu_win); -- -- attron(COLOR_PAIR(2)); -- mvprintw(LINES - 2, 0, "Use PageUp and PageDown to scoll down or up a page of items"); -- mvprintw(LINES - 1, 0, "Arrow Keys to navigate (F1 to Exit)"); -- attroff(COLOR_PAIR(2)); -- refresh(); -- -- while((c = wgetch(my_menu_win)) != KEY_F(1)) -- { switch(c) -- { case KEY_DOWN: -- menu_driver(my_menu, REQ_DOWN_ITEM); -- break; -- case KEY_UP: -- menu_driver(my_menu, REQ_UP_ITEM); -- break; -- case KEY_NPAGE: -- menu_driver(my_menu, REQ_SCR_DPAGE); -- break; -- case KEY_PPAGE: -- menu_driver(my_menu, REQ_SCR_UPAGE); -- break; -- } -+ /* Post the menu */ -+ post_menu(my_menu); -+ wrefresh(my_menu_win); -+ -+ attron(COLOR_PAIR(2)); -+ mvprintw(LINES - 2, 0, "Use PageUp and PageDown to scoll down or up a page of items"); -+ mvprintw(LINES - 1, 0, "Arrow Keys to navigate (F1 to Exit)"); -+ attroff(COLOR_PAIR(2)); -+ refresh(); -+ -+ while((c = wgetch(my_menu_win)) != KEY_F(1)) -+ { switch(c) -+ { case KEY_DOWN: -+ menu_driver(my_menu, REQ_DOWN_ITEM); -+ break; -+ case KEY_UP: -+ menu_driver(my_menu, REQ_UP_ITEM); -+ break; -+ case KEY_NPAGE: -+ menu_driver(my_menu, REQ_SCR_DPAGE); -+ break; -+ case KEY_PPAGE: -+ menu_driver(my_menu, REQ_SCR_UPAGE); -+ break; -+ } - wrefresh(my_menu_win); -- } -+ } - -- /* Unpost and free all the memory taken up */ -+ /* Unpost and free all the memory taken up */ - unpost_menu(my_menu); - free_menu(my_menu); -- for(i = 0; i &lt; n_choices; ++i) -+ for(i = 0; i &#60; n_choices; ++i) - free_item(my_items[i]); -- endwin(); -+ endwin(); - } - - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color) --{ int length, x, y; -- float temp; -+{ int length, x, y; -+ float temp; - -- if(win == NULL) -- win = stdscr; -- getyx(win, y, x); -- if(startx != 0) -- x = startx; -- if(starty != 0) -- y = starty; -- if(width == 0) -- width = 80; -- -- length = strlen(string); -- temp = (width - length)/ 2; -- x = startx + (int)temp; -- wattron(win, color); -- mvwprintw(win, y, x, "%s", string); -- wattroff(win, color); -- refresh(); --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>This program is self-explanatory. In this example the number of --choices has been increased to ten, which is larger than our sub --window size which can hold 6 items. This message has to be --explicitly conveyed to the menu system with the function --set_menu_format(). In here we specify the number of rows and --columns we want to be displayed for a single page. We can specify --any number of items to be shown, in the rows variables, if it is --less than the height of the sub window. If the key pressed by the --user is a PAGE UP or PAGE DOWN, the menu is scrolled a page due to --the requests (REQ_SCR_DPAGE and REQ_SCR_UPAGE) given to --menu_driver().</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MULTICOLUMN" id="MULTICOLUMN">17.6. --Multi Columnar Menus</a></h3> --<p>In the above example you have seen how to use the function --set_menu_format(). I didn't mention what the cols variable (third --parameter) does. Well, If your sub window is wide enough, you can --opt to display more than one item per row. This can be specified in --the cols variable. To make things simpler, the following example --doesn't show descriptions for the items.</p> --<div class="EXAMPLE"><a name="MMEMUCO" id="MMEMUCO"></a> --<p><b>Example 21. Milt Columnar Menus Example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;curses.h&gt; --#include &lt;menu.h&gt; -+ if(win == NULL) -+ win = stdscr; -+ getyx(win, y, x); -+ if(startx != 0) -+ x = startx; -+ if(starty != 0) -+ y = starty; -+ if(width == 0) -+ width = 80; -+ -+ length = strlen(string); -+ temp = (width - length)/ 2; -+ x = startx + (int)temp; -+ wattron(win, color); -+ mvwprintw(win, y, x, "%s", string); -+ wattroff(win, color); -+ refresh(); -+}</SPAN -+></PRE -+></DIV -+><P -+>This program is self-explanatory. In this example the number of choices has been -+increased to ten, which is larger than our sub window size which can hold 6 -+items. This message has to be explicitly conveyed to the menu system with the -+function set_menu_format(). In here we specify the number of rows and columns we -+want to be displayed for a single page. We can specify any number of items to be -+shown, in the rows variables, if it is less than the height of the sub window. -+If the key pressed by the user is a PAGE UP or PAGE DOWN, the menu is scrolled a -+page due to the requests (REQ_SCR_DPAGE and REQ_SCR_UPAGE) given to -+menu_driver().</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MULTICOLUMN" -+>17.6. Multi Columnar Menus</A -+></H3 -+><P -+>In the above example you have seen how to use the function set_menu_format(). I -+didn't mention what the cols variable (third parameter) does. Well, If your sub -+window is wide enough, you can opt to display more than one item per row. This -+can be specified in the cols variable. To make things simpler, the following -+example doesn't show descriptions for the items.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="MMEMUCO" -+></A -+><P -+><B -+>Example 21. Milt Columnar Menus Example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;curses.h&#62; -+#include &#60;menu.h&#62; - - #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0])) --#define CTRLD 4 -+#define CTRLD 4 - - char *choices[] = { - "Choice 1", "Choice 2", "Choice 3", "Choice 4", "Choice 5", -- "Choice 6", "Choice 7", "Choice 8", "Choice 9", "Choice 10", -- "Choice 11", "Choice 12", "Choice 13", "Choice 14", "Choice 15", -- "Choice 16", "Choice 17", "Choice 18", "Choice 19", "Choice 20", -+ "Choice 6", "Choice 7", "Choice 8", "Choice 9", "Choice 10", -+ "Choice 11", "Choice 12", "Choice 13", "Choice 14", "Choice 15", -+ "Choice 16", "Choice 17", "Choice 18", "Choice 19", "Choice 20", - "Exit", - (char *)NULL, - }; - - int main() --{ ITEM **my_items; -- int c; -- MENU *my_menu; -+{ ITEM **my_items; -+ int c; -+ MENU *my_menu; - WINDOW *my_menu_win; - int n_choices, i; -- -- /* Initialize curses */ -- initscr(); -- start_color(); -+ -+ /* Initialize curses */ -+ initscr(); -+ start_color(); - cbreak(); - noecho(); -- keypad(stdscr, TRUE); -- init_pair(1, COLOR_RED, COLOR_BLACK); -- init_pair(2, COLOR_CYAN, COLOR_BLACK); -+ keypad(stdscr, TRUE); -+ init_pair(1, COLOR_RED, COLOR_BLACK); -+ init_pair(2, COLOR_CYAN, COLOR_BLACK); - -- /* Create items */ -+ /* Create items */ - n_choices = ARRAY_SIZE(choices); - my_items = (ITEM **)calloc(n_choices, sizeof(ITEM *)); -- for(i = 0; i &lt; n_choices; ++i) -+ for(i = 0; i &#60; n_choices; ++i) - my_items[i] = new_item(choices[i], choices[i]); - -- /* Crate menu */ -- my_menu = new_menu((ITEM **)my_items); -+ /* Crate menu */ -+ my_menu = new_menu((ITEM **)my_items); - -- /* Set menu option not to show the description */ -- menu_opts_off(my_menu, O_SHOWDESC); -+ /* Set menu option not to show the description */ -+ menu_opts_off(my_menu, O_SHOWDESC); - -- /* Create the window to be associated with the menu */ -+ /* Create the window to be associated with the menu */ - my_menu_win = newwin(10, 70, 4, 4); - keypad(my_menu_win, TRUE); - -- /* Set main window and sub window */ -+ /* Set main window and sub window */ - set_menu_win(my_menu, my_menu_win); - set_menu_sub(my_menu, derwin(my_menu_win, 6, 68, 3, 1)); -- set_menu_format(my_menu, 5, 3); -- set_menu_mark(my_menu, " * "); -+ set_menu_format(my_menu, 5, 3); -+ set_menu_mark(my_menu, " * "); - -- /* Print a border around the main window and print a title */ -+ /* Print a border around the main window and print a title */ - box(my_menu_win, 0, 0); -- -- attron(COLOR_PAIR(2)); -- mvprintw(LINES - 3, 0, "Use PageUp and PageDown to scroll"); -- mvprintw(LINES - 2, 0, "Use Arrow Keys to navigate (F1 to Exit)"); -- attroff(COLOR_PAIR(2)); -- refresh(); -- -- /* Post the menu */ -- post_menu(my_menu); -- wrefresh(my_menu_win); -- -- while((c = wgetch(my_menu_win)) != KEY_F(1)) -- { switch(c) -- { case KEY_DOWN: -- menu_driver(my_menu, REQ_DOWN_ITEM); -- break; -- case KEY_UP: -- menu_driver(my_menu, REQ_UP_ITEM); -- break; -- case KEY_LEFT: -- menu_driver(my_menu, REQ_LEFT_ITEM); -- break; -- case KEY_RIGHT: -- menu_driver(my_menu, REQ_RIGHT_ITEM); -- break; -- case KEY_NPAGE: -- menu_driver(my_menu, REQ_SCR_DPAGE); -- break; -- case KEY_PPAGE: -- menu_driver(my_menu, REQ_SCR_UPAGE); -- break; -- } -+ -+ attron(COLOR_PAIR(2)); -+ mvprintw(LINES - 3, 0, "Use PageUp and PageDown to scroll"); -+ mvprintw(LINES - 2, 0, "Use Arrow Keys to navigate (F1 to Exit)"); -+ attroff(COLOR_PAIR(2)); -+ refresh(); -+ -+ /* Post the menu */ -+ post_menu(my_menu); -+ wrefresh(my_menu_win); -+ -+ while((c = wgetch(my_menu_win)) != KEY_F(1)) -+ { switch(c) -+ { case KEY_DOWN: -+ menu_driver(my_menu, REQ_DOWN_ITEM); -+ break; -+ case KEY_UP: -+ menu_driver(my_menu, REQ_UP_ITEM); -+ break; -+ case KEY_LEFT: -+ menu_driver(my_menu, REQ_LEFT_ITEM); -+ break; -+ case KEY_RIGHT: -+ menu_driver(my_menu, REQ_RIGHT_ITEM); -+ break; -+ case KEY_NPAGE: -+ menu_driver(my_menu, REQ_SCR_DPAGE); -+ break; -+ case KEY_PPAGE: -+ menu_driver(my_menu, REQ_SCR_UPAGE); -+ break; -+ } - wrefresh(my_menu_win); -- } -+ } - -- /* Unpost and free all the memory taken up */ -+ /* Unpost and free all the memory taken up */ - unpost_menu(my_menu); - free_menu(my_menu); -- for(i = 0; i &lt; n_choices; ++i) -+ for(i = 0; i &#60; n_choices; ++i) - free_item(my_items[i]); -- endwin(); --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>Watch the function call to set_menu_format(). It specifies the --number of columns to be 3, thus displaying 3 items per row. We have --also switched off the showing descriptions with the function --menu_opts_off(). There are couple of functions set_menu_opts(), --menu_opts_on() and menu_opts() which can be used to manipulate menu --options. The following menu options can be specified.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> O_ONEVALUE -+ endwin(); -+}</SPAN -+></PRE -+></DIV -+><P -+>Watch the function call to set_menu_format(). It specifies the number of columns -+to be 3, thus displaying 3 items per row. We have also switched off the showing -+descriptions with the function menu_opts_off(). There are couple of functions -+set_menu_opts(), menu_opts_on() and menu_opts() which can be used to manipulate -+menu options. The following menu options can be specified.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> O_ONEVALUE - Only one item can be selected for this menu. - - O_SHOWDESC -@@ -4310,633 +5898,684 @@ - - O_NONCYCLIC - Don't wrap around next-item and previous-item, -- requests to the other end of the menu.</font> --</pre></td> --</tr> --</table> --<p>All options are on by default. You can switch specific --attributes on or off with menu_opts_on() and menu_opts_off() --functions. You can also use set_menu_opts() to directly specify the --options. The argument to this function should be a OR ed value of --some of those above constants. The function menu_opts() can be used --to find out a menu's present options.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MULTIVALUEMENUS" id= --"MULTIVALUEMENUS">17.7. Multi Valued Menus</a></h3> --<p>You might be wondering what if you switch off the option --O_ONEVALUE. Then the menu becomes multi-valued. That means you can --select more than one item. This brings us to the request --REQ_TOGGLE_ITEM. Let's see it in action.</p> --<div class="EXAMPLE"><a name="MMETO" id="MMETO"></a> --<p><b>Example 22. Multi Valued Menus example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;curses.h&gt; --#include &lt;menu.h&gt; -+ requests to the other end of the menu.</PRE -+><P -+>All options are on by default. You can switch specific attributes on or off with -+menu_opts_on() and menu_opts_off() functions. You can also use set_menu_opts() -+to directly specify the options. The argument to this function should be a OR ed -+value of some of those above constants. The function menu_opts() can be used to -+find out a menu's present options. </P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MULTIVALUEMENUS" -+>17.7. Multi Valued Menus</A -+></H3 -+><P -+>You might be wondering what if you switch off the option O_ONEVALUE. Then the -+menu becomes multi-valued. That means you can select more than one item. This -+brings us to the request REQ_TOGGLE_ITEM. Let's see it in action.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="MMETO" -+></A -+><P -+><B -+>Example 22. Multi Valued Menus example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;curses.h&#62; -+#include &#60;menu.h&#62; - - #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0])) --#define CTRLD 4 -+#define CTRLD 4 - - char *choices[] = { - "Choice 1", - "Choice 2", - "Choice 3", - "Choice 4", -- "Choice 5", -- "Choice 6", -- "Choice 7", -+ "Choice 5", -+ "Choice 6", -+ "Choice 7", - "Exit", - }; - - int main() --{ ITEM **my_items; -- int c; -- MENU *my_menu; -+{ ITEM **my_items; -+ int c; -+ MENU *my_menu; - int n_choices, i; -- ITEM *cur_item; -- -- /* Initialize curses */ -- initscr(); -+ ITEM *cur_item; -+ -+ /* Initialize curses */ -+ initscr(); - cbreak(); - noecho(); -- keypad(stdscr, TRUE); -+ keypad(stdscr, TRUE); - -- /* Initialize items */ -+ /* Initialize items */ - n_choices = ARRAY_SIZE(choices); - my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *)); -- for(i = 0; i &lt; n_choices; ++i) -+ for(i = 0; i &#60; n_choices; ++i) - my_items[i] = new_item(choices[i], choices[i]); -- my_items[n_choices] = (ITEM *)NULL; -+ my_items[n_choices] = (ITEM *)NULL; - -- my_menu = new_menu((ITEM **)my_items); -+ my_menu = new_menu((ITEM **)my_items); - -- /* Make the menu multi valued */ -- menu_opts_off(my_menu, O_ONEVALUE); -+ /* Make the menu multi valued */ -+ menu_opts_off(my_menu, O_ONEVALUE); - -- mvprintw(LINES - 3, 0, "Use &lt;SPACE&gt; to select or unselect an item."); -- mvprintw(LINES - 2, 0, "&lt;ENTER&gt; to see presently selected items(F1 to Exit)"); -- post_menu(my_menu); -- refresh(); -- -- while((c = getch()) != KEY_F(1)) -- { switch(c) -- { case KEY_DOWN: -- menu_driver(my_menu, REQ_DOWN_ITEM); -- break; -- case KEY_UP: -- menu_driver(my_menu, REQ_UP_ITEM); -- break; -- case ' ': -- menu_driver(my_menu, REQ_TOGGLE_ITEM); -- break; -- case 10: /* Enter */ -- { char temp[200]; -- ITEM **items; -- -- items = menu_items(my_menu); -- temp[0] = '\0'; -- for(i = 0; i &lt; item_count(my_menu); ++i) -- if(item_value(items[i]) == TRUE) -- { strcat(temp, item_name(items[i])); -- strcat(temp, " "); -- } -- move(20, 0); -- clrtoeol(); -- mvprintw(20, 0, temp); -- refresh(); -- } -- break; -- } -- } -+ mvprintw(LINES - 3, 0, "Use &#60;SPACE&#62; to select or unselect an item."); -+ mvprintw(LINES - 2, 0, "&#60;ENTER&#62; to see presently selected items(F1 to Exit)"); -+ post_menu(my_menu); -+ refresh(); -+ -+ while((c = getch()) != KEY_F(1)) -+ { switch(c) -+ { case KEY_DOWN: -+ menu_driver(my_menu, REQ_DOWN_ITEM); -+ break; -+ case KEY_UP: -+ menu_driver(my_menu, REQ_UP_ITEM); -+ break; -+ case ' ': -+ menu_driver(my_menu, REQ_TOGGLE_ITEM); -+ break; -+ case 10: /* Enter */ -+ { char temp[200]; -+ ITEM **items; -+ -+ items = menu_items(my_menu); -+ temp[0] = '\0'; -+ for(i = 0; i &#60; item_count(my_menu); ++i) -+ if(item_value(items[i]) == TRUE) -+ { strcat(temp, item_name(items[i])); -+ strcat(temp, " "); -+ } -+ move(20, 0); -+ clrtoeol(); -+ mvprintw(20, 0, temp); -+ refresh(); -+ } -+ break; -+ } -+ } - -- free_item(my_items[0]); -+ free_item(my_items[0]); - free_item(my_items[1]); -- free_menu(my_menu); -- endwin(); -+ free_menu(my_menu); -+ endwin(); - } -- </span></font> --</pre></td> --</tr> --</table> --</div> --<p>Whew, A lot of new functions. Let's take them one after another. --Firstly, the REQ_TOGGLE_ITEM. In a multi-valued menu, the user --should be allowed to select or un select more than one item. The --request REQ_TOGGLE_ITEM toggles the present selection. In this case --when space is pressed REQ_TOGGLE_ITEM request is sent to --menu_driver to achieve the result.</p> --<p>Now when the user presses &lt;ENTER&gt; we show the items he --presently selected. First we find out the items associated with the --menu using the function menu_items(). Then we loop through the --items to find out if the item is selected or not. The function --item_value() returns TRUE if an item is selected. The function --item_count() returns the number of items in the menu. The item name --can be found with item_name(). You can also find the description --associated with an item using item_description().</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MENUOPT" id="MENUOPT">17.8. Menu --Options</a></h3> --<p>Well, by this time you must be itching for some difference in --your menu, with lots of functionality. I know. You want Colors !!!. --You want to create nice menus similar to those text mode <a href= --"http://www.jersey.net/~debinjoe/games/" target="_top">dos --games</a>. The functions set_menu_fore() and set_menu_back() can be --used to change the attribute of the selected item and unselected --item. The names are misleading. They don't change menu's foreground --or background which would have been useless.</p> --<p>The function set_menu_grey() can be used to set the display --attribute for the non-selectable items in the menu. This brings us --to the interesting option for an item the one and only --O_SELECTABLE. We can turn it off by the function item_opts_off() --and after that that item is not selectable. It's like a grayed item --in those fancy windows menus. Let's put these concepts in practice --with this example</p> --<div class="EXAMPLE"><a name="MMEAT" id="MMEAT"></a> --<p><b>Example 23. Menu Options example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;menu.h&gt; -+ </SPAN -+></PRE -+></DIV -+><P -+>Whew, A lot of new functions. Let's take them one after another. Firstly, the -+REQ_TOGGLE_ITEM. In a multi-valued menu, the user should be allowed to select -+or un select more than one item. The request REQ_TOGGLE_ITEM toggles the present -+selection. In this case when space is pressed REQ_TOGGLE_ITEM request is sent to -+menu_driver to achieve the result.</P -+><P -+>Now when the user presses &lt;ENTER&gt; we show the items he presently selected. -+First we find out the items associated with the menu using the function -+menu_items(). Then we loop through the items to find out if the item is selected -+or not. The function item_value() returns TRUE if an item is selected. The -+function item_count() returns the number of items in the menu. The item name can -+be found with item_name(). You can also find the description associated with an -+item using item_description().</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MENUOPT" -+>17.8. Menu Options</A -+></H3 -+><P -+>Well, by this time you must be itching for some difference in your menu, with -+lots of functionality. I know. You want Colors !!!. You want to create nice -+menus similar to those text mode <A -+HREF="http://www.jersey.net/~debinjoe/games/" -+TARGET="_top" -+>dos games</A -+>. The functions -+set_menu_fore() and set_menu_back() can be used to change the attribute of the -+selected item and unselected item. The names are misleading. They don't change -+menu's foreground or background which would have been useless. </P -+><P -+>The function set_menu_grey() can be used to set the display attribute for the -+non-selectable items in the menu. This brings us to the interesting option for -+an item the one and only O_SELECTABLE. We can turn it off by the function -+item_opts_off() and after that that item is not selectable. It's like a grayed -+item in those fancy windows menus. Let's put these concepts in practice with -+this example</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="MMEAT" -+></A -+><P -+><B -+>Example 23. Menu Options example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;menu.h&#62; - - #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0])) --#define CTRLD 4 -+#define CTRLD 4 - - char *choices[] = { - "Choice 1", - "Choice 2", - "Choice 3", - "Choice 4", -- "Choice 5", -- "Choice 6", -- "Choice 7", -+ "Choice 5", -+ "Choice 6", -+ "Choice 7", - "Exit", - }; - - int main() --{ ITEM **my_items; -- int c; -- MENU *my_menu; -+{ ITEM **my_items; -+ int c; -+ MENU *my_menu; - int n_choices, i; -- ITEM *cur_item; -- -- /* Initialize curses */ -- initscr(); -- start_color(); -+ ITEM *cur_item; -+ -+ /* Initialize curses */ -+ initscr(); -+ start_color(); - cbreak(); - noecho(); -- keypad(stdscr, TRUE); -- init_pair(1, COLOR_RED, COLOR_BLACK); -- init_pair(2, COLOR_GREEN, COLOR_BLACK); -- init_pair(3, COLOR_MAGENTA, COLOR_BLACK); -+ keypad(stdscr, TRUE); -+ init_pair(1, COLOR_RED, COLOR_BLACK); -+ init_pair(2, COLOR_GREEN, COLOR_BLACK); -+ init_pair(3, COLOR_MAGENTA, COLOR_BLACK); - -- /* Initialize items */ -+ /* Initialize items */ - n_choices = ARRAY_SIZE(choices); - my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *)); -- for(i = 0; i &lt; n_choices; ++i) -+ for(i = 0; i &#60; n_choices; ++i) - my_items[i] = new_item(choices[i], choices[i]); -- my_items[n_choices] = (ITEM *)NULL; -- item_opts_off(my_items[3], O_SELECTABLE); -- item_opts_off(my_items[6], O_SELECTABLE); -- -- /* Create menu */ -- my_menu = new_menu((ITEM **)my_items); -- -- /* Set fore ground and back ground of the menu */ -- set_menu_fore(my_menu, COLOR_PAIR(1) | A_REVERSE); -- set_menu_back(my_menu, COLOR_PAIR(2)); -- set_menu_grey(my_menu, COLOR_PAIR(3)); -- -- /* Post the menu */ -- mvprintw(LINES - 3, 0, "Press &lt;ENTER&gt; to see the option selected"); -- mvprintw(LINES - 2, 0, "Up and Down arrow keys to naviage (F1 to Exit)"); -- post_menu(my_menu); -- refresh(); -- -- while((c = getch()) != KEY_F(1)) -- { switch(c) -- { case KEY_DOWN: -- menu_driver(my_menu, REQ_DOWN_ITEM); -- break; -- case KEY_UP: -- menu_driver(my_menu, REQ_UP_ITEM); -- break; -- case 10: /* Enter */ -- move(20, 0); -- clrtoeol(); -- mvprintw(20, 0, "Item selected is : %s", -- item_name(current_item(my_menu))); -- pos_menu_cursor(my_menu); -- break; -- } -- } -- unpost_menu(my_menu); -- for(i = 0; i &lt; n_choices; ++i) -- free_item(my_items[i]); -- free_menu(my_menu); -- endwin(); -+ my_items[n_choices] = (ITEM *)NULL; -+ item_opts_off(my_items[3], O_SELECTABLE); -+ item_opts_off(my_items[6], O_SELECTABLE); -+ -+ /* Create menu */ -+ my_menu = new_menu((ITEM **)my_items); -+ -+ /* Set fore ground and back ground of the menu */ -+ set_menu_fore(my_menu, COLOR_PAIR(1) | A_REVERSE); -+ set_menu_back(my_menu, COLOR_PAIR(2)); -+ set_menu_grey(my_menu, COLOR_PAIR(3)); -+ -+ /* Post the menu */ -+ mvprintw(LINES - 3, 0, "Press &#60;ENTER&#62; to see the option selected"); -+ mvprintw(LINES - 2, 0, "Up and Down arrow keys to naviage (F1 to Exit)"); -+ post_menu(my_menu); -+ refresh(); -+ -+ while((c = getch()) != KEY_F(1)) -+ { switch(c) -+ { case KEY_DOWN: -+ menu_driver(my_menu, REQ_DOWN_ITEM); -+ break; -+ case KEY_UP: -+ menu_driver(my_menu, REQ_UP_ITEM); -+ break; -+ case 10: /* Enter */ -+ move(20, 0); -+ clrtoeol(); -+ mvprintw(20, 0, "Item selected is : %s", -+ item_name(current_item(my_menu))); -+ pos_menu_cursor(my_menu); -+ break; -+ } -+ } -+ unpost_menu(my_menu); -+ for(i = 0; i &#60; n_choices; ++i) -+ free_item(my_items[i]); -+ free_menu(my_menu); -+ endwin(); - } -- </span></font> --</pre></td> --</tr> --</table> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MENUUSERPTR" id="MENUUSERPTR">17.9. The --useful User Pointer</a></h3> --<p>We can associate a user pointer with each item in the menu. It --works the same way as user pointer in panels. It's not touched by --menu system. You can store any thing you like in that. I usually --use it to store the function to be executed when the menu option is --chosen (It's selected and may be the user pressed --&lt;ENTER&gt;);</p> --<div class="EXAMPLE"><a name="MMEUS" id="MMEUS"></a> --<p><b>Example 24. Menu User Pointer Usage</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;curses.h&gt; --#include &lt;menu.h&gt; -+ </SPAN -+></PRE -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MENUUSERPTR" -+>17.9. The useful User Pointer</A -+></H3 -+><P -+>We can associate a user pointer with each item in the menu. It works the same -+way as user pointer in panels. It's not touched by menu system. You can store -+any thing you like in that. I usually use it to store the function to be -+executed when the menu option is chosen (It's selected and may be the user -+pressed &lt;ENTER&gt;);</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="MMEUS" -+></A -+><P -+><B -+>Example 24. Menu User Pointer Usage </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;curses.h&#62; -+#include &#60;menu.h&#62; - - #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0])) --#define CTRLD 4 -+#define CTRLD 4 - - char *choices[] = { - "Choice 1", - "Choice 2", - "Choice 3", - "Choice 4", -- "Choice 5", -- "Choice 6", -- "Choice 7", -+ "Choice 5", -+ "Choice 6", -+ "Choice 7", - "Exit", - }; - void func(char *name); - - int main() --{ ITEM **my_items; -- int c; -- MENU *my_menu; -+{ ITEM **my_items; -+ int c; -+ MENU *my_menu; - int n_choices, i; -- ITEM *cur_item; -- -- /* Initialize curses */ -- initscr(); -- start_color(); -+ ITEM *cur_item; -+ -+ /* Initialize curses */ -+ initscr(); -+ start_color(); - cbreak(); - noecho(); -- keypad(stdscr, TRUE); -- init_pair(1, COLOR_RED, COLOR_BLACK); -- init_pair(2, COLOR_GREEN, COLOR_BLACK); -- init_pair(3, COLOR_MAGENTA, COLOR_BLACK); -+ keypad(stdscr, TRUE); -+ init_pair(1, COLOR_RED, COLOR_BLACK); -+ init_pair(2, COLOR_GREEN, COLOR_BLACK); -+ init_pair(3, COLOR_MAGENTA, COLOR_BLACK); - -- /* Initialize items */ -+ /* Initialize items */ - n_choices = ARRAY_SIZE(choices); - my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *)); -- for(i = 0; i &lt; n_choices; ++i) -- { my_items[i] = new_item(choices[i], choices[i]); -- /* Set the user pointer */ -- set_item_userptr(my_items[i], func); -- } -- my_items[n_choices] = (ITEM *)NULL; -- -- /* Create menu */ -- my_menu = new_menu((ITEM **)my_items); -- -- /* Post the menu */ -- mvprintw(LINES - 3, 0, "Press &lt;ENTER&gt; to see the option selected"); -- mvprintw(LINES - 2, 0, "Up and Down arrow keys to naviage (F1 to Exit)"); -- post_menu(my_menu); -- refresh(); -- -- while((c = getch()) != KEY_F(1)) -- { switch(c) -- { case KEY_DOWN: -- menu_driver(my_menu, REQ_DOWN_ITEM); -- break; -- case KEY_UP: -- menu_driver(my_menu, REQ_UP_ITEM); -- break; -- case 10: /* Enter */ -- { ITEM *cur; -- void (*p)(char *); -- -- cur = current_item(my_menu); -- p = item_userptr(cur); -- p((char *)item_name(cur)); -- pos_menu_cursor(my_menu); -- break; -- } -- break; -- } -- } -- unpost_menu(my_menu); -- for(i = 0; i &lt; n_choices; ++i) -- free_item(my_items[i]); -- free_menu(my_menu); -- endwin(); -+ for(i = 0; i &#60; n_choices; ++i) -+ { my_items[i] = new_item(choices[i], choices[i]); -+ /* Set the user pointer */ -+ set_item_userptr(my_items[i], func); -+ } -+ my_items[n_choices] = (ITEM *)NULL; -+ -+ /* Create menu */ -+ my_menu = new_menu((ITEM **)my_items); -+ -+ /* Post the menu */ -+ mvprintw(LINES - 3, 0, "Press &#60;ENTER&#62; to see the option selected"); -+ mvprintw(LINES - 2, 0, "Up and Down arrow keys to naviage (F1 to Exit)"); -+ post_menu(my_menu); -+ refresh(); -+ -+ while((c = getch()) != KEY_F(1)) -+ { switch(c) -+ { case KEY_DOWN: -+ menu_driver(my_menu, REQ_DOWN_ITEM); -+ break; -+ case KEY_UP: -+ menu_driver(my_menu, REQ_UP_ITEM); -+ break; -+ case 10: /* Enter */ -+ { ITEM *cur; -+ void (*p)(char *); -+ -+ cur = current_item(my_menu); -+ p = item_userptr(cur); -+ p((char *)item_name(cur)); -+ pos_menu_cursor(my_menu); -+ break; -+ } -+ break; -+ } -+ } -+ unpost_menu(my_menu); -+ for(i = 0; i &#60; n_choices; ++i) -+ free_item(my_items[i]); -+ free_menu(my_menu); -+ endwin(); - } - - void func(char *name) --{ move(20, 0); -- clrtoeol(); -- mvprintw(20, 0, "Item selected is : %s", name); --} </span></font> --</pre></td> --</tr> --</table> --</div> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="FORMS" id="FORMS">18. Forms --Library</a></h2> --<p>Well. If you have seen those forms on web pages which take input --from users and do various kinds of things, you might be wondering --how would any one create such forms in text mode display. It's --quite difficult to write those nifty forms in plain ncurses. Forms --library tries to provide a basic frame work to build and maintain --forms with ease. It has lot of features(functions) which manage --validation, dynamic expansion of fields etc.. Let's see it in full --flow.</p> --<p>A form is a collection of fields; each field can be either a --label(static text) or a data-entry location. The forms also library --provides functions to divide forms into multiple pages.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="FORMBASICS" id="FORMBASICS">18.1. The --Basics</a></h3> --<p>Forms are created in much the same way as menus. First the --fields related to the form are created with new_field(). You can --set options for the fields, so that they can be displayed with some --fancy attributes, validated before the field looses focus etc.. --Then the fields are attached to form. After this, the form can be --posted to display and is ready to receive inputs. On the similar --lines to menu_driver(), the form is manipulated with form_driver(). --We can send requests to form_driver to move focus to a certain --field, move cursor to end of the field etc.. After the user enters --values in the fields and validation done, form can be unposted and --memory allocated can be freed.</p> --<p>The general flow of control of a forms program looks like --this.</p> --<ol type="1"> --<li> --<p>Initialize curses</p> --</li> --<li> --<p>Create fields using new_field(). You can specify the height and --width of the field, and its position on the form.</p> --</li> --<li> --<p>Create the forms with new_form() by specifying the fields to be --attached with.</p> --</li> --<li> --<p>Post the form with form_post() and refresh the screen.</p> --</li> --<li> --<p>Process the user requests with a loop and do necessary updates --to form with form_driver.</p> --</li> --<li> --<p>Unpost the menu with form_unpost()</p> --</li> --<li> --<p>Free the memory allocated to menu by free_form()</p> --</li> --<li> --<p>Free the memory allocated to the items with free_field()</p> --</li> --<li> --<p>End curses</p> --</li> --</ol> --<p>As you can see, working with forms library is much similar to --handling menu library. The following examples will explore various --aspects of form processing. Let's start the journey with a simple --example. first.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="COMPILEFORMS" id="COMPILEFORMS">18.2. --Compiling With the Forms Library</a></h3> --<p>To use forms library functions, you have to include form.h and --to link the program with forms library the flag -lform should be --added along with -lncurses in that order.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"> #include &lt;form.h&gt; -+{ move(20, 0); -+ clrtoeol(); -+ mvprintw(20, 0, "Item selected is : %s", name); -+} </SPAN -+></PRE -+></DIV -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="FORMS" -+>18. Forms Library</A -+></H2 -+><P -+>Well. If you have seen those forms on web pages which take input from users and -+do various kinds of things, you might be wondering how would any one create such -+forms in text mode display. It's quite difficult to write those nifty forms in -+plain ncurses. Forms library tries to provide a basic frame work to build and -+maintain forms with ease. It has lot of features(functions) which manage -+validation, dynamic expansion of fields etc.. Let's see it in full flow.</P -+><P -+>A form is a collection of fields; each field can be either a label(static text) -+or a data-entry location. The forms also library provides functions to divide -+forms into multiple pages. </P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="FORMBASICS" -+>18.1. The Basics</A -+></H3 -+><P -+>Forms are created in much the same way as menus. First the fields related to the -+form are created with new_field(). You can set options for the fields, so that -+they can be displayed with some fancy attributes, validated before the field -+looses focus etc.. Then the fields are attached to form. After this, the form -+can be posted to display and is ready to receive inputs. On the similar lines to -+menu_driver(), the form is manipulated with form_driver(). We can send requests -+to form_driver to move focus to a certain field, move cursor to end of the field -+etc.. After the user enters values in the fields and validation done, form can -+be unposted and memory allocated can be freed.</P -+><P -+>The general flow of control of a forms program looks like this. -+ -+<P -+></P -+><OL -+TYPE="1" -+><LI -+><P -+>Initialize curses</P -+></LI -+><LI -+><P -+>Create fields using new_field(). You can specify the height and -+width of the field, and its position on the form.</P -+></LI -+><LI -+><P -+>Create the forms with new_form() by specifying the fields to be -+attached with.</P -+></LI -+><LI -+><P -+>Post the form with form_post() and refresh the screen.</P -+></LI -+><LI -+><P -+>Process the user requests with a loop and do necessary updates -+to form with form_driver.</P -+></LI -+><LI -+><P -+>Unpost the menu with form_unpost()</P -+></LI -+><LI -+><P -+>Free the memory allocated to menu by free_form()</P -+></LI -+><LI -+><P -+>Free the memory allocated to the items with free_field()</P -+></LI -+><LI -+><P -+>End curses</P -+></LI -+></OL -+></P -+><P -+>As you can see, working with forms library is much similar to handling menu -+library. The following examples will explore various aspects of form -+processing. Let's start the journey with a simple example. first.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="COMPILEFORMS" -+>18.2. Compiling With the Forms Library</A -+></H3 -+><P -+>To use forms library functions, you have to include form.h and to link the -+program with forms library the flag -lform should be added along with -lncurses -+in that order.</P -+><PRE -+CLASS="PROGRAMLISTING" -+> #include &lt;form.h&gt; - . - . - . - -- compile and link: gcc &lt;program file&gt; -lform -lncurses</font> --</pre></td> --</tr> --</table> --<div class="EXAMPLE"><a name="FFOSI" id="FFOSI"></a> --<p><b>Example 25. Forms Basics</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;form.h&gt; -+ compile and link: gcc &lt;program file&gt; -lform -lncurses</PRE -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="FFOSI" -+></A -+><P -+><B -+>Example 25. Forms Basics </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;form.h&#62; - - int main() --{ FIELD *field[3]; -- FORM *my_form; -- int ch; -- -- /* Initialize curses */ -- initscr(); -- cbreak(); -- noecho(); -- keypad(stdscr, TRUE); -- -- /* Initialize the fields */ -- field[0] = new_field(1, 10, 4, 18, 0, 0); -- field[1] = new_field(1, 10, 6, 18, 0, 0); -- field[2] = NULL; -- -- /* Set field options */ -- set_field_back(field[0], A_UNDERLINE); /* Print a line for the option */ -- field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */ -- /* Field is filled up */ -- set_field_back(field[1], A_UNDERLINE); -- field_opts_off(field[1], O_AUTOSKIP); -- -- /* Create the form and post it */ -- my_form = new_form(field); -- post_form(my_form); -- refresh(); -- -- mvprintw(4, 10, "Value 1:"); -- mvprintw(6, 10, "Value 2:"); -- refresh(); -- -- /* Loop through to get user requests */ -- while((ch = getch()) != KEY_F(1)) -- { switch(ch) -- { case KEY_DOWN: -- /* Go to next field */ -- form_driver(my_form, REQ_NEXT_FIELD); -- /* Go to the end of the present buffer */ -- /* Leaves nicely at the last character */ -- form_driver(my_form, REQ_END_LINE); -- break; -- case KEY_UP: -- /* Go to previous field */ -- form_driver(my_form, REQ_PREV_FIELD); -- form_driver(my_form, REQ_END_LINE); -- break; -- default: -- /* If this is a normal character, it gets */ -- /* Printed */ -- form_driver(my_form, ch); -- break; -- } -- } -- -- /* Un post form and free the memory */ -- unpost_form(my_form); -- free_form(my_form); -- free_field(field[0]); -- free_field(field[1]); -- -- endwin(); -- return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>Above example is pretty straight forward. It creates two fields --with <var class="LITERAL">new_field()</var>. new_field() takes --height, width, starty, startx, number of offscreen rows and number --of additional working buffers. The fifth argument number of --offscreen rows specifies how much of the field to be shown. If it --is zero, the entire field is always displayed otherwise the form --will be scrollable when the user accesses not displayed parts of --the field. The forms library allocates one buffer per field to --store the data user enters. Using the last parameter to new_field() --we can specify it to allocate some additional buffers. These can be --used for any purpose you like.</p> --<p>After creating the fields, back ground attribute of both of them --is set to an underscore with set_field_back(). The AUTOSKIP option --is turned off using field_opts_off(). If this option is turned on, --focus will move to the next field in the form once the active field --is filled up completely.</p> --<p>After attaching the fields to the form, it is posted. Here on, --user inputs are processed in the while loop, by making --corresponding requests to form_driver. The details of all the --requests to the form_driver() are explained later.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="PLAYFIELDS" id="PLAYFIELDS">18.3. --Playing with Fields</a></h3> --<p>Each form field is associated with a lot of attributes. They can --be manipulated to get the required effect and to have fun !!!. So --why wait?</p> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="FETCHINFO" id="FETCHINFO">18.3.1. --Fetching Size and Location of Field</a></h4> --<p>The parameters we have given at the time of creation of a field --can be retrieved with field_info(). It returns height, width, --starty, startx, number of offscreen rows, and number of additional --buffers into the parameters given to it. It is a sort of inverse of --new_field().</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int field_info( FIELD *field, /* field from which to fetch */ -+{ FIELD *field[3]; -+ FORM *my_form; -+ int ch; -+ -+ /* Initialize curses */ -+ initscr(); -+ cbreak(); -+ noecho(); -+ keypad(stdscr, TRUE); -+ -+ /* Initialize the fields */ -+ field[0] = new_field(1, 10, 4, 18, 0, 0); -+ field[1] = new_field(1, 10, 6, 18, 0, 0); -+ field[2] = NULL; -+ -+ /* Set field options */ -+ set_field_back(field[0], A_UNDERLINE); /* Print a line for the option */ -+ field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */ -+ /* Field is filled up */ -+ set_field_back(field[1], A_UNDERLINE); -+ field_opts_off(field[1], O_AUTOSKIP); -+ -+ /* Create the form and post it */ -+ my_form = new_form(field); -+ post_form(my_form); -+ refresh(); -+ -+ mvprintw(4, 10, "Value 1:"); -+ mvprintw(6, 10, "Value 2:"); -+ refresh(); -+ -+ /* Loop through to get user requests */ -+ while((ch = getch()) != KEY_F(1)) -+ { switch(ch) -+ { case KEY_DOWN: -+ /* Go to next field */ -+ form_driver(my_form, REQ_NEXT_FIELD); -+ /* Go to the end of the present buffer */ -+ /* Leaves nicely at the last character */ -+ form_driver(my_form, REQ_END_LINE); -+ break; -+ case KEY_UP: -+ /* Go to previous field */ -+ form_driver(my_form, REQ_PREV_FIELD); -+ form_driver(my_form, REQ_END_LINE); -+ break; -+ default: -+ /* If this is a normal character, it gets */ -+ /* Printed */ -+ form_driver(my_form, ch); -+ break; -+ } -+ } -+ -+ /* Un post form and free the memory */ -+ unpost_form(my_form); -+ free_form(my_form); -+ free_field(field[0]); -+ free_field(field[1]); -+ -+ endwin(); -+ return 0; -+}</SPAN -+></PRE -+></DIV -+><P -+>Above example is pretty straight forward. It creates two fields with -+<TT -+CLASS="LITERAL" -+>new_field()</TT -+>. new_field() takes height, width, -+starty, startx, number of offscreen rows and number of additional working -+buffers. The fifth argument number of offscreen rows specifies how much of the -+field to be shown. If it is zero, the entire field is always displayed otherwise -+the form will be scrollable when the user accesses not displayed parts of the -+field. The forms library allocates one buffer per field to store the data user -+enters. Using the last parameter to new_field() we can specify it to allocate -+some additional buffers. These can be used for any purpose you like.</P -+><P -+>After creating the fields, back ground attribute of both of them is set to an -+underscore with set_field_back(). The AUTOSKIP option is turned off using -+field_opts_off(). If this option is turned on, focus will move to the next -+field in the form once the active field is filled up completely.</P -+><P -+>After attaching the fields to the form, it is posted. Here on, user inputs are -+processed in the while loop, by making corresponding requests to form_driver. -+The details of all the requests to the form_driver() are explained later.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="PLAYFIELDS" -+>18.3. Playing with Fields</A -+></H3 -+><P -+>Each form field is associated with a lot of attributes. They can be manipulated -+to get the required effect and to have fun !!!. So why wait? </P -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="FETCHINFO" -+>18.3.1. Fetching Size and Location of Field</A -+></H4 -+><P -+>The parameters we have given at the time of creation of a field can be retrieved -+with field_info(). It returns height, width, starty, startx, number of offscreen -+rows, and number of additional buffers into the parameters given to it. It is a -+sort of inverse of new_field().</P -+><PRE -+CLASS="PROGRAMLISTING" -+>int field_info( FIELD *field, /* field from which to fetch */ - int *height, *int width, /* field size */ - int *top, int *left, /* upper left corner */ - int *offscreen, /* number of offscreen rows */ -- int *nbuf); /* number of working buffers */</font> --</pre></td> --</tr> --</table> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="MOVEFIELD" id="MOVEFIELD">18.3.2. Moving --the field</a></h4> --<p>The location of the field can be moved to a different position --with move_field().</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int move_field( FIELD *field, /* field to alter */ -- int top, int left); /* new upper-left corner */</font> --</pre></td> --</tr> --</table> --<p>As usual, the changed position can be queried with --field_infor().</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="JUSTIFYFIELD" id="JUSTIFYFIELD">18.3.3. --Field Justification</a></h4> --<p>The justification to be done for the field can be fixed using --the function set_field_just().</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000"> int set_field_just(FIELD *field, /* field to alter */ -+ int *nbuf); /* number of working buffers */</PRE -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="MOVEFIELD" -+>18.3.2. Moving the field</A -+></H4 -+><P -+>The location of the field can be moved to a different position with -+move_field().</P -+><PRE -+CLASS="PROGRAMLISTING" -+>int move_field( FIELD *field, /* field to alter */ -+ int top, int left); /* new upper-left corner */</PRE -+><P -+>As usual, the changed position can be queried with field_infor().</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="JUSTIFYFIELD" -+>18.3.3. Field Justification</A -+></H4 -+><P -+>The justification to be done for the field can be fixed using the function -+set_field_just().</P -+><PRE -+CLASS="PROGRAMLISTING" -+> int set_field_just(FIELD *field, /* field to alter */ - int justmode); /* mode to set */ -- int field_just(FIELD *field); /* fetch justify mode of field */</font> --</pre></td> --</tr> --</table> --<p>The justification mode valued accepted and returned by these --functions are NO_JUSTIFICATION, JUSTIFY_RIGHT, JUSTIFY_LEFT, or --JUSTIFY_CENTER.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="FIELDDISPATTRIB" id= --"FIELDDISPATTRIB">18.3.4. Field Display Attributes</a></h4> --<p>As you have seen, in the above example, display attribute for --the fields can be set with set_field_fore() and setfield_back(). --These functions set foreground and background attribute of the --fields. You can also specify a pad character which will be filled --in the unfilled portion of the field. The pad character is set with --a call to set_field_pad(). Default pad value is a space. The --functions field_fore(), field_back, field_pad() can be used to --query the present foreground, background attributes and pad --character for the field. The following list gives the usage of --functions.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">&#13;int set_field_fore(FIELD *field, /* field to alter */ -+ int field_just(FIELD *field); /* fetch justify mode of field */</PRE -+><P -+>The justification mode valued accepted and returned by these functions are -+NO_JUSTIFICATION, JUSTIFY_RIGHT, JUSTIFY_LEFT, or JUSTIFY_CENTER.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="FIELDDISPATTRIB" -+>18.3.4. Field Display Attributes</A -+></H4 -+><P -+>As you have seen, in the above example, display attribute for the fields can be -+set with set_field_fore() and setfield_back(). These functions set foreground -+and background attribute of the fields. You can also specify a pad character -+which will be filled in the unfilled portion of the field. The pad character is -+set with a call to set_field_pad(). Default pad value is a space. The functions -+field_fore(), field_back, field_pad() can be used to query the present -+foreground, background attributes and pad character for the field. The following -+list gives the usage of functions.</P -+><PRE -+CLASS="PROGRAMLISTING" -+>&#13;int set_field_fore(FIELD *field, /* field to alter */ - chtype attr); /* attribute to set */ - - chtype field_fore(FIELD *field); /* field to query */ -@@ -4952,124 +6591,127 @@ - int pad); /* pad character to set */ - - chtype field_pad(FIELD *field); /* field to query */ -- /* returns present pad character */&#13;</font> --</pre></td> --</tr> --</table> --<p>Though above functions seem quite simple, using colors with --set_field_fore() may be frustrating in the beginning. Let me first --explain about foreground and background attributes of a field. The --foreground attribute is associated with the character. That means a --character in the field is printed with the attribute you have set --with set_field_fore(). Background attribute is the attribute used --to fill background of field, whether any character is there or not. --So what about colors? Since colors are always defined in pairs, --what is the right way to display colored fields? Here's an example --clarifying color attributes.</p> --<div class="EXAMPLE"><a name="FFOAT" id="FFOAT"></a> --<p><b>Example 26. Form Attributes example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;form.h&gt; -+ /* returns present pad character */&#13;</PRE -+><P -+>Though above functions seem quite simple, using colors with set_field_fore() may -+be frustrating in the beginning. Let me first explain about foreground and -+background attributes of a field. The foreground attribute is associated with -+the character. That means a character in the field is printed with the attribute -+you have set with set_field_fore(). Background attribute is the attribute used -+to fill background of field, whether any character is there or not. So what -+about colors? Since colors are always defined in pairs, what is the right way to -+display colored fields? Here's an example clarifying color attributes.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="FFOAT" -+></A -+><P -+><B -+>Example 26. Form Attributes example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;form.h&#62; - - int main() --{ FIELD *field[3]; -- FORM *my_form; -- int ch; -- -- /* Initialize curses */ -- initscr(); -- start_color(); -- cbreak(); -- noecho(); -- keypad(stdscr, TRUE); -- -- /* Initialize few color pairs */ -- init_pair(1, COLOR_WHITE, COLOR_BLUE); -- init_pair(2, COLOR_WHITE, COLOR_BLUE); -- -- /* Initialize the fields */ -- field[0] = new_field(1, 10, 4, 18, 0, 0); -- field[1] = new_field(1, 10, 6, 18, 0, 0); -- field[2] = NULL; -- -- /* Set field options */ -- set_field_fore(field[0], COLOR_PAIR(1));/* Put the field with blue background */ -- set_field_back(field[0], COLOR_PAIR(2));/* and white foreground (characters */ -- /* are printed in white */ -- field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */ -- /* Field is filled up */ -- set_field_back(field[1], A_UNDERLINE); -- field_opts_off(field[1], O_AUTOSKIP); -- -- /* Create the form and post it */ -- my_form = new_form(field); -- post_form(my_form); -- refresh(); -- -- set_current_field(my_form, field[0]); /* Set focus to the colored field */ -- mvprintw(4, 10, "Value 1:"); -- mvprintw(6, 10, "Value 2:"); -- mvprintw(LINES - 2, 0, "Use UP, DOWN arrow keys to switch between fields"); -- refresh(); -- -- /* Loop through to get user requests */ -- while((ch = getch()) != KEY_F(1)) -- { switch(ch) -- { case KEY_DOWN: -- /* Go to next field */ -- form_driver(my_form, REQ_NEXT_FIELD); -- /* Go to the end of the present buffer */ -- /* Leaves nicely at the last character */ -- form_driver(my_form, REQ_END_LINE); -- break; -- case KEY_UP: -- /* Go to previous field */ -- form_driver(my_form, REQ_PREV_FIELD); -- form_driver(my_form, REQ_END_LINE); -- break; -- default: -- /* If this is a normal character, it gets */ -- /* Printed */ -- form_driver(my_form, ch); -- break; -- } -- } -- -- /* Un post form and free the memory */ -- unpost_form(my_form); -- free_form(my_form); -- free_field(field[0]); -- free_field(field[1]); -- -- endwin(); -- return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>Play with the color pairs and try to understand the foreground --and background attributes. In my programs using color attributes, I --usually set only the background with set_field_back(). Curses --simply doesn't allow defining individual color attributes.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="FIELDOPTIONBITS" id= --"FIELDOPTIONBITS">18.3.5. Field Option Bits</a></h4> --<p>There is also a large collection of field option bits you can --set to control various aspects of forms processing. You can --manipulate them with these functions:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_field_opts(FIELD *field, /* field to alter */ -+{ FIELD *field[3]; -+ FORM *my_form; -+ int ch; -+ -+ /* Initialize curses */ -+ initscr(); -+ start_color(); -+ cbreak(); -+ noecho(); -+ keypad(stdscr, TRUE); -+ -+ /* Initialize few color pairs */ -+ init_pair(1, COLOR_WHITE, COLOR_BLUE); -+ init_pair(2, COLOR_WHITE, COLOR_BLUE); -+ -+ /* Initialize the fields */ -+ field[0] = new_field(1, 10, 4, 18, 0, 0); -+ field[1] = new_field(1, 10, 6, 18, 0, 0); -+ field[2] = NULL; -+ -+ /* Set field options */ -+ set_field_fore(field[0], COLOR_PAIR(1));/* Put the field with blue background */ -+ set_field_back(field[0], COLOR_PAIR(2));/* and white foreground (characters */ -+ /* are printed in white */ -+ field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */ -+ /* Field is filled up */ -+ set_field_back(field[1], A_UNDERLINE); -+ field_opts_off(field[1], O_AUTOSKIP); -+ -+ /* Create the form and post it */ -+ my_form = new_form(field); -+ post_form(my_form); -+ refresh(); -+ -+ set_current_field(my_form, field[0]); /* Set focus to the colored field */ -+ mvprintw(4, 10, "Value 1:"); -+ mvprintw(6, 10, "Value 2:"); -+ mvprintw(LINES - 2, 0, "Use UP, DOWN arrow keys to switch between fields"); -+ refresh(); -+ -+ /* Loop through to get user requests */ -+ while((ch = getch()) != KEY_F(1)) -+ { switch(ch) -+ { case KEY_DOWN: -+ /* Go to next field */ -+ form_driver(my_form, REQ_NEXT_FIELD); -+ /* Go to the end of the present buffer */ -+ /* Leaves nicely at the last character */ -+ form_driver(my_form, REQ_END_LINE); -+ break; -+ case KEY_UP: -+ /* Go to previous field */ -+ form_driver(my_form, REQ_PREV_FIELD); -+ form_driver(my_form, REQ_END_LINE); -+ break; -+ default: -+ /* If this is a normal character, it gets */ -+ /* Printed */ -+ form_driver(my_form, ch); -+ break; -+ } -+ } -+ -+ /* Un post form and free the memory */ -+ unpost_form(my_form); -+ free_form(my_form); -+ free_field(field[0]); -+ free_field(field[1]); -+ -+ endwin(); -+ return 0; -+}</SPAN -+></PRE -+></DIV -+><P -+>Play with the color pairs and try to understand the foreground and background -+attributes. In my programs using color attributes, I usually set only the -+background with set_field_back(). Curses simply doesn't allow defining -+individual color attributes. </P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="FIELDOPTIONBITS" -+>18.3.5. Field Option Bits</A -+></H4 -+><P -+>There is also a large collection of field option bits you can set to control -+various aspects of forms processing. You can manipulate them with these -+functions:</P -+><PRE -+CLASS="PROGRAMLISTING" -+>int set_field_opts(FIELD *field, /* field to alter */ - int attr); /* attribute to set */ - - int field_opts_on(FIELD *field, /* field to alter */ -@@ -5078,108 +6720,134 @@ - int field_opts_off(FIELD *field, /* field to alter */ - int attr); /* attributes to turn off */ - --int field_opts(FIELD *field); /* field to query */ </font> --</pre></td> --</tr> --</table> --<p>The function set_field_opts() can be used to directly set --attributes of a field or you can choose to switch a few attributes --on and off with field_opts_on() and field_opts_off() selectively. --Anytime you can query the attributes of a field with field_opts(). --The following is the list of available options. By default, all --options are on.</p> --<div class="VARIABLELIST"> --<dl> --<dt>O_VISIBLE</dt> --<dd> --<p>Controls whether the field is visible on the screen. Can be used --during form processing to hide or pop up fields depending on the --value of parent fields.</p> --</dd> --<dt>O_ACTIVE</dt> --<dd> --<p>Controls whether the field is active during forms processing --(i.e. visited by form navigation keys). Can be used to make labels --or derived fields with buffer values alterable by the forms --application, not the user.</p> --</dd> --<dt>O_PUBLIC</dt> --<dd> --<p>Controls whether data is displayed during field entry. If this --option is turned off on a field, the library will accept and edit --data in that field, but it will not be displayed and the visible --field cursor will not move. You can turn off the O_PUBLIC bit to --define password fields.</p> --</dd> --<dt>O_EDIT</dt> --<dd> --<p>Controls whether the field's data can be modified. When this --option is off, all editing requests except <var class= --"LITERAL">REQ_PREV_CHOICE</var> and <var class= --"LITERAL">REQ_NEXT_CHOICE</var>will fail. Such read-only fields may --be useful for help messages.</p> --</dd> --<dt>O_WRAP</dt> --<dd> --<p>Controls word-wrapping in multi-line fields. Normally, when any --character of a (blank-separated) word reaches the end of the --current line, the entire word is wrapped to the next line (assuming --there is one). When this option is off, the word will be split --across the line break.</p> --</dd> --<dt>O_BLANK</dt> --<dd> --<p>Controls field blanking. When this option is on, entering a --character at the first field position erases the entire field --(except for the just-entered character).</p> --</dd> --<dt>O_AUTOSKIP</dt> --<dd> --<p>Controls automatic skip to next field when this one fills. --Normally, when the forms user tries to type more data into a field --than will fit, the editing location jumps to next field. When this --option is off, the user's cursor will hang at the end of the field. --This option is ignored in dynamic fields that have not reached --their size limit.</p> --</dd> --<dt>O_NULLOK</dt> --<dd> --<p>Controls whether validation is applied to blank fields. --Normally, it is not; the user can leave a field blank without --invoking the usual validation check on exit. If this option is off --on a field, exit from it will invoke a validation check.</p> --</dd> --<dt>O_PASSOK</dt> --<dd> --<p>Controls whether validation occurs on every exit, or only after --the field is modified. Normally the latter is true. Setting --O_PASSOK may be useful if your field's validation function may --change during forms processing.</p> --</dd> --<dt>O_STATIC</dt> --<dd> --<p>Controls whether the field is fixed to its initial dimensions. --If you turn this off, the field becomes dynamic and will stretch to --fit entered data.</p> --</dd> --</dl> --</div> --<p>A field's options cannot be changed while the field is currently --selected. However, options may be changed on posted fields that are --not current.</p> --<p>The option values are bit-masks and can be composed with --logical-or in the obvious way. You have seen the usage of switching --off O_AUTOSKIP option. The following example clarifies usage of --some more options. Other options are explained where --appropriate.</p> --<div class="EXAMPLE"><a name="FFOOP" id="FFOOP"></a> --<p><b>Example 27. Field Options Usage example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;form.h&gt; -+int field_opts(FIELD *field); /* field to query */ </PRE -+><P -+>The function set_field_opts() can be used to directly set attributes of a field -+or you can choose to switch a few attributes on and off with field_opts_on() and -+field_opts_off() selectively. Anytime you can query the attributes of a field -+with field_opts(). The following is the list of available options. By default, -+all options are on.</P -+><P -+></P -+><DIV -+CLASS="VARIABLELIST" -+><DL -+><DT -+>O_VISIBLE</DT -+><DD -+><P -+>Controls whether the field is visible on the screen. Can be used -+during form processing to hide or pop up fields depending on the value -+of parent fields.</P -+></DD -+><DT -+>O_ACTIVE</DT -+><DD -+><P -+>Controls whether the field is active during forms processing (i.e. -+visited by form navigation keys). Can be used to make labels or derived -+fields with buffer values alterable by the forms application, not the user.</P -+></DD -+><DT -+>O_PUBLIC</DT -+><DD -+><P -+>Controls whether data is displayed during field entry. If this option is -+turned off on a field, the library will accept and edit data in that field, -+but it will not be displayed and the visible field cursor will not move. -+You can turn off the O_PUBLIC bit to define password fields.</P -+></DD -+><DT -+>O_EDIT</DT -+><DD -+><P -+>Controls whether the field's data can be modified. When this option is -+off, all editing requests except <TT -+CLASS="LITERAL" -+>REQ_PREV_CHOICE</TT -+> and <TT -+CLASS="LITERAL" -+>REQ_NEXT_CHOICE</TT -+>will -+fail. Such read-only fields may be useful for help messages.</P -+></DD -+><DT -+>O_WRAP</DT -+><DD -+><P -+>Controls word-wrapping in multi-line fields. Normally, when any -+character of a (blank-separated) word reaches the end of the current line, the -+entire word is wrapped to the next line (assuming there is one). When this -+option is off, the word will be split across the line break.</P -+></DD -+><DT -+>O_BLANK</DT -+><DD -+><P -+>Controls field blanking. When this option is on, entering a character at -+the first field position erases the entire field (except for the just-entered -+character).</P -+></DD -+><DT -+>O_AUTOSKIP</DT -+><DD -+><P -+>Controls automatic skip to next field when this one fills. Normally, -+when the forms user tries to type more data into a field than will fit, -+the editing location jumps to next field. When this option is off, the -+user's cursor will hang at the end of the field. This option is ignored -+in dynamic fields that have not reached their size limit.</P -+></DD -+><DT -+>O_NULLOK</DT -+><DD -+><P -+>Controls whether validation is applied to -+blank fields. Normally, it is not; the user can leave a field blank -+without invoking the usual validation check on exit. If this option is -+off on a field, exit from it will invoke a validation check.</P -+></DD -+><DT -+>O_PASSOK</DT -+><DD -+><P -+>Controls whether validation occurs on every exit, or only after -+the field is modified. Normally the latter is true. Setting O_PASSOK -+may be useful if your field's validation function may change during -+forms processing.</P -+></DD -+><DT -+>O_STATIC</DT -+><DD -+><P -+>Controls whether the field is fixed to its initial dimensions. If you -+turn this off, the field becomes dynamic and will -+stretch to fit entered data.</P -+></DD -+></DL -+></DIV -+><P -+>A field's options cannot be changed while the field is currently selected. -+However, options may be changed on posted fields that are not current. </P -+><P -+>The option values are bit-masks and can be composed with logical-or in -+the obvious way. You have seen the usage of switching off O_AUTOSKIP option. -+The following example clarifies usage of some more options. Other options -+are explained where appropriate.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="FFOOP" -+></A -+><P -+><B -+>Example 27. Field Options Usage example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;form.h&#62; - - #define STARTX 15 - #define STARTY 4 -@@ -5188,975 +6856,1476 @@ - #define N_FIELDS 3 - - int main() --{ FIELD *field[N_FIELDS]; -- FORM *my_form; -- int ch, i; -- -- /* Initialize curses */ -- initscr(); -- cbreak(); -- noecho(); -- keypad(stdscr, TRUE); -- -- /* Initialize the fields */ -- for(i = 0; i &lt; N_FIELDS - 1; ++i) -- field[i] = new_field(1, WIDTH, STARTY + i * 2, STARTX, 0, 0); -- field[N_FIELDS - 1] = NULL; -- -- /* Set field options */ -- set_field_back(field[1], A_UNDERLINE); /* Print a line for the option */ -- -- field_opts_off(field[0], O_ACTIVE); /* This field is a static label */ -- field_opts_off(field[1], O_PUBLIC); /* This filed is like a password field*/ -- field_opts_off(field[1], O_AUTOSKIP); /* To avoid entering the same field */ -- /* after last character is entered */ -- -- /* Create the form and post it */ -- my_form = new_form(field); -- post_form(my_form); -- refresh(); -- -- set_field_just(field[0], JUSTIFY_CENTER); /* Center Justification */ -- set_field_buffer(field[0], 0, "This is a static Field"); -- /* Initialize the field */ -- mvprintw(STARTY, STARTX - 10, "Field 1:"); -- mvprintw(STARTY + 2, STARTX - 10, "Field 2:"); -- refresh(); -- -- /* Loop through to get user requests */ -- while((ch = getch()) != KEY_F(1)) -- { switch(ch) -- { case KEY_DOWN: -- /* Go to next field */ -- form_driver(my_form, REQ_NEXT_FIELD); -- /* Go to the end of the present buffer */ -- /* Leaves nicely at the last character */ -- form_driver(my_form, REQ_END_LINE); -- break; -- case KEY_UP: -- /* Go to previous field */ -- form_driver(my_form, REQ_PREV_FIELD); -- form_driver(my_form, REQ_END_LINE); -- break; -- default: -- /* If this is a normal character, it gets */ -- /* Printed */ -- form_driver(my_form, ch); -- break; -- } -- } -- -- /* Un post form and free the memory */ -- unpost_form(my_form); -- free_form(my_form); -- free_field(field[0]); -- free_field(field[1]); -- -- endwin(); -- return 0; --}</span></font> --</pre></td> --</tr> --</table> --</div> --<p>This example, though useless, shows the usage of options. If --used properly, they can present information very effectively in a --form. The second field being not O_PUBLIC, does not show the --characters you are typing.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="FIELDSTATUS" id="FIELDSTATUS">18.3.6. --Field Status</a></h4> --<p>The field status specifies whether the field has got edited or --not. It is initially set to FALSE and when user enters something --and the data buffer gets modified it becomes TRUE. So a field's --status can be queried to find out whether it has been modified or --not. The following functions can assist in those operations.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_field_status(FIELD *field, /* field to alter */ -+{ FIELD *field[N_FIELDS]; -+ FORM *my_form; -+ int ch, i; -+ -+ /* Initialize curses */ -+ initscr(); -+ cbreak(); -+ noecho(); -+ keypad(stdscr, TRUE); -+ -+ /* Initialize the fields */ -+ for(i = 0; i &#60; N_FIELDS - 1; ++i) -+ field[i] = new_field(1, WIDTH, STARTY + i * 2, STARTX, 0, 0); -+ field[N_FIELDS - 1] = NULL; -+ -+ /* Set field options */ -+ set_field_back(field[1], A_UNDERLINE); /* Print a line for the option */ -+ -+ field_opts_off(field[0], O_ACTIVE); /* This field is a static label */ -+ field_opts_off(field[1], O_PUBLIC); /* This filed is like a password field*/ -+ field_opts_off(field[1], O_AUTOSKIP); /* To avoid entering the same field */ -+ /* after last character is entered */ -+ -+ /* Create the form and post it */ -+ my_form = new_form(field); -+ post_form(my_form); -+ refresh(); -+ -+ set_field_just(field[0], JUSTIFY_CENTER); /* Center Justification */ -+ set_field_buffer(field[0], 0, "This is a static Field"); -+ /* Initialize the field */ -+ mvprintw(STARTY, STARTX - 10, "Field 1:"); -+ mvprintw(STARTY + 2, STARTX - 10, "Field 2:"); -+ refresh(); -+ -+ /* Loop through to get user requests */ -+ while((ch = getch()) != KEY_F(1)) -+ { switch(ch) -+ { case KEY_DOWN: -+ /* Go to next field */ -+ form_driver(my_form, REQ_NEXT_FIELD); -+ /* Go to the end of the present buffer */ -+ /* Leaves nicely at the last character */ -+ form_driver(my_form, REQ_END_LINE); -+ break; -+ case KEY_UP: -+ /* Go to previous field */ -+ form_driver(my_form, REQ_PREV_FIELD); -+ form_driver(my_form, REQ_END_LINE); -+ break; -+ default: -+ /* If this is a normal character, it gets */ -+ /* Printed */ -+ form_driver(my_form, ch); -+ break; -+ } -+ } -+ -+ /* Un post form and free the memory */ -+ unpost_form(my_form); -+ free_form(my_form); -+ free_field(field[0]); -+ free_field(field[1]); -+ -+ endwin(); -+ return 0; -+}</SPAN -+></PRE -+></DIV -+><P -+>This example, though useless, shows the usage of options. If used properly, they -+can present information very effectively in a form. The second field being not -+O_PUBLIC, does not show the characters you are typing.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="FIELDSTATUS" -+>18.3.6. Field Status</A -+></H4 -+><P -+>The field status specifies whether the field has got edited or not. It is -+initially set to FALSE and when user enters something and the data buffer gets -+modified it becomes TRUE. So a field's status can be queried to find out whether -+it has been modified or not. The following functions can assist in those -+operations.</P -+><PRE -+CLASS="PROGRAMLISTING" -+>int set_field_status(FIELD *field, /* field to alter */ - int status); /* status to set */ - --int field_status(FIELD *field); /* fetch status of field */</font> --</pre></td> --</tr> --</table> --<p>It's better to check the field's status only after after leaving --the field, as data buffer might not have been updated yet as the --validation is still due. To guarantee that right status is --returned, call field_status() either (1) in the field's exit --validation check routine, (2) from the field's or form's --initialization or termination hooks, or (3) just after a --REQ_VALIDATION request has been processed by the forms driver</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="FIELDUSERPTR" id="FIELDUSERPTR">18.3.7. --Field User Pointer</a></h4> --<p>Every field structure contains one pointer that can be used by --the user for various purposes. It is not touched by forms library --and can be used for any purpose by the user. The following --functions set and fetch user pointer.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000">int set_field_userptr(FIELD *field, -+int field_status(FIELD *field); /* fetch status of field */</PRE -+><P -+>It's better to check the field's status only after after leaving the field, as -+data buffer might not have been updated yet as the validation is still due. To -+guarantee that right status is returned, call field_status() either (1) in the -+field's exit validation check routine, (2) from the field's or form's -+initialization or termination hooks, or (3) just after a REQ_VALIDATION request -+has been processed by the forms driver</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="FIELDUSERPTR" -+>18.3.7. Field User Pointer</A -+></H4 -+><P -+>Every field structure contains one pointer that can be used by the user for -+various purposes. It is not touched by forms library and can be used for any -+purpose by the user. The following functions set and fetch user pointer.</P -+><PRE -+CLASS="PROGRAMLISTING" -+>int set_field_userptr(FIELD *field, - char *userptr); /* the user pointer you wish to associate */ - /* with the field */ - --char *field_userptr(FIELD *field); /* fetch user pointer of the field */</font> --</pre></td> --</tr> --</table> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="VARIABLESIZEFIELDS" id= --"VARIABLESIZEFIELDS">18.3.8. Variable-Sized Fields</a></h4> --<p>If you want a dynamically changing field with variable width, --this is the feature you want to put to full use. This will allow --the user to enter more data than the original size of the field and --let the field grow. According to the field orientation it will --scroll horizontally or vertically to incorporate the new data.</p> --<p>To make a field dynamically growable, the option O_STATIC should --be turned off. This can be done with a</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000"> field_opts_off(field_pointer, O_STATIC);</font> --</pre></td> --</tr> --</table> --<p>But it's usually not advisable to allow a field to grow --infinitely. You can set a maximum limit to the growth of the field --with</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_max_field(FIELD *field, /* Field on which to operate */ -- int max_growth); /* maximum growth allowed for the field */</font> --</pre></td> --</tr> --</table> --<p>The field info for a dynamically growable field can be retrieved --by</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int dynamic_field_info( FIELD *field, /* Field on which to operate */ -+char *field_userptr(FIELD *field); /* fetch user pointer of the field */</PRE -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="VARIABLESIZEFIELDS" -+>18.3.8. Variable-Sized Fields</A -+></H4 -+><P -+>If you want a dynamically changing field with variable width, this is the -+feature you want to put to full use. This will allow the user to enter more data -+than the original size of the field and let the field grow. According to the -+field orientation it will scroll horizontally or vertically to incorporate the -+new data.</P -+><P -+>To make a field dynamically growable, the option O_STATIC should be turned off. -+This can be done with a -+<PRE -+CLASS="PROGRAMLISTING" -+> field_opts_off(field_pointer, O_STATIC);</PRE -+></P -+><P -+>But it's usually not advisable to allow a field to grow infinitely. You can set -+a maximum limit to the growth of the field with -+<PRE -+CLASS="PROGRAMLISTING" -+>int set_max_field(FIELD *field, /* Field on which to operate */ -+ int max_growth); /* maximum growth allowed for the field */</PRE -+></P -+><P -+>The field info for a dynamically growable field can be retrieved by -+<PRE -+CLASS="PROGRAMLISTING" -+>int dynamic_field_info( FIELD *field, /* Field on which to operate */ - int *prows, /* number of rows will be filled in this */ - int *pcols, /* number of columns will be filled in this*/ - int *pmax) /* maximum allowable growth will be filled */ -- /* in this */</font> --</pre></td> --</tr> --</table> --Though field_info work as usual, it is advisable to use this --function to get the proper attributes of a dynamically growable --field. --<p>Recall the library routine new_field; a new field created with --height set to one will be defined to be a one line field. A new --field created with height greater than one will be defined to be a --multi line field.</p> --<p>A one line field with O_STATIC turned off (dynamically growable --field) will contain a single fixed row, but the number of columns --can increase if the user enters more data than the initial field --will hold. The number of columns displayed will remain fixed and --the additional data will scroll horizontally.</p> --<p>A multi line field with O_STATIC turned off (dynamically --growable field) will contain a fixed number of columns, but the --number of rows can increase if the user enters more data than the --initial field will hold. The number of rows displayed will remain --fixed and the additional data will scroll vertically.</p> --<p>The above two paragraphs pretty much describe a dynamically --growable field's behavior. The way other parts of forms library --behaves is described below:</p> --<ol type="1"> --<li> --<p>The field option O_AUTOSKIP will be ignored if the option --O_STATIC is off and there is no maximum growth specified for the --field. Currently, O_AUTOSKIP generates an automatic REQ_NEXT_FIELD --form driver request when the user types in the last character --position of a field. On a growable field with no maximum growth --specified, there is no last character position. If a maximum growth --is specified, the O_AUTOSKIP option will work as normal if the --field has grown to its maximum size.</p> --</li> --<li> --<p>The field justification will be ignored if the option O_STATIC --is off. Currently, set_field_just can be used to JUSTIFY_LEFT, --JUSTIFY_RIGHT, JUSTIFY_CENTER the contents of a one line field. A --growable one line field will, by definition, grow and scroll --horizontally and may contain more data than can be justified. The --return from field_just will be unchanged.</p> --</li> --<li> --<p>The overloaded form driver request REQ_NEW_LINE will operate the --same way regardless of the O_NL_OVERLOAD form option if the field --option O_STATIC is off and there is no maximum growth specified for --the field. Currently, if the form option O_NL_OVERLOAD is on, --REQ_NEW_LINE implicitly generates a REQ_NEXT_FIELD if called from --the last line of a field. If a field can grow without bound, there --is no last line, so REQ_NEW_LINE will never implicitly generate a --REQ_NEXT_FIELD. If a maximum growth limit is specified and the --O_NL_OVERLOAD form option is on, REQ_NEW_LINE will only implicitly --generate REQ_NEXT_FIELD if the field has grown to its maximum size --and the user is on the last line.</p> --</li> --<li> --<p>The library call dup_field will work as usual; it will duplicate --the field, including the current buffer size and contents of the --field being duplicated. Any specified maximum growth will also be --duplicated.</p> --</li> --<li> --<p>The library call link_field will work as usual; it will --duplicate all field attributes and share buffers with the field --being linked. If the O_STATIC field option is subsequently changed --by a field sharing buffers, how the system reacts to an attempt to --enter more data into the field than the buffer will currently hold --will depend on the setting of the option in the current field.</p> --</li> --<li> --<p>The library call field_info will work as usual; the variable --nrow will contain the value of the original call to new_field. The --user should use dynamic_field_info, described above, to query the --current size of the buffer.</p> --</li> --</ol> --<p>Some of the above points make sense only after explaining form --driver. We will be looking into that in next few sections.</p> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="FORMWINDOWS" id="FORMWINDOWS">18.4. Form --Windows</a></h3> --<p>The form windows concept is pretty much similar to menu windows. --Every form is associated with a main window and a sub window. The --form main window displays any title or border associated or --whatever the user wishes. Then the sub window contains all the --fields and displays them according to their position. This gives --the flexibility of manipulating fancy form displaying very --easily.</p> --<p>Since this is pretty much similar to menu windows, I am --providing an example with out much explanation. The functions are --similar and they work the same way.</p> --<div class="EXAMPLE"><a name="FFOWI" id="FFOWI"></a> --<p><b>Example 28. Form Windows Example</b></p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000"><span class= --"INLINEMEDIAOBJECT">#include &lt;form.h&gt; -+ /* in this */</PRE -+> -+Though field_info work as usual, it is advisable to use this function to get the -+proper attributes of a dynamically growable field.</P -+><P -+>Recall the library routine new_field; a new field created with height set to one -+will be defined to be a one line field. A new field created with height greater -+than one will be defined to be a multi line field. </P -+><P -+>A one line field with O_STATIC turned off (dynamically growable field) will -+contain a single fixed row, but the number of columns can increase if the user -+enters more data than the initial field will hold. The number of columns -+displayed will remain fixed and the additional data will scroll horizontally. </P -+><P -+>A multi line field with O_STATIC turned off (dynamically growable field) will -+contain a fixed number of columns, but the number of rows can increase if the -+user enters more data than the initial field will hold. The number of rows -+displayed will remain fixed and the additional data will scroll vertically.</P -+><P -+>The above two paragraphs pretty much describe a dynamically growable field's -+behavior. The way other parts of forms library behaves is described below:</P -+><P -+></P -+><OL -+TYPE="1" -+><LI -+><P -+>The field option O_AUTOSKIP will be ignored if the option O_STATIC is off and -+there is no maximum growth specified for the field. Currently, O_AUTOSKIP -+generates an automatic REQ_NEXT_FIELD form driver request when the user types in -+the last character position of a field. On a growable field with no maximum -+growth specified, there is no last character position. If a maximum growth is -+specified, the O_AUTOSKIP option will work as normal if the field has grown to -+its maximum size. </P -+></LI -+><LI -+><P -+>The field justification will be ignored if the option O_STATIC is off. -+Currently, set_field_just can be used to JUSTIFY_LEFT, JUSTIFY_RIGHT, -+JUSTIFY_CENTER the contents of a one line field. A growable one line field will, -+by definition, grow and scroll horizontally and may contain more data than can -+be justified. The return from field_just will be unchanged. </P -+></LI -+><LI -+><P -+>The overloaded form driver request REQ_NEW_LINE will operate the same way -+regardless of the O_NL_OVERLOAD form option if the field option O_STATIC is off -+and there is no maximum growth specified for the field. Currently, if the form -+option O_NL_OVERLOAD is on, REQ_NEW_LINE implicitly generates a REQ_NEXT_FIELD -+if called from the last line of a field. If a field can grow without bound, -+there is no last line, so REQ_NEW_LINE will never implicitly generate a -+REQ_NEXT_FIELD. If a maximum growth limit is specified and the O_NL_OVERLOAD -+form option is on, REQ_NEW_LINE will only implicitly generate REQ_NEXT_FIELD if -+the field has grown to its maximum size and the user is on the last line. </P -+></LI -+><LI -+><P -+>The library call dup_field will work as usual; it will duplicate the field, -+including the current buffer size and contents of the field being duplicated. -+Any specified maximum growth will also be duplicated. </P -+></LI -+><LI -+><P -+>The library call link_field will work as usual; it will duplicate all field -+attributes and share buffers with the field being linked. If the O_STATIC field -+option is subsequently changed by a field sharing buffers, how the system reacts -+to an attempt to enter more data into the field than the buffer will currently -+hold will depend on the setting of the option in the current field. </P -+></LI -+><LI -+><P -+>The library call field_info will work as usual; the variable nrow will contain -+the value of the original call to new_field. The user should use -+dynamic_field_info, described above, to query the current size of the buffer.</P -+></LI -+></OL -+><P -+>Some of the above points make sense only after explaining form driver. We will -+be looking into that in next few sections.</P -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="FORMWINDOWS" -+>18.4. Form Windows</A -+></H3 -+><P -+>The form windows concept is pretty much similar to menu windows. Every form is -+associated with a main window and a sub window. The form main window displays -+any title or border associated or whatever the user wishes. Then the sub window -+contains all the fields and displays them according to their position. This -+gives the flexibility of manipulating fancy form displaying very easily. </P -+><P -+>Since this is pretty much similar to menu windows, I am providing an example -+with out much explanation. The functions are similar and they work the same way.</P -+><DIV -+CLASS="EXAMPLE" -+><A -+NAME="FFOWI" -+></A -+><P -+><B -+>Example 28. Form Windows Example </B -+></P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="INLINEMEDIAOBJECT" -+>#include &#60;form.h&#62; - - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color); - - int main() - { -- FIELD *field[3]; -- FORM *my_form; -- WINDOW *my_form_win; -- int ch, rows, cols; -- -- /* Initialize curses */ -- initscr(); -- start_color(); -- cbreak(); -- noecho(); -- keypad(stdscr, TRUE); -- -- /* Initialize few color pairs */ -- init_pair(1, COLOR_RED, COLOR_BLACK); -- -- /* Initialize the fields */ -- field[0] = new_field(1, 10, 6, 1, 0, 0); -- field[1] = new_field(1, 10, 8, 1, 0, 0); -- field[2] = NULL; -- -- /* Set field options */ -- set_field_back(field[0], A_UNDERLINE); -- field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */ -- /* Field is filled up */ -- set_field_back(field[1], A_UNDERLINE); -- field_opts_off(field[1], O_AUTOSKIP); -- -- /* Create the form and post it */ -- my_form = new_form(field); -- -- /* Calculate the area required for the form */ -- scale_form(my_form, &amp;rows, &amp;cols); -+ FIELD *field[3]; -+ FORM *my_form; -+ WINDOW *my_form_win; -+ int ch, rows, cols; -+ -+ /* Initialize curses */ -+ initscr(); -+ start_color(); -+ cbreak(); -+ noecho(); -+ keypad(stdscr, TRUE); -+ -+ /* Initialize few color pairs */ -+ init_pair(1, COLOR_RED, COLOR_BLACK); -+ -+ /* Initialize the fields */ -+ field[0] = new_field(1, 10, 6, 1, 0, 0); -+ field[1] = new_field(1, 10, 8, 1, 0, 0); -+ field[2] = NULL; -+ -+ /* Set field options */ -+ set_field_back(field[0], A_UNDERLINE); -+ field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */ -+ /* Field is filled up */ -+ set_field_back(field[1], A_UNDERLINE); -+ field_opts_off(field[1], O_AUTOSKIP); -+ -+ /* Create the form and post it */ -+ my_form = new_form(field); -+ -+ /* Calculate the area required for the form */ -+ scale_form(my_form, &#38;rows, &#38;cols); - -- /* Create the window to be associated with the form */ -+ /* Create the window to be associated with the form */ - my_form_win = newwin(rows + 4, cols + 4, 4, 4); - keypad(my_form_win, TRUE); - -- /* Set main window and sub window */ -+ /* Set main window and sub window */ - set_form_win(my_form, my_form_win); - set_form_sub(my_form, derwin(my_form_win, rows, cols, 2, 2)); - -- /* Print a border around the main window and print a title */ -+ /* Print a border around the main window and print a title */ - box(my_form_win, 0, 0); -- print_in_middle(my_form_win, 1, 0, cols + 4, "My Form", COLOR_PAIR(1)); -- -- post_form(my_form); -- wrefresh(my_form_win); -- -- mvprintw(LINES - 2, 0, "Use UP, DOWN arrow keys to switch between fields"); -- refresh(); -+ print_in_middle(my_form_win, 1, 0, cols + 4, "My Form", COLOR_PAIR(1)); -+ -+ post_form(my_form); -+ wrefresh(my_form_win); -+ -+ mvprintw(LINES - 2, 0, "Use UP, DOWN arrow keys to switch between fields"); -+ refresh(); -+ -+ /* Loop through to get user requests */ -+ while((ch = wgetch(my_form_win)) != KEY_F(1)) -+ { switch(ch) -+ { case KEY_DOWN: -+ /* Go to next field */ -+ form_driver(my_form, REQ_NEXT_FIELD); -+ /* Go to the end of the present buffer */ -+ /* Leaves nicely at the last character */ -+ form_driver(my_form, REQ_END_LINE); -+ break; -+ case KEY_UP: -+ /* Go to previous field */ -+ form_driver(my_form, REQ_PREV_FIELD); -+ form_driver(my_form, REQ_END_LINE); -+ break; -+ default: -+ /* If this is a normal character, it gets */ -+ /* Printed */ -+ form_driver(my_form, ch); -+ break; -+ } -+ } -+ -+ /* Un post form and free the memory */ -+ unpost_form(my_form); -+ free_form(my_form); -+ free_field(field[0]); -+ free_field(field[1]); - -- /* Loop through to get user requests */ -- while((ch = wgetch(my_form_win)) != KEY_F(1)) -- { switch(ch) -- { case KEY_DOWN: -- /* Go to next field */ -- form_driver(my_form, REQ_NEXT_FIELD); -- /* Go to the end of the present buffer */ -- /* Leaves nicely at the last character */ -- form_driver(my_form, REQ_END_LINE); -- break; -- case KEY_UP: -- /* Go to previous field */ -- form_driver(my_form, REQ_PREV_FIELD); -- form_driver(my_form, REQ_END_LINE); -- break; -- default: -- /* If this is a normal character, it gets */ -- /* Printed */ -- form_driver(my_form, ch); -- break; -- } -- } -- -- /* Un post form and free the memory */ -- unpost_form(my_form); -- free_form(my_form); -- free_field(field[0]); -- free_field(field[1]); -- -- endwin(); -- return 0; -+ endwin(); -+ return 0; - } - - void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color) --{ int length, x, y; -- float temp; -+{ int length, x, y; -+ float temp; - -- if(win == NULL) -- win = stdscr; -- getyx(win, y, x); -- if(startx != 0) -- x = startx; -- if(starty != 0) -- y = starty; -- if(width == 0) -- width = 80; -- -- length = strlen(string); -- temp = (width - length)/ 2; -- x = startx + (int)temp; -- wattron(win, color); -- mvwprintw(win, y, x, "%s", string); -- wattroff(win, color); -- refresh(); --}</span></font> --</pre></td> --</tr> --</table> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="FILEDVALIDATE" id="FILEDVALIDATE">18.5. --Field Validation</a></h3> --<p>By default, a field will accept any data input by the user. It --is possible to attach validation to the field. Then any attempt by --the user to leave the field, while it contains data that doesn't --match the validation type will fail. Some validation types also --have a character-validity check for each time a character is --entered in the field.</p> --<p>Validation can be attached to a field with the following --function.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_field_type(FIELD *field, /* field to alter */ -+ if(win == NULL) -+ win = stdscr; -+ getyx(win, y, x); -+ if(startx != 0) -+ x = startx; -+ if(starty != 0) -+ y = starty; -+ if(width == 0) -+ width = 80; -+ -+ length = strlen(string); -+ temp = (width - length)/ 2; -+ x = startx + (int)temp; -+ wattron(win, color); -+ mvwprintw(win, y, x, "%s", string); -+ wattroff(win, color); -+ refresh(); -+}</SPAN -+></PRE -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="FILEDVALIDATE" -+>18.5. Field Validation</A -+></H3 -+><P -+>By default, a field will accept any data input by the user. It is possible to -+attach validation to the field. Then any attempt by the user to leave the field, -+while it contains data that doesn't match the validation type will fail. Some -+validation types also have a character-validity check for each time a character -+is entered in the field.</P -+><P -+>Validation can be attached to a field with the following function. -+<PRE -+CLASS="PROGRAMLISTING" -+>int set_field_type(FIELD *field, /* field to alter */ - FIELDTYPE *ftype, /* type to associate */ -- ...); /* additional arguments*/</font> --</pre></td> --</tr> --</table> -+ ...); /* additional arguments*/</PRE -+> - Once set, the validation type for a field can be queried with --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">FIELDTYPE *field_type(FIELD *field); /* field to query */</font> --</pre></td> --</tr> --</table> --<p>The form driver validates the data in a field only when data is --entered by the end-user. Validation does not occur when</p> --<ul> --<li> --<p>the application program changes the field value by calling --set_field_buffer.</p> --</li> --<li> --<p>linked field values are changed indirectly -- by changing the --field to which they are linked</p> --</li> --</ul> --<p>The following are the pre-defined validation types. You can also --specify custom validation, though it's a bit tricky and --cumbersome.</p> --<h1 class="BRIDGEHEAD"><a name="AEN1069" id= --"AEN1069"></a>TYPE_ALPHA</h1> --<p>This field type accepts alphabetic data; no blanks, no digits, --no special characters (this is checked at character-entry time). It --is set up with:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_field_type(FIELD *field, /* field to alter */ -+<PRE -+CLASS="PROGRAMLISTING" -+>FIELDTYPE *field_type(FIELD *field); /* field to query */</PRE -+></P -+><P -+>The form driver validates the data in a field only when data is entered by the -+end-user. Validation does not occur when </P -+><P -+></P -+><UL -+><LI -+><P -+>the application program changes the field value by calling set_field_buffer. </P -+></LI -+><LI -+><P -+>linked field values are changed indirectly -- by changing the field to which -+they are linked</P -+></LI -+></UL -+><P -+>The following are the pre-defined validation types. You can also specify custom -+validation, though it's a bit tricky and cumbersome.</P -+><H1 -+CLASS="BRIDGEHEAD" -+><A -+NAME="AEN1069" -+></A -+>TYPE_ALPHA</H1 -+><P -+>This field type accepts alphabetic data; no blanks, no digits, no special -+characters (this is checked at character-entry time). It is set up with: </P -+><PRE -+CLASS="PROGRAMLISTING" -+>int set_field_type(FIELD *field, /* field to alter */ - TYPE_ALPHA, /* type to associate */ -- int width); /* maximum width of field */</font> --</pre></td> --</tr> --</table> --<p>The width argument sets a minimum width of data. The user has to --enter at-least width number of characters before he can leave the --field. Typically you'll want to set this to the field width; if --it's greater than the field width, the validation check will always --fail. A minimum width of zero makes field completion optional.</p> --<h1 class="BRIDGEHEAD"><a name="AEN1073" id= --"AEN1073"></a>TYPE_ALNUM</h1> --<p>This field type accepts alphabetic data and digits; no blanks, --no special characters (this is checked at character-entry time). It --is set up with:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_field_type(FIELD *field, /* field to alter */ -+ int width); /* maximum width of field */</PRE -+><P -+>The width argument sets a minimum width of data. The user has to enter at-least -+width number of characters before he can leave the field. Typically -+you'll want to set this to the field width; if it's greater than the -+field width, the validation check will always fail. A minimum width -+of zero makes field completion optional. </P -+><H1 -+CLASS="BRIDGEHEAD" -+><A -+NAME="AEN1073" -+></A -+>TYPE_ALNUM</H1 -+><P -+>This field type accepts alphabetic data and digits; no blanks, no special -+characters (this is checked at character-entry time). It is set up with: </P -+><PRE -+CLASS="PROGRAMLISTING" -+>int set_field_type(FIELD *field, /* field to alter */ - TYPE_ALNUM, /* type to associate */ -- int width); /* maximum width of field */</font> --</pre></td> --</tr> --</table> --<p>The width argument sets a minimum width of data. As with --TYPE_ALPHA, typically you'll want to set this to the field width; --if it's greater than the field width, the validation check will --always fail. A minimum width of zero makes field completion --optional.</p> --<h1 class="BRIDGEHEAD"><a name="AEN1077" id= --"AEN1077"></a>TYPE_ENUM</h1> --<p>This type allows you to restrict a field's values to be among a --specified set of string values (for example, the two-letter postal --codes for U.S. states). It is set up with:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_field_type(FIELD *field, /* field to alter */ -+ int width); /* maximum width of field */</PRE -+><P -+>The width argument sets a minimum width of data. As with -+TYPE_ALPHA, typically you'll want to set this to the field width; if it's -+greater than the field width, the validation check will always fail. A -+minimum width of zero makes field completion optional. </P -+><H1 -+CLASS="BRIDGEHEAD" -+><A -+NAME="AEN1077" -+></A -+>TYPE_ENUM</H1 -+><P -+>This type allows you to restrict a field's values to be among a specified -+set of string values (for example, the two-letter postal codes for U.S. -+states). It is set up with: </P -+><PRE -+CLASS="PROGRAMLISTING" -+>int set_field_type(FIELD *field, /* field to alter */ - TYPE_ENUM, /* type to associate */ - char **valuelist; /* list of possible values */ - int checkcase; /* case-sensitive? */ -- int checkunique); /* must specify uniquely? */</font> --</pre></td> --</tr> --</table> --<p>The valuelist parameter must point at a NULL-terminated list of --valid strings. The checkcase argument, if true, makes comparison --with the string case-sensitive.</p> --<p>When the user exits a TYPE_ENUM field, the validation procedure --tries to complete the data in the buffer to a valid entry. If a --complete choice string has been entered, it is of course valid. But --it is also possible to enter a prefix of a valid string and have it --completed for you.</p> --<p>By default, if you enter such a prefix and it matches more than --one value in the string list, the prefix will be completed to the --first matching value. But the checkunique argument, if true, --requires prefix matches to be unique in order to be valid.</p> --<p>The REQ_NEXT_CHOICE and REQ_PREV_CHOICE input requests can be --particularly useful with these fields.</p> --<h1 class="BRIDGEHEAD"><a name="AEN1084" id= --"AEN1084"></a>TYPE_INTEGER</h1> --<p>This field type accepts an integer. It is set up as follows:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_field_type(FIELD *field, /* field to alter */ -+ int checkunique); /* must specify uniquely? */</PRE -+><P -+>The valuelist parameter must point at a NULL-terminated list of -+valid strings. The checkcase argument, if true, makes comparison -+with the string case-sensitive. </P -+><P -+>When the user exits a TYPE_ENUM field, the validation procedure tries to -+complete the data in the buffer to a valid entry. If a complete choice string -+has been entered, it is of course valid. But it is also possible to enter a -+prefix of a valid string and have it completed for you. </P -+><P -+>By default, if you enter such a prefix and it matches more than one value -+in the string list, the prefix will be completed to the first matching -+value. But the checkunique argument, if true, requires prefix -+matches to be unique in order to be valid. </P -+><P -+>The REQ_NEXT_CHOICE and REQ_PREV_CHOICE input requests can be particularly -+useful with these fields. </P -+><H1 -+CLASS="BRIDGEHEAD" -+><A -+NAME="AEN1084" -+></A -+>TYPE_INTEGER</H1 -+><P -+>This field type accepts an integer. It is set up as follows: </P -+><PRE -+CLASS="PROGRAMLISTING" -+>int set_field_type(FIELD *field, /* field to alter */ - TYPE_INTEGER, /* type to associate */ - int padding, /* # places to zero-pad to */ -- int vmin, int vmax); /* valid range */</font> --</pre></td> --</tr> --</table> --<p>Valid characters consist of an optional leading minus and --digits. The range check is performed on exit. If the range maximum --is less than or equal to the minimum, the range is ignored.</p> --<p>If the value passes its range check, it is padded with as many --leading zero digits as necessary to meet the padding argument.</p> --<p>A TYPE_INTEGER value buffer can conveniently be interpreted with --the C library function atoi(3).</p> --<h1 class="BRIDGEHEAD"><a name="AEN1090" id= --"AEN1090"></a>TYPE_NUMERIC</h1> --<p>This field type accepts a decimal number. It is set up as --follows:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_field_type(FIELD *field, /* field to alter */ -+ int vmin, int vmax); /* valid range */</PRE -+><P -+>Valid characters consist of an optional leading minus and digits. -+The range check is performed on exit. If the range maximum is less -+than or equal to the minimum, the range is ignored. </P -+><P -+>If the value passes its range check, it is padded with as many leading -+zero digits as necessary to meet the padding argument. </P -+><P -+>A TYPE_INTEGER value buffer can conveniently be interpreted with the C library -+function atoi(3).</P -+><H1 -+CLASS="BRIDGEHEAD" -+><A -+NAME="AEN1090" -+></A -+>TYPE_NUMERIC</H1 -+><P -+>This field type accepts a decimal number. It is set up as follows: </P -+><PRE -+CLASS="PROGRAMLISTING" -+>int set_field_type(FIELD *field, /* field to alter */ - TYPE_NUMERIC, /* type to associate */ - int padding, /* # places of precision */ -- int vmin, int vmax); /* valid range */</font> --</pre></td> --</tr> --</table> --<p>Valid characters consist of an optional leading minus and --digits. possibly including a decimal point. The range check is --performed on exit. If the range maximum is less than or equal to --the minimum, the range is ignored.</p> --<p>If the value passes its range check, it is padded with as many --trailing zero digits as necessary to meet the padding argument.</p> --<p>A TYPE_NUMERIC value buffer can conveniently be interpreted with --the C library function atof(3).</p> --<h1 class="BRIDGEHEAD"><a name="AEN1096" id= --"AEN1096"></a>TYPE_REGEXP</h1> --<p>This field type accepts data matching a regular expression. It --is set up as follows:</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_field_type(FIELD *field, /* field to alter */ -+ int vmin, int vmax); /* valid range */</PRE -+><P -+>Valid characters consist of an optional leading minus and digits. possibly -+including a decimal point. The range check is performed on exit. If the -+range maximum is less than or equal to the minimum, the range is -+ignored. </P -+><P -+>If the value passes its range check, it is padded with as many trailing -+zero digits as necessary to meet the padding argument. </P -+><P -+>A TYPE_NUMERIC value buffer can conveniently be interpreted with the C library -+function atof(3).</P -+><H1 -+CLASS="BRIDGEHEAD" -+><A -+NAME="AEN1096" -+></A -+>TYPE_REGEXP</H1 -+><P -+>This field type accepts data matching a regular expression. It is set up -+as follows: </P -+><PRE -+CLASS="PROGRAMLISTING" -+>int set_field_type(FIELD *field, /* field to alter */ - TYPE_REGEXP, /* type to associate */ -- char *regexp); /* expression to match */</font> --</pre></td> --</tr> --</table> --<p>The syntax for regular expressions is that of regcomp(3). The --check for regular-expression match is performed on exit.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="FORMDRIVER" id="FORMDRIVER">18.6. Form --Driver: The work horse of the forms system</a></h3> --<p>As in the menu system, form_driver() plays a very important role --in forms system. All types of requests to forms system should be --funneled through form_driver().</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int form_driver(FORM *form, /* form on which to operate */ -- int request) /* form request code */</font> --</pre></td> --</tr> --</table> --<p>As you have seen some of the examples above, you have to be in a --loop looking for user input and then decide whether it's a field --data or a form request. The form requests are then passed to --form_driver() to do the work.</p> --<p>The requests roughly can be divided into following categories. --Different requests and their usage is explained below:</p> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="PAGENAVREQ" id="PAGENAVREQ">18.6.1. Page --Navigation Requests</a></h4> --<p>These requests cause page-level moves through the form, --triggering display of a new form screen. A form can be made of --multiple pages. If you have a big form with lot of fields and --logical sections, then you can divide the form into pages. The --function set_new_page() to set a new page at the field --specified.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">int set_new_page(FIELD *field,/* Field at which page break to be set or unset */ -- bool new_page_flag); /* should be TRUE to put a break */</font> --</pre></td> --</tr> --</table> --<p>The following requests allow you to move to different pages</p> --<ul> --<li> --<p><em>REQ_NEXT_PAGE</em> Move to the next form page.</p> --</li> --<li> --<p><em>REQ_PREV_PAGE</em> Move to the previous form page.</p> --</li> --<li> --<p><em>REQ_FIRST_PAGE</em> Move to the first form page.</p> --</li> --<li> --<p><em>REQ_LAST_PAGE</em> Move to the last form page.</p> --</li> --</ul> --<p>These requests treat the list as cyclic; that is, REQ_NEXT_PAGE --from the last page goes to the first, and REQ_PREV_PAGE from the --first page goes to the last.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="INTERFIELDNAVREQ" id= --"INTERFIELDNAVREQ">18.6.2. Inter-Field Navigation Requests</a></h4> --<p>These requests handle navigation between fields on the same --page.</p> --<ul> --<li> --<p><em>REQ_NEXT_FIELD</em> Move to next field.</p> --</li> --<li> --<p><em>REQ_PREV_FIELD</em> Move to previous field.</p> --</li> --<li> --<p><em>REQ_FIRST_FIELD</em> Move to the first field.</p> --</li> --<li> --<p><em>REQ_LAST_FIELD</em> Move to the last field.</p> --</li> --<li> --<p><em>REQ_SNEXT_FIELD</em> Move to sorted next field.</p> --</li> --<li> --<p><em>REQ_SPREV_FIELD</em> Move to sorted previous field.</p> --</li> --<li> --<p><em>REQ_SFIRST_FIELD</em> Move to the sorted first field.</p> --</li> --<li> --<p><em>REQ_SLAST_FIELD</em> Move to the sorted last field.</p> --</li> --<li> --<p><em>REQ_LEFT_FIELD</em> Move left to field.</p> --</li> --<li> --<p><em>REQ_RIGHT_FIELD</em> Move right to field.</p> --</li> --<li> --<p><em>REQ_UP_FIELD</em> Move up to field.</p> --</li> --<li> --<p><em>REQ_DOWN_FIELD</em> Move down to field.</p> --</li> --</ul> --<p>These requests treat the list of fields on a page as cyclic; --that is, REQ_NEXT_FIELD from the last field goes to the first, and --REQ_PREV_FIELD from the first field goes to the last. The order of --the fields for these (and the REQ_FIRST_FIELD and REQ_LAST_FIELD --requests) is simply the order of the field pointers in the form --array (as set up by new_form() or set_form_fields()</p> --<p>It is also possible to traverse the fields as if they had been --sorted in screen-position order, so the sequence goes left-to-right --and top-to-bottom. To do this, use the second group of four --sorted-movement requests.</p> --<p>Finally, it is possible to move between fields using visual --directions up, down, right, and left. To accomplish this, use the --third group of four requests. Note, however, that the position of a --form for purposes of these requests is its upper-left corner.</p> --<p>For example, suppose you have a multi-line field B, and two --single-line fields A and C on the same line with B, with A to the --left of B and C to the right of B. A REQ_MOVE_RIGHT from A will go --to B only if A, B, and C all share the same first line; otherwise --it will skip over B to C.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="INTRAFIELDNAVREQ" id= --"INTRAFIELDNAVREQ">18.6.3. Intra-Field Navigation Requests</a></h4> --<p>These requests drive movement of the edit cursor within the --currently selected field.</p> --<ul> --<li> --<p><em>REQ_NEXT_CHAR</em> Move to next character.</p> --</li> --<li> --<p><em>REQ_PREV_CHAR</em> Move to previous character.</p> --</li> --<li> --<p><em>REQ_NEXT_LINE</em> Move to next line.</p> --</li> --<li> --<p><em>REQ_PREV_LINE</em> Move to previous line.</p> --</li> --<li> --<p><em>REQ_NEXT_WORD</em> Move to next word.</p> --</li> --<li> --<p><em>REQ_PREV_WORD</em> Move to previous word.</p> --</li> --<li> --<p><em>REQ_BEG_FIELD</em> Move to beginning of field.</p> --</li> --<li> --<p><em>REQ_END_FIELD</em> Move to end of field.</p> --</li> --<li> --<p><em>REQ_BEG_LINE</em> Move to beginning of line.</p> --</li> --<li> --<p><em>REQ_END_LINE</em> Move to end of line.</p> --</li> --<li> --<p><em>REQ_LEFT_CHAR</em> Move left in field.</p> --</li> --<li> --<p><em>REQ_RIGHT_CHAR</em> Move right in field.</p> --</li> --<li> --<p><em>REQ_UP_CHAR</em> Move up in field.</p> --</li> --<li> --<p><em>REQ_DOWN_CHAR</em> Move down in field.</p> --</li> --</ul> --<p>Each word is separated from the previous and next characters by --whitespace. The commands to move to beginning and end of line or --field look for the first or last non-pad character in their --ranges.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="SCROLLREQ" id="SCROLLREQ">18.6.4. --Scrolling Requests</a></h4> --<p>Fields that are dynamic and have grown and fields explicitly --created with offscreen rows are scrollable. One-line fields scroll --horizontally; multi-line fields scroll vertically. Most scrolling --is triggered by editing and intra-field movement (the library --scrolls the field to keep the cursor visible). It is possible to --explicitly request scrolling with the following requests:</p> --<ul> --<li> --<p><em>REQ_SCR_FLINE</em> Scroll vertically forward a line.</p> --</li> --<li> --<p><em>REQ_SCR_BLINE</em> Scroll vertically backward a line.</p> --</li> --<li> --<p><em>REQ_SCR_FPAGE</em> Scroll vertically forward a page.</p> --</li> --<li> --<p><em>REQ_SCR_BPAGE</em> Scroll vertically backward a page.</p> --</li> --<li> --<p><em>REQ_SCR_FHPAGE</em> Scroll vertically forward half a --page.</p> --</li> --<li> --<p><em>REQ_SCR_BHPAGE</em> Scroll vertically backward half a --page.</p> --</li> --<li> --<p><em>REQ_SCR_FCHAR</em> Scroll horizontally forward a --character.</p> --</li> --<li> --<p><em>REQ_SCR_BCHAR</em> Scroll horizontally backward a --character.</p> --</li> --<li> --<p><em>REQ_SCR_HFLINE</em> Scroll horizontally one field width --forward.</p> --</li> --<li> --<p><em>REQ_SCR_HBLINE</em> Scroll horizontally one field width --backward.</p> --</li> --<li> --<p><em>REQ_SCR_HFHALF</em> Scroll horizontally one half field width --forward.</p> --</li> --<li> --<p><em>REQ_SCR_HBHALF</em> Scroll horizontally one half field width --backward.</p> --</li> --</ul> --<p>For scrolling purposes, a page of a field is the height of its --visible part.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="EDITREQ" id="EDITREQ">18.6.5. Editing --Requests</a></h4> --<p>When you pass the forms driver an ASCII character, it is treated --as a request to add the character to the field's data buffer. --Whether this is an insertion or a replacement depends on the --field's edit mode (insertion is the default.</p> --<p>The following requests support editing the field and changing --the edit mode:</p> --<ul> --<li> --<p><em>REQ_INS_MODE</em> Set insertion mode.</p> --</li> --<li> --<p><em>REQ_OVL_MODE</em> Set overlay mode.</p> --</li> --<li> --<p><em>REQ_NEW_LINE</em> New line request (see below for --explanation).</p> --</li> --<li> --<p><em>REQ_INS_CHAR</em> Insert space at character location.</p> --</li> --<li> --<p><em>REQ_INS_LINE</em> Insert blank line at character --location.</p> --</li> --<li> --<p><em>REQ_DEL_CHAR</em> Delete character at cursor.</p> --</li> --<li> --<p><em>REQ_DEL_PREV</em> Delete previous word at cursor.</p> --</li> --<li> --<p><em>REQ_DEL_LINE</em> Delete line at cursor.</p> --</li> --<li> --<p><em>REQ_DEL_WORD</em> Delete word at cursor.</p> --</li> --<li> --<p><em>REQ_CLR_EOL</em> Clear to end of line.</p> --</li> --<li> --<p><em>REQ_CLR_EOF</em> Clear to end of field.</p> --</li> --<li> --<p><em>REQ_CLR_FIELD</em> Clear entire field.</p> --</li> --</ul> --<p>The behavior of the REQ_NEW_LINE and REQ_DEL_PREV requests is --complicated and partly controlled by a pair of forms options. The --special cases are triggered when the cursor is at the beginning of --a field, or on the last line of the field.</p> --<p>First, we consider REQ_NEW_LINE:</p> --<p>The normal behavior of REQ_NEW_LINE in insert mode is to break --the current line at the position of the edit cursor, inserting the --portion of the current line after the cursor as a new line --following the current and moving the cursor to the beginning of --that new line (you may think of this as inserting a newline in the --field buffer).</p> --<p>The normal behavior of REQ_NEW_LINE in overlay mode is to clear --the current line from the position of the edit cursor to end of --line. The cursor is then moved to the beginning of the next --line.</p> --<p>However, REQ_NEW_LINE at the beginning of a field, or on the --last line of a field, instead does a REQ_NEXT_FIELD. O_NL_OVERLOAD --option is off, this special action is disabled.</p> --<p>Now, let us consider REQ_DEL_PREV:</p> --<p>The normal behavior of REQ_DEL_PREV is to delete the previous --character. If insert mode is on, and the cursor is at the start of --a line, and the text on that line will fit on the previous one, it --instead appends the contents of the current line to the previous --one and deletes the current line (you may think of this as deleting --a newline from the field buffer).</p> --<p>However, REQ_DEL_PREV at the beginning of a field is instead --treated as a REQ_PREV_FIELD.</p> --<p>If the O_BS_OVERLOAD option is off, this special action is --disabled and the forms driver just returns E_REQUEST_DENIED.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="ORDERREQ" id="ORDERREQ">18.6.6. Order --Requests</a></h4> --<p>If the type of your field is ordered, and has associated --functions for getting the next and previous values of the type from --a given value, there are requests that can fetch that value into --the field buffer:</p> --<ul> --<li> --<p><em>REQ_NEXT_CHOICE</em> Place the successor value of the --current value in the buffer.</p> --</li> --<li> --<p><em>REQ_PREV_CHOICE</em> Place the predecessor value of the --current value in the buffer.</p> --</li> --</ul> --<p>Of the built-in field types, only TYPE_ENUM has built-in --successor and predecessor functions. When you define a field type --of your own (see Custom Validation Types), you can associate our --own ordering functions.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="APPLICCOMMANDS" id= --"APPLICCOMMANDS">18.6.7. Application Commands</a></h4> --<p>Form requests are represented as integers above the curses value --greater than KEY_MAX and less than or equal to the constant --MAX_COMMAND. A value within this range gets ignored by --form_driver(). So this can be used for any purpose by the --application. It can be treated as an application specific action --and take corresponding action.</p> --</div> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="TOOLS" id="TOOLS">19. Tools and Widget --Libraries</a></h2> --<p>Now that you have seen the capabilities of ncurses and its --sister libraries, you are rolling your sleeves up and gearing for a --project that heavily manipulates screen. But wait.. It can be --pretty difficult to write and maintain complex GUI widgets in plain --ncurses or even with the additional libraries. There are some --ready-to-use tools and widget libraries that can be used instead of --writing your own widgets. You can use some of them, get ideas from --the code, or even extend them.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="CDK" id="CDK">19.1. CDK (Curses --Development Kit)</a></h3> --<p>In the author's words</p> --<p><em>CDK stands for 'Curses Development Kit' and it currently --contains 21 ready to use widgets which facilitate the speedy --development of full screen curses programs.</em></p> --<p>The kit provides some useful widgets, which can be used in your --programs directly. It's pretty well written and the documentation --is very good. The examples in the examples directory can be a good --place to start for beginners. The CDK can be downloaded from --<a href="http://invisible-island.net/cdk/" target= --"_top">http://invisible-island.net/cdk/</a> . Follow the --instructions in README file to install it.</p> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="WIDGETLIST" id="WIDGETLIST">19.1.1. --Widget List</a></h4> --<p>The following is the list of widgets provided with cdk and their --description.</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color="#000000">Widget Type Quick Description -+ char *regexp); /* expression to match */</PRE -+><P -+>The syntax for regular expressions is that of regcomp(3). -+The check for regular-expression match is performed on exit.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="FORMDRIVER" -+>18.6. Form Driver: The work horse of the forms system</A -+></H3 -+><P -+>As in the menu system, form_driver() plays a very important role in forms -+system. All types of requests to forms system should be funneled through -+form_driver().</P -+><PRE -+CLASS="PROGRAMLISTING" -+>int form_driver(FORM *form, /* form on which to operate */ -+ int request) /* form request code */</PRE -+><P -+>As you have seen some of the examples above, you have to be in a loop looking -+for user input and then decide whether it's a field data or a form request. The -+form requests are then passed to form_driver() to do the work.</P -+><P -+>The requests roughly can be divided into following categories. Different -+requests and their usage is explained below:</P -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="PAGENAVREQ" -+>18.6.1. Page Navigation Requests</A -+></H4 -+><P -+>These requests cause page-level moves through the form, triggering display of a -+new form screen. A form can be made of multiple pages. If you have a big form -+with lot of fields and logical sections, then you can divide the form into -+pages. The function set_new_page() to set a new page at the field specified.</P -+><PRE -+CLASS="PROGRAMLISTING" -+>int set_new_page(FIELD *field,/* Field at which page break to be set or unset */ -+ bool new_page_flag); /* should be TRUE to put a break */</PRE -+><P -+>The following requests allow you to move to different pages</P -+><P -+></P -+><UL -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_NEXT_PAGE</I -+></SPAN -+> Move to the next form page.</P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_PREV_PAGE</I -+></SPAN -+> Move to the previous -+form page.</P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_FIRST_PAGE</I -+></SPAN -+> Move to the first form page.</P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_LAST_PAGE</I -+></SPAN -+> Move to the last form page. </P -+></LI -+></UL -+><P -+>These requests treat the list as cyclic; that is, REQ_NEXT_PAGE from the -+last page goes to the first, and REQ_PREV_PAGE from the first page goes to -+the last.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="INTERFIELDNAVREQ" -+>18.6.2. Inter-Field Navigation Requests</A -+></H4 -+><P -+>These requests handle navigation between fields on the same page.</P -+><P -+></P -+><UL -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_NEXT_FIELD</I -+></SPAN -+> -+ Move to next field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_PREV_FIELD</I -+></SPAN -+> -+ Move to previous field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_FIRST_FIELD</I -+></SPAN -+> -+ Move to the first field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_LAST_FIELD</I -+></SPAN -+> -+ Move to the last field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SNEXT_FIELD</I -+></SPAN -+> -+ Move to sorted next field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SPREV_FIELD</I -+></SPAN -+> -+ Move to sorted previous field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SFIRST_FIELD</I -+></SPAN -+> -+ Move to the sorted first field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SLAST_FIELD</I -+></SPAN -+> -+ Move to the sorted last field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_LEFT_FIELD</I -+></SPAN -+> -+ Move left to field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_RIGHT_FIELD</I -+></SPAN -+> -+ Move right to field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_UP_FIELD</I -+></SPAN -+> -+ Move up to field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_DOWN_FIELD</I -+></SPAN -+> -+ Move down to field. </P -+></LI -+></UL -+><P -+>These requests treat the list of fields on a page as cyclic; that is, -+REQ_NEXT_FIELD from the last field goes to the first, and REQ_PREV_FIELD -+from the first field goes to the last. The order of the fields for these -+(and the REQ_FIRST_FIELD and REQ_LAST_FIELD requests) is simply the order of -+the field pointers in the form array (as set up by new_form() or -+set_form_fields()</P -+><P -+>It is also possible to traverse the fields as if they had been sorted in -+screen-position order, so the sequence goes left-to-right and top-to-bottom. -+To do this, use the second group of four sorted-movement requests.</P -+><P -+>Finally, it is possible to move between fields using visual directions up, -+down, right, and left. To accomplish this, use the third group of four -+requests. Note, however, that the position of a form for purposes of these -+requests is its upper-left corner.</P -+><P -+>For example, suppose you have a multi-line field B, and two single-line -+fields A and C on the same line with B, with A to the left of B and C to the -+right of B. A REQ_MOVE_RIGHT from A will go to B only if A, B, and C all -+share the same first line; otherwise it will skip over B to C.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="INTRAFIELDNAVREQ" -+>18.6.3. Intra-Field Navigation Requests</A -+></H4 -+><P -+>These requests drive movement of the edit cursor within the currently -+selected field.</P -+><P -+></P -+><UL -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_NEXT_CHAR</I -+></SPAN -+> -+ Move to next character. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_PREV_CHAR</I -+></SPAN -+> -+ Move to previous character. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_NEXT_LINE</I -+></SPAN -+> -+ Move to next line. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_PREV_LINE</I -+></SPAN -+> -+ Move to previous line. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_NEXT_WORD</I -+></SPAN -+> -+ Move to next word. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_PREV_WORD</I -+></SPAN -+> -+ Move to previous word. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_BEG_FIELD</I -+></SPAN -+> -+ Move to beginning of field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_END_FIELD</I -+></SPAN -+> -+ Move to end of field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_BEG_LINE</I -+></SPAN -+> -+ Move to beginning of line. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_END_LINE</I -+></SPAN -+> -+ Move to end of line. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_LEFT_CHAR</I -+></SPAN -+> -+ Move left in field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_RIGHT_CHAR</I -+></SPAN -+> -+ Move right in field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_UP_CHAR</I -+></SPAN -+> -+ Move up in field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_DOWN_CHAR</I -+></SPAN -+> -+ Move down in field. </P -+></LI -+></UL -+><P -+>Each word is separated from the previous and next characters by whitespace. -+The commands to move to beginning and end of line or field look for the -+first or last non-pad character in their ranges.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="SCROLLREQ" -+>18.6.4. Scrolling Requests</A -+></H4 -+><P -+>Fields that are dynamic and have grown and fields explicitly created with -+offscreen rows are scrollable. One-line fields scroll horizontally; -+multi-line fields scroll vertically. Most scrolling is triggered by editing -+and intra-field movement (the library scrolls the field to keep the cursor -+visible). It is possible to explicitly request scrolling with the following -+requests:</P -+><P -+></P -+><UL -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_FLINE</I -+></SPAN -+> -+ Scroll vertically forward a line. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_BLINE</I -+></SPAN -+> -+ Scroll vertically backward a line. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_FPAGE</I -+></SPAN -+> -+ Scroll vertically forward a page. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_BPAGE</I -+></SPAN -+> -+ Scroll vertically backward a page. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_FHPAGE</I -+></SPAN -+> -+ Scroll vertically forward half a page. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_BHPAGE</I -+></SPAN -+> -+ Scroll vertically backward half a page. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_FCHAR</I -+></SPAN -+> -+ Scroll horizontally forward a character. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_BCHAR</I -+></SPAN -+> -+ Scroll horizontally backward a character. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_HFLINE</I -+></SPAN -+> -+ Scroll horizontally one field width forward. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_HBLINE</I -+></SPAN -+> -+ Scroll horizontally one field width backward. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_HFHALF</I -+></SPAN -+> -+ Scroll horizontally one half field width forward. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_SCR_HBHALF</I -+></SPAN -+> -+ Scroll horizontally one half field width backward. </P -+></LI -+></UL -+><P -+>For scrolling purposes, a page of a field is the height of its visible part.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="EDITREQ" -+>18.6.5. Editing Requests</A -+></H4 -+><P -+>When you pass the forms driver an ASCII character, it is treated as a -+request to add the character to the field's data buffer. Whether this is an -+insertion or a replacement depends on the field's edit mode (insertion is -+the default.</P -+><P -+>The following requests support editing the field and changing the edit mode:</P -+><P -+></P -+><UL -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_INS_MODE</I -+></SPAN -+> -+ Set insertion mode. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_OVL_MODE</I -+></SPAN -+> -+ Set overlay mode. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_NEW_LINE</I -+></SPAN -+> -+ New line request (see below for explanation). </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_INS_CHAR</I -+></SPAN -+> -+ Insert space at character location. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_INS_LINE</I -+></SPAN -+> -+ Insert blank line at character location. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_DEL_CHAR</I -+></SPAN -+> -+ Delete character at cursor. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_DEL_PREV</I -+></SPAN -+> -+ Delete previous word at cursor. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_DEL_LINE</I -+></SPAN -+> -+ Delete line at cursor. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_DEL_WORD</I -+></SPAN -+> -+ Delete word at cursor. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_CLR_EOL</I -+></SPAN -+> -+ Clear to end of line. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_CLR_EOF</I -+></SPAN -+> -+ Clear to end of field. </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_CLR_FIELD</I -+></SPAN -+> -+ Clear entire field. </P -+></LI -+></UL -+><P -+>The behavior of the REQ_NEW_LINE and REQ_DEL_PREV requests is complicated -+and partly controlled by a pair of forms options. The special cases are -+triggered when the cursor is at the beginning of a field, or on the last -+line of the field.</P -+><P -+>First, we consider REQ_NEW_LINE:</P -+><P -+>The normal behavior of REQ_NEW_LINE in insert mode is to break the current -+line at the position of the edit cursor, inserting the portion of the -+current line after the cursor as a new line following the current and moving -+the cursor to the beginning of that new line (you may think of this as -+inserting a newline in the field buffer).</P -+><P -+>The normal behavior of REQ_NEW_LINE in overlay mode is to clear the current -+line from the position of the edit cursor to end of line. The cursor is then -+moved to the beginning of the next line.</P -+><P -+>However, REQ_NEW_LINE at the beginning of a field, or on the last line of a -+field, instead does a REQ_NEXT_FIELD. O_NL_OVERLOAD option is off, this -+special action is disabled.</P -+><P -+>Now, let us consider REQ_DEL_PREV:</P -+><P -+>The normal behavior of REQ_DEL_PREV is to delete the previous character. If -+insert mode is on, and the cursor is at the start of a line, and the text on -+that line will fit on the previous one, it instead appends the contents of -+the current line to the previous one and deletes the current line (you may -+think of this as deleting a newline from the field buffer).</P -+><P -+>However, REQ_DEL_PREV at the beginning of a field is instead treated as a -+REQ_PREV_FIELD.</P -+><P -+>If the O_BS_OVERLOAD option is off, this special action is disabled and the -+forms driver just returns E_REQUEST_DENIED.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="ORDERREQ" -+>18.6.6. Order Requests</A -+></H4 -+><P -+>If the type of your field is ordered, and has associated functions for -+getting the next and previous values of the type from a given value, there -+are requests that can fetch that value into the field buffer:</P -+><P -+></P -+><UL -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_NEXT_CHOICE</I -+></SPAN -+> -+ Place the successor value of the current value in the buffer. -+ </P -+></LI -+><LI -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>REQ_PREV_CHOICE</I -+></SPAN -+> -+ Place the predecessor value of the current value in the buffer. -+ </P -+></LI -+></UL -+><P -+>Of the built-in field types, only TYPE_ENUM has built-in successor and -+predecessor functions. When you define a field type of your own (see Custom -+Validation Types), you can associate our own ordering functions.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="APPLICCOMMANDS" -+>18.6.7. Application Commands</A -+></H4 -+><P -+>Form requests are represented as integers above the curses value greater than -+KEY_MAX and less than or equal to the constant MAX_COMMAND. A value within this -+range gets ignored by form_driver(). So this can be used for any purpose by the -+application. It can be treated as an application specific action and take -+corresponding action.</P -+></DIV -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="TOOLS" -+>19. Tools and Widget Libraries</A -+></H2 -+><P -+> -+Now that you have seen the capabilities of ncurses and its sister libraries, you -+are rolling your sleeves up and gearing for a project that heavily manipulates -+screen. But wait.. It can be pretty difficult to write and maintain complex GUI -+widgets in plain ncurses or even with the additional libraries. There are some -+ready-to-use tools and widget libraries that can be used instead of writing your -+own widgets. You can use some of them, get ideas from the code, or even extend -+them.</P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="CDK" -+>19.1. CDK (Curses Development Kit)</A -+></H3 -+><P -+>In the author's words </P -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+> -+CDK stands for 'Curses Development Kit' and it currently contains 21 ready -+to use widgets which facilitate the speedy development of full screen -+curses programs. </I -+></SPAN -+></P -+><P -+>The kit provides some useful widgets, which can be used in your programs -+directly. It's pretty well written and the documentation is very good. The -+examples in the examples directory can be a good place to start for beginners. -+The CDK can be downloaded from <A -+HREF="http://invisible-island.net/cdk/" -+TARGET="_top" -+>http://invisible-island.net/cdk/</A -+> -+. Follow the instructions in -+README file to install it.</P -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="WIDGETLIST" -+>19.1.1. Widget List</A -+></H4 -+><P -+>The following is the list of widgets provided with cdk and their description.</P -+><PRE -+CLASS="PROGRAMLISTING" -+>Widget Type Quick Description - =========================================================================== - Alphalist Allows a user to select from a list of words, with - the ability to narrow the search list by typing in a -@@ -6199,215 +8368,346 @@ - dates and phone numbers. - Viewer This is a file/information viewer. Very useful - when you need to display loads of information. --===========================================================================</font> --</pre></td> --</tr> --</table> --<p>A few of the widgets are modified by Thomas Dickey in recent --versions.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="CDKATTRACT" id="CDKATTRACT">19.1.2. Some --Attractive Features</a></h4> --<p>Apart from making our life easier with readily usable widgets, --cdk solves one frustrating problem with printing multi colored --strings, justified strings elegantly. Special formatting tags can --be embedded in the strings which are passed to CDK functions. For --Example</p> --<p>If the string</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000">"&lt;/B/1&gt;This line should have a yellow foreground and a blue --background.&lt;!1&gt;"</font> --</pre></td> --</tr> --</table> --<p>given as a parameter to newCDKLabel(), it prints the line with --yellow foreground and blue background. There are other tags --available for justifying string, embedding special drawing --characters etc.. Please refer to the man page cdk_display(3X) for --details. The man page explains the usage with nice examples.</p> --</div> --<div class="SECT3"> --<hr> --<h4 class="SECT3"><a name="CDKCONCLUSION" id= --"CDKCONCLUSION">19.1.3. Conclusion</a></h4> --<p>All in all, CDK is a well-written package of widgets, which if --used properly can form a strong frame work for developing complex --GUI.</p> --</div> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="DIALOG" id="DIALOG">19.2. The --dialog</a></h3> --<p>Long long ago, in September 1994, when few people knew linux, --Jeff Tranter wrote an <a href= --"http://www2.linuxjournal.com/lj-issues/issue5/2807.html" target= --"_top">article</a> on dialog in Linux Journal. He starts the --article with these words..</p> --<p><em>Linux is based on the Unix operating system, but also --features a number of unique and useful kernel features and --application programs that often go beyond what is available under --Unix. One little-known gem is "dialog", a utility for creating --professional-looking dialog boxes from within shell scripts. This --article presents a tutorial introduction to the dialog utility, and --shows examples of how and where it can be used</em></p> --<p>As he explains, dialog is a real gem in making --professional-looking dialog boxes with ease. It creates a variety --of dialog boxes, menus, check lists etc.. It is usually installed --by default. If not, you can download it from <a href= --"http://invisible-island.net/dialog/" target="_top">Thomas --Dickey</a>'s site.</p> --<p>The above-mentioned article gives a very good overview of its --uses and capabilites. The man page has more details. It can be used --in variety of situations. One good example is building of linux --kernel in text mode. Linux kernel uses a modified version of dialog --tailored for its needs.</p> --<p>dialog was initially designed to be used with shell scripts. If --you want to use its functionality in a c program, then you can use --libdialog. The documentation regarding this is sparse. Definitive --reference is the dialog.h header file which comes with the library. --You may need to hack here and there to get the required output. The --source is easily customizable. I have used it on a number of --occasions by modifying the code.</p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="PERLCURSES" id="PERLCURSES">19.3. Perl --Curses Modules CURSES::FORM and CURSES::WIDGETS</a></h3> --<p>The perl module Curses, Curses::Form and Curses::Widgets give --access to curses from perl. If you have curses and basic perl is --installed, you can get these modules from <a href= --"http://www.cpan.org/modules/01modules.index.html" target= --"_top">CPAN All Modules page</a>. Get the three zipped modules in --the Curses category. Once installed you can use these modules from --perl scripts like any other module. For more information on perl --modules see perlmod man page. The above modules come with good --documentation and they have some demo scripts to test the --functionality. Though the widgets provided are very rudimentary, --these modules provide good access to curses library from perl.</p> --<p>Some of my code examples are converted to perl by Anuradha --Ratnaweera and they are available in the <var class= --"LITERAL">perl</var> directory.</p> --<p>For more information see man pages Curses(3) , Curses::Form(3) --and Curses::Widgets(3). These pages are installed only when the --above modules are acquired and installed.</p> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="JUSTFORFUN" id="JUSTFORFUN">20. Just For --Fun !!!</a></h2> --<p>This section contains few programs written by me just for fun. --They don't signify a better programming practice or the best way of --using ncurses. They are provided here so as to allow beginners to --get ideas and add more programs to this section. If you have --written a couple of nice, simple programs in curses and want them --to included here, contact <a href="mailto:ppadala@gmail.com" --target="_top">me</a>.</p> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="GAMEOFLIFE" id="GAMEOFLIFE">20.1. The --Game of Life</a></h3> --<p>Game of life is a wonder of math. In <a href= --"http://www.math.com/students/wonders/life/life.html" target= --"_top">Paul Callahan</a>'s words</p> --<table border="0" bgcolor="#E0E0E0" width="100%"> --<tr> --<td> --<pre class="PROGRAMLISTING"> --<font color= --"#000000"><em>The Game of Life (or simply Life) is not a game in the conventional sense. There -+===========================================================================</PRE -+><P -+>A few of the widgets are modified by Thomas Dickey in recent versions.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="CDKATTRACT" -+>19.1.2. Some Attractive Features</A -+></H4 -+><P -+>Apart from making our life easier with readily usable widgets, cdk solves one -+frustrating problem with printing multi colored strings, justified strings -+elegantly. Special formatting tags can be embedded in the strings which are -+passed to CDK functions. For Example</P -+><P -+>If the string</P -+><PRE -+CLASS="PROGRAMLISTING" -+>"&lt;/B/1&gt;This line should have a yellow foreground and a blue -+background.&lt;!1&gt;"</PRE -+><P -+>given as a parameter to newCDKLabel(), it prints the line with yellow foreground -+and blue background. There are other tags available for justifying string, -+embedding special drawing characters etc.. Please refer to the man page -+cdk_display(3X) for details. The man page explains the usage with nice examples.</P -+></DIV -+><DIV -+CLASS="SECT3" -+><HR><H4 -+CLASS="SECT3" -+><A -+NAME="CDKCONCLUSION" -+>19.1.3. Conclusion</A -+></H4 -+><P -+>All in all, CDK is a well-written package of widgets, which if used properly can -+form a strong frame work for developing complex GUI.</P -+></DIV -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="DIALOG" -+>19.2. The dialog</A -+></H3 -+><P -+>Long long ago, in September 1994, when few people knew linux, Jeff Tranter wrote -+an <A -+HREF="http://www2.linuxjournal.com/lj-issues/issue5/2807.html" -+TARGET="_top" -+>article</A -+> on dialog in Linux Journal. He starts the article with these words..</P -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>Linux is based on the Unix operating system, but also features a number of -+unique and useful kernel features and application programs that often go beyond -+what is available under Unix. One little-known gem is "dialog", a utility for -+creating professional-looking dialog boxes from within shell scripts. This -+article presents a tutorial introduction to the dialog utility, and shows -+examples of how and where it can be used</I -+></SPAN -+></P -+><P -+> -+As he explains, dialog is a real gem in making professional-looking dialog boxes -+with ease. It creates a variety of dialog boxes, menus, check lists etc.. It is -+usually installed by default. If not, you can download it from <A -+HREF="http://invisible-island.net/dialog/" -+TARGET="_top" -+>Thomas Dickey</A -+>'s site. </P -+><P -+>The above-mentioned article gives a very good overview of its uses and -+capabilites. The man page has more details. It can be used in variety of -+situations. One good example is building of linux kernel in text mode. Linux -+kernel uses a modified version of dialog tailored for its needs. </P -+><P -+>dialog was initially designed to be used with shell scripts. If you want to use -+its functionality in a c program, then you can use libdialog. The documentation -+regarding this is sparse. Definitive reference is the dialog.h header file which -+comes with the library. You may need to hack here and there to get the required -+output. The source is easily customizable. I have used it on a number of -+occasions by modifying the code.</P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="PERLCURSES" -+>19.3. Perl Curses Modules CURSES::FORM and CURSES::WIDGETS</A -+></H3 -+><P -+>The perl module Curses, Curses::Form and Curses::Widgets give access to curses -+from perl. If you have curses and basic perl is installed, you can get these -+modules from <A -+HREF="http://www.cpan.org/modules/01modules.index.html" -+TARGET="_top" -+> CPAN -+All Modules page</A -+>. Get the three zipped modules in the Curses category. -+Once installed you can use these modules from perl scripts like any other -+module. For more information on perl modules see perlmod man page. The above -+modules come with good documentation and they have some demo scripts to test the -+functionality. Though the widgets provided are very rudimentary, these modules -+provide good access to curses library from perl.</P -+><P -+>Some of my code examples are converted to perl by Anuradha Ratnaweera and they -+are available in the <TT -+CLASS="LITERAL" -+>perl</TT -+> directory.</P -+><P -+> -+For more information see man pages Curses(3) , Curses::Form(3) and -+Curses::Widgets(3). These pages are installed only when the above modules are -+acquired and installed.</P -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="JUSTFORFUN" -+>20. Just For Fun !!!</A -+></H2 -+><P -+>This section contains few programs written by me just for fun. They don't -+signify a better programming practice or the best way of using ncurses. They are -+provided here so as to allow beginners to get ideas and add more programs to -+this section. If you have written a couple of nice, simple programs in curses -+and want them to included here, contact <A -+HREF="mailto:ppadala@gmail.com" -+TARGET="_top" -+>me</A -+>.</P -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="GAMEOFLIFE" -+>20.1. The Game of Life</A -+></H3 -+><P -+>Game of life is a wonder of math. In -+<A -+HREF="http://www.math.com/students/wonders/life/life.html" -+TARGET="_top" -+>Paul Callahan</A -+>'s words</P -+><PRE -+CLASS="PROGRAMLISTING" -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>The Game of Life (or simply Life) is not a game in the conventional sense. There - are no players, and no winning or losing. Once the "pieces" are placed in the - starting position, the rules determine everything that happens later. - Nevertheless, Life is full of surprises! In most cases, it is impossible to look - at a starting position (or pattern) and see what will happen in the future. The --only way to find out is to follow the rules of the game.</em></font> --</pre></td> --</tr> --</table> --<p>This program starts with a simple inverted U pattern and shows --how wonderful life works. There is a lot of room for improvement in --the program. You can let the user enter pattern of his choice or --even take input from a file. You can also change rules and play --with a lot of variations. Search on <a href="http://www.google.com" --target="_top">google</a> for interesting information on game of --life.</p> --<p><em>File Path: JustForFun/life.c</em></p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="MAGIC" id="MAGIC">20.2. Magic --Square</a></h3> --<p>Magic Square, another wonder of math, is very simple to --understand but very difficult to make. In a magic square sum of the --numbers in each row, each column is equal. Even diagnol sum can be --equal. There are many variations which have special properties.</p> --<p>This program creates a simple magic square of odd order.</p> --<p><em>File Path: JustForFun/magic.c</em></p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="HANOI" id="HANOI">20.3. Towers of --Hanoi</a></h3> --<p>The famous towers of hanoi solver. The aim of the game is to --move the disks on the first peg to last peg, using middle peg as a --temporary stay. The catch is not to place a larger disk over a --small disk at any time.</p> --<p><em>File Path: JustForFun/hanoi.c</em></p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="QUEENS" id="QUEENS">20.4. Queens --Puzzle</a></h3> --<p>The objective of the famous N-Queen puzzle is to put N queens on --a N X N chess board without attacking each other.</p> --<p>This program solves it with a simple backtracking technique.</p> --<p><em>File Path: JustForFun/queens.c</em></p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="SHUFFLE" id="SHUFFLE">20.5. --Shuffle</a></h3> --<p>A fun game, if you have time to kill.</p> --<p><em>File Path: JustForFun/shuffle.c</em></p> --</div> --<div class="SECT2"> --<hr> --<h3 class="SECT2"><a name="TT" id="TT">20.6. Typing Tutor</a></h3> --<p>A simple typing tutor, I created more out of need than for ease --of use. If you know how to put your fingers correctly on the --keyboard, but lack practice, this can be helpful.</p> --<p><em>File Path: JustForFun/tt.c</em></p> --</div> --</div> --<div class="SECT1"> --<hr> --<h2 class="SECT1"><a name="REF" id="REF">21. References</a></h2> --<ul> --<li> --<p>NCURSES man pages</p> --</li> --<li> --<p>NCURSES FAQ at <a href= --"http://invisible-island.net/ncurses/ncurses.faq.html" target= --"_top">http://invisible-island.net/ncurses/ncurses.faq.html</a></p> --</li> --<li> --<p>Writing programs with NCURSES by Eric Raymond and Zeyd M. --Ben-Halim at <a href= --"http://invisible-island.net/ncurses/ncurses-intro.html" target= --"_top">http://invisible-island.net/ncurses/ncurses-intro.html</a> - --somewhat obsolete. I was inspired by this document and the --structure of this HOWTO follows from the original document</p> --</li> --</ul> --</div> --</div> --</body> --</html> -+only way to find out is to follow the rules of the game.</I -+></SPAN -+></PRE -+><P -+>This program starts with a simple inverted U pattern and shows how wonderful -+life works. There is a lot of room for improvement in the program. You can let -+the user enter pattern of his choice or even take input from a file. You can -+also change rules and play with a lot of variations. Search on <A -+HREF="http://www.google.com" -+TARGET="_top" -+>google</A -+> for interesting information on game -+of life.</P -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>File Path: JustForFun/life.c</I -+></SPAN -+></P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="MAGIC" -+>20.2. Magic Square</A -+></H3 -+><P -+>Magic Square, another wonder of math, is very simple to understand but very -+difficult to make. In a magic square sum of the numbers in each row, each column -+is equal. Even diagnol sum can be equal. There are many variations which have -+special properties.</P -+><P -+>This program creates a simple magic square of odd order.</P -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>File Path: JustForFun/magic.c</I -+></SPAN -+></P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="HANOI" -+>20.3. Towers of Hanoi</A -+></H3 -+><P -+>The famous towers of hanoi solver. The aim of the game is to move the disks on -+the first peg to last peg, using middle peg as a temporary stay. The catch is -+not to place a larger disk over a small disk at any time.</P -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>File Path: JustForFun/hanoi.c</I -+></SPAN -+></P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="QUEENS" -+>20.4. Queens Puzzle</A -+></H3 -+><P -+>The objective of the famous N-Queen puzzle is to put N queens on a N X N chess -+board without attacking each other. </P -+><P -+>This program solves it with a simple backtracking technique.</P -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>File Path: JustForFun/queens.c</I -+></SPAN -+></P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="SHUFFLE" -+>20.5. Shuffle</A -+></H3 -+><P -+>A fun game, if you have time to kill. </P -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>File Path: JustForFun/shuffle.c</I -+></SPAN -+></P -+></DIV -+><DIV -+CLASS="SECT2" -+><HR><H3 -+CLASS="SECT2" -+><A -+NAME="TT" -+>20.6. Typing Tutor</A -+></H3 -+><P -+>A simple typing tutor, I created more out of need than for ease of use. If you -+know how to put your fingers correctly on the keyboard, but lack practice, this -+can be helpful. </P -+><P -+><SPAN -+CLASS="emphasis" -+><I -+CLASS="EMPHASIS" -+>File Path: JustForFun/tt.c</I -+></SPAN -+></P -+></DIV -+></DIV -+><DIV -+CLASS="SECT1" -+><HR><H2 -+CLASS="SECT1" -+><A -+NAME="REF" -+>21. References</A -+></H2 -+><P -+></P -+><UL -+><LI -+><P -+>NCURSES man pages </P -+></LI -+><LI -+><P -+>NCURSES FAQ at <A -+HREF="http://invisible-island.net/ncurses/ncurses.faq.html" -+TARGET="_top" -+>http://invisible-island.net/ncurses/ncurses.faq.html</A -+> -+ </P -+></LI -+><LI -+><P -+>Writing programs with NCURSES by Eric Raymond and Zeyd M. -+Ben-Halim at -+<A -+HREF="http://invisible-island.net/ncurses/ncurses-intro.html" -+TARGET="_top" -+>http://invisible-island.net/ncurses/ncurses-intro.html</A -+> - somewhat -+obsolete. I was inspired by this document and the structure of this HOWTO -+follows from the original document</P -+></LI -+></UL -+></DIV -+></DIV -+></BODY -+></HTML -+> -\ Kein Zeilenumbruch am Dateiende. -diff -Naur ncurses-5.9/doc/ncurses-intro.doc ncurses-5.9.patch/doc/ncurses-intro.doc ---- ncurses-5.9/doc/ncurses-intro.doc 2007-03-04 00:45:04.000000000 +0100 -+++ ncurses-5.9.patch/doc/ncurses-intro.doc 2014-09-01 16:33:22.337792091 +0200 -@@ -333,6 +333,7 @@ - - Here is a sample program to motivate the discussion: - #include <curses.h> -+#include <curses.h> - #include <signal.h> - - static void finish(int sig); -diff -Naur ncurses-5.9/form/fld_arg.c ncurses-5.9.patch/form/fld_arg.c ---- ncurses-5.9/form/fld_arg.c 2010-01-23 22:14:35.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_arg.c 2014-09-01 16:33:22.337792091 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_arg.c,v 1.12 2010/01/23 21:14:35 tom Exp $") -+MODULE_ID("$Id: fld_arg.c,v 1.13 2012/06/10 00:27:49 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -71,7 +71,7 @@ - - if (typ != 0 && make_arg != (void *)0) - { -- typ->status |= _HAS_ARGS; -+ SetStatus(typ, _HAS_ARGS); - typ->makearg = make_arg; - typ->copyarg = copy_arg; - typ->freearg = free_arg; -diff -Naur ncurses-5.9/form/fld_def.c ncurses-5.9.patch/form/fld_def.c ---- ncurses-5.9/form/fld_def.c 2010-01-23 22:14:35.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_def.c 2014-09-01 16:33:22.337792091 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_def.c,v 1.38 2010/01/23 21:14:35 tom Exp $") -+MODULE_ID("$Id: fld_def.c,v 1.40 2012/03/11 00:37:16 tom Exp $") - - /* this can't be readonly */ - static FIELD default_field = -@@ -65,8 +65,7 @@ - NCURSES_FIELD_EXTENSION - }; - --NCURSES_EXPORT_VAR(FIELD *) --_nc_Default_Field = &default_field; -+NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field = &default_field; - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -186,10 +185,12 @@ - { - if ((typ->status & _LINKED_TYPE) != 0) - { -- assert(argp != 0); -- _nc_Free_Argument(typ->left, argp->left); -- _nc_Free_Argument(typ->right, argp->right); -- free(argp); -+ if (argp != 0) -+ { -+ _nc_Free_Argument(typ->left, argp->left); -+ _nc_Free_Argument(typ->right, argp->right); -+ free(argp); -+ } - } - else - { -@@ -293,14 +294,14 @@ - { - T((T_CREATE("field %p"), (void *)New_Field)); - *New_Field = default_field; -- New_Field->rows = rows; -- New_Field->cols = cols; -+ New_Field->rows = (short) rows; -+ New_Field->cols = (short) cols; - New_Field->drows = rows + nrow; - New_Field->dcols = cols; -- New_Field->frow = frow; -- New_Field->fcol = fcol; -+ New_Field->frow = (short) frow; -+ New_Field->fcol = (short) fcol; - New_Field->nrow = nrow; -- New_Field->nbuf = nbuf; -+ New_Field->nbuf = (short) nbuf; - New_Field->link = New_Field; - - #if USE_WIDEC_SUPPORT -diff -Naur ncurses-5.9/form/fld_dup.c ncurses-5.9.patch/form/fld_dup.c ---- ncurses-5.9/form/fld_dup.c 2010-01-23 22:14:35.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_dup.c 2014-09-01 16:33:22.337792091 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_dup.c,v 1.13 2010/01/23 21:14:35 tom Exp $") -+MODULE_ID("$Id: fld_dup.c,v 1.14 2012/03/11 00:37:16 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -60,8 +60,8 @@ - { - T((T_CREATE("field %p"), (void *)New_Field)); - *New_Field = *_nc_Default_Field; -- New_Field->frow = frow; -- New_Field->fcol = fcol; -+ New_Field->frow = (short) frow; -+ New_Field->fcol = (short) fcol; - New_Field->link = New_Field; - New_Field->rows = field->rows; - New_Field->cols = field->cols; -diff -Naur ncurses-5.9/form/fld_ftchoice.c ncurses-5.9.patch/form/fld_ftchoice.c ---- ncurses-5.9/form/fld_ftchoice.c 2010-01-23 22:14:35.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_ftchoice.c 2014-09-01 16:33:22.337792091 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_ftchoice.c,v 1.12 2010/01/23 21:14:35 tom Exp $") -+MODULE_ID("$Id: fld_ftchoice.c,v 1.13 2012/06/10 00:27:49 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -56,7 +56,7 @@ - if (!typ || !next_choice || !prev_choice) - RETURN(E_BAD_ARGUMENT); - -- typ->status |= _HAS_CHOICE; -+ SetStatus(typ, _HAS_CHOICE); - #if NCURSES_INTEROP_FUNCS - typ->enum_next.onext = next_choice; - typ->enum_prev.oprev = prev_choice; -diff -Naur ncurses-5.9/form/fld_ftlink.c ncurses-5.9.patch/form/fld_ftlink.c ---- ncurses-5.9/form/fld_ftlink.c 2010-01-23 22:14:35.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_ftlink.c 2014-09-01 16:33:22.337792091 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_ftlink.c,v 1.14 2010/01/23 21:14:35 tom Exp $") -+MODULE_ID("$Id: fld_ftlink.c,v 1.15 2012/06/10 00:27:49 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -62,11 +62,11 @@ - { - T((T_CREATE("fieldtype %p"), (void *)nftyp)); - *nftyp = *_nc_Default_FieldType; -- nftyp->status |= _LINKED_TYPE; -+ SetStatus(nftyp, _LINKED_TYPE); - if ((type1->status & _HAS_ARGS) || (type2->status & _HAS_ARGS)) -- nftyp->status |= _HAS_ARGS; -+ SetStatus(nftyp, _HAS_ARGS); - if ((type1->status & _HAS_CHOICE) || (type2->status & _HAS_CHOICE)) -- nftyp->status |= _HAS_CHOICE; -+ SetStatus(nftyp, _HAS_CHOICE); - nftyp->left = type1; - nftyp->right = type2; - type1->ref++; -diff -Naur ncurses-5.9/form/fld_just.c ncurses-5.9.patch/form/fld_just.c ---- ncurses-5.9/form/fld_just.c 2010-01-23 22:14:35.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_just.c 2014-09-01 16:33:22.338792092 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_just.c,v 1.12 2010/01/23 21:14:35 tom Exp $") -+MODULE_ID("$Id: fld_just.c,v 1.13 2012/03/11 00:37:16 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -59,7 +59,7 @@ - Normalize_Field(field); - if (field->just != just) - { -- field->just = just; -+ field->just = (short) just; - res = _nc_Synchronize_Attributes(field); - } - else -diff -Naur ncurses-5.9/form/fld_link.c ncurses-5.9.patch/form/fld_link.c ---- ncurses-5.9/form/fld_link.c 2010-01-23 22:14:35.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_link.c 2014-09-01 16:33:22.338792092 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_link.c,v 1.12 2010/01/23 21:14:35 tom Exp $") -+MODULE_ID("$Id: fld_link.c,v 1.13 2012/03/11 00:37:16 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -61,8 +61,8 @@ - { - T((T_CREATE("field %p"), (void *)New_Field)); - *New_Field = *_nc_Default_Field; -- New_Field->frow = frow; -- New_Field->fcol = fcol; -+ New_Field->frow = (short) frow; -+ New_Field->fcol = (short) fcol; - - New_Field->link = field->link; - field->link = New_Field; -diff -Naur ncurses-5.9/form/fld_max.c ncurses-5.9.patch/form/fld_max.c ---- ncurses-5.9/form/fld_max.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_max.c 2014-09-01 16:33:22.338792092 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_max.c,v 1.10 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: fld_max.c,v 1.13 2013/08/24 22:59:28 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -62,13 +62,13 @@ - RETURN(E_BAD_ARGUMENT); - } - field->maxgrow = maxgrow; -- field->status &= ~_MAY_GROW; -- if (!(field->opts & O_STATIC)) -+ ClrStatus(field, _MAY_GROW); -+ if (!((unsigned)field->opts & O_STATIC)) - { - if ((maxgrow == 0) || - (single_line_field && (field->dcols < maxgrow)) || - (!single_line_field && (field->drows < maxgrow))) -- field->status |= _MAY_GROW; -+ SetStatus(field, _MAY_GROW); - } - } - RETURN(E_OK); -diff -Naur ncurses-5.9/form/fld_move.c ncurses-5.9.patch/form/fld_move.c ---- ncurses-5.9/form/fld_move.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_move.c 2014-09-01 16:33:22.338792092 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_move.c,v 1.10 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: fld_move.c,v 1.11 2012/03/11 00:37:16 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -56,8 +56,8 @@ - if (field->form) - RETURN(E_CONNECTED); - -- field->frow = frow; -- field->fcol = fcol; -+ field->frow = (short) frow; -+ field->fcol = (short) fcol; - RETURN(E_OK); - } - -diff -Naur ncurses-5.9/form/fld_page.c ncurses-5.9.patch/form/fld_page.c ---- ncurses-5.9/form/fld_page.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_page.c 2014-09-01 16:33:22.338792092 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_page.c,v 1.10 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: fld_page.c,v 1.12 2012/06/10 00:12:47 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -54,9 +54,9 @@ - RETURN(E_CONNECTED); - - if (new_page_flag) -- field->status |= _NEWPAGE; -+ SetStatus(field, _NEWPAGE); - else -- field->status &= ~_NEWPAGE; -+ ClrStatus(field, _NEWPAGE); - - RETURN(E_OK); - } -diff -Naur ncurses-5.9/form/fld_stat.c ncurses-5.9.patch/form/fld_stat.c ---- ncurses-5.9/form/fld_stat.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/fld_stat.c 2014-09-01 16:33:22.338792092 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fld_stat.c,v 1.12 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: fld_stat.c,v 1.14 2012/06/10 00:13:09 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -51,9 +51,9 @@ - Normalize_Field(field); - - if (status) -- field->status |= _CHANGED; -+ SetStatus(field, _CHANGED); - else -- field->status &= ~_CHANGED; -+ ClrStatus(field, _CHANGED); - - RETURN(E_OK); - } -diff -Naur ncurses-5.9/form/form.h ncurses-5.9.patch/form/form.h ---- ncurses-5.9/form/form.h 2009-11-07 20:31:11.000000000 +0100 -+++ ncurses-5.9.patch/form/form.h 2014-09-01 16:33:22.338792092 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -30,7 +30,7 @@ - * Author: Juergen Pfeifer, 1995,1997 * - ****************************************************************************/ - --/* $Id: form.h,v 0.21 2009/11/07 19:31:11 tom Exp $ */ -+/* $Id: form.h,v 0.23 2013/12/07 17:57:32 tom Exp $ */ - - #ifndef FORM_H - #define FORM_H -@@ -396,6 +396,9 @@ - extern NCURSES_EXPORT(int) unpost_form (FORM *); - extern NCURSES_EXPORT(int) pos_form_cursor (FORM *); - extern NCURSES_EXPORT(int) form_driver (FORM *,int); -+# if NCURSES_WIDECHAR -+extern NCURSES_EXPORT(int) form_driver_w (FORM *,int,wchar_t); -+# endif - extern NCURSES_EXPORT(int) set_form_userptr (FORM *,void *); - extern NCURSES_EXPORT(int) set_form_opts (FORM *,Form_Options); - extern NCURSES_EXPORT(int) form_opts_on (FORM *,Form_Options); -diff -Naur ncurses-5.9/form/form.priv.h ncurses-5.9.patch/form/form.priv.h ---- ncurses-5.9/form/form.priv.h 2009-11-07 22:26:43.000000000 +0100 -+++ ncurses-5.9.patch/form/form.priv.h 2014-09-01 16:33:22.338792092 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -30,11 +30,11 @@ - * Author: Juergen Pfeifer, 1995,1997 * - ****************************************************************************/ - --/* $Id: form.priv.h,v 0.32 2009/11/07 21:26:43 tom Exp $ */ -+/* $Id: form.priv.h,v 0.33 2012/03/11 00:37:46 tom Exp $ */ - - #ifndef FORM_PRIV_H - #define FORM_PRIV_H 1 -- -+/* *INDENT-OFF*/ - #include "curses.priv.h" - #include "mf_common.h" - -@@ -119,7 +119,7 @@ - - /* Calculate the total size of all buffers for this field */ - #define Total_Buffer_Size(field) \ -- ( (Buffer_Length(field) + 1) * (1+(field)->nbuf) * sizeof(FIELD_CELL) ) -+ ( (size_t)(Buffer_Length(field) + 1) * (size_t)(1+(field)->nbuf) * sizeof(FIELD_CELL) ) - - /* Logic to determine whether or not a field is single lined */ - #define Single_Line_Field(field) \ -@@ -293,5 +293,6 @@ - result = ((*buffer || (l < width)) ? FALSE : TRUE); \ - } - #endif -+/* *INDENT-ON*/ - - #endif /* FORM_PRIV_H */ -diff -Naur ncurses-5.9/form/frm_data.c ncurses-5.9.patch/form/frm_data.c ---- ncurses-5.9/form/frm_data.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/frm_data.c 2014-09-01 16:33:22.338792092 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: frm_data.c,v 1.15 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: frm_data.c,v 1.16 2013/08/24 22:44:05 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -103,7 +103,7 @@ - } - } - #else -- cell = winch(w); -+ cell = (FIELD_CELL) winch(w); - if (ChCharOf(cell) != ChCharOf(pad)) - { - result = FALSE; -diff -Naur ncurses-5.9/form/frm_def.c ncurses-5.9.patch/form/frm_def.c ---- ncurses-5.9/form/frm_def.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/frm_def.c 2014-09-01 16:33:22.339792094 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: frm_def.c,v 1.25 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: frm_def.c,v 1.26 2012/03/11 00:37:16 tom Exp $") - - /* this can't be readonly */ - static FORM default_form = -@@ -199,14 +199,14 @@ - for (j = 0; j < field_cnt; j++) - { - if (j == 0) -- pg->pmin = j; -+ pg->pmin = (short) j; - else - { - if (fields[j]->status & _NEWPAGE) - { -- pg->pmax = j - 1; -+ pg->pmax = (short) (j - 1); - pg++; -- pg->pmin = j; -+ pg->pmin = (short) j; - } - } - -@@ -214,14 +214,14 @@ - maximum_col_in_field = fields[j]->fcol + fields[j]->cols; - - if (form->rows < maximum_row_in_field) -- form->rows = maximum_row_in_field; -+ form->rows = (short) maximum_row_in_field; - if (form->cols < maximum_col_in_field) -- form->cols = maximum_col_in_field; -+ form->cols = (short) maximum_col_in_field; - } - -- pg->pmax = field_cnt - 1; -- form->maxfield = field_cnt; -- form->maxpage = page_nr; -+ pg->pmax = (short) (field_cnt - 1); -+ form->maxfield = (short) field_cnt; -+ form->maxpage = (short) page_nr; - - /* Sort fields on form pages */ - for (page_nr = 0; page_nr < form->maxpage; page_nr++) -@@ -230,8 +230,8 @@ - - for (j = form->page[page_nr].pmin; j <= form->page[page_nr].pmax; j++) - { -- fields[j]->index = j; -- fields[j]->page = page_nr; -+ fields[j]->index = (short) j; -+ fields[j]->page = (short) page_nr; - fld = Insert_Field_By_Position(fields[j], fld); - } - if (fld) -diff -Naur ncurses-5.9/form/frm_driver.c ncurses-5.9.patch/form/frm_driver.c ---- ncurses-5.9/form/frm_driver.c 2010-05-01 23:11:43.000000000 +0200 -+++ ncurses-5.9.patch/form/frm_driver.c 2014-09-01 16:33:22.339792094 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: frm_driver.c,v 1.98 2010/05/01 21:11:43 tom Exp $") -+MODULE_ID("$Id: frm_driver.c,v 1.111 2014/03/08 22:08:20 Xin.Li Exp $") - - /*---------------------------------------------------------------------------- - This is the core module of the form library. It contains the majority -@@ -172,7 +172,7 @@ - instead of a derived window because it contains invisible parts. - This is true for non-public fields and for scrollable fields. */ - #define Has_Invisible_Parts(field) \ -- (!((field)->opts & O_PUBLIC) || \ -+ (!((unsigned)(field)->opts & O_PUBLIC) || \ - Is_Scroll_Field(field)) - - /* Logic to decide whether or not a field needs justification */ -@@ -180,21 +180,21 @@ - (((field)->just != NO_JUSTIFICATION) && \ - (Single_Line_Field(field)) && \ - (((field)->dcols == (field)->cols) && \ -- ((field)->opts & O_STATIC)) ) -+ ((unsigned)(field)->opts & O_STATIC))) - - /* Logic to determine whether or not a dynamic field may still grow */ - #define Growable(field) ((field)->status & _MAY_GROW) - - /* Macro to set the attributes for a fields window */ - #define Set_Field_Window_Attributes(field,win) \ --( wbkgdset((win),(chtype)((field)->pad | (field)->back)), \ -- (void) wattrset((win),(field)->fore) ) -+( wbkgdset((win),(chtype)((chtype)((field)->pad) | (field)->back)), \ -+ (void) wattrset((win), (int)(field)->fore) ) - - /* Logic to decide whether or not a field really appears on the form */ - #define Field_Really_Appears(field) \ - ((field->form) &&\ - (field->form->status & _POSTED) &&\ -- (field->opts & O_VISIBLE) &&\ -+ ((unsigned)field->opts & O_VISIBLE) &&\ - (field->page == field->form->curpage)) - - /* Logic to determine whether or not we are on the first position in the -@@ -601,8 +601,8 @@ - { - if (form->status & _WINDOW_MODIFIED) - { -- form->status &= ~_WINDOW_MODIFIED; -- form->status |= _FCHECK_REQUIRED; -+ ClrStatus(form, _WINDOW_MODIFIED); -+ SetStatus(form, _FCHECK_REQUIRED); - Window_To_Buffer(form, form->current); - wmove(form->w, form->currow, form->curcol); - } -@@ -653,7 +653,7 @@ - growth = Minimum(field->maxgrow - field->dcols, growth); - field->dcols += growth; - if (field->dcols == field->maxgrow) -- field->status &= ~_MAY_GROW; -+ ClrStatus(field, _MAY_GROW); - } - else - { -@@ -662,7 +662,7 @@ - growth = Minimum(field->maxgrow - field->drows, growth); - field->drows += growth; - if (field->drows == field->maxgrow) -- field->status &= ~_MAY_GROW; -+ ClrStatus(field, _MAY_GROW); - } - /* drows, dcols changed, so we get really the new buffer length */ - new_buflen = Buffer_Length(field); -@@ -674,7 +674,7 @@ - field->drows = old_drows; - if ((single_line_field && (field->dcols != field->maxgrow)) || - (!single_line_field && (field->drows != field->maxgrow))) -- field->status |= _MAY_GROW; -+ SetStatus(field, _MAY_GROW); - } - else - { -@@ -753,7 +753,7 @@ - (field->dcols != field->maxgrow)) || - (!single_line_field && - (field->drows != field->maxgrow))) -- field->status |= _MAY_GROW; -+ SetStatus(field, _MAY_GROW); - free(newbuf); - } - } -@@ -860,7 +860,7 @@ - field = form->current; - formwin = Get_Form_Window(form); - -- if (field->opts & O_PUBLIC) -+ if ((unsigned)field->opts & O_PUBLIC) - { - if (Is_Scroll_Field(field)) - { -@@ -897,19 +897,19 @@ - if (form->currow < form->toprow) - { - form->toprow = form->currow; -- field->status |= _NEWTOP; -+ SetStatus(field, _NEWTOP); - } - if (form->currow >= row_after_bottom) - { - form->toprow = form->currow - field->rows + 1; -- field->status |= _NEWTOP; -+ SetStatus(field, _NEWTOP); - } - if (field->status & _NEWTOP) - { - /* means we have to copy whole range */ - first_modified_row = form->toprow; - first_unmodified_row = first_modified_row + field->rows; -- field->status &= ~_NEWTOP; -+ ClrStatus(field, _NEWTOP); - } - else - { -@@ -1111,27 +1111,27 @@ - return E_SYSTEM_ERROR; - else - { -- if (field->opts & O_VISIBLE) -+ if ((unsigned)field->opts & O_VISIBLE) - { - Set_Field_Window_Attributes(field, win); - } - else - { -- (void)wattrset(win, WINDOW_ATTRS(fwin)); -+ (void)wattrset(win, (int)WINDOW_ATTRS(fwin)); - } - werase(win); - } - - if (!bEraseFlag) - { -- if (field->opts & O_PUBLIC) -+ if ((unsigned)field->opts & O_PUBLIC) - { - if (Justification_Allowed(field)) - Perform_Justification(field, win); - else - Buffer_To_Window(field, win); - } -- field->status &= ~_NEWTOP; -+ ClrStatus(field, _NEWTOP); - } - wsyncup(win); - delwin(win); -@@ -1170,18 +1170,18 @@ - form->currow = form->curcol = form->toprow = form->begincol = 0; - werase(form->w); - -- if ((field->opts & O_PUBLIC) && Justification_Allowed(field)) -+ if (((unsigned)field->opts & O_PUBLIC) && Justification_Allowed(field)) - Undo_Justification(field, form->w); - else - Buffer_To_Window(field, form->w); - -- field->status |= _NEWTOP; -+ SetStatus(field, _NEWTOP); - res = _nc_Refresh_Current_Field(form); - } - else - res = Display_Field(field); - } -- field->status |= _CHANGED; -+ SetStatus(field, _CHANGED); - return (res); - } - -@@ -1211,7 +1211,7 @@ - return (E_SYSTEM_ERROR); - - for (linked_field = field->link; -- linked_field != field; -+ (linked_field != field) && (linked_field != 0); - linked_field = linked_field->link) - { - if (((syncres = Synchronize_Field(linked_field)) != E_OK) && -@@ -1256,7 +1256,7 @@ - werase(form->w); - wmove(form->w, form->currow, form->curcol); - -- if (field->opts & O_PUBLIC) -+ if ((unsigned)field->opts & O_PUBLIC) - { - if (Justification_Allowed(field)) - Undo_Justification(field, form->w); -@@ -1272,7 +1272,7 @@ - field->rows - 1, field->cols - 1, 0); - wsyncup(formwin); - Buffer_To_Window(field, form->w); -- field->status |= _NEWTOP; /* fake refresh to paint all */ -+ SetStatus(field, _NEWTOP); /* fake refresh to paint all */ - _nc_Refresh_Current_Field(form); - } - } -@@ -1326,34 +1326,34 @@ - field->opts = oldopts; - returnCode(E_CURRENT); - } -- if ((form->curpage == field->page)) -+ if (form->curpage == field->page) - { -- if (changed_opts & O_VISIBLE) -+ if ((unsigned)changed_opts & O_VISIBLE) - { -- if (newopts & O_VISIBLE) -+ if ((unsigned)newopts & O_VISIBLE) - res = Display_Field(field); - else - res = Erase_Field(field); - } - else - { -- if ((changed_opts & O_PUBLIC) && -- (newopts & O_VISIBLE)) -+ if (((unsigned)changed_opts & O_PUBLIC) && -+ ((unsigned)newopts & O_VISIBLE)) - res = Display_Field(field); - } - } - } - } - -- if (changed_opts & O_STATIC) -+ if ((unsigned)changed_opts & O_STATIC) - { - bool single_line_field = Single_Line_Field(field); - int res2 = E_OK; - -- if (newopts & O_STATIC) -+ if ((unsigned)newopts & O_STATIC) - { - /* the field becomes now static */ -- field->status &= ~_MAY_GROW; -+ ClrStatus(field, _MAY_GROW); - /* if actually we have no hidden columns, justification may - occur again */ - if (single_line_field && -@@ -1371,7 +1371,7 @@ - (single_line_field && (field->dcols < field->maxgrow)) || - (!single_line_field && (field->drows < field->maxgrow))) - { -- field->status |= _MAY_GROW; -+ SetStatus(field, _MAY_GROW); - /* a field with justification now changes its behavior, - so we must redisplay it */ - if (single_line_field && -@@ -1424,18 +1424,18 @@ - !(form->status & _POSTED)) - { - if ((form->w) && -- (field->opts & O_VISIBLE) && -+ ((unsigned)field->opts & O_VISIBLE) && - (field->form->curpage == field->page)) - { - _nc_Refresh_Current_Field(form); -- if (field->opts & O_PUBLIC) -+ if ((unsigned)field->opts & O_PUBLIC) - { - if (field->drows > field->rows) - { - if (form->toprow == 0) -- field->status &= ~_NEWTOP; -+ ClrStatus(field, _NEWTOP); - else -- field->status |= _NEWTOP; -+ SetStatus(field, _NEWTOP); - } - else - { -@@ -1469,7 +1469,7 @@ - delwin(form->w); - form->w = new_window; - -- form->status &= ~_WINDOW_MODIFIED; -+ ClrStatus(form, _WINDOW_MODIFIED); - Set_Field_Window_Attributes(field, form->w); - - if (Has_Invisible_Parts(field)) -@@ -1998,7 +1998,7 @@ - { - res = fct(form); - if (res == E_OK) -- form->current->status |= _NEWTOP; -+ SetStatus(form, _NEWTOP); - } - return (res); - } -@@ -2430,7 +2430,7 @@ - int result = E_REQUEST_DENIED; - bool Last_Row = ((field->drows - 1) == form->currow); - -- if ((field->opts & O_WRAP) && /* wrapping wanted */ -+ if (((unsigned)field->opts & O_WRAP) && /* wrapping wanted */ - (!Single_Line_Field(field)) && /* must be multi-line */ - (There_Is_No_Room_For_A_Char_In_Line(form)) && /* line is full */ - (!Last_Row || Growable(field))) /* there are more lines */ -@@ -2513,7 +2513,7 @@ - editable fields. - */ - if ((fct == FE_Delete_Previous) && -- (form->opts & O_BS_OVERLOAD) && -+ ((unsigned)form->opts & O_BS_OVERLOAD) && - First_Position_In_Current_Field(form)) - { - res = Inter_Field_Navigation(FN_Previous_Field, form); -@@ -2522,7 +2522,7 @@ - { - if (fct == FE_New_Line) - { -- if ((form->opts & O_NL_OVERLOAD) && -+ if (((unsigned)form->opts & O_NL_OVERLOAD) && - First_Position_In_Current_Field(form)) - { - res = Inter_Field_Navigation(FN_Next_Field, form); -@@ -2534,11 +2534,11 @@ - else - { - /* From now on, everything must be editable */ -- if (form->current->opts & O_EDIT) -+ if ((unsigned)form->current->opts & O_EDIT) - { - res = fct(form); - if (res == E_OK) -- form->status |= _WINDOW_MODIFIED; -+ SetStatus(form, _WINDOW_MODIFIED); - } - } - } -@@ -2571,7 +2571,7 @@ - if (Last_Row && - (!(Growable(field) && !Single_Line_Field(field)))) - { -- if (!(form->opts & O_NL_OVERLOAD)) -+ if (!((unsigned)form->opts & O_NL_OVERLOAD)) - returnCode(E_REQUEST_DENIED); - wmove(form->w, form->currow, form->curcol); - wclrtoeol(form->w); -@@ -2579,7 +2579,7 @@ - handled in the generic routine. The reason is, - that FN_Next_Field may fail, but the form is - definitively changed */ -- form->status |= _WINDOW_MODIFIED; -+ SetStatus(form, _WINDOW_MODIFIED); - returnCode(Inter_Field_Navigation(FN_Next_Field, form)); - } - else -@@ -2595,7 +2595,7 @@ - wclrtoeol(form->w); - form->currow++; - form->curcol = 0; -- form->status |= _WINDOW_MODIFIED; -+ SetStatus(form, _WINDOW_MODIFIED); - returnCode(E_OK); - } - } -@@ -2605,7 +2605,7 @@ - if (Last_Row && - !(Growable(field) && !Single_Line_Field(field))) - { -- if (!(form->opts & O_NL_OVERLOAD)) -+ if (!((unsigned)form->opts & O_NL_OVERLOAD)) - returnCode(E_REQUEST_DENIED); - returnCode(Inter_Field_Navigation(FN_Next_Field, form)); - } -@@ -2627,7 +2627,7 @@ - wmove(form->w, form->currow, form->curcol); - winsertln(form->w); - myADDNSTR(form->w, bp, (int)(t - bp)); -- form->status |= _WINDOW_MODIFIED; -+ SetStatus(form, _WINDOW_MODIFIED); - returnCode(E_OK); - } - } -@@ -2926,7 +2926,7 @@ - EM_Overlay_Mode(FORM *form) - { - T((T_CALLED("EM_Overlay_Mode(%p)"), (void *)form)); -- form->status |= _OVLMODE; -+ SetStatus(form, _OVLMODE); - returnCode(E_OK); - } - -@@ -2942,7 +2942,7 @@ - EM_Insert_Mode(FORM *form) - { - T((T_CALLED("EM_Insert_Mode(%p)"), (void *)form)); -- form->status &= ~_OVLMODE; -+ ClrStatus(form, _OVLMODE); - returnCode(E_OK); - } - -@@ -3111,7 +3111,7 @@ - { - if (typ) - { -- if (field->opts & O_NULLOK) -+ if ((unsigned)field->opts & O_NULLOK) - { - FIELD_CELL *bp = field->buf; - -@@ -3168,12 +3168,12 @@ - - Synchronize_Buffer(form); - if ((form->status & _FCHECK_REQUIRED) || -- (!(field->opts & O_PASSOK))) -+ (!((unsigned)field->opts & O_PASSOK))) - { - if (!Check_Field(form, field->type, field, (TypeArgument *)(field->arg))) - return FALSE; -- form->status &= ~_FCHECK_REQUIRED; -- field->status |= _CHANGED; -+ ClrStatus(form, _FCHECK_REQUIRED); -+ SetStatus(field, _CHANGED); - Synchronize_Linked_Fields(field); - } - return TRUE; -@@ -3273,14 +3273,15 @@ - do - { - field = (field == last_on_page) ? first : field + 1; -- if (((*field)->opts & O_VISIBLE)) -+ if (((unsigned)(*field)->opts & O_VISIBLE)) - break; - } - while (proposed != (*field)); - - proposed = *field; - -- if ((proposed == *last_on_page) && !(proposed->opts & O_VISIBLE)) -+ if ((proposed == *last_on_page) && -+ !((unsigned)proposed->opts & O_VISIBLE)) - { - /* This means, there is also no visible field on the page. - So we propose the first one and hope the very best... -@@ -3816,11 +3817,11 @@ - FIELD *last_field, *field_on_page; - - werase(Get_Form_Window(form)); -- form->curpage = page; -+ form->curpage = (short)page; - last_field = field_on_page = form->field[form->page[page].smin]; - do - { -- if (field_on_page->opts & O_VISIBLE) -+ if ((unsigned)field_on_page->opts & O_VISIBLE) - if ((res = Display_Field(field_on_page)) != E_OK) - return (res); - field_on_page = field_on_page->snext; -@@ -3981,6 +3982,94 @@ - Helper routines for the core form driver. - --------------------------------------------------------------------------*/ - -+# if USE_WIDEC_SUPPORT -+/*--------------------------------------------------------------------------- -+| Facility : libnform -+| Function : static int Data_Entry_w(FORM * form, wchar_t c) -+| -+| Description : Enter the wide character c into at the current -+| position of the current field of the form. -+| -+| Return Values : E_OK - success -+| E_REQUEST_DENIED - driver could not process the request -+| E_SYSTEM_ERROR - -++--------------------------------------------------------------------------*/ -+static int -+Data_Entry_w(FORM *form, wchar_t c) -+{ -+ FIELD *field = form->current; -+ int result = E_REQUEST_DENIED; -+ -+ T((T_CALLED("Data_Entry(%p,%s)"), (void *)form, _tracechtype((chtype)c))); -+ if (((unsigned)field->opts & O_EDIT) -+#if FIX_FORM_INACTIVE_BUG -+ && ((unsigned)field->opts & O_ACTIVE) -+#endif -+ ) -+ { -+ wchar_t given[2]; -+ cchar_t temp_ch; -+ -+ given[0] = c; -+ given[1] = 1; -+ setcchar(&temp_ch, given, 0, 0, (void *)0); -+ if (((unsigned)field->opts & O_BLANK) && -+ First_Position_In_Current_Field(form) && -+ !(form->status & _FCHECK_REQUIRED) && -+ !(form->status & _WINDOW_MODIFIED)) -+ werase(form->w); -+ -+ if (form->status & _OVLMODE) -+ { -+ wadd_wch(form->w, &temp_ch); -+ } -+ else -+ /* no _OVLMODE */ -+ { -+ bool There_Is_Room = Is_There_Room_For_A_Char_In_Line(form); -+ -+ if (!(There_Is_Room || -+ ((Single_Line_Field(field) && Growable(field))))) -+ RETURN(E_REQUEST_DENIED); -+ -+ if (!There_Is_Room && !Field_Grown(field, 1)) -+ RETURN(E_SYSTEM_ERROR); -+ -+ wins_wch(form->w, &temp_ch); -+ } -+ -+ if ((result = Wrapping_Not_Necessary_Or_Wrapping_Ok(form)) == E_OK) -+ { -+ bool End_Of_Field = (((field->drows - 1) == form->currow) && -+ ((field->dcols - 1) == form->curcol)); -+ -+ form->status |= _WINDOW_MODIFIED; -+ if (End_Of_Field && !Growable(field) && ((unsigned)field->opts & O_AUTOSKIP)) -+ result = Inter_Field_Navigation(FN_Next_Field, form); -+ else -+ { -+ if (End_Of_Field && Growable(field) && !Field_Grown(field, 1)) -+ result = E_SYSTEM_ERROR; -+ else -+ { -+ /* -+ * We have just added a byte to the form field. It may have -+ * been part of a multibyte character. If it was, the -+ * addch_used field is nonzero and we should not try to move -+ * to a new column. -+ */ -+ if (WINDOW_EXT(form->w, addch_used) == 0) -+ IFN_Next_Character(form); -+ -+ result = E_OK; -+ } -+ } -+ } -+ } -+ RETURN(result); -+} -+# endif -+ - /*--------------------------------------------------------------------------- - | Facility : libnform - | Function : static int Data_Entry(FORM * form,int c) -@@ -3999,13 +4088,13 @@ - int result = E_REQUEST_DENIED; - - T((T_CALLED("Data_Entry(%p,%s)"), (void *)form, _tracechtype((chtype)c))); -- if ((field->opts & O_EDIT) -+ if (((unsigned)field->opts & O_EDIT) - #if FIX_FORM_INACTIVE_BUG -- && (field->opts & O_ACTIVE) -+ && ((unsigned)field->opts & O_ACTIVE) - #endif - ) - { -- if ((field->opts & O_BLANK) && -+ if (((unsigned)field->opts & O_BLANK) && - First_Position_In_Current_Field(form) && - !(form->status & _FCHECK_REQUIRED) && - !(form->status & _WINDOW_MODIFIED)) -@@ -4035,8 +4124,8 @@ - bool End_Of_Field = (((field->drows - 1) == form->currow) && - ((field->dcols - 1) == form->curcol)); - -- form->status |= _WINDOW_MODIFIED; -- if (End_Of_Field && !Growable(field) && (field->opts & O_AUTOSKIP)) -+ SetStatus(form, _WINDOW_MODIFIED); -+ if (End_Of_Field && !Growable(field) && ((unsigned)field->opts & O_AUTOSKIP)) - result = Inter_Field_Navigation(FN_Next_Field, form); - else - { -@@ -4228,7 +4317,10 @@ - - if ((c >= MIN_FORM_COMMAND && c <= MAX_FORM_COMMAND) && - ((bindings[c - MIN_FORM_COMMAND].keycode & Key_Mask) == c)) -- BI = &(bindings[c - MIN_FORM_COMMAND]); -+ { -+ TR(TRACE_CALLS, ("form_request %s", form_request_name(c))); -+ BI = &(bindings[c - MIN_FORM_COMMAND]); -+ } - - if (BI) - { -@@ -4246,7 +4338,7 @@ - NULL /* Choice Request is generic */ - }; - size_t nMethods = (sizeof(Generic_Methods) / sizeof(Generic_Methods[0])); -- size_t method = (BI->keycode >> ID_Shft) & 0xffff; /* see ID_Mask */ -+ size_t method = (size_t) ((BI->keycode >> ID_Shft) & 0xffff); /* see ID_Mask */ - - if ((method >= nMethods) || !(BI->cmd)) - res = E_SYSTEM_ERROR; -@@ -4255,9 +4347,13 @@ - Generic_Method fct = Generic_Methods[method]; - - if (fct) -- res = fct(BI->cmd, form); -+ { -+ res = fct(BI->cmd, form); -+ } - else -- res = (BI->cmd) (form); -+ { -+ res = (BI->cmd) (form); -+ } - } - } - #ifdef NCURSES_MOUSE_VERSION -@@ -4360,6 +4456,195 @@ - RETURN(res); - } - -+# if USE_WIDEC_SUPPORT -+/*--------------------------------------------------------------------------- -+| Facility : libnform -+| Function : int form_driver_w(FORM * form,int type,wchar_t c) -+| -+| Description : This is the workhorse of the forms system. -+| -+| Input is either a key code (request) or a wide char -+| returned by e.g. get_wch (). The type must be passed -+| as well,so that we are able to determine whether the char -+| is a multibyte char or a request. -+ -+| If it is a request, the form driver executes -+| the request and returns the result. If it is data -+| (printable character), it enters the data into the -+| current position in the current field. If it is not -+| recognized, the form driver assumes it is an application -+| defined command and returns E_UNKNOWN_COMMAND. -+| Application defined command should be defined relative -+| to MAX_FORM_COMMAND, the maximum value of a request. -+| -+| Return Values : E_OK - success -+| E_SYSTEM_ERROR - system error -+| E_BAD_ARGUMENT - an argument is incorrect -+| E_NOT_POSTED - form is not posted -+| E_INVALID_FIELD - field contents are invalid -+| E_BAD_STATE - called from inside a hook routine -+| E_REQUEST_DENIED - request failed -+| E_NOT_CONNECTED - no fields are connected to the form -+| E_UNKNOWN_COMMAND - command not known -++--------------------------------------------------------------------------*/ -+NCURSES_EXPORT(int) -+form_driver_w(FORM *form, int type, wchar_t c) -+{ -+ const Binding_Info *BI = (Binding_Info *) 0; -+ int res = E_UNKNOWN_COMMAND; -+ -+ T((T_CALLED("form_driver(%p,%d)"), (void *)form, (int)c)); -+ -+ if (!form) -+ RETURN(E_BAD_ARGUMENT); -+ -+ if (!(form->field)) -+ RETURN(E_NOT_CONNECTED); -+ -+ assert(form->page); -+ -+ if (c == (wchar_t)FIRST_ACTIVE_MAGIC) -+ { -+ form->current = _nc_First_Active_Field(form); -+ RETURN(E_OK); -+ } -+ -+ assert(form->current && -+ form->current->buf && -+ (form->current->form == form) -+ ); -+ -+ if (form->status & _IN_DRIVER) -+ RETURN(E_BAD_STATE); -+ -+ if (!(form->status & _POSTED)) -+ RETURN(E_NOT_POSTED); -+ -+ /* check if this is a keycode or a (wide) char */ -+ if (type == KEY_CODE_YES) -+ { -+ if ((c >= MIN_FORM_COMMAND && c <= MAX_FORM_COMMAND) && -+ ((bindings[c - MIN_FORM_COMMAND].keycode & Key_Mask) == c)) -+ BI = &(bindings[c - MIN_FORM_COMMAND]); -+ } -+ -+ if (BI) -+ { -+ typedef int (*Generic_Method) (int (*const) (FORM *), FORM *); -+ static const Generic_Method Generic_Methods[] = -+ { -+ Page_Navigation, /* overloaded to call field&form hooks */ -+ Inter_Field_Navigation, /* overloaded to call field hooks */ -+ NULL, /* Intra-Field is generic */ -+ Vertical_Scrolling, /* Overloaded to check multi-line */ -+ Horizontal_Scrolling, /* Overloaded to check single-line */ -+ Field_Editing, /* Overloaded to mark modification */ -+ NULL, /* Edit Mode is generic */ -+ NULL, /* Field Validation is generic */ -+ NULL /* Choice Request is generic */ -+ }; -+ size_t nMethods = (sizeof(Generic_Methods) / sizeof(Generic_Methods[0])); -+ size_t method = (size_t) (BI->keycode >> ID_Shft) & 0xffff; /* see ID_Mask */ -+ -+ if ((method >= nMethods) || !(BI->cmd)) -+ res = E_SYSTEM_ERROR; -+ else -+ { -+ Generic_Method fct = Generic_Methods[method]; -+ -+ if (fct) -+ res = fct(BI->cmd, form); -+ else -+ res = (BI->cmd) (form); -+ } -+ } -+#ifdef NCURSES_MOUSE_VERSION -+ else if (KEY_MOUSE == c) -+ { -+ MEVENT event; -+ WINDOW *win = form->win ? form->win : StdScreen(Get_Form_Screen(form)); -+ WINDOW *sub = form->sub ? form->sub : win; -+ -+ getmouse(&event); -+ if ((event.bstate & (BUTTON1_CLICKED | -+ BUTTON1_DOUBLE_CLICKED | -+ BUTTON1_TRIPLE_CLICKED)) -+ && wenclose(win, event.y, event.x)) -+ { /* we react only if the click was in the userwin, that means -+ * inside the form display area or at the decoration window. -+ */ -+ int ry = event.y, rx = event.x; /* screen coordinates */ -+ -+ res = E_REQUEST_DENIED; -+ if (mouse_trafo(&ry, &rx, FALSE)) -+ { /* rx, ry are now "curses" coordinates */ -+ if (ry < sub->_begy) -+ { /* we clicked above the display region; this is -+ * interpreted as "scroll up" request -+ */ -+ if (event.bstate & BUTTON1_CLICKED) -+ res = form_driver(form, REQ_PREV_FIELD); -+ else if (event.bstate & BUTTON1_DOUBLE_CLICKED) -+ res = form_driver(form, REQ_PREV_PAGE); -+ else if (event.bstate & BUTTON1_TRIPLE_CLICKED) -+ res = form_driver(form, REQ_FIRST_FIELD); -+ } -+ else if (ry > sub->_begy + sub->_maxy) -+ { /* we clicked below the display region; this is -+ * interpreted as "scroll down" request -+ */ -+ if (event.bstate & BUTTON1_CLICKED) -+ res = form_driver(form, REQ_NEXT_FIELD); -+ else if (event.bstate & BUTTON1_DOUBLE_CLICKED) -+ res = form_driver(form, REQ_NEXT_PAGE); -+ else if (event.bstate & BUTTON1_TRIPLE_CLICKED) -+ res = form_driver(form, REQ_LAST_FIELD); -+ } -+ else if (wenclose(sub, event.y, event.x)) -+ { /* Inside the area we try to find the hit item */ -+ int i; -+ -+ ry = event.y; -+ rx = event.x; -+ if (wmouse_trafo(sub, &ry, &rx, FALSE)) -+ { -+ int min_field = form->page[form->curpage].pmin; -+ int max_field = form->page[form->curpage].pmax; -+ -+ for (i = min_field; i <= max_field; ++i) -+ { -+ FIELD *field = form->field[i]; -+ -+ if (Field_Is_Selectable(field) -+ && Field_encloses(field, ry, rx) == E_OK) -+ { -+ res = _nc_Set_Current_Field(form, field); -+ if (res == E_OK) -+ res = _nc_Position_Form_Cursor(form); -+ if (res == E_OK -+ && (event.bstate & BUTTON1_DOUBLE_CLICKED)) -+ res = E_UNKNOWN_COMMAND; -+ break; -+ } -+ } -+ } -+ } -+ } -+ } -+ else -+ res = E_REQUEST_DENIED; -+ } -+#endif /* NCURSES_MOUSE_VERSION */ -+ else if (type == OK) -+ { -+ res = Data_Entry_w(form, c); -+ } -+ -+ _nc_Refresh_Current_Field(form); -+ RETURN(res); -+} -+# endif /* USE_WIDEC_SUPPORT */ -+ - /*---------------------------------------------------------------------------- - Field-Buffer manipulation routines. - The effects of setting a buffer are tightly coupled to the core of the form -@@ -4389,8 +4674,8 @@ - { - FIELD_CELL *p; - int res = E_OK; -- unsigned int i; -- unsigned int len; -+ int i; -+ int len; - - #if USE_WIDEC_SUPPORT - FIELD_CELL *widevalue = 0; -@@ -4408,7 +4693,7 @@ - /* for a growable field we must assume zero terminated strings, because - somehow we have to detect the length of what should be copied. - */ -- unsigned int vlen = strlen(value); -+ int vlen = (int)strlen(value); - - if (vlen > len) - { -@@ -4448,10 +4733,10 @@ - } - else - { -- for (i = 0; i < (unsigned)field->drows; ++i) -+ for (i = 0; i < field->drows; ++i) - { -- (void)mvwin_wchnstr(field->working, 0, i * field->dcols, -- widevalue + (i * field->dcols), -+ (void)mvwin_wchnstr(field->working, 0, (int)i * field->dcols, -+ widevalue + ((int)i * field->dcols), - field->dcols); - } - for (i = 0; i < len; ++i) -@@ -4512,7 +4797,7 @@ - { - #if USE_WIDEC_SUPPORT - FIELD_CELL *data = Address_Of_Nth_Buffer(field, buffer); -- unsigned need = 0; -+ size_t need = 0; - int size = Buffer_Length(field); - int n; - -@@ -4526,7 +4811,7 @@ - - init_mb(state); - next = _nc_wcrtomb(0, data[n].chars[0], &state); -- if (!isEILSEQ(next)) -+ if (next > 0) - need += next; - } - } -@@ -4613,7 +4898,7 @@ - { - result[need] = wch; - } -- passed += status; -+ passed += (size_t) status; - ++need; - } - else -@@ -4633,7 +4918,7 @@ - break; - result = typeCalloc(wchar_t, need); - -- *lengthp = need; -+ *lengthp = (int)need; - if (result == 0) - break; - } -diff -Naur ncurses-5.9/form/frm_hook.c ncurses-5.9.patch/form/frm_hook.c ---- ncurses-5.9/form/frm_hook.c 2010-01-23 22:12:08.000000000 +0100 -+++ ncurses-5.9.patch/form/frm_hook.c 2014-09-01 16:33:22.339792094 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,13 +32,13 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: frm_hook.c,v 1.15 2010/01/23 21:12:08 tom Exp $") -+MODULE_ID("$Id: frm_hook.c,v 1.16 2012/03/11 00:37:16 tom Exp $") - - /* "Template" macro to generate function to set application specific hook */ - #define GEN_HOOK_SET_FUNCTION( typ, name ) \ - NCURSES_IMPEXP int NCURSES_API set_ ## typ ## _ ## name (FORM *form, Form_Hook func)\ - {\ -- T((T_CALLED("set_" #typ"_"#name"(%p,%p)"), form, func));\ -+ T((T_CALLED("set_" #typ"_"#name"(%p,%p)"), (void *) form, func));\ - (Normalize_Form( form ) -> typ ## name) = func ;\ - RETURN(E_OK);\ - } -diff -Naur ncurses-5.9/form/frm_opts.c ncurses-5.9.patch/form/frm_opts.c ---- ncurses-5.9/form/frm_opts.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/frm_opts.c 2014-09-01 16:33:22.340792096 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: frm_opts.c,v 1.15 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: frm_opts.c,v 1.17 2013/08/24 22:58:47 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -49,8 +49,8 @@ - { - T((T_CALLED("set_form_opts(%p,%d)"), (void *)form, opts)); - -- opts &= ALL_FORM_OPTS; -- if (opts & ~ALL_FORM_OPTS) -+ opts &= (Form_Options) ALL_FORM_OPTS; -+ if ((unsigned)opts & ~ALL_FORM_OPTS) - RETURN(E_BAD_ARGUMENT); - else - { -@@ -71,7 +71,7 @@ - form_opts(const FORM *form) - { - T((T_CALLED("form_opts(%p)"), (const void *)form)); -- returnCode((int)(Normalize_Form(form)->opts & ALL_FORM_OPTS)); -+ returnCode((Form_Options) ((unsigned)Normalize_Form(form)->opts & ALL_FORM_OPTS)); - } - - /*--------------------------------------------------------------------------- -@@ -89,8 +89,8 @@ - { - T((T_CALLED("form_opts_on(%p,%d)"), (void *)form, opts)); - -- opts &= ALL_FORM_OPTS; -- if (opts & ~ALL_FORM_OPTS) -+ opts &= (Form_Options) ALL_FORM_OPTS; -+ if ((unsigned)opts & ~ALL_FORM_OPTS) - RETURN(E_BAD_ARGUMENT); - else - { -@@ -114,8 +114,8 @@ - { - T((T_CALLED("form_opts_off(%p,%d)"), (void *)form, opts)); - -- opts &= ALL_FORM_OPTS; -- if (opts & ~ALL_FORM_OPTS) -+ opts &= (Form_Options) ALL_FORM_OPTS; -+ if ((unsigned)opts & ~ALL_FORM_OPTS) - RETURN(E_BAD_ARGUMENT); - else - { -diff -Naur ncurses-5.9/form/frm_page.c ncurses-5.9.patch/form/frm_page.c ---- ncurses-5.9/form/frm_page.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/frm_page.c 2014-09-01 16:33:22.340792096 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: frm_page.c,v 1.11 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: frm_page.c,v 1.12 2012/06/10 00:28:04 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -58,7 +58,7 @@ - - if (!(form->status & _POSTED)) - { -- form->curpage = page; -+ form->curpage = (short)page; - form->current = _nc_First_Active_Field(form); - } - else -diff -Naur ncurses-5.9/form/frm_post.c ncurses-5.9.patch/form/frm_post.c ---- ncurses-5.9/form/frm_post.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/frm_post.c 2014-09-01 16:33:22.340792096 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: frm_post.c,v 1.10 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: frm_post.c,v 1.11 2012/06/10 00:27:49 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnform -@@ -77,7 +77,7 @@ - if ((err = _nc_Set_Form_Page(form, page, form->current)) != E_OK) - RETURN(err); - -- form->status |= _POSTED; -+ SetStatus(form, _POSTED); - - Call_Hook(form, forminit); - Call_Hook(form, fieldinit); -@@ -117,7 +117,7 @@ - werase(Get_Form_Window(form)); - delwin(form->w); - form->w = (WINDOW *)0; -- form->status &= ~_POSTED; -+ ClrStatus(form, _POSTED); - RETURN(E_OK); - } - -diff -Naur ncurses-5.9/form/frm_req_name.c ncurses-5.9.patch/form/frm_req_name.c ---- ncurses-5.9/form/frm_req_name.c 2009-10-10 18:17:01.000000000 +0200 -+++ ncurses-5.9.patch/form/frm_req_name.c 2014-09-01 16:33:22.340792096 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: frm_req_name.c,v 1.17 2009/10/10 16:17:01 tom Exp $") -+MODULE_ID("$Id: frm_req_name.c,v 1.18 2012/07/21 23:17:23 tom Exp $") - - static const char *request_names[MAX_FORM_COMMAND - MIN_FORM_COMMAND + 1] = - { -@@ -144,23 +144,26 @@ - /* because the table is so small, it doesn't really hurt - to run sequentially through it. - */ -- unsigned int i = 0; -- char buf[16]; -+ size_t i = 0; -+ char buf[16]; /* longest name is 10 chars */ - - T((T_CALLED("form_request_by_name(%s)"), _nc_visbuf(str))); - -- if (str) -+ if (str != 0 && (i = strlen(str)) != 0) - { -- strncpy(buf, str, sizeof(buf)); -- while ((i < sizeof(buf)) && (buf[i] != '\0')) -+ if (i > sizeof(buf) - 2) -+ i = sizeof(buf) - 2; -+ memcpy(buf, str, i); -+ buf[i] = '\0'; -+ -+ for (i = 0; buf[i] != '\0'; ++i) - { - buf[i] = (char)toupper(UChar(buf[i])); -- i++; - } - - for (i = 0; i < A_SIZE; i++) - { -- if (strncmp(request_names[i], buf, sizeof(buf)) == 0) -+ if (strcmp(request_names[i], buf) == 0) - returnCode(MIN_FORM_COMMAND + (int)i); - } - } -diff -Naur ncurses-5.9/form/fty_generic.c ncurses-5.9.patch/form/fty_generic.c ---- ncurses-5.9/form/fty_generic.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/fty_generic.c 2014-09-01 16:33:22.340792096 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2008-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,7 +34,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fty_generic.c,v 1.5 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: fty_generic.c,v 1.6 2012/06/10 00:27:49 tom Exp $") - - /* - * This is not a full implementation of a field type, but adds some -@@ -119,7 +119,7 @@ - if (res) - { - *res = *_nc_Default_FieldType; -- res->status |= (_HAS_ARGS | _GENERIC); -+ SetStatus(res, (_HAS_ARGS | _GENERIC)); - res->fieldcheck.gfcheck = field_check; - res->charcheck.gccheck = char_check; - res->genericarg = Generic_This_Type; -diff -Naur ncurses-5.9/form/fty_int.c ncurses-5.9.patch/form/fty_int.c ---- ncurses-5.9/form/fty_int.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/fty_int.c 2014-09-01 16:33:22.340792096 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,7 +34,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fty_int.c,v 1.25 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: fty_int.c,v 1.26 2012/02/23 10:02:15 tom Exp $") - - #if USE_WIDEC_SUPPORT - #define isDigit(c) (iswdigit((wint_t)(c)) || isdigit(UChar(c))) -@@ -233,7 +233,8 @@ - } - if (result) - { -- sprintf(buf, "%.*ld", (prec > 0 ? prec : 0), val); -+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) -+ "%.*ld", (prec > 0 ? prec : 0), val); - set_field_buffer(field, 0, buf); - } - } -diff -Naur ncurses-5.9/form/fty_num.c ncurses-5.9.patch/form/fty_num.c ---- ncurses-5.9/form/fty_num.c 2010-01-23 22:14:36.000000000 +0100 -+++ ncurses-5.9.patch/form/fty_num.c 2014-09-01 16:33:22.340792096 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,7 +34,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fty_num.c,v 1.28 2010/01/23 21:14:36 tom Exp $") -+MODULE_ID("$Id: fty_num.c,v 1.29 2012/02/23 10:02:15 tom Exp $") - - #if HAVE_LOCALE_H - #include <locale.h> -@@ -271,7 +271,8 @@ - } - if (result) - { -- sprintf(buf, "%.*f", (prec > 0 ? prec : 0), val); -+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) -+ "%.*f", (prec > 0 ? prec : 0), val); - set_field_buffer(field, 0, buf); - } - } -diff -Naur ncurses-5.9/form/fty_regex.c ncurses-5.9.patch/form/fty_regex.c ---- ncurses-5.9/form/fty_regex.c 2010-01-23 22:14:37.000000000 +0100 -+++ ncurses-5.9.patch/form/fty_regex.c 2014-09-01 16:33:22.340792096 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,7 +34,7 @@ - - #include "form.priv.h" - --MODULE_ID("$Id: fty_regex.c,v 1.24 2010/01/23 21:14:37 tom Exp $") -+MODULE_ID("$Id: fty_regex.c,v 1.25 2012/10/27 20:12:53 tom Exp $") - - #if HAVE_REGEX_H_FUNCS /* We prefer POSIX regex */ - #include <regex.h> -@@ -123,9 +123,8 @@ - (REG_EXTENDED | REG_NOSUB | REG_NEWLINE))) - { - T((T_CREATE("regex_t %p"), (void *)preg->pRegExp)); -- preg->refCount = typeMalloc(unsigned long, 1); -- -- *(preg->refCount) = 1; -+ if ((preg->refCount = typeMalloc(unsigned long, 1)) != 0) -+ *(preg->refCount) = 1; - } - else - { -@@ -151,9 +150,8 @@ - - T((T_CREATE("RegExp_Arg %p"), pArg)); - pArg->compiled_expression = NULL; -- pArg->refCount = typeMalloc(unsigned long, 1); -- -- *(pArg->refCount) = 1; -+ if ((pArg->refCount = typeMalloc(unsigned long, 1)) != 0) -+ *(pArg->refCount) = 1; - - do - { -diff -Naur ncurses-5.9/form/llib-lformtw ncurses-5.9.patch/form/llib-lformtw ---- ncurses-5.9/form/llib-lformtw 2010-01-09 23:01:40.000000000 +0100 -+++ ncurses-5.9.patch/form/llib-lformtw 2014-09-01 16:33:22.341792098 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - ****************************************************************************/ - - /**************************************************************************** -- * Author: Thomas E. Dickey 2010 * -+ * Author: Thomas E. Dickey 2010-on * - ****************************************************************************/ - /* LINTLIBRARY */ - -@@ -494,6 +494,13 @@ - int c) - { return(*(int *)0); } - -+#undef form_driver_w -+int form_driver_w( -+ FORM *form, -+ int type, -+ wchar_t c) -+ { return(*(int *)0); } -+ - #undef set_field_buffer - int set_field_buffer( - FIELD *field, -diff -Naur ncurses-5.9/form/llib-lformw ncurses-5.9.patch/form/llib-lformw ---- ncurses-5.9/form/llib-lformw 2010-01-09 22:54:33.000000000 +0100 -+++ ncurses-5.9.patch/form/llib-lformw 2014-09-01 16:33:22.341792098 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - ****************************************************************************/ - - /**************************************************************************** -- * Author: Thomas E. Dickey 2002-2005,2010 * -+ * Author: Thomas E. Dickey 2002-on * - ****************************************************************************/ - /* LINTLIBRARY */ - -@@ -494,6 +494,13 @@ - int c) - { return(*(int *)0); } - -+#undef form_driver_w -+int form_driver_w( -+ FORM *form, -+ int type, -+ wchar_t c) -+ { return(*(int *)0); } -+ - #undef set_field_buffer - int set_field_buffer( - FIELD *field, -diff -Naur ncurses-5.9/form/Makefile.in ncurses-5.9.patch/form/Makefile.in ---- ncurses-5.9/form/Makefile.in 2010-11-27 22:45:27.000000000 +0100 -+++ ncurses-5.9.patch/form/Makefile.in 2014-09-01 16:33:22.337792091 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.53 2010/11/27 21:45:27 tom Exp $ -+# $Id: Makefile.in,v 1.56 2013/08/04 20:23:20 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -57,6 +57,9 @@ - bindir = @bindir@ - libdir = @libdir@ - includedir = @includedir@ -+includesubdir = @includesubdir@ -+ -+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir) - - LIBTOOL = @LIBTOOL@ - LIBTOOL_CLEAN = @LIB_CLEAN@ -@@ -102,6 +105,7 @@ - SHLIB_DIRS = -L../lib - SHLIB_LIST = $(SHLIB_DIRS) -lncurses@LIB_SUFFIX@ @SHLIB_LIST@ - -+RPATH_LIST = @RPATH_LIST@ - MK_SHARED_LIB = @MK_SHARED_LIB@ - - NCURSES_MAJOR = @NCURSES_MAJOR@ -@@ -111,7 +115,7 @@ - - RANLIB = @LIB_PREP@ - --LIBRARIES = @LIBS_TO_MAKE@ -+LIBRARIES = @Libs_To_Make@ - - LINT = @LINT@ - LINT_OPTS = @LINT_OPTS@ -diff -Naur ncurses-5.9/include/Caps ncurses-5.9.patch/include/Caps ---- ncurses-5.9/include/Caps 2010-12-04 19:47:13.000000000 +0100 -+++ ncurses-5.9.patch/include/Caps 2014-09-01 16:33:22.341792098 +0200 -@@ -1,5 +1,5 @@ - ############################################################################## --# Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -29,7 +29,7 @@ - # Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995 - # and: Eric S. Raymond <esr@snark.thyrsus.com> - # --# $Id: Caps,v 1.37 2010/12/04 18:47:13 tom Exp $ -+# $Id: Caps,v 1.38 2011/10/15 23:10:18 tom Exp $ - # - # This is the master termcap/terminfo capability table. - # -@@ -738,11 +738,13 @@ - #%.ad - #% - #%.in .8i --#%The XSI Curses standard added these. They are some post-4.1 --#%versions of System V curses, e.g., Solaris 2.5 and IRIX 6.x. --#%The \fBncurses\fR termcap names for them are invented; according to the --#%XSI Curses standard, they have no termcap names. If your compiled terminfo --#%entries use these, they may not be binary-compatible with System V terminfo -+#%The XSI Curses standard added these hardcopy capabilities. -+#%They were used in some post-4.1 versions of System V curses, -+#%e.g., Solaris 2.5 and IRIX 6.x. -+#%Except for \fBYI\fP, the \fBncurses\fR termcap names for them are invented. -+#%According to the XSI Curses standard, they have no termcap names. -+#%If your compiled terminfo entries use these, -+#%they may not be binary-compatible with System V terminfo - #%entries after SVr4.1; beware! - #% - #%.na -@@ -760,7 +762,7 @@ - enter_top_hl_mode ethlm str Xt - - ----- Enter top highlight mode - enter_vertical_hl_mode evhlm str Xv - - ----- Enter vertical highlight mode - set_a_attributes sgr1 str sA - - ----- Define second set of video attributes #1-#6 --set_pglen_inch slength str sL - - ----- YI Set page length to #1 hundredth of an inch -+set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap). - #%.TE - #%.ad - # -diff -Naur ncurses-5.9/include/Caps.aix4 ncurses-5.9.patch/include/Caps.aix4 ---- ncurses-5.9/include/Caps.aix4 2010-12-04 19:47:13.000000000 +0100 -+++ ncurses-5.9.patch/include/Caps.aix4 2014-09-01 16:33:22.341792098 +0200 -@@ -1,5 +1,5 @@ - ############################################################################## --# Copyright (c) 2001-2006,2010 Free Software Foundation, Inc. # -+# Copyright (c) 2001-2010,2011 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -28,7 +28,7 @@ - # - # Author: Thomas Dickey - # --# $Id: Caps.aix4,v 1.8 2010/12/04 18:47:13 tom Exp $ -+# $Id: Caps.aix4,v 1.9 2011/10/15 23:19:16 tom Exp $ - # - # This is an adaptation of ncurses' termcap/terminfo capability table, which - # is designed to align with AIX 4.x's terminfo. -@@ -840,11 +840,13 @@ - #%.ad - #% - #%.in .8i --#%The XSI Curses standard added these. They are some post-4.1 --#%versions of System V curses, e.g., Solaris 2.5 and IRIX 6.x. --#%The \fBncurses\fR termcap names for them are invented; according to the --#%XSI Curses standard, they have no termcap names. If your compiled terminfo --#%entries use these, they may not be binary-compatible with System V terminfo -+#%The XSI Curses standard added these hardcopy capabilities. -+#%They were used in some post-4.1 versions of System V curses, -+#%e.g., Solaris 2.5 and IRIX 6.x. -+#%Except for \fBYI\fP, the \fBncurses\fR termcap names for them are invented. -+#%According to the XSI Curses standard, they have no termcap names. -+#%If your compiled terminfo entries use these, -+#%they may not be binary-compatible with System V terminfo - #%entries after SVr4.1; beware! - #% - #%.na -@@ -862,7 +864,7 @@ - enter_top_hl_mode ethlm str Xt - - ----- Enter top highlight mode - enter_vertical_hl_mode evhlm str Xv - - ----- Enter vertical highlight mode - set_a_attributes sgr1 str sA - - ----- Define second set of video attributes #1-#6 --set_pglen_inch slength str sL - - ----- YI Set page length to #1 hundredth of an inch -+set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap). - #%.TE - #%.ad - # -diff -Naur ncurses-5.9/include/Caps.hpux11 ncurses-5.9.patch/include/Caps.hpux11 ---- ncurses-5.9/include/Caps.hpux11 2010-12-04 19:47:13.000000000 +0100 -+++ ncurses-5.9.patch/include/Caps.hpux11 2014-09-01 16:33:22.341792098 +0200 -@@ -1,5 +1,5 @@ - ############################################################################## --# Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. # -+# Copyright (c) 2002-2010,2011 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -28,7 +28,7 @@ - # - # Author: Thomas Dickey - # --# $Id: Caps.hpux11,v 1.5 2010/12/04 18:47:13 tom Exp $ -+# $Id: Caps.hpux11,v 1.6 2011/10/15 23:20:04 tom Exp $ - # - # This is an adaptation of ncurses' termcap/terminfo capability table, which - # is designed to align with HPUX 11.x's terminfo. -@@ -746,11 +746,13 @@ - #%.ad - #% - #%.in .8i --#%The XSI Curses standard added these. They are some post-4.1 --#%versions of System V curses, e.g., Solaris 2.5 and IRIX 6.x. --#%The \fBncurses\fR termcap names for them are invented; according to the --#%XSI Curses standard, they have no termcap names. If your compiled terminfo --#%entries use these, they may not be binary-compatible with System V terminfo -+#%The XSI Curses standard added these hardcopy capabilities. -+#%They were used in some post-4.1 versions of System V curses, -+#%e.g., Solaris 2.5 and IRIX 6.x. -+#%Except for \fBYI\fP, the \fBncurses\fR termcap names for them are invented. -+#%According to the XSI Curses standard, they have no termcap names. -+#%If your compiled terminfo entries use these, -+#%they may not be binary-compatible with System V terminfo - #%entries after SVr4.1; beware! - #% - #%.na -@@ -761,7 +763,7 @@ - #%lw25 lw6 lw2 lw20. - #%\fBVariable Cap- TCap Description\fR - #%\fBString name Code\fR --set_pglen_inch slength str sL - - ----- YI Set page length to #1 hundredth of an inch -+set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap). - enter_horizontal_hl_mode ehhlm str Xh - - ----- Enter horizontal highlight mode - enter_left_hl_mode elhlm str Xl - - ----- Enter left highlight mode - enter_low_hl_mode elohlm str Xo - - ----- Enter low highlight mode -diff -Naur ncurses-5.9/include/Caps.keys ncurses-5.9.patch/include/Caps.keys ---- ncurses-5.9/include/Caps.keys 2010-12-04 19:47:13.000000000 +0100 -+++ ncurses-5.9.patch/include/Caps.keys 2014-09-01 16:33:22.342792099 +0200 -@@ -1,5 +1,5 @@ - ############################################################################## --# Copyright (c) 2001-2006,2010 Free Software Foundation, Inc. # -+# Copyright (c) 2001-2011,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -29,7 +29,7 @@ - # Author: Thomas Dickey - # and: Ilya Zakharevich - # --# $Id: Caps.keys,v 1.4 2010/12/04 18:47:13 tom Exp $ -+# $Id: Caps.keys,v 1.7 2013/07/20 17:59:24 tom Exp $ - # - # This is an adaptation of ncurses' termcap/terminfo capability table, which - # is illustrates an experimental extension to describe alt-, shift- and -@@ -229,11 +229,11 @@ - over_strike os bool os - - YBCG- terminal can overstrike - status_line_esc_ok eslok bool es - - YB-G- escape can be used on the status line - dest_tabs_magic_smso xt bool xt - - YBCGE tabs destructive, magic so char (t1061) --tilde_glitch hz bool hz - - YB-GE can't print ~'s (hazeltine) -+tilde_glitch hz bool hz - - YB-GE cannot print ~'s (hazeltine) - transparent_underline ul bool ul - - YBCGE underline character overstrikes - xon_xoff xon bool xo - - YB--- terminal uses xon/xoff handshaking --needs_xon_xoff nxon bool nx - - ----- padding won't work, xon/xoff required --prtr_silent mc5i bool 5i - - ----- printer won't echo on screen -+needs_xon_xoff nxon bool nx - - ----- padding will not work, xon/xoff required -+prtr_silent mc5i bool 5i - - ----- printer will not echo on screen - hard_cursor chts bool HC - - ----- cursor is hard to see - non_rev_rmcup nrrmc bool NR - - ----- smcup does not reverse rmcup - no_pad_char npc bool NP - - ----- pad character does not exist -@@ -277,7 +277,7 @@ - # These came in with SVr4's color support - max_colors colors num Co - - ----- maximum number of colors on screen - max_pairs pairs num pa - - ----- maximum number of color-pairs on the screen --no_color_video ncv num NC - - ----- video attributes that can't be used with colors -+no_color_video ncv num NC - - ----- video attributes that cannot be used with colors - #%.TE - #%.ad - #% -@@ -828,11 +828,13 @@ - #%.ad - #% - #%.in .8i --#%The XSI Curses standard added these. They are some post-4.1 --#%versions of System V curses, e.g., Solaris 2.5 and IRIX 6.x. --#%The \fBncurses\fR termcap names for them are invented; according to the --#%XSI Curses standard, they have no termcap names. If your compiled terminfo --#%entries use these, they may not be binary-compatible with System V terminfo -+#%The XSI Curses standard added these hardcopy capabilities. -+#%They were used in some post-4.1 versions of System V curses, -+#%e.g., Solaris 2.5 and IRIX 6.x. -+#%Except for \fBYI\fP, the \fBncurses\fR termcap names for them are invented. -+#%According to the XSI Curses standard, they have no termcap names. -+#%If your compiled terminfo entries use these, -+#%they may not be binary-compatible with System V terminfo - #%entries after SVr4.1; beware! - #% - #%.na -@@ -850,7 +852,7 @@ - enter_top_hl_mode ethlm str Xt - - ----- Enter top highlight mode - enter_vertical_hl_mode evhlm str Xv - - ----- Enter vertical highlight mode - set_a_attributes sgr1 str sA - - ----- Define second set of video attributes #1-#6 --set_pglen_inch slength str sL - - ----- YI Set page length to #1 hundredth of an inch -+set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap). - #%.TE - #%.ad - # -diff -Naur ncurses-5.9/include/Caps.osf1r5 ncurses-5.9.patch/include/Caps.osf1r5 ---- ncurses-5.9/include/Caps.osf1r5 2010-12-04 19:47:13.000000000 +0100 -+++ ncurses-5.9.patch/include/Caps.osf1r5 2014-09-01 16:33:22.342792099 +0200 -@@ -1,5 +1,5 @@ - ############################################################################## --# Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. # -+# Copyright (c) 2002-2010,2011 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -28,7 +28,7 @@ - # - # Author: Thomas Dickey - # --# $Id: Caps.osf1r5,v 1.5 2010/12/04 18:47:13 tom Exp $ -+# $Id: Caps.osf1r5,v 1.6 2011/10/15 22:52:09 tom Exp $ - # - # This is an adaptation of ncurses' termcap/terminfo capability table, which - # is designed to align with OSF/1 version 5 (Tru64) terminfo. -@@ -769,7 +769,7 @@ - xoff_character xoffc str XF - - ----- XOFF character - xon_character xonc str XN - - ----- XON character - zero_motion zerom str Zx - - ----- No motion for subsequent character --set_pglen_inch slength str sL - - ----- YI Set page length to #1 hundredth of an inch -+set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap). - enter_horizontal_hl_mode ehhlm str Xh - - ----- Enter horizontal highlight mode - enter_left_hl_mode elhlm str Xl - - ----- Enter left highlight mode - enter_low_hl_mode elohlm str Xo - - ----- Enter low highlight mode -diff -Naur ncurses-5.9/include/curses.h.in ncurses-5.9.patch/include/curses.h.in ---- ncurses-5.9/include/curses.h.in 2011-01-22 20:47:20.000000000 +0100 -+++ ncurses-5.9.patch/include/curses.h.in 2014-09-01 16:34:19.469887090 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - * and: Thomas E. Dickey 1996-on * - ****************************************************************************/ - --/* $Id: curses.h.in,v 1.220 2011/01/22 19:47:20 tom Exp $ */ -+/* $Id: curses.h.in,v 1.239 2014/03/22 22:57:35 tom Exp $ */ - - #ifndef __NCURSES_H - #define __NCURSES_H -@@ -59,6 +59,10 @@ - */ - #include <ncurses_dll.h> - -+#if @HAVE_STDINT_H@ -+#include <stdint.h> -+#endif -+ - /* - * User-definable tweak to disable the include of <stdbool.h>. - */ -@@ -91,11 +95,20 @@ - #define NCURSES_INLINE @NCURSES_INLINE@ - - /* -- * The internal type used for color values -+ * The internal type used for color values, and for color-pairs. The latter -+ * allows the curses library to enumerate the combinations of foreground and -+ * background colors used by an application, and is normally the product of the -+ * total foreground and background colors. -+ * -+ * X/Open uses "short" for both of these types, ultimately because they are -+ * numbers from the terminal database, which uses 16-bit signed values. - */ - #undef NCURSES_COLOR_T - #define NCURSES_COLOR_T short - -+#undef NCURSES_PAIRS_T -+#define NCURSES_PAIRS_T short -+ - /* - * Definition used to make WINDOW and similar structs opaque. - */ -@@ -129,6 +142,13 @@ - #define NCURSES_TPARM_VARARGS @NCURSES_TPARM_VARARGS@ - - /* -+ * Control type used for tparm's arguments. While X/Open equates long and -+ * char* values, this is not always workable for 64-bit platforms. -+ */ -+#undef NCURSES_TPARM_ARG -+#define NCURSES_TPARM_ARG @NCURSES_TPARM_ARG@ -+ -+/* - * NCURSES_CH_T is used in building the library, but not used otherwise in - * this header file, since that would make the normal/wide-character versions - * of the header incompatible. -@@ -140,8 +160,8 @@ - typedef unsigned chtype; - typedef unsigned mmask_t; - #else --typedef unsigned @cf_cv_typeof_chtype@ chtype; --typedef unsigned @cf_cv_typeof_mmask_t@ mmask_t; -+typedef @cf_cv_typeof_chtype@ chtype; -+typedef @cf_cv_typeof_mmask_t@ mmask_t; - #endif - - /* -@@ -151,15 +171,21 @@ - - /* - * With XPG4, you must define _XOPEN_SOURCE_EXTENDED, it is redundant (or -- * conflicting) when _XOPEN_SOURCE is 500 or greater. -+ * conflicting) when _XOPEN_SOURCE is 500 or greater. If NCURSES_WIDECHAR is -+ * not already defined, e.g., if the platform relies upon nonstandard feature -+ * test macros, define it at this point if the standard feature test macros -+ * indicate that it should be defined. - */ --#undef NCURSES_WIDECHAR --#if defined(_XOPEN_SOURCE_EXTENDED) || defined(_XPG5) --#define NCURSES_WIDECHAR -+#ifndef NCURSES_WIDECHAR -+#if defined(_XOPEN_SOURCE_EXTENDED) || (defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE - 0 >= 500)) -+#define NCURSES_WIDECHAR 1 -+#else -+#define NCURSES_WIDECHAR 0 - #endif -+#endif /* NCURSES_WIDECHAR */ - - #include <stdarg.h> /* we need va_list */ --#ifdef NCURSES_WIDECHAR -+#if NCURSES_WIDECHAR - #include <stddef.h> /* we want wchar_t */ - #endif - -@@ -231,6 +257,10 @@ - #define WA_TOP A_TOP - #define WA_VERTICAL A_VERTICAL - -+#if @NCURSES_EXT_FUNCS@ -+#define WA_ITALIC A_ITALIC /* ncurses extension */ -+#endif -+ - /* colors */ - #define COLOR_BLACK 0 - #define COLOR_RED 1 -@@ -250,7 +280,7 @@ - extern NCURSES_EXPORT_VAR(chtype) acs_map[]; - #endif - --#define NCURSES_ACS(c) (acs_map[NCURSES_CAST(unsigned char,c)]) -+#define NCURSES_ACS(c) (acs_map[NCURSES_CAST(unsigned char,(c))]) - - /* VT100 symbols begin here */ - #define ACS_ULCORNER NCURSES_ACS('l') /* upper left corner */ -@@ -342,7 +372,7 @@ - - typedef chtype attr_t; /* ...must be at least as wide as chtype */ - --#ifdef NCURSES_WIDECHAR -+#if NCURSES_WIDECHAR - - #if @NCURSES_LIBUTF8@ - #ifdef mblen /* libutf8.h defines it w/o undefining first */ -@@ -366,7 +396,7 @@ - /* - * cchar_t stores an array of CCHARW_MAX wide characters. The first is - * normally a spacing character. The others are non-spacing. If those -- * (spacing and nonspacing) do not fill the array, a null L'\0' follows. -+ * (spacing and nonspacing) do not fill the array, a null L'\0' follows. - * Otherwise, a null is assumed to follow when extracting via getcchar(). - */ - #define CCHARW_MAX @NCURSES_CCHARW_MAX@ -@@ -434,7 +464,7 @@ - - NCURSES_SIZE_T _yoffset; /* real begy is _begy + _yoffset */ - --#ifdef NCURSES_WIDECHAR -+#if NCURSES_WIDECHAR - cchar_t _bkgrnd; /* current background char/attribute pair */ - #if @NCURSES_EXT_COLORS@ - int _color; /* current color-pair for non-space character */ -@@ -556,10 +586,10 @@ - extern NCURSES_EXPORT(int) attroff (NCURSES_ATTR_T); /* generated */ - extern NCURSES_EXPORT(int) attron (NCURSES_ATTR_T); /* generated */ - extern NCURSES_EXPORT(int) attrset (NCURSES_ATTR_T); /* generated */ --extern NCURSES_EXPORT(int) attr_get (attr_t *, short *, void *); /* generated */ -+extern NCURSES_EXPORT(int) attr_get (attr_t *, NCURSES_PAIRS_T *, void *); /* generated */ - extern NCURSES_EXPORT(int) attr_off (attr_t, void *); /* generated */ - extern NCURSES_EXPORT(int) attr_on (attr_t, void *); /* generated */ --extern NCURSES_EXPORT(int) attr_set (attr_t, short, void *); /* generated */ -+extern NCURSES_EXPORT(int) attr_set (attr_t, NCURSES_PAIRS_T, void *); /* generated */ - extern NCURSES_EXPORT(int) baudrate (void); /* implemented */ - extern NCURSES_EXPORT(int) beep (void); /* implemented */ - extern NCURSES_EXPORT(int) bkgd (chtype); /* generated */ -@@ -568,13 +598,13 @@ - extern NCURSES_EXPORT(int) box (WINDOW *, chtype, chtype); /* generated */ - extern NCURSES_EXPORT(bool) can_change_color (void); /* implemented */ - extern NCURSES_EXPORT(int) cbreak (void); /* implemented */ --extern NCURSES_EXPORT(int) chgat (int, attr_t, short, const void *); /* generated */ -+extern NCURSES_EXPORT(int) chgat (int, attr_t, NCURSES_PAIRS_T, const void *); /* generated */ - extern NCURSES_EXPORT(int) clear (void); /* generated */ - extern NCURSES_EXPORT(int) clearok (WINDOW *,bool); /* implemented */ - extern NCURSES_EXPORT(int) clrtobot (void); /* generated */ - extern NCURSES_EXPORT(int) clrtoeol (void); /* generated */ --extern NCURSES_EXPORT(int) color_content (short,short*,short*,short*); /* implemented */ --extern NCURSES_EXPORT(int) color_set (short,void*); /* generated */ -+extern NCURSES_EXPORT(int) color_content (NCURSES_COLOR_T,NCURSES_COLOR_T*,NCURSES_COLOR_T*,NCURSES_COLOR_T*); /* implemented */ -+extern NCURSES_EXPORT(int) color_set (NCURSES_PAIRS_T,void*); /* generated */ - extern NCURSES_EXPORT(int) COLOR_PAIR (int); /* generated */ - extern NCURSES_EXPORT(int) copywin (const WINDOW*,WINDOW*,int,int,int,int,int,int,int); /* implemented */ - extern NCURSES_EXPORT(int) curs_set (int); /* implemented */ -@@ -613,8 +643,8 @@ - extern NCURSES_EXPORT(int) inchnstr (chtype *, int); /* generated */ - extern NCURSES_EXPORT(int) inchstr (chtype *); /* generated */ - extern NCURSES_EXPORT(WINDOW *) initscr (void); /* implemented */ --extern NCURSES_EXPORT(int) init_color (short,short,short,short); /* implemented */ --extern NCURSES_EXPORT(int) init_pair (short,short,short); /* implemented */ -+extern NCURSES_EXPORT(int) init_color (NCURSES_COLOR_T,NCURSES_COLOR_T,NCURSES_COLOR_T,NCURSES_COLOR_T); /* implemented */ -+extern NCURSES_EXPORT(int) init_pair (NCURSES_PAIRS_T,NCURSES_COLOR_T,NCURSES_COLOR_T); /* implemented */ - extern NCURSES_EXPORT(int) innstr (char *, int); /* generated */ - extern NCURSES_EXPORT(int) insch (chtype); /* generated */ - extern NCURSES_EXPORT(int) insdelln (int); /* generated */ -@@ -638,7 +668,7 @@ - extern NCURSES_EXPORT(int) mvaddchstr (int, int, const chtype *); /* generated */ - extern NCURSES_EXPORT(int) mvaddnstr (int, int, const char *, int); /* generated */ - extern NCURSES_EXPORT(int) mvaddstr (int, int, const char *); /* generated */ --extern NCURSES_EXPORT(int) mvchgat (int, int, int, attr_t, short, const void *); /* generated */ -+extern NCURSES_EXPORT(int) mvchgat (int, int, int, attr_t, NCURSES_PAIRS_T, const void *); /* generated */ - extern NCURSES_EXPORT(int) mvcur (int,int,int,int); /* implemented */ - extern NCURSES_EXPORT(int) mvdelch (int, int); /* generated */ - extern NCURSES_EXPORT(int) mvderwin (WINDOW *, int, int); /* implemented */ -@@ -664,7 +694,7 @@ - extern NCURSES_EXPORT(int) mvwaddchstr (WINDOW *, int, int, const chtype *); /* generated */ - extern NCURSES_EXPORT(int) mvwaddnstr (WINDOW *, int, int, const char *, int); /* generated */ - extern NCURSES_EXPORT(int) mvwaddstr (WINDOW *, int, int, const char *); /* generated */ --extern NCURSES_EXPORT(int) mvwchgat (WINDOW *, int, int, int, attr_t, short, const void *);/* generated */ -+extern NCURSES_EXPORT(int) mvwchgat (WINDOW *, int, int, int, attr_t, NCURSES_PAIRS_T, const void *);/* generated */ - extern NCURSES_EXPORT(int) mvwdelch (WINDOW *, int, int); /* generated */ - extern NCURSES_EXPORT(int) mvwgetch (WINDOW *, int, int); /* generated */ - extern NCURSES_EXPORT(int) mvwgetnstr (WINDOW *, int, int, char *, int); /* generated */ -@@ -698,7 +728,7 @@ - extern NCURSES_EXPORT(int) notimeout (WINDOW *,bool); /* implemented */ - extern NCURSES_EXPORT(int) overlay (const WINDOW*,WINDOW *); /* implemented */ - extern NCURSES_EXPORT(int) overwrite (const WINDOW*,WINDOW *); /* implemented */ --extern NCURSES_EXPORT(int) pair_content (short,short*,short*); /* implemented */ -+extern NCURSES_EXPORT(int) pair_content (NCURSES_PAIRS_T,NCURSES_COLOR_T*,NCURSES_COLOR_T*); /* implemented */ - extern NCURSES_EXPORT(int) PAIR_NUMBER (int); /* generated */ - extern NCURSES_EXPORT(int) pechochar (WINDOW *, const chtype); /* implemented */ - extern NCURSES_EXPORT(int) pnoutrefresh (WINDOW*,int,int,int,int,int,int);/* implemented */ -@@ -732,9 +762,9 @@ - extern NCURSES_EXPORT(int) slk_attr_on (attr_t,void*); /* generated:WIDEC */ - extern NCURSES_EXPORT(int) slk_attrset (const chtype); /* implemented */ - extern NCURSES_EXPORT(attr_t) slk_attr (void); /* implemented */ --extern NCURSES_EXPORT(int) slk_attr_set (const attr_t,short,void*); /* implemented */ -+extern NCURSES_EXPORT(int) slk_attr_set (const attr_t,NCURSES_PAIRS_T,void*); /* implemented */ - extern NCURSES_EXPORT(int) slk_clear (void); /* implemented */ --extern NCURSES_EXPORT(int) slk_color (short); /* implemented */ -+extern NCURSES_EXPORT(int) slk_color (NCURSES_PAIRS_T); /* implemented */ - extern NCURSES_EXPORT(int) slk_init (int); /* implemented */ - extern NCURSES_EXPORT(char *) slk_label (int); /* implemented */ - extern NCURSES_EXPORT(int) slk_noutrefresh (void); /* implemented */ -@@ -757,6 +787,7 @@ - extern NCURSES_EXPORT(int) ungetch (int); /* implemented */ - extern NCURSES_EXPORT(int) untouchwin (WINDOW *); /* generated */ - extern NCURSES_EXPORT(void) use_env (bool); /* implemented */ -+extern NCURSES_EXPORT(void) use_tioctl (bool); /* implemented */ - extern NCURSES_EXPORT(int) vidattr (chtype); /* implemented */ - extern NCURSES_EXPORT(int) vidputs (chtype, NCURSES_OUTC); /* implemented */ - extern NCURSES_EXPORT(int) vline (chtype, int); /* generated */ -@@ -772,18 +803,18 @@ - extern NCURSES_EXPORT(int) wattron (WINDOW *, int); /* generated */ - extern NCURSES_EXPORT(int) wattroff (WINDOW *, int); /* generated */ - extern NCURSES_EXPORT(int) wattrset (WINDOW *, int); /* generated */ --extern NCURSES_EXPORT(int) wattr_get (WINDOW *, attr_t *, short *, void *); /* generated */ -+extern NCURSES_EXPORT(int) wattr_get (WINDOW *, attr_t *, NCURSES_PAIRS_T *, void *); /* generated */ - extern NCURSES_EXPORT(int) wattr_on (WINDOW *, attr_t, void *); /* implemented */ - extern NCURSES_EXPORT(int) wattr_off (WINDOW *, attr_t, void *); /* implemented */ --extern NCURSES_EXPORT(int) wattr_set (WINDOW *, attr_t, short, void *); /* generated */ -+extern NCURSES_EXPORT(int) wattr_set (WINDOW *, attr_t, NCURSES_PAIRS_T, void *); /* generated */ - extern NCURSES_EXPORT(int) wbkgd (WINDOW *, chtype); /* implemented */ - extern NCURSES_EXPORT(void) wbkgdset (WINDOW *,chtype); /* implemented */ - extern NCURSES_EXPORT(int) wborder (WINDOW *,chtype,chtype,chtype,chtype,chtype,chtype,chtype,chtype); /* implemented */ --extern NCURSES_EXPORT(int) wchgat (WINDOW *, int, attr_t, short, const void *);/* implemented */ -+extern NCURSES_EXPORT(int) wchgat (WINDOW *, int, attr_t, NCURSES_PAIRS_T, const void *);/* implemented */ - extern NCURSES_EXPORT(int) wclear (WINDOW *); /* implemented */ - extern NCURSES_EXPORT(int) wclrtobot (WINDOW *); /* implemented */ - extern NCURSES_EXPORT(int) wclrtoeol (WINDOW *); /* implemented */ --extern NCURSES_EXPORT(int) wcolor_set (WINDOW*,short,void*); /* implemented */ -+extern NCURSES_EXPORT(int) wcolor_set (WINDOW*,NCURSES_PAIRS_T,void*); /* implemented */ - extern NCURSES_EXPORT(void) wcursyncup (WINDOW *); /* implemented */ - extern NCURSES_EXPORT(int) wdelch (WINDOW *); /* implemented */ - extern NCURSES_EXPORT(int) wdeleteln (WINDOW *); /* generated */ -@@ -832,7 +863,7 @@ - #if NCURSES_TPARM_VARARGS - extern NCURSES_EXPORT(char *) tparm (NCURSES_CONST char *, ...); /* special */ - #else --extern NCURSES_EXPORT(char *) tparm (NCURSES_CONST char *, long,long,long,long,long,long,long,long,long); /* special */ -+extern NCURSES_EXPORT(char *) tparm (NCURSES_CONST char *, NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG,NCURSES_TPARM_ARG); /* special */ - extern NCURSES_EXPORT(char *) tparm_varargs (NCURSES_CONST char *, ...); /* special */ - #endif - -@@ -854,7 +885,7 @@ - /* - * vid_attr() was implemented originally based on a draft of X/Open curses. - */ --#ifndef NCURSES_WIDECHAR -+#if !NCURSES_WIDECHAR - #define vid_attr(a,pair,opts) vidattr(a) - #endif - -@@ -903,6 +934,7 @@ - extern NCURSES_EXPORT(bool) is_scrollok (const WINDOW *); /* @GENERATED_EXT_FUNCS@ */ - extern NCURSES_EXPORT(bool) is_subwin (const WINDOW *); /* @GENERATED_EXT_FUNCS@ */ - extern NCURSES_EXPORT(bool) is_syncok (const WINDOW *); /* @GENERATED_EXT_FUNCS@ */ -+extern NCURSES_EXPORT(int) wgetdelay (const WINDOW *); /* @GENERATED_EXT_FUNCS@ */ - extern NCURSES_EXPORT(int) wgetscrreg (const WINDOW *, int *, int *); /* @GENERATED_EXT_FUNCS@ */ - - #else -@@ -929,7 +961,7 @@ - extern NCURSES_EXPORT(bool) NCURSES_SP_NAME(can_change_color) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(cbreak) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(curs_set) (SCREEN*, int); /* implemented:SP_FUNC */ --extern NCURSES_EXPORT(int) NCURSES_SP_NAME(color_content) (SCREEN*, short, short*, short*, short*); /* implemented:SP_FUNC */ -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(color_content) (SCREEN*, NCURSES_PAIRS_T, NCURSES_COLOR_T*, NCURSES_COLOR_T*, NCURSES_COLOR_T*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(def_prog_mode) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(def_shell_mode) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(delay_output) (SCREEN*, int); /* implemented:SP_FUNC */ -@@ -945,8 +977,8 @@ - extern NCURSES_EXPORT(bool) NCURSES_SP_NAME(has_colors) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(bool) NCURSES_SP_NAME(has_ic) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(bool) NCURSES_SP_NAME(has_il) (SCREEN*); /* implemented:SP_FUNC */ --extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_color) (SCREEN*, short, short, short, short); /* implemented:SP_FUNC */ --extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_pair) (SCREEN*, short, short, short); /* implemented:SP_FUNC */ -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_color) (SCREEN*, NCURSES_COLOR_T, NCURSES_COLOR_T, NCURSES_COLOR_T, NCURSES_COLOR_T); /* implemented:SP_FUNC */ -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_pair) (SCREEN*, NCURSES_PAIRS_T, NCURSES_COLOR_T, NCURSES_COLOR_T); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(intrflush) (SCREEN*, WINDOW*, bool); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(bool) NCURSES_SP_NAME(isendwin) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(NCURSES_CONST char *) NCURSES_SP_NAME(keyname) (SCREEN*, int); /* implemented:SP_FUNC */ -@@ -963,7 +995,7 @@ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(nonl) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(void) NCURSES_SP_NAME(noqiflush) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(noraw) (SCREEN*); /* implemented:SP_FUNC */ --extern NCURSES_EXPORT(int) NCURSES_SP_NAME(pair_content) (SCREEN*, short, short*, short*); /* implemented:SP_FUNC */ -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(pair_content) (SCREEN*, NCURSES_PAIRS_T, NCURSES_COLOR_T*, NCURSES_COLOR_T*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(void) NCURSES_SP_NAME(qiflush) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(raw) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(reset_prog_mode) (SCREEN*); /* implemented:SP_FUNC */ -@@ -978,9 +1010,9 @@ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_attron) (SCREEN*, const chtype); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_attrset) (SCREEN*, const chtype); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(attr_t) NCURSES_SP_NAME(slk_attr) (SCREEN*); /* implemented:SP_FUNC */ --extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_attr_set) (SCREEN*, const attr_t, short, void*); /* implemented:SP_FUNC */ -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_attr_set) (SCREEN*, const attr_t, NCURSES_PAIRS_T, void*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_clear) (SCREEN*); /* implemented:SP_FUNC */ --extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_color) (SCREEN*, short); /* implemented:SP_FUNC */ -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_color) (SCREEN*, NCURSES_PAIRS_T); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_init) (SCREEN*, int); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(slk_label) (SCREEN*, int); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_noutrefresh) (SCREEN*); /* implemented:SP_FUNC */ -@@ -994,6 +1026,7 @@ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(typeahead) (SCREEN*, int); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(ungetch) (SCREEN*, int); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(void) NCURSES_SP_NAME(use_env) (SCREEN*, bool); /* implemented:SP_FUNC */ -+extern NCURSES_EXPORT(void) NCURSES_SP_NAME(use_tioctl) (SCREEN*, bool); /* implemented:SP_FUNC */ - 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@ -@@ -1022,7 +1055,7 @@ - /* attributes */ - - #define NCURSES_ATTR_SHIFT 8 --#define NCURSES_BITS(mask,shift) ((mask) << ((shift) + NCURSES_ATTR_SHIFT)) -+#define NCURSES_BITS(mask,shift) (NCURSES_CAST(chtype,(mask)) << ((shift) + NCURSES_ATTR_SHIFT)) - - #define A_NORMAL (@cf_cv_1UL@ - @cf_cv_1UL@) - #define A_ATTRIBUTES NCURSES_BITS(~(@cf_cv_1UL@ - @cf_cv_1UL@),0) -@@ -1044,6 +1077,10 @@ - #define A_TOP NCURSES_BITS(@cf_cv_1UL@,21) - #define A_VERTICAL NCURSES_BITS(@cf_cv_1UL@,22) - -+#if @NCURSES_EXT_FUNCS@ -+#define A_ITALIC NCURSES_BITS(@cf_cv_1UL@,23) /* ncurses extension */ -+#endif -+ - /* - * Most of the pseudo functions are macros that either provide compatibility - * with older versions of curses, or provide inline functionality to improve -@@ -1084,7 +1121,7 @@ - */ - - #define wgetstr(w, s) wgetnstr(w, s, -1) --#define getnstr(s, n) wgetnstr(stdscr, s, n) -+#define getnstr(s, n) wgetnstr(stdscr, s, (n)) - - #define setterm(term) setupterm(term, 1, (int *)0) - -@@ -1115,7 +1152,7 @@ - #define wattroff(win,at) wattr_off(win, NCURSES_CAST(attr_t, at), NULL) - - #if !NCURSES_OPAQUE --#if defined(NCURSES_WIDECHAR) && @NCURSES_EXT_COLORS@ -+#if NCURSES_WIDECHAR && @NCURSES_EXT_COLORS@ - #define wattrset(win,at) ((win) \ - ? ((win)->_color = PAIR_NUMBER(at), \ - (win)->_attrs = NCURSES_CAST(attr_t, at), \ -@@ -1137,15 +1174,15 @@ - - #define box(win, v, h) wborder(win, v, v, h, h, 0, 0, 0, 0) - #define border(ls, rs, ts, bs, tl, tr, bl, br) wborder(stdscr, ls, rs, ts, bs, tl, tr, bl, br) --#define hline(ch, n) whline(stdscr, ch, n) --#define vline(ch, n) wvline(stdscr, ch, n) -+#define hline(ch, n) whline(stdscr, ch, (n)) -+#define vline(ch, n) wvline(stdscr, ch, (n)) - - #define winstr(w, s) winnstr(w, s, -1) - #define winchstr(w, s) winchnstr(w, s, -1) - #define winsstr(w, s) winsnstr(w, s, -1) - - #if !NCURSES_OPAQUE --#define redrawwin(win) wredrawln(win, 0, (win)->_maxy+1) -+#define redrawwin(win) wredrawln(win, 0, ((win) ? (win)->_maxy+1 : -1)) - #endif /* NCURSES_OPAQUE */ - - #define waddstr(win,str) waddnstr(win,str,-1) -@@ -1154,55 +1191,55 @@ - /* - * These apply to the first 256 color pairs. - */ --#define COLOR_PAIR(n) NCURSES_BITS(n, 0) --#define PAIR_NUMBER(a) (NCURSES_CAST(int,((NCURSES_CAST(unsigned long,a) & A_COLOR) >> NCURSES_ATTR_SHIFT))) -+#define COLOR_PAIR(n) NCURSES_BITS((n), 0) -+#define PAIR_NUMBER(a) (NCURSES_CAST(int,((NCURSES_CAST(unsigned long,(a)) & A_COLOR) >> NCURSES_ATTR_SHIFT))) - - /* - * pseudo functions for standard screen - */ - --#define addch(ch) waddch(stdscr,ch) --#define addchnstr(str,n) waddchnstr(stdscr,str,n) --#define addchstr(str) waddchstr(stdscr,str) --#define addnstr(str,n) waddnstr(stdscr,str,n) --#define addstr(str) waddnstr(stdscr,str,-1) --#define attroff(at) wattroff(stdscr,at) --#define attron(at) wattron(stdscr,at) --#define attrset(at) wattrset(stdscr,at) --#define attr_get(ap,cp,o) wattr_get(stdscr,ap,cp,o) --#define attr_off(a,o) wattr_off(stdscr,a,o) --#define attr_on(a,o) wattr_on(stdscr,a,o) --#define attr_set(a,c,o) wattr_set(stdscr,a,c,o) --#define bkgd(ch) wbkgd(stdscr,ch) --#define bkgdset(ch) wbkgdset(stdscr,ch) --#define chgat(n,a,c,o) wchgat(stdscr,n,a,c,o) -+#define addch(ch) waddch(stdscr,(ch)) -+#define addchnstr(str,n) waddchnstr(stdscr,(str),(n)) -+#define addchstr(str) waddchstr(stdscr,(str)) -+#define addnstr(str,n) waddnstr(stdscr,(str),(n)) -+#define addstr(str) waddnstr(stdscr,(str),-1) -+#define attroff(at) wattroff(stdscr,(at)) -+#define attron(at) wattron(stdscr,(at)) -+#define attrset(at) wattrset(stdscr,(at)) -+#define attr_get(ap,cp,o) wattr_get(stdscr,(ap),(cp),(o)) -+#define attr_off(a,o) wattr_off(stdscr,(a),(o)) -+#define attr_on(a,o) wattr_on(stdscr,(a),(o)) -+#define attr_set(a,c,o) wattr_set(stdscr,(a),(c),(o)) -+#define bkgd(ch) wbkgd(stdscr,(ch)) -+#define bkgdset(ch) wbkgdset(stdscr,(ch)) -+#define chgat(n,a,c,o) wchgat(stdscr,(n),(a),(c),(o)) - #define clear() wclear(stdscr) - #define clrtobot() wclrtobot(stdscr) - #define clrtoeol() wclrtoeol(stdscr) --#define color_set(c,o) wcolor_set(stdscr,c,o) -+#define color_set(c,o) wcolor_set(stdscr,(c),(o)) - #define delch() wdelch(stdscr) - #define deleteln() winsdelln(stdscr,-1) --#define echochar(c) wechochar(stdscr,c) -+#define echochar(c) wechochar(stdscr,(c)) - #define erase() werase(stdscr) - #define getch() wgetch(stdscr) --#define getstr(str) wgetstr(stdscr,str) -+#define getstr(str) wgetstr(stdscr,(str)) - #define inch() winch(stdscr) --#define inchnstr(s,n) winchnstr(stdscr,s,n) --#define inchstr(s) winchstr(stdscr,s) --#define innstr(s,n) winnstr(stdscr,s,n) --#define insch(c) winsch(stdscr,c) --#define insdelln(n) winsdelln(stdscr,n) -+#define inchnstr(s,n) winchnstr(stdscr,(s),(n)) -+#define inchstr(s) winchstr(stdscr,(s)) -+#define innstr(s,n) winnstr(stdscr,(s),(n)) -+#define insch(c) winsch(stdscr,(c)) -+#define insdelln(n) winsdelln(stdscr,(n)) - #define insertln() winsdelln(stdscr,1) --#define insnstr(s,n) winsnstr(stdscr,s,n) --#define insstr(s) winsstr(stdscr,s) --#define instr(s) winstr(stdscr,s) --#define move(y,x) wmove(stdscr,y,x) -+#define insnstr(s,n) winsnstr(stdscr,(s),(n)) -+#define insstr(s) winsstr(stdscr,(s)) -+#define instr(s) winstr(stdscr,(s)) -+#define move(y,x) wmove(stdscr,(y),(x)) - #define refresh() wrefresh(stdscr) --#define scrl(n) wscrl(stdscr,n) --#define setscrreg(t,b) wsetscrreg(stdscr,t,b) -+#define scrl(n) wscrl(stdscr,(n)) -+#define setscrreg(t,b) wsetscrreg(stdscr,(t),(b)) - #define standend() wstandend(stdscr) - #define standout() wstandout(stdscr) --#define timeout(delay) wtimeout(stdscr,delay) -+#define timeout(delay) wtimeout(stdscr,(delay)) - #define wdeleteln(win) winsdelln(win,-1) - #define winsertln(win) winsdelln(win,1) - -@@ -1210,70 +1247,75 @@ - * mv functions - */ - --#define mvwaddch(win,y,x,ch) (wmove(win,y,x) == ERR ? ERR : waddch(win,ch)) --#define mvwaddchnstr(win,y,x,str,n) (wmove(win,y,x) == ERR ? ERR : waddchnstr(win,str,n)) --#define mvwaddchstr(win,y,x,str) (wmove(win,y,x) == ERR ? ERR : waddchnstr(win,str,-1)) --#define mvwaddnstr(win,y,x,str,n) (wmove(win,y,x) == ERR ? ERR : waddnstr(win,str,n)) --#define mvwaddstr(win,y,x,str) (wmove(win,y,x) == ERR ? ERR : waddnstr(win,str,-1)) --#define mvwdelch(win,y,x) (wmove(win,y,x) == ERR ? ERR : wdelch(win)) --#define mvwchgat(win,y,x,n,a,c,o) (wmove(win,y,x) == ERR ? ERR : wchgat(win,n,a,c,o)) --#define mvwgetch(win,y,x) (wmove(win,y,x) == ERR ? ERR : wgetch(win)) --#define mvwgetnstr(win,y,x,str,n) (wmove(win,y,x) == ERR ? ERR : wgetnstr(win,str,n)) --#define mvwgetstr(win,y,x,str) (wmove(win,y,x) == ERR ? ERR : wgetstr(win,str)) --#define mvwhline(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : whline(win,c,n)) --#define mvwinch(win,y,x) (wmove(win,y,x) == ERR ? NCURSES_CAST(chtype, ERR) : winch(win)) --#define mvwinchnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : winchnstr(win,s,n)) --#define mvwinchstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : winchstr(win,s)) --#define mvwinnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : winnstr(win,s,n)) --#define mvwinsch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : winsch(win,c)) --#define mvwinsnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : winsnstr(win,s,n)) --#define mvwinsstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : winsstr(win,s)) --#define mvwinstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : winstr(win,s)) --#define mvwvline(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : wvline(win,c,n)) -- --#define mvaddch(y,x,ch) mvwaddch(stdscr,y,x,ch) --#define mvaddchnstr(y,x,str,n) mvwaddchnstr(stdscr,y,x,str,n) --#define mvaddchstr(y,x,str) mvwaddchstr(stdscr,y,x,str) --#define mvaddnstr(y,x,str,n) mvwaddnstr(stdscr,y,x,str,n) --#define mvaddstr(y,x,str) mvwaddstr(stdscr,y,x,str) --#define mvchgat(y,x,n,a,c,o) mvwchgat(stdscr,y,x,n,a,c,o) --#define mvdelch(y,x) mvwdelch(stdscr,y,x) --#define mvgetch(y,x) mvwgetch(stdscr,y,x) --#define mvgetnstr(y,x,str,n) mvwgetnstr(stdscr,y,x,str,n) --#define mvgetstr(y,x,str) mvwgetstr(stdscr,y,x,str) --#define mvhline(y,x,c,n) mvwhline(stdscr,y,x,c,n) --#define mvinch(y,x) mvwinch(stdscr,y,x) --#define mvinchnstr(y,x,s,n) mvwinchnstr(stdscr,y,x,s,n) --#define mvinchstr(y,x,s) mvwinchstr(stdscr,y,x,s) --#define mvinnstr(y,x,s,n) mvwinnstr(stdscr,y,x,s,n) --#define mvinsch(y,x,c) mvwinsch(stdscr,y,x,c) --#define mvinsnstr(y,x,s,n) mvwinsnstr(stdscr,y,x,s,n) --#define mvinsstr(y,x,s) mvwinsstr(stdscr,y,x,s) --#define mvinstr(y,x,s) mvwinstr(stdscr,y,x,s) --#define mvvline(y,x,c,n) mvwvline(stdscr,y,x,c,n) -+#define mvwaddch(win,y,x,ch) (wmove((win),(y),(x)) == ERR ? ERR : waddch((win),(ch))) -+#define mvwaddchnstr(win,y,x,str,n) (wmove((win),(y),(x)) == ERR ? ERR : waddchnstr((win),(str),(n))) -+#define mvwaddchstr(win,y,x,str) (wmove((win),(y),(x)) == ERR ? ERR : waddchnstr((win),(str),-1)) -+#define mvwaddnstr(win,y,x,str,n) (wmove((win),(y),(x)) == ERR ? ERR : waddnstr((win),(str),(n))) -+#define mvwaddstr(win,y,x,str) (wmove((win),(y),(x)) == ERR ? ERR : waddnstr((win),(str),-1)) -+#define mvwdelch(win,y,x) (wmove((win),(y),(x)) == ERR ? ERR : wdelch(win)) -+#define mvwchgat(win,y,x,n,a,c,o) (wmove((win),(y),(x)) == ERR ? ERR : wchgat((win),(n),(a),(c),(o))) -+#define mvwgetch(win,y,x) (wmove((win),(y),(x)) == ERR ? ERR : wgetch(win)) -+#define mvwgetnstr(win,y,x,str,n) (wmove((win),(y),(x)) == ERR ? ERR : wgetnstr((win),(str),(n))) -+#define mvwgetstr(win,y,x,str) (wmove((win),(y),(x)) == ERR ? ERR : wgetstr((win),(str))) -+#define mvwhline(win,y,x,c,n) (wmove((win),(y),(x)) == ERR ? ERR : whline((win),(c),(n))) -+#define mvwinch(win,y,x) (wmove((win),(y),(x)) == ERR ? NCURSES_CAST(chtype, ERR) : winch(win)) -+#define mvwinchnstr(win,y,x,s,n) (wmove((win),(y),(x)) == ERR ? ERR : winchnstr((win),(s),(n))) -+#define mvwinchstr(win,y,x,s) (wmove((win),(y),(x)) == ERR ? ERR : winchstr((win),(s))) -+#define mvwinnstr(win,y,x,s,n) (wmove((win),(y),(x)) == ERR ? ERR : winnstr((win),(s),(n))) -+#define mvwinsch(win,y,x,c) (wmove((win),(y),(x)) == ERR ? ERR : winsch((win),(c))) -+#define mvwinsnstr(win,y,x,s,n) (wmove((win),(y),(x)) == ERR ? ERR : winsnstr((win),(s),(n))) -+#define mvwinsstr(win,y,x,s) (wmove((win),(y),(x)) == ERR ? ERR : winsstr((win),(s))) -+#define mvwinstr(win,y,x,s) (wmove((win),(y),(x)) == ERR ? ERR : winstr((win),(s))) -+#define mvwvline(win,y,x,c,n) (wmove((win),(y),(x)) == ERR ? ERR : wvline((win),(c),(n))) -+ -+#define mvaddch(y,x,ch) mvwaddch(stdscr,(y),(x),(ch)) -+#define mvaddchnstr(y,x,str,n) mvwaddchnstr(stdscr,(y),(x),(str),(n)) -+#define mvaddchstr(y,x,str) mvwaddchstr(stdscr,(y),(x),(str)) -+#define mvaddnstr(y,x,str,n) mvwaddnstr(stdscr,(y),(x),(str),(n)) -+#define mvaddstr(y,x,str) mvwaddstr(stdscr,(y),(x),(str)) -+#define mvchgat(y,x,n,a,c,o) mvwchgat(stdscr,(y),(x),(n),(a),(c),(o)) -+#define mvdelch(y,x) mvwdelch(stdscr,(y),(x)) -+#define mvgetch(y,x) mvwgetch(stdscr,(y),(x)) -+#define mvgetnstr(y,x,str,n) mvwgetnstr(stdscr,(y),(x),(str),(n)) -+#define mvgetstr(y,x,str) mvwgetstr(stdscr,(y),(x),(str)) -+#define mvhline(y,x,c,n) mvwhline(stdscr,(y),(x),(c),(n)) -+#define mvinch(y,x) mvwinch(stdscr,(y),(x)) -+#define mvinchnstr(y,x,s,n) mvwinchnstr(stdscr,(y),(x),(s),(n)) -+#define mvinchstr(y,x,s) mvwinchstr(stdscr,(y),(x),(s)) -+#define mvinnstr(y,x,s,n) mvwinnstr(stdscr,(y),(x),(s),(n)) -+#define mvinsch(y,x,c) mvwinsch(stdscr,(y),(x),(c)) -+#define mvinsnstr(y,x,s,n) mvwinsnstr(stdscr,(y),(x),(s),(n)) -+#define mvinsstr(y,x,s) mvwinsstr(stdscr,(y),(x),(s)) -+#define mvinstr(y,x,s) mvwinstr(stdscr,(y),(x),(s)) -+#define mvvline(y,x,c,n) mvwvline(stdscr,(y),(x),(c),(n)) - - /* - * Some wide-character functions can be implemented without the extensions. - */ - #if !NCURSES_OPAQUE --#define getbkgd(win) ((win)->_bkgd) -+#define getbkgd(win) ((win) ? ((win)->_bkgd) : 0) - #endif /* NCURSES_OPAQUE */ - - #define slk_attr_off(a,v) ((v) ? ERR : slk_attroff(a)) - #define slk_attr_on(a,v) ((v) ? ERR : slk_attron(a)) - - #if !NCURSES_OPAQUE --#if defined(NCURSES_WIDECHAR) && @NCURSES_EXT_COLORS@ --#define wattr_set(win,a,p,opts) ((win)->_attrs = ((a) & ~A_COLOR), \ -- (win)->_color = (p), \ -+#if NCURSES_WIDECHAR && @NCURSES_EXT_COLORS@ -+#define wattr_set(win,a,p,opts) (((win) \ -+ ? ((win)->_attrs = ((a) & ~A_COLOR), \ -+ (win)->_color = (p)) \ -+ : OK), \ - OK) --#define wattr_get(win,a,p,opts) ((void)((a) != (void *)0 && (*(a) = (win)->_attrs)), \ -- (void)((p) != (void *)0 && (*(p) = (short)(win)->_color)), \ -+#define wattr_get(win,a,p,opts) ((void)(((a) != (void *)0) ? (*(a) = (win) ? (win)->_attrs : 0) : OK), \ -+ (void)(((p) != (void *)0) ? (*(p) = (NCURSES_PAIRS_T) ((win) ? (win)->_color : 0)) : OK), \ - OK) - #else --#define wattr_set(win,a,p,opts) ((win)->_attrs = (((a) & ~A_COLOR) | (attr_t)COLOR_PAIR(p)), OK) --#define wattr_get(win,a,p,opts) ((void)((a) != (void *)0 && (*(a) = (win)->_attrs)), \ -- (void)((p) != (void *)0 && (*(p) = (short)PAIR_NUMBER((win)->_attrs))), \ -+#define wattr_set(win,a,p,opts) (((win) \ -+ ? ((win)->_attrs = (((a) & ~A_COLOR) | (attr_t)COLOR_PAIR(p))) \ -+ : OK), \ -+ OK) -+#define wattr_get(win,a,p,opts) ((void)(((a) != (void *)0) ? (*(a) = (win) ? (win)->_attrs : 0) : OK), \ -+ (void)(((p) != (void *)0) ? (*(p) = (NCURSES_PAIRS_T) ((win) ? PAIR_NUMBER((win)->_attrs) : 0)) : OK), \ - OK) - #endif - #endif /* NCURSES_OPAQUE */ -@@ -1312,6 +1354,7 @@ - #define is_scrollok(win) ((win) ? (win)->_scroll : FALSE) - #define is_subwin(win) ((win) ? ((win)->_flags & _SUBWIN) != 0 : FALSE) - #define is_syncok(win) ((win) ? (win)->_sync : FALSE) -+#define wgetdelay(win) ((win) ? (win)->_delay : 0) - #define wgetparent(win) ((win) ? (win)->_parent : 0) - #define wgetscrreg(win,t,b) ((win) ? (*(t) = (win)->_regtop, *(b) = (win)->_regbottom, OK) : ERR) - #endif -diff -Naur ncurses-5.9/include/curses.tail ncurses-5.9.patch/include/curses.tail ---- ncurses-5.9/include/curses.tail 2010-03-28 21:10:55.000000000 +0200 -+++ ncurses-5.9.patch/include/curses.tail 2014-09-01 16:33:22.343792101 +0200 -@@ -1,4 +1,4 @@ --/* $Id: curses.tail,v 1.20 2010/03/28 19:10:55 tom Exp $ */ -+/* $Id: curses.tail,v 1.21 2011/10/29 20:03:22 tom Exp $ */ - /* - * vile:cmode: - * This file is part of ncurses, designed to be appended after curses.h.in -@@ -133,7 +133,7 @@ - extern NCURSES_EXPORT(char *) _tracechar (int); - extern NCURSES_EXPORT(char *) _tracechtype (chtype); - extern NCURSES_EXPORT(char *) _tracechtype2 (int, chtype); --#ifdef NCURSES_WIDECHAR -+#if NCURSES_WIDECHAR - #define _tracech_t _tracecchar_t - extern NCURSES_EXPORT(char *) _tracecchar_t (const cchar_t *); - #define _tracech_t2 _tracecchar_t2 -diff -Naur ncurses-5.9/include/curses.wide ncurses-5.9.patch/include/curses.wide ---- ncurses-5.9/include/curses.wide 2010-03-30 02:39:41.000000000 +0200 -+++ ncurses-5.9.patch/include/curses.wide 2014-09-01 16:33:22.343792101 +0200 -@@ -1,4 +1,4 @@ --/* $Id: curses.wide,v 1.42 2010/03/30 00:39:41 tom Exp $ */ -+/* $Id: curses.wide,v 1.46 2014/02/01 22:00:32 tom Exp $ */ - /* - * vile:cmode: - * This file is part of ncurses, designed to be appended after curses.h.in -@@ -6,11 +6,11 @@ - */ - #define _XOPEN_CURSES 1 - --#ifdef NCURSES_WIDECHAR -+#if NCURSES_WIDECHAR - - extern NCURSES_EXPORT_VAR(cchar_t *) _nc_wacs; - --#define NCURSES_WACS(c) (&_nc_wacs[(unsigned char)c]) -+#define NCURSES_WACS(c) (&_nc_wacs[NCURSES_CAST(unsigned char,(c))]) - - #define WACS_BSSB NCURSES_WACS('l') - #define WACS_SSBB NCURSES_WACS('m') -@@ -135,7 +135,7 @@ - extern NCURSES_EXPORT(int) get_wch (wint_t *); /* generated:WIDEC */ - extern NCURSES_EXPORT(int) get_wstr (wint_t *); /* generated:WIDEC */ - extern NCURSES_EXPORT(int) getbkgrnd (cchar_t *); /* generated:WIDEC */ --extern NCURSES_EXPORT(int) getcchar (const cchar_t *, wchar_t*, attr_t*, short*, void*); /* implemented */ -+extern NCURSES_EXPORT(int) getcchar (const cchar_t *, wchar_t*, attr_t*, NCURSES_PAIRS_T*, void*); /* implemented */ - extern NCURSES_EXPORT(int) getn_wstr (wint_t *, int); /* generated:WIDEC */ - extern NCURSES_EXPORT(int) hline_set (const cchar_t *, int); /* generated:WIDEC */ - extern NCURSES_EXPORT(int) in_wch (cchar_t *); /* generated:WIDEC */ -@@ -185,12 +185,12 @@ - extern NCURSES_EXPORT(int) mvwinwstr (WINDOW *, int, int, wchar_t *); /* generated:WIDEC */ - extern NCURSES_EXPORT(int) mvwvline_set (WINDOW *, int,int, const cchar_t *,int); /* generated:WIDEC */ - extern NCURSES_EXPORT(int) pecho_wchar (WINDOW *, const cchar_t *); /* implemented */ --extern NCURSES_EXPORT(int) setcchar (cchar_t *, const wchar_t *, const attr_t, short, const void *); /* implemented */ -+extern NCURSES_EXPORT(int) setcchar (cchar_t *, const wchar_t *, const attr_t, NCURSES_PAIRS_T, const void *); /* implemented */ - extern NCURSES_EXPORT(int) slk_wset (int, const wchar_t *, int); /* implemented */ - extern NCURSES_EXPORT(attr_t) term_attrs (void); /* implemented */ - extern NCURSES_EXPORT(int) unget_wch (const wchar_t); /* implemented */ --extern NCURSES_EXPORT(int) vid_attr (attr_t, short, void *); /* implemented */ --extern NCURSES_EXPORT(int) vid_puts (attr_t, short, void *, NCURSES_OUTC); /* implemented */ -+extern NCURSES_EXPORT(int) vid_attr (attr_t, NCURSES_PAIRS_T, void *); /* implemented */ -+extern NCURSES_EXPORT(int) vid_puts (attr_t, NCURSES_PAIRS_T, void *, NCURSES_OUTC); /* implemented */ - extern NCURSES_EXPORT(int) vline_set (const cchar_t *, int); /* generated:WIDEC */ - extern NCURSES_EXPORT(int) wadd_wch (WINDOW *,const cchar_t *); /* implemented */ - extern NCURSES_EXPORT(int) wadd_wchnstr (WINDOW *,const cchar_t *,int); /* implemented */ -@@ -221,8 +221,8 @@ - extern NCURSES_EXPORT(attr_t) NCURSES_SP_NAME(term_attrs) (SCREEN*); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(unget_wch) (SCREEN*, const wchar_t); /* implemented:SP_FUNC */ - extern NCURSES_EXPORT(wchar_t*) NCURSES_SP_NAME(wunctrl) (SCREEN*, cchar_t *); /* implemented:SP_FUNC */ --extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vid_attr) (SCREEN*, attr_t, short, void *); /* implemented:SP_FUNC */ --extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vid_puts) (SCREEN*, attr_t, short, void *, NCURSES_SP_OUTC); /* implemented:SP_FUNC */ -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vid_attr) (SCREEN*, attr_t, NCURSES_PAIRS_T, void *); /* implemented:SP_FUNC */ -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vid_puts) (SCREEN*, attr_t, NCURSES_PAIRS_T, void *, NCURSES_SP_OUTC); /* implemented:SP_FUNC */ - #endif - - #ifndef NCURSES_NOMACROS -@@ -230,77 +230,77 @@ - /* - * XSI curses macros for XPG4 conformance. - */ --#define add_wch(c) wadd_wch(stdscr,c) --#define add_wchnstr(str,n) wadd_wchnstr(stdscr,str,n) --#define add_wchstr(str) wadd_wchstr(stdscr,str) --#define addnwstr(wstr,n) waddnwstr(stdscr,wstr,n) --#define addwstr(wstr) waddwstr(stdscr,wstr) --#define bkgrnd(c) wbkgrnd(stdscr,c) --#define bkgrndset(c) wbkgrndset(stdscr,c) --#define border_set(l,r,t,b,tl,tr,bl,br) wborder_set(stdscr,l,r,t,b,tl,tr,bl,br) --#define box_set(w,v,h) wborder_set(w,v,v,h,h,0,0,0,0) --#define echo_wchar(c) wecho_wchar(stdscr,c) --#define get_wch(c) wget_wch(stdscr,c) --#define get_wstr(t) wget_wstr(stdscr,t) --#define getbkgrnd(wch) wgetbkgrnd(stdscr,wch) --#define getn_wstr(t,n) wgetn_wstr(stdscr,t,n) --#define hline_set(c,n) whline_set(stdscr,c,n) --#define in_wch(c) win_wch(stdscr,c) --#define in_wchnstr(c,n) win_wchnstr(stdscr,c,n) --#define in_wchstr(c) win_wchstr(stdscr,c) --#define innwstr(c,n) winnwstr(stdscr,c,n) --#define ins_nwstr(t,n) wins_nwstr(stdscr,t,n) --#define ins_wch(c) wins_wch(stdscr,c) --#define ins_wstr(t) wins_wstr(stdscr,t) --#define inwstr(c) winwstr(stdscr,c) --#define vline_set(c,n) wvline_set(stdscr,c,n) --#define wadd_wchstr(win,str) wadd_wchnstr(win,str,-1) --#define waddwstr(win,wstr) waddnwstr(win,wstr,-1) --#define wget_wstr(w,t) wgetn_wstr(w,t,-1) --#define win_wchstr(w,c) win_wchnstr(w,c,-1) --#define wins_wstr(w,t) wins_nwstr(w,t,-1) -+#define add_wch(c) wadd_wch(stdscr,(c)) -+#define add_wchnstr(str,n) wadd_wchnstr(stdscr,(str),(n)) -+#define add_wchstr(str) wadd_wchstr(stdscr,(str)) -+#define addnwstr(wstr,n) waddnwstr(stdscr,(wstr),(n)) -+#define addwstr(wstr) waddwstr(stdscr,(wstr)) -+#define bkgrnd(c) wbkgrnd(stdscr,(c)) -+#define bkgrndset(c) wbkgrndset(stdscr,(c)) -+#define border_set(l,r,t,b,tl,tr,bl,br) wborder_set(stdscr,(l),(r),(t),(b),tl,tr,bl,br) -+#define box_set(w,v,h) wborder_set((w),(v),(v),(h),(h),0,0,0,0) -+#define echo_wchar(c) wecho_wchar(stdscr,(c)) -+#define get_wch(c) wget_wch(stdscr,(c)) -+#define get_wstr(t) wget_wstr(stdscr,(t)) -+#define getbkgrnd(wch) wgetbkgrnd(stdscr,(wch)) -+#define getn_wstr(t,n) wgetn_wstr(stdscr,(t),(n)) -+#define hline_set(c,n) whline_set(stdscr,(c),(n)) -+#define in_wch(c) win_wch(stdscr,(c)) -+#define in_wchnstr(c,n) win_wchnstr(stdscr,(c),(n)) -+#define in_wchstr(c) win_wchstr(stdscr,(c)) -+#define innwstr(c,n) winnwstr(stdscr,(c),(n)) -+#define ins_nwstr(t,n) wins_nwstr(stdscr,(t),(n)) -+#define ins_wch(c) wins_wch(stdscr,(c)) -+#define ins_wstr(t) wins_wstr(stdscr,(t)) -+#define inwstr(c) winwstr(stdscr,(c)) -+#define vline_set(c,n) wvline_set(stdscr,(c),(n)) -+#define wadd_wchstr(win,str) wadd_wchnstr((win),(str),-1) -+#define waddwstr(win,wstr) waddnwstr((win),(wstr),-1) -+#define wget_wstr(w,t) wgetn_wstr((w),(t),-1) -+#define win_wchstr(w,c) win_wchnstr((w),(c),-1) -+#define wins_wstr(w,t) wins_nwstr((w),(t),-1) - - #if !NCURSES_OPAQUE --#define wgetbkgrnd(win,wch) (*wch = win->_bkgrnd, OK) -+#define wgetbkgrnd(win,wch) ((win) ? (*(wch) = (win)->_bkgrnd) : *(wch), OK) - #endif - --#define mvadd_wch(y,x,c) mvwadd_wch(stdscr,y,x,c) --#define mvadd_wchnstr(y,x,s,n) mvwadd_wchnstr(stdscr,y,x,s,n) --#define mvadd_wchstr(y,x,s) mvwadd_wchstr(stdscr,y,x,s) --#define mvaddnwstr(y,x,wstr,n) mvwaddnwstr(stdscr,y,x,wstr,n) --#define mvaddwstr(y,x,wstr) mvwaddwstr(stdscr,y,x,wstr) --#define mvget_wch(y,x,c) mvwget_wch(stdscr,y,x,c) --#define mvget_wstr(y,x,t) mvwget_wstr(stdscr,y,x,t) --#define mvgetn_wstr(y,x,t,n) mvwgetn_wstr(stdscr,y,x,t,n) --#define mvhline_set(y,x,c,n) mvwhline_set(stdscr,y,x,c,n) --#define mvin_wch(y,x,c) mvwin_wch(stdscr,y,x,c) --#define mvin_wchnstr(y,x,c,n) mvwin_wchnstr(stdscr,y,x,c,n) --#define mvin_wchstr(y,x,c) mvwin_wchstr(stdscr,y,x,c) --#define mvinnwstr(y,x,c,n) mvwinnwstr(stdscr,y,x,c,n) --#define mvins_nwstr(y,x,t,n) mvwins_nwstr(stdscr,y,x,t,n) --#define mvins_wch(y,x,c) mvwins_wch(stdscr,y,x,c) --#define mvins_wstr(y,x,t) mvwins_wstr(stdscr,y,x,t) --#define mvinwstr(y,x,c) mvwinwstr(stdscr,y,x,c) --#define mvvline_set(y,x,c,n) mvwvline_set(stdscr,y,x,c,n) -- --#define mvwadd_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : wadd_wch(win,c)) --#define mvwadd_wchnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : wadd_wchnstr(win,s,n)) --#define mvwadd_wchstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : wadd_wchstr(win,s)) --#define mvwaddnwstr(win,y,x,wstr,n) (wmove(win,y,x) == ERR ? ERR : waddnwstr(win,wstr,n)) --#define mvwaddwstr(win,y,x,wstr) (wmove(win,y,x) == ERR ? ERR : waddwstr(win,wstr)) --#define mvwget_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : wget_wch(win,c)) --#define mvwget_wstr(win,y,x,t) (wmove(win,y,x) == ERR ? ERR : wget_wstr(win,t)) --#define mvwgetn_wstr(win,y,x,t,n) (wmove(win,y,x) == ERR ? ERR : wgetn_wstr(win,t,n)) --#define mvwhline_set(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : whline_set(win,c,n)) --#define mvwin_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : win_wch(win,c)) --#define mvwin_wchnstr(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : win_wchnstr(win,c,n)) --#define mvwin_wchstr(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : win_wchstr(win,c)) --#define mvwinnwstr(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : winnwstr(win,c,n)) --#define mvwins_nwstr(win,y,x,t,n) (wmove(win,y,x) == ERR ? ERR : wins_nwstr(win,t,n)) --#define mvwins_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : wins_wch(win,c)) --#define mvwins_wstr(win,y,x,t) (wmove(win,y,x) == ERR ? ERR : wins_wstr(win,t)) --#define mvwinwstr(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : winwstr(win,c)) --#define mvwvline_set(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : wvline_set(win,c,n)) -+#define mvadd_wch(y,x,c) mvwadd_wch(stdscr,(y),(x),(c)) -+#define mvadd_wchnstr(y,x,s,n) mvwadd_wchnstr(stdscr,(y),(x),(s),(n)) -+#define mvadd_wchstr(y,x,s) mvwadd_wchstr(stdscr,(y),(x),(s)) -+#define mvaddnwstr(y,x,wstr,n) mvwaddnwstr(stdscr,(y),(x),(wstr),(n)) -+#define mvaddwstr(y,x,wstr) mvwaddwstr(stdscr,(y),(x),(wstr)) -+#define mvget_wch(y,x,c) mvwget_wch(stdscr,(y),(x),(c)) -+#define mvget_wstr(y,x,t) mvwget_wstr(stdscr,(y),(x),(t)) -+#define mvgetn_wstr(y,x,t,n) mvwgetn_wstr(stdscr,(y),(x),(t),(n)) -+#define mvhline_set(y,x,c,n) mvwhline_set(stdscr,(y),(x),(c),(n)) -+#define mvin_wch(y,x,c) mvwin_wch(stdscr,(y),(x),(c)) -+#define mvin_wchnstr(y,x,c,n) mvwin_wchnstr(stdscr,(y),(x),(c),(n)) -+#define mvin_wchstr(y,x,c) mvwin_wchstr(stdscr,(y),(x),(c)) -+#define mvinnwstr(y,x,c,n) mvwinnwstr(stdscr,(y),(x),(c),(n)) -+#define mvins_nwstr(y,x,t,n) mvwins_nwstr(stdscr,(y),(x),(t),(n)) -+#define mvins_wch(y,x,c) mvwins_wch(stdscr,(y),(x),(c)) -+#define mvins_wstr(y,x,t) mvwins_wstr(stdscr,(y),(x),(t)) -+#define mvinwstr(y,x,c) mvwinwstr(stdscr,(y),(x),(c)) -+#define mvvline_set(y,x,c,n) mvwvline_set(stdscr,(y),(x),(c),(n)) -+ -+#define mvwadd_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : wadd_wch((win),(c))) -+#define mvwadd_wchnstr(win,y,x,s,n) (wmove(win,(y),(x)) == ERR ? ERR : wadd_wchnstr((win),(s),(n))) -+#define mvwadd_wchstr(win,y,x,s) (wmove(win,(y),(x)) == ERR ? ERR : wadd_wchstr((win),(s))) -+#define mvwaddnwstr(win,y,x,wstr,n) (wmove(win,(y),(x)) == ERR ? ERR : waddnwstr((win),(wstr),(n))) -+#define mvwaddwstr(win,y,x,wstr) (wmove(win,(y),(x)) == ERR ? ERR : waddwstr((win),(wstr))) -+#define mvwget_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : wget_wch((win),(c))) -+#define mvwget_wstr(win,y,x,t) (wmove(win,(y),(x)) == ERR ? ERR : wget_wstr((win),(t))) -+#define mvwgetn_wstr(win,y,x,t,n) (wmove(win,(y),(x)) == ERR ? ERR : wgetn_wstr((win),(t),(n))) -+#define mvwhline_set(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : whline_set((win),(c),(n))) -+#define mvwin_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : win_wch((win),(c))) -+#define mvwin_wchnstr(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : win_wchnstr((win),(c),(n))) -+#define mvwin_wchstr(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : win_wchstr((win),(c))) -+#define mvwinnwstr(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : winnwstr((win),(c),(n))) -+#define mvwins_nwstr(win,y,x,t,n) (wmove(win,(y),(x)) == ERR ? ERR : wins_nwstr((win),(t),(n))) -+#define mvwins_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : wins_wch((win),(c))) -+#define mvwins_wstr(win,y,x,t) (wmove(win,(y),(x)) == ERR ? ERR : wins_wstr((win),(t))) -+#define mvwinwstr(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : winwstr((win),(c))) -+#define mvwvline_set(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : wvline_set((win),(c),(n))) - - #endif /* NCURSES_NOMACROS */ - -diff -Naur ncurses-5.9/include/headers ncurses-5.9.patch/include/headers ---- ncurses-5.9/include/headers 2009-09-05 19:46:30.000000000 +0200 -+++ ncurses-5.9.patch/include/headers 2014-09-01 16:33:22.343792101 +0200 -@@ -1,6 +1,6 @@ --# $Id: headers,v 1.10 2009/09/05 17:46:30 tom Exp $ -+# $Id: headers,v 1.13 2013/10/20 00:32:21 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -29,14 +29,24 @@ - # - # Author: Thomas E. Dickey 1996-on - # --term.h - curses.h - unctrl.h --termcap.h - ncurses_dll.h -+ -+# Support for termcap (and tic, etc.), which can be a separate library -+@ termlib -+term.h -+termcap.h -+ -+# Headers used only for tic, other programs using internal interfaces - @ ticlib - $(srcdir)/tic.h - $(srcdir)/term_entry.h - $(srcdir)/nc_tparm.h - -+# Porting -+@ port_win32con -+$(srcdir)/ncurses_mingw.h -+$(srcdir)/nc_mingw.h -+ - # vile:makemode -diff -Naur ncurses-5.9/include/Makefile.in ncurses-5.9.patch/include/Makefile.in ---- ncurses-5.9/include/Makefile.in 2010-11-27 22:45:27.000000000 +0100 -+++ ncurses-5.9.patch/include/Makefile.in 2014-09-01 16:33:22.342792099 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.40 2010/11/27 21:45:27 tom Exp $ -+# $Id: Makefile.in,v 1.41 2013/08/03 23:10:51 tom Exp $ - ############################################################################## --# Copyright (c) 1998,2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -48,6 +48,9 @@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - includedir = @includedir@ -+includesubdir = @includesubdir@ -+ -+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir) - - INSTALL = @INSTALL@ - INSTALL_DATA = @INSTALL_DATA@ -diff -Naur ncurses-5.9/include/MKkey_defs.sh ncurses-5.9.patch/include/MKkey_defs.sh ---- ncurses-5.9/include/MKkey_defs.sh 2003-12-06 18:10:09.000000000 +0100 -+++ ncurses-5.9.patch/include/MKkey_defs.sh 2014-09-01 16:33:22.342792099 +0200 -@@ -1,7 +1,7 @@ - #! /bin/sh --# $Id: MKkey_defs.sh,v 1.14 2003/12/06 17:10:09 tom Exp $ -+# $Id: MKkey_defs.sh,v 1.15 2013/03/09 16:32:01 tom Exp $ - ############################################################################## --# Copyright (c) 2001-2002,2003 Free Software Foundation, Inc. # -+# Copyright (c) 2001-2003,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -65,9 +65,12 @@ - key_event kv1 str V1 KEY_EVENT + ----- We were interrupted by an event - EOF - -+THIS=./`basename $0` -+PARM=./`basename $DATA` -+ - cat <<EOF - /* -- * These definitions were generated by $0 $DATA -+ * These definitions were generated by $THIS $PARM - */ - EOF - -diff -Naur ncurses-5.9/include/MKterm.h.awk.in ncurses-5.9.patch/include/MKterm.h.awk.in ---- ncurses-5.9/include/MKterm.h.awk.in 2010-01-09 20:53:26.000000000 +0100 -+++ ncurses-5.9.patch/include/MKterm.h.awk.in 2014-09-01 16:33:22.342792099 +0200 -@@ -1,7 +1,7 @@ - # vile:awkmode - BEGIN { - print "/****************************************************************************" -- print " * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *" -+ print " * Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. *" - print " * *" - print " * Permission is hereby granted, free of charge, to any person obtaining a *" - print " * copy of this software and associated documentation files (the *" -@@ -34,7 +34,7 @@ - print "/* and: Thomas E. Dickey 1995-on */" - print "/****************************************************************************/" - print "" -- print "/* $Id: MKterm.h.awk.in,v 1.58 2010/01/09 19:53:26 tom Exp $ */" -+ print "/* $Id: MKterm.h.awk.in,v 1.62 2013/08/17 19:21:56 tom Exp $ */" - print "" - print "/*" - print "** term.h -- Definition of struct term" -@@ -62,6 +62,12 @@ - print "#undef NCURSES_SBOOL" - print "#define NCURSES_SBOOL @NCURSES_SBOOL@" - print "" -+ print "#undef NCURSES_USE_DATABASE" -+ print "#define NCURSES_USE_DATABASE @NCURSES_USE_DATABASE@" -+ print "" -+ print "#undef NCURSES_USE_TERMCAP" -+ print "#define NCURSES_USE_TERMCAP @NCURSES_USE_TERMCAP@" -+ print "" - print "#undef NCURSES_XNAMES" - print "#define NCURSES_XNAMES @NCURSES_XNAMES@" - print "" -@@ -93,41 +99,6 @@ - print "#include <termio.h>" - print "#define TTY struct termio" - print "" -- print "/* Add definitions to make termio look like termios." -- print " * But ifdef it, since there are some implementations" -- print " * that try to do this for us in a fake <termio.h>." -- print " */" -- print "#ifndef TCSANOW" -- print "#define TCSANOW TCSETA" -- print "#endif" -- print "#ifndef TCSADRAIN" -- print "#define TCSADRAIN TCSETAW" -- print "#endif" -- print "#ifndef TCSAFLUSH" -- print "#define TCSAFLUSH TCSETAF" -- print "#endif" -- print "#ifndef tcsetattr" -- print "#define tcsetattr(fd, cmd, arg) ioctl(fd, cmd, arg)" -- print "#endif" -- print "#ifndef tcgetattr" -- print "#define tcgetattr(fd, arg) ioctl(fd, TCGETA, arg)" -- print "#endif" -- print "#ifndef cfgetospeed" -- print "#define cfgetospeed(t) ((t)->c_cflag & CBAUD)" -- print "#endif" -- print "#ifndef TCIFLUSH " -- print "#define TCIFLUSH 0" -- print "#endif" -- print "#ifndef TCOFLUSH " -- print "#define TCOFLUSH 1" -- print "#endif" -- print "#ifndef TCIOFLUSH " -- print "#define TCIOFLUSH 2" -- print "#endif" -- print "#ifndef tcflush" -- print "#define tcflush(fd, arg) ioctl(fd, TCFLSH, arg)" -- print "#endif" -- print "" - print "#else /* !HAVE_TERMIO_H */" - print "" - print "#if __MINGW32__" -@@ -281,6 +252,7 @@ - print "extern NCURSES_EXPORT(int) _nc_get_tty_mode (TTY *buf);" - print "extern NCURSES_EXPORT(int) _nc_read_entry (const char * const, char * const, TERMTYPE *const);" - print "extern NCURSES_EXPORT(int) _nc_read_file_entry (const char *const, TERMTYPE *);" -+ print "extern NCURSES_EXPORT(void) _nc_init_termtype (TERMTYPE *const);" - print "extern NCURSES_EXPORT(int) _nc_read_termtype (TERMTYPE *, char *, int);" - print "extern NCURSES_EXPORT(char *) _nc_first_name (const char *const);" - print "extern NCURSES_EXPORT(int) _nc_name_match (const char *const, const char *const, const char *const);" -diff -Naur ncurses-5.9/include/nc_alloc.h ncurses-5.9.patch/include/nc_alloc.h ---- ncurses-5.9/include/nc_alloc.h 2010-11-20 23:59:49.000000000 +0100 -+++ ncurses-5.9.patch/include/nc_alloc.h 2014-09-01 16:33:22.343792101 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,10 +29,11 @@ - /**************************************************************************** - * Author: Thomas E. Dickey 1996-on * - ****************************************************************************/ --/* $Id: nc_alloc.h,v 1.18 2010/11/20 22:59:49 tom Exp $ */ -+/* $Id: nc_alloc.h,v 1.22 2013/01/26 21:56:51 tom Exp $ */ - - #ifndef NC_ALLOC_included - #define NC_ALLOC_included 1 -+/* *INDENT-OFF* */ - - #ifdef __cplusplus - extern "C" { -@@ -94,6 +95,7 @@ - /* doalloc.c */ - extern NCURSES_EXPORT(void *) _nc_doalloc(void *, size_t); - #if !HAVE_STRDUP -+#undef strdup - #define strdup _nc_strdup - extern NCURSES_EXPORT(char *) _nc_strdup(const char *); - #endif -@@ -101,12 +103,14 @@ - /* entries.c */ - extern NCURSES_EXPORT(void) _nc_leaks_tinfo(void); - --#define typeMalloc(type,elts) (type *)malloc((elts)*sizeof(type)) --#define typeCalloc(type,elts) (type *)calloc((elts),sizeof(type)) --#define typeRealloc(type,elts,ptr) (type *)_nc_doalloc(ptr, (elts)*sizeof(type)) -+#define typeMalloc(type,elts) (type *)malloc((size_t)(elts)*sizeof(type)) -+#define typeCalloc(type,elts) (type *)calloc((size_t)(elts),sizeof(type)) -+#define typeRealloc(type,elts,ptr) (type *)_nc_doalloc(ptr, (size_t)(elts)*sizeof(type)) - - #ifdef __cplusplus - } - #endif - -+/* *INDENT-ON* */ -+ - #endif /* NC_ALLOC_included */ -diff -Naur ncurses-5.9/include/nc_string.h ncurses-5.9.patch/include/nc_string.h ---- ncurses-5.9/include/nc_string.h 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/include/nc_string.h 2014-09-01 16:33:22.344792103 +0200 -@@ -0,0 +1,77 @@ -+/**************************************************************************** -+ * Copyright (c) 2012,2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2012 * -+ ****************************************************************************/ -+ -+#ifndef STRING_HACKS_H -+#define STRING_HACKS_H 1 -+ -+#include <ncurses_cfg.h> -+ -+/* -+ * $Id: nc_string.h,v 1.4 2013/12/15 01:09:19 tom Exp $ -+ * -+ * String-hacks. Use these macros to stifle warnings on (presumably) correct -+ * uses of strcat, strcpy and sprintf. -+ * -+ * By the way - -+ * A fundamental limitation of the interfaces (and frequent issue in bug -+ * reports using these functions) is that sizes are passed as unsigned values -+ * (with associated sign-extension problems), limiting their effectiveness -+ * when checking for buffer overflow. -+ */ -+ -+#ifdef __cplusplus -+#define NCURSES_VOID /* nothing */ -+#else -+#define NCURSES_VOID (void) -+#endif -+ -+#if USE_STRING_HACKS && HAVE_STRLCAT -+#define _nc_STRCAT(d,s,n) NCURSES_VOID strlcat((d),(s),NCURSES_CAST(size_t,n)) -+#else -+#define _nc_STRCAT(d,s,n) NCURSES_VOID strcat((d),(s)) -+#endif -+ -+#if USE_STRING_HACKS && HAVE_STRLCPY -+#define _nc_STRCPY(d,s,n) NCURSES_VOID strlcpy((d),(s),NCURSES_CAST(size_t,n)) -+#else -+#define _nc_STRCPY(d,s,n) NCURSES_VOID strcpy((d),(s)) -+#endif -+ -+#if USE_STRING_HACKS && HAVE_SNPRINTF -+#define _nc_SPRINTF NCURSES_VOID snprintf -+#define _nc_SLIMIT(n) NCURSES_CAST(size_t,n), -+#else -+#define _nc_SPRINTF NCURSES_VOID sprintf -+#define _nc_SLIMIT(n) /* nothing */ -+#endif -+ -+#endif /* STRING_HACKS_H */ -diff -Naur ncurses-5.9/include/nc_termios.h ncurses-5.9.patch/include/nc_termios.h ---- ncurses-5.9/include/nc_termios.h 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/include/nc_termios.h 2014-09-01 16:33:22.344792103 +0200 -@@ -0,0 +1,171 @@ -+/**************************************************************************** -+ * Copyright (c) 2011 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2011 * -+ ****************************************************************************/ -+ -+/* $Id: nc_termios.h,v 1.2 2011/06/25 20:44:05 tom Exp $ */ -+ -+#ifndef NC_TERMIOS_included -+#define NC_TERMIOS_included 1 -+ -+#if HAVE_TERMIOS_H && HAVE_TCGETATTR -+ -+#else /* !HAVE_TERMIOS_H */ -+ -+#if HAVE_TERMIO_H -+ -+/* Add definitions to make termio look like termios. -+ * But ifdef it, since there are some implementations -+ * that try to do this for us in a fake <termio.h>. -+ */ -+#ifndef TCSADRAIN -+#define TCSADRAIN TCSETAW -+#endif -+#ifndef TCSAFLUSH -+#define TCSAFLUSH TCSETAF -+#endif -+#ifndef tcsetattr -+#define tcsetattr(fd, cmd, arg) ioctl(fd, cmd, arg) -+#endif -+#ifndef tcgetattr -+#define tcgetattr(fd, arg) ioctl(fd, TCGETA, arg) -+#endif -+#ifndef cfgetospeed -+#define cfgetospeed(t) ((t)->c_cflag & CBAUD) -+#endif -+#ifndef TCIFLUSH -+#define TCIFLUSH 0 -+#endif -+#ifndef tcflush -+#define tcflush(fd, arg) ioctl(fd, TCFLSH, arg) -+#endif -+ -+#else /* !HAVE_TERMIO_H */ -+ -+#if __MINGW32__ -+ -+/* c_cc chars */ -+#define VINTR 0 -+#define VQUIT 1 -+#define VERASE 2 -+#define VKILL 3 -+#define VEOF 4 -+#define VTIME 5 -+#define VMIN 6 -+ -+/* c_iflag bits */ -+#define ISTRIP 0000040 -+#define INLCR 0000100 -+#define IGNCR 0000200 -+#define ICRNL 0000400 -+#define BRKINT 0000002 -+#define PARMRK 0000010 -+#define IXON 0002000 -+#define IGNBRK 0000001 -+#define IGNPAR 0000004 -+#define INPCK 0000020 -+#define IXOFF 0010000 -+ -+/* c_oflag bits */ -+#define OPOST 0000001 -+ -+/* c_cflag bit meaning */ -+#define CBAUD 0010017 -+#define CSIZE 0000060 -+#define CS8 0000060 -+#define B0 0000000 -+#define B50 0000001 -+#define B75 0000002 -+#define B110 0000003 -+#define B134 0000004 -+#define B150 0000005 -+#define B200 0000006 -+#define B300 0000007 -+#define B600 0000010 -+#define B1200 0000011 -+#define B1800 0000012 -+#define B2400 0000013 -+#define B4800 0000014 -+#define B9600 0000015 -+#define CLOCAL 0004000 -+#define CREAD 0000200 -+#define CSTOPB 0000100 -+#define HUPCL 0002000 -+#define PARENB 0000400 -+#define PARODD 0001000 -+ -+/* c_lflag bits */ -+#define ECHO 0000010 -+#define ECHONL 0000100 -+#define ISIG 0000001 -+#define IEXTEN 0100000 -+#define ICANON 0000002 -+#define NOFLSH 0000200 -+#define ECHOE 0000020 -+#define ECHOK 0000040 -+ -+/* tcflush() */ -+#define TCIFLUSH 0 -+ -+/* tcsetattr uses these */ -+#define TCSADRAIN 1 -+ -+/* ioctls */ -+#define TCGETA 0x5405 -+#define TCFLSH 0x540B -+#define TIOCGWINSZ 0x5413 -+ -+#ifndef cfgetospeed -+#define cfgetospeed(t) ((t)->c_cflag & CBAUD) -+#endif -+ -+#ifndef tcsetattr -+#define tcsetattr(fd, cmd, arg) _nc_mingw_ioctl(fd, cmd, arg) -+#endif -+ -+#ifndef tcgetattr -+#define tcgetattr(fd, arg) _nc_mingw_ioctl(fd, TCGETA, arg) -+#endif -+ -+#ifndef tcflush -+#define tcflush(fd, arg) _nc_mingw_ioctl(fd, TCFLSH, arg) -+#endif -+ -+#undef ttyname -+#define ttyname(fd) NULL -+ -+#else -+ -+#endif /* __MINGW32__ */ -+#endif /* HAVE_TERMIO_H */ -+ -+#endif /* HAVE_TERMIOS_H */ -+ -+#endif /* NC_TERMIOS_included */ -diff -Naur ncurses-5.9/include/nc_tparm.h ncurses-5.9.patch/include/nc_tparm.h ---- ncurses-5.9/include/nc_tparm.h 2010-12-25 21:27:22.000000000 +0100 -+++ ncurses-5.9.patch/include/nc_tparm.h 2014-09-01 16:33:22.344792103 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2006,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2006-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -30,7 +30,7 @@ - * Author: Thomas E. Dickey 2006 * - ****************************************************************************/ - --/* $Id: nc_tparm.h,v 1.5 2010/12/25 20:27:22 tom Exp $ */ -+/* $Id: nc_tparm.h,v 1.6 2012/02/18 21:34:42 tom Exp $ */ - - #ifndef NC_TPARM_included - #define NC_TPARM_included 1 -@@ -40,8 +40,12 @@ - * assumption of the varargs code. - */ - #ifndef TPARM_ARG -+#ifdef NCURSES_TPARM_ARG -+#define TPARM_ARG NCURSES_TPARM_ARG -+#else - #define TPARM_ARG long - #endif -+#endif /* TPARAM_ARG */ - - #define TPARM_N(n) (TPARM_ARG)(n) - -diff -Naur ncurses-5.9/include/ncurses_defs ncurses-5.9.patch/include/ncurses_defs ---- ncurses-5.9/include/ncurses_defs 2011-03-22 10:17:59.000000000 +0100 -+++ ncurses-5.9.patch/include/ncurses_defs 2014-09-01 16:33:22.344792103 +0200 -@@ -1,6 +1,6 @@ --# $Id: ncurses_defs,v 1.46 2011/03/22 09:17:59 tom Exp $ -+# $Id: ncurses_defs,v 1.62 2013/12/14 23:52:07 tom Exp $ - ############################################################################## --# Copyright (c) 2000-2010,2011 Free Software Foundation, Inc. # -+# Copyright (c) 2000-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -33,7 +33,7 @@ - - BROKEN_LINKER - BSD_TPUTS --CC_HAS_PROTOS -+CGETENT_CONST /* nothing */ - CPP_HAS_PARAM_INIT - CURSES_ACS_ARRAY acs_map - CURSES_WACS_ARRAY _nc_wacs -@@ -41,6 +41,7 @@ - ETIP_NEEDS_MATH_H - GCC_NORETURN /* nothing */ - GCC_UNUSED /* nothing */ -+HAVE_ASSUME_DEFAULT_COLORS - HAVE_BIG_CORE - HAVE_BSD_CGETENT - HAVE_BSD_SIGNAL_H -@@ -69,6 +70,7 @@ - HAVE_GPP_BUILTIN_H - HAVE_GXX_BUILTIN_H - HAVE_HAS_KEY -+HAVE_INTTYPES_H - HAVE_IOSTREAM - HAVE_ISASCII - HAVE_ISSETUGID -@@ -102,6 +104,7 @@ - HAVE_POLL - HAVE_POLL_H - HAVE_PURIFY -+HAVE_PUTENV - HAVE_PUTWC - HAVE_PUTWIN 1 - HAVE_REGEXPR_H_FUNCS -@@ -115,6 +118,7 @@ - HAVE_SELECT - HAVE_SETBUF - HAVE_SETBUFFER -+HAVE_SETENV - HAVE_SETUPTERM 1 - HAVE_SETVBUF - HAVE_SGTTY_H -@@ -123,7 +127,11 @@ - HAVE_SIZECHANGE - HAVE_SLK_COLOR - HAVE_SLK_INIT 1 -+HAVE_SNPRINTF -+HAVE_STDINT_H - HAVE_STRDUP -+HAVE_STRLCAT -+HAVE_STRLCPY - HAVE_STRSTR - HAVE_SYMLINK - HAVE_SYS_BSDTYPES_H -@@ -153,9 +161,12 @@ - HAVE_TYPEINFO - HAVE_TYPE_ATTR_T - HAVE_TYPE_SIGACTION -+HAVE_UNCTRL_H 1 - HAVE_UNISTD_H - HAVE_UNLINK - HAVE_USE_DEFAULT_COLORS -+HAVE_USE_SCREEN -+HAVE_USE_WINDOW - HAVE_VFSCANF - HAVE_VSNPRINTF - HAVE_VSSCANF -@@ -175,11 +186,12 @@ - NCURSES_EXT_COLORS - NCURSES_EXT_FUNCS - NCURSES_NO_PADDING -+NCURSES_OSPEED_COMPAT - NCURSES_PATHSEP ':' -+NCURSES_WIDECHAR - NEED_PTEM_H - NO_LEAKS - PURE_TERMINFO --RETSIGTYPE - STDC_HEADERS - SVR4_ACTION - SVR4_TERMIO -@@ -189,7 +201,6 @@ - TIME_WITH_SYS_TIME - TYPEOF_CHTYPE - USE_COLORFGBG --USE_DATABASE - USE_GETCAP - USE_GETCAP_CACHE - USE_HARD_TABS -@@ -205,9 +216,9 @@ - USE_SAFE_SPRINTF - USE_SCROLL_HINTS - USE_SIGWINCH -+USE_STRING_HACKS - USE_SYMLINKS - USE_SYSMOUSE --USE_TERMCAP - USE_WEAK_SYMBOLS - USE_WIDEC_SUPPORT - USE_XMC_SUPPORT -diff -Naur ncurses-5.9/include/ncurses_mingw.h ncurses-5.9.patch/include/ncurses_mingw.h ---- ncurses-5.9/include/ncurses_mingw.h 2008-12-14 20:22:16.000000000 +0100 -+++ ncurses-5.9.patch/include/ncurses_mingw.h 2014-09-01 16:33:22.344792103 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -31,10 +31,10 @@ - * * - ****************************************************************************/ - --/* $Id: ncurses_mingw.h,v 1.1 2008/12/14 19:22:16 juergen Exp $ */ -+/* $Id: ncurses_mingw.h,v 1.2 2011/06/25 20:51:00 tom Exp $ */ - - /* -- * This is a placholder up to now and describes what needs to be implemented -+ * This is a placeholder up to now and describes what needs to be implemented - * to support I/O to external terminals with ncurses on the Windows OS. - */ - -@@ -67,98 +67,8 @@ - speed_t c_ospeed; /* c_ospeed */ - }; - --/* c_cc chars */ --#define VINTR 0 --#define VQUIT 1 --#define VERASE 2 --#define VKILL 3 --#define VEOF 4 --#define VTIME 5 --#define VMIN 6 -- --/* c_iflag bits */ --#define ISTRIP 0000040 --#define INLCR 0000100 --#define IGNCR 0000200 --#define ICRNL 0000400 --#define BRKINT 0000002 --#define PARMRK 0000010 --#define IXON 0002000 --#define IGNBRK 0000001 --#define IGNPAR 0000004 --#define INPCK 0000020 --#define IXOFF 0010000 -- --/* c_oflag bits */ --#define OPOST 0000001 -- --/* c_cflag bit meaning */ --#define CBAUD 0010017 --#define CSIZE 0000060 --#define CS8 0000060 --#define B0 0000000 --#define B50 0000001 --#define B75 0000002 --#define B110 0000003 --#define B134 0000004 --#define B150 0000005 --#define B200 0000006 --#define B300 0000007 --#define B600 0000010 --#define B1200 0000011 --#define B1800 0000012 --#define B2400 0000013 --#define B4800 0000014 --#define B9600 0000015 --#define CLOCAL 0004000 --#define CREAD 0000200 --#define CSTOPB 0000100 --#define HUPCL 0002000 --#define PARENB 0000400 --#define PARODD 0001000 -- --/* c_lflag bits */ --#define ECHO 0000010 --#define ECHONL 0000100 --#define ISIG 0000001 --#define IEXTEN 0100000 --#define ICANON 0000002 --#define NOFLSH 0000200 --#define ECHOE 0000020 --#define ECHOK 0000040 -- --/* tcflush() */ --#define TCIFLUSH 0 -- --/* tcsetattr uses these */ --#define TCSADRAIN 1 -- --/* ioctls */ --#define TCGETA 0x5405 --#define TCFLSH 0x540B --#define TIOCGWINSZ 0x5413 -- - extern int _nc_mingw_ioctl(int fd, long int request, struct termios* arg); - extern void _nc_set_term_driver(void* term); - --#ifndef cfgetospeed --#define cfgetospeed(t) ((t)->c_cflag & CBAUD) --#endif -- --#ifndef tcsetattr --#define tcsetattr(fd, cmd, arg) _nc_mingw_ioctl(fd, cmd, arg) --#endif -- --#ifndef tcgetattr --#define tcgetattr(fd, arg) _nc_mingw_ioctl(fd, TCGETA, arg) --#endif -- --#ifndef tcflush --#define tcflush(fd, arg) _nc_mingw_ioctl(fd, TCFLSH, arg) --#endif -- --#undef ttyname --#define ttyname(fd) NULL -- --#endif --#endif -+#endif /* _NC_MINGWH */ -+#endif /* __MINGW32__ */ -diff -Naur ncurses-5.9/include/term_entry.h ncurses-5.9.patch/include/term_entry.h ---- ncurses-5.9/include/term_entry.h 2009-07-11 18:52:29.000000000 +0200 -+++ ncurses-5.9.patch/include/term_entry.h 2014-09-01 16:33:22.344792103 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - * and: Thomas E. Dickey 1998-on * - ****************************************************************************/ - --/* $Id: term_entry.h,v 1.37 2009/07/11 16:52:29 tom Exp $ */ -+/* $Id: term_entry.h,v 1.44 2013/05/25 20:13:38 tom Exp $ */ - - /* - * term_entry.h -- interface to entry-manipulation code -@@ -47,28 +47,46 @@ - - #include <term.h> - -+ /* -+ * see db_iterator.c - this enumeration lists the places searched for a -+ * terminal description and defines the order in which they are searched. -+ */ -+ typedef enum { -+ dbdTIC = 0, /* special, used by tic when writing entry */ -+#if NCURSES_USE_DATABASE -+ dbdEnvOnce, /* the $TERMINFO environment variable */ -+ dbdHome, /* $HOME/.terminfo */ -+ dbdEnvList, /* the $TERMINFO_DIRS environment variable */ -+ dbdCfgList, /* the compiled-in TERMINFO_DIRS value */ -+ dbdCfgOnce, /* the compiled-in TERMINFO value */ -+#endif -+#if NCURSES_USE_TERMCAP -+ dbdEnvOnce2, /* the $TERMCAP environment variable */ -+ dbdEnvList2, /* the $TERMPATH environment variable */ -+ dbdCfgList2, /* the compiled-in TERMPATH */ -+#endif -+ dbdLAST -+ } DBDIRS; -+ - #define MAX_USES 32 - #define MAX_CROSSLINKS 16 - --typedef struct entry { -- TERMTYPE tterm; -- unsigned nuses; -- struct -- { -- char *name; -- struct entry *link; -- long line; -- } -- uses[MAX_USES]; -- int ncrosslinks; -- struct entry *crosslinks[MAX_CROSSLINKS]; -- long cstart, cend; -- long startline; -- struct entry *next; -- struct entry *last; --} --ENTRY; -- -+ typedef struct entry { -+ TERMTYPE tterm; -+ unsigned nuses; -+ struct { -+ char *name; -+ struct entry *link; -+ long line; -+ } uses[MAX_USES]; -+ int ncrosslinks; -+ struct entry *crosslinks[MAX_CROSSLINKS]; -+ long cstart, cend; -+ long startline; -+ struct entry *next; -+ struct entry *last; -+ } ENTRY; -+/* *INDENT-OFF* */ - #if NCURSES_XNAMES - #define NUM_BOOLEANS(tp) (tp)->num_Booleans - #define NUM_NUMBERS(tp) (tp)->num_Numbers -@@ -132,7 +150,7 @@ - - /* alloc_ttype.c: elementary allocation code */ - extern NCURSES_EXPORT(void) _nc_align_termtype (TERMTYPE *, TERMTYPE *); --extern NCURSES_EXPORT(void) _nc_copy_termtype (TERMTYPE *, TERMTYPE *); -+extern NCURSES_EXPORT(void) _nc_copy_termtype (TERMTYPE *, const TERMTYPE *); - - /* free_ttype.c: elementary allocation code */ - extern NCURSES_EXPORT(void) _nc_free_termtype (TERMTYPE *); -@@ -166,9 +184,9 @@ - - /* trace_xnames.c */ - extern NCURSES_EXPORT(void) _nc_trace_xnames (TERMTYPE *); -+/* *INDENT-ON* */ - - #ifdef __cplusplus - } - #endif -- --#endif /* NCURSES_TERM_ENTRY_H_incl */ -+#endif /* NCURSES_TERM_ENTRY_H_incl */ -diff -Naur ncurses-5.9/include/tic.h ncurses-5.9.patch/include/tic.h ---- ncurses-5.9/include/tic.h 2009-08-08 19:52:46.000000000 +0200 -+++ ncurses-5.9.patch/include/tic.h 2014-09-01 16:33:22.344792103 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -33,14 +33,14 @@ - ****************************************************************************/ - - /* -- * $Id: tic.h,v 1.65 2009/08/08 17:52:46 tom Exp $ -+ * $Id: tic.h,v 1.69 2012/03/17 18:22:10 tom Exp $ - * tic.h - Global variables and structures for the terminfo - * compiler. - */ - - #ifndef __TIC_H - #define __TIC_H -- -+/* *INDENT-OFF* */ - #ifdef __cplusplus - extern "C" { - #endif -@@ -224,6 +224,12 @@ - - #define NOTFOUND ((struct name_table_entry *) 0) - -+/* -+ * The casts are required for correct sign-propagation with systems such as -+ * AIX, IRIX64, Solaris which default to unsigned characters. The C standard -+ * leaves this detail unspecified. -+ */ -+ - /* out-of-band values for representing absent capabilities */ - #define ABSENT_BOOLEAN ((signed char)-1) /* 255 */ - #define ABSENT_NUMERIC (-1) -@@ -248,6 +254,8 @@ - #define TERMINFO "/usr/share/terminfo" - #endif - -+#ifdef NCURSES_TERM_ENTRY_H_incl -+ - /* access.c */ - extern NCURSES_EXPORT(unsigned) _nc_pathlast (const char *); - extern NCURSES_EXPORT(bool) _nc_is_abs_path (const char *); -@@ -270,6 +278,7 @@ - extern NCURSES_EXPORT_VAR(int) _nc_curr_col; - extern NCURSES_EXPORT_VAR(int) _nc_curr_line; - extern NCURSES_EXPORT_VAR(int) _nc_syntax; -+extern NCURSES_EXPORT_VAR(int) _nc_strict_bsd; - extern NCURSES_EXPORT_VAR(long) _nc_comment_end; - extern NCURSES_EXPORT_VAR(long) _nc_comment_start; - extern NCURSES_EXPORT_VAR(long) _nc_curr_file_pos; -@@ -314,23 +323,6 @@ - extern const char * _nc_progname; - - /* db_iterator.c */ --typedef enum { -- dbdTIC = 0, --#if USE_DATABASE -- dbdEnvOnce, -- dbdHome, -- dbdEnvList, -- dbdCfgList, -- dbdCfgOnce, --#endif --#if USE_TERMCAP -- dbdEnvOnce2, -- dbdEnvList2, -- dbdCfgList2, --#endif -- dbdLAST --} DBDIRS; -- - extern NCURSES_EXPORT(const char *) _nc_next_db(DBDIRS *, int *); - extern NCURSES_EXPORT(const char *) _nc_tic_dir (const char *); - extern NCURSES_EXPORT(void) _nc_first_db(DBDIRS *, int *); -@@ -339,8 +331,11 @@ - /* write_entry.c */ - extern NCURSES_EXPORT(int) _nc_tic_written (void); - -+#endif /* NCURSES_TERM_ENTRY_H_incl */ -+ - #ifdef __cplusplus - } - #endif - -+/* *INDENT-ON* */ - #endif /* __TIC_H */ -diff -Naur ncurses-5.9/INSTALL ncurses-5.9.patch/INSTALL ---- ncurses-5.9/INSTALL 2011-03-31 10:27:24.000000000 +0200 -+++ ncurses-5.9.patch/INSTALL 2014-09-01 16:33:22.227791908 +0200 -@@ -1,5 +1,5 @@ - ------------------------------------------------------------------------------- ---- Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. -- -+-- Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. -- - -- -- - -- Permission is hereby granted, free of charge, to any person obtaining a -- - -- copy of this software and associated documentation files (the -- -@@ -25,7 +25,7 @@ - -- sale, use or other dealings in this Software without prior written -- - -- authorization. -- - ------------------------------------------------------------------------------- ---- $Id: INSTALL,v 1.155 2011/03/31 08:27:24 tom Exp $ -+-- $Id: INSTALL,v 1.168 2013/08/03 23:15:23 tom Exp $ - --------------------------------------------------------------------- - How to install Ncurses/Terminfo on your system - --------------------------------------------------------------------- -@@ -315,6 +315,10 @@ - programs are useful in this configuration, e.g., reset and tput versus - infocmp and tic. - -+ --disable-db-install -+ Do not install the terminal database. This is used to omit features -+ for packages, as done with --without-progs. -+ - --disable-ext-funcs - Disable function-extensions. Configure ncurses without the functions - that are not specified by XSI. See ncurses/modules for the exact -@@ -407,13 +411,14 @@ - - --disable-tic-depends - When building shared libraries, normally the tic library is linked to -- depend upon the ncurses library (and in turn, on the term-library if -- the --with-termlib option was given). The tic- and term-libraries -- ABI does not depend on the --enable-widec option. Some packagers have -- used this to reduce the number of library files which are packaged -- by using only one copy of those libraries. To make this work properly, -+ depend upon the ncurses library (or equivalently, on the tinfo-library -+ if the --with-termlib option was given). The tic- and tinfo-library -+ ABIs do not depend on the --enable-widec option. Some packagers have -+ used this to reduce the number of library files which are packaged by -+ using only one copy of those libraries. To make this work properly, - the tic library must be built without an explicit dependency on the -- ncurses (or ncursesw) library. Use this configure option to do that. -+ underlying library (ncurses vs ncursesw, tinfo vs tinfow). Use this -+ configure option to do that. - For example - configure --with-ticlib --with-shared --disable-tic-depends - -@@ -555,6 +560,9 @@ - library by reducing global and static variables. This option is also - set if --with-pthread is used. - -+ Enabling this option adds a "t" to the library names, except for the -+ special case when --enable-weak-symbols is also used. -+ - --enable-rpath - Use rpath option when generating shared libraries, and (with some - restrictions) when linking the corresponding programs. This originally -@@ -595,6 +603,14 @@ - reducing the need for juggling the global SP value with set_term() and - delscreen(). - -+ --enable-string-hacks -+ Controls whether strlcat and strlcpy may be used. The same issue -+ applies to OpenBSD's warnings about snprintf, noting that this function -+ is weakly standardized. -+ -+ Aside from stifling these warnings, there is no functional improvement -+ in ncurses. -+ - --enable-symlinks - If your system supports symbolic links, make tic use symbolic links - rather than hard links to save diskspace when writing aliases in the -@@ -616,6 +632,12 @@ - match is found in the terminfo database. See also the --enable-getcap - and --enable-getcap-cache options. - -+ Termcap support requires run-time parsing rather than loading -+ predigested data. If you have specified --with-ticlib, then you -+ cannot have termcap support since run-time parsing is done in the -+ tic library, which is intentionally not part of normal linkage -+ dependencies. -+ - --enable-warnings - Turn on GCC compiler warnings. There should be only a few. - -@@ -740,6 +762,12 @@ - executables, e.g., by setting "--with-chtype=long" (the configure - script supplies "unsigned"). - -+ --with-cxx-shared -+ When --with-shared is set, build libncurses++ as a shared library. -+ This implicitly relies upon building with gcc/g++, since other -+ compiler suites may have differences in the way shared libraries are -+ built. libtool by the way has similar limitations. -+ - --with-database=XXX - Specify the terminfo source file to install. Usually you will wish - to install ncurses' default (misc/terminfo.src). Certain systems -@@ -824,7 +852,17 @@ - NOTE: a few systems build shared libraries with fixed pathnames; this - option probably will not work for those configurations. - -- --with-libtool[=XXX] -+ --with-lib-prefix=XXX -+ OS/2 EMX used a different naming convention from most Unix-like -+ platforms. It required that the "lib" part of a library name was -+ omitted. Newer EMX as part of eComStation does not follow that -+ convention. Use this option to override the configure script's -+ assumptions about the library-prefix. If this option is omitted, it -+ uses the original OS/2 EMX convention for that platform. Use -+ "--with-lib-prefix=lib" for the newer EMX in eComStation. Use -+ "--without-lib-prefix" to suppress it for other odd platforms. -+ -+ --with-libtool[=XXX] - Generate libraries with libtool. If this option is selected, then it - overrides all other library model specifications. Note that libtool - must already be installed, uses makefile rules dependent on GNU make, -@@ -904,6 +942,10 @@ - --with-pkg-config=[DIR] - Check for pkg-config, optionally specifying its path. - -+ --with-pkg-config-libdir=[DIR] -+ If pkg-config was found, override the automatic check for its library -+ path. -+ - --with-profile - Generate profile-libraries These are named by adding "_p" to the root, - e.g., libncurses_p.a -@@ -996,10 +1038,27 @@ - library dependencies for tic and other programs built with the tic - library. - -+ --with-tparm-arg[=XXX] -+ Override the type used for tparm() arguments, which normally is a -+ "long". However the function must assume that its arguments can hold a -+ pointer to char's which is not always workable for 64-bit platforms. A -+ better choice would be intptr_t, which was not available at the time -+ tparm's interface was defined. -+ -+ If the option is not given, this defaults to "long". -+ - --with-trace - Configure the trace() function as part of the all models of the ncurses - library. Normally it is part of the debug (libncurses_g) library only. - -+ --with-xterm-kbs=XXX -+ Configure xterm's terminfo entries to use either BS (^H, i.e., ASCII -+ backspace) or DEL (^?, or 127). XXX can be BS (or bs, 8) or DEL -+ (or del, 127). -+ -+ During installation, the makefile and scripts modifies the "xterm+kbs" -+ terminfo entry to use this setting. -+ - --with-valgrind - For testing, compile with debug option. - This also sets the --disable-leaks option. -@@ -1024,6 +1083,8 @@ - install as "ncurses.h" and modify the installed headers and manpages - accordingly. - -+ Likewise, do not install an alias "curses" for the ncurses manpage. -+ - --without-cxx - XSI curses declares "bool" as part of the interface. C++ also declares - "bool". Neither specifies the size and type of booleans, but both -@@ -1726,20 +1787,37 @@ - By default, there are no entries on the fallback list. After you have - built the ncurses suite for the first time, you can change the list - (the process needs infocmp(1)). To do so, use the script -- ncurses/tinfo/MKfallback.sh. A configure script option -+ ncurses/tinfo/MKfallback.sh. The configure script option - --with-fallbacks does this (it accepts a comma-separated list of the - names you wish, and does not require a rebuild). - - If you wanted (say) to have linux, vt100, and xterm fallbacks, you -- would use the commands -+ might use the commands - - cd ncurses; -- tinfo/MKfallback.sh linux vt100 xterm >fallback.c -+ tinfo/MKfallback.sh \ -+ $TERMINFO \ -+ ../misc/terminfo.src \ -+ `which tic` \ -+ linux vt100 xterm >fallback.c -+ -+ The first three parameters of the script are normally supplied by -+ the configured makefiles via the "--with-fallbacks" option. They -+ are -+ -+ 1) the location of the terminfo database -+ 2) the source for the terminfo entries -+ 3) the location of the tic program, used to create a terminfo -+ database. - - Then just rebuild and reinstall the library as you would normally. - You can restore the default empty fallback list with - -- tinfo/MKfallback.sh >fallback.c -+ tinfo/MKfallback.sh \ -+ $TERMINFO \ -+ ../misc/terminfo.src \ -+ `which tic` \ -+ >fallback.c - - The overhead for an empty fallback list is one trivial stub function. - Any non-empty fallback list is const-ed and therefore lives in sharable -diff -Naur ncurses-5.9/Makefile.in ncurses-5.9.patch/Makefile.in ---- ncurses-5.9/Makefile.in 2010-11-27 22:45:27.000000000 +0100 -+++ ncurses-5.9.patch/Makefile.in 2014-09-01 16:33:22.228791910 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.30 2010/11/27 21:45:27 tom Exp $ -+# $Id: Makefile.in,v 1.38 2014/01/18 20:19:45 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -27,7 +27,7 @@ - # authorization. # - ############################################################################## - # --# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997 -+# Author: Thomas E. Dickey 1996-on - # - # Master Makefile for ncurses library. - -@@ -35,7 +35,8 @@ - VPATH = @srcdir@ - - DESTDIR=@DESTDIR@ --CF_MFLAGS = @cf_cv_makeflags@ DESTDIR="$(DESTDIR)" -+RPATH_LIST=@RPATH_LIST@ -+TOP_MFLAGS = @cf_cv_makeflags@ DESTDIR="$(DESTDIR)" RPATH_LIST="$(RPATH_LIST)" - - @SET_MAKE@ - -@@ -48,13 +49,17 @@ - - prefix = @prefix@ - exec_prefix = @exec_prefix@ -+datarootdir = @datarootdir@ - - bindir = @bindir@ - ticdir = @TERMINFO@ - includedir = @includedir@ -+includesubdir = @includesubdir@ - libdir = @libdir@ - mandir = @mandir@ - -+include_dir = ${includedir}${includesubdir} -+ - INSTALL = @INSTALL@ - INSTALL_DATA = @INSTALL_DATA@ - -@@ -74,25 +79,22 @@ - @ echo '' - @ echo ' bin directory: '$(bindir) - @ echo ' lib directory: '$(libdir) -- @ echo ' include directory: '$(includedir) -+ @ echo ' include directory: '$(include_dir) - @ echo ' man directory: '$(mandir) - @MAKE_TERMINFO@ @ echo ' terminfo directory: '$(ticdir) - @ echo '' -- @ test "$(includedir)" = "$(prefix)/include" || \ -+ @ test "$(include_dir)" = "$(prefix)/include" || \ - echo '** Include-directory is not in a standard location' -- @ test ! -f $(includedir)/termcap.h || \ -- fgrep NCURSES_VERSION $(includedir)/termcap.h >/dev/null || \ -+ @ test ! -f $(include_dir)/termcap.h || \ -+ fgrep NCURSES_VERSION $(include_dir)/termcap.h >/dev/null || \ - echo '** Will overwrite non-ncurses termcap.h' -- @ test ! -f $(includedir)/curses.h || \ -- fgrep NCURSES_VERSION $(includedir)/curses.h >/dev/null || \ -+ @ test ! -f $(include_dir)/curses.h || \ -+ fgrep NCURSES_VERSION $(include_dir)/curses.h >/dev/null || \ - echo '** Will overwrite non-ncurses curses.h' - --dlls: libs -- $(SHELL) $(srcdir)/mk-dlls.sh -- - distclean \ - realclean :: -- -rm -f mk-dlls.sh mingw_arch -+ - - # Put the common rules here so that we can easily construct the list of - # directories to visit. -diff -Naur ncurses-5.9/man/clear.1 ncurses-5.9.patch/man/clear.1 ---- ncurses-5.9/man/clear.1 2010-12-04 19:36:44.000000000 +0100 -+++ ncurses-5.9.patch/man/clear.1 2014-09-01 16:33:22.345792104 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: clear.1,v 1.8 2010/12/04 18:36:44 tom Exp $ -+.\" $Id: clear.1,v 1.10 2013/06/22 22:22:11 tom Exp $ - .TH @CLEAR@ 1 "" - .ds n 5 - .SH NAME -@@ -35,9 +35,10 @@ - \fB@CLEAR@\fR - .br - .SH DESCRIPTION --\fB@CLEAR@\fR clears your screen if this is possible. It looks in the --environment for the terminal type and then in the \fBterminfo\fR database to --figure out how to clear the screen. -+\fB@CLEAR@\fR clears your screen if this is possible, -+including its scrollback buffer (if the extended "E3" capability is defined). -+\fB@CLEAR@\fR looks in the environment for the terminal type and then in the -+\fBterminfo\fR database to determine how to clear the screen. - .PP - \fB@CLEAR@\fR ignores any command-line parameters that may be present. - .SH SEE ALSO -diff -Naur ncurses-5.9/man/curs_addchstr.3x ncurses-5.9.patch/man/curs_addchstr.3x ---- ncurses-5.9/man/curs_addchstr.3x 2010-12-04 19:36:44.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_addchstr.3x 2014-09-01 16:33:22.345792104 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,8 +26,11 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_addchstr.3x,v 1.15 2010/12/04 18:36:44 tom Exp $ -+.\" $Id: curs_addchstr.3x,v 1.16 2012/11/03 22:54:43 tom Exp $ - .TH curs_addchstr 3X "" -+.de bP -+.IP \(bu 4 -+.. - .na - .hy 0 - .SH NAME -@@ -42,6 +45,7 @@ - .ad - .hy - .SH SYNOPSIS -+.nf - \fB#include <curses.h>\fR - .PP - \fBint addchstr(const chtype *chstr);\fR -@@ -59,24 +63,33 @@ - \fBint mvwaddchstr(WINDOW *win, int y, int x, const chtype *chstr);\fR - .br - \fBint mvwaddchnstr(WINDOW *win, int y, int x, const chtype *chstr, int n);\fR -+.fi - .SH DESCRIPTION --These routines copy \fIchstr\fR into the window image structure at and after --the current cursor position. The four routines with \fIn\fR as the last --argument copy at most \fIn\fR elements, but no more than will fit on the line. --If \fBn\fR=\fB\-1\fR then the whole string is copied, to the maximum number of --characters that will fit on the line. -+These functions copy the (null-terminated) -+\fIchstr\fR array -+into the window image structure -+starting at the current cursor position. -+The four functions with \fIn\fR as the last -+argument copy at most \fIn\fR elements, -+but no more than will fit on the line. -+If \fBn\fR=\fB\-1\fR then the whole array is copied, -+to the maximum number of characters that will fit on the line. - .PP --The window cursor is \fInot\fR advanced, and these routines work faster than --\fBwaddnstr\fR. On the other hand, they do not perform any kind of checking --(such as for the newline, backspace, or carriage return characters), they do not --advance the current cursor position, they do not expand other control characters --to ^-escapes, and they truncate the string if it crosses the right margin, -+The window cursor is \fInot\fR advanced. -+These functions work faster than \fBwaddnstr\fR. -+On the other hand: -+.bP -+they do not perform checking -+(such as for the newline, backspace, or carriage return characters), -+.bP -+they do not advance the current cursor position, -+.bP -+they do not expand other control characters to ^-escapes, and -+.bP -+they truncate the string if it crosses the right margin, - rather than wrapping it around to the new line. --.SH RETURN VALUES --All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success --(the SVr4 manuals specify only "an integer value other than \fBERR\fR") upon --successful completion, unless otherwise noted in the preceding routine --descriptions. -+.SH RETURN VALUE -+All functions return the integer \fBERR\fR upon failure and \fBOK\fR on success. - .PP - X/Open does not define any error conditions. - This implementation returns an error -@@ -86,10 +99,11 @@ - \fBwmove\fP, and return an error if the position is outside the window, - or if the window pointer is null. - .SH NOTES --Note that all routines except \fBwaddchnstr\fR may be macros. -+All functions except \fBwaddchnstr\fR may be macros. - .SH PORTABILITY - These entry points are described in the XSI Curses standard, Issue 4. - .SH SEE ALSO -+\fBcurs_addstr\fR(3X), - \fBcurses\fR(3X). - .PP - Comparable functions in the wide-character (ncursesw) library are -diff -Naur ncurses-5.9/man/curs_addstr.3x ncurses-5.9.patch/man/curs_addstr.3x ---- ncurses-5.9/man/curs_addstr.3x 2010-12-04 19:36:44.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_addstr.3x 2014-09-01 16:33:22.345792104 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,8 +26,11 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_addstr.3x,v 1.16 2010/12/04 18:36:44 tom Exp $ -+.\" $Id: curs_addstr.3x,v 1.17 2012/11/03 22:57:31 tom Exp $ - .TH curs_addstr 3X "" -+.de bP -+.IP \(bu 4 -+.. - .na - .hy 0 - .SH NAME -@@ -62,34 +65,37 @@ - \fBint mvwaddnstr(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const char *\fR\fIstr, int \fR\fIn\fR\fB);\fR - .fi - .SH DESCRIPTION --These routines write the characters of the (null-terminated) character string -+These functions write the (null-terminated) character string - \fIstr\fR on the given window. - It is similar to calling \fBwaddch\fR once for each character in the string. --The four routines with \fIn\fR as the last argument --write at most \fIn\fR characters. --If \fIn\fR is \-1, then the entire string will be added, --up to the maximum number of characters that will fit on the line, -+.PP -+The \fImv\fR functions perform cursor movement once, before writing any -+characters. -+Thereafter, the cursor is advanced as a side-effect of writing to the window. -+.PP -+The four functions with \fIn\fR as the last argument -+write at most \fIn\fR characters, - or until a terminating null is reached. -+If \fIn\fR is \-1, then the entire string will be added. - .SH RETURN VALUE --All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success --(the SVr4 manuals specify only "an integer value other than \fBERR\fR") upon --successful completion. -+All functions return the integer \fBERR\fR upon failure and \fBOK\fR on success. - .PP - X/Open does not define any error conditions. - This implementation returns an error -+.bP - if the window pointer is null or -+.bP - if the string pointer is null or -+.bP - if the corresponding calls to \fBwaddch\fP return an error. - .PP - Functions with a "mv" prefix first perform a cursor movement using - \fBwmove\fP, and return an error if the position is outside the window, - or if the window pointer is null. - .SH NOTES --Note that all of these routines except \fBwaddstr\fR and \fBwaddnstr\fR may be --macros. -+All of these functions except \fBwaddnstr\fR may be macros. - .SH PORTABILITY --All these entry points are described in the XSI Curses standard, Issue 4. The --XSI errors EILSEQ and EOVERFLOW, associated with extended-level conformance, --are not yet detected. -+These functions are described in the XSI Curses standard, Issue 4. - .SH SEE ALSO --\fBcurses\fR(3X), \fBcurs_addch\fR(3X). -+\fBcurses\fR(3X), -+\fBcurs_addch\fR(3X). -diff -Naur ncurses-5.9/man/curs_add_wch.3x ncurses-5.9.patch/man/curs_add_wch.3x ---- ncurses-5.9/man/curs_add_wch.3x 2011-01-15 16:27:43.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_add_wch.3x 2014-09-01 16:33:22.345792104 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2001-2010,2011 Free Software Foundation, Inc. * -+.\" Copyright (c) 2001-2011,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_add_wch.3x,v 1.14 2011/01/15 15:27:43 tom Exp $ -+.\" $Id: curs_add_wch.3x,v 1.15 2012/11/03 23:03:59 tom Exp $ - .TH curs_add_wch 3X "" - .de bP - .IP \(bu 4 -@@ -176,7 +176,7 @@ - WACS_D_VLINE 0x2551 | double vertical line - WACS_D_PLUS 0x256c + double large plus or crossover - .TE --.SH RETURN VALUES -+.SH RETURN VALUE - .PP - All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success. - .PP -diff -Naur ncurses-5.9/man/curs_add_wchstr.3x ncurses-5.9.patch/man/curs_add_wchstr.3x ---- ncurses-5.9/man/curs_add_wchstr.3x 2010-12-04 19:36:44.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_add_wchstr.3x 2014-09-01 16:33:22.345792104 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,8 +26,13 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_add_wchstr.3x,v 1.9 2010/12/04 18:36:44 tom Exp $ -+.\" $Id: curs_add_wchstr.3x,v 1.10 2012/11/03 22:54:43 tom Exp $ - .TH curs_add_wchstr 3X "" -+.de bP -+.IP \(bu 4 -+.. -+.na -+.hy 0 - .SH NAME - \fBadd_wchstr\fR, - \fBadd_wchnstr\fR, -@@ -37,10 +42,12 @@ - \fBmvadd_wchnstr\fR, - \fBmvwadd_wchstr\fR, - \fBmvwadd_wchnstr\fR \- add an array of complex characters (and attributes) to a curses window -+.ad -+.hy - .SH SYNOPSIS --.B #include <curses.h> --.PP - .nf -+\fB#include <curses.h>\fR -+.PP - \fBint add_wchstr(const cchar_t *\fR\fIwchstr\fR\fB);\fR - .br - \fBint add_wchnstr(const cchar_t *\fR\fIwchstr\fR\fB, int \fR\fIn\fR\fB);\fR -@@ -58,38 +65,53 @@ - \fBint mvwadd_wchnstr(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const cchar_t *\fR\fIwchstr\fR\fB, int \fR\fIn\fR\fB);\fR - .fi - .SH DESCRIPTION --These routines copy the array of complex characters \fIwchstr\fR --into the window image structure at and after the current cursor position. --The four routines with \fIn\fR as the last --argument copy at most \fIn\fR elements, but no more than will fit on the line. -+These functions copy the (null-terminated) -+array of complex characters \fIwchstr\fR -+into the window image structure -+starting at the current cursor position. -+The four functions with \fIn\fR as the last -+argument copy at most \fIn\fR elements, -+but no more than will fit on the line. - If \fBn\fR=\fB\-1\fR then the whole array is copied, - to the maximum number of characters that will fit on the line. - .PP - The window cursor is \fInot\fR advanced. --These routines work faster than \fBwaddnstr\fR. --On the other hand, they do not perform checking -+These functions work faster than \fBwaddnstr\fR. -+On the other hand: -+.bP -+they do not perform checking - (such as for the newline, backspace, or carriage return characters), -+.bP - they do not advance the current cursor position, --they do not expand other control characters to ^-escapes, --and they truncate the string if it crosses the right margin, -+.bP -+they do not expand other control characters to ^-escapes, and -+.bP -+they truncate the string if it crosses the right margin, - rather than wrapping it around to the new line. - .PP --These routines end successfully -+These functions end successfully - on encountering a null \fIcchar_t\fR, or - when they have filled the current line. - If a complex character cannot completely fit at the end of the current line, - the remaining columns are filled with the background character and rendition. --.SH NOTES --All functions except \fBwadd_wchnstr\fR may be macros. --.SH RETURN VALUES --All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success. -+.SH RETURN VALUE -+All functions return the integer \fBERR\fR upon failure and \fBOK\fR on success. -+.PP -+X/Open does not define any error conditions. -+This implementation returns an error -+if the window pointer is null. - .PP - Functions with a "mv" prefix first perform a cursor movement using - \fBwmove\fP, and return an error if the position is outside the window, - or if the window pointer is null. -+.SH NOTES -+All functions except \fBwadd_wchnstr\fR may be macros. - .SH PORTABILITY --All these entry points are described in the XSI Curses standard, Issue 4. -+These entry points are described in the XSI Curses standard, Issue 4. - .SH SEE ALSO --\fBcurses\fR(3X), --\fBcurs_addchstr\fR(3X), --\fBcurs_addwstr\fR(3X) -+\fBcurs_addwstr\fR(3X), -+\fBcurses\fR(3X). -+.PP -+Comparable functions in the narrow-character (ncurses) library are -+described in -+\fBcurs_addchstr\fR(3X). -diff -Naur ncurses-5.9/man/curs_addwstr.3x ncurses-5.9.patch/man/curs_addwstr.3x ---- ncurses-5.9/man/curs_addwstr.3x 2010-12-04 19:36:44.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_addwstr.3x 2014-09-01 16:33:22.345792104 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,8 +26,11 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_addwstr.3x,v 1.10 2010/12/04 18:36:44 tom Exp $ -+.\" $Id: curs_addwstr.3x,v 1.11 2012/11/03 22:57:31 tom Exp $ - .TH curs_addwstr 3X "" -+.de bP -+.IP \(bu 4 -+.. - .na - .hy 0 - .SH NAME -@@ -62,31 +65,39 @@ - \fBint mvwaddnwstr(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const wchar_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR - .fi - .SH DESCRIPTION --These routines write the characters of the -+These functions write the characters of the - (null-terminated) \fBwchar_t\fR character string - \fIwstr\fR on the given window. - It is similar to constructing a \fBcchar_t\fR for each wchar_t in the string, - then calling \fBwadd_wch\fR for the resulting \fBcchar_t\fR. - .PP --The \fImv\fR routines perform cursor movement once, before writing any -+The \fImv\fR functions perform cursor movement once, before writing any - characters. - Thereafter, the cursor is advanced as a side-effect of writing to the window. - .PP --The four routines with \fIn\fR as the last argument --write at most \fIn\fR \fBwchar_t\fR characters. --If \fIn\fR is \-1, then the entire string will be added, --up to the maximum number of characters that will fit on the line, -+The four functions with \fIn\fR as the last argument -+write at most \fIn\fR \fBwchar_t\fR characters, - or until a terminating null is reached. --.SH RETURN VALUES --All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success. -+If \fIn\fR is \-1, then the entire string will be added. -+.SH RETURN VALUE -+All functions return the integer \fBERR\fR upon failure and \fBOK\fR on success. -+.PP -+X/Open does not define any error conditions. -+This implementation returns an error -+.bP -+if the window pointer is null or -+.bP -+if the string pointer is null or -+.bP -+if the corresponding calls to \fBwadd_wch\fP return an error. - .PP - Functions with a "mv" prefix first perform a cursor movement using - \fBwmove\fP, and return an error if the position is outside the window, - or if the window pointer is null. - .SH NOTES --Note that all of these routines except \fBwaddnwstr\fR may be macros. -+All of these functions except \fBwaddnwstr\fR may be macros. - .SH PORTABILITY --All these entry points are described in the XSI Curses standard, Issue 4. -+These functions are described in the XSI Curses standard, Issue 4. - .SH SEE ALSO - \fBcurses\fR(3X), - \fBcurs_add_wch\fR(3X) -diff -Naur ncurses-5.9/man/curs_attr.3x ncurses-5.9.patch/man/curs_attr.3x ---- ncurses-5.9/man/curs_attr.3x 2010-12-04 19:36:44.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_attr.3x 2014-09-01 16:33:22.345792104 +0200 -@@ -1,6 +1,6 @@ - '\" t - .\"*************************************************************************** --.\" Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_attr.3x,v 1.36 2010/12/04 18:36:44 tom Exp $ -+.\" $Id: curs_attr.3x,v 1.39 2013/09/21 20:39:49 Sven.Joachim Exp $ - .TH curs_attr 3X "" - .na - .hy 0 -@@ -164,9 +164,12 @@ - the routines \fBattron\fR, \fBattroff\fR, and \fBattrset\fR, or OR'd with the - characters passed to \fBaddch\fR. - .PP -+.RS - .TS --center ; -+l l -+_ _ _ - l l . -+\fIName\fR \fIDescription\fR - \fBA_NORMAL\fR Normal display (no highlight) - \fBA_STANDOUT\fR Best highlighting mode of the terminal. - \fBA_UNDERLINE\fR Underlining -@@ -177,9 +180,30 @@ - \fBA_PROTECT\fR Protected mode - \fBA_INVIS\fR Invisible or blank mode - \fBA_ALTCHARSET\fR Alternate character set -+\fBA_ITALIC\fR Italics (non-X/Open extension) - \fBA_CHARTEXT\fR Bit-mask to extract a character - \fBCOLOR_PAIR(\fR\fIn\fR\fB)\fR Color-pair number \fIn\fR - .TE -+.RE -+.PP -+These video attributes are supported by \fBattr_on\fP and related functions -+(which also support the attributes recognized by \fBattron\fP, etc.): -+.RS -+.TS -+l l -+_ _ _ -+l l . -+\fIName\fR \fIDescription\fR -+\fBWA_HORIZONTAL\fR Horizontal highlight -+\fBWA_LEFT\fR Left highlight -+\fBWA_LOW\fR Low highlight -+\fBWA_RIGHT\fR Right highlight -+\fBWA_TOP\fR Top highlight -+\fBWA_VERTICAL\fR Vertical highlight -+.TE -+.RE -+.PP -+For consistency - .PP - The following macro is the reverse of \fBCOLOR_PAIR(\fR\fIn\fR\fB)\fR: - .PP -@@ -214,19 +238,27 @@ - SVr4 curses, these functions correctly manipulate all other highlights - (specifically, \fBA_ALTCHARSET\fR, \fBA_PROTECT\fR, and \fBA_INVIS\fR). - .PP -+This implementation provides the \fBA_ITALIC\fP attribute for terminals -+which have the \fIenter_italics_mode\fP (sitm) and \fIexit_italics_mode\fP (ritm) capabilities. -+Italics are not mentioned in X/Open Curses. -+Unlike the other video attributes, \fBI_ITALIC\fP is unrelated -+to the \fIset_attributes\fP capabilities. -+This implementation makes the assumption that -+\fIexit_attribute_mode\fP may also reset italics. -+.PP - XSI Curses added the new entry points, \fBattr_get\fR, \fBattr_on\fR, - \fBattr_off\fR, \fBattr_set\fR, \fBwattr_on\fR, \fBwattr_off\fR, - \fBwattr_get\fR, \fBwattr_set\fR. These are intended to work with - a new series of highlight macros prefixed with \fBWA_\fR. -+The older macros have direct counterparts in the newer set of names: - .PP --Older versions of this library did not force an update of the screen --when changing the attributes. --Use \fBtouchwin\fR to force the screen to match the updated attributes. --.PP -+.RS - .ne 9 - .TS --center ; -+l l -+_ _ _ - l l . -+\fIName\fR \fIDescription\fR - \fBWA_NORMAL\fR Normal display (no highlight) - \fBWA_STANDOUT\fR Best highlighting mode of the terminal. - \fBWA_UNDERLINE\fR Underlining -@@ -236,6 +268,11 @@ - \fBWA_BOLD\fR Extra bright or bold - \fBWA_ALTCHARSET\fR Alternate character set - .TE -+.RE -+.PP -+Older versions of this library did not force an update of the screen -+when changing the attributes. -+Use \fBtouchwin\fR to force the screen to match the updated attributes. - .PP - The XSI curses standard specifies that each pair of corresponding \fBA_\fR - and \fBWA_\fR-using functions operates on the same current-highlight -@@ -243,8 +280,10 @@ - .PP - The XSI standard extended conformance level adds new highlights - \fBA_HORIZONTAL\fR, \fBA_LEFT\fR, \fBA_LOW\fR, \fBA_RIGHT\fR, \fBA_TOP\fR, --\fBA_VERTICAL\fR (and corresponding \fBWA_\fR macros for each) which this --implementation does not yet support. -+\fBA_VERTICAL\fR (and corresponding \fBWA_\fR macros for each). -+As of August 2013, -+no known terminal provides these highlights -+(i.e., via the \fBsgr1\fP capability). - .SH RETURN VALUE - All routines return the integer \fBOK\fR on success, or \fBERR\fP on failure. - .PP -diff -Naur ncurses-5.9/man/curs_bkgrnd.3x ncurses-5.9.patch/man/curs_bkgrnd.3x ---- ncurses-5.9/man/curs_bkgrnd.3x 2010-12-04 19:49:20.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_bkgrnd.3x 2014-09-01 16:33:22.346792106 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_bkgrnd.3x,v 1.4 2010/12/04 18:49:20 tom Exp $ -+.\" $Id: curs_bkgrnd.3x,v 1.5 2012/11/03 23:03:59 tom Exp $ - .TH curs_bkgrnd 3X "" - .SH NAME - \fBbkgrnd\fR, -@@ -89,7 +89,7 @@ - \fBbkgrndset\fR, and - \fBgetbkgrnd\fR - may be macros. --.SH RETURN VALUES -+.SH RETURN VALUE - The \fBbkgrndset\fR and \fBwbkgrndset\fR routines do not return a value. - .PP - Upon successful completion, the other functions return \fBOK\fR. -diff -Naur ncurses-5.9/man/curs_border_set.3x ncurses-5.9.patch/man/curs_border_set.3x ---- ncurses-5.9/man/curs_border_set.3x 2011-01-15 13:56:18.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_border_set.3x 2014-09-01 16:33:22.346792106 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2002-2010,2011 Free Software Foundation, Inc. * -+.\" Copyright (c) 2002-2011,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_border_set.3x,v 1.10 2011/01/15 12:56:18 tom Exp $ -+.\" $Id: curs_border_set.3x,v 1.11 2012/11/03 23:03:59 tom Exp $ - .TH curs_border_set 3X "" - .na - .hy 0 -@@ -187,7 +187,7 @@ - \fBvline_set\fR - may be macros. - .br --.SH RETURN VALUES -+.SH RETURN VALUE - .PP - Upon successful completion, these functions return - \fBOK\fR. -diff -Naur ncurses-5.9/man/curs_getcchar.3x ncurses-5.9.patch/man/curs_getcchar.3x ---- ncurses-5.9/man/curs_getcchar.3x 2010-12-04 19:36:44.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_getcchar.3x 2014-09-01 16:33:22.346792106 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2001-2009,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2001-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_getcchar.3x,v 1.15 2010/12/04 18:36:44 tom Exp $ -+.\" $Id: curs_getcchar.3x,v 1.16 2012/11/03 23:03:59 tom Exp $ - .TH curs_getcchar 3X "" - .de bP - .IP \(bu 4 -@@ -116,7 +116,7 @@ - The \fIwcval\fP argument may be a value generated by a call to - \fBsetcchar\fP or by a function that has a \fBcchar_t\fP output argument. - If \fIwcval\fP is constructed by any other means, the effect is unspecified. --.SH RETURN VALUES -+.SH RETURN VALUE - .PP - When \fIwch\fP is a null pointer, - \fBgetcchar\fP returns the number of wide characters referenced by -diff -Naur ncurses-5.9/man/curs_getch.3x ncurses-5.9.patch/man/curs_getch.3x ---- ncurses-5.9/man/curs_getch.3x 2011-01-22 20:38:51.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_getch.3x 2014-09-01 16:33:22.346792106 +0200 -@@ -1,6 +1,6 @@ - '\" t - .\"*************************************************************************** --.\" Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_getch.3x,v 1.36 2011/01/22 19:38:51 tom Exp $ -+.\" $Id: curs_getch.3x,v 1.37 2012/07/07 20:04:56 tom Exp $ - .TH curs_getch 3X "" - .na - .hy 0 -@@ -237,14 +237,14 @@ - All routines return the integer \fBERR\fR upon failure and an integer value - other than \fBERR\fR (\fBOK\fR in the case of ungetch()) upon successful - completion. --.RS -+.RS 3 - .TP 5 - \fBungetch\fP --returns an error -+returns ERR - if there is no more room in the FIFO. --.TP 5 -+.TP - \fBwgetch\fP --returns an error -+returns ERR - if the window pointer is null, or - if its timeout expires without having any data. - .RE -diff -Naur ncurses-5.9/man/curs_get_wch.3x ncurses-5.9.patch/man/curs_get_wch.3x ---- ncurses-5.9/man/curs_get_wch.3x 2010-08-15 01:31:42.000000000 +0200 -+++ ncurses-5.9.patch/man/curs_get_wch.3x 2014-09-01 16:33:22.346792106 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_get_wch.3x,v 1.7 2010/08/14 23:31:42 tom Exp $ -+.\" $Id: curs_get_wch.3x,v 1.8 2012/11/03 23:03:59 tom Exp $ - .TH curs_get_wch 3X "" - .SH NAME - \fBget_wch\fR, -@@ -132,7 +132,7 @@ - .PP - All functions except \fBwget_wch\fR and \fBunget_wch\fR - may be macros. --.SH RETURN VALUES -+.SH RETURN VALUE - When - \fBget_wch\fR, - \fBwget_wch\fR, -diff -Naur ncurses-5.9/man/curs_get_wstr.3x ncurses-5.9.patch/man/curs_get_wstr.3x ---- ncurses-5.9/man/curs_get_wstr.3x 2010-12-04 19:36:44.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_get_wstr.3x 2014-09-01 16:33:22.346792106 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_get_wstr.3x,v 1.8 2010/12/04 18:36:44 tom Exp $ -+.\" $Id: curs_get_wstr.3x,v 1.9 2012/11/03 23:03:59 tom Exp $ - .TH curs_get_wstr 3X "" - .na - .hy 0 -@@ -144,7 +144,7 @@ - is no way to distinguish a \fBKEY_\fR value from a valid \fBwchar_t\fR value. - .PP - All of these routines except \fBwgetn_wstr\fR may be macros. --.SH RETURN VALUES -+.SH RETURN VALUE - All of these functions return \fBOK\fR upon successful completion. - Otherwise, they return \fBERR\fR. - .PP -diff -Naur ncurses-5.9/man/curs_initscr.3x ncurses-5.9.patch/man/curs_initscr.3x ---- ncurses-5.9/man/curs_initscr.3x 2010-12-04 19:36:58.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_initscr.3x 2014-09-01 16:33:22.346792106 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,8 +26,15 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_initscr.3x,v 1.17 2010/12/04 18:36:58 tom Exp $ -+.\" $Id: curs_initscr.3x,v 1.20 2014/03/01 22:31:22 tom Exp $ - .TH curs_initscr 3X "" -+.de bP -+.IP \(bu 4 -+.. -+.ie \n(.g .ds `` \(lq -+.el .ds `` `` -+.ie \n(.g .ds '' \(rq -+.el .ds '' '' - .na - .hy 0 - .SH NAME -@@ -56,49 +63,71 @@ - .br - .SH DESCRIPTION - \fBinitscr\fR is normally the first \fBcurses\fR routine to call when --initializing a program. A few special routines sometimes need to be --called before it; these are \fBslk_init\fR, \fBfilter\fR, \fBripoffline\fR, --\fBuse_env\fR. For multiple-terminal applications, \fBnewterm\fR may be --called before \fBinitscr\fR. -+initializing a program. -+A few special routines sometimes need to be called before it; -+these are \fBslk_init\fR, \fBfilter\fR, \fBripoffline\fR, -+\fBuse_env\fR. -+For multiple-terminal applications, -+\fBnewterm\fR may be called before \fBinitscr\fR. - .PP - The initscr code determines the terminal type and initializes all \fBcurses\fR --data structures. \fBinitscr\fR also causes the first call to \fBrefresh\fR to --clear the screen. If errors occur, \fBinitscr\fR writes an appropriate error --message to standard error and exits; otherwise, a pointer is returned to --\fBstdscr\fR. -+data structures. -+\fBinitscr\fR also causes the first call to \fBrefresh\fR to clear the screen. -+If errors occur, \fBinitscr\fR writes an appropriate error -+message to standard error and exits; -+otherwise, a pointer is returned to \fBstdscr\fR. - .PP - A program that outputs to more than one terminal should use the \fBnewterm\fR --routine for each terminal instead of \fBinitscr\fR. A program that needs to --inspect capabilities, so it can continue to run in a line-oriented mode if the -+routine for each terminal instead of \fBinitscr\fR. -+A program that needs to inspect capabilities, -+so it can continue to run in a line-oriented mode if the - terminal cannot support a screen-oriented program, would also use --\fBnewterm\fR. The routine \fBnewterm\fR should be called once for each --terminal. It returns a variable of type \fBSCREEN *\fR which should be saved --as a reference to that terminal. The arguments are the \fItype\fR of the --terminal to be used in place of \fB$TERM\fR, a file pointer for output to the --terminal, and another file pointer for input from the terminal (if \fItype\fR --is \fBNULL\fR, \fB$TERM\fR will be used). The program must also call -+\fBnewterm\fR. -+The routine \fBnewterm\fR should be called once for each terminal. -+It returns a variable of type \fBSCREEN *\fR which should be saved -+as a reference to that terminal. -+\fBnewterm\fP's arguments are -+.bP -+the \fItype\fR of the terminal to be used in place of \fB$TERM\fR, -+.bP -+a file pointer for output to the terminal, and -+.bP -+another file pointer for input from the terminal -+.PP -+If the \fItype\fR parameter is \fBNULL\fR, \fB$TERM\fR will be used. -+.PP -+The program must also call - \fBendwin\fR for each terminal being used before exiting from \fBcurses\fR. - If \fBnewterm\fR is called more than once for the same terminal, the first - terminal referred to must be the last one for which \fBendwin\fR is called. - .PP - A program should always call \fBendwin\fR before exiting or escaping from --\fBcurses\fR mode temporarily. This routine restores tty modes, moves the --cursor to the lower left-hand corner of the screen and resets the terminal into --the proper non-visual mode. Calling \fBrefresh\fR or \fBdoupdate\fR after a -+\fBcurses\fR mode temporarily. -+This routine -+.bP -+restores tty modes, -+.bP -+moves the cursor to the lower left-hand corner of the screen and -+.bP -+resets the terminal into -+the proper non-visual mode. -+.PP -+Calling \fBrefresh\fR or \fBdoupdate\fR after a - temporary escape causes the program to resume visual mode. - .PP - The \fBisendwin\fR routine returns \fBTRUE\fR if \fBendwin\fR has been --called without any subsequent calls to \fBwrefresh\fR, and \fBFALSE\fR --otherwise. -+called without any subsequent calls to \fBwrefresh\fR, -+and \fBFALSE\fR otherwise. - .PP --The \fBset_term\fR routine is used to switch between different --terminals. The screen reference \fBnew\fR becomes the new current --terminal. The previous terminal is returned by the routine. This is --the only routine which manipulates \fBSCREEN\fR pointers; all other --routines affect only the current terminal. -+The \fBset_term\fR routine is used to switch between different terminals. -+The screen reference \fBnew\fR becomes the new current terminal. -+The previous terminal is returned by the routine. -+This is the only routine which manipulates \fBSCREEN\fR pointers; -+all other routines affect only the current terminal. - .PP - The \fBdelscreen\fR routine frees storage associated with the --\fBSCREEN\fR data structure. The \fBendwin\fR routine does not do -+\fBSCREEN\fR data structure. -+The \fBendwin\fR routine does not do - this, so \fBdelscreen\fR should be called after \fBendwin\fR if a - particular \fBSCREEN\fR is no longer needed. - .SH RETURN VALUE -@@ -109,22 +138,41 @@ - .PP - X/Open defines no error conditions. - In this implementation -+.bP - \fBendwin\fP returns an error if the terminal was not initialized. -+.bP -+\fBnewterm\fP -+returns an error if it cannot allocate the data structures for the screen, -+or for the top-level windows within the screen, -+i.e., -+\fBcurscr\fP, \fBnewscr\fP, or \fBstdscr\fP. -+.bP -+\fBset_term\fP -+returns no error. - .SH NOTES - Note that \fBinitscr\fR and \fBnewterm\fR may be macros. - .SH PORTABILITY --These functions are described in the XSI Curses standard, Issue 4. It --specifies that portable applications must not call \fBinitscr\fR more than --once. -+These functions are described in the XSI Curses standard, Issue 4. -+It specifies that portable applications must not -+call \fBinitscr\fR more than once. - .PP - Old versions of curses, e.g., BSD 4.4, may have returned a null pointer - from \fBinitscr\fR when an error is detected, rather than exiting. - It is safe but redundant to check the return value of \fBinitscr\fR - in XSI Curses. -+.PP -+If the TERM variable is missing or empty, \fBinitscr\fP uses the -+value \*(``unknown\*('', -+which normally corresponds to a terminal entry with the \fIgeneric\fP -+(\fIgn\fP) capability. -+Generic entries are detected by \fBsetupterm\fP(3X) and cannot be -+used for full-screen operation. -+Other implementations may handle a missing/empty TERM variable differently. - .SH SEE ALSO - \fBcurses\fR(3X), - \fBcurs_kernel\fR(3X), - \fBcurs_refresh\fR(3X), - \fBcurs_slk\fR(3X), -+\fBcurs_terminfo\fR(3X), - \fBcurs_util\fR(3X), - \fBcurs_variables\fR(3X). -diff -Naur ncurses-5.9/man/curs_inopts.3x ncurses-5.9.patch/man/curs_inopts.3x ---- ncurses-5.9/man/curs_inopts.3x 2010-12-04 19:40:45.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_inopts.3x 2014-09-01 16:33:22.347792108 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,8 +26,12 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_inopts.3x,v 1.15 2010/12/04 18:40:45 tom Exp $ -+.\" $Id: curs_inopts.3x,v 1.18 2013/07/20 19:42:02 tom Exp $ - .TH curs_inopts 3X "" -+.ie \n(.g .ds `` \(lq -+.el .ds `` `` -+.ie \n(.g .ds '' \(rq -+.el .ds '' '' - .na - .hy 0 - .SH NAME -@@ -188,11 +192,13 @@ - plus the additional capability of being able to block for only - \fIdelay\fR milliseconds (where \fIdelay\fR is positive). - .PP --The \fBcurses\fR library does ``line-breakout optimization'' by looking for --typeahead periodically while updating the screen. If input is found, --and it is coming from a tty, the current update is postponed until --\fBrefresh\fR or \fBdoupdate\fR is called again. This allows faster --response to commands typed in advance. Normally, the input FILE -+The \fBcurses\fR library does \*(``line-breakout optimization\*('' -+by looking for typeahead periodically while updating the screen. -+If input is found, and it is coming from a tty, -+the current update is postponed until -+\fBrefresh\fR or \fBdoupdate\fR is called again. -+This allows faster response to commands typed in advance. -+Normally, the input FILE - pointer passed to \fBnewterm\fR, or \fBstdin\fR in the case that - \fBinitscr\fR was used, will be used to do this typeahead checking. - The \fBtypeahead\fR routine specifies that the file descriptor -@@ -223,6 +229,42 @@ - left the echo bit on at initialization, but the BSD \fBraw\fR call turned it - off as a side-effect. For best portability, set echo or noecho explicitly - just after initialization, even if your program remains in cooked mode. -+.PP -+When \fBkeypad\fP is first enabled, -+ncurses loads the key-definitions for the current terminal description. -+If the terminal description includes extended string capabilities, -+e.g., from using the \fB\-x\fP option of @TIC@, -+then ncurses also defines keys for the capabilities whose names -+begin with "k". -+The corresponding keycodes are generated and (depending on previous -+loads of terminal descriptions) may differ from one execution of a -+program to the next. -+The generated keycodes are recognized by the \fBkeyname\fP function -+(which will then return a name beginning with "k" denoting the -+terminfo capability name rather than "K", used for curses key-names). -+On the other hand, an application can use \fBdefine_key\fP to establish -+a specific keycode for a given string. -+This makes it possible for an application to check for an extended -+capability's presence with \fItigetstr\fP, -+and reassign the keycode to match its own needs. -+.PP -+Low-level applications can use \fBtigetstr\fP to obtain the definition -+of any particular string capability. -+Higher-level applications which use the curses \fBwgetch\fP -+and similar functions to return keycodes rely upon the order in which -+the strings are loaded. -+If more than one key definition has the same string value, -+then \fBwgetch\fP can return only one keycode. -+Most curses implementations (including ncurses) -+load key definitions in the order -+defined by the array of string capability names. -+The last key to be loaded determines the keycode which will be returned. -+In ncurses, you may also have extended capabilities interpreted as -+key definitions. -+These are loaded after the predefined keys, -+and if a capability's value is the same as a previously-loaded -+key definition, -+the later definition is the one used. - .SH NOTES - Note that \fBecho\fR, \fBnoecho\fR, \fBhalfdelay\fR, \fBintrflush\fR, - \fBmeta\fR, \fBnodelay\fR, \fBnotimeout\fR, \fBnoqiflush\fR, -@@ -233,4 +275,9 @@ - respectively. Mixing raw/noraw and cbreak/nocbreak calls leads to tty driver - control states that are hard to predict or understand; it is not recommended. - .SH SEE ALSO --\fBcurses\fR(3X), \fBcurs_getch\fR(3X), \fBcurs_initscr\fR(3X), \fBtermio\fR(7) -+\fBcurses\fR(3X), -+\fBcurs_getch\fR(3X), -+\fBcurs_initscr\fR(3X), -+\fBcurs_util\fR(3X), -+\fBdefine_key\fR(3X), -+\fBtermio\fR(7) -diff -Naur ncurses-5.9/man/curs_ins_wstr.3x ncurses-5.9.patch/man/curs_ins_wstr.3x ---- ncurses-5.9/man/curs_ins_wstr.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_ins_wstr.3x 2014-09-01 16:33:22.347792108 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_ins_wstr.3x,v 1.6 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: curs_ins_wstr.3x,v 1.7 2012/11/03 23:03:59 tom Exp $ - .TH curs_ins_wstr 3X "" - .na - .hy 0 -@@ -92,7 +92,7 @@ - functions will fail. - XSI does not define what will happen if a nonspacing character follows - a control character. --.SH RETURN VALUES -+.SH RETURN VALUE - Upon successful completion, these functions return OK. - Otherwise, they return ERR. - .PP -diff -Naur ncurses-5.9/man/curs_in_wchstr.3x ncurses-5.9.patch/man/curs_in_wchstr.3x ---- ncurses-5.9/man/curs_in_wchstr.3x 2010-12-04 19:36:44.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_in_wchstr.3x 2014-09-01 16:33:22.346792106 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_in_wchstr.3x,v 1.8 2010/12/04 18:36:44 tom Exp $ -+.\" $Id: curs_in_wchstr.3x,v 1.9 2012/11/03 23:03:59 tom Exp $ - .TH curs_in_wchstr 3X "" - .na - .hy 0 -@@ -98,7 +98,7 @@ - \fBmvwin_wchnstr\fR, or - \fBwin_wchnstr\fR - is recommended. --.SH RETURN VALUES -+.SH RETURN VALUE - Upon successful completion, these functions return - \fBOK\fR. - Otherwise, they return -diff -Naur ncurses-5.9/man/curs_inwstr.3x ncurses-5.9.patch/man/curs_inwstr.3x ---- ncurses-5.9/man/curs_inwstr.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_inwstr.3x 2014-09-01 16:33:22.347792108 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_inwstr.3x,v 1.7 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: curs_inwstr.3x,v 1.8 2012/11/03 23:03:59 tom Exp $ - .TH curs_inwstr 3X "" - .SH NAME - \fBinwstr\fR, -@@ -72,7 +72,7 @@ - Note that all routines except - \fBwinnwstr\fR - may be macros. --.SH RETURN VALUES -+.SH RETURN VALUE - All routines return - \fBERR\fR - upon failure. Upon -diff -Naur ncurses-5.9/man/curs_mouse.3x ncurses-5.9.patch/man/curs_mouse.3x ---- ncurses-5.9/man/curs_mouse.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_mouse.3x 2014-09-01 16:33:22.347792108 +0200 -@@ -1,6 +1,6 @@ - '\" t - .\"*************************************************************************** --.\" Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_mouse.3x,v 1.38 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: curs_mouse.3x,v 1.39 2013/06/22 18:09:42 tom Exp $ - .TH curs_mouse 3X "" - .na - .hy 0 -@@ -40,20 +40,18 @@ - .ad - .hy - .SH SYNOPSIS --.nf --\fB#include <curses.h> -+\fB#include <curses.h>\fR - .PP --\fBtypedef unsigned long mmask_t; -+\fBtypedef unsigned long mmask_t;\fR - .PP --typedef struct --{ -- short id; \fI/* ID to distinguish multiple devices */\fB -- int x, y, z; \fI/* event coordinates */\fB -- mmask_t bstate; \fI/* button state bits */\fB --} --MEVENT;\fR -+.nf -+\fBtypedef struct {\fR -+\fB short id; \fR\fI/* ID to distinguish multiple devices */\fR -+\fB int x, y, z; \fR\fI/* event coordinates */\fR -+\fB mmask_t bstate; \fR\fI/* button state bits */\fR -+\fB} MEVENT;\fR - .fi --.br -+.PP - \fBbool has_mouse(void);\fR - .br - \fBint getmouse(MEVENT *event);\fR -diff -Naur ncurses-5.9/man/curs_opaque.3x ncurses-5.9.patch/man/curs_opaque.3x ---- ncurses-5.9/man/curs_opaque.3x 2010-12-04 19:40:45.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_opaque.3x 2014-09-01 16:34:19.462887222 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2007-2009,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2007-2013,2014 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,8 +26,12 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_opaque.3x,v 1.9 2010/12/04 18:40:45 tom Exp $ -+.\" $Id: curs_opaque.3x,v 1.11 2014/03/15 19:24:23 tom Exp $ - .TH curs_opaque 3X "" -+.ie \n(.g .ds `` \(lq -+.el .ds `` `` -+.ie \n(.g .ds '' \(rq -+.el .ds '' '' - .na - .hy 0 - .SH NAME -@@ -74,11 +78,13 @@ - .br - \fBWINDOW * wgetparent(const WINDOW *win);\fR - .br -+\fBint wgetdelay(const WINDOW *win);\fR -+.br - \fBint wgetscrreg(const WINDOW *win, int *top, int *bottom);\fR - .br - .SH DESCRIPTION - This implementation provides functions which return properties --set in the WINDOW structure, allowing it to be ``opaque'' if -+set in the WINDOW structure, allowing it to be \*(``opaque\*('' if - the symbol \fBNCURSES_OPAQUE\fR is defined: - .TP 5 - \fBis_cleared\fR -@@ -119,12 +125,16 @@ - \fBis_syncok\fR - returns the value set in \fBsyncok\fR - .TP 5 -+\fBwgetdelay\fR -+returns the delay timeout as set in \fBwtimeout\fP. -+.TP 5 - \fBwgetparent\fR - returns the parent WINDOW pointer for subwindows, - or NULL for windows having no parent. - .TP 5 - \fBwgetscrreg\fR --returns the top and bottom rows for the scrolling margin as set in \fBwsetscrreg\fP. -+returns the top and bottom rows for the scrolling margin -+as set in \fBwsetscrreg\fP. - .SH RETURN VALUE - These functions all return TRUE or FALSE, except as noted. - .SH NOTES -diff -Naur ncurses-5.9/man/curs_overlay.3x ncurses-5.9.patch/man/curs_overlay.3x ---- ncurses-5.9/man/curs_overlay.3x 2010-12-04 19:40:45.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_overlay.3x 2014-09-01 16:33:22.347792108 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_overlay.3x,v 1.16 2010/12/04 18:40:45 tom Exp $ -+.\" $Id: curs_overlay.3x,v 1.17 2013/04/06 23:48:51 tom Exp $ - .TH curs_overlay 3X "" - .na - .hy 0 -@@ -48,18 +48,21 @@ - \fBint dmaxcol, int overlay);\fR - .SH DESCRIPTION - The \fBoverlay\fR and \fBoverwrite\fR routines overlay \fIsrcwin\fR on --top of \fIdstwin\fR. \fIscrwin\fR and \fIdstwin\fR are not required --to be the same size; only text where the two windows overlap is --copied. The difference is that \fBoverlay\fR is non-destructive -+top of \fIdstwin\fR. -+\fIscrwin\fR and \fIdstwin\fR are not required -+to be the same size; only text where the two windows overlap is copied. -+The difference is that \fBoverlay\fR is non-destructive - (blanks are not copied) whereas \fBoverwrite\fR is destructive. - .PP - The \fBcopywin\fR routine provides a finer granularity of control over the --\fBoverlay\fR and \fBoverwrite\fR routines. Like in the \fBprefresh\fR --routine, a rectangle is specified in the destination window, (\fIdminrow\fR, -+\fBoverlay\fR and \fBoverwrite\fR routines. -+As in the \fBprefresh\fR routine, -+a rectangle is specified in the destination window, (\fIdminrow\fR, - \fIdmincol\fR) and (\fIdmaxrow\fR, \fIdmaxcol\fR), and the upper-left-corner --coordinates of the source window, (\fIsminrow\fR, \fIsmincol\fR). If the --argument \fIoverlay\fR is \fBtrue\fR, then copying is non-destructive, as in --\fBoverlay\fR. -+coordinates of the source window, (\fIsminrow\fR, \fIsmincol\fR). -+If the argument \fIoverlay\fR is \fBtrue\fR, -+then copying is non-destructive, -+as in \fBoverlay\fR. - .SH RETURN VALUE - Routines that return an integer return \fBERR\fR upon failure, and \fBOK\fR - (SVr4 only specifies "an integer value other than \fBERR\fR") upon successful -@@ -75,7 +78,8 @@ - Note that \fBoverlay\fR and \fBoverwrite\fR may be macros. - .SH PORTABILITY - The XSI Curses standard, Issue 4 describes these functions (adding the const --qualifiers). It further specifies their behavior in the presence of characters -+qualifiers). -+It further specifies their behavior in the presence of characters - with multibyte renditions (not yet supported in this implementation). - .SH SEE ALSO - \fBcurses\fR(3X), \fBcurs_pad\fR(3X), \fBcurs_refresh\fR(3X) -diff -Naur ncurses-5.9/man/curs_sp_funcs.3x ncurses-5.9.patch/man/curs_sp_funcs.3x ---- ncurses-5.9/man/curs_sp_funcs.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_sp_funcs.3x 2014-09-01 16:33:22.347792108 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2010,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_sp_funcs.3x,v 1.5 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: curs_sp_funcs.3x,v 1.6 2013/06/22 17:53:59 tom Exp $ - .TH curs_sp_funcs 3X "" - .na - .hy 0 -@@ -186,7 +186,7 @@ - .br - \fBint slk_attrset_sp(SCREEN*, const chtype);\fR - .br --\fBint slk_attr_sp((SCREEN*);\fR -+\fBint slk_attr_sp(SCREEN*);\fR - .br - \fBint slk_clear_sp(SCREEN*);\fR - .br -diff -Naur ncurses-5.9/man/curs_termcap.3x ncurses-5.9.patch/man/curs_termcap.3x ---- ncurses-5.9/man/curs_termcap.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_termcap.3x 2014-09-01 16:33:22.347792108 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,8 +26,11 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_termcap.3x,v 1.26 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: curs_termcap.3x,v 1.30 2013/01/19 15:58:48 tom Exp $ - .TH curs_termcap 3X "" -+.de bP -+.IP \(bu 4 -+.. - .na - .hy 0 - .ds n 5 -@@ -75,11 +78,39 @@ - routines are emulated using the \fIterminfo\fR database. Thus, they - can only be used to query the capabilities of entries for which a - terminfo entry has been compiled. -+.SS INITIALIZATION - .PP - The \fBtgetent\fR routine loads the entry for \fIname\fR. --It returns 1 on success, 0 if there is no such entry, and \-1 if the --terminfo database could not be found. -+It returns: -+.RS 3 -+.TP 3 -+1 -+on success, -+.TP 3 -+0 -+if there is no such entry -+(or that it is a generic type, having too little information for curses -+applications to run), and -+.TP 3 -+\-1 -+if the terminfo database could not be found. -+.RE -+.PP -+This differs from the \fItermcap\fP library in two ways: -+.RS 3 -+.bP - The emulation ignores the buffer pointer \fIbp\fR. -+The \fItermcap\fP library would store a copy of the terminal -+description in the area referenced by this pointer. -+However, ncurses stores its terminal descriptions in compiled -+binary form, which is not the same thing. -+.bP -+There is a difference in return codes. -+The \fItermcap\fP library does not check if the terminal -+description is marked with the \fIgeneric\fP capability, -+or if the terminal description has cursor-addressing. -+.RE -+.SS CAPABILITY VALUES - .PP - The \fBtgetflag\fR routine gets the boolean entry for \fIid\fR, - or zero if it is not available. -@@ -98,12 +129,14 @@ - \fBtgetflag\fR, - \fBtgetnum\fR and - \fBtgetstr\fR are compared in lookups. -+.SS FORMATTING CAPABILITIES - .PP - The \fBtgoto\fR routine instantiates the parameters into the given capability. - The output from this routine is to be passed to \fBtputs\fR. - .PP - The \fBtputs\fR routine is described on the \fBcurs_terminfo\fR(3X) manual - page. It can retrieve capabilities by either termcap or terminfo name. -+.SS GLOBAL VARIABLES - .PP - The variables - \fBPC\fR, -@@ -165,8 +198,28 @@ - e.g., not distinguishing between input and output. - In particular, some applications are reported to declare and/or - modify \fBospeed\fR. -+.PP -+The comment that only the first two characters of the \fBid\fR parameter -+are used escapes many application developers. -+The original BSD 4.2 termcap library (and historical relics thereof) -+did not require a trailing null NUL on the parameter name passed -+to \fBtgetstr\fP, \fBtgetnum\fP and \fBtgetflag\fP. -+Some applications assume that the termcap interface does not require -+the trailing NUL for the parameter name. -+Taking into account these issues: -+.bP -+As a special case, -+\fBtgetflag\fP matched against a single-character identifier -+provided that was at the end of the terminal description. -+You should not rely upon this behavior in portable programs. -+This implementation disallows matches against single-character capability names. -+.bP -+This implementation disallows matches by the termcap interface against -+extended capability names which are longer than two characters. - .SH SEE ALSO - \fBcurses\fR(3X), - \fBterminfo\fR(\*n), - \fBterm_variables\fR(3X), - \fBputc\fR(3). -+.sp -+http://invisible-island.net/ncurses/tctest.html -diff -Naur ncurses-5.9/man/curs_terminfo.3x ncurses-5.9.patch/man/curs_terminfo.3x ---- ncurses-5.9/man/curs_terminfo.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_terminfo.3x 2014-09-01 16:33:22.348792109 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1999-2008,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1999-2011,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,8 +26,15 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_terminfo.3x,v 1.35 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: curs_terminfo.3x,v 1.43 2013/07/20 19:29:59 tom Exp $ - .TH curs_terminfo 3X "" -+.ie \n(.g .ds `` \(lq -+.el .ds `` `` -+.ie \n(.g .ds '' \(rq -+.el .ds '' '' -+.de bP -+.IP \(bu 4 -+.. - .ds n 5 - .na - .hy 0 -@@ -77,7 +84,7 @@ - .br - \fBint vidattr(chtype \fR\fIattrs\fR\fB);\fR - .br --\fBint vid_puts(attr_t \fR\fIattrs\fR\fB, short \fR\fIpair\fR\fB, void *\fR\fIopts\fR\fB, int (*\fR\fIputc\fR\fB)(char));\fR -+\fBint vid_puts(attr_t \fR\fIattrs\fR\fB, short \fR\fIpair\fR\fB, void *\fR\fIopts\fR\fB, int (*\fR\fIputc\fR\fB)(int));\fR - .br - \fBint vid_attr(attr_t \fR\fIattrs\fR\fB, short \fR\fIpair\fR\fB, void *\fR\fIopts\fR\fB);\fR - .br -@@ -98,40 +105,54 @@ - capabilities, such as programming function keys. For all other - functionality, \fBcurses\fR routines are more suitable and their use is - recommended. -+.SS Initialization - .PP - Initially, \fBsetupterm\fR should be called. Note that - \fBsetupterm\fR is automatically called by \fBinitscr\fR and - \fBnewterm\fR. This defines the set of terminal-dependent variables - [listed in \fBterminfo\fR(\*n)]. -+.PP -+Each initialization routine provides applications with the -+terminal capabilities either directly (via header definitions), -+or by special functions. -+The header files \fBcurses.h\fR and \fBterm.h\fR should be included (in this -+order) to get the definitions for these strings, numbers, and flags. -+.PP - The \fBterminfo\fR variables - \fBlines\fR and \fBcolumns\fR are initialized by \fBsetupterm\fR as - follows: --.RS --.PP -+.bP - If \fBuse_env(FALSE)\fR has been called, values for - \fBlines\fR and \fBcolumns\fR specified in \fBterminfo\fR are used. --.PP -+.bP - Otherwise, if the environment variables \fBLINES\fR and \fBCOLUMNS\fR - exist, their values are used. If these environment variables do not - exist and the program is running in a window, the current window size - is used. Otherwise, if the environment variables do not exist, the - values for \fBlines\fR and \fBcolumns\fR specified in the - \fBterminfo\fR database are used. --.RE - .PP --The header files \fBcurses.h\fR and \fBterm.h\fR should be included (in this --order) to get the definitions for these strings, numbers, and flags. - Parameterized strings should be passed through \fBtparm\fR to instantiate them. - All \fBterminfo\fR strings [including the output of \fBtparm\fR] should be printed --with \fBtputs\fR or \fBputp\fR. Call the \fBreset_shell_mode\fR to restore the --tty modes before exiting [see \fBcurs_kernel\fR(3X)]. Programs which use --cursor addressing should output \fBenter_ca_mode\fR upon startup and should --output \fBexit_ca_mode\fR before exiting. Programs desiring shell escapes --should call --.PP --\fBreset_shell_mode\fR and output \fBexit_ca_mode\fR before the shell --is called and should output \fBenter_ca_mode\fR and call --\fBreset_prog_mode\fR after returning from the shell. -+with \fBtputs\fR or \fBputp\fR. -+Call \fBreset_shell_mode\fR to restore the -+tty modes before exiting [see \fBcurs_kernel\fR(3X)]. -+.PP -+Programs which use -+cursor addressing should -+.bP -+output \fBenter_ca_mode\fR upon startup and -+.bP -+output \fBexit_ca_mode\fR before exiting. -+.PP -+Programs which execute shell subprocesses should -+.bP -+call \fBreset_shell_mode\fR and -+output \fBexit_ca_mode\fR before the shell -+is called and -+.bP -+output \fBenter_ca_mode\fR and -+call \fBreset_prog_mode\fR after returning from the shell. - .PP - The \fBsetupterm\fR routine reads in the \fBterminfo\fR database, - initializing the \fBterminfo\fR structures, but does not set up the -@@ -146,19 +167,23 @@ - A return value of \fBOK\fR combined with status of \fB1\fR in \fIerrret\fR - is normal. - If \fBERR\fR is returned, examine \fIerrret\fR: --.RS - .TP 5 - .B 1 - means that the terminal is hardcopy, cannot be used for curses applications. -+.IP -+\fBsetupterm\fP determines if the entry is a hardcopy type by -+checking the \fIhc\fP (\fIhardcopy\fP) capability. - .TP 5 - .B 0 - means that the terminal could not be found, - or that it is a generic type, - having too little information for curses applications to run. -+.IP -+\fBsetupterm\fP determines if the entry is a generic type by -+checking the \fIgn\fP (\fIgeneric\fP) capability. - .TP 5 - .B \-1 - means that the \fBterminfo\fR database could not be found. --.RE - .PP - If \fIerrret\fR is - null, \fBsetupterm\fR prints an error message upon finding an error -@@ -168,18 +193,33 @@ - .sp - which uses all the defaults and sends the output to \fBstdout\fR. - .PP --The \fBsetterm\fR routine is being replaced by \fBsetupterm\fR. The call: -+The \fBsetterm\fR routine was replaced by \fBsetupterm\fR. The call: - .sp - \fBsetupterm(\fR\fIterm\fR\fB, 1, (int *)0)\fR - .sp - provides the same functionality as \fBsetterm(\fR\fIterm\fR\fB)\fR. --The \fBsetterm\fR routine is included here for BSD compatibility, and -+The \fBsetterm\fR routine is provided for BSD compatibility, and - is not recommended for new programs. -+.\" *************************************************************************** -+.SS The Terminal State -+.PP -+The \fBsetupterm\fR routine stores its information about the terminal -+in a \fBTERMINAL\fP structure pointed to by the global variable \fBcur_term\fP. -+If it detects an error, -+or decides that the terminal is unsuitable (hardcopy or generic), -+it discards this information, -+making it not available to applications. -+.PP -+If \fBsetupterm\fP is called repeatedly for the same terminal type, -+it will reuse the information. -+It maintains only one copy of a given terminal's capabilities in memory. -+If it is called for different terminal types, -+\fBsetupterm\fP allocates new storage for each set of terminal capabilities. - .PP --The \fBset_curterm\fR routine sets the variable \fBcur_term\fR to -+The \fBset_curterm\fR routine sets \fBcur_term\fR to - \fInterm\fR, and makes all of the \fBterminfo\fR boolean, numeric, and --string variables use the values from \fInterm\fR. It returns the old value --of \fBcur_term\fR. -+string variables use the values from \fInterm\fR. -+It returns the old value of \fBcur_term\fR. - .PP - The \fBdel_curterm\fR routine frees the space pointed to by - \fIoterm\fR and makes it available for further use. If \fIoterm\fR is -@@ -189,11 +229,14 @@ - .PP - The \fBrestartterm\fR routine is similar to \fBsetupterm\fR and \fBinitscr\fR, - except that it is called after restoring memory to a previous state (for --example, when reloading a game saved as a core image dump). It assumes that --the windows and the input and output options are the same as when memory was --saved, but the terminal type and baud rate may be different. Accordingly, --it saves various tty state bits, calls \fBsetupterm\fP, --and then restores the bits. -+example, when reloading a game saved as a core image dump). -+\fBrestartterm\fP assumes that the windows and the input and output options -+are the same as when memory was saved, -+but the terminal type and baud rate may be different. -+Accordingly, \fBrestartterm\fP saves various tty state bits, -+calls \fBsetupterm\fP, and then restores the bits. -+.\" *************************************************************************** -+.SS Formatting Output - .PP - The \fBtparm\fR routine instantiates the string \fIstr\fR with - parameters \fIpi\fR. A pointer is returned to the result of \fIstr\fR -@@ -202,6 +245,8 @@ - \fBtiparm\fP is a newer form of \fBtparm\fP which uses \fI<stdarg.h>\fP - rather than a fixed-parameter list. - Its numeric parameters are integers (int) rather than longs. -+.\" *************************************************************************** -+.SS Output Functions - .PP - The \fBtputs\fR routine applies padding information to the string - \fIstr\fR and outputs it. The \fIstr\fR must be a terminfo string -@@ -235,26 +280,48 @@ - .PP - The \fBmvcur\fR routine provides low-level cursor motion. It takes - effect immediately (rather than at the next refresh). -+.\" *************************************************************************** -+.SS Terminal Capability Functions - .PP - The \fBtigetflag\fR, \fBtigetnum\fR and \fBtigetstr\fR routines return - the value of the capability corresponding to the \fBterminfo\fR - \fIcapname\fR passed to them, such as \fBxenl\fR. -+The \fIcapname\fR for each capability is given in the table column entitled -+\fIcapname\fR code in the capabilities section of \fBterminfo\fR(\*n). - .PP --The \fBtigetflag\fR routine returns the value \fB\-1\fR if --\fIcapname\fR is not a boolean capability, --or \fB0\fR if it is canceled or absent from the terminal description. --.PP --The \fBtigetnum\fR routine returns the value \fB\-2\fR if --\fIcapname\fR is not a numeric capability, --or \fB\-1\fR if it is canceled or absent from the terminal description. -+These routines return special values to denote errors. - .PP --The \fBtigetstr\fR routine returns the value \fB(char *)\-1\fR -+The \fBtigetflag\fR routine returns -+.TP -+\fB\-1\fR -+if \fIcapname\fR is not a boolean capability, -+or -+.TP -+\fB0\fR -+if it is canceled or absent from the terminal description. -+.PP -+The \fBtigetnum\fR routine returns -+.TP -+\fB\-2\fR -+if \fIcapname\fR is not a numeric capability, or -+.TP -+\fB\-1\fR -+if it is canceled or absent from the terminal description. -+.PP -+The \fBtigetstr\fR routine returns -+.TP -+\fB(char *)\-1\fR - if \fIcapname\fR is not a string capability, --or \fB0\fR if it is canceled or absent from the terminal description. --.PP --The \fIcapname\fR for each capability is given in the table column entitled --\fIcapname\fR code in the capabilities section of \fBterminfo\fR(\*n). --.sp -+or -+.TP -+\fB0\fR -+if it is canceled or absent from the terminal description. -+.\" *************************************************************************** -+.SS Terminal Capability Names -+These null-terminated arrays contain -+the short terminfo names ("codes"), -+the \fBtermcap\fR names, and the long terminfo names ("fnames") -+for each of the predefined \fBterminfo\fR variables: - .RS - \fBchar *boolnames[]\fR, \fB*boolcodes[]\fR, \fB*boolfnames[]\fR - .sp -@@ -262,10 +329,6 @@ - .sp - \fBchar *strnames[]\fR, \fB*strcodes[]\fR, \fB*strfnames[]\fR - .RE --.PP --These null-terminated arrays contain the \fIcapnames\fR, the --\fBtermcap\fR codes, and the full C names, for each of the --\fBterminfo\fR variables. - .SH RETURN VALUE - Routines that return an integer return \fBERR\fR upon failure and \fBOK\fR - (SVr4 only specifies "an integer value other than \fBERR\fR") upon successful -@@ -275,7 +338,7 @@ - .PP - X/Open defines no error conditions. - In this implementation --.RS -+.RS 5 - .TP 5 - \fBdel_curterm\fP - returns an error -@@ -300,19 +363,41 @@ - X/Open states that \fBtputs\fP ignores the return value - of the output function \fIputc\fP. - .RE --.SH NOTES --The \fBsetupterm\fR routine should be used in place of \fBsetterm\fR. --It may be useful when you want to test for terminal capabilities without --committing to the allocation of storage involved in \fBinitscr\fR. --.PP --Note that \fBvidattr\fR and \fBvidputs\fR may be macros. - .SH PORTABILITY -+X/Open notes that \fBvidattr\fR and \fBvidputs\fR may be macros. -+.PP - The function \fBsetterm\fR is not described by X/Open and must --be considered non-portable. All other functions are as described by X/Open. -+be considered non-portable. -+All other functions are as described by X/Open. - .PP - \fBsetupterm\fP copies the terminal name to the array \fBttytype\fP. - This is not part of X/Open Curses, but is assumed by some applications. - .PP -+If configured to use the terminal-driver, -+e.g., for the MinGW port, -+.bP -+\fBsetupterm\fP interprets a missing/empty TERM variable as the -+special value \*(``unknown\*(''. -+.bP -+\fBsetupterm\fP allows explicit use of the -+the windows console driver by checking if $TERM is set to -+\*(``#win32con\*('' or an abbreviation of that string. -+.PP -+Older versions of \fBncurses\fP assumed that the file descriptor passed to -+\fBsetupterm\fP from \fBinitscr\fP or \fBnewterm\fP uses buffered I/O, -+and would write to the corresponding stream. -+In addition to the limitation that the terminal was left in block-buffered -+mode on exit (like SystemV curses), -+it was problematic because \fBncurses\fP -+did not allow a reliable way to cleanup on receiving SIGTSTP. -+The current version uses output buffers managed directly by \fBncurses\fP. -+Some of the low-level functions described in this manual page write -+to the standard output. -+They are not signal-safe. -+The high-level functions in \fBncurses\fP use -+alternate versions of these functions -+using the more reliable buffering scheme. -+.PP - In System V Release 4, \fBset_curterm\fR has an \fBint\fR return type and - returns \fBOK\fR or \fBERR\fR. We have chosen to implement the X/Open Curses - semantics. -@@ -332,12 +417,12 @@ - zeroes are fine for this purpose. - .PP - In response to comments by Thomas E. Dickey, --X/Open Curses Issue 7 proposed the \fBtiparam\fP function in mid-2009. -+X/Open Curses Issue 7 proposed the \fBtiparm\fP function in mid-2009. - .PP - X/Open notes that after calling \fBmvcur\fR, the curses state may not match the - actual terminal state, and that an application should touch and refresh - the window before resuming normal curses calls. --Both ncurses and System V Release 4 curses implement \fBmvcur\fR using -+Both \fBncurses\fP and System V Release 4 curses implement \fBmvcur\fR using - the SCREEN data allocated in either \fBinitscr\fR or \fBnewterm\fR. - So though it is documented as a terminfo function, - \fBmvcur\fR is really a curses function which is not well specified. -@@ -346,8 +431,12 @@ - This implementation allows the caller to use \-1's for the old ordinates. - In that case, the old location is unknown. - .PP --Extended terminal capability names, e.g., as defined by \fBtic\ \-x\fP, --are not stored in the arrays described in this section. -+Other implementions may not declare the capability name arrays. -+Some provide them without declaring them. -+X/Open does not specify them. -+.PP -+Extended terminal capability names, e.g., as defined by \fB@TIC@\ \-x\fP, -+are not stored in the arrays described here. - .SH SEE ALSO - \fBcurses\fR(3X), - \fBcurs_initscr\fR(3X), -diff -Naur ncurses-5.9/man/curs_threads.3x ncurses-5.9.patch/man/curs_threads.3x ---- ncurses-5.9/man/curs_threads.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_threads.3x 2014-09-01 16:34:19.463887194 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2008,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2008-2012,2014 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_threads.3x,v 1.18 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: curs_threads.3x,v 1.20 2014/03/15 19:25:28 tom Exp $ - .TH curs_threads 3X "" - .de bP - .IP \(bu 4 -@@ -51,9 +51,9 @@ - .br - \fBint set_tabsize(int size);\fR - .br --\fBint use_screen(SCREEN *scr, NCURSES_WINDOW_CB func, void *data);\fR -+\fBint use_screen(SCREEN *scr, NCURSES_SCREEN_CB func, void *data);\fR - .br --\fBint use_window(WINDOW *win, NCURSES_SCREEN_CB func, void *data);\fR -+\fBint use_window(WINDOW *win, NCURSES_WINDOW_CB func, void *data);\fR - .br - .SH DESCRIPTION - This implementation can be configured to provide rudimentary support -@@ -540,6 +540,7 @@ - wget_wstr/screen (input-operation) - wgetbkgrnd/window - wgetch/screen (input-operation) -+wgetdelay/window - wgetn_wstr/screen (input-operation) - wgetnstr/screen (input-operation) - wgetparent/window -diff -Naur ncurses-5.9/man/curs_util.3x ncurses-5.9.patch/man/curs_util.3x ---- ncurses-5.9/man/curs_util.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_util.3x 2014-09-01 16:33:22.348792109 +0200 -@@ -1,5 +1,6 @@ -+'\" t - .\"*************************************************************************** --.\" Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,8 +27,12 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_util.3x,v 1.32 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: curs_util.3x,v 1.37 2013/07/20 19:43:45 tom Exp $ - .TH curs_util 3X "" -+.ie \n(.g .ds `` \(lq -+.el .ds `` `` -+.ie \n(.g .ds '' \(rq -+.el .ds '' '' - .de bP - .IP \(bu 4 - .. -@@ -44,6 +49,7 @@ - \fBputwin\fR, - \fBunctrl\fR, - \fBuse_env\fR, -+\fBuse_tioctl\fR, - \fBwunctrl\fR \- miscellaneous \fBcurses\fR utility routines - .ad - .hy -@@ -64,6 +70,8 @@ - .br - \fBvoid use_env(bool f);\fR - .br -+\fBvoid use_tioctl(bool f);\fR -+.br - \fBint putwin(WINDOW *win, FILE *filep);\fR - .br - \fBWINDOW *getwin(FILE *filep);\fR -@@ -80,10 +88,12 @@ - The corresponding \fBwunctrl\fR returns a printable representation of - a wide character. - .PP --The \fBkeyname\fR routine returns a character string corresponding to the key \fIc\fR: -+The \fBkeyname\fR routine returns a character string -+corresponding to the key \fIc\fR: - .RS 3 - .bP --Printable characters are displayed as themselves, e.g., a one-character string containing the key. -+Printable characters are displayed as themselves, -+e.g., a one-character string containing the key. - .bP - Control characters are displayed in the \fB^\fR\fIX\fR notation. - .bP -@@ -123,16 +133,70 @@ - The limitation arises because the \fBfilter\fP routine modifies the - in-memory copy of the terminal information. - .PP --The \fBuse_env\fR routine, if used, is called before \fBinitscr\fR or --\fBnewterm\fR are called. When called with \fBFALSE\fR as an --argument, the values of \fBlines\fR and \fBcolumns\fR specified in the --\fIterminfo\fR database will be used, even if environment variables --\fBLINES\fR and \fBCOLUMNS\fR (used by default) are set, or if --\fBcurses\fR is running in a window (in which case default behavior --would be to use the window size if \fBLINES\fR and \fBCOLUMNS\fR are --not set). --Note that setting \fBLINES\fR or \fBCOLUMNS\fR overrides the --corresponding size which may be obtained from the operating system. -+The \fBuse_env\fR routine, if used, -+should be called before \fBinitscr\fR or -+\fBnewterm\fR are called -+(because those compute the screen size). -+It modifies the way \fBncurses\fP treats environment variables -+when determining the screen size. -+.bP -+Normally ncurses looks first at the terminal database for the screen size. -+.IP -+If \fBuse_env\fP was called with \fBFALSE\fP for parameter, -+it stops here unless -+If \fBuse_tioctl\fP was also called with \fBTRUE\fP for parameter. -+.bP -+Then it asks for the screen size via operating system calls. -+If successful, -+it overrides the values from the terminal database. -+.bP -+Finally (unless \fBuse_env\fP was called with \fBFALSE\fP parameter), -+ncurses examines the \fBLINES\fR or \fBCOLUMNS\fR environment variables, -+using a value in those to override the results -+from the operating system or terminal database. -+.IP -+Ncurses also updates the screen size in response to SIGWINCH, -+unless overridden by the \fBLINES\fR or \fBCOLUMNS\fR environment variables, -+.PP -+The \fBuse_tioctl\fR routine, if used, -+should be called before \fBinitscr\fR or \fBnewterm\fR are called -+(because those compute the screen size). -+After \fBuse_tioctl\fR is called with \fBTRUE\fR as an argument, -+ncurses modifies the last step in its computation of screen size as follows: -+.bP -+checks if the \fBLINES\fR and \fBCOLUMNS\fR environment variables -+are set to a number greater than zero. -+.bP -+for each, ncurses updates the corresponding environment variable -+with the value that it has obtained via operating system call -+or from the terminal database. -+.bP -+ncurses re-fetches the value of the environment variables so that -+it is still the environment variables which set the screen size. -+.PP -+The \fBuse_env\fP and \fBuse_tioctl\fP routines combine as -+summarized here: -+.TS -+center tab(/); -+l l l -+_ _ _ -+lw7 lw7 lw40. -+\fIuse_env\fR/\fIuse_tioctl\fR/\fISummary\fR -+TRUE/FALSE/T{ -+This is the default behavior. -+ncurses uses operating system calls -+unless overridden by $LINES or $COLUMNS environment variables. -+T} -+TRUE/TRUE/T{ -+ncurses updates $LINES and $COLUMNS based on operating system calls. -+T} -+FALSE/TRUE/T{ -+ncurses ignores $LINES and $COLUMNS, uses operating system calls to obtain size. -+T} -+FALSE/FALSE/T{ -+ncurses relies on the terminal database to determine size. -+T} -+.TE - .PP - The \fBputwin\fR routine writes all data associated with window \fIwin\fR into - the file to which \fIfilep\fR points. This information can be later retrieved -@@ -145,7 +209,8 @@ - The \fBdelay_output\fR routine inserts an \fIms\fR millisecond pause - in output. This routine should not be used extensively because - padding characters are used rather than a CPU pause. --If no padding character is specified, this uses \fBnapms\fR to perform the delay. -+If no padding character is specified, -+this uses \fBnapms\fR to perform the delay. - .PP - The \fBflushinp\fR routine throws away any typeahead that has been typed by the - user and has not yet been read by the program. -@@ -183,12 +248,13 @@ - If \fBuse_legacy_coding\fP has been called with a \fB2\fP parameter, - \fBunctrl\fP returns the parameter, i.e., a one-character string with - the parameter as the first character. --Otherwise, it returns ``~@'', ``~A'', etc., analogous to ``^@'', ``^A'', C0 controls. -+Otherwise, it returns \*(``~@\*('', \*(``~A\*('', etc., -+analogous to \*(``^@\*('', \*(``^A\*('', C0 controls. - .IP - X/Open Curses does not document whether \fBunctrl\fP can be called before - initializing curses. - This implementation permits that, --and returns the ``~@'', etc., values in that case. -+and returns the \*(``~@\*('', etc., values in that case. - .bP - parameter values outside the 0 to 255 range. - \fBunctrl\fP returns a null pointer. -@@ -214,17 +280,17 @@ - Likewise, the \fBmeta\fP function allows the caller to change the - output of \fBkeyname\fP, i.e., - it determines whether to use the `M\-' prefix --for ``meta'' keys (codes in the range 128 to 255). -+for \*(``meta\*('' keys (codes in the range 128 to 255). - Both \fBuse_legacy_coding\fP and \fBmeta\fP succeed only after - curses is initialized. - X/Open Curses does not document the treatment of codes 128 to 159. --When treating them as ``meta'' keys -+When treating them as \*(``meta\*('' keys - (or if \fBkeyname\fP is called before initializing curses), --this implementation returns strings ``M\-^@'', ``M\-^A'', etc. -+this implementation returns strings \*(``M\-^@\*('', \*(``M\-^A\*('', etc. - .PP - The \fBkeyname\fP function may return the names of user-defined - string capabilities which are defined in the terminfo entry via the \fB\-x\fP --option of \fBtic\fP. -+option of \fB@TIC@\fP. - This implementation automatically assigns at run-time keycodes to - user-defined strings which begin with "k". - The keycodes start at KEY_MAX, but are not guaranteed to be -@@ -233,8 +299,8 @@ - The \fBuse_extended_names\fP function controls whether this data is - loaded when the terminal description is read by the library. - .PP --The \fBnofilter\fP routine is specific to ncurses. --It was not supported on Version 7, BSD or System V implementations. -+The \fBnofilter\fP and \fBuse_tioctl\fP routines are specific to ncurses. -+They were not supported on Version 7, BSD or System V implementations. - It is recommended that any code depending on ncurses extensions - be conditioned using NCURSES_VERSION. - .SH SEE ALSO -diff -Naur ncurses-5.9/man/curs_variables.3x ncurses-5.9.patch/man/curs_variables.3x ---- ncurses-5.9/man/curs_variables.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_variables.3x 2014-09-01 16:33:22.348792109 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2010,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_variables.3x,v 1.4 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: curs_variables.3x,v 1.6 2013/12/21 18:41:32 tom Exp $ - .TH curs_variables 3X "" - .de bP - .IP \(bu 4 -@@ -74,7 +74,7 @@ - A more complete description is given in the \fBcurses\fP(3X) manual page. - .PP - Depending on the configuration, these may be actual variables, --or macros (see \fBcurs_threads\fR(3X)) -+or macros (see \fBcurs_threads\fR(3X) and \fBcurs_opaque\fR(3X)) - which provide read-only access to \fIcurses\fP's state. - In either case, applications should treat them as read-only to avoid - confusing the library. -@@ -129,7 +129,8 @@ - not provided in most other implementations of curses. - .SH SEE ALSO - \fBcurses\fR(3X), -+\fBcurs_opaque\fR(3X), -+\fBcurs_terminfo\fR(3X), - \fBcurs_threads\fR(3X), - \fBterm_variables\fR(3X), --\fBterminfo\fR(3X), - \fBterminfo\fR(\*n). -diff -Naur ncurses-5.9/man/curs_window.3x ncurses-5.9.patch/man/curs_window.3x ---- ncurses-5.9/man/curs_window.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/curs_window.3x 2014-09-01 16:33:22.348792109 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2014 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: curs_window.3x,v 1.17 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: curs_window.3x,v 1.18 2014/03/01 23:36:38 tom Exp $ - .TH curs_window 3X "" - .na - .hy 0 -@@ -47,17 +47,20 @@ - .SH SYNOPSIS - \fB#include <curses.h>\fR - .sp --\fBWINDOW *newwin(int nlines, int ncols, int begin_y,\fR -- \fBint begin_x);\fR -+\fBWINDOW *newwin(\fR -+ \fBint nlines, int ncols,\fR -+ \fBint begin_y, int begin_x);\fR - .br - \fBint delwin(WINDOW *win);\fR - .br - \fBint mvwin(WINDOW *win, int y, int x);\fR - .br --\fBWINDOW *subwin(WINDOW *orig, int nlines, int ncols,\fR -+\fBWINDOW *subwin(WINDOW *orig,\fR -+ \fBint nlines, int ncols,\fR - \fBint begin_y, int begin_x);\fR - .br --\fBWINDOW *derwin(WINDOW *orig, int nlines, int ncols,\fR -+\fBWINDOW *derwin(WINDOW *orig,\fR -+ \fBint nlines, int ncols,\fR - \fBint begin_y, int begin_x);\fR - .br - \fBint mvderwin(WINDOW *win, int par_y, int par_x);\fR -@@ -74,53 +77,70 @@ - .br - .SH DESCRIPTION - Calling \fBnewwin\fR creates and returns a pointer to a new window with the --given number of lines and columns. The upper left-hand corner of the window is --at line \fIbegin\fR_\fIy\fR, column \fIbegin\fR_\fIx\fR. If either --\fInlines\fR or \fIncols\fR is zero, they default to \fBLINES \-\fR --\fIbegin\fR_\fIy\fR and \fBCOLS \-\fR \fIbegin\fR_\fIx\fR. A new full-screen --window is created by calling \fBnewwin(0,0,0,0)\fR. -+given number of lines and columns. -+The upper left-hand corner of the window is -+at -+.RS -+line \fIbegin\fR_\fIy\fR, -+.br -+column \fIbegin\fR_\fIx\fR -+.RE -+.PP -+If either -+\fInlines\fR or \fIncols\fR is zero, they default to -+.RS -+\fBLINES \-\fR \fIbegin\fR_\fIy\fR and -+.br -+\fBCOLS \-\fR \fIbegin\fR_\fIx\fR. -+.RE -+.PP -+A new full-screen window is created by calling \fBnewwin(0,0,0,0)\fR. - .PP - Calling \fBdelwin\fR deletes the named window, freeing all memory - associated with it (it does not actually erase the window's screen --image). Subwindows must be deleted before the main window can be --deleted. -+image). -+Subwindows must be deleted before the main window can be deleted. - .PP - Calling \fBmvwin\fR moves the window so that the upper left-hand --corner is at position (\fIx\fR, \fIy\fR). If the move would cause the --window to be off the screen, it is an error and the window is not --moved. Moving subwindows is allowed, but should be avoided. -+corner is at position (\fIx\fR, \fIy\fR). -+If the move would cause the window to be off the screen, -+it is an error and the window is not moved. -+Moving subwindows is allowed, but should be avoided. - .PP - Calling \fBsubwin\fR creates and returns a pointer to a new window --with the given number of lines, \fInlines\fR, and columns, --\fIncols\fR. The window is at position (\fIbegin\fR_\fIy\fR, --\fIbegin\fR_\fIx\fR) on the screen. (This position is relative to the --screen, and not to the window \fIorig\fR.) The window is made in the --middle of the window \fIorig\fR, so that changes made to one window --will affect both windows. The subwindow shares memory with the window --\fIorig\fR. When using this routine, it is necessary to call -+with the given number of lines, \fInlines\fR, and columns, \fIncols\fR. -+The window is at position (\fIbegin\fR_\fIy\fR, -+\fIbegin\fR_\fIx\fR) on the screen. -+The subwindow shares memory with the window \fIorig\fR, -+so that changes made to one window -+will affect both windows. -+When using this routine, it is necessary to call - \fBtouchwin\fR or \fBtouchline\fR on \fIorig\fR before calling - \fBwrefresh\fR on the subwindow. - .PP - Calling \fBderwin\fR is the same as calling \fBsubwin,\fR except that - \fIbegin\fR_\fIy\fR and \fIbegin\fR_\fIx\fR are relative to the origin --of the window \fIorig\fR rather than the screen. There is no --difference between the subwindows and the derived windows. -+of the window \fIorig\fR rather than the screen. -+There is no difference between the subwindows and the derived windows. - .PP - Calling \fBmvderwin\fR moves a derived window (or subwindow) --inside its parent window. The screen-relative parameters of the --window are not changed. This routine is used to display different -+inside its parent window. -+The screen-relative parameters of the window are not changed. -+This routine is used to display different - parts of the parent window at the same physical position on the - screen. - .PP - Calling \fBdupwin\fR creates an exact duplicate of the window \fIwin\fR. - .PP - Calling \fBwsyncup\fR touches all locations in ancestors of \fIwin\fR that are --changed in \fIwin\fR. If \fBsyncok\fR is called with second argument -+changed in \fIwin\fR. -+If \fBsyncok\fR is called with second argument - \fBTRUE\fR then \fBwsyncup\fR is called automatically whenever there is a - change in the window. - .PP - The \fBwsyncdown\fR routine touches each location in \fIwin\fR that has been --touched in any of its ancestor windows. This routine is called by -+touched in any of its ancestor windows. -+This routine is called by - \fBwrefresh\fR, so it should almost never be necessary to call it manually. - .PP - The routine \fBwcursyncup\fR updates the current cursor position of all the -@@ -135,11 +155,18 @@ - .PP - X/Open defines no error conditions. - In this implementation --.RS - .TP 5 - \fBdelwin\fR - returns an error if the window pointer is null, or - if the window is the parent of another window. -+.TP 5 -+\fBderwin\fP -+returns an error if the parent window pointer is null, or -+if any of its ordinates or dimensions is negative, or -+if the resulting window does not fit inside the parent window. -+.TP 5 -+\fBdupwin\fP -+returns an error if the window pointer is null. - .IP - This implementation also maintains a list of windows, - and checks that the pointer passed to \fBdelwin\fP is one that -@@ -156,10 +183,23 @@ - if the window is really a pad, or - if some part of the window would be placed off-screen. - .TP 5 -+\fBnewwin\fP -+will fail if either of its beginning ordinates is negative, or -+if either the number of lines or columns is negative. -+.TP 5 - \fBsyncok\fP - returns an error - if the window pointer is null. --.RE -+.TP 5 -+\fBsubwin\fP -+returns an error if the parent window pointer is null, or -+if any of its ordinates or dimensions is negative, or -+if the resulting window does not fit inside the parent window. -+.PP -+The functions which return a window pointer -+may also fail if there is insufficient memory for its data structures. -+Any of these functions will fail if the screen has not been initialized, -+i.e., with \fBinitscr\fP or \fBnewterm\fP. - .SH NOTES - If many small changes are made to the window, the \fBwsyncup\fR option could - degrade performance. -@@ -171,11 +211,12 @@ - incompletely implemented, and not well tested. - .PP - The System V curses documentation is very unclear about what \fBwsyncup\fR --and \fBwsyncdown\fR actually do. It seems to imply that they are only -+and \fBwsyncdown\fR actually do. -+It seems to imply that they are only - supposed to touch exactly those lines that are affected by ancestor changes. - The language here, and the behavior of the \fBcurses\fR implementation, --is patterned on the XPG4 curses standard. The weaker XPG4 spec may result --in slower updates. -+is patterned on the XPG4 curses standard. -+The weaker XPG4 spec may result in slower updates. - .SH PORTABILITY - The XSI Curses standard, Issue 4 describes these functions. - .SH SEE ALSO -diff -Naur ncurses-5.9/man/form_field.3x ncurses-5.9.patch/man/form_field.3x ---- ncurses-5.9/man/form_field.3x 2010-12-04 19:40:45.000000000 +0100 -+++ ncurses-5.9.patch/man/form_field.3x 2014-09-01 16:33:22.348792109 +0200 -@@ -1,6 +1,6 @@ - '\" t - .\"*************************************************************************** --.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: form_field.3x,v 1.10 2010/12/04 18:40:45 tom Exp $ -+.\" $Id: form_field.3x,v 1.11 2012/11/03 23:03:59 tom Exp $ - .TH form_field 3X "" - .SH NAME - \fBform_field\fR \- make and break connections between fields and forms -@@ -52,7 +52,7 @@ - .PP - The function \fBmove_field\fR moves the given field (which must be disconnected) - to a specified location on the screen. --.SH RETURN VALUES -+.SH RETURN VALUE - The function \fBform_fields\fR returns a pointer (which may be \fBNULL\fR). - It does not set errno. - .PP -diff -Naur ncurses-5.9/man/form_variables.3x ncurses-5.9.patch/man/form_variables.3x ---- ncurses-5.9/man/form_variables.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/form_variables.3x 2014-09-01 16:33:22.349792111 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2010,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: form_variables.3x,v 1.3 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: form_variables.3x,v 1.4 2013/06/22 17:58:32 tom Exp $ - .TH form_variables 3X "" - .ds n 5 - .na -@@ -45,7 +45,6 @@ - .SH SYNOPSIS - .nf - \fB#include <form.h>\fR --.br - .PP - \fBFIELDTYPE * TYPE_ALNUM;\fR - \fBFIELDTYPE * TYPE_ALPHA;\fR -@@ -54,7 +53,6 @@ - \fBFIELDTYPE * TYPE_IPV4;\fR - \fBFIELDTYPE * TYPE_NUMERIC;\fR - \fBFIELDTYPE * TYPE_REGEXP;\fR --.br - .fi - .SH DESCRIPTION - These are building blocks for the form library, -diff -Naur ncurses-5.9/man/infocmp.1m ncurses-5.9.patch/man/infocmp.1m ---- ncurses-5.9/man/infocmp.1m 2010-12-04 19:40:45.000000000 +0100 -+++ ncurses-5.9.patch/man/infocmp.1m 2014-09-01 16:33:22.349792111 +0200 -@@ -1,6 +1,6 @@ - '\" t - .\"*************************************************************************** --.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -27,9 +27,12 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: infocmp.1m,v 1.46 2010/12/04 18:40:45 tom Exp $ -+.\" $Id: infocmp.1m,v 1.53 2013/02/02 22:07:35 tom Exp $ - .TH @INFOCMP@ 1M "" - .ds n 5 -+.de bP -+.IP \(bu 4 -+.. - .ds d @TERMINFO@ - .SH NAME - \fB@INFOCMP@\fR \- compare or print out \fIterminfo\fR descriptions -@@ -37,10 +40,12 @@ - \fB@INFOCMP@\fR [\fB\-\ - 1\ - C\ -+D\ - E\ - F\ - G\ - I\ -+K\ - L\ - T\ - U\ -@@ -69,32 +74,40 @@ - \fB@INFOCMP@\fR can be used to compare a binary \fBterminfo\fR entry with other - terminfo entries, rewrite a \fBterminfo\fR description to take advantage of the - \fBuse=\fR terminfo field, or print out a \fBterminfo\fR description from the --binary file (\fBterm\fR) in a variety of formats. In all cases, the boolean -+binary file (\fBterm\fR) in a variety of formats. -+In all cases, the boolean - fields will be printed first, followed by the numeric fields, followed by the - string fields. - .SS Default Options - If no options are specified and zero or one \fItermnames\fR are specified, the --\fB\-I\fR option will be assumed. If more than one \fItermname\fR is specified, -+\fB\-I\fR option will be assumed. -+If more than one \fItermname\fR is specified, - the \fB\-d\fR option will be assumed. - .SS Comparison Options [\-d] [\-c] [\-n] - \fB@INFOCMP@\fR compares the \fBterminfo\fR description of the first terminal - \fItermname\fR with each of the descriptions given by the entries for the other --terminal's \fItermnames\fR. If a capability is defined for only one of the -+terminal's \fItermnames\fR. -+If a capability is defined for only one of the - terminals, the value returned will depend on the type of the capability: - \fBF\fR for boolean variables, \fB\-1\fR for integer variables, and \fBNULL\fR - for string variables. - .PP - The \fB\-d\fR option produces a list of each capability that is different --between two entries. This option is useful to show the difference between two -+between two entries. -+This option is useful to show the difference between two - entries, created by different people, for the same or similar terminals. - .PP - The \fB\-c\fR option produces a list of each capability that is common between --two entries. Capabilities that are not set are ignored. This option can be -+two or more entries. -+Capabilities that are not set are ignored. -+This option can be - used as a quick check to see if the \fB\-u\fR option is worth using. - .PP --The \fB\-n\fR option produces a list of each capability that is in neither --entry. If no \fItermnames\fR are given, the environment variable \fBTERM\fR --will be used for both of the \fItermnames\fR. This can be used as a quick -+The \fB\-n\fR option produces a list of each capability that is in none of -+the given entries. -+If no \fItermnames\fR are given, the environment variable \fBTERM\fR -+will be used for both of the \fItermnames\fR. -+This can be used as a quick - check to see if anything was left out of a description. - .SS Source Listing Options [\-I] [\-L] [\-C] [\-r] - The \fB\-I\fR, \fB\-L\fR, and \fB\-C\fR options will produce a source listing for -@@ -107,6 +120,7 @@ - \fB\-L\fR/use the long C variable name listed in <\fBterm.h\fR> - \fB\-C\fR/use the \fBtermcap\fR names - \fB\-r\fR/when using \fB\-C\fR, put out all capabilities in \fBtermcap\fR form -+\fB\-K\fR/modifies the \fB\-C\fP option, improving BSD-compatibility. - .TE - .PP - If no \fItermnames\fR are given, the environment variable \fBTERM\fR will be -@@ -114,26 +128,48 @@ - .PP - The source produced by the \fB\-C\fR option may be used directly as a - \fBtermcap\fR entry, but not all parameterized strings can be changed to --the \fBtermcap\fR format. \fB@INFOCMP@\fR will attempt to convert most of the -+the \fBtermcap\fR format. -+\fB@INFOCMP@\fR will attempt to convert most of the - parameterized information, and anything not converted will be plainly marked in --the output and commented out. These should be edited by hand. -+the output and commented out. -+These should be edited by hand. -+.PP -+For best results when converting to \fBtermcap\fP format, -+you should use both \fB\-C\fP and \fB\-r\fP. -+Normally a termcap description is limited to 1023 bytes. -+@INFOCMP@ trims away less essential parts to make it fit. -+If you are converting to one of the (rare) termcap implementations -+which accept an unlimited size of termcap, -+you may want to add the \fB\-T\fP option. -+More often however, you must help the termcap implementation, -+and trim excess whitespace (use the \fB\-0\fP option for that). - .PP - All padding information for strings will be collected together and placed --at the beginning of the string where \fBtermcap\fR expects it. Mandatory -+at the beginning of the string where \fBtermcap\fR expects it. -+Mandatory - padding (padding information with a trailing '/') will become optional. - .PP - All \fBtermcap\fR variables no longer supported by \fBterminfo\fR, but which --are derivable from other \fBterminfo\fR variables, will be output. Not all -+are derivable from other \fBterminfo\fR variables, will be output. -+Not all - \fBterminfo\fR capabilities will be translated; only those variables which were --part of \fBtermcap\fR will normally be output. Specifying the \fB\-r\fR option -+part of \fBtermcap\fR will normally be output. -+Specifying the \fB\-r\fR option - will take off this restriction, allowing all capabilities to be output in - \fItermcap\fR form. -+Normally you would use both the \fB\-C\fP and \fB\-r\fP options. -+The actual format used incorporates some improvements for escaped characters -+from terminfo format. -+For a stricter BSD-compatible translation, use the \fB\-K\fR option -+rather than \fB\-C\fP. - .PP - Note that because padding is collected to the beginning of the capability, not --all capabilities are output. Mandatory padding is not supported. Because -+all capabilities are output. -+Mandatory padding is not supported. -+Because - \fBtermcap\fR strings are not as flexible, it is not always possible to convert --a \fBterminfo\fR string capability into an equivalent \fBtermcap\fR format. A --subsequent conversion of the \fBtermcap\fR file back into \fBterminfo\fR format -+a \fBterminfo\fR string capability into an equivalent \fBtermcap\fR format. -+A subsequent conversion of the \fBtermcap\fR file back into \fBterminfo\fR format - will not necessarily reproduce the original \fBterminfo\fR - source. - .PP -@@ -156,27 +192,33 @@ - .SS Use= Option [\-u] - The \fB\-u\fR option produces a \fBterminfo\fR source description of the first - terminal \fItermname\fR which is relative to the sum of the descriptions given --by the entries for the other terminals \fItermnames\fR. It does this by -+by the entries for the other terminals \fItermnames\fR. -+It does this by - analyzing the differences between the first \fItermname\fR and the other - \fItermnames\fR and producing a description with \fBuse=\fR fields for the --other terminals. In this manner, it is possible to retrofit generic terminfo --entries into a terminal's description. Or, if two similar terminals exist, but -+other terminals. -+In this manner, it is possible to retrofit generic terminfo -+entries into a terminal's description. -+Or, if two similar terminals exist, but - were coded at different times or by different people so that each description - is a full description, using \fB@INFOCMP@\fR will show what can be done to change - one description to be relative to the other. - .PP - A capability will get printed with an at-sign (@) if it no longer exists in the - first \fItermname\fR, but one of the other \fItermname\fR entries contains a --value for it. A capability's value gets printed if the value in the first -+value for it. -+A capability's value gets printed if the value in the first - \fItermname\fR is not found in any of the other \fItermname\fR entries, or if - the first of the other \fItermname\fR entries that has this capability gives a - different value for the capability than that in the first \fItermname\fR. - .PP --The order of the other \fItermname\fR entries is significant. Since the --terminfo compiler \fBtic\fR does a left-to-right scan of the capabilities, -+The order of the other \fItermname\fR entries is significant. -+Since the -+terminfo compiler \fB@TIC@\fR does a left-to-right scan of the capabilities, - specifying two \fBuse=\fR entries that contain differing entries for the same - capabilities will produce different results depending on the order that the --entries are given in. \fB@INFOCMP@\fR will flag any such inconsistencies between -+entries are given in. -+\fB@INFOCMP@\fR will flag any such inconsistencies between - the other \fItermname\fR entries as they are found. - .PP - Alternatively, specifying a capability \fIafter\fR a \fBuse=\fR entry that -@@ -187,29 +229,48 @@ - .PP - Another error that does not cause incorrect compiled files, but will slow down - the compilation time, is specifying extra \fBuse=\fR fields that are --superfluous. \fB@INFOCMP@\fR will flag any other \fItermname use=\fR fields that -+superfluous. -+\fB@INFOCMP@\fR will flag any other \fItermname use=\fR fields that - were not needed. - .SS Changing Databases [\-A \fIdirectory\fR] [\-B \fIdirectory\fR] --The location of the compiled \fBterminfo\fR database is taken from the --environment variable \fBTERMINFO\fR . If the variable is not defined, or the --terminal is not found in that location, the system \fBterminfo\fR database, --in \fB@TERMINFO@\fR, will be used. The options \fB\-A\fR --and \fB\-B\fR may be used to override this location. The \fB\-A\fR option will --set \fBTERMINFO\fR for the first \fItermname\fR and the \fB\-B\fR option will --set \fBTERMINFO\fR for the other \fItermnames\fR. With this, it is possible to -+Like other \fBncurses\fP utilities, -+@INFOCMP@ looks for the terminal descriptions in several places. -+You can use the \fBTERMINFO\fP and \fBTERMINFO_DIRS\fP environment variables -+to override the compiled-in default list of places to search -+(see \fBcurses\fP(3X) for details). -+.PP -+You can also use the options \fB\-A\fR -+and \fB\-B\fR to override the list of places to search -+when comparing terminal descriptions: -+.bP -+The \fB\-A\fR option sets the location for the first \fItermname\fR -+.bP -+The \fB\-B\fR option sets the location for the other \fItermnames\fR. -+.PP -+Using these options, it is possible to - compare descriptions for a terminal with the same name located in two different --databases. This is useful for comparing descriptions for the same terminal -+databases. -+For instance, -+you can use this feature for comparing descriptions for the same terminal - created by different people. - .SS Other Options - .TP 5 -+\fB\-0\fR -+causes the fields to be printed on one line, without wrapping. -+.TP 5 - \fB\-1\fR --causes the fields to be printed out one to a line. Otherwise, -+causes the fields to be printed out one to a line. -+Otherwise, - the fields will be printed several to a line to a maximum width - of 60 characters. - .TP - \fB\-a\fR - tells \fB@INFOCMP@\fP to retain commented-out capabilities rather than discarding --them. Capabilities are commented by prefixing them with a period. -+them. -+Capabilities are commented by prefixing them with a period. -+.TP -+\fB\-D\fR -+tells \fB@INFOCMP@\fP to print the database locations that it knows about, and exit. - .TP 5 - \fB\-E\fR - Dump the capabilities of the given terminal as tables, needed in -@@ -231,12 +292,15 @@ - for a given terminal type. - .TP 5 - \fB\-F\fR --compare terminfo files. This assumes that two following arguments are --filenames. The files are searched for pairwise matches between -+compare terminfo files. -+This assumes that two following arguments are filenames. -+The files are searched for pairwise matches between - entries, with two entries considered to match if any of their names do. - The report printed to standard output lists entries with no matches in --the other file, and entries with more than one match. For entries --with exactly one match it includes a difference report. Normally, -+the other file, and entries with more than one match. -+For entries -+with exactly one match it includes a difference report. -+Normally, - to reduce the volume of the report, use references are - not resolved before looking for differences, but resolution can be forced - by also specifying \fB\-r\fR. -@@ -255,14 +319,17 @@ - .TP 5 - \fB\-i\fR - Analyze the initialization (\fBis1\fR, \fBis2\fR, \fBis3\fR), and reset --(\fBrs1\fR, \fBrs2\fR, \fBrs3\fR), strings in the entry. For each string, the -+(\fBrs1\fR, \fBrs2\fR, \fBrs3\fR), strings in the entry. -+For each string, the - code tries to analyze it into actions in terms of the other capabilities in the - entry, certain X3.64/ISO 6429/ECMA\-48 capabilities, and certain DEC VT-series - private modes (the set of recognized special sequences has been selected for --completeness over the existing terminfo database). Each report line consists -+completeness over the existing terminfo database). -+Each report line consists - of the capability name, followed by a colon and space, followed by a printable - expansion of the capability string with sections matching recognized actions --translated into {}-bracketed descriptions. Here is a list of the DEC/ANSI -+translated into {}-bracketed descriptions. -+Here is a list of the DEC/ANSI - special sequences recognized: - i. - .TS -@@ -308,7 +375,8 @@ - .sp - It also recognizes a SGR action corresponding to ANSI/ISO 6429/ECMA Set - Graphics Rendition, with the values NORMAL, BOLD, UNDERLINE, BLINK, and --REVERSE. All but NORMAL may be prefixed with `+' (turn on) or `\-' (turn off). -+REVERSE. -+All but NORMAL may be prefixed with `+' (turn on) or `\-' (turn off). - .PP - An SGR0 designates an empty highlight sequence (equivalent to {SGR:NORMAL}). - .TP 5 -@@ -323,12 +391,15 @@ - "\-" for absent capabilities, "@" for canceled rather than "NULL". - .TP 5 - \fB\-R\fR\fIsubset\fR --Restrict output to a given subset. This option is for use with archaic -+Restrict output to a given subset. -+This option is for use with archaic - versions of terminfo like those on SVr1, Ultrix, or HP/UX that do not support - the full set of SVR4/XSI Curses terminfo; and variants such as AIX --that have their own extensions incompatible with SVr4/XSI. Available terminfo -+that have their own extensions incompatible with SVr4/XSI. -+Available terminfo - subsets are "SVr1", "Ultrix", "HP", and "AIX"; see \fBterminfo\fR(\*n) for --details. You can also choose the subset "BSD" which selects only capabilities -+details. -+You can also choose the subset "BSD" which selects only capabilities - with termcap equivalents recognized by 4.4BSD. - .TP - \fB\-s \fR\fI[d|i|l|c]\fR -@@ -362,7 +433,7 @@ - descriptions are limited (e.g., 1023 for termcap, 4096 for terminfo). - .TP - \fB\-t\fR --tells \fBtic\fP to discard commented-out capabilities. -+tells \fB@TIC@\fP to discard commented-out capabilities. - Normally when translating from terminfo to termcap, - untranslatable capabilities are commented-out. - .TP 5 -@@ -385,13 +456,15 @@ - \fB\-x\fR - print information for user-defined capabilities. - These are extensions to the terminfo repertoire which can be loaded --using the \fB\-x\fR option of \fBtic\fP. -+using the \fB\-x\fR option of \fB@TIC@\fP. - .SH FILES - .TP 20 - \*d - Compiled terminal description database. - .SH EXTENSIONS - The -+\fB\-0\fR, -+\fB\-1\fR, - \fB\-E\fR, - \fB\-F\fR, - \fB\-G\fR, -@@ -410,7 +483,8 @@ - options are not supported in SVr4 curses. - .PP - The \fB\-r\fR option's notion of `termcap' capabilities is System V Release 4's. --Actual BSD curses versions will have a more restricted set. To see only the -+Actual BSD curses versions will have a more restricted set. -+To see only the - 4.4BSD set, use \fB\-r\fR \fB\-RBSD\fR. - .SH BUGS - The \fB\-F\fR option of \fB@INFOCMP@\fR(1M) should be a \fB@TOE@\fR(1M) mode. -@@ -421,6 +495,8 @@ - \fB@TOE@\fR(1M), - \fBcurses\fR(3X), - \fBterminfo\fR(\*n). -+.sp -+http://invisible-island.net/ncurses/tctest.html - .PP - This describes \fBncurses\fR - version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@). -diff -Naur ncurses-5.9/man/Makefile.in ncurses-5.9.patch/man/Makefile.in ---- ncurses-5.9/man/Makefile.in 2010-11-27 22:45:27.000000000 +0100 -+++ ncurses-5.9.patch/man/Makefile.in 2014-09-01 16:33:22.344792103 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.45 2010/11/27 21:45:27 tom Exp $ -+# $Id: Makefile.in,v 1.47 2013/08/04 20:23:20 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -41,8 +41,12 @@ - srcdir = @srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ -+datarootdir = @datarootdir@ - datadir = @datadir@ - mandir = @mandir@ -+includesubdir = @includesubdir@ -+ -+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir) - - INSTALL = @INSTALL@ - INSTALL_DATA = @INSTALL_DATA@ -diff -Naur ncurses-5.9/man/manhtml.aliases ncurses-5.9.patch/man/manhtml.aliases ---- ncurses-5.9/man/manhtml.aliases 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/man/manhtml.aliases 2014-09-01 16:33:22.349792111 +0200 -@@ -0,0 +1,16 @@ -+# $Id: manhtml.aliases,v 1.1 2013/12/21 21:44:52 tom Exp $ -+# Items in this list will be linked to the corresponding manpages by man2html -+addch(3X) curs_addch(3X) -+delscreen(3X) curs_initscr(3X) -+filter(3X) curs_util(3X) -+form_fieldtype(3X) form_fieldtype(3X) -+getch(3X) curs_getch(3X) -+infocmp(1) infocmp(1M) -+initscr(3X) curs_initscr(3X) -+newterm(3X) curs_initscr(3X) -+set_fieldtype(3X) form_fieldtype(3X) -+set_term(3X) curs_initscr(3X) -+setupterm(3X) curs_terminfo(3X) -+tic(1) tic(1M) -+use_env(3X) curs_util(3X) -+vidputs(3X) curs_terminfo(3X) -diff -Naur ncurses-5.9/man/manhtml.externs ncurses-5.9.patch/man/manhtml.externs ---- ncurses-5.9/man/manhtml.externs 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/man/manhtml.externs 2014-09-01 16:33:22.349792111 +0200 -@@ -0,0 +1,24 @@ -+# $Id: manhtml.externs,v 1.3 2013/12/21 22:11:29 tom Exp $ -+# Items in this list will not be linked by man2html -+conflict(1) -+csh(1) -+ded(1) -+environ(7) -+getty(1) -+nvi(1) -+printf(3) -+profile(5) -+putc(3) -+putwc(3) -+read(2) -+rogue(1) -+scanf(3) -+sh(1) -+sscanf(3) -+stdio(3) -+stty(1) -+system(3) -+termio(7) -+tty(4) -+ttys(5) -+wcwidth(3) -diff -Naur ncurses-5.9/man/menu_items.3x ncurses-5.9.patch/man/menu_items.3x ---- ncurses-5.9/man/menu_items.3x 2010-12-04 19:40:45.000000000 +0100 -+++ ncurses-5.9.patch/man/menu_items.3x 2014-09-01 16:33:22.349792111 +0200 -@@ -1,6 +1,6 @@ - '\" t - .\"*************************************************************************** --.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: menu_items.3x,v 1.9 2010/12/04 18:40:45 tom Exp $ -+.\" $Id: menu_items.3x,v 1.10 2012/11/03 23:03:59 tom Exp $ - .TH menu_items 3X "" - .SH NAME - \fBmenu_items\fR \- make and break connections between items and menus -@@ -47,7 +47,7 @@ - The function \fBmenu_items\fR returns the item array of the given menu. - .PP - The function \fBitem_count\fR returns the count of items in \fImenu\fR. --.SH RETURN VALUES -+.SH RETURN VALUE - The function \fBmenu_items\fR returns a pointer (which may be \fBNULL\fR). - It does not set errno. - .PP -diff -Naur ncurses-5.9/man/ncurses.3x ncurses-5.9.patch/man/ncurses.3x ---- ncurses-5.9/man/ncurses.3x 2011-02-06 00:21:29.000000000 +0100 -+++ ncurses-5.9.patch/man/ncurses.3x 2014-09-01 16:34:19.463887194 +0200 -@@ -1,6 +1,6 @@ - '\" t - .\"*************************************************************************** --.\" Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -27,9 +27,13 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: ncurses.3x,v 1.103 2011/02/05 23:21:29 tom Exp $ -+.\" $Id: ncurses.3x,v 1.116 2014/03/15 19:26:00 tom Exp $ - .hy 0 - .TH ncurses 3X "" -+.ie \n(.g .ds `` \(lq -+.el .ds `` `` -+.ie \n(.g .ds '' \(rq -+.el .ds '' '' - .de bP - .IP \(bu 4 - .. -@@ -43,7 +47,7 @@ - .SH DESCRIPTION - The \fBncurses\fR library routines give the user a terminal-independent method - of updating character screens with reasonable optimization. --This implementation is ``new curses'' (ncurses) and -+This implementation is \*(``new curses\*('' (ncurses) and - is the approved replacement for - 4.4BSD classic curses, which has been discontinued. - This describes \fBncurses\fR -@@ -55,8 +59,10 @@ - XSI stands for X/Open System Interfaces Extension. - The \fBncurses\fR library is freely redistributable in source form. - Differences from the SVr4 --curses are summarized under the \fBEXTENSIONS\fP and \fBPORTABILITY\fP sections below and --described in detail in the respective \fBEXTENSIONS\fP, \fBPORTABILITY\fP and \fBBUGS\fP sections -+curses are summarized under the -+\fBEXTENSIONS\fP and \fBPORTABILITY\fP sections below and -+described in detail in the respective -+\fBEXTENSIONS\fP, \fBPORTABILITY\fP and \fBBUGS\fP sections - of individual man pages. - .PP - The \fBncurses\fR library also provides many useful extensions, -@@ -108,9 +114,9 @@ - .sp - Before a \fBcurses\fR program is run, the tab stops of the terminal - should be set and its initialization strings, if defined, must be output. --This can be done by executing the \fBtput init\fR command -+This can be done by executing the \fB@TPUT@ init\fR command - after the shell environment variable \fBTERM\fR has been exported. --\fBtset(1)\fR is usually responsible for doing this. -+\fB@TSET@(1)\fR is usually responsible for doing this. - [See \fBterminfo\fR(\*n) for further details.] - .PP - The \fBncurses\fR library permits manipulation of data structures, -@@ -637,6 +643,7 @@ - use_env/\fBcurs_util\fR(3X) - use_extended_names/\fBcurs_extend\fR(3X)* - use_legacy_coding/\fBlegacy_coding\fR(3X)* -+use_tioctl/\fBcurs_util\fR(3X) - vid_attr/\fBcurs_terminfo\fR(3X) - vid_puts/\fBcurs_terminfo\fR(3X) - vidattr/\fBcurs_terminfo\fR(3X) -@@ -734,9 +741,16 @@ - integer value other than \fBERR\fR upon successful completion, unless - otherwise noted in the routine descriptions. - .PP -+As a general rule, routines check for null pointers passed as parameters, -+and handle this as an error. -+.PP - All macros return the value of the \fBw\fR version, except \fBsetscrreg\fR, - \fBwsetscrreg\fR, \fBgetyx\fR, \fBgetbegyx\fR, and \fBgetmaxyx\fR. --The return values of \fBsetscrreg\fR, \fBwsetscrreg\fR, \fBgetyx\fR, \fBgetbegyx\fR, and -+The return values of -+\fBsetscrreg\fR, -+\fBwsetscrreg\fR, -+\fBgetyx\fR, -+\fBgetbegyx\fR, and - \fBgetmaxyx\fR are undefined (i.e., these should not be used as the - right-hand side of assignment statements). - .PP -@@ -746,24 +760,24 @@ - runtime behavior of the \fBncurses\fR library. - The most important ones have been already discussed in detail. - .TP 5 --BAUDRATE --The debugging library checks this environment symbol when the application --has redirected output to a file. --The symbol's numeric value is used for the baudrate. --If no value is found, \fBncurses\fR uses 9600. --This allows testers to construct repeatable test-cases --that take into account costs that depend on baudrate. --.TP 5 - CC - When set, change occurrences of the command_character - (i.e., the \fBcmdch\fP capability) --of the loaded terminfo entries to the value of this symbol. -+of the loaded terminfo entries to the value of this variable. - Very few terminfo entries provide this feature. - .IP - Because this name is also used in development environments to represent - the C compiler's name, \fBncurses\fR ignores it if it does not happen to - be a single character. - .TP 5 -+BAUDRATE -+The debugging library checks this environment variable when the application -+has redirected output to a file. -+The variable's numeric value is used for the baudrate. -+If no value is found, \fBncurses\fR uses 9600. -+This allows testers to construct repeatable test-cases -+that take into account costs that depend on baudrate. -+.TP 5 - COLUMNS - Specify the width of the screen in characters. - Applications running in a windowing environment usually are able to -@@ -786,7 +800,9 @@ - a terminal description for terminals which are run as emulations. - .IP - Use the \fBuse_env\fR function to disable all use of external environment --(including system calls) to determine the screen size. -+(but not including system calls) to determine the screen size. -+Use the \fBuse_tioctl\fR function to update \fBCOLUMNS\fP or \fBLINES\fP -+to match the screen size obtained from system calls or the terminal database. - .TP 5 - ESCDELAY - Specifies the total time, in milliseconds, for which ncurses will -@@ -837,8 +853,8 @@ - .br - 3 = middle. - .sp --This symbol lets you customize the mouse. --The symbol must be three numeric digits 1\-3 in any order, e.g., 123 or 321. -+This variable lets you customize the mouse. -+The variable must be three numeric digits 1\-3 in any order, e.g., 123 or 321. - If it is not specified, \fBncurses\fR uses 132. - .TP 5 - NCURSES_ASSUMED_COLORS -@@ -852,6 +868,17 @@ - To make it green-on-black, set it to "2,0". - Any positive value from zero to the terminfo \fBmax_colors\fR value is allowed. - .TP 5 -+NCURSES_CONSOLE2 -+This applies only to the MinGW port of ncurses. -+.IP -+The \fBConsole2\fP program's handling of the Microsoft Console API call -+\fBCreateConsoleScreenBuffer\fP is defective. -+Applications which use this will hang. -+However, it is possible to simulate the action of this call by -+mapping coordinates, -+explicitly saving and restoring the original screen contents. -+Setting the environment variable \fBNCGDB\fP has the same effect. -+.TP 5 - NCURSES_GPM_TERMS - This applies only to ncurses configured to use the GPM interface. - .IP -@@ -899,19 +926,44 @@ - You may wish to use these descriptions, - but not want to pay the performance penalty. - .IP --Set the NCURSES_NO_PADDING symbol to disable all but mandatory -+Set the NCURSES_NO_PADDING environment variable to disable all but mandatory - padding. - Mandatory padding is used as a part of special control - sequences such as \fIflash\fR. - .TP 5 - NCURSES_NO_SETBUF --Normally \fBncurses\fR enables buffered output during terminal initialization. --This is done (as in SVr4 curses) for performance reasons. -+This setting is obsolete. -+Before changes -+.RS -+.bP -+started with 5.9 patch 20120825 -+and -+.bP -+continued -+though 5.9 patch 20130126 -+.RE -+.IP -+\fBncurses\fR enabled buffered output during terminal initialization. -+This was done (as in SVr4 curses) for performance reasons. - For testing purposes, both of \fBncurses\fR and certain applications, --this feature is made optional. -+this feature was made optional. - Setting the NCURSES_NO_SETBUF variable --disables output buffering, leaving the output in the original (usually -+disabled output buffering, leaving the output in the original (usually - line buffered) mode. -+.IP -+In the current implementation, -+ncurses performs its own buffering and does not require this workaround. -+It does not modify the buffering of the standard output. -+.IP -+The reason for the change was to make the behavior for interrupts and -+other signals more robust. -+One drawback is that certain nonconventional programs would mix -+ordinary stdio calls with ncurses calls and (usually) work. -+This is no longer possible since ncurses is not using -+the buffered standard output but its own output (to the same file descriptor). -+As a special case, the low-level calls such as \fBputp\fP still use the -+standard output. -+But high-level curses calls do not. - .TP 5 - NCURSES_NO_UTF8_ACS - During initialization, the \fBncurses\fR library -@@ -933,20 +985,22 @@ - .IP - As an alternative to the environment variable, - ncurses checks for an extended terminfo capability \fBU8\fP. --This is a numeric capability which can be compiled using \fBtic\ \-x\fP. -+This is a numeric capability which can be compiled using \fB@TIC@\ \-x\fP. - For example - .RS 5 -+.ft CW - .sp - .nf - # linux console, if patched to provide working - # VT100 shift-in/shift-out, with corresponding font. - linux-vt100|linux console with VT100 line-graphics, -- U8#0, use=linux, -+ U8#0, use=linux, - .sp - # uxterm with vt100Graphics resource set to false - xterm-utf8|xterm relying on UTF-8 line-graphics, -- U8#1, use=xterm, -+ U8#1, use=xterm, - .fi -+.ft - .RE - .IP - The name "U8" is chosen to be two characters, -@@ -955,7 +1009,7 @@ - .TP 5 - NCURSES_TRACE - During initialization, the \fBncurses\fR debugging library --checks the NCURSES_TRACE symbol. -+checks the NCURSES_TRACE environment variable. - If it is defined, to a numeric value, \fBncurses\fR calls the \fBtrace\fR - function, using that value as the argument. - .IP -@@ -973,9 +1027,10 @@ - support, \fBncurses\fR will check for a terminal's description in - termcap form if it is not available in the terminfo database. - .IP --The TERMCAP symbol contains either a terminal description (with -+The TERMCAP environment variable contains either a terminal description (with - newlines stripped out), --or a file name telling where the information denoted by the TERM symbol exists. -+or a file name telling where the information denoted by -+the TERM environment variable exists. - In either case, setting it directs \fBncurses\fR to ignore - the usual place for this information, e.g., /etc/termcap. - .TP 5 -@@ -988,33 +1043,51 @@ - .bP - the last directory to which \fBncurses\fR wrote, if any, is searched first - .bP --the directory specified by the TERMINFO symbol -+the directory specified by the TERMINFO environment variable - .bP - $HOME/.terminfo - .bP --directories listed in the TERMINFO_DIRS symbol -+directories listed in the TERMINFO_DIRS environment variable - .bP - one or more directories whose names are configured and compiled into the --ncurses library, e.g., --@TERMINFO@ -+ncurses library, i.e., -+.RS -+.bP -+@TERMINFO_DIRS@ (corresponding to the TERMINFO_DIRS variable) -+.bP -+@TERMINFO@ (corresponding to the TERMINFO variable) -+.RE - .RE - .TP 5 - TERMINFO_DIRS - Specifies a list of directories to search for terminal descriptions. - The list is separated by colons (i.e., ":") on Unix, semicolons on OS/2 EMX. --All of the terminal descriptions are in terminfo form, which makes --a subdirectory named for the first letter of the terminal names therein. -+.IP -+All of the terminal descriptions are in terminfo form. -+Normally these are stored in a directory tree, -+using subdirectories named by the first letter of the terminal names therein. -+.IP -+If \fBncurses\fP is built with a hashed database, -+then each entry in this list can also be the path of the corresponding -+database file. -+.IP -+If \fBncurses\fP is built with a support for reading termcap files -+directly, then an entry in this list may be the path of a termcap file. - .TP 5 - TERMPATH - If TERMCAP does not hold a file name then \fBncurses\fR checks --the TERMPATH symbol. --This is a list of filenames separated by spaces or colons (i.e., ":") on Unix, semicolons on OS/2 EMX. --If the TERMPATH symbol is not set, \fBncurses\fR looks in the files -+the TERMPATH environment variable. -+This is a list of filenames separated by spaces or colons (i.e., ":") on Unix, -+semicolons on OS/2 EMX. -+.IP -+If the TERMPATH environment variable is not set, -+\fBncurses\fR looks in the files - /etc/termcap, /usr/share/misc/termcap and $HOME/.termcap, in that order. - .PP - The library may be configured to disregard the following variables when the - current user is the superuser (root), or if the application uses setuid or - setgid permissions: -+.IP - $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME. - .SH ALTERNATE CONFIGURATIONS - Several different configurations are possible, -@@ -1042,8 +1115,9 @@ - to build executables. - .TP 5 - \-\-enable\-widec --The configure script renames the library and (if the \fB\-\-disable\-overwrite\fP --option is used) puts the header files in a different subdirectory. -+The configure script renames the library and -+(if the \fB\-\-disable\-overwrite\fP option is used) -+puts the header files in a different subdirectory. - All of the library names have a "w" appended to them, - i.e., instead of - .RS -@@ -1068,6 +1142,16 @@ - to allow applications to be built using either library - from the same set of headers. - .TP 5 -+\-\-with\-pthread -+The configure script renames the library. -+All of the library names have a "t" appended to them -+(before any "w" added by \fB\-\-enable\-widec\fP). -+.IP -+The global variables such as \fBLINES\fP are replaced by macros to -+allow read-only access. -+At the same time, setter-functions are provided to set these values. -+Some applications (very few) may require changes to work with this convention. -+.TP 5 - \-\-with\-shared - .TP - \-\-with\-normal -@@ -1093,8 +1177,8 @@ - @TERMINFO@ - terminal capability database - .SH SEE ALSO --\fBterminfo\fR(\*n) and related pages whose names begin "curs_" for detailed routine --descriptions. -+\fBterminfo\fR(\*n) and related pages whose names begin -+"curs_" for detailed routine descriptions. - .br - \fBcurs_variables\fR(3X) - .SH EXTENSIONS -@@ -1144,6 +1228,15 @@ - the XSI Curses and \fBncurses\fR calls) are described in \fBPORTABILITY\fR - sections of the library man pages. - .PP -+Unlike other implementations, this one checks parameters such as pointers -+to WINDOW structures to ensure they are not null. -+The main reason for providing this behavior is to guard against programmer -+error. -+The standard interface does not provide a way for the library -+to tell an application which of several possible errors were detected. -+Relying on this (or some other) extension will adversely affect the -+portability of curses applications. -+.PP - This implementation also contains several extensions: - .bP - The routine \fBhas_key\fR is not part of XPG4, nor is it present in SVr4. -diff -Naur ncurses-5.9/man/resizeterm.3x ncurses-5.9.patch/man/resizeterm.3x ---- ncurses-5.9/man/resizeterm.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/resizeterm.3x 2014-09-01 16:33:22.350792113 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,9 +26,9 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" Author: Thomas E. Dickey 1996-2005 -+.\" Author: Thomas E. Dickey 1996-on - .\" --.\" $Id: resizeterm.3x,v 1.14 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: resizeterm.3x,v 1.17 2013/06/22 20:41:54 tom Exp $ - .TH resizeterm 3X "" - .SH NAME - \fBis_term_resized\fR, -@@ -48,7 +48,8 @@ - primarily for use by programs running in an X Window terminal (e.g., xterm). - The function \fBresizeterm\fR resizes the standard and current windows - to the specified dimensions, and adjusts other bookkeeping data used by --the \fBncurses\fR library that record the window dimensions. -+the \fBncurses\fR library that record the window dimensions -+such as the \fBLINES\fP and \fBCOLS\fP variables. - .LP - Most of the work is done by the inner function \fBresize_term\fR. - The outer function \fBresizeterm\fR adds bookkeeping for the SIGWINCH handler. -@@ -64,7 +65,7 @@ - can check if the \fBresize_term\fR function would modify the window structures. - It returns TRUE if the windows would be modified, and FALSE otherwise. - .SH RETURN VALUE --Except as notes, these function return -+Except as noted, these functions return - the integer \fBERR\fR upon failure and \fBOK\fR on success. - They will fail if either of the dimensions are less than or equal to zero, - or if an error occurs while (re)allocating memory for the windows. -@@ -75,7 +76,7 @@ - since it uses those functions. - .PP - If ncurses is configured to supply its own SIGWINCH handler, --the \fBresizeterm\fR function ungetch's a \fBKEY_RESIZE\fR which -+the \fBresizeterm\fR function \fBungetch\fP's a \fBKEY_RESIZE\fR which - will be read on the next call to \fBgetch\fR. - This is used to alert an application that the screen size has changed, - and that it should repaint special features such as pads that cannot -@@ -86,9 +87,8 @@ - the operating system. - Thus, even if a SIGWINCH is received, - no screen size change may be recorded. --In that case, no \fBKEY_RESIZE\fP is queued for the next call to \fBgetch\fP; --an \fBERR\fP will be returned instead. - .SH SEE ALSO -+\fBcurs_getch\fR(3X), - \fBcurs_variables\fR(3X), - \fBwresize\fR(3X). - .SH AUTHOR -diff -Naur ncurses-5.9/man/tabs.1 ncurses-5.9.patch/man/tabs.1 ---- ncurses-5.9/man/tabs.1 2010-12-04 19:40:45.000000000 +0100 -+++ ncurses-5.9.patch/man/tabs.1 2014-09-01 16:33:22.350792113 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2008-2011,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,19 +26,18 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: tabs.1,v 1.8 2010/12/04 18:40:45 tom Exp $ -+.\" $Id: tabs.1,v 1.11 2013/06/22 18:11:57 tom Exp $ - .TH @TABS@ 1 "" - .ds n 5 - .SH NAME --\fBtabs\fR \- set tabs on a terminal -+\fB@TABS@\fR \- set tabs on a terminal - .SH SYNOPSIS --\fBtabs\fR [\fB\-v\fR[\fIn\fR]] [\fB\-ahuUV\fR] \fIfile...\fR --.br -+\fB@TABS@\fR [\fIoptions\fR]] \fI[tabstop-list]\fR - .SH DESCRIPTION - .PP --The \fBtabs\fP program clears and sets tab-stops on the terminal. -+The \fB@TABS@\fP program clears and sets tab-stops on the terminal. - This uses the terminfo \fIclear_all_tabs\fP and \fIset_tab\fP capabilities. --If either is absent, \fBtabs\fP is unable to clear/set tab-stops. -+If either is absent, \fB@TABS@\fP is unable to clear/set tab-stops. - The terminal should be configured to use hard tabs, e.g., - .sp - .RS -@@ -48,8 +47,8 @@ - .SS General Options - .TP 5 - .BI \-T "name" --Tell \fBtabs\fP which terminal type to use. --If this option is not given, \fBtabs\fP will use the \fB$TERM\fP -+Tell \fB@TABS@\fP which terminal type to use. -+If this option is not given, \fB@TABS@\fP will use the \fB$TERM\fP - environment variable. - If that is not set, it will use the \fIansi+tabs\fP entry. - .TP 5 -@@ -59,10 +58,13 @@ - The second data line shows the actual tab-stops, marked with asterisks. - .TP 5 - .B \-n --This option tells \fBtabs\fP to check the options and run any debugging -+This option tells \fB@TABS@\fP to check the options and run any debugging - option, but not to modify the terminal settings. -+.TP -+\fB\-V\fR -+reports the version of ncurses which was used in this program, and exits. - .PP --The \fBtabs\fP program processes a single list of tab stops. -+The \fB@TABS@\fP program processes a single list of tab stops. - The last option to be processed which defines a list is the one that - determines the list to be processed. - .SS Implicit Lists -diff -Naur ncurses-5.9/man/term.7 ncurses-5.9.patch/man/term.7 ---- ncurses-5.9/man/term.7 2010-12-04 19:41:07.000000000 +0100 -+++ ncurses-5.9.patch/man/term.7 2014-09-01 16:33:22.350792113 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: term.7,v 1.22 2010/12/04 18:41:07 tom Exp $ -+.\" $Id: term.7,v 1.23 2011/12/17 23:32:17 tom Exp $ - .TH term 7 - .ds n 5 - .ds d @TERMINFO@ -@@ -55,7 +55,7 @@ - are in fact using a VT100-superset console, terminal, or terminal emulator.) - .PP - In any case, you are free to override the system \fBTERM\fR setting to your --taste in your shell profile. The \fBtset\fP(1) utility may be of assistance; -+taste in your shell profile. The \fB@TSET@\fP(1) utility may be of assistance; - you can give it a set of rules for deducing or requesting a terminal type based - on the tty device and baud rate. - .PP -diff -Naur ncurses-5.9/man/terminfo.head ncurses-5.9.patch/man/terminfo.head ---- ncurses-5.9/man/terminfo.head 2010-07-31 18:08:48.000000000 +0200 -+++ ncurses-5.9.patch/man/terminfo.head 2014-09-01 16:33:22.350792113 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,10 +26,17 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: terminfo.head,v 1.18 2010/07/31 16:08:48 tom Exp $ -+.\" $Id: terminfo.head,v 1.21 2013/03/09 22:11:36 tom Exp $ - .TH terminfo 5 "" "" "File Formats" - .ds n 5 - .ds d @TERMINFO@ -+.ie \n(.g .ds `` \(lq -+.el .ds `` `` -+.ie \n(.g .ds '' \(rq -+.el .ds '' '' -+.de bP -+.IP \(bu 4 -+.. - .SH NAME - terminfo \- terminal capability data base - .SH SYNOPSIS -@@ -74,7 +81,7 @@ - Terminal names (except for the last, verbose entry) should - be chosen using the following conventions. - The particular piece of hardware making up the terminal should --have a root name, thus ``hp2621''. -+have a root name, thus \*(``hp2621\*(''. - This name should not contain hyphens. - Modes that the hardware can be in, or user preferences, should - be indicated by appending a hyphen and a mode suffix. -@@ -102,6 +109,6 @@ - .TE - .PP - For more on terminal naming conventions, see the \fBterm(7)\fR manual page. --.SS Capabilities -+.SS Predefined Capabilities - .\" Head of terminfo man page ends here - .ps -1 -diff -Naur ncurses-5.9/man/terminfo.tail ncurses-5.9.patch/man/terminfo.tail ---- ncurses-5.9/man/terminfo.tail 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/terminfo.tail 2014-09-01 16:33:22.351792114 +0200 -@@ -1,8 +1,51 @@ --.\" $Id: terminfo.tail,v 1.53 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: terminfo.tail,v 1.68 2013/11/09 15:20:48 tom Exp $ - .\" Beginning of terminfo.tail file - .\" This file is part of ncurses. - .\" See "terminfo.head" for copyright. - .ps +1 -+.SS User-Defined Capabilities -+. -+The preceding section listed the \fIpredefined\fP capabilities. -+They deal with some special features for terminals no longer -+(or possibly never) produced. -+Occasionally there are special features of newer terminals which -+are awkward or impossible to represent by reusing the predefined -+capabilities. -+.PP -+\fBncurses\fP addresses this limitation by allowing user-defined capabilities. -+The \fB@TIC@\fP and \fB@INFOCMP@\fP programs provide -+the \fB\-x\fP option for this purpose. -+When \fB\-x\fP is set, -+\fB@TIC@\fP treats unknown capabilities as user-defined. -+That is, if \fB@TIC@\fP encounters a capability name -+which it does not recognize, -+it infers its type (boolean, number or string) from the syntax -+and makes an extended table entry for that capability. -+The \fBuse_extended_names\fP function makes this information -+conditionally available to applications. -+The ncurses library provides the data leaving most of the behavior -+to applications: -+.bP -+User-defined capability strings whose name begins -+with \*(``k\*('' are treated as function keys. -+.bP -+The types (boolean, number, string) determined by \fB@TIC@\fP -+can be inferred by successful calls on \fBtigetflag\fP, etc. -+.bP -+If the capability name happens to be two characters, -+the capability is also available through the termcap interface. -+.PP -+While termcap is said to be extensible because it does not use a predefined set -+of capabilities, -+in practice it has been limited to the capabilities defined by -+terminfo implementations. -+As a rule, -+user-defined capabilities intended for use by termcap applications should -+be limited to booleans and numbers to avoid running past the 1023 byte -+limit assumed by termcap implementations and their applications. -+In particular, providing extended sets of function keys (past the 60 -+numbered keys and the handful of special named keys) is best done using -+the longer names available using terminfo. - . - .SS A Sample Entry - . -@@ -10,42 +53,54 @@ - of what a \fBterminfo\fR entry for a modern terminal typically looks like. - .PP - .nf --.in -2 --.ta .3i - .ft CW - \s-2ansi|ansi/pc-term compatible with color, -- mc5i, -- colors#8, ncv#3, pairs#64, -- cub=\\E[%p1%dD, cud=\\E[%p1%dB, cuf=\\E[%p1%dC, -- cuu=\\E[%p1%dA, dch=\\E[%p1%dP, dl=\\E[%p1%dM, -- ech=\\E[%p1%dX, el1=\\E[1K, hpa=\\E[%p1%dG, ht=\\E[I, -- ich=\\E[%p1%d@, il=\\E[%p1%dL, indn=\\E[%p1%dS, .indn=\\E[%p1%dT, -- kbs=^H, kcbt=\\E[Z, kcub1=\\E[D, kcud1=\\E[B, -- kcuf1=\\E[C, kcuu1=\\E[A, kf1=\\E[M, kf10=\\E[V, -- kf11=\\E[W, kf12=\\E[X, kf2=\\E[N, kf3=\\E[O, kf4=\\E[P, -- kf5=\\E[Q, kf6=\\E[R, kf7=\\E[S, kf8=\\E[T, kf9=\\E[U, -- kich1=\\E[L, mc4=\\E[4i, mc5=\\E[5i, nel=\\r\\E[S, -- op=\\E[37;40m, rep=%p1%c\\E[%p2%{1}%\-%db, -- rin=\\E[%p1%dT, s0ds=\\E(B, s1ds=\\E)B, s2ds=\\E*B, -- s3ds=\\E+B, setab=\\E[4%p1%dm, setaf=\\E[3%p1%dm, -- setb=\\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- setf=\\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- sgr=\\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;12%;m, -- sgr0=\\E[0;10m, tbc=\\E[2g, u6=\\E[%d;%dR, u7=\\E[6n, -- u8=\\E[?%[;0123456789]c, u9=\\E[c, vpa=\\E[%p1%dd,\s+2 --.in +2 -+ am, mc5i, mir, msgr, -+ colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64, -+ acsc=+\\020\\,\\021-\\030.^Y0\\333`\\004a\\261f\\370g\\361h\\260 -+ j\\331k\\277l\\332m\\300n\\305o~p\\304q\\304r\\304s_t\\303 -+ u\\264v\\301w\\302x\\263y\\363z\\362{\\343|\\330}\\234~\\376, -+ bel=^G, blink=\\E[5m, bold=\\E[1m, cbt=\\E[Z, clear=\\E[H\\E[J, -+ cr=^M, cub=\\E[%p1%dD, cub1=\\E[D, cud=\\E[%p1%dB, cud1=\\E[B, -+ cuf=\\E[%p1%dC, cuf1=\\E[C, cup=\\E[%i%p1%d;%p2%dH, -+ cuu=\\E[%p1%dA, cuu1=\\E[A, dch=\\E[%p1%dP, dch1=\\E[P, -+ dl=\\E[%p1%dM, dl1=\\E[M, ech=\\E[%p1%dX, ed=\\E[J, el=\\E[K, -+ el1=\\E[1K, home=\\E[H, hpa=\\E[%i%p1%dG, ht=\\E[I, hts=\\EH, -+ ich=\\E[%p1%d@, il=\\E[%p1%dL, il1=\\E[L, ind=^J, -+ indn=\\E[%p1%dS, invis=\\E[8m, kbs=^H, kcbt=\\E[Z, kcub1=\\E[D, -+ kcud1=\\E[B, kcuf1=\\E[C, kcuu1=\\E[A, khome=\\E[H, kich1=\\E[L, -+ mc4=\\E[4i, mc5=\\E[5i, nel=\\r\\E[S, op=\\E[39;49m, -+ rep=%p1%c\\E[%p2%{1}%-%db, rev=\\E[7m, rin=\\E[%p1%dT, -+ rmacs=\\E[10m, rmpch=\\E[10m, rmso=\\E[m, rmul=\\E[m, -+ s0ds=\\E(B, s1ds=\\E)B, s2ds=\\E*B, s3ds=\\E+B, -+ setab=\\E[4%p1%dm, setaf=\\E[3%p1%dm, -+ sgr=\\E[0;10%?%p1%t;7%; -+ %?%p2%t;4%; -+ %?%p3%t;7%; -+ %?%p4%t;5%; -+ %?%p6%t;1%; -+ %?%p7%t;8%; -+ %?%p9%t;11%;m, -+ sgr0=\\E[0;10m, smacs=\\E[11m, smpch=\\E[11m, smso=\\E[7m, -+ smul=\\E[4m, tbc=\\E[3g, u6=\\E[%i%d;%dR, u7=\\E[6n, -+ u8=\\E[?%[;0123456789]c, u9=\\E[c, vpa=\\E[%i%p1%dd, - .fi - .ft R - .PP - Entries may continue onto multiple lines by placing white space at - the beginning of each line except the first. --Comments may be included on lines beginning with ``#''. -+Comments may be included on lines beginning with \*(``#\*(''. - Capabilities in - .I terminfo - are of three types: -+.bP - Boolean capabilities which indicate that the terminal has --some particular feature, numeric capabilities giving the size of the terminal --or the size of particular delays, and string -+some particular feature, -+.bP -+numeric capabilities giving the size of the terminal -+or the size of particular delays, and -+.bP -+string - capabilities, which give a sequence which can be used to perform particular - terminal operations. - .PP -@@ -58,15 +113,15 @@ - (i.e., an automatic return and line-feed - when the end of a line is reached) is indicated by the capability \fBam\fR. - Hence the description of ansi includes \fBam\fR. --Numeric capabilities are followed by the character `#' and then a positive value. -+Numeric capabilities are followed by the character \*(``#\*('' and then a positive value. - Thus \fBcols\fR, which indicates the number of columns the terminal has, --gives the value `80' for ansi. -+gives the value \*(``80\*('' for ansi. - Values for numeric capabilities may be specified in decimal, octal or hexadecimal, - using the C programming language conventions (e.g., 255, 0377 and 0xff or 0xFF). - .PP - Finally, string valued capabilities, such as \fBel\fR (clear to end of line --sequence) are given by the two-character code, an `=', and then a string --ending at the next following `,'. -+sequence) are given by the two-character code, an \*(``=\*('', and then a string -+ending at the next following \*(``,\*(''. - .PP - A number of escape sequences are provided in the string valued capabilities - for easy encoding of characters there. -@@ -75,14 +130,29 @@ - \fB^x\fR maps to a control-x for any appropriate x, and the sequences - \fB\en \el \er \et \eb \ef \es\fR give - a newline, line-feed, return, tab, backspace, form-feed, and space. --Other escapes include \fB\e^\fR for \fB^\fR, -+Other escapes include -+.bP -+\fB\e^\fR for \fB^\fR, -+.bP - \fB\e\e\fR for \fB\e\fR, -+.bP - \fB\e\fR, for comma, -+.bP - \fB\e:\fR for \fB:\fR, -+.bP - and \fB\e0\fR for null. --(\fB\e0\fR will produce \e200, which does not terminate a string but behaves -+.IP -+\fB\e0\fR will produce \e200, which does not terminate a string but behaves - as a null character on most terminals, providing CS7 is specified. --See stty(1).) -+See stty(1). -+.IP -+The reason for this quirk is to maintain binary compatibility of the -+compiled terminfo files with other implementations, -+e.g., the SVr4 systems, which document this. -+Compiled terminfo files use null-terminated strings, with no lengths. -+Modifying this would require a new binary format, -+which would not work with other implementations. -+.PP - Finally, characters may be given as three octal digits after a \fB\e\fR. - .PP - A delay in milliseconds may appear anywhere in a string capability, enclosed in -@@ -90,8 +160,8 @@ - .I tputs - to provide this delay. - The delay must be a number with at most one decimal --place of precision; it may be followed by suffixes `*' or '/' or both. --A `*' -+place of precision; it may be followed by suffixes \*(``*\*('' or \*(``/\*('' or both. -+A \*(``*\*('' - indicates that the padding required is proportional to the number of lines - affected by the operation, and the amount given is the per-affected-unit - padding required. -@@ -100,7 +170,7 @@ - .IR lines - affected.) Normally, padding is advisory if the device has the \fBxon\fR - capability; it is used for cost computation but does not trigger delays. --A `/' -+A \*(``/\*('' - suffix indicates that the padding is mandatory and forces a delay of the given - number of milliseconds even on devices for which \fBxon\fR is present to - indicate flow control. -@@ -115,27 +185,36 @@ - .PP - .SS Fetching Compiled Descriptions - .PP -+The \fBncurses\fP library searches for terminal descriptions in several places. -+It uses only the first description found. -+The library has a compiled-in list of places to search -+which can be overridden by environment variables. -+Before starting to search, -+\fBncurses\fP eliminates duplicates in its search list. -+.bP - If the environment variable TERMINFO is set, it is interpreted as the pathname - of a directory containing the compiled description you are working on. --Only --that directory is searched. --.PP --If TERMINFO is not set, the \fBncurses\fR version of the terminfo reader code --will instead look in the directory \fB$HOME/.terminfo\fR -+Only that directory is searched. -+.bP -+If TERMINFO is not set, -+\fBncurses\fR will instead look in the directory \fB$HOME/.terminfo\fR - for a compiled description. --If it fails to find one there, and the environment variable TERMINFO_DIRS is --set, it will interpret the contents of that variable as a list of colon- --separated directories to be searched (an empty entry is interpreted as a --command to search \fI\*d\fR). --If no description is found in any of the --TERMINFO_DIRS directories, the fetch fails. --.PP --If neither TERMINFO nor TERMINFO_DIRS is set, the last place tried will be the --system terminfo directory, \fI\*d\fR. --.PP --(Neither the \fB$HOME/.terminfo\fR lookups nor TERMINFO_DIRS extensions are --supported under stock System V terminfo/curses.) --.PP -+.bP -+Next, if the environment variable TERMINFO_DIRS is set, -+\fBncurses\fR will interpret the contents of that variable -+as a list of colon-separated directories (or database files) to be searched. -+.IP -+An empty directory name (i.e., if the variable begins or ends -+with a colon, or contains adacent colons) -+is interpreted as the system location \fI\*d\fR. -+.bP -+Finally, \fBncurses\fP searches these compiled-in locations: -+.RS -+.bP -+a list of directories (@TERMINFO_DIRS@), and -+.bP -+the system terminfo directory, \fI\*d\fR (the compiled-in default). -+.RE - .SS Preparing Descriptions - .PP - We now outline how to prepare descriptions of terminals. -@@ -154,7 +233,7 @@ - .PP - To get the padding for insert line right (if the terminal manufacturer - did not document it) a severe test is to edit a large file at 9600 baud, --delete 16 or so lines from the middle of the screen, then hit the `u' -+delete 16 or so lines from the middle of the screen, then hit the \*(``u\*('' - key several times quickly. - If the terminal messes up, more padding is usually needed. - A similar test can be used for insert character. -@@ -198,7 +277,7 @@ - and - .BR cud1 . - These local cursor motions should not alter the text they pass over, --for example, you would not normally use `\fBcuf1\fP=\ ' because the -+for example, you would not normally use \*(``\fBcuf1\fP=\ \*('' because the - space would erase the character moved over. - .PP - A very important point here is that the local cursor motions encoded -@@ -275,9 +354,10 @@ - .ft CW - .\".in -2 - \s-133\||\|tty33\||\|tty\||\|model 33 teletype, -- bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os,\s+1 -+ bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os,\s+1 - .\".in +2 - .ft R -+.fi - .PP - while the Lear Siegler \s-1ADM-3\s0 is described as - .PP -@@ -286,8 +366,8 @@ - .ft CW - .\".in -2 - \s-1adm3\||\|3\||\|lsi adm3, -- am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J, -- ind=^J, lines#24,\s+1 -+ am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J, -+ ind=^J, lines#24,\s+1 - .\".in +2 - .ft R - .fi -@@ -296,9 +376,8 @@ - .PP - Cursor addressing and other strings requiring parameters - in the terminal are described by a --parameterized string capability, with --.IR printf (3) --like escapes \fB%x\fR in it. -+parameterized string capability, -+with \fIprintf\fP-like escapes such as \fI%x\fR in it. - For example, to address the cursor, the - .B cup - capability is given, using two parameters: -@@ -321,34 +400,34 @@ - The \fB%\fR encodings have the following meanings: - .PP - .TP 5 --\s-1%% --outputs `%' -+\fB%%\fP -+outputs \*(``%\*('' - .TP --%\fI[[\fP:\fI]flags][width[.precision]][\fPdoxXs\fI]\fP --as in \fBprintf\fP, flags are [\-+#] and space. --Use a `:' to allow the next character to be a `\-' flag, -+\fB%\fP\fI[[\fP:\fI]flags][width[.precision]][\fP\fBdoxXs\fP\fI]\fP -+as in \fBprintf\fP, flags are \fI[\-+#]\fP and \fIspace\fP. -+Use a \*(``:\*('' to allow the next character to be a \*(``\-\*('' flag, - avoiding interpreting "%\-" as an operator. - .TP --%c -+\f(CW%c\fP - print pop() like %c in \fBprintf\fP - .TP --%s -+\fB%s\fP - print pop() like %s in \fBprintf\fP - .TP --%p[1\-9] -+\fB%p\fP\fI[1\-9]\fP - push \fIi\fP'th parameter - .TP --%P[a\-z] --set dynamic variable [a\-z] to pop() -+\fB%P\fP\fI[a\-z]\fP -+set dynamic variable \fI[a\-z]\fP to pop() - .TP --%g[a\-z] --get dynamic variable [a\-z] and push it -+\fB%g\fP\fI[a\-z]/\fP -+get dynamic variable \fI[a\-z]\fP and push it - .TP --%P[A\-Z] --set static variable [a\-z] to pop() -+\fB%P\fP\fI[A\-Z]\fP -+set static variable \fI[a\-z]\fP to \fIpop()\fP - .TP --%g[A\-Z] --get static variable [a\-z] and push it -+\fB%g\fP\fI[A\-Z]\fP -+get static variable \fI[a\-z]\fP and push it - .IP - The terms "static" and "dynamic" are misleading. - Historically, these are simply two different sets of variables, -@@ -356,48 +435,48 @@ - However, that fact is not documented in other implementations. - Relying on it will adversely impact portability to other implementations. - .TP --%'\fIc\fP' -+\fB%'\fP\fIc\fP\fB'\fP - char constant \fIc\fP - .TP --%{\fInn\fP} -+\fB%{\fP\fInn\fP\fB}\fP - integer constant \fInn\fP - .TP --%l -+\fB%l\fP - push strlen(pop) - .TP --%+ %\- %* %/ %m --arithmetic (%m is mod): push(pop() op pop()) -+\fB%+\fP, \fB%\-\fP, \fB%*\fP, \fB%/\fP, \fB%m\fP -+arithmetic (%m is mod): \fIpush(pop() op pop())\fP - .TP --%& %| %^ --bit operations (AND, OR and exclusive-OR): push(pop() op pop()) -+\fB%&\fP, \fB%|\fP, \fB%^\fP -+bit operations (AND, OR and exclusive-OR): \fIpush(pop() op pop())\fP - .TP --%= %> %< --logical operations: push(pop() op pop()) -+\fB%=\fP, \fB%>\fP, \fB%<\fP -+logical operations: \fIpush(pop() op pop())\fP - .TP --%A, %O -+\fB%A\fP, \fB%O\fP - logical AND and OR operations (for conditionals) - .TP --%! %~ -+\fB%!\fP, \fB%~\fP - unary operations (logical and bit complement): push(op pop()) - .TP --%i -+\fB%i\fP - add 1 to first two parameters (for ANSI terminals) - .TP --%? \fIexpr\fP %t \fIthenpart\fP %e \fIelsepart\fP %; -+\fB%?\fP \fIexpr\fP \fB%t\fP \fIthenpart\fP \fB%e\fP \fIelsepart\fP \fB%;\fP - This forms an if-then-else. --The %e \fIelsepart\fP is optional. --Usually the %? \fIexpr\fP part pushes a value onto the stack, --and %t pops it from the stack, testing if it is nonzero (true). --If it is zero (false), control passes to the %e (else) part. -+The \fB%e\fP \fIelsepart\fP is optional. -+Usually the \fB%?\fP \fIexpr\fP part pushes a value onto the stack, -+and \fB%t\fP pops it from the stack, testing if it is nonzero (true). -+If it is zero (false), control passes to the \fB%e\fP (else) part. - .IP - It is possible to form else-if's a la Algol 68: - .RS --%? c\d1\u %t b\d1\u %e c\d2\u %t b\d2\u %e c\d3\u %t b\d3\u %e c\d4\u %t b\d4\u %e %; -+\fB%?\fP c\d1\u \fB%t\fP b\d1\u \fB%e\fP c\d2\u \fB%t\fP b\d2\u \fB%e\fP c\d3\u \fB%t\fP b\d3\u \fB%e\fP c\d4\u \fB%t\fP b\d4\u \fB%e\fP \fB%;\fP - .RE - .IP - where c\di\u are conditions, b\di\u are bodies. - .IP --Use the \fB\-f\fP option of \fBtic\fP or \fB@INFOCMP@\fP to see -+Use the \fB\-f\fP option of \fB@TIC@\fP or \fB@INFOCMP@\fP to see - the structure of if-then-else's. - Some strings, e.g., \fBsgr\fP can be very complicated when written - on one line. -@@ -405,7 +484,7 @@ - .PP - Binary operations are in postfix form with the operands in the usual order. - That is, to get x\-5 one would use "%gx%{5}%-". --%P and %g variables are -+\fB%P\fP and \fB%g\fP variables are - persistent across escape-string evaluations. - .PP - Consider the HP2645, which, to get to row 3 and column 12, needs -@@ -429,7 +508,7 @@ - .PP - A final example is the \s-1LSI ADM\s0-3a, which uses row and column - offset by a blank character, thus \*(lqcup=\eE=%p1%' '%+%c%p2%' '%+%c\*(rq. --After sending `\eE=', this pushes the first parameter, pushes the -+After sending \*(``\eE=\*('', this pushes the first parameter, pushes the - ASCII value for a space (32), adds them (pushing the sum on the stack - in place of the two previous values) and outputs that value as a character. - Then the same is done for the second parameter. -@@ -593,6 +672,7 @@ - a distinction between typed and untyped blanks on the screen, shifting - upon an insert or delete only to an untyped blank on the screen which is - either eliminated, or expanded to two untyped blanks. -+.PP - You can determine the - kind of terminal you have by clearing the screen and then typing - text separated by cursor motions. -@@ -608,6 +688,7 @@ - current line and onto the next as you insert, you have the second type of - terminal, and should give the capability \fBin\fR, which stands for - \*(lqinsert null\*(rq. -+.PP - While these are two logically separate attributes (one line versus multi-line - insert mode, and special treatment of untyped spaces) we have seen no - terminals whose insert mode cannot be described with the single attribute. -@@ -642,7 +723,7 @@ - in \fBip\fR (a string option). - Any other sequence which may need to be - sent after an insert of a single character may also be given in \fBip\fR. --If your terminal needs both to be placed into an `insert mode' and -+If your terminal needs both to be placed into an \*(``insert mode\*('' and - a special code to precede each inserted character, then both - .BR smir / rmir - and -@@ -792,6 +873,7 @@ - .PP - Writing out the above sequences, along with their dependencies yields - .PP -+.ne 11 - .TS - center; - l l l -@@ -799,6 +881,7 @@ - lw18 lw14 lw18. - \fBsequence when to output terminfo translation\fP - -+.ft CW - \\E[0 always \\E[0 - ;1 if p1 or p6 %?%p1%p6%|%t;1%; - ;4 if p2 %?%p2%|%t;4%; -@@ -807,14 +890,17 @@ - ;8 if p7 %?%p7%|%t;8%; - m always m - ^N or ^O if p9 ^N, else ^O %?%p9%t^N%e^O%; -+.ft R - .TE - .PP - Putting this all together into the sgr sequence gives: - .PP -+.ft CW - .nf -- sgr=\\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%; -- %?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\\016%e\\017%;, -+ sgr=\\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p4%t;5%; -+ %?%p1%p3%|%t;7%;%?%p7%t;8%;m%?%p9%t\\016%e\\017%;, - .fi -+.ft R - .PP - Remember that if you specify sgr, you must also specify sgr0. - Also, some implementations rely on sgr being given if sgr0 is, -@@ -824,9 +910,9 @@ - The only drawback to adding an sgr string is that termcap also - assumes that sgr0 does not exit alternate character set mode. - .PP --Terminals with the ``magic cookie'' glitch -+Terminals with the \*(``magic cookie\*('' glitch - .RB ( xmc ) --deposit special ``cookies'' when they receive mode-setting sequences, -+deposit special \*(``cookies\*('' when they receive mode-setting sequences, - which affect the display algorithm rather than having extra bits for - each character. - Some terminals, such as the HP 2621, automatically leave standout -@@ -871,6 +957,7 @@ - If the keypad can be set to transmit or not transmit, - give these codes as \fBsmkx\fR and \fBrmkx\fR. - Otherwise the keypad is assumed to always transmit. -+.PP - The codes sent by the left arrow, right arrow, up arrow, down arrow, - and home keys can be given as - \fBkcub1, kcuf1, kcuu1, kcud1, \fRand\fB khome\fR respectively. -@@ -878,41 +965,60 @@ - can be given as \fBkf0, kf1, ..., kf10\fR. - If these keys have labels other than the default f0 through f10, the labels - can be given as \fBlf0, lf1, ..., lf10\fR. -+.PP - The codes transmitted by certain other special keys can be given: -+.bP - .B kll - (home down), -+.bP - .B kbs - (backspace), -+.bP - .B ktbc - (clear all tabs), -+.bP - .B kctab - (clear the tab stop in this column), -+.bP - .B kclr - (clear screen or erase key), -+.bP - .B kdch1 - (delete character), -+.bP - .B kdl1 - (delete line), -+.bP - .B krmir - (exit insert mode), -+.bP - .B kel - (clear to end of line), -+.bP - .B ked - (clear to end of screen), -+.bP - .B kich1 - (insert character or enter insert mode), -+.bP - .B kil1 - (insert line), -+.bP - .B knp - (next page), -+.bP - .B kpp - (previous page), -+.bP - .B kind - (scroll forward/down), -+.bP - .B kri - (scroll backward/up), -+.bP - .B khts - (set a tab stop in this column). -+.PP - In addition, if the keypad has a 3 by 3 array of keys including the four - arrow keys, the other five keys can be given as - .BR ka1 , -@@ -956,7 +1062,7 @@ - tab stop can be given as - .B ht - (usually control I). --A ``back-tab'' command which moves leftward to the preceding tab stop can -+A \*(``back-tab\*('' command which moves leftward to the preceding tab stop can - be given as - .BR cbt . - By convention, if the teletype modes indicate that tabs are being -@@ -974,7 +1080,7 @@ - .B it - is given, showing the number of spaces the tabs are set to. - This is normally used by the --.IR tset -+.IR @TSET@ - command to determine whether to set the mode for hardware tab expansion, - and whether to set the tab stops. - If the terminal has tab stops that can be saved in non-volatile memory, -@@ -1131,7 +1237,7 @@ - string is used. - .PP - .SS Status Lines --Some terminals have an extra `status line' which is not normally used by -+Some terminals have an extra \*(``status line\*('' which is not normally used by - software (and thus not counted in the terminal's \fBlines\fR capability). - .PP - The simplest case is a status line which is cursor-addressable but not -@@ -1223,7 +1329,7 @@ - .PP - .SS Color Handling - .PP --Most color terminals are either `Tektronix-like' or `HP-like'. -+Most color terminals are either \*(``Tektronix-like\*('' or \*(``HP-like\*(''. - Tektronix-like - terminals have a predefined set of N colors (where N usually 8), and can set - character-cell foreground and background characters independently, mixing them -@@ -1303,6 +1409,7 @@ - yellow \fBCOLOR_YELLOW\fR 6 max,max,0 - white \fBCOLOR_WHITE\fR 7 max,max,max - .TE -+.PP - It is important to not confuse the two sets of color capabilities; - otherwise red/blue will be interchanged on the display. - .PP -@@ -1339,18 +1446,25 @@ - .PP - .TS - center; --l c c --lw25 lw2 lw10. --\fBAttribute Bit Decimal\fR --A_STANDOUT 0 1 --A_UNDERLINE 1 2 --A_REVERSE 2 4 --A_BLINK 3 8 --A_DIM 4 16 --A_BOLD 5 32 --A_INVIS 6 64 --A_PROTECT 7 128 --A_ALTCHARSET 8 256 -+l l l l -+lw20 lw2 lw10 lw10. -+\fBAttribute Bit Decimal Set by\fR -+A_STANDOUT 0 1 sgr -+A_UNDERLINE 1 2 sgr -+A_REVERSE 2 4 sgr -+A_BLINK 3 8 sgr -+A_DIM 4 16 sgr -+A_BOLD 5 32 sgr -+A_INVIS 6 64 sgr -+A_PROTECT 7 128 sgr -+A_ALTCHARSET 8 256 sgr -+A_HORIZONTAL 9 512 sgr1 -+A_LEFT 10 1024 sgr1 -+A_LOW 11 2048 sgr1 -+A_RIGHT 12 4096 sgr1 -+A_TOP 13 8192 sgr1 -+A_VERTICAL 14 16384 sgr1 -+A_ITALIC 15 32768 sitm - .TE - .PP - For example, on many IBM PC consoles, the underline attribute collides with the -@@ -1389,7 +1503,7 @@ - .BR rep . - The first parameter is the character to be repeated and the second - is the number of times to repeat it. --Thus, tparm(repeat_char, 'x', 10) is the same as `xxxxxxxxxx'. -+Thus, tparm(repeat_char, 'x', 10) is the same as \*(``xxxxxxxxxx\*(''. - .PP - If the terminal has a settable command character, such as the \s-1TEKTRONIX\s+1 4025, - this can be indicated with -@@ -1420,13 +1534,13 @@ - .I virtual - terminal descriptions for which the escape sequences are known.) - .PP --If the terminal has a ``meta key'' which acts as a shift key, -+If the terminal has a \*(``meta key\*('' which acts as a shift key, - setting the 8th bit of any character transmitted, this fact can - be indicated with - .BR km . - Otherwise, software will assume that the 8th bit is parity and it - will usually be cleared. --If strings exist to turn this ``meta mode'' on and off, they -+If strings exist to turn this \*(``meta mode\*('' on and off, they - can be given as - .B smm - and -@@ -1470,7 +1584,7 @@ - .PP - .SS Glitches and Braindamage - .PP --Hazeltine terminals, which do not allow `~' characters to be displayed should -+Hazeltine terminals, which do not allow \*(``~\*('' characters to be displayed should - indicate \fBhz\fR. - .PP - Terminals which ignore a line-feed immediately after an \fBam\fR wrap, -@@ -1485,10 +1599,10 @@ - .PP - Teleray terminals, where tabs turn all characters moved over to blanks, - should indicate \fBxt\fR (destructive tabs). --Note: the variable indicating this is now `dest_tabs_magic_smso'; in -+Note: the variable indicating this is now \*(``dest_tabs_magic_smso\*(''; in - older versions, it was teleray_glitch. - This glitch is also taken to mean that it is not possible to position --the cursor on top of a ``magic cookie'', -+the cursor on top of a \*(``magic cookie\*('', - that to erase standout mode it is instead necessary to use - delete and insert line. - The ncurses implementation ignores this glitch. -@@ -1499,7 +1613,7 @@ - indicating that the f1 key is used for escape and f2 for control C. - (Only certain Superbees have this problem, depending on the ROM.) - Note that in older terminfo versions, this capability was called --`beehive_glitch'; it is now `no_esc_ctl_c'. -+\*(``beehive_glitch\*(''; it is now \*(``no_esc_ctl_c\*(''. - .PP - Other specific terminal problems may be corrected by adding more - capabilities of the form \fBx\fR\fIx\fR. -@@ -1524,8 +1638,10 @@ - A capability can be canceled by placing \fBxx@\fR to the left of the - use reference that imports it, where \fIxx\fP is the capability. - For example, the entry -+.RS - .PP -- 2621\-nl, smkx@, rmkx@, use=2621, -+2621\-nl, smkx@, rmkx@, use=2621, -+.RE - .PP - defines a 2621\-nl that does not have the \fBsmkx\fR or \fBrmkx\fR capabilities, - and hence does not turn on the function key labels when in visual mode. -@@ -1570,19 +1686,15 @@ - backslash-newline pairs, which \fBtgetent()\fP strips out while reading it. - Some termcap libraries strip off the final newline, too (GNU termcap does not). - Now suppose: --.TP 5 --* -+.bP - a termcap entry before expansion is more than 1023 bytes long, --.TP 5 --* -+.bP - and the application has only allocated a 1k buffer, --.TP 5 --* -+.bP - and the termcap library (like the one in BSD/OS 1.1 and GNU) reads - the whole entry into the buffer, no matter what its length, to see - if it is the entry it wants, --.TP 5 --* -+.bP - and \fBtgetent()\fP is searching for a terminal type that either is the - long entry, appears in the termcap file after the long entry, or - does not appear in the file at all (so that \fBtgetent()\fP has to search -@@ -1625,6 +1737,11 @@ - SVr1, and have added extension capabilities to the string table that (in the - binary format) collide with System V and XSI Curses extensions. - .SH EXTENSIONS -+.PP -+Searching for terminal descriptions in -+\fB$HOME/.terminfo\fR and TERMINFO_DIRS -+is not supported by older implementations. -+.PP - Some SVr4 \fBcurses\fR implementations, and all previous to SVr4, do not - interpret the %A and %O operators in parameter strings. - .PP -@@ -1652,6 +1769,15 @@ - interpret it as \fBKEY_MOUSE\fR, for use by terminals and emulators like xterm - that can return mouse-tracking information in the keyboard-input stream. - .PP -+X/Open Curses does not mention italics. -+Portable applications must assume that numeric capabilities are -+signed 16-bit values. -+This includes the \fIno_color_video\fP (ncv) capability. -+The 32768 mask value used for italics with ncv can be confused with -+an absent or cancelled ncv. -+If italics should work with colors, -+then the ncv value must be specified, even if it is zero. -+.PP - Different commercial ports of terminfo and curses support different subsets of - the XSI Curses standard and (in some cases) different extension sets. - Here -@@ -1666,9 +1792,9 @@ - .PP - \fBSVr1, Ultrix\fR \-\- - These support a restricted subset of terminfo capabilities. --The booleans --end with \fBxon_xoff\fR; the numerics with \fBwidth_status_line\fR; and the --strings with \fBprtr_non\fR. -+The booleans end with \fBxon_xoff\fR; -+the numerics with \fBwidth_status_line\fR; -+and the strings with \fBprtr_non\fR. - .PP - \fBHP/UX\fR \-\- - Supports the SVr1 subset, plus the SVr[234] numerics \fBnum_labels\fR, -diff -Naur ncurses-5.9/man/term_variables.3x ncurses-5.9.patch/man/term_variables.3x ---- ncurses-5.9/man/term_variables.3x 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/term_variables.3x 2014-09-01 16:33:22.350792113 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 2011,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: term_variables.3x,v 1.2 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: term_variables.3x,v 1.4 2013/12/21 22:17:39 tom Exp $ - .TH term_variables 3X "" - .ds n 5 - .na -@@ -110,7 +110,7 @@ - Alternatively, one can save the return value from \fBnewterm\fP - or \fBsetupterm\fP to reuse in \fBset_term\fP. - .SS Terminfo Names --The \fBtic\fP(1) and \fBinfocmp\fP(1) programs use lookup tables for -+The \fB@TIC@\fP(1) and \fB@INFOCMP@\fP(1) programs use lookup tables for - the long and short names of terminfo capabilities, - as well as the corresponding names for termcap capabilities. - These are available to other applications, -@@ -134,7 +134,10 @@ - On initialization of the curses or terminfo interfaces, - \fBsetupterm\fP copies the terminal name to the array \fBttytype\fP. - .SH NOTES --The low-level terminfo interface is initialized using \fBsetupterm\fR(3X). -+The low-level terminfo interface is initialized using -+.hy 0 -+\fBsetupterm\fR(3X). -+.hy - The upper-level curses interface uses the low-level terminfo interface, - internally. - .SH PORTABILITY -@@ -146,8 +149,9 @@ - Some implementations provide the variables in their libraries, - but omit them from the header files. - .SH SEE ALSO -+.hy 0 - \fBcurses\fR(3X), - \fBcurs_terminfo\fR(3X), - \fBcurs_threads\fR(3X), --\fBterminfo\fR(3X), - \fBterminfo\fR(\*n). -+.hy -diff -Naur ncurses-5.9/man/tic.1m ncurses-5.9.patch/man/tic.1m ---- ncurses-5.9/man/tic.1m 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/tic.1m 2014-09-01 16:33:22.351792114 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,19 +26,29 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: tic.1m,v 1.47 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: tic.1m,v 1.58 2013/07/20 19:31:25 tom Exp $ - .TH @TIC@ 1M "" -+.ie \n(.g .ds `` \(lq -+.el .ds `` `` -+.ie \n(.g .ds '' \(rq -+.el .ds '' '' - .ds n 5 - .ds d @TERMINFO@ -+.de bP -+.IP \(bu 4 -+.. - .SH NAME --\fBtic\fR \- the \fIterminfo\fR entry-description compiler -+\fB@TIC@\fR \- the \fIterminfo\fR entry-description compiler - .SH SYNOPSIS --\fBtic\fR -+\fB@TIC@\fR - [\fB\-\ -+0\ - 1\ - C\ -+D\ - G\ - I\ -+K\ - L\ - N\ - T\ -@@ -61,31 +71,69 @@ - \fIfile\fR - .br - .SH DESCRIPTION --The command \fBtic\fR translates a \fBterminfo\fR file from source -+The \fB@TIC@\fR command translates a \fBterminfo\fR file from source - format into compiled format. - The compiled format is necessary for use with - the library routines in \fBncurses\fR(3X). - .PP --The results are normally placed in the system terminfo --directory \fB\*d\fR. --There are two ways to change this behavior. --.PP --First, you may override the system default by setting the variable --\fBTERMINFO\fR in your shell environment to a valid (existing) directory name. --.PP --Secondly, if \fBtic\fR cannot get access to \fI\*d\fR or your TERMINFO --directory, it looks for the directory \fI$HOME/.terminfo\fR; if that directory --exists, the entry is placed there. --.PP --Libraries that read terminfo entries are expected to check for a TERMINFO --directory first, look at \fI$HOME/.terminfo\fR if TERMINFO is not set, and --finally look in \fI\*d\fR. -+As described in \fBterm\fR(\*n), the database may be either a directory -+tree (one file per terminal entry) or a hashed database (one record per entry). -+The \fB@TIC@\fR command writes only one type of entry, -+depending on how it was built: -+.bP -+For directory trees, the top-level directory, e.g., /usr/share/terminfo, -+specifies the location of the database. -+.bP -+For hashed databases, a filename is needed. -+If the given file is not found by that name, -+but can be found by adding the suffix ".db", -+then that is used. -+.IP -+The default name for the hashed database is the same as the -+default directory name (only adding a ".db" suffix). -+.PP -+In either case (directory or hashed database), -+\fB@TIC@\fP will create the container if it does not exist. -+For a directory, this would be the "terminfo" leaf, -+versus a "terminfo.db" file. -+.PP -+The results are normally placed in the system terminfo database \fB\*d\fR. -+The compiled terminal description can be placed -+in a different terminfo database. -+There are two ways to achieve this: -+.bP -+First, you may override the system default either by -+using the \fB\-o\fP option, -+or by setting the variable \fBTERMINFO\fR -+in your shell environment to a valid database location. -+.bP -+Secondly, if \fB@TIC@\fR cannot write in \fI\*d\fR -+or the location specified using your TERMINFO variable, -+it looks for the directory \fI$HOME/.terminfo\fR -+(or hashed database \fI$HOME/.terminfo.db)\fR; -+if that location exists, the entry is placed there. -+.PP -+Libraries that read terminfo entries are expected to check in succession -+.bP -+a location specified with the TERMINFO environment variable, -+.bP -+\fI$HOME/.terminfo\fR, -+.bP -+directories listed in the TERMINFO_DIRS environment variable, -+.bP -+a compiled-in list of directories (@TERMINFO_DIRS@), and -+.bP -+the system terminfo database (\fI\*d\fR). -+.SS OPTIONS -+.TP -+\fB\-0\fR -+restricts the output to a single line - .TP - \fB\-1\fR - restricts the output to a single column - .TP - \fB\-a\fR --tells \fBtic\fP to retain commented-out capabilities rather than discarding -+tells \fB@TIC@\fP to retain commented-out capabilities rather than discarding - them. - Capabilities are commented by prefixing them with a period. - This sets the \fB\-x\fR option, because it treats the commented-out -@@ -101,16 +149,30 @@ - Capabilities - that are not translatable are left in the entry under their terminfo names - but commented out with two preceding dots. -+The actual format used incorporates some improvements for escaped characters -+from terminfo format. -+For a stricter BSD-compatible translation, add the \fB\-K\fR option. - .TP - \fB\-c\fR --tells \fBtic\fP to only check \fIfile\fR for errors, including syntax problems and -+tells \fB@TIC@\fP to only check \fIfile\fR for errors, including syntax problems and - bad use links. - If you specify \fB\-C\fR (\fB\-I\fR) with this option, the code - will print warnings about entries which, after use resolution, are more than - 1023 (4096) bytes long. --Due to a fixed buffer length in older termcap --libraries (and a documented limit in terminfo), these entries may cause core --dumps. -+Due to a fixed buffer length in older termcap libraries, -+as well as buggy checking for the buffer length -+(and a documented limit in terminfo), -+these entries may cause core -+dumps with other implementations. -+.TP -+\fB\-D\fR -+tells \fB@TIC@\fP to print the database locations that it knows about, and exit. -+The first location shown is the one to which it would write compiled -+terminal descriptions. -+If \fB@TIC@\fP is not able to find a writable database location -+according to the rules summarized above, -+it will print a diagnostic and exit with an error rather than -+printing a list of database locations. - .TP - \fB\-e \fR\fInames\fR - Limit writes and translations to the following comma-separated list of -@@ -137,6 +199,10 @@ - \fB\-I\fR - Force source translation to terminfo format. - .TP -+\fB\-K\fR -+Suppress some longstanding ncurses extensions to termcap format, -+e.g., "\\s" for space. -+.TP - \fB\-L\fR - Force source translation to terminfo format - using the long C variable names listed in <\fBterm.h\fR> -@@ -155,9 +221,8 @@ - obsolete capabilities. - .TP - \fB\-o\fR\fIdir\fR --Write compiled entries to given directory. --Overrides the TERMINFO environment --variable. -+Write compiled entries to given database location. -+Overrides the TERMINFO environment variable. - .TP - \fB\-R\fR\fIsubset\fR - Restrict output to a given subset. -@@ -177,7 +242,7 @@ - tc capabilities per entry. - .TP - \fB\-s\fR --Summarize the compile by showing the directory into which entries -+Summarize the compile by showing the database location into which entries - are written, and the number of entries which are compiled. - .TP - \fB\-T\fR -@@ -186,12 +251,12 @@ - descriptions are limited (e.g., 1023 for termcap, 4096 for terminfo). - .TP - \fB\-t\fR --tells \fBtic\fP to discard commented-out capabilities. -+tells \fB@TIC@\fP to discard commented-out capabilities. - Normally when translating from terminfo to termcap, - untranslatable capabilities are commented-out. - .TP 5 - \fB\-U\fR --tells \fBtic\fP to not post-process the data after parsing the source file. -+tells \fB@TIC@\fP to not post-process the data after parsing the source file. - Normally, it infers data which is commonly missing in older terminfo data, - or in termcaps. - .TP -@@ -200,31 +265,13 @@ - .TP - \fB\-v\fR\fIn\fR - specifies that (verbose) output be written to standard error trace --information showing \fBtic\fR's progress. -+information showing \fB@TIC@\fR's progress. - The optional parameter \fIn\fR is a number from 1 to 10, inclusive, - indicating the desired level of detail of information. - If \fIn\fR is omitted, the default level is 1. - If \fIn\fR is specified and greater than 1, the level of - detail is increased. --.TP --\fB\-w\fR\fIn\fR --specifies the width of the output. --The parameter is optional. --If it is omitted, it defaults to 60. --.TP --\fB\-x\fR --Treat unknown capabilities as user-defined. --That is, if you supply a capability name which \fBtic\fP does not recognize, --it will infer its type (boolean, number or string) from the syntax and --make an extended table entry for that. --User-defined capability strings --whose name begins with ``k'' are treated as function keys. --.TP --\fIfile\fR --contains one or more \fBterminfo\fR terminal descriptions in source --format [see \fBterminfo\fR(\*n)]. --Each description in the file --describes the capabilities of a particular terminal. -+.RS - .PP - The debug flag levels are as follows: - .TP -@@ -232,7 +279,7 @@ - Names of files created and linked - .TP - 2 --Information related to the ``use'' facility -+Information related to the \*(``use\*('' facility - .TP - 3 - Statistics from the hashing algorithm -@@ -250,19 +297,42 @@ - All values computed in construction of the hash table - .LP - If the debug level \fIn\fR is not given, it is taken to be one. -+.RE -+.TP -+\fB\-w\fR\fIn\fR -+specifies the width of the output. -+The parameter is optional. -+If it is omitted, it defaults to 60. -+.TP -+\fB\-x\fR -+Treat unknown capabilities as user-defined. -+That is, if you supply a capability name which \fB@TIC@\fP does not recognize, -+it will infer its type (boolean, number or string) from the syntax and -+make an extended table entry for that. -+User-defined capability strings -+whose name begins with \*(``k\*('' are treated as function keys. -+.SS PARAMETERS -+.TP -+\fIfile\fR -+contains one or more \fBterminfo\fR terminal descriptions in source -+format [see \fBterminfo\fR(\*n)]. -+Each description in the file -+describes the capabilities of a particular terminal. -+.IP -+If \fIfile\fR is \*(``-\*('', then the data is read from the standard input. -+The \fIfile\fR parameter may also be the path of a character-device. -+.SS PROCESSING - .PP --All but one of the capabilities recognized by \fBtic\fR are documented -+All but one of the capabilities recognized by \fB@TIC@\fR are documented - in \fBterminfo\fR(\*n). - The exception is the \fBuse\fR capability. - .PP - When a \fBuse\fR=\fIentry\fR\-\fIname\fR field is discovered in a --terminal entry currently being compiled, \fBtic\fR reads in the binary -+terminal entry currently being compiled, \fB@TIC@\fR reads in the binary - from \fB\*d\fR to complete the entry. - (Entries created from - \fIfile\fR will be used first. --If the environment variable --\fBTERMINFO\fR is set, that directory is searched instead of --\fB\*d\fR.) \fBtic\fR duplicates the capabilities in -+\fB@TIC@\fR duplicates the capabilities in - \fIentry\fR\-\fIname\fR for the current entry, with the exception of - those capabilities that explicitly are defined in the current entry. - .PP -@@ -272,9 +342,6 @@ - \fBentry_name_1\fR before \fBuse=\fR for these capabilities to be - canceled in \fBentry_name_1\fR. - .PP --If the environment variable \fBTERMINFO\fR is set, the compiled --results are placed there instead of \fB\*d\fR. --.PP - Total compiled entries cannot exceed 4096 bytes. - The name field cannot - exceed 512 bytes. -@@ -282,14 +349,14 @@ - (32 characters on systems with long filenames, 14 characters otherwise) - will be truncated to the maximum alias length and a warning message will be printed. - .SH COMPATIBILITY --There is some evidence that historic \fBtic\fR implementations treated -+There is some evidence that historic \fB@TIC@\fR implementations treated - description fields with no whitespace in them as additional aliases or - short names. --This \fBtic\fR does not do that, but it does warn when -+This \fB@TIC@\fR does not do that, but it does warn when - description fields may be treated that way and check them for dangerous - characters. - .SH EXTENSIONS --Unlike the stock SVr4 \fBtic\fR command, this implementation can actually -+Unlike the SVr4 \fB@TIC@\fR command, this implementation can actually - compile termcap sources. - In fact, entries in terminfo and termcap syntax can - be mixed in a single source file. -@@ -298,16 +365,20 @@ - .PP - The SVr4 manual pages are not clear on the resolution rules for \fBuse\fR - capabilities. --This implementation of \fBtic\fR will find \fBuse\fR targets anywhere -+This implementation of \fB@TIC@\fR will find \fBuse\fR targets anywhere - in the source file, or anywhere in the file tree rooted at \fBTERMINFO\fR (if --\fBTERMINFO\fR is defined), or in the user's \fI$HOME/.terminfo\fR directory --(if it exists), or (finally) anywhere in the system's file tree of -+\fBTERMINFO\fR is defined), -+or in the user's \fI$HOME/.terminfo\fR database -+(if it exists), -+or (finally) anywhere in the system's file tree of - compiled entries. - .PP --The error messages from this \fBtic\fR have the same format as GNU C -+The error messages from this \fB@TIC@\fR have the same format as GNU C - error messages, and can be parsed by GNU Emacs's compile facility. - .PP - The -+\fB\-0\fR, -+\fB\-1\fR, - \fB\-C\fR, - \fB\-G\fR, - \fB\-I\fR, -@@ -329,7 +400,7 @@ - The SVr4 \fB\-c\fR mode does not report bad use links. - .PP - System V does not compile entries to or read entries from your --\fI$HOME/.terminfo\fR directory unless TERMINFO is explicitly set to it. -+\fI$HOME/.terminfo\fR database unless TERMINFO is explicitly set to it. - .SH FILES - .TP 5 - \fB\*d/?/*\fR -@@ -340,6 +411,7 @@ - \fB@INFOTOCAP@\fR(1M), - \fB@TOE@\fR(1M), - \fBcurses\fR(3X), -+\fBterm\fR(\*n). - \fBterminfo\fR(\*n). - .PP - This describes \fBncurses\fR -diff -Naur ncurses-5.9/man/toe.1m ncurses-5.9.patch/man/toe.1m ---- ncurses-5.9/man/toe.1m 2010-12-04 19:40:45.000000000 +0100 -+++ ncurses-5.9.patch/man/toe.1m 2014-09-01 16:33:22.351792114 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,19 +26,19 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: toe.1m,v 1.23 2010/12/04 18:40:45 tom Exp $ -+.\" $Id: toe.1m,v 1.26 2012/01/01 00:40:51 tom Exp $ - .TH @TOE@ 1M "" - .ds n 5 - .ds d @TERMINFO@ - .SH NAME --\fBtoe\fR \- table of (terminfo) entries -+\fB@TOE@\fR \- table of (terminfo) entries - .SH SYNOPSIS --\fBtoe\fR [\fB\-v\fR[\fIn\fR]] [\fB\-ahuUV\fR] \fIfile...\fR -+\fB@TOE@\fR [\fB\-v\fR[\fIn\fR]] [\fB\-ahsuUV\fR] \fIfile...\fR - .br - .SH DESCRIPTION - .PP - With no options, --\fBtoe\fR lists all available terminal types by primary name -+\fB@TOE@\fR lists all available terminal types by primary name - with descriptions. - File arguments specify the directories to be scanned; if no - such arguments are given, -@@ -52,6 +52,15 @@ - \fB\-a\fR - report on all of the terminal databases which ncurses would search, - rather than only the first one that it finds. -+.IP -+If the \fB\-s\fR is also given, \fB@TOE@\fR -+adds a column to the report, -+showing (like \fBconflict\fP(1)) which entries which -+belong to a given terminal database. -+An "*" marks entries which differ, and "+" marks equivalent entries. -+.TP -+\fB\-s\fR -+sort the output by the entry names. - .TP - \fB\-u\fR \fIfile\fR - says to write a report to the standard output, -@@ -78,7 +87,7 @@ - .TP - \fB\-v\fR\fIn\fR - specifies that (verbose) output be written to standard error, --showing \fBtoe\fR's progress. -+showing \fB@TOE@\fR's progress. - The optional parameter \fIn\fR is a number from 1 to 10, - interpreted as for \fB@TIC@\fR(1M). - .TP -diff -Naur ncurses-5.9/man/tput.1 ncurses-5.9.patch/man/tput.1 ---- ncurses-5.9/man/tput.1 2010-12-04 19:41:07.000000000 +0100 -+++ ncurses-5.9.patch/man/tput.1 2014-09-01 16:33:22.351792114 +0200 -@@ -1,6 +1,6 @@ - '\" t - .\"*************************************************************************** --.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: tput.1,v 1.29 2010/12/04 18:41:07 tom Exp $ -+.\" $Id: tput.1,v 1.32 2012/07/14 21:06:45 tom Exp $ - .TH @TPUT@ 1 "" - .ds d @TERMINFO@ - .ds n 1 -@@ -77,11 +77,12 @@ - and the \fIcapname\fR associated with each, see \fBterminfo\fR(5). - .TP - \fB\-T\fR\fItype\fR --indicates the \fItype\fR of terminal. Normally this option is -+indicates the \fItype\fR of terminal. -+Normally this option is - unnecessary, because the default is taken from the environment --variable \fBTERM\fR. If \fB\-T\fR is specified, then the shell --variables \fBLINES\fR and \fBCOLUMNS\fR will be ignored,and the --operating system will not be queried for the actual screen size. -+variable \fBTERM\fR. -+If \fB\-T\fR is specified, then the shell -+variables \fBLINES\fR and \fBCOLUMNS\fR will also be ignored. - .TP - \fIcapname\fR - indicates the capability from the \fBterminfo\fR database. When -@@ -159,7 +160,7 @@ - .PP - If \fB@TPUT@\fR is invoked by a link named \fBreset\fR, this has the - same effect as \fB@TPUT@ reset\fR. --See \fBtset\fR for comparison, which has similar behavior. -+See \fB@TSET@\fR for comparison, which has similar behavior. - .SH EXAMPLES - .TP 5 - \fB@TPUT@ init\fR -@@ -275,7 +276,7 @@ - .PP - Any other exit code indicates an error; see the DIAGNOSTICS section. - .SH DIAGNOSTICS --\fBtput\fR prints the following error messages and sets the corresponding exit -+\fB@TPUT@\fR prints the following error messages and sets the corresponding exit - codes. - .PP - .ne 15 -@@ -303,17 +304,29 @@ - .PP - X/Open documents only the operands for \fBclear\fP, \fBinit\fP and \fBreset\fP. - In this implementation, \fBclear\fP is part of the \fIcapname\fR support. --Other implementations of \fBtput\fP on -+Other implementations of \fB@TPUT@\fP on - SVr4-based systems such as Solaris, IRIX64 and HPUX - as well as others such as AIX and Tru64 - provide support for \fIcapname\fR operands. -+.PP - A few platforms such as FreeBSD and NetBSD recognize termcap names rather --than terminfo capability names in their respective \fBtput\fP commands. -+than terminfo capability names in their respective \fB@TPUT@\fP commands. -+.PP -+Most implementations which provide support for \fIcapname\fR operands -+use the \fItparm\fP function to expand parameters in it. -+That function expects a mixture of numeric and string parameters, -+requiring \fB@TPUT@\fP to know which type to use. -+This implementation uses a table to determine that for -+the standard \fIcapname\fR operands, and an internal library -+function to analyze nonstandard \fIcapname\fR operands. -+Other implementations may simply guess that an operand containing only digits -+is intended to be a number. - .SH SEE ALSO - \fB@CLEAR@\fR(1), - \fBstty\fR(1), - \fBtabs\fR(\*n), --\fBterminfo\fR(5). -+\fBterminfo\fR(5), -+\fBcurs_termcap\fR(3X). - .PP - This describes \fBncurses\fR - version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@). -diff -Naur ncurses-5.9/man/tset.1 ncurses-5.9.patch/man/tset.1 ---- ncurses-5.9/man/tset.1 2010-12-04 19:38:55.000000000 +0100 -+++ ncurses-5.9.patch/man/tset.1 2014-09-01 16:33:22.351792114 +0200 -@@ -1,5 +1,5 @@ - .\"*************************************************************************** --.\" Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+.\" Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. * - .\" * - .\" Permission is hereby granted, free of charge, to any person obtaining a * - .\" copy of this software and associated documentation files (the * -@@ -26,12 +26,16 @@ - .\" authorization. * - .\"*************************************************************************** - .\" --.\" $Id: tset.1,v 1.25 2010/12/04 18:38:55 tom Exp $ -+.\" $Id: tset.1,v 1.29 2013/12/21 22:15:53 tom Exp $ - .TH @TSET@ 1 "" -+.ie \n(.g .ds `` \(lq -+.el .ds `` `` -+.ie \n(.g .ds '' \(rq -+.el .ds '' '' - .SH NAME --\fBtset\fR, \fBreset\fR \- terminal initialization -+\fB@TSET@\fR, \fBreset\fR \- terminal initialization - .SH SYNOPSIS --\fBtset\fR [\fB\-IQVcqrsw\fR] [\fB\-\fR] [\fB\-e\fR \fIch\fR] [\fB\-i\fR \fIch\fR] [\fB\-k\fR \fIch\fR] [\fB\-m\fR \fImapping\fR] [\fIterminal\fR] -+\fB@TSET@\fR [\fB\-IQVcqrsw\fR] [\fB\-\fR] [\fB\-e\fR \fIch\fR] [\fB\-i\fR \fIch\fR] [\fB\-k\fR \fIch\fR] [\fB\-m\fR \fImapping\fR] [\fIterminal\fR] - .br - \fBreset\fR [\fB\-IQVcqrsw\fR] [\fB\-\fR] [\fB\-e\fR \fIch\fR] [\fB\-i\fR \fIch\fR] [\fB\-k\fR \fIch\fR] [\fB\-m\fR \fImapping\fR] [\fIterminal\fR] - .SH DESCRIPTION -@@ -49,13 +53,13 @@ - \fIgetty\fR does this job by setting - \fBTERM\fR according to the type passed to it by \fI/etc/inittab\fR.) - .PP --4. The default terminal type, ``unknown''. -+4. The default terminal type, \*(``unknown\*(''. - .PP - If the terminal type was not specified on the command-line, the \fB\-m\fR - option mappings are then applied (see the section - .B TERMINAL TYPE MAPPING - for more information). --Then, if the terminal type begins with a question mark (``?''), the -+Then, if the terminal type begins with a question mark (\*(``?\*(''), the - user is prompted for confirmation of the terminal type. An empty - response confirms the type, or, another type can be entered to specify - a new type. Once the terminal type has been determined, the terminfo -@@ -72,7 +76,7 @@ - versus the other initialization. - If neither option is given, both are assumed. - .PP --When invoked as \fBreset\fR, \fBtset\fR sets cooked and echo modes, -+When invoked as \fBreset\fR, \fB@TSET@\fR sets cooked and echo modes, - turns off cbreak and raw modes, turns on newline translation and - resets any unset special characters to their default values before - doing the terminal initialization described above. This is useful -@@ -89,6 +93,7 @@ - .TP 5 - .B \-c - Set control characters and modes. -+.TP 5 - .B \-e - Set the erase character to \fIch\fR. - .TP -@@ -109,7 +114,7 @@ - .TP - .B \-Q - Do not display any values for the erase, interrupt and line kill characters. --Normally \fBtset\fR displays the values for control characters which -+Normally \fB@TSET@\fR displays the values for control characters which - differ from the system's default values. - .TP - .B \-q -@@ -137,7 +142,7 @@ - .PP - The arguments for the \fB\-e\fR, \fB\-i\fR, and \fB\-k\fR - options may either be entered as actual characters or by using the `hat' --notation, i.e., control-h may be specified as ``^H'' or ``^h''. -+notation, i.e., control-h may be specified as \*(``^H\*('' or \*(``^h\*(''. - . - .SH SETTING THE ENVIRONMENT - It is often desirable to enter the terminal type and information about -@@ -146,35 +151,41 @@ - .PP - When the \fB\-s\fR option is specified, the commands to enter the information - into the shell's environment are written to the standard output. If --the \fBSHELL\fR environmental variable ends in ``csh'', the commands -+the \fBSHELL\fR environmental variable ends in \*(``csh\*('', the commands - are for \fBcsh\fR, otherwise, they are for \fBsh\fR. - Note, the \fBcsh\fR commands set and unset the shell variable - \fBnoglob\fR, leaving it unset. The following line in the \fB.login\fR - or \fB.profile\fR files will initialize the environment correctly: - .sp -- eval \`tset \-s options ... \` -+ eval \`@TSET@ \-s options ... \` - . - .SH TERMINAL TYPE MAPPING - When the terminal is not hardwired into the system (or the current - system information is incorrect) the terminal type derived from the - \fI/etc/ttys\fR file or the \fBTERM\fR environmental variable is often - something generic like \fBnetwork\fR, \fBdialup\fR, or \fBunknown\fR. --When \fBtset\fR is used in a startup script it is often desirable to -+When \fB@TSET@\fR is used in a startup script it is often desirable to - provide information about the type of terminal used on such ports. - .PP - The purpose of the \fB\-m\fR option is to map - from some set of conditions to a terminal type, that is, to --tell \fBtset\fR --``If I'm on this port at a particular speed, guess that I'm on that --kind of terminal''. -+tell \fB@TSET@\fR -+\*(``If I'm on this port at a particular speed, -+guess that I'm on that kind of terminal\*(''. - .PP - The argument to the \fB\-m\fR option consists of an optional port type, an - optional operator, an optional baud rate specification, an optional --colon (``:'') character and a terminal type. The port type is a --string (delimited by either the operator or the colon character). The --operator may be any combination of ``>'', ``<'', ``@'', and ``!''; ``>'' --means greater than, ``<'' means less than, ``@'' means equal to --and ``!'' inverts the sense of the test. -+colon (\*(``:\*('') character and a terminal type. The port type is a -+string (delimited by either the operator or the colon character). -+The operator may be any combination of -+\*(``>\*('', -+\*(``<\*('', -+\*(``@\*('', -+and \*(``!\*(''; -+\*(``>\*('' means greater than, -+\*(``<\*('' means less than, -+\*(``@\*('' means equal to and -+\*(``!\*('' inverts the sense of the test. - The baud rate is specified as a number and is compared with the speed - of the standard error output (which should be the control terminal). - The terminal type is a string. -@@ -204,53 +215,57 @@ - No whitespace characters are permitted in the \fB\-m\fR option argument. - Also, to avoid problems with meta-characters, it is suggested that the - entire \fB\-m\fR option argument be placed within single quote characters, --and that \fBcsh\fR users insert a backslash character (``\e'') before --any exclamation marks (``!''). -+and that \fBcsh\fR users insert a backslash character (\*(``\e\*('') before -+any exclamation marks (\*(``!\*(''). - .SH HISTORY --The \fBtset\fR command appeared in BSD 3.0. The \fBncurses\fR implementation -+The \fB@TSET@\fR command appeared in BSD 3.0. The \fBncurses\fR implementation - was lightly adapted from the 4.4BSD sources for a terminfo environment by Eric - S. Raymond <esr@snark.thyrsus.com>. - .SH COMPATIBILITY --The \fBtset\fR utility has been provided for backward-compatibility with BSD -+The \fB@TSET@\fR utility has been provided for backward-compatibility with BSD - environments (under most modern UNIXes, \fB/etc/inittab\fR and \fIgetty\fR(1) - can set \fBTERM\fR appropriately for each dial-up line; this obviates what was --\fBtset\fR's most important use). This implementation behaves like 4.4BSD -+\fB@TSET@\fR's most important use). This implementation behaves like 4.4BSD - tset, with a few exceptions specified here. - .PP --The \fB\-S\fR option of BSD tset no longer works; it prints an error message to stderr --and dies. The \fB\-s\fR option only sets \fBTERM\fR, not \fBTERMCAP\fP. Both these --changes are because the \fBTERMCAP\fR variable is no longer supported under --terminfo-based \fBncurses\fR, which makes \fBtset \-S\fR useless (we made it die --noisily rather than silently induce lossage). -+The \fB\-S\fR option of BSD tset no longer works; -+it prints an error message to stderr and dies. -+The \fB\-s\fR option only sets \fBTERM\fR, not \fBTERMCAP\fP. -+Both of these changes are because the \fBTERMCAP\fR variable -+is no longer supported under terminfo-based \fBncurses\fR, -+which makes \fB@TSET@ \-S\fR useless -+(we made it die noisily rather than silently induce lossage). - .PP - There was an undocumented 4.4BSD feature that invoking tset via a link named - `TSET` (or via any other name beginning with an upper-case letter) set the - terminal to use upper-case only. This feature has been omitted. - .PP - The \fB\-A\fR, \fB\-E\fR, \fB\-h\fR, \fB\-u\fR and \fB\-v\fR --options were deleted from the \fBtset\fR -+options were deleted from the \fB@TSET@\fR - utility in 4.4BSD. - None of them were documented in 4.3BSD and all are - of limited utility at best. - The \fB\-a\fR, \fB\-d\fR, and \fB\-p\fR options are similarly - not documented or useful, but were retained as they appear to be in - widespread use. It is strongly recommended that any usage of these --three options be changed to use the \fB\-m\fR option instead. The --\fB\-n\fP option remains, but has no effect. The \fB\-adnp\fR options are therefore --omitted from the usage summary above. --.PP --It is still permissible to specify the \fB\-e\fR, \fB\-i\fR, and \fB\-k\fR options without --arguments, although it is strongly recommended that such usage be fixed to -+three options be changed to use the \fB\-m\fR option instead. -+The \fB\-n\fP option remains, but has no effect. -+The \fB\-adnp\fR options are therefore omitted from the usage summary above. -+.PP -+It is still permissible to specify the \fB\-e\fR, \fB\-i\fR, -+and \fB\-k\fR options without arguments, -+although it is strongly recommended that such usage be fixed to - explicitly specify the character. - .PP --As of 4.4BSD, executing \fBtset\fR as \fBreset\fR no longer implies the \fB\-Q\fR --option. Also, the interaction between the \- option and the \fIterminal\fR --argument in some historic implementations of \fBtset\fR has been removed. -+As of 4.4BSD, -+executing \fB@TSET@\fR as \fBreset\fR no longer implies the \fB\-Q\fR option. -+Also, the interaction between the \- option and the \fIterminal\fR -+argument in some historic implementations of \fB@TSET@\fR has been removed. - .SH ENVIRONMENT --The \fBtset\fR command uses these environment variables: -+The \fB@TSET@\fR command uses these environment variables: - .TP 5 - SHELL --tells \fBtset\fP whether to initialize \fBTERM\fP using \fBsh\fP or -+tells \fB@TSET@\fP whether to initialize \fBTERM\fP using \fBsh\fP or - \fBcsh\fP syntax. - .TP 5 - TERM -@@ -260,7 +275,7 @@ - TERMCAP - may denote the location of a termcap database. - If it is not an absolute pathname, e.g., begins with a `/', --\fBtset\fP removes the variable from the environment before looking -+\fB@TSET@\fP removes the variable from the environment before looking - for the terminal description. - .SH FILES - .TP 5 -@@ -270,6 +285,7 @@ - @TERMINFO@ - terminal capability database - .SH SEE ALSO -+.hy 0 - csh(1), - sh(1), - stty(1), -@@ -278,6 +294,7 @@ - terminfo(5), - ttys(5), - environ(7) -+.hy - .PP - This describes \fBncurses\fR - version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@). -diff -Naur ncurses-5.9/MANIFEST ncurses-5.9.patch/MANIFEST ---- ncurses-5.9/MANIFEST 2011-03-28 02:29:04.000000000 +0200 -+++ ncurses-5.9.patch/MANIFEST 2014-09-01 16:33:22.228791910 +0200 -@@ -190,6 +190,7 @@ - ./Ada95/src/terminal_interface-curses-text_io.ads - ./Ada95/src/terminal_interface-curses-trace.adb_p - ./Ada95/src/terminal_interface.ads -+./COPYING - ./INSTALL - ./MANIFEST - ./Makefile.in -@@ -545,6 +546,8 @@ - ./include/nc_alloc.h - ./include/nc_mingw.h - ./include/nc_panel.h -+./include/nc_string.h -+./include/nc_termios.h - ./include/nc_tparm.h - ./include/ncurses_cfg.hin - ./include/ncurses_defs -@@ -656,6 +659,8 @@ - ./man/legacy_coding.3x - ./man/make_sed.sh - ./man/man_db.renames -+./man/manhtml.aliases -+./man/manhtml.externs - ./man/manlinks.sed - ./man/menu.3x - ./man/menu_attributes.3x -@@ -764,7 +769,6 @@ - ./mk-0th.awk - ./mk-1st.awk - ./mk-2nd.awk --./mk-dlls.sh.in - ./mk-hdr.awk - ./ncurses/Makefile.in - ./ncurses/README -@@ -850,7 +854,6 @@ - ./ncurses/base/lib_wattron.c - ./ncurses/base/lib_winch.c - ./ncurses/base/lib_window.c --./ncurses/base/memmove.c - ./ncurses/base/nc_panel.c - ./ncurses/base/resizeterm.c - ./ncurses/base/safe_sprintf.c -@@ -867,6 +870,14 @@ - ./ncurses/llib-lncursest - ./ncurses/llib-lncursestw - ./ncurses/llib-lncursesw -+./ncurses/llib-ltic -+./ncurses/llib-ltict -+./ncurses/llib-ltictw -+./ncurses/llib-lticw -+./ncurses/llib-ltinfo -+./ncurses/llib-ltinfot -+./ncurses/llib-ltinfotw -+./ncurses/llib-ltinfow - ./ncurses/modules - ./ncurses/tinfo/MKcaptab.awk - ./ncurses/tinfo/MKcaptab.sh -@@ -915,10 +926,10 @@ - ./ncurses/tinfo/make_hash.c - ./ncurses/tinfo/make_keys.c - ./ncurses/tinfo/name_match.c -+./ncurses/tinfo/obsolete.c - ./ncurses/tinfo/parse_entry.c - ./ncurses/tinfo/read_entry.c - ./ncurses/tinfo/read_termcap.c --./ncurses/tinfo/setbuf.c - ./ncurses/tinfo/strings.c - ./ncurses/tinfo/tinfo_driver.c - ./ncurses/tinfo/trim_sgr0.c -@@ -943,8 +954,6 @@ - ./ncurses/tty/lib_tstp.c - ./ncurses/tty/lib_twait.c - ./ncurses/tty/lib_vidattr.c --./ncurses/tty/tty_display.h --./ncurses/tty/tty_input.h - ./ncurses/tty/tty_update.c - ./ncurses/wcwidth.h - ./ncurses/widechar/charable.c -@@ -967,9 +976,34 @@ - ./ncurses/widechar/lib_vline_set.c - ./ncurses/widechar/lib_wacs.c - ./ncurses/widechar/lib_wunctrl.c -+./ncurses/widechar/widechars.c - ./ncurses/win32con/gettimeofday.c - ./ncurses/win32con/wcwidth.c - ./ncurses/win32con/win_driver.c -+./package/debian-mingw/changelog -+./package/debian-mingw/compat -+./package/debian-mingw/control -+./package/debian-mingw/copyright -+./package/debian-mingw/rules -+./package/debian-mingw/source/format -+./package/debian-mingw/watch -+./package/debian-mingw64/changelog -+./package/debian-mingw64/compat -+./package/debian-mingw64/control -+./package/debian-mingw64/copyright -+./package/debian-mingw64/rules -+./package/debian-mingw64/source/format -+./package/debian-mingw64/watch -+./package/debian/changelog -+./package/debian/compat -+./package/debian/control -+./package/debian/copyright -+./package/debian/rules -+./package/debian/source/format -+./package/debian/watch -+./package/mingw-ncurses.nsi -+./package/mingw-ncurses.spec -+./package/ncurses.spec - ./panel/Makefile.in - ./panel/headers - ./panel/llib-lpanel -@@ -1022,12 +1056,14 @@ - ./test/cardfile.dat - ./test/chgat.c - ./test/clip_printw.c -+./test/color_name.h - ./test/color_set.c - ./test/configure - ./test/configure.in - ./test/demo_altkeys.c - ./test/demo_defkey.c - ./test/demo_forms.c -+./test/demo_forms.txt - ./test/demo_keyok.c - ./test/demo_menus.c - ./test/demo_panels.c -@@ -1036,6 +1072,7 @@ - ./test/ditto.c - ./test/dots.c - ./test/dots_mvcur.c -+./test/dots_termcap.c - ./test/echochar.c - ./test/edit_field.c - ./test/edit_field.h -@@ -1043,6 +1080,7 @@ - ./test/firework.c - ./test/firstlast.c - ./test/foldkeys.c -+./test/form_driver_w.c - ./test/gdc.6 - ./test/gdc.c - ./test/hanoi.c -@@ -1073,6 +1111,7 @@ - ./test/package/debian/rules - ./test/package/debian/source/format - ./test/package/debian/watch -+./test/package/mingw-ncurses-examples.spec - ./test/package/ncurses-examples.spec - ./test/programs - ./test/railroad.c -@@ -1092,12 +1131,15 @@ - ./test/test_instr.c - ./test/test_inwstr.c - ./test/test_opaque.c -+./test/test_vid_puts.c -+./test/test_vidputs.c - ./test/testaddch.c - ./test/testcurs.c - ./test/testscanw.c - ./test/tracemunch - ./test/view.c - ./test/widechars-utf8.txt -+./test/widechars.h - ./test/worm.c - ./test/xmas.c - ./test/xterm-16color.dat -diff -Naur ncurses-5.9/menu/Makefile.in ncurses-5.9.patch/menu/Makefile.in ---- ncurses-5.9/menu/Makefile.in 2010-11-27 22:45:27.000000000 +0100 -+++ ncurses-5.9.patch/menu/Makefile.in 2014-09-01 16:33:22.351792114 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.54 2010/11/27 21:45:27 tom Exp $ -+# $Id: Makefile.in,v 1.57 2013/08/04 20:23:27 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -57,6 +57,9 @@ - bindir = @bindir@ - libdir = @libdir@ - includedir = @includedir@ -+includesubdir = @includesubdir@ -+ -+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir) - - LIBTOOL = @LIBTOOL@ - LIBTOOL_CLEAN = @LIB_CLEAN@ -@@ -102,6 +105,7 @@ - SHLIB_DIRS = -L../lib - SHLIB_LIST = $(SHLIB_DIRS) -lncurses@LIB_SUFFIX@ @SHLIB_LIST@ - -+RPATH_LIST = @RPATH_LIST@ - MK_SHARED_LIB = @MK_SHARED_LIB@ - - NCURSES_MAJOR = @NCURSES_MAJOR@ -@@ -111,7 +115,7 @@ - - RANLIB = @LIB_PREP@ - --LIBRARIES = @LIBS_TO_MAKE@ -+LIBRARIES = @Libs_To_Make@ - - LINT = @LINT@ - LINT_OPTS = @LINT_OPTS@ -diff -Naur ncurses-5.9/menu/m_attribs.c ncurses-5.9.patch/menu/m_attribs.c ---- ncurses-5.9/menu/m_attribs.c 2010-01-23 22:16:54.000000000 +0100 -+++ ncurses-5.9.patch/menu/m_attribs.c 2014-09-01 16:33:22.352792116 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - - #include "menu.priv.h" - --MODULE_ID("$Id: m_attribs.c,v 1.16 2010/01/23 21:16:54 tom Exp $") -+MODULE_ID("$Id: m_attribs.c,v 1.17 2012/03/10 23:43:41 tom Exp $") - - /* Macro to redraw menu if it is posted and changed */ - #define Refresh_Menu(menu) \ -@@ -51,7 +51,7 @@ - #define GEN_MENU_ATTR_SET_FCT( name ) \ - NCURSES_IMPEXP int NCURSES_API set_menu_ ## name (MENU* menu, chtype attr) \ - {\ -- T((T_CALLED("set_menu_" #name "(%p,%s)"), menu, _traceattr(attr))); \ -+ T((T_CALLED("set_menu_" #name "(%p,%s)"), (void *) menu, _traceattr(attr))); \ - if (!(attr==A_NORMAL || (attr & A_ATTRIBUTES)==attr))\ - RETURN(E_BAD_ARGUMENT);\ - if (menu && ( menu -> name != attr))\ -diff -Naur ncurses-5.9/menu/m_driver.c ncurses-5.9.patch/menu/m_driver.c ---- ncurses-5.9/menu/m_driver.c 2010-01-23 22:20:10.000000000 +0100 -+++ ncurses-5.9.patch/menu/m_driver.c 2014-09-01 16:33:22.352792116 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - - #include "menu.priv.h" - --MODULE_ID("$Id: m_driver.c,v 1.29 2010/01/23 21:20:10 tom Exp $") -+MODULE_ID("$Id: m_driver.c,v 1.31 2012/03/10 23:43:41 tom Exp $") - - /* Macros */ - -@@ -47,7 +47,7 @@ - - /* Add a new character to the match pattern buffer */ - #define Add_Character_To_Pattern(menu,ch) \ -- { (menu)->pattern[((menu)->pindex)++] = (ch);\ -+ { (menu)->pattern[((menu)->pindex)++] = (char) (ch);\ - (menu)->pattern[(menu)->pindex] = '\0'; } - - /*--------------------------------------------------------------------------- -@@ -537,7 +537,11 @@ - result = E_UNKNOWN_COMMAND; - } - -- if (E_OK == result) -+ if (item == 0) -+ { -+ result = E_BAD_STATE; -+ } -+ else if (E_OK == result) - { - /* Adjust the top row if it turns out that the current item unfortunately - doesn't appear in the menu window */ -diff -Naur ncurses-5.9/menu/menu.priv.h ncurses-5.9.patch/menu/menu.priv.h ---- ncurses-5.9/menu/menu.priv.h 2009-02-28 22:02:57.000000000 +0100 -+++ ncurses-5.9.patch/menu/menu.priv.h 2014-09-01 16:33:22.353792118 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -30,7 +30,7 @@ - * Author: Juergen Pfeifer, 1995,1997 * - ****************************************************************************/ - --/* $Id: menu.priv.h,v 1.23 2009/02/28 21:02:57 juergen Exp $ */ -+/* $Id: menu.priv.h,v 1.24 2012/03/10 23:43:41 tom Exp $ */ - - /*************************************************************************** - * Module menu.priv.h * -@@ -39,6 +39,7 @@ - - #ifndef MENU_PRIV_H_incl - #define MENU_PRIV_H_incl 1 -+/* *INDENT-OFF* */ - - #include "curses.priv.h" - #include "mf_common.h" -@@ -99,10 +100,11 @@ - */ - #define Adjust_Current_Item(menu,row,item) \ - { if ((item)->y < row) \ -- row = (item)->y;\ -- if ( (item)->y >= (row + (menu)->arows) )\ -- row = ( (item)->y < ((menu)->rows - row) ) ? \ -- (item)->y : (menu)->rows - (menu)->arows;\ -+ row = (short) (item)->y; \ -+ if ( (item)->y >= (row + (menu)->arows) ) \ -+ row = (short) (( (item)->y < ((menu)->rows - row) ) \ -+ ? (item)->y \ -+ : (menu)->rows - (menu)->arows); \ - _nc_New_TopRow_and_CurrentItem(menu,row,item); } - - /* Reset the match pattern buffer */ -@@ -152,5 +154,6 @@ - #define returnMenuOpts(code) return code - - #endif /* TRACE/!TRACE */ -+/* *INDENT-ON* */ - - #endif /* MENU_PRIV_H_incl */ -diff -Naur ncurses-5.9/menu/mf_common.h ncurses-5.9.patch/menu/mf_common.h ---- ncurses-5.9/menu/mf_common.h 2005-11-26 16:26:52.000000000 +0100 -+++ ncurses-5.9.patch/menu/mf_common.h 2014-09-01 16:33:22.353792118 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2004,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -30,7 +30,7 @@ - * Author: Juergen Pfeifer, 1995,1997 * - ****************************************************************************/ - --/* $Id: mf_common.h,v 0.22 2005/11/26 15:26:52 tom Exp $ */ -+/* $Id: mf_common.h,v 0.24 2012/06/10 00:06:54 tom Exp $ */ - - /* Common internal header for menu and form library */ - -@@ -63,10 +63,9 @@ - #if USE_RCS_IDS - #define MODULE_ID(id) static const char Ident[] = id; - #else --#define MODULE_ID(id) /*nothing*/ -+#define MODULE_ID(id) /*nothing */ - #endif - -- - /* Maximum regular 8-bit character code */ - #define MAX_REGULAR_CHARACTER (0xff) - -@@ -80,16 +79,19 @@ - #endif - - /* The few common values in the status fields for menus and forms */ --#define _POSTED (0x01U) /* menu or form is posted */ --#define _IN_DRIVER (0x02U) /* menu or form is processing hook routine */ -+#define _POSTED (0x01U) /* menu or form is posted */ -+#define _IN_DRIVER (0x02U) /* menu or form is processing hook routine */ -+ -+#define SetStatus(target,mask) (target)->status |= (unsigned short) (mask) -+#define ClrStatus(target,mask) (target)->status = (unsigned short) (target->status & (~mask)) - - /* Call object hook */ - #define Call_Hook( object, handler ) \ - if ( (object) != 0 && ((object)->handler) != (void *) 0 )\ - {\ -- (object)->status |= _IN_DRIVER;\ -+ SetStatus(object, _IN_DRIVER);\ - (object)->handler(object);\ -- (object)->status &= ~_IN_DRIVER;\ -+ ClrStatus(object, _IN_DRIVER);\ - } - - #endif /* MF_COMMON_H_incl */ -diff -Naur ncurses-5.9/menu/m_format.c ncurses-5.9.patch/menu/m_format.c ---- ncurses-5.9/menu/m_format.c 2010-01-23 22:20:10.000000000 +0100 -+++ ncurses-5.9.patch/menu/m_format.c 2014-09-01 16:33:22.352792116 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - - #include "menu.priv.h" - --MODULE_ID("$Id: m_format.c,v 1.16 2010/01/23 21:20:10 tom Exp $") -+MODULE_ID("$Id: m_format.c,v 1.18 2012/06/09 23:54:02 tom Exp $") - - #define minimum(a,b) ((a)<(b) ? (a): (b)) - -@@ -81,8 +81,8 @@ - if (menu->pattern) - Reset_Pattern(menu); - -- menu->frows = rows; -- menu->fcols = cols; -+ menu->frows = (short)rows; -+ menu->fcols = (short)cols; - - assert(rows > 0 && cols > 0); - total_rows = (menu->nitems - 1) / cols + 1; -@@ -90,21 +90,21 @@ - minimum(menu->nitems, cols) : - (menu->nitems - 1) / total_rows + 1; - -- menu->rows = total_rows; -- menu->cols = total_cols; -- menu->arows = minimum(total_rows, rows); -+ menu->rows = (short)total_rows; -+ menu->cols = (short)total_cols; -+ menu->arows = (short)minimum(total_rows, rows); - menu->toprow = 0; - menu->curitem = *(menu->items); - assert(menu->curitem); -- menu->status |= _LINK_NEEDED; -+ SetStatus(menu, _LINK_NEEDED); - _nc_Calculate_Item_Length_and_Width(menu); - } - else - { - if (rows > 0) -- _nc_Default_Menu.frows = rows; -+ _nc_Default_Menu.frows = (short)rows; - if (cols > 0) -- _nc_Default_Menu.fcols = cols; -+ _nc_Default_Menu.fcols = (short)cols; - } - - RETURN(E_OK); -diff -Naur ncurses-5.9/menu/m_global.c ncurses-5.9.patch/menu/m_global.c ---- ncurses-5.9/menu/m_global.c 2010-01-23 22:20:10.000000000 +0100 -+++ ncurses-5.9.patch/menu/m_global.c 2014-09-01 16:34:19.463887194 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - - #include "menu.priv.h" - --MODULE_ID("$Id: m_global.c,v 1.25 2010/01/23 21:20:10 tom Exp $") -+MODULE_ID("$Id: m_global.c,v 1.28 2014/03/15 20:37:22 tom Exp $") - - static char mark[] = "-"; - /* *INDENT-OFF* */ -@@ -117,17 +117,17 @@ - assert(menu && menu->items); - for (items = menu->items; *items; items++) - { -- check = _nc_Calculate_Text_Width(&((*items)->name)); -+ check = (unsigned)_nc_Calculate_Text_Width(&((*items)->name)); - if (check > MaximumNameLength) - MaximumNameLength = check; - -- check = _nc_Calculate_Text_Width(&((*items)->description)); -+ check = (unsigned)_nc_Calculate_Text_Width(&((*items)->description)); - if (check > MaximumDescriptionLength) - MaximumDescriptionLength = check; - } - -- menu->namelen = MaximumNameLength; -- menu->desclen = MaximumDescriptionLength; -+ menu->namelen = (short)MaximumNameLength; -+ menu->desclen = (short)MaximumDescriptionLength; - T(("ComputeMaximum_NameDesc_Lengths %d,%d", menu->namelen, menu->desclen)); - } - -@@ -195,7 +195,7 @@ - { - (*item)->value = FALSE; - } -- (*item)->index = ItemCount++; -+ (*item)->index = (short)ItemCount++; - (*item)->imenu = menu; - } - } -@@ -206,7 +206,7 @@ - if (ItemCount != 0) - { - menu->items = items; -- menu->nitems = ItemCount; -+ menu->nitems = (short)ItemCount; - ComputeMaximum_NameDesc_Lengths(menu); - if ((menu->pattern = typeMalloc(char, (unsigned)(1 + menu->namelen)))) - { -@@ -256,7 +256,7 @@ - T((T_CALLED("_nc_menu_text_width(%p)"), (const void *)item)); - if (result != 0 && item->str != 0) - { -- int count = mbstowcs(0, item->str, 0); -+ int count = (int)mbstowcs(0, item->str, 0); - wchar_t *temp = 0; - - if (count > 0 -@@ -343,7 +343,7 @@ - - assert(menu); - -- menu->height = 1 + menu->spc_rows * (menu->arows - 1); -+ menu->height = (short)(1 + menu->spc_rows * (menu->arows - 1)); - - l = calculate_actual_width(menu, TRUE); - l += menu->marklen; -@@ -354,10 +354,10 @@ - l += menu->spc_desc; - } - -- menu->itemlen = l; -+ menu->itemlen = (short)l; - l *= menu->cols; - l += (menu->cols - 1) * menu->spc_cols; /* for the padding between the columns */ -- menu->width = l; -+ menu->width = (short)l; - - T(("_nc_CalculateItem_Length_and_Width columns %d, item %d, width %d", - menu->cols, -@@ -388,7 +388,7 @@ - int Last_in_Column; - bool cycle = (menu->opt & O_NONCYCLIC) ? FALSE : TRUE; - -- menu->status &= ~_LINK_NEEDED; -+ ClrStatus(menu, _LINK_NEEDED); - - if (menu->opt & O_ROWMAJOR) - { -@@ -431,8 +431,8 @@ - (cycle ? menu->items[(row + 1) < menu->rows ? - Number_Of_Items - 1 : col] : - (ITEM *) 0); -- item->x = col; -- item->y = row; -+ item->x = (short)col; -+ item->y = (short)row; - if (++col == Number_Of_Columns) - { - row++; -@@ -482,8 +482,8 @@ - (ITEM *) 0 - ); - -- item->x = col; -- item->y = row; -+ item->x = (short)col; -+ item->y = (short)row; - if ((++row) == Number_Of_Rows) - { - col++; -@@ -568,7 +568,9 @@ - - cur_item = menu->curitem; - assert(cur_item); -- menu->toprow = new_toprow; -+ menu->toprow = (short)(((menu->rows - menu->frows) >= 0) -+ ? min(menu->rows - menu->frows, new_toprow) -+ : 0); - menu->curitem = new_current_item; - - if (mterm_called) -@@ -590,7 +592,9 @@ - } - else - { /* if we are not posted, this is quite simple */ -- menu->toprow = new_toprow; -+ menu->toprow = (short)(((menu->rows - menu->frows) >= 0) -+ ? min(menu->rows - menu->frows, new_toprow) -+ : 0); - menu->curitem = new_current_item; - } - } -diff -Naur ncurses-5.9/menu/m_hook.c ncurses-5.9.patch/menu/m_hook.c ---- ncurses-5.9/menu/m_hook.c 2010-01-23 22:16:54.000000000 +0100 -+++ ncurses-5.9.patch/menu/m_hook.c 2014-09-01 16:33:22.352792116 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,13 +37,13 @@ - - #include "menu.priv.h" - --MODULE_ID("$Id: m_hook.c,v 1.15 2010/01/23 21:16:54 tom Exp $") -+MODULE_ID("$Id: m_hook.c,v 1.16 2012/03/10 23:43:41 tom Exp $") - - /* "Template" macro to generate function to set application specific hook */ - #define GEN_HOOK_SET_FUNCTION( typ, name ) \ - NCURSES_IMPEXP int NCURSES_API set_ ## typ ## _ ## name (MENU *menu, Menu_Hook func )\ - {\ -- T((T_CALLED("set_" #typ "_" #name "(%p,%p)"), menu, func));\ -+ T((T_CALLED("set_" #typ "_" #name "(%p,%p)"), (void *) menu, func));\ - (Normalize_Menu(menu) -> typ ## name = func );\ - RETURN(E_OK);\ - } -diff -Naur ncurses-5.9/menu/m_item_new.c ncurses-5.9.patch/menu/m_item_new.c ---- ncurses-5.9/menu/m_item_new.c 2010-01-23 22:20:11.000000000 +0100 -+++ ncurses-5.9.patch/menu/m_item_new.c 2014-09-01 16:33:22.352792116 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -44,7 +44,7 @@ - #endif - #endif - --MODULE_ID("$Id: m_item_new.c,v 1.30 2010/01/23 21:20:11 tom Exp $") -+MODULE_ID("$Id: m_item_new.c,v 1.33 2012/06/09 23:55:15 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnmenu -@@ -62,7 +62,7 @@ - int result = TRUE; - - #if USE_WIDEC_SUPPORT -- int count = mbstowcs(0, s, 0); -+ int count = (int)mbstowcs(0, s, 0); - wchar_t *temp = 0; - - assert(s); -@@ -127,13 +127,13 @@ - { - *item = _nc_Default_Item; /* hope we have struct assignment */ - -- item->name.length = strlen(name); -+ item->name.length = (unsigned short)strlen(name); - item->name.str = name; - - if (description && (*description != '\0') && - Is_Printable_String(description)) - { -- item->description.length = strlen(description); -+ item->description.length = (unsigned short)strlen(description); - item->description.str = description; - } - else -@@ -195,12 +195,12 @@ - NCURSES_EXPORT(int) - set_menu_mark(MENU * menu, const char *mark) - { -- unsigned l; -+ short l; - - T((T_CALLED("set_menu_mark(%p,%s)"), (void *)menu, _nc_visbuf(mark))); - - if (mark && (*mark != '\0') && Is_Printable_String(mark)) -- l = strlen(mark); -+ l = (short)strlen(mark); - else - l = 0; - -@@ -213,7 +213,7 @@ - { - /* If the menu is already posted, the geometry is fixed. Then - we can only accept a mark with exactly the same length */ -- if (menu->marklen != (int)l) -+ if (menu->marklen != l) - RETURN(E_BAD_ARGUMENT); - } - menu->marklen = l; -@@ -222,14 +222,13 @@ - menu->mark = strdup(mark); - if (menu->mark) - { -- strcpy(menu->mark, mark); - if (menu != &_nc_Default_Menu) -- menu->status |= _MARK_ALLOCATED; -+ SetStatus(menu, _MARK_ALLOCATED); - } - else - { - menu->mark = old_mark; -- menu->marklen = (old_mark != 0) ? strlen(old_mark) : 0; -+ menu->marklen = (short)((old_mark != 0) ? strlen(old_mark) : 0); - RETURN(E_SYSTEM_ERROR); - } - } -diff -Naur ncurses-5.9/menu/m_pad.c ncurses-5.9.patch/menu/m_pad.c ---- ncurses-5.9/menu/m_pad.c 2010-01-23 22:20:10.000000000 +0100 -+++ ncurses-5.9.patch/menu/m_pad.c 2014-09-01 16:33:22.352792116 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - - #include "menu.priv.h" - --MODULE_ID("$Id: m_pad.c,v 1.12 2010/01/23 21:20:10 tom Exp $") -+MODULE_ID("$Id: m_pad.c,v 1.13 2012/03/10 23:43:41 tom Exp $") - - /* Macro to redraw menu if it is posted and changed */ - #define Refresh_Menu(menu) \ -@@ -69,7 +69,7 @@ - RETURN(E_BAD_ARGUMENT); - - Normalize_Menu(menu); -- menu->pad = pad; -+ menu->pad = (unsigned char)pad; - - if (do_refresh) - Refresh_Menu(menu); -diff -Naur ncurses-5.9/menu/m_post.c ncurses-5.9.patch/menu/m_post.c ---- ncurses-5.9/menu/m_post.c 2010-05-01 21:18:27.000000000 +0200 -+++ ncurses-5.9.patch/menu/m_post.c 2014-09-01 16:33:22.353792118 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - - #include "menu.priv.h" - --MODULE_ID("$Id: m_post.c,v 1.29 2010/05/01 19:18:27 tom Exp $") -+MODULE_ID("$Id: m_post.c,v 1.31 2012/06/09 23:54:35 tom Exp $") - - /*--------------------------------------------------------------------------- - | Facility : libnmenu -@@ -67,7 +67,7 @@ - - it is a onevalued menu and it is the current item - - or it has a selection value - */ -- wattron(menu->win, menu->back); -+ wattron(menu->win, (int)menu->back); - if (item->value || (item == menu->curitem)) - { - if (menu->marklen) -@@ -79,13 +79,13 @@ - item. */ - if (!(menu->opt & O_ONEVALUE) && item->value && item != menu->curitem) - { -- wattron(menu->win, menu->fore); -+ wattron(menu->win, (int)menu->fore); - isfore = TRUE; - } - waddstr(menu->win, menu->mark); - if (isfore) - { -- wattron(menu->win, menu->fore); -+ wattron(menu->win, (int)menu->fore); - isfore = FALSE; - } - } -@@ -93,7 +93,7 @@ - else /* otherwise we have to wipe out the marker area */ - for (ch = ' ', i = menu->marklen; i > 0; i--) - waddch(menu->win, ch); -- wattroff(menu->win, menu->back); -+ wattroff(menu->win, (int)menu->back); - count += menu->marklen; - - /* First we have to calculate the attribute depending on selectability -@@ -101,19 +101,19 @@ - */ - if (!(item->opt & O_SELECTABLE)) - { -- wattron(menu->win, menu->grey); -+ wattron(menu->win, (int)menu->grey); - isgrey = TRUE; - } - else - { - if (item->value || item == menu->curitem) - { -- wattron(menu->win, menu->fore); -+ wattron(menu->win, (int)menu->fore); - isfore = TRUE; - } - else - { -- wattron(menu->win, menu->back); -+ wattron(menu->win, (int)menu->back); - isback = TRUE; - } - } -@@ -158,10 +158,10 @@ - assert(cx >= 0 && cy >= 0); - getyx(menu->win, ncy, ncx); - if (isgrey) -- wattroff(menu->win, menu->grey); -+ wattroff(menu->win, (int)menu->grey); - else if (isfore) -- wattroff(menu->win, menu->fore); -- wattron(menu->win, menu->back); -+ wattroff(menu->win, (int)menu->fore); -+ wattron(menu->win, (int)menu->back); - for (j = 1; j < menu->spc_rows; j++) - { - if ((item_y + j) < getmaxy(menu->win)) -@@ -175,17 +175,17 @@ - } - wmove(menu->win, ncy, ncx); - if (!isback) -- wattroff(menu->win, menu->back); -+ wattroff(menu->win, (int)menu->back); - } - } - - /* Remove attributes */ - if (isfore) -- wattroff(menu->win, menu->fore); -+ wattroff(menu->win, (int)menu->fore); - if (isback) -- wattroff(menu->win, menu->back); -+ wattroff(menu->win, (int)menu->back); - if (isgrey) -- wattroff(menu->win, menu->grey); -+ wattroff(menu->win, (int)menu->grey); - } - - /*--------------------------------------------------------------------------- -@@ -225,7 +225,7 @@ - { - _nc_Post_Item(menu, hitem); - -- wattron(menu->win, menu->back); -+ wattron(menu->win, (int)menu->back); - if (((hitem = hitem->right) != lasthor) && hitem) - { - int i, j, cy, cx; -@@ -244,7 +244,7 @@ - } - } - while (hitem && (hitem != lasthor)); -- wattroff(menu->win, menu->back); -+ wattroff(menu->win, (int)menu->back); - - item = item->down; - y += menu->spc_rows; -@@ -305,7 +305,7 @@ - else - RETURN(E_NOT_CONNECTED); - -- menu->status |= _POSTED; -+ SetStatus(menu, _POSTED); - - if (!(menu->opt & O_ONEVALUE)) - { -@@ -369,7 +369,7 @@ - delwin(menu->win); - menu->win = (WINDOW *)0; - -- menu->status &= ~_POSTED; -+ ClrStatus(menu, _POSTED); - - RETURN(E_OK); - } -diff -Naur ncurses-5.9/menu/m_req_name.c ncurses-5.9.patch/menu/m_req_name.c ---- ncurses-5.9/menu/m_req_name.c 2009-10-10 18:17:23.000000000 +0200 -+++ ncurses-5.9.patch/menu/m_req_name.c 2014-09-01 16:33:22.353792118 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - - #include "menu.priv.h" - --MODULE_ID("$Id: m_req_name.c,v 1.21 2009/10/10 16:17:23 tom Exp $") -+MODULE_ID("$Id: m_req_name.c,v 1.22 2012/07/21 23:27:32 tom Exp $") - - static const char *request_names[MAX_MENU_COMMAND - MIN_MENU_COMMAND + 1] = - { -@@ -99,23 +99,26 @@ - /* because the table is so small, it doesn't really hurt - to run sequentially through it. - */ -- unsigned int i = 0; -+ size_t i = 0; - char buf[16]; - - T((T_CALLED("menu_request_by_name(%s)"), _nc_visbuf(str))); - -- if (str) -+ if (str != 0 && (i = strlen(str)) != 0) - { -- strncpy(buf, str, sizeof(buf)); -- while ((i < sizeof(buf)) && (buf[i] != '\0')) -+ if (i > sizeof(buf) - 2) -+ i = sizeof(buf) - 2; -+ memcpy(buf, str, i); -+ buf[i] = '\0'; -+ -+ for (i = 0; buf[i] != '\0'; ++i) - { - buf[i] = (char)toupper(UChar(buf[i])); -- i++; - } - - for (i = 0; i < A_SIZE; i++) - { -- if (strncmp(request_names[i], buf, sizeof(buf)) == 0) -+ if (strcmp(request_names[i], buf) == 0) - returnCode(MIN_MENU_COMMAND + (int)i); - } - } -diff -Naur ncurses-5.9/menu/m_spacing.c ncurses-5.9.patch/menu/m_spacing.c ---- ncurses-5.9/menu/m_spacing.c 2010-01-23 22:20:10.000000000 +0100 -+++ ncurses-5.9.patch/menu/m_spacing.c 2014-09-01 16:33:22.353792118 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - - #include "menu.priv.h" - --MODULE_ID("$Id: m_spacing.c,v 1.18 2010/01/23 21:20:10 tom Exp $") -+MODULE_ID("$Id: m_spacing.c,v 1.19 2012/03/10 23:43:41 tom Exp $") - - #define MAX_SPC_DESC ((TABSIZE) ? (TABSIZE) : 8) - #define MAX_SPC_COLS ((TABSIZE) ? (TABSIZE) : 8) -@@ -70,9 +70,9 @@ - ((s_col < 0) || (s_col > MAX_SPC_COLS))) - RETURN(E_BAD_ARGUMENT); - -- m->spc_desc = s_desc ? s_desc : 1; -- m->spc_rows = s_row ? s_row : 1; -- m->spc_cols = s_col ? s_col : 1; -+ m->spc_desc = (short)(s_desc ? s_desc : 1); -+ m->spc_rows = (short)(s_row ? s_row : 1); -+ m->spc_cols = (short)(s_col ? s_col : 1); - _nc_Calculate_Item_Length_and_Width(m); - - RETURN(E_OK); -diff -Naur ncurses-5.9/misc/gen_edit.sh ncurses-5.9.patch/misc/gen_edit.sh ---- ncurses-5.9/misc/gen_edit.sh 2004-07-11 17:01:29.000000000 +0200 -+++ ncurses-5.9.patch/misc/gen_edit.sh 2014-09-01 16:33:22.353792118 +0200 -@@ -1,6 +1,6 @@ - #!/bin/sh - ############################################################################## --# Copyright (c) 2004 Free Software Foundation, Inc. # -+# Copyright (c) 2004-2011,2012 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -29,7 +29,7 @@ - # - # Author: Thomas E. Dickey - # --# $Id: gen_edit.sh,v 1.1 2004/07/11 15:01:29 tom Exp $ -+# $Id: gen_edit.sh,v 1.5 2012/04/01 15:04:37 tom Exp $ - # Generate a sed-script for converting the terminfo.src to the form which will - # be installed. - # -@@ -37,22 +37,82 @@ - # The leaf directory names (lib, tabset, terminfo) - # - --: ${ticdir=@TERMINFO@} --: ${xterm_new=@WHICH_XTERM@} -+linux_dft=linux2.2 -+ -+: ${datadir=/usr/share} -+: ${WHICH_LINUX=$linux_dft} -+: ${WHICH_XTERM=xterm-new} -+: ${XTERM_KBS=BS} - - # If we're not installing into /usr/share/, we'll have to adjust the location - # of the tabset files in terminfo.src (which are in a parallel directory). --TABSET=`echo $ticdir | sed -e 's%/terminfo$%/tabset%'` -+TABSET=${datadir}/tabset - if test "x$TABSET" != "x/usr/share/tabset" ; then - cat <<EOF - s%/usr/share/tabset%$TABSET%g - EOF - fi - --if test "$xterm_new" != "xterm-new" ; then -+if test "$WHICH_XTERM" != "xterm-new" ; then -+echo "** using $WHICH_XTERM terminal description for XTerm entry" >&2 - cat <<EOF - /^# This is xterm for ncurses/,/^$/{ - s/use=xterm-new,/use=$WHICH_XTERM,/ - } - EOF - fi -+ -+if test "$XTERM_KBS" != "BS" ; then -+echo "** using DEL for XTerm backspace-key" >&2 -+cat <<EOF -+/^xterm+kbs|fragment for backspace key/,/^#/{ -+ s/kbs=^H,/kbs=^?,/ -+} -+EOF -+fi -+ -+# Work around incompatibities built into Linux console. The 2.6 series added -+# a patch to fixup the SI/SO behavior, which is closer to vt100, but the older -+# kernels do not recognize those controls. All of the kernels recognize the -+# older flavor of rmacs/smacs, but beginning in the late 1990s, changes made -+# as part of implementing UTF-8 prevent using those for line-drawing when the -+# console is in UTF-8 mode. Taking into account the fact that it took about -+# ten years to provide (and distribute) the 2.6 series' change for SI/SO, the -+# default remains "linux2.2". -+case x$WHICH_LINUX in #(vi -+xauto) -+ system=`uname -s 2>/dev/null` -+ if test "x$system" = xLinux -+ then -+ case x`uname -r` in -+ x1.*) -+ WHICH_LINUX=linux-c -+ ;; -+ x2.[0-4]*) -+ WHICH_LINUX=linux2.2 -+ ;; -+ *) -+ WHICH_LINUX=linux3.0 -+ ;; -+ esac -+ else -+ WHICH_LINUX=$linux_dft -+ fi -+ ;; -+xlinux*) -+ # allow specific setting -+ ;; -+*) -+ WHICH_LINUX=$linux_dft -+ ;; -+esac -+ -+if test $WHICH_LINUX != $linux_dft -+then -+echo "** using $WHICH_LINUX terminal description for Linux console" >&2 -+cat <<EOF -+/^# This is Linux console for ncurses/,/^$/{ -+ s/use=$linux_dft,/use=$WHICH_LINUX,/ -+} -+EOF -+fi -diff -Naur ncurses-5.9/misc/gen-pkgconfig.in ncurses-5.9.patch/misc/gen-pkgconfig.in ---- ncurses-5.9/misc/gen-pkgconfig.in 2010-02-06 23:12:07.000000000 +0100 -+++ ncurses-5.9.patch/misc/gen-pkgconfig.in 2014-09-01 16:33:22.353792118 +0200 -@@ -1,7 +1,7 @@ - #!@SHELL@ --# $Id: gen-pkgconfig.in,v 1.8 2010/02/06 22:12:07 Miroslav.Lichvar Exp $ -+# $Id: gen-pkgconfig.in,v 1.16 2014/01/18 20:21:45 tom Exp $ - ############################################################################## --# Copyright (c) 2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 2009-2013,2014 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -28,7 +28,7 @@ - # authorization. # - ############################################################################## - # --# Author: Thomas E. Dickey, 2009 -+# Author: Thomas E. Dickey - # - # The complete configure script for ncurses is the ncurses5-config (or similar - # name, depending on the flavor, e.g., ncursesw5-config, ncurses6-config, etc). -@@ -39,22 +39,22 @@ - # library, except that the tinfo library does not depend on ncurses. - LIB_NAME=@LIB_NAME@ - TINFO_NAME=@TINFO_NAME@ --PANEL_NAME=panel # @PANEL_NAME@ --MENU_NAME=menu # @MENU_NAME@ --FORM_NAME=form # @FORM_NAME@ --CXX_NAME=ncurses++ # @CXX_NAME@ -+PANEL_NAME=@PANEL_NAME@ -+MENU_NAME=@MENU_NAME@ -+FORM_NAME=@FORM_NAME@ -+CXX_NAME=@CXX_NAME@ - DFT_DEP_SUFFIX=@DFT_DEP_SUFFIX@ - TINFO_ARG_SUFFIX=@TINFO_ARG_SUFFIX@ - CXX_LIB_SUFFIX=@CXX_LIB_SUFFIX@ - - prefix="@prefix@" - exec_prefix="@exec_prefix@" --includedir="@includedir@" -+includedir="@includedir@@includesubdir@" - libdir="@libdir@" - - show_prefix='@prefix@' - show_exec_prefix='@exec_prefix@' --show_includedir='@includedir@' -+show_includedir='@includedir@@includesubdir@' - show_libdir='@libdir@' - - MAIN_LIBRARY="${LIB_NAME}@DFT_ARG_SUFFIX@" -@@ -63,59 +63,42 @@ - MENU_LIBRARY="${MENU_NAME}@DFT_ARG_SUFFIX@" - FORM_LIBRARY="${FORM_NAME}@DFT_ARG_SUFFIX@" - --SUB_LIBRARY_REQ=${SUB_LIBRARY} --if test $TINFO_NAME = $LIB_NAME ; then -- SUB_LIBRARY_REQ= -+if test "$includedir" = "/usr/include" ; then -+ CFLAGS= -+else -+ CFLAGS="-I\${includedir}" - fi - --for lib in ../lib/* --do -- name=`basename $lib` -- if test "$name" = "*" ; then -- break -- fi -- -- root=`basename $name "$DFT_DEP_SUFFIX"` -- if test "$name" = "$root" ; then -- root=`basename $name "$CXX_LIB_SUFFIX"` -- if test "$name" = "$root" ; then -- continue -- fi -- fi -+if test "$libdir" = "/usr/lib" ; then -+ LDFLAGS= -+else -+ LDFLAGS="-L\${libdir}" -+fi - -- name=`echo "$name" | sed -e 's/^lib//' -e 's/\..*$//'` -+for name in @PC_MODULES_TO_MAKE@ -+do -+ name="${name}" - - desc="ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" -+ reqs= -+ - if test $name = $MAIN_LIBRARY ; then -- reqs=$SUB_LIBRARY_REQ - desc="$desc library" - elif test $name = $SUB_LIBRARY ; then -- reqs= - desc="$desc terminal interface library" - elif expr $name : ".*${CXX_NAME}.*" >/dev/null ; then -- reqs="$PANEL_LIBRARY $MENU_LIBRARY $FORM_LIBRARY $MAIN_LIBRARY $SUB_LIBRARY_REQ" -+ reqs="$PANEL_LIBRARY, $MENU_LIBRARY, $FORM_LIBRARY, $MAIN_LIBRARY" - desc="$desc add-on library" - else -- reqs="$MAIN_LIBRARY $SUB_LIBRARY_REQ" -+ reqs="$MAIN_LIBRARY" - desc="$desc add-on library" - fi - -- if test "$includedir" = "/usr/include" ; then -- cflags= -- else -- cflags="-I\${includedir}" -- fi -- -- if test "$libdir" = "/usr/lib" ; then -- libs= -- else -- libs="-L\${libdir}" -- fi -- libs="$libs -l$name" -- -- # add dependencies that pkg-config cannot guess about -- if test -z "$reqs" ; then -- libs="$libs @LIBS@" -+ if test $name != $SUB_LIBRARY && test $SUB_LIBRARY != $MAIN_LIBRARY ; then -+ if test $name != $TINFO_NAME ; then -+ test -n "$reqs" && reqs="$reqs, " -+ reqs="${reqs}${SUB_LIBRARY}" -+ fi - fi - - echo "** creating ${name}.pc" -@@ -130,10 +113,13 @@ - Name: $name - Description: $desc - Version: \${version} --Requires: $reqs --Libs: $libs --Cflags: $cflags -+URL: http://invisible-island.net/ncurses -+Requires.private: $reqs -+Libs: $LDFLAGS -l$name -+Libs.private: @LIBS@ -+Cflags: $CFLAGS - EOF -- # pr -f ${name}.pc -+ -+ #pr -f ${name}.pc - done - # vile:shmode -diff -Naur ncurses-5.9/misc/Makefile.in ncurses-5.9.patch/misc/Makefile.in ---- ncurses-5.9/misc/Makefile.in 2011-02-21 02:09:31.000000000 +0100 -+++ ncurses-5.9.patch/misc/Makefile.in 2014-09-01 16:33:22.353792118 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.56 2011/02/21 01:09:31 tom Exp $ -+# $Id: Makefile.in,v 1.61 2013/08/04 20:23:20 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -56,7 +56,11 @@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ - libdir = @libdir@ -+datarootdir = @datarootdir@ - datadir = @datadir@ -+includesubdir = @includesubdir@ -+ -+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir) - - tabsetdir = $(datadir)/tabset - ticdir = @TERMINFO@ -@@ -120,7 +124,8 @@ - - run_tic.sed : - WHICH_XTERM=@WHICH_XTERM@ \ -- ticdir=${ticdir} \ -+ XTERM_KBS=@XTERM_KBS@ \ -+ datadir=${datadir} \ - $(SHELL) $(srcdir)/gen_edit.sh >$@ - - $(DESTDIR)$(bindir) \ -@@ -139,7 +144,7 @@ - - uninstall.libs : - -rm -f $(DESTDIR)$(bindir)/$(NCURSES_CONFIG) --@MAKE_PC_FILES@ $(SHELL) 'for name in *.pc; do rm -f $(DESTDIR)$(PKG_CONFIG_LIBDIR)/$$name; done' -+@MAKE_PC_FILES@ $(SHELL) -c 'for name in *.pc; do rm -f $(DESTDIR)$(PKG_CONFIG_LIBDIR)/$$name; done' - - tags : - -diff -Naur ncurses-5.9/misc/ncurses-config.in ncurses-5.9.patch/misc/ncurses-config.in ---- ncurses-5.9/misc/ncurses-config.in 2011-03-19 23:43:38.000000000 +0100 -+++ ncurses-5.9.patch/misc/ncurses-config.in 2014-09-01 16:33:22.354792119 +0200 -@@ -1,7 +1,7 @@ - #!@SHELL@ --# $Id: ncurses-config.in,v 1.25 2011/03/19 22:43:38 tom Exp $ -+# $Id: ncurses-config.in,v 1.30 2012/11/11 00:14:28 tom Exp $ - ############################################################################## --# Copyright (c) 2006-2010,2011 Free Software Foundation, Inc. # -+# Copyright (c) 2006-2011,2012 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -30,22 +30,48 @@ - # - # Author: Thomas E. Dickey, 2006-on - -+LANG=C; export LANG -+LANGUAGE=C; export LANGUAGE -+LC_ALL=C; export LC_ALL -+LC_CTYPE=C; export LC_CTYPE -+ - prefix="@prefix@" - exec_prefix="@exec_prefix@" - - bindir="@bindir@" - includedir="@includedir@" - libdir="@libdir@" -+datarootdir="@datarootdir@" - datadir="@datadir@" - mandir="@mandir@" - - THIS="@LIB_NAME@@DFT_ARG_SUFFIX@" - TINFO_LIB="@TINFO_ARG_SUFFIX@" -+RPATH_LIST="@RPATH_LIST@" - --LANG=C; export LANG --LANGUAGE=C; export LANGUAGE --LC_ALL=C; export LC_ALL --LC_CTYPE=C; export LC_CTYPE -+# Ensure that RPATH_LIST contains only absolute pathnames, if it is nonempty. -+# We cannot filter it out within the build-process since the variable is used -+# in some special cases of installation using a relative path. -+if test -n "$RPATH_LIST" -+then -+ save_IFS="$IFS" -+ IFS='@PATH_SEPARATOR@' -+ filtered= -+ for item in $RPATH_LIST -+ do -+ case "$item" in -+ ./*|../*|*/..|*/../*) -+ ;; -+ *) -+ test -n "$filtered" && filtered="${filtered}@PATH_SEPARATOR@" -+ filtered="${filtered}${item}" -+ ;; -+ esac -+ done -+ IFS="$save_IFS" -+ # if the result is empty, there is little we can do to fix it -+ RPATH_LIST="$filtered" -+fi - - # with --disable-overwrite, we installed into a subdirectory, but transformed - # the headers to include like this: -@@ -83,13 +109,19 @@ - ENDECHO - ;; - --libs) -+ if test "$libdir" = /usr/lib -+ then -+ LIBDIR= -+ else -+ LIBDIR=-L$libdir -+ fi - if test @TINFO_NAME@ = @LIB_NAME@ ; then - sed -e 's,^[ ]*,,' -e 's, [ ]*, ,g' -e 's,[ ]*$,,' <<-ENDECHO -- -L$libdir @EXTRA_LDFLAGS@ -l${THIS} @LIBS@ -+ $LIBDIR @EXTRA_LDFLAGS@ -l${THIS} @LIBS@ - ENDECHO - else - sed -e 's,^[ ]*,,' -e 's, [ ]*, ,g' -e 's,[ ]*$,,' <<-ENDECHO -- -L$libdir @EXTRA_LDFLAGS@ -l${THIS} -l${TINFO_LIB} @LIBS@ -+ $LIBDIR @EXTRA_LDFLAGS@ -l${THIS} -l${TINFO_LIB} @LIBS@ - ENDECHO - fi - ;; -@@ -163,4 +195,5 @@ - esac - shift - done -+# vi:ts=4 sw=4 - # vile:shmode -diff -Naur ncurses-5.9/misc/run_tic.in ncurses-5.9.patch/misc/run_tic.in ---- ncurses-5.9/misc/run_tic.in 2011-02-24 00:30:15.000000000 +0100 -+++ ncurses-5.9.patch/misc/run_tic.in 2014-09-01 16:33:22.354792119 +0200 -@@ -1,7 +1,7 @@ - #!@SHELL@ --# $Id: run_tic.in,v 1.32 2011/02/23 23:30:15 tom Exp $ -+# $Id: run_tic.in,v 1.34 2012/10/06 19:00:51 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -41,13 +41,14 @@ - # The script is designed to be run from the misc/Makefile as - # make install.data - --: ${suffix:=@PROG_EXT@} -+: ${suffix:=@EXEEXT@} - : ${DESTDIR:=@DESTDIR@} - : ${prefix:=@prefix@} - : ${exec_prefix:=@exec_prefix@} - : ${bindir:=@bindir@} - : ${top_srcdir:=@top_srcdir@} - : ${srcdir:=@srcdir@} -+: ${datarootdir:=@datarootdir@} - : ${datadir:=@datadir@} - : ${TIC_PATH:=@TIC_PATH@} - : ${ticdir:=@TERMINFO@} -diff -Naur ncurses-5.9/misc/terminfo.src ncurses-5.9.patch/misc/terminfo.src ---- ncurses-5.9/misc/terminfo.src 2011-02-20 21:46:53.000000000 +0100 -+++ ncurses-5.9.patch/misc/terminfo.src 2014-09-01 16:34:19.496887069 +0200 -@@ -6,8 +6,8 @@ - # Report bugs and new terminal descriptions to - # bug-ncurses@gnu.org - # --# $Revision: 1.383 $ --# $Date: 2011/02/20 20:46:53 $ -+# $Revision: 1.487 $ -+# $Date: 2014/03/23 20:45:15 $ - # - # 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 -@@ -321,7 +321,7 @@ - # DEL and ^C are hardcoded to act as kill characters. - # ^D acts as a line break (just like newline). - # It also interprets --# \033];xxx\007 -+# \033];xxx\007 - # for compatibility with xterm -TD - 9term|Plan9 terminal emulator for X, - am, -@@ -376,11 +376,19 @@ - dim=\E[2m, - sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p5%t2;%;%?%p7%t8;%;m, - use=ansi+sgr, use=ansi+sgrso, use=ansi+sgrul, --ansi+pp|ansi printer port, -- mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, - ansi+csr|ansi scroll-region plus cursor save & restore, - csr=\E[%i%p1%d;%p2%dr, rc=\E8, sc=\E7, - -+# The normal (ANSI) flavor of "media copy" building block asserts that -+# characters sent to the printer do not echo on the screen. DEC terminals -+# can also be put into autoprinter mode, where each line is sent to the -+# printer as you move off that line, e.g., by a carriage return. -+ansi+pp|ansi printer port, -+ mc5i, -+ mc0=\E[i, mc4=\E[4i, mc5=\E[5i, -+dec+pp|DEC autoprinter mode, -+ mc0=\E[i, mc4=\E[?4i, mc5=\E[?5i, -+ - # The IBM PC alternate character set. Plug this into any Intel console entry. - # We use \E[11m for rmacs rather than \E[12m so the <acsc> string can use the - # ROM graphics for control characters such as the diamond, up- and down-arrow. -@@ -456,9 +464,10 @@ - cud=\E[%p1%dB, cud1=\E[1B, cuf=\E[%p1%dC, cuf1=\E[1C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[1A, - dch=\E[%p1%dP, dispc=\E=%p1%dg, ech=\E[%p1%dX, -- hpa=\E[%i%p1%dG, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, -- indn=\E[%p1%dS, rc=\E7, rin=\E[%p1%dT, rmam=\E[?7l, sc=\E7, -- smam=\E[?7h, tbc=\E[g, vpa=\E[%i%p1%dd, -+ hpa=\E[%i%p1%dG, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -+ il=\E[%p1%dL, indn=\E[%p1%dS, rc=\E7, rin=\E[%p1%dT, -+ rmam=\E[?7l, sc=\E7, smam=\E[?7h, tbc=\E[g, -+ vpa=\E[%i%p1%dd, - - #### ANSI/ECMA-48 terminals and terminal emulators - # -@@ -488,7 +497,7 @@ - # ansi-mtabs adds relative addressing and minimal tab support - ansi-mtabs|any ansi terminal with pessimistic assumptions, - it#8, -- ht=^I, use=ansi+local1, use=ansi-mini, -+ ht=^I, use=ansi-mini, use=ansi+local1, - - # ANSI X3.64 from emory!mlhhh (Hugh Hansard) via BRL - # -@@ -655,7 +664,7 @@ - kf42=\0m, kf43=\0n, kf44=\0o, kf45=\0p, kf46=\0q, - kf47=\0\213, kf48=\0\214, kf5=\0?, kf6=\0@, kf7=\0A, kf8=\0B, - kf9=\0C, khome=\0G, kich1=\0R, knp=\0Q, kpp=\0I, -- pfkey=\E[0;%?%p1%{11}%<%t%'\:'%e%?%p1%{13}%<%t%'z'%e%?%p1%{23}%<%t%'G'%e%?%p1%{25}%<%t%'p'%e%?%p1%'#'%<%t%'E'%e%?%p1%'%'%<%t%'f'%e%?%p1%'/'%<%t%'C'%e%{92}%;%;%;%;%;%;%;%p1%+%d;%p2"%s"p, -+ pfkey=\E[0;%?%p1%{11}%<%t%'\:'%e%p1%{13}%<%t%'z'%e%p1%{23}%<%t%'G'%e%p1%{25}%<%t%'p'%e%p1%'#'%<%t%'E'%e%p1%'%'%<%t%'f'%e%p1%'/'%<%t%'C'%e%{92}%;%p1%+%d;%p2"%s"p, - use=ansi.sys-old, - - # -@@ -689,12 +698,8 @@ - is2=U4 PC-DOS Public Domain NANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p, - use=ansi.sysk, - --#### ANSI console types --# -+#### Atari ST terminals - --############################################################################# --# --# Atari ST terminals. - # From Guido Flohr <gufl0000@stud.uni-sb.de>. - # - tw52|tw52-color|Toswin window manager with color, -@@ -799,9 +804,6 @@ - rmul=\EzH, rs1=\Ez_\Eb@\EcA, sgr0=\Ez_, smcup=\Ev\Ee\Ez_, - smso=\Ep, smul=\EyH, - --#### Atari ST --# -- - # From: Simson L. Garfinkel <simsong@media-lab.mit.edu> - atari-old|atari st, - OTbs, am, -@@ -835,16671 +837,16976 @@ - ri=\EI, rmcup=, rmso=\Eq, rs1=\Ez_\Eb@\EcA, sc=\Ej, sgr0=\Eq, - smcup=\Ee, smso=\Ep, - --#### BeOS --# --# BeOS entry for Terminal program Seems to be almost ANSI --beterm|BeOS Terminal, -- am, eo, mir, msgr, xenl, xon, -- colors#8, cols#80, it#8, lines#25, ncv#5, pairs#64, -- bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, -- hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, -- kend=\E[4~, kf1=\E[11~, kf10=\E[20~, kf11=\E[21~, -- kf12=\E[22~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, -- kf5=\E[15~, kf6=\E[16~, kf7=\E[17~, kf8=\E[18~, kf9=\E[19~, -- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kspd=^Z, -- nel=^M^J, op=\E[m, rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l, -- rmkx=\E[?4l, rmso=\E[m, rmul=\E[24m, rs1=\Ec, sc=\E7, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- setb=\E[%p1%{40}%+%cm, setf=\E[%p1%{30}%+%cm, -- sgr0=\E[0;10m, smir=\E[4h, smkx=\E[?4h, smso=\E[7m, -- smul=\E[4m, u6=\E[%i%p1%d;%p2%dR, u7=\E[6n, -- vpa=\E[%i%p1%dd, -- --#### Linux consoles --# -+#### Apple Terminal.app - --# This entry is good for the 1.2.13 or later version of the Linux console. -+# nsterm*|Apple_Terminal - AppKit Terminal.app - # --# *************************************************************************** --# * * --# * WARNING: * --# * Linuxes come with a default keyboard mapping kcbt=^I. This entry, in * --# * response to user requests, assumes kcbt=\E[Z, the ANSI/ECMA reverse-tab * --# * character. Here are the keymap replacement lines that will set this up: * --# * * --# keycode 15 = Tab Tab --# alt keycode 15 = Meta_Tab --# shift keycode 15 = F26 --# string F26 ="\033[Z" --# * * --# * This has to use a key slot which is unfortunate (any unused one will * --# * do, F26 is the higher-numbered one). The change ought to be built * --# * into the kernel tables. * --# * * --# *************************************************************************** -+# Terminal.app is a Terminal emulator bundled with NeXT's NeXTStep and -+# OPENSTEP/Mach operating systems, and with Apple's Rhapsody, Mac OS X -+# Server and Mac OS X operating systems. There is also a -+# "terminal.app" in GNUStep, but I believe it to be an unrelated -+# codebase and I have not attempted to describe it here. - # --# All linux kernels since 1.2.13 (at least) set the screen size --# themselves; this entry assumes that capability. -+# For NeXTStep, OPENSTEP/Mach, Rhapsody and Mac OS X Server 1.0, you -+# are pretty much on your own. Use "nsterm-7-m" and hope for the best. -+# You might also try "nsterm-7" and "nsterm-old" if you suspect your -+# version supports color. - # --linux-basic|linux console, -- am, bce, eo, mir, msgr, xenl, xon, -- it#8, ncv#18, U8#1, -- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -- bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -- dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, -- el=\E[K, el1=\E[1K, flash=\E[?5h\E[?5l$<200/>, home=\E[H, -- hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, kb2=\E[G, kbs=\177, -- kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, -- kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D, -- kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -- kspd=^Z, nel=^M^J, rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, -- rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, sc=\E7, -- sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, -- smam=\E[?7h, smir=\E[4h, smul=\E[4m, tbc=\E[3g, -- vpa=\E[%i%p1%dd, use=vt102+enq, use=klone+sgr, -- use=ecma+color, -- --linux-m|Linux console no color, -- colors@, pairs@, -- setab@, setaf@, setb@, setf@, use=linux, -- --# The 1.3.x kernels add color-change capabilities; if yours doesn't have this --# and it matters, turn off <ccc>. The %02x escape used to implement this is --# not supposedly back-portable to older SV curses (although it has worked fine --# on Solaris for several years) and not supported in ncurses versions before --# 1.9.9. --linux-c-nc|linux console with color-change, -- ccc, -- initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x, -- oc=\E]R, use=linux-basic, --# From: Dennis Henriksen <opus@osrl.dk>, 9 July 1996 --linux-c|linux console 1.3.6+ for older ncurses, -- ccc, -- initc=\E]P%?%p1%{9}%>%t%p1%{10}%-%'a'%+%c%e%p1%d%;%p2%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%p3%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%p4%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;, -- oc=\E]R, use=linux-basic, -- --# The 2.2.x kernels add a private mode that sets the cursor type; use that to --# get a block cursor for cvvis. --# reported by Frank Heckenbach <frank@g-n-u.de>. --linux|linux console, -- civis=\E[?25l\E[?1c, cnorm=\E[?25h\E[?0c, -- cvvis=\E[?25h\E[?8c, use=linux-c-nc, -- --# Subject: linux 2.6.26 vt back_color_erase --# Changes to the Linux console driver broke bce model as reported in --# https://bugzilla.novell.com/show_bug.cgi?id=418613 --# apparently from --# http://lkml.org/lkml/2008/4/26/305 --# http://groups.google.com/group/fa.linux.kernel/browse_thread/thread/87f98338f0d636bb/aa96e8b86cee0d1e?lnk=st&q=#aa96e8b86cee0d1e --linux2.6.26|linux console w/o bce, -- bce@, use=linux, -- --# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file --linux-nic|linux with ich/ich1 suppressed for non-curses programs, -- ich@, ich1@, use=linux, -- --# This assumes you have used setfont(8) to load one of the Linux koi8-r fonts. --# acsc entry from Pavel Roskin" <pavel@absolute.spb.su>, 29 Sep 1997. --linux-koi8|linux with koi8 alternate character set, -- acsc=+\020\,\021-\030.^Y0\215`\004a\221f\234g\237h\220i\276j\205k\203l\202m\204n\212o~p\0q\0r\0s_t\206u\207v\211w\210x\201y\230z\231{\267|\274~\224, -- use=linux, use=klone+koi8acs, -- --# Another entry for KOI8-r with Qing Long's acsc. --# (which one better complies with the standard?) --linux-koi8r|linux with koi8-r alternate character set, -- use=linux, use=klone+koi8acs, -- --# Entry for the latin1 and latin2 fonts --linux-lat|linux with latin1 or latin2 alternate character set, -- acsc=+\020\,\021-\030.^Y0\333`\004a\013f\370g\361h\260i\316j\211k\214l\206m\203n\305o~p\304q\212r\304s_t\207u\215v\301w\302x\205y\363z\362{\343|\330}\234~\376, -- use=linux, -- --# This uses graphics from VT codeset instead of from cp437. --# reason: cp437 (aka "straight to font") is not functional under luit. --# from: Andrey V Lukyanov <land@long.yar.ru>. --linux-vt|linux console using VT codes for graphics, -- acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~, -- rmacs=\E(K, rmpch@, sgr@, sgr0=\E[0m\E(K\017, smacs=\E(0, -- smpch@, use=linux, -- --# This is based on the Linux console (relies on the console to perform some --# of the functionality), but does not recognize as many control sequences. --# The program comes bundled with an old (circa 1998) copy of the Linux --# console terminfo. It recognizes some non-ANSI/VT100 sequences such as --# \E* move cursor to home, as as \E[H --# \E,X same as \E(X --# \EE move cursor to beginning of row --# \E[y,xf same as \E[y,xH -+# To determine the version of Terminal.app you're using by running: - # --# Note: The status-line support is buggy (dsl does not work). --kon|kon2|jfbterm|Kanji ON Linux console, -- ccc@, hs, -- civis@, cnorm@, cvvis@, dsl=\E[?H, flash@, fsl=\E[?F, initc@, -- initp@, kcbt@, oc@, op=\E[37;40m, rs1=\Ec, tsl=\E[?T, -- use=linux, -- --# 16-color linux console entry; this works with a 256-character --# console font but bright background colors turn into dim ones when --# you use a 512-character console font. This uses bold for bright --# foreground colors and blink for bright background colors. --linux-16color|linux console with 16 colors, -- colors#16, ncv#54, pairs#256, -- setab=\E[4%p1%{8}%m%d%?%p1%{8}%>%t;5%e%p1%{8}%=%t;2%e;25%;m, -- setaf=\E[3%p1%{8}%m%d%?%p1%{8}%>%t;1%e%p1%{8}%=%t;2%e;21%;m, -- use=linux, -- --# bterm (bogl 0.1.18) --# Implementation is in bogl-term.c --# Key capabilities from linux terminfo entry -+# echo "$TERM_PROGRAM" "$TERM_PROGRAM_VERSION" - # --# Notes: --# bterm only supports acs using wide-characters, has case for these: qjxamlkut --# bterm does not support sgr, since it only processes one parameter -TD --bterm|bogl virtual terminal, -- am, bce, -- colors#8, cols#80, lines#24, pairs#64, -- acsc=aajjkkllmmqqttuuxx, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, cub1=^H, cud1=^J, -- cup=\E[%i%p1%d;%p2%dH, ed=\E[J, el=\E[K, home=\E[H, ind=^J, -- kb2=\E[G, kbs=\177, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, -- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -- kf18=\E[32~, kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, -- kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, -- kmous=\E[M, knp=\E[6~, kpp=\E[5~, kspd=^Z, nel=^M^J, -- op=\E49;39m, rev=\E[7m, ri=\EM, rmacs=^O, rmso=\E[27m, -- rmul=\E[24m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr0=\E[0m, smacs=^N, smso=\E[7m, smul=\E[4m, -- --#### Mach -+# For Apple_Terminal v309+, use "nsterm-256color" (or "nsterm-bce") - # -- --# From: Matthew Vernon <mcv21@pick.sel.cam.ac.uk> --mach|Mach Console, -- am, km, -- cols#80, it#8, lines#25, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=^M, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=^J, -- kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[9, kend=\E[Y, kf1=\EOP, kf10=\EOY, kf2=\EOQ, -- kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, -- kf9=\EOX, khome=\E[H, kich1=\E[@, kll=\E[F, knp=\E[U, -- kpp=\E[V, rev=\E[7m, rmso=\E[0m, rmul=\E[24m, sgr0=\E[0m, -- smso=\E[7m, smul=\E[4m, --mach-bold|Mach Console with bold instead of underline, -- rmul=\E[0m, smul=\E[1m, use=mach, --mach-color|Mach Console with ANSI color, -- colors#8, pairs#64, -- dim=\E[2m, invis=\E[8m, op=\E[37;40m, rmso=\E[27m, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=mach, -- --# From: Marcus Brinkmann --# http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/hurd/hurd/console/ -+# For Apple_Terminal v200+, use "nsterm-16color" (a.k.a. "nsterm") - # --# Comments in the original are summarized here: -+# For Apple_Terminal v71+/v100+, use "nsterm-bce". - # --# hurd uses 8-bit characters (km). -+# For Apple_Terminal v51+, use "nsterm-7-c" or "nsterm-7-c-s". - # --# Although it doesn't do XON/XOFF, we don't want padding characters (xon). -+# For Apple_Terminal v41+, use "nsterm-old", or "nsterm-s". - # --# Regarding compatibility to vt100: hurd doesn't specify <xenl>, as we don't --# have the eat_newline_glitch. It doesn't support setting or removing tab --# stops (hts/tbc). -+# For all earlier versions (Apple_Terminal), try "nsterm-7-m" -+# (monochrome) or "nsterm-7" (color); "nsterm-7-m-s" and "nsterm-7-s" -+# might work too, but really you're on your own here since these -+# systems are very obsolete and I can't test them. I do welcome -+# patches, though :). -+ -+# Other Terminals: - # --# hurd uses ^H instead of \E[D for cub1, as only ^H implements <bw> and it is --# one byte instead three. -+# For GNUstep_Terminal, you're probably best off using "linux" or -+# writing your own terminfo. -+ -+# For MacTelnet, you're on your own. It's a different codebase, and -+# seems to be somewhere between "vt102", "ncsa" and "xterm-color". -+ -+# For iTerm.app, see "iterm". -+ - # --# <ich1> is not included because hurd has insert mode. -+# The AppKit Terminal.app descriptions all have names beginning with -+# "nsterm". Note that the statusline (-s) versions use the window -+# titlebar as a phony status line, and may produce warnings during -+# compilation as a result ("tsl uses 0 parameters, expected 1".) -+# Ignore these warnings, or even ignore these entries entirely. Apps -+# which need to position the cursor or do other fancy stuff inside the -+# status line won't work with these entries. They're primarily useful -+# for programs like Pine which provide simple notifications in the -+# status line. Please note that non-ASCII characters don't work right -+# in the status line, since Terminal.app incorrectly interprets their -+# Unicode codepoints as MacRoman codepoints (in earlier Mac OS X -+# versions) or only accepts status lines consisting entirely of -+# characters from the first 256 Unicode positions (including C1 but -+# not C0 or DEL.) - # --# hurd doesn't use ^J for scrolling, because this could put things into the --# scrollback buffer. -+# The Mythology* of AppKit Terminal.app: - # --# gsbom/grbom are used to enable/disable real bold (not intensity bright) mode. --# This is a GNU extension. -+# In the days of NeXTSTep 0.x and 1.x there were two incompatible -+# bundled terminal emulators, Shell and Terminal. Scott Hess wrote a -+# shareware replacement for Terminal called "Stuart" which NeXT bought -+# and used as the basis for the Terminal.app in NeXTstep 2+, -+# OPENSTEP/Mach, Apple Rhapsody, Mac OS X Server 1.0, and Mac OS X. I -+# don't know the TERM_PROGRAM and TERM_PROGRAM_VERSION settings or -+# capabilities for the early versions, but I believe that the -+# TERM_PROGRAM_VERSION may have been reset at some point. - # --# The original has commented-out ncv, but is restored here. -+# The early versions were tailored to the NeXT character set. Sometime -+# after the Apple aquisition the encoding was swiched to MacRoman -+# (initally with serious altcharset bugs due to incomplete conversion -+# of the old NeXT code,) and then later to UTF-8. Alos sometime during -+# or just prior to the early days of Mac OS X, the Terminal grew ANSI -+# 8-color support (initially buggy when combined with attributes, but -+# that was later fixed.) More recently, around Mac OS X version 10.3 -+# or so (Terminal.app v100+) xterm-like 16-color support was added. In -+# some versions (for instance 133-1 which shipped with Mac OS X -+# version 10.4) this suffered from the <bce> bug, but that seems to -+# have been fixed in Mac OS X version 10.5 (Terminal.app v240.2+). - # --# Reading the source, RIS resets cnorm, but not xmous. --hurd|The GNU Hurd console server, -- am, bce, bw, eo, km, mir, msgr, xon, -- colors#8, it#8, ncv#18, pairs#64, -- acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\Ec, cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[34l, dch=\E[%p1%dP, -- dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, -- ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, flash=\Eg, -- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, -- il=\E[%p1%dL, il1=\E[L, ind=\E[S, indn=\E[%p1%dS, -- invis=\E[8m, kb2=\E[G, kbs=\177, kcbt=\E[Z, kcub1=\EOD, -- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, -- kend=\E[4~, kf1=\EOP, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -- kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf5=\E[15~, -- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -- kspd=^Z, nel=^M^J, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\E[T, -- rin=\E[%p1%dT, ritm=\E[23m, rmacs=\E[10m, rmir=\E[4l, -- rmso=\E[27m, rmul=\E[24m, rs1=\EM\E[?1000l, sc=\E7, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, -- sgr0=\E[0m, sitm=\E[3m, smacs=\E[11m, smir=\E[4h, -- smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, grbom=\E[>1l, -- gsbom=\E[>1h, -- --#### OSF Unix -+# In the early days of Mac OS X the terminal was fairly buggy and -+# would routinely crash under load. Many of these bugs seem to have -+# been fixed around Mac OS X version 10.3 (Terminal.app v100+) but -+# some may still remain. This change seems to correspond to -+# Terminal.app reporting "xterm-color" as $TERM rather than "vt100" as -+# it did previously. - # -- --# OSF/1 1.1 Snapshot 2 --pmcons|pmconsole|PMAX console, -- am, -- cols#128, lines#57, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuu1=^K, ht=^I, -- ind=^J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -- --# SCO console and SOS-Syscons console for 386bsd --# (scoansi: had unknown capabilities --# :Gc=N:Gd=K:Gh=M:Gl=L:Gu=J:Gv=\072:\ --# :GC=E:GD=B:GH=D:GL=\64:GU=A:GV=\63:GR=C: --# :G1=?:G2=Z:G3=@:G4=Y:G5=;:G6=I:G7=H:G8=<:\ --# :CW=\E[M:NU=\E[N:RF=\E[O:RC=\E[P:\ --# :WL=\E[S:WR=\E[T:CL=\E[U:CR=\E[V:\ --# I renamed GS/GE/HM/EN/PU/PD/RT and added klone+sgr-dumb, based --# on the <smacs>=\E[12m -- esr) -+# * This may correspond with what actually happened, but I don't -+# know. It is based on guesswork, hearsay, private correspondence, -+# my faulty memory, and the following online sources and references: - # --# klone+sgr-dumb is an error since the acsc does not match -TD -+# [1] "Three Scotts and a Duane" by Simson L. Garfinkel -+# http://www.nextcomputers.org/NeXTfiles/Articles/NeXTWORLD/93.8/93.8.Dec.Community1.html - # --# In this description based on SCO's keyboard(HW) manpage list of default --# function key values: --# F13-F24 are shifted F1-F12 --# F25-F36 are control F1-F12 --# F37-F48 are shift+control F1-F12 -+# [2] NeXTSTEP entry from Wikipedia, the free encyclopedia -+# https://secure.wikimedia.org/wikipedia/en/wiki/Nextstep - # --# hpa/vpa work in the console, but not in scoterm: --# hpa=\E[%p1%dG, --# vpa=\E[%p1%dd, -+# * Renamed the AppKit Terminal.app entry from "Apple_Terminal" to -+# "nsterm" to comply with the name length and case conventions and -+# limitations of various software packages [notably Solaris terminfo -+# and UNIX.] A single Apple_Terminal alias is retained for -+# backwards-compatbility. - # --# SCO's terminfo uses --# kLFT=\E[d, --# kRIT=\E[c, --# which do not work (console or scoterm). -+# * Added function key support (F1-F4). These only work in Terminal.app -+# version 51, hopefully the capabilities won't cause problems for people -+# using version 41. - # --# Console documents only 3 attributes can be set with SGR (so we don't use sgr). --scoansi-old|SCO Extended ANSI standard crt (5.0.5), -- OTbs, am, bce, eo, xon, -- colors#8, cols#80, it#8, lines#25, pairs#64, -- acsc=+/\,.-\230.\2310[5566778899\:\:;;<<==>>FFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXX`\204a0fxgqh2jYk?lZm@nEqDtCu4vAwBx3yszr{c}\034~\207, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -- civis=\E[=14;12C, clear=\E[H\E[2J, cnorm=\E[=10;12C, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[=0;12C, dch=\E[%p1%dP, -- dch1=\E[P, dispc=\E[=%p1%dg, dl=\E[%p1%dM, dl1=\E[M, -- ed=\E[m\E[J, el=\E[m\E[K, el1=\E[1K, home=\E[H, ht=^I, -- hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, -- ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, kbeg=\E[E, kbs=^H, -- kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W, -- kf12=\E[X, kf13=\E[Y, kf15=\E[a, kf16=\E[b, kf17=\E[c, -- kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f, kf21=\E[g, -- kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k, kf26=\E[l, -- kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O, kf30=\E[p, -- kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t, kf35=\E[u, -- kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y, kf4=\E[P, -- kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\, kf44=\E[], -- kf45=\E[\^, kf46=\E[_, kf47=\E[`, kf48=\E[{, kf5=\E[Q, -- kf6=\E[R, kf7=\E[S, kf8=\E[T, kf9=\E[U, khome=\E[H, -- kich1=\E[L, knp=\E[G, kpp=\E[I, op=\E[0;37;40m, rc=\E8, -- rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmacs=\E[10m, -- rmam=\E[?7l, rmso=\E[m, rmul=\E[m, sc=\E7, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0;10m, -- smacs=\E[12m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, --scoansi-new|SCO Extended ANSI standard crt (5.0.6), -- km, -- civis=\E[=0c, cnorm=\E[=1c, csr=\E[%i%p1%d;%p2%dr, -- cvvis=\E[=2c, mgc=\E[=r, oc=\E[51m, op=\E[50m, -- rep=\E[%p1%d;%p2%db, rmm=\E[=11L, -- sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m, -- smgb=\E[=1;0m, smgbp=\E[=1;%i%p1%dm, -- smglp=\E[=2;%i%p1%dm, smgr=\E[=3;0m, -- smgrp=\E[=3;%i%p1%dm, smgt=\E[=0;0m, -- smgtp=\E[=0;%i%p1%dm, smm=\E[=10L, -- wind=\E[%i%p1%d;%p2%d;%i%p3%d;%p4%dr, -- use=scoansi-old, --# make this easy to change... --scoansi|SCO Extended ANSI standard crt, -- use=scoansi-old, -- --# This actually describes the generic SVr4 display driver for Intel boxes. --# The <dim=\E[2m> isn't documented and therefore may not be reliable. --# From: Eric Raymond <esr@snark.thyrsus.com> Mon Nov 27 19:00:53 EST 1995 --att6386|at386|386at|AT&T WGS 6386 console, -- am, bw, eo, xon, -- cols#80, it#8, lines#25, -- acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[=C, -- clear=\E[2J\E[H, cnorm=\E[=1C, cr=^M, cub=\E[%p1%dD, -- cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -- cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -- dl=\E[%p1%dM, dl1=\E[1M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -- ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, ind=\E[S, -- indn=\E[%p1%dS, invis=\E[9m, is2=\E[0;10;39m, kbs=^H, -- kcbt=^], kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[P, kend=\E[Y, kf1=\EOP, kf10=\EOY, kf11=\EOZ, -- kf12=\EOA, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, -- kf7=\EOV, kf8=\EOW, kf9=\EOX, khome=\E[H, kich1=\E[@, -- knp=\E[U, kpp=\E[V, krmir=\E0, nel=\r\E[S, rc=\E8, rev=\E[7m, -- ri=\E[T, rin=\E[%p1%dT, rmacs=\E[10m, rmso=\E[m, rmul=\E[m, -- sc=\E7, -- sgr=\E[10m\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p9%t;12%e;10%;%?%p7%t;9%;m, -- sgr0=\E[0;10m, smacs=\E[12m, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, vpa=\E[%i%p1%dd, use=klone+color, --# (pc6300plus: removed ":KM=/usr/lib/ua/kmap.s5:"; renamed BO/EE/CI/CV -- esr) --pc6300plus|AT&T 6300 plus, -- OTbs, am, xon, -- cols#80, lines#24, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[=C, -- clear=\E[2J\E[H, cnorm=\E[=1C, cr=^M, cub1=^H, cud1=\E[B, -- cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, -- dch1=\E[1P, dim=\E[2m, dl1=\E[1M, ed=\E[0J, el=\E[0K, -- home=\E[H, hts=\EH, ich1=\E[1@, il1=\E[1L, ind=^J, -- invis=\E[9m, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kf1=\EOc, kf10=\EOu, kf2=\EOd, kf3=\EOe, -- kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\EOk, -- nel=^M^J, rev=\E[7m, rmso=\E[m, rmul=\E[m, sgr0=\E[m, -- smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+# * Added "full color" (-c) entries which support the 16-color mode in -+# version 51. -+# -+# * By default, version 51 uses UTF-8 encoding with broken altcharset -+# support, so "ASCII" (-7) entries without altcharset support were -+# added. - --# From: Benjamin C. W. Sittler <bsittler@nmt.edu> -+# nsterm - AppKit Terminal.app - # --# I have a UNIX PC which I use as a terminal attached to my Linux PC. --# Unfortunately, the UNIX PC terminfo entry that comes with ncurses --# is broken. All the special key sequences are broken, making it unusable --# with Emacs. The problem stems from the following: -+# Apple's Mac OS X includes a Terminal.app derived from the old NeXT -+# Terminal.app. It is a partial VT100 emulation with some xterm-like -+# extensions. This terminfo was written to describe versions 41 -+# (shipped with Mac OS X version 10.0) and 51 (shipped with Mac OS X -+# version 10.1) of Terminal.app. - # --# The UNIX PC has a plethora of keys (103 of them, and there's no numeric --# keypad!), loadable fonts, and strange highlighting modes ("dithered" --# half-intensity, "smeared" bold, and real strike-out, for example.) It also --# uses resizable terminal windows, but the bundled terminal program always --# uses an 80x24 window (and doesn't support seem to support a 132-column --# mode.) -+# Terminal.app runs under the Mac OS X Quartz windowing system (and -+# other AppKit-supported windowing systems.) On the Mac OS X machine I -+# use, the executable for Terminal.app is: -+# /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal - # --# HISTORY: The UNIX PC was one of the first machines with a GUI, and used a --# library which was a superset of SVr3.5 curses (called tam, for "terminal --# access method".) tam includes support for real, overlapping windows, --# onscreen function key labels, and bitmap graphics. But since the primary --# user interface on the UNIX PC was a GUI program (ua, for "user --# assistant",) and remote administration was considered important for the --# machine, tam also supported VT100-compatible terminals attached to the --# serial port or used across the StarLan network. To simulate the extra keys --# not present on a VT100, users could press ESC and a two-letter sequence, --# such as u d (Undo) or U D (Shift-Undo.) These two-letter sequences, --# however, were not the same as those sent by the actual Undo key. The --# actual Undo key sends ESC 0 s unshifted, and ESC 0 S shifted, for example. --# (If you're interested in adding some of the tam calls to ncurses, btw, I --# have the full documentation and several programs which use tam. It also --# used an extended terminfo format to describe key sequences, special --# highlighting modes, etc.) -+# If you're looking for a description of the full-screen system -+# console which runs under Apple's Darwin operating system on PowerPC -+# platforms, see the "xnuppc" entry instead. - # --# KEYS: This means that ncurses would quite painful on the UNIX PC, since --# there are two sequences for every key-modifier combination (local keyboard --# sequence and remote "VT100" sequence.) But I doubt many people are trying --# to use ncurses on the UNIX PC, since ncurses doesn't properly handle the --# GUI. Unfortunately, the terminfo entry (and the termcap, too, I presume) --# seem to have been built from the manual describing the VT100 sequences. --# This means it doesn't work for a real live UNIX PC. -+# There were no function keys in version 41. In version 51, there are -+# four working function keys (F1, F2, F3 and F4.) The function keys -+# are included in all of these entries. - # --# FONTS: The UNIX PC also has a strange interpretation of "alternate --# character set". Rather than the VT100 graphics you might expect, it allows --# up to 8 custom fonts to be loaded at any given time. This means that --# programs expecting VT100 graphics will usually be disappointed. For this --# reason I have disabled the smacs/rmacs sequences, but they could easily be --# re-enabled. Here are the relevant control sequences (from the ESCAPE(7) --# manpage), should you wish to do so: -+# It does not support mouse pointer position reporting. Under some -+# circumstances the cursor can be positioned using option-click; this -+# works by comparing the cursor position and the selected position, -+# and simulating enough cursor-key presses to move the cursor to the -+# selected position. This technique fails in all but the simplest -+# applications. - # --# SGR10 - Select font 0 - ESC [ 10 m or SO --# SGR11 - Select font 1 - ESC [ 11 m or SI --# SGR12 - Select font 2 - ESC [ 12 m --# ... (etc.) --# SGR17 - Select font 7 - ESC [ 17 m -+# It provides partial ANSI color support (background colors interacted -+# badly with bold in version 41, though, as reflected in :ncv:.) The -+# monochrome (-m) entries are useful if you've disabled color support -+# or use a monochrome monitor. The full color (-c) entries are useful -+# in version 51, which doesn't exhibit the background color bug. They -+# also enable an xterm-compatible 16-color mode. - # --# Graphics for line drawing are not reliably found at *any* character --# location because the UNIX PC has dynamically reloadable fonts. I use font --# 0 for regular text and font 1 for italics, but this is by no means --# universal. So ASCII line drawing is in order if smacs/rmacs are enabled. -+# The configurable titlebar is set using xterm-compatible sequences; -+# it is used as a status bar in the statusline (-s) entries. Its width -+# depends on font sizes and window sizes, but 50 characters seems to -+# be the default for an 80x24 window. - # --# MISC: The cursor visible/cursor invisible sequences were swapped in the --# distributed terminfo. -+# The MacRoman character encoding is used for some of the alternate -+# characters in the "MacRoman" entries; the "ASCII" (-7) entries -+# disable alternate character set support entirely, and the "VT100" -+# (-acs) entries rely instead on Terminal.app's own buggy VT100 -+# graphics emulation, which seems to think the character encoding is -+# the old NeXT charset instead of MacRoman. The "ASCII" (-7) entries -+# are useful in Terminal.app version 51, which supports UTF-8 and -+# other ASCII-compatible character encodings but does not correctly -+# implement VT100 graphics; once VT100 graphics are correctly -+# implemented in Terminal.app, the "VT100" (-acs) entries should be -+# usable in any ASCII-compatible character encoding [except perhaps -+# in UTF-8, where some experts argue for disallowing alternate -+# characters entirely.] - # --# To ameliorate these problems (and fix a few highlighting bugs) I rewrote --# the UNIX PC terminfo entry. The modified version works great with Lynx, --# Emacs, and XEmacs running on my Linux PC and displaying on the UNIX PC --# attached by serial cable. In Emacs, even the Undo key works, and many --# applications can now use the F1-F8 keys. -+# Terminal.app reports "vt100" as the terminal type, but exports -+# several environment variables which may aid detection in a shell -+# profile (i.e. .profile or .login): - # --# esr's notes: --# Terminfo entry for the AT&T Unix PC 7300 --# from escape(7) in Unix PC 7300 Manual. --# Somewhat similar to a vt100-am (but different enough --# to redo this from scratch.) -+# TERM=vt100 -+# TERM_PROGRAM=Apple_Terminal -+# TERM_PROGRAM_VERSION=41 # in Terminal.app version 41 -+# TERM_PROGRAM_VERSION=51 # in Terminal.app version 51 - # --# /*************************************************************** --# * --# * FONT LOADING PROGRAM FOR THE UNIX PC --# * --# * This routine loads a font defined in the file ALTFONT --# * into font memory slot #1. Once the font has been loaded, --# * it can be used as an alternative character set. --# * --# * The call to ioctl with the argument WIOCLFONT is the key --# * to this routine. For more information, see window(7) in --# * the PC 7300 documentation. --# ***************************************************************/ --# #include <string.h> /* needed for strcpy call */ --# #include <sys/window.h> /* needed for ioctl call */ --# #define FNSIZE 60 /* font name size */ --# #define ALTFONT "/usr/lib/wfont/special.8.ft" /* font file */ --# /* --# * The file /usr/lib/wfont/special.8.ft comes with the --# * standard PC software. It defines a graphics character set --# * similar to that of the Teletype 5425 terminal. To view --# * this or other fonts in /usr/lib/wfont, use the command --# * cfont <filename>. For further information on fonts see --# * cfont(1) in the PC 7300 documentation. --# */ -+# For example, the following Bourne shell script would detect the -+# correct terminal type: - # --# struct altfdata /* structure for alt font data */ --# { --# short altf_slot; /* memory slot number */ --# char altf_name[FNSIZE]; /* font name (file name) */ --# }; --# ldfont() --# { --# int wd; /* window in which altfont will be */ --# struct altfdata altf; --# altf.altf_slot=1; --# strcpy(altf.altf_name,ALTFONT); --# for (wd =1; wd < 12; wd++) { --# ioctl(wd, WIOCLFONT,&altf); --# } --# } -+# if [ :"$TERM" = :"vt100" -a :"$TERM_PROGRAM" = :"Apple_Terminal" ] -+# then -+# export TERM -+# if [ :"$TERM_PROGRAM_VERSION" = :41 ] -+# then -+# TERM="nsterm-old" -+# else -+# TERM="nsterm-c-7" -+# fi -+# fi - # --# (att7300: added <civis>/<cnorm>/<ich1>/<invis> from the BSDI entry, --# they're confirmed by the man page for the System V display---esr) -+# In a C shell derivative, this would be accomplished by: - # --att7300|unixpc|pc7300|3b1|s4|AT&T UNIX PC Model 7300, -- am, xon, -- cols#80, it#8, lines#24, -- bel=^G, blink=\E[9m, bold=\E[1m, cbt=\E^I, civis=\E[=1C, -- clear=\E[2J\E[H, cnorm=\E[=0C, cr=^M, cub=\E[%p1%dD, -- cub1=^H, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -- cuu1=\E[A, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, -- ed=\E[0J, el=\E[0K, home=\E[H, ich1=\E[@, il=\E[%p1%dL, -- il1=\E[L, ind=^J, invis=\E[9m, is1=\017\E[=1w, kBEG=\ENB, -- kCAN=\EOW, kCPY=\END, kCRT=\EON, kDC=\ENF, kDL=\ENE, -- kEND=\ENN, kEOL=\EOA, kFND=\EOX, kHLP=\EOM, kHOM=\ENM, -- kIC=\ENJ, kLFT=\ENK, kMOV=\ENC, kNXT=\ENH, kOPT=\EOR, -- kPRV=\ENG, kRDO=\EOT, kRIT=\ENL, kRPL=\EOY, kSAV=\EOO, -- kUND=\EOS, kbeg=\ENb, kbs=^H, kcan=\EOw, kcbt=\E[Z, -- kclo=\EOV, kclr=\E[J, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\ENf, -- ked=\E[J, kel=\EOa, kend=\E0, kext=\EOk, kf1=\EOc, kf2=\EOd, -- kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, -- kfnd=\EOx, khlp=\EOm, khome=\E[H, kich1=\ENj, kind=\E[B, -- kmov=\ENc, kmrk=\ENi, knp=\E[U, knxt=\ENh, kopn=\EOv, -- kopt=\EOr, kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, -- kref=\EOb, krfr=\ENa, kri=\E[A, krpl=\EOy, krst=\EOB, -- ksav=\EOo, kslt=\ENI, kund=\EOs, nel=\EE, rev=\E[7m, ri=\EM, -- rmso=\E[m, rmul=\E[m, sgr0=\E[0;10m, smso=\E[7m, -- smul=\E[4m, -+# if ( $?TERM && $?TERM_PROGRAM && $?TERM_PROGRAM_VERSION) then -+# if ( :"$TERM" == :"vt100" && :"$TERM_PROGRAM" == :"Apple_Terminal" ) then -+# if ( :"$TERM_PROGRAM_VERSION" == :41 ) then -+# setenv TERM "nsterm-old" -+# else -+# setenv TERM "nsterm-c-7" -+# endif -+# endif -+# endif - --# Sent by Stefan Stapelberg <stefan@rent-a-guru.de>, 24 Feb 1997, this is --# from SGI's terminfo database. SGI's entry shows F9-F12 with the codes --# for the application keypad mode. We have added iris-ansi-ap rather than --# change the original to keypad mode. --# --# (iris-ansi: added rmam/smam based on init string -- esr) --# --# This entry, and those derived from it, is used in xwsh (also known as --# winterm). Some capabilities that do not fit into the terminfo model --# include the shift- and control-functionkeys: --# --# F1-F12 generate different codes when shift or control modifiers are used. --# For example: --# F1 \E[001q --# shift F1 \E[013q --# control-F1 \E[025q --# --# In application keypad mode, F9-F12 generate codes like vt100 PF1-PF4, i.e., --# \EOP to \EOS. The shifted and control modifiers still do the same thing. --# --# The cursor keys also have different codes: --# control-up \E[162q --# control-down \E[165q --# control-left \E[159q --# control-right \E[168q --# --# shift-up \E[161q --# shift-down \E[164q --# shift-left \E[158q --# shift-right \E[167q --# --# control-tab \[072q --# --iris-ansi|iris-ansi-net|IRIS emulating 40 line ANSI terminal (almost VT100), -- am, -- cols#80, it#8, lines#40, -- bel=^G, bold=\E[1m, clear=\E[H\E[2J, -- cnorm=\E[9/y\E[12/y\E[=6l, cr=^M, cub=\E[%p1%dD, -- cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -- cuu1=\E[A, cvvis=\E[10/y\E[=1h\E[=2l\E[=6h, -+# The '+' entries are building blocks -+nsterm+7|AppKit Terminal.app v41+ basic capabilities w/ASCII charset, -+ am, bw, msgr, xenl, xon, -+ cols#80, it#8, lines#24, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -- home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=\ED, -- is2=\E[?1l\E>\E[?7h\E[100g\E[0m\E7\E[r\E8, kDC=\E[P, -- kEND=\E[147q, kHOM=\E[143q, kLFT=\E[158q, kPRT=\E[210q, -- kRIT=\E[167q, kSPD=\E[218q, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, -- kend=\E[146q, kent=^M, kf1=\E[001q, kf10=\E[010q, -- kf11=\E[011q, kf12=\E[012q, kf2=\E[002q, kf3=\E[003q, -- kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, -- kf8=\E[008q, kf9=\E[009q, khome=\E[H, kich1=\E[139q, -- knp=\E[154q, kpp=\E[150q, kprt=\E[209q, krmir=\E[146q, -- kspd=\E[217q, nel=\EE, pfkey=\EP101;%p1%d.y%p2%s\E\\, -- rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, -- sc=\E7, sgr0=\E[m, smam=\E[?7h, smso=\E[1;7m, smul=\E[4m, -- tbc=\E[3g, --iris-ansi-ap|IRIS ANSI in application-keypad mode, -- is2=\E[?1l\E=\E[?7h, kent=\EOM, kf10=\E[010q, -- kf11=\E[011q, kf12=\E[012q, kf9=\E[009q, use=iris-ansi, -- --# From the man-page, this is a quasi-vt100 emulator that runs on SGI's IRIX --# (T.Dickey 98/1/24) --iris-color|xwsh|IRIX ANSI with color, -- ncv#33, -- csr=\E[%i%p1%d;%p2%dr, dch=\E[%p1%dP, dim=\E[2m, -- ech=\E[%p1%dX, ich=\E[%p1%d@, rc=\E8, ritm=\E[23m, -- rmul=\E[24m, rs1=\Ec, -+ home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ invis=\E[8m, kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -+ kcuu1=\EOA, kent=\EOM, rc=\E8, rev=\E[7m, ri=\EM, -+ rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sitm=\E[3m, use=vt100+enq, use=klone+color, -- use=iris-ansi-ap, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m, -+ sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, use=vt100+enq, use=vt100+pfkeys, - --# The following is a version of the ibm-pc entry distributed with PC/IX, --# (Interactive Systems' System 3 for the Big Blue), modified by Richard --# McIntosh at UCB/CSM. The :pt: and :uc: have been removed from the original, --# (the former is untrue, and the latter failed under UCB/man); standout and --# underline modes have been added. Note: this entry describes the "native" --# capabilities of the PC monochrome display, without ANY emulation; most --# communications packages (but NOT PC/IX connect) do some kind of emulation. --pcix|PC/IX console, -- am, bw, eo, -- cols#80, lines#24, -- clear=\Ec, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\E[J, el=\E[K, -- home=\E[H, rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, -- smul=\E[4m, -+nsterm+acs|AppKit Terminal.app v41+ basic capabilities w/VT100 alternate-charset, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ enacs=\E(B\E)0, rmacs=^O, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, use=nsterm+7, - --# (ibmpcx: this entry used to be known as ibmx. --# It formerly included the following extension capabilities: --# :GC=b:GL=v:GR=t:RT=^J:\ --# :GH=\E[196g:GV=\E[179g:\ --# :GU=\E[193g:GD=\E[194g:\ --# :G1=\E[191g:G2=\E[218g:G3=\E[192g:G4=\E[217g:\ --# :CW=\E[E:NU=\E[F:RF=\E[G:RC=\E[H:\ --# :WL=\E[K:WR=\E[L:CL=\E[M:CR=\E[N:\ --# I renamed GS/GE/WL/WR/CL/CR/PU/PD/HM/EN; also, removed a duplicate --# ":kh=\E[Y:". Added IBM-PC forms characters and highlights, they match --# what was there before. -- esr) --ibmpcx|xenix|ibmx|IBM PC xenix console display, -- OTbs, am, msgr, -- cols#80, lines#25, -- clear=^L, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -- ed=\E[J, el=\E[K, home=\E[H, ich1=\E[@, il1=\E[L, kbs=^H, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[d, -- kf1=\E[K, kf2=\E[L, kf3=\E[M, kf4=\E[N, khome=\E[Y, knp=\E[e, -- kpp=\E[Z, use=klone+acs, use=klone+sgr8, -+nsterm+mac|AppKit Terminal.app v41+ basic capabilities w/MacRoman alternate-charset, -+ acsc=+\335\,\334-\366.\3770#`\327a\:f\241g\261h#i\360jjkkllmmnno\370p\370q\321rrssttuuvvwwxxy\262z\263{\271|\255}\243~\245, -+ enacs=\E(B\E)0, rmacs=^O, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, use=nsterm+7, - --#### QNX -+# compare with xterm+sl-twm -+nsterm+s|AppKit Terminal.app v41+ status-line (window titlebar) support, -+ wsl#50, use=xterm+sl-twm, -+ -+nsterm+c|AppKit Terminal.app v51+ full color support (including 16 colors), -+ op=\E[0m, use=ibm+16color, -+ -+nsterm+c41|AppKit Terminal.app v41 color support, -+ colors#8, ncv#37, pairs#64, -+ op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ -+# These are different combinations of the building blocks -+ -+# ASCII charset (-7) -+nsterm-m-7|nsterm-7-m|AppKit Terminal.app v41+ w/ASCII charset (monochrome), -+ use=nsterm+7, -+ -+nsterm-m-s-7|nsterm-7-m-s|AppKit Terminal.app v41+ w/ASCII charset (monochrome w/statusline), -+ use=nsterm+s, use=nsterm+7, -+ -+nsterm-7|AppKit Terminal.app v41+ w/ASCII charset (color), -+ use=nsterm+c41, use=nsterm+7, -+ -+nsterm-7-c|nsterm-c-7|AppKit Terminal.app v51+ w/ASCII charset (full color), -+ use=nsterm+c, use=nsterm+7, -+ -+nsterm-s-7|nsterm-7-s|AppKit Terminal.app v41+ w/ASCII charset (color w/statusline), -+ use=nsterm+s, use=nsterm+c41, use=nsterm+7, -+ -+nsterm-c-s-7|nsterm-7-c-s|AppKit Terminal.app v51+ w/ASCII charset (full color w/statusline), -+ use=nsterm+s, use=nsterm+c, use=nsterm+7, -+ -+# VT100 alternate-charset (-acs) -+nsterm-m-acs|nsterm-acs-m|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome), -+ use=nsterm+acs, -+ -+nsterm-m-s-acs|nsterm-acs-m-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome w/statusline), -+ use=nsterm+s, use=nsterm+acs, -+ -+nsterm-acs|AppKit Terminal.app v41+ w/VT100 alternate-charset (color), -+ use=nsterm+c41, use=nsterm+acs, -+ -+nsterm-c-acs|nsterm-acs-c|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color), -+ use=nsterm+c, use=nsterm+acs, -+ -+nsterm-s-acs|nsterm-acs-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (color w/statusline), -+ use=nsterm+s, use=nsterm+c41, use=nsterm+acs, -+ -+nsterm-c-s-acs|nsterm-acs-c-s|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color w/statusline), -+ use=nsterm+s, use=nsterm+c, use=nsterm+acs, -+ -+# MacRoman charset -+nsterm-m|AppKit Terminal.app v41+ w/MacRoman charset (monochrome), -+ use=nsterm+mac, -+ -+nsterm-m-s|AppKit Terminal.app v41+ w/MacRoman charset (monochrome w/statusline), -+ use=nsterm+s, use=nsterm+mac, -+ -+nsterm-old|AppKit Terminal.app v41+ w/MacRoman charset (color), -+ use=nsterm+c41, use=nsterm+mac, -+ -+nsterm-c|AppKit Terminal.app v51+ w/MacRoman charset (full color), -+ use=nsterm+c, use=nsterm+mac, -+ -+nsterm-s|AppKit Terminal.app v41+ w/MacRoman charset (color w/statusline), -+ use=nsterm+s, use=nsterm+c41, use=nsterm+mac, -+ -+nsterm-c-s|AppKit Terminal.app v51+ w/MacRoman charset (full color w/statusline), -+ use=nsterm+s, use=nsterm+c, use=nsterm+mac, -+ -+# In Mac OS X version 10.5 the format of the preferences has changed -+# and a new, more complex technique is needed, e.g., -+# -+# python -c 'import sys,objc;NSUserDefaults=objc.lookUpClass( -+# "NSUserDefaults");ud=NSUserDefaults.alloc(); -+# ud.init();prefs=ud.persistentDomainForName_( -+# "com.apple.Terminal");prefs["Window Settings"][ -+# prefs["Default Window Settings"]]["TerminalType" -+# ]=sys.argv[1];ud.setPersistentDomain_forName_(prefs, -+# "com.apple.Terminal")' nsterm-16color -+# -+# and it is still not settable from the preferences dialog. This is -+# tracked under rdar://problem/7365108 and rdar://problem/7365134 -+# in Apple's bug reporter. - # -+# In OS X 10.7 (Leopard) the TERM which can be set in the preferences dialog -+# defaults to xterm-color. Alternative selections are ansi, dtterm, rxvt, -+# vt52, vt100, vt102 and xterm. -+nsterm-16color|AppKit Terminal.app v240.2+ with Mac OS X version 10.5, -+ bw@, mir, npc, -+ civis=\E[?25l, cnorm=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, -+ flash=\E[?5h$<200/>\E[?5l, hpa=\E[%i%p1%dG, -+ ich=\E[%p1%d@, ich1=\E[@, kdch1=\E[3~, kend=\E[F, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -+ kf18=\E[22~, kf19=\E[33~, kf20=\E[34~, kf5=\E[15~, -+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H, -+ knp=\E[6~, kpp=\E[5~, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, -+ smcup=\E7\E[?47h, smir=\E[4h, vpa=\E[%i%p1%dd, -+ kLFT5=\E[5D, kRIT5=\E[5C, use=nsterm-c-s-acs, - --# QNX 4.0 Console --# Michael's original version of this entry had <am@>, <smcup=\Ei>, --# <rmcup=\Eh\ER>; this was so terminfo applications could write the lower --# right corner without triggering a scroll. The ncurses terminfo library can --# handle this case with the <ich1> capability, and prefers <am> for better --# optimization. Bug: The <op> capability resets attributes. --# From: Michael Hunter <mphunter@qnx.com> 30 Jul 1996 --# (removed: <sgr=%?%p1%t\E<%;%p2%t\E[%;%p3%t\E(%;%p4%t\E{%;%p6%t\E<%;,>) --qnx|qnx4|qnx console, -- daisy, km, mir, msgr, xhpa, xt, -- colors#8, cols#80, it#4, lines#25, ncv#3, pairs#8, -- acsc=O\333a\261j\331k\277l\332m\300n\305o\337q\304s\334t\303u\264v\301w\302x\263, -- bel=^G, blink=\E{, bold=\E<, civis=\Ey0, clear=\EH\EJ, -- cnorm=\Ey1, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\Ey2, -- dch1=\Ef, dl1=\EF, ed=\EJ, el=\EK, home=\EH, ht=^I, ich1=\Ee, -- il1=\EE, ind=^J, kBEG=\377\356, kCAN=\377\263, -- kCMD=\377\267, kCPY=\377\363, kCRT=\377\364, -- kDL=\377\366, kEND=\377\301, kEOL=\377\311, -- kEXT=\377\367, kFND=\377\370, kHLP=\377\371, -- kHOM=\377\260, kIC=\377\340, kLFT=\377\264, -- kMOV=\377\306, kMSG=\377\304, kNXT=\377\272, -- kOPT=\377\372, kPRT=\377\275, kPRV=\377\262, -- kRDO=\377\315, kRES=\377\374, kRIT=\377\266, -- kRPL=\377\373, kSAV=\377\307, kSPD=\377\303, -- kUND=\377\337, kbeg=\377\300, kcan=\377\243, kcbt=\377\0, -- kclo=\377\343, kclr=\377\341, kcmd=\377\245, -- kcpy=\377\265, kcrt=\377\305, kctab=\377\237, -- kcub1=\377\244, kcud1=\377\251, kcuf1=\377\246, -- kcuu1=\377\241, kdch1=\377\254, kdl1=\377\274, -- ked=\377\314, kel=\377\310, kend=\377\250, kent=\377\320, -- kext=\377\270, kf1=\377\201, kf10=\377\212, -- kf11=\377\256, kf12=\377\257, kf13=\377\213, -- kf14=\377\214, kf15=\377\215, kf16=\377\216, -- kf17=\377\217, kf18=\377\220, kf19=\377\221, -- kf2=\377\202, kf20=\377\222, kf21=\377\223, -- kf22=\377\224, kf23=\377\333, kf24=\377\334, -- kf25=\377\225, kf26=\377\226, kf27=\377\227, -- kf28=\377\230, kf29=\377\231, kf3=\377\203, -- kf30=\377\232, kf31=\377\233, kf32=\377\234, -- kf33=\377\235, kf34=\377\236, kf35=\377\276, -- kf36=\377\277, kf37=\377\321, kf38=\377\322, -- kf39=\377\323, kf4=\377\204, kf40=\377\324, -- kf41=\377\325, kf42=\377\326, kf43=\377\327, -- kf44=\377\330, kf45=\377\331, kf46=\377\332, -- kf47=\377\316, kf48=\377\317, kf5=\377\205, kf6=\377\206, -- kf7=\377\207, kf8=\377\210, kf9=\377\211, kfnd=\377\346, -- khlp=\377\350, khome=\377\240, khts=\377\342, -- kich1=\377\253, kil1=\377\273, kind=\377\261, -- kmov=\377\351, kmrk=\377\355, kmsg=\377\345, -- knp=\377\252, knxt=\377\312, kopn=\377\357, -- kopt=\377\353, kpp=\377\242, kprt=\377\255, -- kprv=\377\302, krdo=\377\336, kref=\377\354, -- kres=\377\360, krfr=\377\347, kri=\377\271, -- krmir=\377\313, krpl=\377\362, krst=\377\352, -- ksav=\377\361, kslt=\377\247, kspd=\377\335, -- ktbc=\377\344, kund=\377\365, mvpa=\E!%p1%02d, op=\ER, -- rep=\Eg%p2%{32}%+%c%p1%c, rev=\E(, ri=\EI, rmcup=\Eh\ER, -- rmso=\E), rmul=\E], rs1=\ER, setb=\E@%p1%Pb%gb%gf%d%d, -- setf=\E@%p1%Pf%gb%gf%d%d, sgr0=\E}\E]\E>\E), smcup=\Ei, -- smso=\E(, smul=\E[, -+# The versions of Terminal.app in Mac OS X version 10.3.x seem to have -+# the background color erase feature. The newer version 240.2 in Mac OS X -+# version 10.5 does not. - # -+# This entry is based on newsgroup comments by Alain Bench, Christian Ebert, -+# and D P Schreber comparing to nsterm-c-s-acs. - # --qnxt|qnxt4|QNX4 terminal, -- crxm, use=qnx4, -+# In Mac OS X version 10.4 and earlier, D P Schreber notes that $TERM -+# can be set in Terminal.app, e.g., - # --qnxm|QNX4 with mouse events, -- maddr#1, -- chr=\E/, cvr=\E", is1=\E/0t, mcub=\E/>1h, mcub1=\E/>7h, -- mcud=\E/>1h, mcud1=\E/>1l\E/>9h, mcuf=\E/>1h\E/>9l, -- mcuf1=\E/>7l, mcuu=\E/>6h, mcuu1=\E/>6l, rmicm=\E/>2l, -- smicm=\E/>2h, use=qnx4, -+# defaults write com.apple.Terminal TermCapString nsterm-bce - # --qnxw|QNX4 windows, -- xvpa, use=qnxm, -+# and that it is not set in Terminal's preferences dialog. - # --# Monochrome QNX4 terminal or console. Setting this terminal type will --# allow an application running on a color console to behave as if it --# were a monochrome terminal. Output will be through stdout instead of --# console writes because the term routines will recognize that the --# terminal name starts with 'qnxt'. -+# Modified for OS X 10.8, omitting bw based on testing with tack -TD - # --qnxtmono|Monochrome QNX4 terminal or console, -- colors@, pairs@, -- scp@, use=qnx4, -+# Notes: -+# * The terminal description matches the default settings. -+# * The keyboard is configurable via a dialog. -+# * By default khome, kend, knext and kprev are honored only with a -+# shift-modifier. -+# * There are bindings for control left/right arrow (but not up/down). -+# Added those to nsterm-16color, which is the version used for OS X 10.6 -+# * "Allow VT100 application keypage mode" is by default disabled. -+# There is no way to press keypad-comma unless application mode is enabled -+# and used. -+# * 132-column mode stopped working during vttest's tests. Consider it broken. -+# * CHT, REP, SU, SD are buggy. -+# * ECH works (also in Leopard), but is not used here for compatibility. -+# * The terminal preferences dialog replaces xterm-color by xterm-16color and -+# xterm-256color. However, it adds "nsterm", so it is possible to use the -+# nsterm entry from this file to override the MacPorts (20110404) or -+# system (20081102) copy of this file. -+# + In OS X 10.8 (Mountain Lion) the TERM which can be set in the preferences -+# dialog defaults to xterm-256color. Alternative selections are ansi, -+# dtterm, rxvt, vt52, vt100, vt102, xterm and xterm-16color. However, -+# the menu says "Declare terminal as" without promising to actually emulate -+# the corresponding terminals. Indeed, changing TERM does not affect the -+# emulation itself. This means that -+# + the function-keys do not match for dtterm for kf1-kf4 as well as -+# khome/kend -+# + the color model is the same for each setting of TERM (does not match -+# ansi or dtterm). -+# + the shift/control/meta key modifiers from rxvt and xterm variants are not -+# recognised except for a few special cases, i.e., kRIT5 and kLFT5. -+# + the vt52 emulation does not give a usable shell because screen-clearing -+# does not work as expected. -+# + selecting "xterm" or "xterm-16color" sets TERM to "xterm-256color". -+nsterm-bce|AppKit Terminal.app v71+/v100.1.8+ with Mac OS X version 10.3/10.4 (bce), -+ bce, use=nsterm-16color, - --# From: Federico Bianchi <bianchi@pc-arte2.arte.unipi.it>, 1 Jul 1998 --# (esr: commented out <scp> and <rmcup> to avoid warnings.) --# (TD: derive from original qnx4 entry) --qnxt2|qnx 2.15 serial terminal, -- am, -- civis@, cnorm@, cvvis@, dch1@, ich1@, kRES@, kRPL@, kUND@, kspd@, -- rep@, rmcup@, rmso=\E>, setb@, setf@, smcup@, smso=\E<, use=qnx4, -+# This is tested with OS X 10.8 (Mountain Lion), 2012/08/11 -+# TERM_PROGRAM_VERSION=309 -+# Earlier reports state that these differences also apply to OS X 10.7 (Lion), -+# TERM_PROGRAM_VERSION=303 -+nsterm-256color|Terminal.app in OS X 10.8, -+ ccc@, -+ initc@, use=xterm+256color, use=nsterm-bce, - --# QNX ANSI terminal definition --qansi-g|QNX ANSI, -- am, eslok, hs, xon, -- colors#8, cols#80, it#8, lines#25, ncv#19, pairs#64, wsl#80, -- acsc=Oa``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[2J\E[H, cnorm=\E[?25h\E[?12l, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -- dl=\E[%p1%dM, dl1=\E[1M, dsl=\E[r, ech=\E[%p1%dX, ed=\E[J, -- el=\E[K, el1=\E[1K\E[X, flash=\E[?5h$<200>\E[?5l, -- fsl=\E[?6h\E8, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, -- ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, -- ind=\E[S, indn=\E[%p1%dS, invis=\E[9m, -- is2=\E>\E[?1l\E[?7h\E[0;10;39;49m, is3=\E(B\E)0, -- kBEG=\ENn, kCAN=\E[s, kCMD=\E[t, kCPY=\ENs, kCRT=\ENt, -- kDL=\ENv, kEXT=\ENw, kFND=\ENx, kHLP=\ENy, kHOM=\E[h, -- kLFT=\E[d, kNXT=\E[u, kOPT=\ENz, kPRV=\E[v, kRIT=\E[c, -- kbs=^H, kcan=\E[S, kcbt=\E[Z, kclo=\ENc, kclr=\ENa, -- kcmd=\E[G, kcpy=\E[g, kctab=\E[z, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[p, kend=\E[Y, -- kext=\E[y, kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EOA, -- kf13=\EOp, kf14=\EOq, kf15=\EOr, kf16=\EOs, kf17=\EOt, -- kf18=\EOu, kf19=\EOv, kf2=\EOQ, kf20=\EOw, kf21=\EOx, -- kf22=\EOy, kf23=\EOz, kf24=\EOa, kf25=\E[1~, kf26=\E[2~, -- kf27=\E[3~, kf28=\E[4~, kf29=\E[5~, kf3=\EOR, kf30=\E[6~, -- kf31=\E[7~, kf32=\E[8~, kf33=\E[9~, kf34=\E[10~, -- kf35=\E[11~, kf36=\E[12~, kf37=\E[17~, kf38=\E[18~, -- kf39=\E[19~, kf4=\EOS, kf40=\E[20~, kf41=\E[21~, -- kf42=\E[22~, kf43=\E[23~, kf44=\E[24~, kf45=\E[25~, -- kf46=\E[26~, kf47=\E[27~, kf48=\E[28~, kf5=\EOT, kf6=\EOU, -- kf7=\EOV, kf8=\EOW, kf9=\EOX, kfnd=\ENf, khlp=\ENh, -- khome=\E[H, khts=\ENb, kich1=\E[@, kil1=\E[`, kind=\E[a, -- kmov=\ENi, kmrk=\ENm, kmsg=\ENe, knp=\E[U, kopn=\ENo, -- kopt=\ENk, kpp=\E[V, kref=\ENl, kres=\ENp, krfr=\ENg, -- kri=\E[b, krpl=\ENr, krst=\ENj, ksav=\ENq, kslt=\E[T, -- ktbc=\ENd, kund=\ENu, ll=\E[99H, nel=\EE, op=\E[39;49m, -- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\E[T, -- rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmso=\E[27m, -- rmul=\E[24m, rs1=\017\E[?7h\E[0;39;49m$<2>\E>\E[?1l, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;9%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, -- tsl=\E7\E1;24r\E[?6l\E[25;%i%p1%dH, -+# This is an alias which should always point to the "current" version -+nsterm|Apple_Terminal|AppKit Terminal.app, -+ use=nsterm-256color, -+ -+# iTerm.app from http://iterm.sourceforge.net/ is an alternative (and -+# more featureful) terminal emulator for Mac OS X. It is similar -+# enough in capabilities to nsterm-16color that I have derived this -+# description from that one, but as far as I know they share no code. -+# Many of the features are user-configurable, but I attempt only to -+# describe the default configuration. - # --qansi|QNX ansi with console writes, -- daisy, xhpa, use=qansi-g, -+# NOTE: When tack tests (csr) + (nel) iTerm.app crashes, so (csr) is -+# disabled. -+iTerm.app|iTerm.app terminal emulator for Mac OS X, -+ bce, bw@, ccc@, -+ csr@, initc@, kend=\EOF, khome=\EOH, use=xterm+256color, -+ use=nsterm-16color, -+ -+# xnuppc - Darwin PowerPC Console (a.k.a. "darwin") - # --qansi-t|QNX ansi without console writes, -- crxm, use=qansi, -+# On PowerPC platforms, Apple's Darwin operating system uses a -+# full-screen system console derived from a NetBSD framebuffer -+# console. It is an ANSI-style terminal, and is not really VT-100 -+# compatible. - # --qansi-m|QNX ansi with mouse, -- maddr#1, -- chr=\E[, cvr=\E], is1=\E[0t, mcub=\E[>1h, mcub1=\E[>7h, -- mcud=\E[>1h, mcud1=\E[>1l\E[>9h, mcuf=\E[>1h\E[>9l, -- mcuf1=\E[>7l, mcuu=\E[>6h, mcuu1=\E[>6l, rmicm=\E[>2l, -- smicm=\E[>2h, use=qansi, -+# Under Mac OS X, this is the system console driver used while in -+# single-user mode [reachable by holding down Command-S during the -+# boot process] and when logged in using console mode [reachable by -+# typing ">console" at the graphical login prompt.] - # --qansi-w|QNX ansi for windows, -- xvpa, use=qansi-m, -- --#### NetBSD consoles -+# If you're looking for a description of the Terminal.app terminal -+# emulator which runs under the Mac OS X Quartz windowing system (and -+# other AppKit-supported windowing systems,) see the "nsterm" -+# entry instead. - # --# pcvt termcap database entries (corresponding to release 3.31) --# Author's last edit-date: [Fri Sep 15 20:29:10 1995] -+# NOTE: Under Mac OS X version 10.1, the default login window does not -+# prompt for user name, instead requiring an icon to be selected from -+# a list of known users. Since the special ">console" login is not in -+# this list, you must make one of two changes in the Login Window -+# panel of the Login section of System Prefs to make the special -+# ">console" login accessible. The first option is to enable 'Show -+# "Other User" in list for network users', which will add a special -+# "Other..." icon to the graphical login panel. Selecting "Other..." -+# will present the regular graphical login prompt. The second option -+# is to change the 'Display Login Window as:' setting to 'Name and -+# password entry fields', which replaces the login panel with a -+# graphical login prompt. - # --# (For the terminfo master file, I translated these into terminfo syntax. --# Then I dropped all the pseudo-HP entries. we don't want and can't use --# the :Xs: flag. Then I split :is: into a size-independent <is1> and a --# size-dependent <is2>. Finally, I added <rmam>/<smam> -- esr) -+# There are no function keys, at least not in Darwin 1.3. -+# -+# It has no mouse support. -+# -+# It has full ANSI color support, and color combines correctly with -+# all three supported attributes: bold, inverse-video and underline. -+# However, bold colored text is almost unreadable (bolding is -+# accomplished using shifting and or-ing, and looks smeared) so bold -+# has been excluded from the list of color-compatible attributes -+# [using (ncv)]. The monochrome entry (-m) is useful if you use a -+# monochrome monitor. -+# -+# There is one serious bug with this terminal emulation's color -+# support: repositioning the cursor onto a cell with non-matching -+# colors obliterates that cell's contents, replacing it with a blank -+# and displaying a colored cursor in the "current" colors. There is -+# no complete workaround at present [other than using the monochrome -+# (-m) entries,] but removing the (msgr) capability seemed to help. -+# -+# The "standout" chosen was simple reverse-video, although a colorful -+# standout might be more aesthetically pleasing. Similarly, the bold -+# chosen is the terminal's own smeared bold, although a simple -+# color-change might be more readable. The color-bold (-b) entries -+# uses magenta colored text for bolding instead. The fancy color (-f -+# and -f2) entries use color for bold, standout and underlined text -+# (underlined text is still underlined, though.) -+# -+# Apparently the terminal emulator does support a VT-100-style -+# alternate character set, but all the alternate character set -+# positions have been left blank in the font. For this reason, no -+# alternate character set capabilities have been included in this -+# description. The console driver appears to be ASCII-only, so (enacs) -+# has been excluded [although the VT-100 sequence does work.] -+# -+# The default Mac OS X and Darwin installation reports "vt100" as the -+# terminal type, and exports no helpful environment variables. To fix -+# this, change the "console" entry in /etc/ttys from "vt100" to -+# "xnuppc-WxH", where W and H are the character dimensions of your -+# console (see below.) -+# -+# The font used by the terminal emulator is apparently one originally -+# drawn by Ka-Ping Yee, and uses 8x16-pixel characters. This -+# file includes descriptions for the following geometries: -+# -+# Pixels Characters Entry Name (append -m for monochrome) -+# ------------------------------------------------------------------- -+# 640x400 80x25 xnuppc-80x25 -+# 640x480 80x30 xnuppc-80x30 -+# 720x480 90x30 xnuppc-90x30 -+# 800x600 100x37 xnuppc-100x37 -+# 896x600 112x37 xnuppc-112x37 -+# 1024x640 128x40 xnuppc-128x40 -+# 1024x768 128x48 xnuppc-128x48 -+# 1152x768 144x48 xnuppc-144x48 -+# 1280x1024 160x64 xnuppc-160x64 -+# 1600x1024 200x64 xnuppc-200x64 -+# 1600x1200 200x75 xnuppc-200x75 -+# 2048x1536 256x96 xnuppc-256x96 -+# -+# The basic "xnuppc" entry includes no size information, and the -+# emulator includes no reporting capability, so you'll be at the mercy -+# of the TTY device (which reports incorrectly on my hardware.) The -+# color-bold entries do not include size information. - --# NOTE: <ich1> has been taken out of this entry. for reference, it should --# be <ich1=\E[@>. For discussion, see ICH/ICH1 VERSUS RMIR/SMIR below. --# (esr: added <civis> and <cnorm> to resolve NetBSD Problem Report #4583) --pcvtXX|pcvt vt200 emulator (DEC VT220), -- am, km, mir, msgr, xenl, -- it#8, vt#3, -- acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -- il=\E[%p1%dL, il1=\E[L, ind=\ED, indn=\E[%p1%dS, -- is1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kbs=\177, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kdch1=\E[3~, kf1=\E[17~, kf2=\E[18~, kf3=\E[19~, -- kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, -- khome=\E[1~, kich1=\E[2~, kll=\E[4~, knp=\E[6~, kpp=\E[5~, -- nel=\EE, rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt100, -- ri=\EM, rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l, -- rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, -- rs1=\Ec\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr0=\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+# The '+' entries are building blocks -+xnuppc+basic|Darwin PowerPC Console basic capabilities, -+ am, bce, mir, xenl, -+ it#8, -+ bold=\E[1m, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dsl=\E]2;\007, ed=\E[J, el=\E[K, -+ el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=\177, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8, -+ rev=\E[7m, ri=\EM, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, -+ rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -+ sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, -+ sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, use=vt100+keypad, - --# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor) --# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and --# 50 lines entries; 80 columns --pcvt25|dec vt220 emulation with 25 lines, -- cols#80, lines#25, -- is2=\E[1;25r\E[25;1H, use=pcvtXX, --pcvt28|dec vt220 emulation with 28 lines, -- cols#80, lines#28, -- is2=\E[1;28r\E[28;1H, use=pcvtXX, --pcvt35|dec vt220 emulation with 35 lines, -- cols#80, lines#35, -- is2=\E[1;35r\E[35;1H, use=pcvtXX, --pcvt40|dec vt220 emulation with 40 lines, -- cols#80, lines#40, -- is2=\E[1;40r\E[40;1H, use=pcvtXX, --pcvt43|dec vt220 emulation with 43 lines, -- cols#80, lines#43, -- is2=\E[1;43r\E[43;1H, use=pcvtXX, --pcvt50|dec vt220 emulation with 50 lines, -- cols#80, lines#50, -- is2=\E[1;50r\E[50;1H, use=pcvtXX, -+xnuppc+c|Darwin PowerPC Console ANSI color support, -+ colors#8, ncv#32, pairs#64, -+ op=\E[37;40m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, - --# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor) --# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and --# 50 lines entries; 132 columns --pcvt25w|dec vt220 emulation with 25 lines and 132 cols, -- cols#132, lines#25, -- is2=\E[1;25r\E[25;1H, use=pcvtXX, --pcvt28w|dec vt220 emulation with 28 lines and 132 cols, -- cols#132, lines#28, -- is2=\E[1;28r\E[28;1H, use=pcvtXX, --pcvt35w|dec vt220 emulation with 35 lines and 132 cols, -- cols#132, lines#35, -- is2=\E[1;35r\E[35;1H, use=pcvtXX, --pcvt40w|dec vt220 emulation with 40 lines and 132 cols, -- cols#132, lines#40, -- is2=\E[1;40r\E[40;1H, use=pcvtXX, --pcvt43w|dec vt220 emulation with 43 lines and 132 cols, -- cols#132, lines#43, -- is2=\E[1;43r\E[43;1H, use=pcvtXX, --pcvt50w|dec vt220 emulation with 50 lines and 132 cols, -- cols#132, lines#50, -- is2=\E[1;50r\E[50;1H, use=pcvtXX, -+xnuppc+b|Darwin PowerPC Console color-bold support, -+ ncv#32, -+ bold=\E[35m, -+ sgr=\E[0%?%p6%t;35%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, -+ use=xnuppc+basic, - --# OpenBSD implements a color variation --pcvt25-color|dec vt220 emulation with 25 lines and color, -+xnuppc+f|Darwin PowerPC Console fancy color support, -+ ncv#35, -+ sgr=\E[0%?%p6%t;35%;%?%p2%t;36;4%;%?%p1%t;33;44%;%?%p3%t;7%;m, -+ smso=\E[33;44m, smul=\E[36;4m, use=xnuppc+b, -+ -+xnuppc+f2|Darwin PowerPC Console alternate fancy color support, -+ ncv#35, -+ bold=\E[33m, -+ sgr=\E[0%?%p6%t;33%;%?%p2%t;34%;%?%p1%t;31;47%;%?%p3%t;7%;m, -+ smso=\E[31;47m, smul=\E[34m, use=xnuppc+basic, -+ -+# Building blocks for specific screen sizes -+xnuppc+80x25|Darwin PowerPC Console 80x25 support (640x400 pixels), - cols#80, lines#25, -- is2=\E[1;25r\E[25;1H, kf1=\EOP, kf10=\E[29~, kf11=\E[23~, -- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -- kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf5=\E[17~, -- kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, use=pcvtXX, -- use=ecma+color, - --# Terminfo entries to enable the use of the ncurses library in colour on a --# NetBSD-arm32 console (only tested on a RiscPC). --# Created by Dave Millen <dmill@globalnet.co.uk> 22.07.98 --# modified codes for setf/setb to setaf/setab, then to klone+color, corrected --# typo in invis - TD --arm100|arm100-am|Arm(RiscPC) ncurses compatible (for 640x480), -- am, bce, msgr, xenl, xon, -- cols#80, it#8, lines#30, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -- clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C$<2>, -- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, -- cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, -- enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, -- invis=\E[8m$<2>, ka1=\E[q, ka3=\E[s, kb2=\E[r, kbs=^H, -- kc1=\E[p, kc3=\E[n, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kent=\E[M, kf0=\E[y, kf1=\E[P, kf10=\E[x, -- kf2=\E[Q, kf3=\E[R, kf4=\E[S, kf5=\E[t, kf6=\E[u, kf7=\E[v, -- kf8=\E[l, kf9=\E[w, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, -- rmacs=^O, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>, -- rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<2>, -- sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, -- smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, use=ecma+sgr, -- use=klone+color, -+xnuppc+80x30|Darwin PowerPC Console 80x30 support (640x480 pixels), -+ cols#80, lines#30, - --arm100-w|arm100-wam|Arm(RiscPC) ncurses compatible (for 1024x768), -- cols#132, lines#50, use=arm100, -+xnuppc+90x30|Darwin PowerPC Console 90x30 support (720x480 pixels), -+ cols#90, lines#30, - --# NetBSD/x68k console vt200 emulator. This port runs on a 68K machine --# manufactured by Sharp for the Japenese market. --# From Minoura Makoto <minoura@netlaputa.or.jp>, 12 May 1996 --x68k|x68k-ite|NetBSD/x68k ITE, -- cols#96, lines#32, -- kclr=\E[9~, khlp=\E[28~, use=vt220, -+xnuppc+100x37|Darwin PowerPC Console 100x37 support (800x600 pixels), -+ cols#100, lines#37, - --# <tv@pobox.com>: --# Entry for the DNARD OpenFirmware console, close to ANSI but not quite. --# --# (still unfinished, but good enough so far.) --ofcons|DNARD OpenFirmware console, -- bw, -- cols#80, lines#30, -- bel=^G, blink=\2337;2m, bold=\2331m, clear=^L, cr=^M, -- cub=\233%p1%dD, cub1=\233D, cud=\233%p1%dB, cud1=\233B, -- cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH, -- cuu=\233%p1%dA, cuu1=\233A, dch=\233%p1%dP, dch1=\233P, -- dim=\2332m, dl=\233%p1%dM, dl1=\233M, ed=\233J, el=\233K, -- flash=^G, ht=^I, ich=\233%p1%d@, ich1=\233@, il=\233%p1%dL, -- il1=\233L, ind=^J, invis=\2338m, kbs=^H, kcub1=\233D, -- kcud1=\233B, kcuf1=\233C, kcuu1=\233A, kdch1=\233P, -- kf1=\2330P, kf10=\2330M, kf2=\2330Q, kf3=\2330W, -- kf4=\2330x, kf5=\2330t, kf6=\2330u, kf7=\2330q, kf8=\2330r, -- kf9=\2330p, knp=\233/, kpp=\233?, nel=^M^J, rev=\2337m, -- rmso=\2330m, rmul=\2330m, -- sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, -- sgr0=\2330m, -+xnuppc+112x37|Darwin PowerPC Console 112x37 support (896x600 pixels), -+ cols#112, lines#37, - --# NetBSD "wscons" emulator in vt220 mode. --# This entry is based on the NetBSD termcap entry, correcting the ncv value. --# The emulator renders underlined text in red. Colors are otherwise usable. --# --# Testing the emulator and reading the source code (NetBSD 2.0), it appears --# that "vt220" is inaccurate. There are a few vt220-features, but most of the --# vt220 screens in vttest do not work with this emulator. For instance, it --# identifies itself (primary DA response) as a vt220 with selective erase. But --# the selective erase feature does not work. The secondary response is copied --# from Kermit's emulation of vt220, does not correspond to actual vt220. At --# the level of detail in a termcap, it is a passable emulator, since ECH does --# work. Don't use it on a VMS system -TD --wsvt25|NetBSD wscons in 25 line DEC VT220 mode, -- bce, msgr, -- colors#8, cols#80, it#8, lines#25, ncv#2, pairs#64, -- is2=\E[r\E[25;1H, kend=\E[8~, kf1=\E[11~, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, kf3=\E[13~, -- kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, -- kf9=\E[20~, khome=\E[7~, op=\E[m, rs1=\Ec, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=vt220, -+xnuppc+128x40|Darwin PowerPC Console 128x40 support (1024x640 pixels), -+ cols#128, lines#40, - --wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta, -- km, use=wsvt25, -+xnuppc+128x48|Darwin PowerPC Console 128x48 support (1024x768 pixels), -+ cols#128, lines#48, - --# `rasterconsole' provided by 4.4BSD, NetBSD and OpenBSD on SPARC, and --# DECstation/pmax. --rcons|BSD rasterconsole, -- use=sun-il, --# Color version of above. Color currently only provided by NetBSD. --rcons-color|BSD rasterconsole with ANSI color, -- bce, -- colors#8, pairs#64, -- op=\E[m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=rcons, -+xnuppc+144x48|Darwin PowerPC Console 144x48 support (1152x768 pixels), -+ cols#144, lines#48, - --# mgterm -- MGL/MGL2, MobileGear Graphic Library --# for PocketBSD,PocketLinux,NetBSD/{hpcmips,mac68k} --# -- the setf/setb are probably incorrect, more likely setaf/setab -TD --# -- compare with cons25w --mgterm, -- OTbs, OTpt, am, bce, bw, eo, km, msgr, npc, -- colors#8, cols#80, it#8, lines#18, pairs#64, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -- cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dim=\E[30;1m, dl=\E[%p1%dM, -- dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, -- home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich=\E[%p1%d@, -- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -- indn=\E[%p1%dS, kb2=\E[E, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[F, -- kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X, kf2=\E[N, -- kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, -- kf9=\E[U, khome=\E[H, kich1=\E[L, knp=\E[G, kpp=\E[I, -- nel=\E[E, op=\E[x, rc=\E8, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, -- rmso=\E[m, rs2=\E[x\E[m\Ec, sc=\E7, setb=\E[4%p1%dm, -- setf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, vpa=\E[%i%p1%dd, -+xnuppc+160x64|Darwin PowerPC Console 160x64 support (1280x1024 pixels), -+ cols#160, lines#64, - --#### FreeBSD console entries --# --# From: Andrey Chernov <ache@astral.msk.su> 29 Mar 1996 --# Andrey Chernov maintains the FreeBSD termcap distributions. --# --# Note: Users of FreeBSD 2.1.0 and older versions must either upgrade --# or comment out the :cb: capability in the console entry. --# --# Alexander Lukyanov reports: --# I have seen FreeBSD-2.1.5R... The old el1 bug changed, but it is still there. --# Now el1 clears not only to the line beginning, but also a large chunk --# of previous line. But there is another bug - ech does not work at all. --# -+xnuppc+200x64|Darwin PowerPC Console 200x64 support (1600x1024 pixels), -+ cols#200, lines#64, - --# for syscons --# common entry without semigraphics --# Bug: The <op> capability resets attributes. --# Bug? The ech and el1 attributes appear to move the cursor in some cases; for --# instance el1 does if the cursor is moved to the right margin first. Removed --# by T.Dickey 97/5/3 (ech=\E[%p1%dX, el1=\E[1K) --# --# Setting colors turns off reverse; we cannot guarantee order, so use ncv. --# Note that this disables standout with color. --# --# The emulator sends difference strings based on shift- and control-keys, --# like scoansi: --# F13-F24 are shifted F1-F12 --# F25-F36 are control F1-F12 --# F37-F48 are shift+control F1-F12 --cons25w|ansiw|ansi80x25-raw|freebsd console (25-line raw mode), -- am, bce, bw, eo, msgr, npc, -- colors#8, cols#80, it#8, lines#25, ncv#21, pairs#64, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -- cnorm=\E[=0C, cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, -- cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[=1C, dch=\E[%p1%dP, dch1=\E[P, dim=\E[30;1m, -- dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -- home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich=\E[%p1%d@, -- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -- indn=\E[%p1%dS, kb2=\E[E, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[F, -- kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X, kf13=\E[Y, -- kf14=\E[Z, kf15=\E[a, kf16=\E[b, kf17=\E[c, kf18=\E[d, -- kf19=\E[e, kf2=\E[N, kf20=\E[f, kf21=\E[g, kf22=\E[h, -- kf23=\E[i, kf24=\E[j, kf25=\E[k, kf26=\E[l, kf27=\E[m, -- kf28=\E[n, kf29=\E[o, kf3=\E[O, kf30=\E[p, kf31=\E[q, -- kf32=\E[r, kf33=\E[s, kf34=\E[t, kf35=\E[u, kf36=\E[v, -- kf37=\E[w, kf38=\E[x, kf39=\E[y, kf4=\E[P, kf40=\E[z, -- kf41=\E[@, kf42=\E[[, kf43=\E[\\, kf44=\E[], kf45=\E[\^, -- kf46=\E[_, kf47=\E[`, kf48=\E[{, kf5=\E[Q, kf6=\E[R, -- kf7=\E[S, kf8=\E[T, kf9=\E[U, khome=\E[H, kich1=\E[L, -- knp=\E[G, kpp=\E[I, nel=\E[E, op=\E[x, rc=\E8, rev=\E[7m, -- ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, rs2=\E[x\E[m\Ec, sc=\E7, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr=\E[0%?%p1%t;2;7%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;30;1%;%?%p6%t;1%;m, -- sgr0=\E[m, smso=\E[7m, vpa=\E[%i%p1%dd, --cons25|ansis|ansi80x25|freebsd console (25-line ansi mode), -- acsc=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371, -- use=cons25w, --cons25-debian|freebsd console with debian backspace (25-line ansi mode), -- kbs=\177, kdch1=\E[3~, use=cons25, --cons25-m|ansis-mono|ansi80x25-mono|freebsd console (25-line mono ansi mode), -- colors@, pairs@, -- bold@, dim@, op@, rmul=\E[m, setab@, setaf@, -- sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m, -- smul=\E[4m, use=cons25, --cons30|ansi80x30|freebsd console (30-line ansi mode), -- lines#30, use=cons25, --cons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode), -- lines#30, use=cons25-m, --cons43|ansi80x43|freebsd console (43-line ansi mode), -- lines#43, use=cons25, --cons43-m|ansi80x43-mono|freebsd console (43-line mono ansi mode), -- lines#43, use=cons25-m, --cons50|ansil|ansi80x50|freebsd console (50-line ansi mode), -- lines#50, use=cons25, --cons50-m|ansil-mono|ansi80x50-mono|freebsd console (50-line mono ansi mode), -- lines#50, use=cons25-m, --cons60|ansi80x60|freebsd console (60-line ansi mode), -- lines#60, use=cons25, --cons60-m|ansi80x60-mono|freebsd console (60-line mono ansi mode), -- lines#60, use=cons25-m, --cons25r|pc3r|ibmpc3r|cons25-koi8-r|freebsd console w/koi8-r cyrillic, -- acsc=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225, -- use=cons25w, --cons25r-m|pc3r-m|ibmpc3r-mono|cons25-koi8r-m|freebsd console w/koi8-r cyrillic (mono), -- colors@, pairs@, -- op@, rmul=\E[m, setab@, setaf@, -- sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;30;1%;%?%p6%t;1%;m, -- smul=\E[4m, use=cons25r, --cons50r|cons50-koi8r|freebsd console w/koi8-r cyrillic (50 lines), -- lines#50, use=cons25r, --cons50r-m|cons50-koi8r-m|freebsd console w/koi8-r cyrillic (50-line mono), -- lines#50, use=cons25r-m, --cons60r|cons60-koi8r|freebsd console w/koi8-r cyrillic (60 lines), -- lines#60, use=cons25r, --cons60r-m|cons60-koi8r-m|freebsd console w/koi8-r cyrillic (60-line mono), -- lines#60, use=cons25r-m, --# ISO 8859-1 FreeBSD console --cons25l1|cons25-iso8859|freebsd console w/iso 8859-1 chars, -- acsc=+\253\,\273-\030.\031`\201a\202f\207g\210i\247j\213k\214l\215m\216n\217o\220p\221q\222r\223s\224t\225u\226v\227w\230x\231y\232z\233~\237, -- use=cons25w, --cons25l1-m|cons25-iso-m|freebsd console w/iso 8859-1 chars (mono), -- colors@, pairs@, -- bold@, dim@, op@, rmul=\E[m, setab@, setaf@, -- sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m, -- smul=\E[4m, use=cons25l1, --cons50l1|cons50-iso8859|freebsd console w/iso 8859-1 chars (50 lines), -- lines#50, use=cons25l1, --cons50l1-m|cons50-iso-m|freebsd console w/iso 8859-1 chars (50-line mono), -- lines#50, use=cons25l1-m, --cons60l1|cons60-iso|freebsd console w/iso 8859-1 chars (60 lines), -- lines#60, use=cons25l1, --cons60l1-m|cons60-iso-m|freebsd console w/iso 8859-1 chars (60-line mono), -- lines#60, use=cons25l1-m, -+xnuppc+200x75|Darwin PowerPC Console 200x75 support (1600x1200 pixels), -+ cols#200, lines#75, - --#### 386BSD and BSD/OS Consoles --# -+xnuppc+256x96|Darwin PowerPC Console 256x96 support (2048x1536 pixels), -+ cols#256, lines#96, - --# This was the original 386BSD console entry (I think). --# Some places it's named oldpc3|oldibmpc3. --# From: Alex R.N. Wetmore <aw2t@andrew.cmu.edu> --origpc3|origibmpc3|IBM PC 386BSD Console, -- OTbs, am, bw, eo, xon, -- cols#80, lines#25, -- acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -- bold=\E[7m, clear=\Ec, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\E[J, el=\E[K, -- home=\E[H, ind=\E[S, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, khome=\E[Y, ri=\E[T, rmso=\E[1;0x\E[2;7x, -- rmul=\E[1;0x\E[2;7x, sgr0=\E[m\E[1;0x\E[2;7x, -- smso=\E[1;7x\E[2;0x, smul=\E[1;7x\E[2;0x, -+# These are different combinations of the building blocks - --# description of BSD/386 console emulator in version 1.0 (supplied by BSDI) --oldpc3|oldibmpc3|old IBM PC BSD/386 Console, -- OTbs, km, -- lines#25, -- bel=^G, bold=\E[=15F, cr=^M, cud1=^J, dim=\E[=8F, dl1=\E[M, -- ht=^I, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L, kll=\E[F, -- knp=\E[G, kpp=\E[I, nel=^M^J, sgr0=\E[=R, -+xnuppc-m|darwin-m|Darwin PowerPC Console (monochrome), -+ use=xnuppc+basic, - --# Description of BSD/OS console emulator in version 1.1, 2.0, 2.1 --# Note, the emulator supports many of the additional console features --# listed in the iBCS2 (e.g. character-set selection) though not all --# are described here. This entry really ought to be upgraded. --# Also note, the console will also work with fewer lines after doing --# "stty rows NN", e.g. to use 24 lines. --# (Color support from Kevin Rosenberg <kevin@cyberport.com>, 2 May 1996) --# Bug: The <op> capability resets attributes. --bsdos-pc|IBM PC BSD/OS Console, -- sgr=\E[0;10%?%p1%t;7%;%?%p2%t;1%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, -- use=bsdos-pc-nobold, -+xnuppc|darwin|Darwin PowerPC Console (color), -+ use=xnuppc+c, use=xnuppc+basic, - --bsdos-pc-nobold|BSD/OS PC console w/o bold, -- use=klone+color, use=bsdos-pc-m, -+xnuppc-m-b|darwin-m-b|Darwin PowerPC Console (monochrome w/color-bold), -+ use=xnuppc+b, - --bsdos-pc-m|bsdos-pc-mono|BSD/OS PC console mono, -- OTbs, am, eo, km, xon, -- cols#80, it#8, lines#25, -- bel=^G, clear=\Ec, cr=^M, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, -- il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L, -- kll=\E[F, knp=\E[G, kpp=\E[I, nel=^M^J, rc=\E8, sc=\E7, -- sgr=\E[0;10%?%p1%t;7%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m%?%p5%t\E[=8F%;, -- use=klone+sgr8, -+xnuppc-b|darwin-b|Darwin PowerPC Console (color w/color-bold), -+ use=xnuppc+b, use=xnuppc+c, - --# Old names for BSD/OS PC console used in releases before 4.1. --pc3|BSD/OS on the PC Console, -- use=bsdos-pc-nobold, --ibmpc3|pc3-bold|BSD/OS on the PC Console with bold instead of underline, -- use=bsdos-pc, -+xnuppc-m-f|darwin-m-f|Darwin PowerPC Console (fancy monochrome), -+ use=xnuppc+f, - --# BSD/OS on the SPARC --bsdos-sparc|Sun SPARC BSD/OS Console, -- use=sun, -+xnuppc-f|darwin-f|Darwin PowerPC Console (fancy color), -+ use=xnuppc+f, use=xnuppc+c, - --# BSD/OS on the PowerPC --bsdos-ppc|PowerPC BSD/OS Console, -- use=bsdos-pc, -+xnuppc-m-f2|darwin-m-f2|Darwin PowerPC Console (alternate fancy monochrome), -+ use=xnuppc+f2, - --#### DEC VT52 --# (<acsc>/<rmacs>/<smacs> capabilities aren't in DEC's official entry -- esr) --# --# Actually (TD pointed this out at the time the acsc string was added): --# vt52 shouldn't define full acsc since most of the cells don't match. --# see vt100 manual page A-31. This is the list that does match: --# f degree --# g plus/minus --# h right-arrow --# k down-arrow --# m scan-1 --# o scan-3 --# q scan-5 --# s scan-7 --# The line-drawing happens to work in several terminal emulators, but should --# not be used as a guide to the capabilities of the vt52. Note in particular --# that vt52 does not support line-drawing characters (the scan-X values refer --# to a crude plotting feature) -TD --vt52|dec vt52, -- OTbs, -- cols#80, it#8, lines#24, -- acsc=+h.k0affggolpnqprrss, bel=^G, clear=\EH\EJ, cr=^M, -- cub1=\ED, cud1=\EB, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, -- el=\EK, home=\EH, ht=^I, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, -- kcuf1=\EC, kcuu1=\EA, nel=^M^J, ri=\EI, rmacs=\EG, smacs=\EF, -+xnuppc-f2|darwin-f2|Darwin PowerPC Console (alternate fancy color), -+ use=xnuppc+f2, use=xnuppc+c, - --#### DEC VT100 and compatibles --# --# DEC terminals from the vt100 forward are collected here. Older DEC terminals --# and micro consoles can be found in the `obsolete' section. More details on --# the relationship between the VT100 and ANSI X3.64/ISO 6429/ECMA-48 may be --# found near the end of this file. --# --# Except where noted, these entries are DEC's official terminfos. --# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support --# Engineering for more information. Updated terminfos and termcaps --# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps. --# --# In October 1995 DEC sold its terminals business, including the VT and Dorio --# line and trademark, to SunRiver Data Systems. SunRiver has since changed --# its name to Boundless Technologies; see http://www.boundless.com. --# -+# Combinations for specific screen sizes -+xnuppc-80x25-m|darwin-80x25-m|Darwin PowerPC Console (monochrome) 80x25, -+ use=xnuppc+80x25, use=xnuppc+basic, - --# NOTE: Any VT100 emulation, whether in hardware or software, almost --# certainly includes what DEC called the `Level 1 editing extension' codes; --# only the very oldest VT100s lacked these and there probably aren't any of --# those left alive. To capture these, use one of the VT102 entries. -+xnuppc-80x25|darwin-80x25|Darwin PowerPC Console (color) 80x25, -+ use=xnuppc+c, use=xnuppc+80x25, use=xnuppc+basic, -+ -+xnuppc-80x30-m|darwin-80x30-m|Darwin PowerPC Console (monochrome) 80x30, -+ use=xnuppc+80x30, use=xnuppc+basic, -+ -+xnuppc-80x30|darwin-80x30|Darwin PowerPC Console (color) 80x30, -+ use=xnuppc+c, use=xnuppc+80x30, use=xnuppc+basic, -+ -+xnuppc-90x30-m|darwin-90x30-m|Darwin PowerPC Console (monochrome) 90x30, -+ use=xnuppc+90x30, use=xnuppc+basic, -+ -+xnuppc-90x30|darwin-90x30|Darwin PowerPC Console (color) 90x30, -+ use=xnuppc+c, use=xnuppc+90x30, use=xnuppc+basic, -+ -+xnuppc-100x37-m|darwin-100x37-m|Darwin PowerPC Console (monochrome) 100x37, -+ use=xnuppc+100x37, use=xnuppc+basic, -+ -+xnuppc-100x37|darwin-100x37|Darwin PowerPC Console (color) 100x37, -+ use=xnuppc+c, use=xnuppc+100x37, use=xnuppc+basic, -+ -+xnuppc-112x37-m|darwin-112x37-m|Darwin PowerPC Console (monochrome) 112x37, -+ use=xnuppc+112x37, use=xnuppc+basic, -+ -+xnuppc-112x37|darwin-112x37|Darwin PowerPC Console (color) 112x37, -+ use=xnuppc+c, use=xnuppc+112x37, use=xnuppc+basic, -+ -+xnuppc-128x40-m|darwin-128x40-m|Darwin PowerPC Console (monochrome) 128x40, -+ use=xnuppc+128x40, use=xnuppc+basic, -+ -+xnuppc-128x40|darwin-128x40|Darwin PowerPC Console (color) 128x40, -+ use=xnuppc+c, use=xnuppc+128x40, use=xnuppc+basic, -+ -+xnuppc-128x48-m|darwin-128x48-m|Darwin PowerPC Console (monochrome) 128x48, -+ use=xnuppc+128x48, use=xnuppc+basic, -+ -+xnuppc-128x48|darwin-128x48|Darwin PowerPC Console (color) 128x48, -+ use=xnuppc+c, use=xnuppc+128x48, use=xnuppc+basic, -+ -+xnuppc-144x48-m|darwin-144x48-m|Darwin PowerPC Console (monochrome) 144x48, -+ use=xnuppc+144x48, use=xnuppc+basic, -+ -+xnuppc-144x48|darwin-144x48|Darwin PowerPC Console (color) 144x48, -+ use=xnuppc+c, use=xnuppc+144x48, use=xnuppc+basic, -+ -+xnuppc-160x64-m|darwin-160x64-m|Darwin PowerPC Console (monochrome) 160x64, -+ use=xnuppc+160x64, use=xnuppc+basic, -+ -+xnuppc-160x64|darwin-160x64|Darwin PowerPC Console (color) 160x64, -+ use=xnuppc+c, use=xnuppc+160x64, use=xnuppc+basic, -+ -+xnuppc-200x64-m|darwin-200x64-m|Darwin PowerPC Console (monochrome) 200x64, -+ use=xnuppc+200x64, use=xnuppc+basic, -+ -+xnuppc-200x64|darwin-200x64|Darwin PowerPC Console (color) 200x64, -+ use=xnuppc+c, use=xnuppc+200x64, use=xnuppc+basic, -+ -+xnuppc-200x75-m|darwin-200x75-m|Darwin PowerPC Console (monochrome) 200x75, -+ use=xnuppc+200x75, use=xnuppc+basic, -+ -+xnuppc-200x75|darwin-200x75|Darwin PowerPC Console (color) 200x75, -+ use=xnuppc+c, use=xnuppc+200x75, use=xnuppc+basic, -+ -+xnuppc-256x96-m|darwin-256x96-m|Darwin PowerPC Console (monochrome) 256x96, -+ use=xnuppc+256x96, use=xnuppc+basic, -+ -+xnuppc-256x96|darwin-256x96|Darwin PowerPC Console (color) 256x96, -+ use=xnuppc+c, use=xnuppc+256x96, use=xnuppc+basic, -+ -+ -+#### BeOS - # --# Note that the <xenl> glitch in vt100 is not quite the same as on the Concept, --# since the cursor is left in a different position while in the --# weird state (concept at beginning of next line, vt100 at end --# of this line) so all versions of vi before 3.7 don't handle --# <xenl> right on vt100. The correct way to handle <xenl> is when --# you output the char in column 80, immediately output CR LF --# and then assume you are in column 1 of the next line. If <xenl> --# is on, am should be on too. -+# BeOS entry for Terminal program Seems to be almost ANSI -+beterm|BeOS Terminal, -+ am, eo, mir, msgr, xenl, xon, -+ colors#8, cols#80, it#8, lines#25, ncv#5, pairs#64, -+ bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, -+ hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, -+ kend=\E[4~, kf1=\E[11~, kf10=\E[20~, kf11=\E[21~, -+ kf12=\E[22~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, -+ kf5=\E[15~, kf6=\E[16~, kf7=\E[17~, kf8=\E[18~, kf9=\E[19~, -+ khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kspd=^Z, -+ nel=^M^J, op=\E[m, rc=\E8, rev=\E[7m, ri=\EM, rmir=\E[4l, -+ rmkx=\E[?4l, rmso=\E[m, rmul=\E[24m, rs1=\Ec, sc=\E7, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ setb=\E[%p1%{40}%+%cm, setf=\E[%p1%{30}%+%cm, -+ sgr0=\E[0;10m, smir=\E[4h, smkx=\E[?4h, smso=\E[7m, -+ smul=\E[4m, u6=\E[%i%p1%d;%p2%dR, u7=\E[6n, -+ vpa=\E[%i%p1%dd, -+ -+#### Linux consoles - # --# I assume you have smooth scroll off or are at a slow enough baud --# rate that it doesn't matter (1200? or less). Also this assumes --# that you set auto-nl to "on", if you set it off use vt100-nam --# below. -+ -+# This entry is good for the 1.2.13 or later version of the Linux console. - # --# The padding requirements listed here are guesses. It is strongly --# recommended that xon/xoff be enabled, as this is assumed here. -+# *************************************************************************** -+# * * -+# * WARNING: * -+# * Linuxes come with a default keyboard mapping kcbt=^I. This entry, in * -+# * response to user requests, assumes kcbt=\E[Z, the ANSI/ECMA reverse-tab * -+# * character. Here are the keymap replacement lines that will set this up: * -+# * * -+# keycode 15 = Tab Tab -+# alt keycode 15 = Meta_Tab -+# shift keycode 15 = F26 -+# string F26 ="\033[Z" -+# * * -+# * This has to use a key slot which is unfortunate (any unused one will * -+# * do, F26 is the higher-numbered one). The change ought to be built * -+# * into the kernel tables. * -+# * * -+# *************************************************************************** - # --# The vt100 uses <rs2> and <rf> rather than <is2>/<tbc>/<hts> because the --# tab settings are in non-volatile memory and don't need to be --# reset upon login. Also setting the number of columns glitches --# the screen annoyingly. You can type "reset" to get them set. -+# All linux kernels since 1.2.13 (at least) set the screen size -+# themselves; this entry assumes that capability. - # --# The VT100 series terminals have cursor ("arrows") keys which can operate --# in two different modes: Cursor Mode and Application Mode. Cursor Mode --# is the reset state, and is assumed to be the normal state. Application --# Mode is the "set" state. In Cursor Mode, the cursor keys transmit --# "Esc [ {code}" sequences, conforming to ANSI standards. In Application --# Mode, the cursor keys transmit "Esc O <code>" sequences. Application Mode --# was provided primarily as an aid to the porting of VT52 applications. It is --# assumed that the cursor keys are normally in Cursor Mode, and expected that --# applications such as vi will always transmit the <smkx> string. Therefore, --# the definitions for the cursor keys are made to match what the terminal --# transmits after the <smkx> string is transmitted. If the <smkx> string --# is a null string or is not defined, then cursor keys are assumed to be in --# "Cursor Mode", and the cursor keys definitions should match that assumption, --# else the application may fail. It is also expected that applications will --# always transmit the <rmkx> string to the terminal before they exit. --# --# The VT100 series terminals have an auxiliary keypad, commonly referred to as --# the "Numeric Keypad", because it is a cluster of numeric and function keys. --# The Numeric Keypad which can operate in two different modes: Numeric Mode and --# Application Mode. Numeric Mode is the reset state, and is assumed to be --# the normal state. Application Mode is the "set" state. In Numeric Mode, --# the numeric and punctuation keys transmit ASCII 7-bit characters, and the --# Enter key transmits the same as the Return key (Note: the Return key --# can be configured to send either LF (\015) or CR LF). In Application Mode, --# all the keypad keys transmit "Esc O {code}" sequences. The PF1 - PF4 keys --# always send the same "Esc O {code}" sequences. It is assumed that the keypad --# is normally in Numeric Mode. If an application requires that the keypad be --# in Application Mode then it is expected that the user, or the application, --# will set the TERM environment variable to point to a terminfo entry which has --# defined the <smkx> string to include the codes that switch the keypad into --# Application Mode, and the terminfo entry will also define function key --# fields to match the Application Mode control codes. If the <smkx> string --# is a null string or is not defined, then the keypad is assumed to be in --# Numeric Mode. If the <smkx> string switches the keypad into Application --# Mode, it is expected that the <rmkx> string will contain the control codes --# necessary to reset the keypad to "Normal" mode, and it is also expected that --# applications which transmit the <smkx> string will also always transmit the --# <rmkx> string to the terminal before they exit. --# --# Here's a diagram of the VT100 keypad keys with their bindings. --# The top line is the name of the key (some DEC keyboards have the keys --# labelled somewhat differently, like GOLD instead of PF1, but this is --# the most "official" name). The second line is the escape sequence it --# generates in Application Keypad mode (where "$" means the ESC --# character). The third line contains two items, first the mapping of --# the key in terminfo, and then in termcap. --# _______________________________________ --# | PF1 | PF2 | PF3 | PF4 | --# | $OP | $OQ | $OR | $OS | --# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_| --# | 7 8 9 - | --# | $Ow | $Ox | $Oy | $Om | --# |_kf9__k9_|_kf10_k;_|_kf0__k0_|_________| --# | 4 | 5 | 6 | , | --# | $Ot | $Ou | $Ov | $Ol | --# |_kf5__k5_|_kf6__k6_|_kf7__k7_|_kf8__k8_| --# | 1 | 2 | 3 | | --# | $Oq | $Or | $Os | enter | --# |_ka1__K1_|_kb2__K2_|_ka3__K3_| $OM | --# | 0 | . | | --# | $Op | $On | | --# |___kc1_______K4____|_kc3__K5_|_kent_@8_| --# --# Note however, that the arrangement of the 5-key ka1-kc3 do not follow the --# 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, -- ka1=\EOq, ka3=\EOs, kb2=\EOr, kc1=\EOp, kc3=\EOn, --vt100+pfkeys|dec vt100 numeric keypad, -- kent=\EOM, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -- use=vt100+keypad, --vt100+fnkeys|dec vt100 numeric keypad, -- kf0=\EOy, kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, -- kf9=\EOw, use=vt100+pfkeys, --# --# 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 --# use the 5-key arrangement to model the arrow keys as suggested in the --# terminfo guidelines: --# _______________________________________ --# | PF1 | PF2 | PF3 | PF4 | --# | $OP | $OQ | $OR | $OS | --# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_| --# | 7 8 9 - | --# | $Ow | $Ox | $Oy | $Om | --# |_ka1__K1_|_________|_ka3__K3_|_________| --# | 4 | 5 | 6 | , | --# | $Ot | $Ou | $Ov | $Ol | --# |_________|_kb2__K2_|_________|_________| --# | 1 | 2 | 3 | | --# | $Oq | $Or | $Os | enter | --# |_kc1__K4_|_________|_kc3__K5_| $OM | --# | 0 | . | | --# | $Op | $On | | --# |___________________|_________|_kent_@8_| --# --vt220+keypad|dec vt220 numeric keypad, -- ka1=\EOw, ka3=\EOy, kb2=\EOu, kc1=\EOq, kc3=\EOs, kent=\EOM, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, ka2=\EOx, kb1=\EOt, -- kb3=\EOv, kc2=\EOr, --# --vt100+enq|ncurses extension for vt100-style ENQ, -- u8=\E[?1;2c, use=ansi+enq, --vt102+enq|ncurses extension for vt102-style ENQ, -- u8=\E[?6c, use=ansi+enq, --# --# And here, for those of you with orphaned VT100s lacking documentation, is --# a description of the soft switches invoked when you do `Set Up'. --# --# Scroll 0-Jump Shifted 3 0-# --# | 1-Smooth | 1-British pound sign --# | Autorepeat 0-Off | Wrap Around 0-Off --# | | 1-On | | 1-On --# | | Screen 0-Dark Bkg | | New Line 0-Off --# | | | 1-Light Bkg | | | 1-On --# | | | Cursor 0-Underline | | | Interlace 0-Off --# | | | | 1-Block | | | | 1-On --# | | | | | | | | --# 1 1 0 1 1 1 1 1 0 1 0 0 0 0 1 0 <--Standard Settings --# | | | | | | | | --# | | | Auto XON/XOFF 0-Off | | | Power 0-60 Hz --# | | | 1-On | | | 1-50 Hz --# | | Ansi/VT52 0-VT52 | | Bits Per Char. 0-7 Bits --# | | 1-ANSI | | 1-8 Bits --# | Keyclick 0-Off | Parity 0-Off --# | 1-On | 1-On --# Margin Bell 0-Off Parity Sense 0-Odd --# 1-On 1-Even --# --# The following SET-UP modes are assumed for normal operation: --# ANSI_MODE AUTO_XON/XOFF_ON NEWLINE_OFF 80_COLUMNS --# WRAP_AROUND_ON JUMP_SCROLL_OFF --# Other SET-UP modes may be set for operator convenience or communication --# requirements; I recommend --# AUTOREPEAT_ON BLOCK_CURSOR MARGIN_BELL_OFF SHIFTED_3_# --# Unless you have a graphics add-on such as Digital Engineering's VT640 --# (and even then, whenever it can be arranged!) you should set --# INTERLACE_OFF --# --# (vt100: I added <rmam>/<smam> based on the init string, also <OTbs>. -- esr) --vt100|vt100-am|dec vt100 (w/advanced video), -- OTbs, am, mc5i, msgr, xenl, xon, -- cols#80, it#8, lines#24, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -- clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+linux-basic|linux console, -+ am, bce, eo, mir, msgr, xenl, xon, -+ it#8, ncv#18, U8#1, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, - cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C$<2>, -- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, -- cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, -- enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, lf1=pf1, -- lf2=pf2, lf3=pf3, lf4=pf4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, -- rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, -- rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, -- sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, -- smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, -- use=vt100+fnkeys, --vt100nam|vt100-nam|vt100 no automargins, -- am@, xenl@, use=vt100-am, --vt100-vb|dec vt100 (w/advanced video) & no beep, -- bel@, flash=\E[?5h\E[?5l, use=vt100, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -+ dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, -+ el=\E[K, el1=\E[1K, flash=\E[?5h\E[?5l$<200/>, home=\E[H, -+ hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, kb2=\E[G, kbs=\177, -+ kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -+ kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, -+ kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D, -+ kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -+ kspd=^Z, nel=^M^J, rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, -+ rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, sc=\E7, -+ sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p9%t;11%;m, -+ smam=\E[?7h, smir=\E[4h, smul=\E[4m, tbc=\E[3g, -+ vpa=\E[%i%p1%dd, use=vt102+enq, use=klone+sgr, -+ use=ecma+color, - --# Ordinary vt100 in 132 column ("wide") mode. --vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video), -- cols#132, lines#24, -- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-am, --vt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video no automargin), -- cols#132, lines#14, vt@, -- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-nam, -+linux-m|Linux console no color, -+ colors@, pairs@, -+ setab@, setaf@, setb@, setf@, use=linux, - --# vt100 with no advanced video. --vt100-nav|vt100 without advanced video option, -- xmc#1, -- blink@, bold@, rev@, rmso=\E[m, rmul@, sgr@, sgr0@, smso=\E[7m, -- smul@, use=vt100, --vt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option), -- cols#132, lines#14, use=vt100-nav, -+# The 1.3.x kernels add color-change capabilities; if yours doesn't have this -+# and it matters, turn off <ccc>. The %02x escape used to implement this is -+# not supposedly back-portable to older SV curses (although it has worked fine -+# on Solaris for several years) and not supported in ncurses versions before -+# 1.9.9. -+linux-c-nc|linux console with color-change, -+ ccc, -+ initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x, -+ oc=\E]R, use=linux-basic, -+# From: Dennis Henriksen <opus@osrl.dk>, 9 July 1996 -+linux-c|linux console 1.3.6+ for older ncurses, -+ ccc, -+ initc=\E]P%?%p1%{9}%>%t%p1%{10}%-%'a'%+%c%e%p1%d%;%p2%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%p3%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%p4%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;, -+ oc=\E]R, use=linux-basic, - --# vt100 with one of the 24 lines used as a status line. --# We put the status line on the top. --vt100-s|vt100-s-top|vt100-top-s|vt100 for use with top sysline, -- eslok, hs, -- lines#23, -- clear=\E[2;1H\E[J$<50>, csr=\E[%i%i%p1%d;%p2%dr, -- cup=\E[%i%p1%{1}%+%d;%p2%dH$<5>, dsl=\E7\E[1;24r\E8, -- fsl=\E8, home=\E[2;1H, is2=\E7\E[2;24r\E8, -- tsl=\E7\E[1;%p1%dH\E[1K, use=vt100-am, -+# The 2.2.x kernels add a private mode that sets the cursor type; use that to -+# get a block cursor for cvvis. -+# reported by Frank Heckenbach <frank@g-n-u.de>. -+linux2.2|linux 2.2.x console, -+ civis=\E[?25l\E[?1c, cnorm=\E[?25h\E[?0c, -+ cvvis=\E[?25h\E[?8c, use=linux-c-nc, - --# Status line at bottom. --# Clearing the screen will clobber status line. --vt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline, -- eslok, hs, -- lines#23, -- dsl=\E7\E[1;24r\E8, fsl=\E8, is2=\E[1;23r\E[23;1H, -- tsl=\E7\E[24;%p1%dH\E[1K, use=vt100-am, -+# Linux 2.6.x has a fix for SI/SO to work with UTF-8 encoding added here: -+# http://lkml.indiana.edu/hypermail/linux/kernel/0602.2/0868.html -+# Using SI/SO has the drawback that it confuses screen. SCS would work. -+# However, SCS is buggy (see comment in Debian #515609) -TD -+# Further, this breaks longstanding workarounds for Linux console's line -+# drawing (see Debian 665959) -TD -+linux2.6|linux 2.6.x console, -+ rmacs=^O, -+ sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, use=linux2.2, -+ -+# The 3.0 kernel adds support for clearing scrollback buffer (capability E3). -+# It is the same as xterm's erase-saved-lines feature. -+linux3.0|linux 3.0 kernels, -+ E3=\E[3;J, use=linux2.6, - --# Most of the `vt100' emulators out there actually emulate a vt102 --# This entry (or vt102-nsgr) is probably the right thing to use for --# these. --vt102|dec vt102, -- dch1=\E[P, dl1=\E[M, il1=\E[L, rmir=\E[4l, smir=\E[4h, -- use=vt100, --vt102-w|dec vt102 in wide mode, -- cols#132, -- rs3=\E[?3h, use=vt102, -+# This is Linux console for ncurses. -+linux|linux console, -+ use=linux2.2, - --# Many brain-dead PC comm programs that pretend to be `vt100-compatible' --# fail to interpret the ^O and ^N escapes properly. Symptom: the <sgr0> --# string in the canonical vt100 entry above leaves the screen littered --# with little snowflake or star characters (IBM PC ROM character \017 = ^O) --# after highlight turnoffs. This entry should fix that, and even leave --# ACS support working, at the cost of making multiple-highlight changes --# slightly more expensive. --# From: Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995 --vt102-nsgr|vt102 no sgr (use if you see snowflakes after highlight changes), -- sgr@, sgr0=\E[m, use=vt102, -+# Subject: linux 2.6.26 vt back_color_erase -+# Changes to the Linux console driver broke bce model as reported in -+# https://bugzilla.novell.com/show_bug.cgi?id=418613 -+# apparently from -+# http://lkml.org/lkml/2008/4/26/305 -+# http://lkml.org/lkml/2008/10/3/66 -+linux2.6.26|linux console w/o bce, -+ bce@, use=linux2.6, - --# VT125 Graphics CRT. Clear screen also erases graphics --# Some vt125's came configured with vt102 support. --vt125|vt125 graphics terminal, -- mir, -- clear=\E[H\E[2J\EPpS(E)\E\\$<50>, use=vt100, -+# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file -+linux-nic|linux with ich/ich1 suppressed for non-curses programs, -+ ich@, ich1@, use=linux, - --# This isn't a DEC entry, it came from University of Wisconsin. --# (vt131: I added <rmam>/<smam> based on the init string, also <OTbs> -- esr) --vt131|dec vt131, -- OTbs, am, xenl, -- cols#80, it#8, lines#24, vt#3, -- bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>, -- clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub1=^H, cud1=^J, cuf1=\E[C$<2/>, -- cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>, -- ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, ht=^I, -- is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, kcud1=\EOB, -- kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, -- kf4=\EOS, nel=^M^J, rc=\E8, rev=\E[7m$<2/>, ri=\EM$<5/>, -- rmam=\E[?7h, rmkx=\E[?1l\E>, rmso=\E[m$<2/>, -- rmul=\E[m$<2/>, -- rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr0=\E[m$<2/>, smam=\E[?7h, smkx=\E[?1h\E=, -- smso=\E[7m$<2/>, smul=\E[4m$<2/>, -+# This assumes you have used setfont(8) to load one of the Linux koi8-r fonts. -+# acsc entry from Pavel Roskin" <pavel@absolute.spb.su>, 29 Sep 1997. -+linux-koi8|linux with koi8 alternate character set, -+ acsc=+\020\,\021-\030.^Y0\215`\004a\221f\234g\237h\220i\276j\205k\203l\202m\204n\212o~p\0q\0r\0s_t\206u\207v\211w\210x\201y\230z\231{\267|\274~\224, -+ use=linux, use=klone+koi8acs, - --# vt132 - like vt100 but slower and has ins/del line and such. --# I'm told that <smir>/<rmir> are backwards in the terminal from the --# manual and from the ANSI standard, this describes the actual --# terminal. I've never actually used a vt132 myself, so this --# is untested. --# --vt132|DEC vt132, -- xenl, -- dch1=\E[P$<7>, dl1=\E[M$<99>, il1=\E[L$<99>, ind=\n$<30>, -- ip=$<7>, rmir=\E[4h, smir=\E[4l, use=vt100, -+# Another entry for KOI8-r with Qing Long's acsc. -+# (which one better complies with the standard?) -+linux-koi8r|linux with koi8-r alternate character set, -+ use=linux, use=klone+koi8acs, - --# This vt220 description maps F5--F9 to the second block of function keys --# at the top of the keyboard. The "DO" key is used as F10 to avoid conflict --# with the key marked (ESC) on the vt220. See vt220d for an alternate mapping. --# PF1--PF4 are used as F1--F4. -+# Entry for the latin1 and latin2 fonts -+linux-lat|linux with latin1 or latin2 alternate character set, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\013f\370g\361h\260i\316j\211k\214l\206m\203n\305o~p\304q\212r\304s_t\207u\215v\301w\302x\205y\363z\362{\343|\330}\234~\376, -+ use=linux, -+ -+# This uses graphics from VT codeset instead of from cp437. -+# reason: cp437 (aka "straight to font") is not functional under luit. -+# from: Andrey V Lukyanov <land@long.yar.ru>. -+linux-vt|linux console using VT codes for graphics, -+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~, -+ rmacs=\E(K, rmpch@, sgr@, sgr0=\E[0m\E(K\017, smacs=\E(0, -+ smpch@, use=linux, -+ -+# This is based on the Linux console (relies on the console to perform some -+# of the functionality), but does not recognize as many control sequences. -+# The program comes bundled with an old (circa 1998) copy of the Linux -+# console terminfo. It recognizes some non-ANSI/VT100 sequences such as -+# \E* move cursor to home, as as \E[H -+# \E,X same as \E(X -+# \EE move cursor to beginning of row -+# \E[y,xf same as \E[y,xH - # --vt220-old|vt200-old|DEC VT220 in vt100 emulation mode, -- OTbs, OTpt, am, mir, xenl, xon, -- cols#80, lines#24, vt#3, -- OTnl=^J, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, civis=\E[?25l, -- clear=\E[H\E[2J$<50>, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P, -- dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, -- if=/usr/share/tabset/vt100, il1=\E[L, ind=\ED$<20/>, -- is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\EOP, -- kf10=\E[29~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\E[17~, -- kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, -- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, rc=\E8, -- rev=\E[7m$<2>, rf=/usr/share/tabset/vt100, -- ri=\EM$<14/>, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, -- rmso=\E[27m, rmul=\E[24m, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -- sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, -- smso=\E[7m, smul=\E[4m, -+# Note: The status-line support is buggy (dsl does not work). -+kon|kon2|jfbterm|Kanji ON Linux console, -+ ccc@, hs, -+ civis@, cnorm@, cvvis@, dsl=\E[?H, flash@, fsl=\E[?F, initc@, -+ initp@, kcbt@, oc@, op=\E[37;40m, rs1=\Ec, tsl=\E[?T, -+ use=linux, - --# A much better description of the VT200/220; used to be vt220-8 --# changed rmacs/smacs from shift-in/shift-out to vt200-old's explicit G0/G1 --# designation to accommodate bug in pcvt -TD --vt220|vt200|dec vt220, -- OTbs, am, mc5i, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, -- flash=\E[?5h$<200/>\E[?5l, home=\E[H, ht=^I, hts=\EH, -- ich=\E[%p1%d@, if=/usr/share/tabset/vt100, -- il=\E[%p1%dL, il1=\E[L, ind=\ED, -- is2=\E[?7h\E[>\E[?1h\E F\E[?4l, kbs=^H, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -- kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, -- kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, -- kich1=\E[2~, knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, -- lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, mc0=\E[i, mc4=\E[4i, -- mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, -- rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, rmso=\E[27m, -- rmul=\E[24m, rs1=\E[?3l, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -- sgr0=\E[m\E(B, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, -- smso=\E[7m, smul=\E[4m, tbc=\E[3g, --vt220-w|vt200-w|DEC vt220 in wide mode, -- cols#132, -- rs3=\E[?3h, use=vt220, --vt220-8bit|vt220-8|vt200-8bit|vt200-8|dec vt220/200 in 8-bit mode, -- OTbs, am, mc5i, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\2335m, bold=\2331m, clear=\233H\233J, cr=^M, -- csr=\233%i%p1%d;%p2%dr, cub=\233%p1%dD, cub1=^H, -- cud=\233%p1%dB, cud1=^J, cuf=\233%p1%dC, cuf1=\233C, -- cup=\233%i%p1%d;%p2%dH, cuu=\233%p1%dA, cuu1=\233A, -- dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M, -- ech=\233%p1%dX, ed=\233J, el=\233K, el1=\2331K, enacs=\E)0, -- flash=\233?5h$<200/>\233?5l, home=\233H, ht=^I, hts=\EH, -- ich=\233%p1%d@, if=/usr/share/tabset/vt100, -- il=\233%p1%dL, il1=\233L, ind=\ED, -- is2=\233?7h\233>\233?1h\E F\233?4l, kbs=^H, -- kcub1=\233D, kcud1=\233B, kcuf1=\233C, kcuu1=\233A, -- kf1=\EOP, kf10=\23321~, kf11=\23323~, kf12=\23324~, -- kf13=\23325~, kf14=\23326~, kf17=\23331~, kf18=\23332~, -- kf19=\23333~, kf2=\EOQ, kf20=\23334~, kf3=\EOR, kf4=\EOS, -- kf6=\23317~, kf7=\23318~, kf8=\23319~, kf9=\23320~, -- kfnd=\2331~, khlp=\23328~, khome=\233H, kich1=\2332~, -- knp=\2336~, kpp=\2335~, krdo=\23329~, kslt=\2334~, lf1=pf1, -- lf2=pf2, lf3=pf3, lf4=pf4, mc0=\233i, mc4=\2334i, mc5=\2335i, -- nel=\EE, rc=\E8, rev=\2337m, ri=\EM, rmacs=\E(B, -- rmam=\233?7l, rmir=\2334l, rmso=\23327m, rmul=\23324m, -- rs1=\233?3l, sc=\E7, -- sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -- sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h, smir=\2334h, -- smso=\2337m, smul=\2334m, tbc=\2333g, -+# 16-color linux console entry; this works with a 256-character -+# console font but bright background colors turn into dim ones when -+# you use a 512-character console font. This uses bold for bright -+# foreground colors and blink for bright background colors. -+linux-16color|linux console with 16 colors, -+ colors#16, ncv#63, pairs#256, -+ setab=\E[4%p1%{8}%m%d%?%p1%{7}%>%t;5%e;25%;m, -+ setaf=\E[3%p1%{8}%m%d%?%p1%{7}%>%t;1%e;21%;m, -+ use=linux, - --# vt220d: --# This vt220 description regards F6--F10 as the second block of function keys --# at the top of the keyboard. This mapping follows the description given --# in the VT220 Programmer Reference Manual and agrees with the labeling --# on some terminals that emulate the vt220. There is no support for an F5. --# See vt220 for an alternate mapping. -+# bterm (bogl 0.1.18) -+# Implementation is in bogl-term.c -+# Key capabilities from linux terminfo entry - # --vt220d|DEC VT220 in vt100 mode with DEC function key labeling, -+# Notes: -+# bterm only supports acs using wide-characters, has case for these: qjxamlkut -+# bterm does not support sgr, since it only processes one parameter -TD -+bterm|bogl virtual terminal, -+ am, bce, -+ colors#8, cols#80, lines#24, pairs#64, -+ acsc=aajjkkllmmqqttuuxx, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, cub1=^H, cud1=^J, -+ cup=\E[%i%p1%d;%p2%dH, ed=\E[J, el=\E[K, home=\E[H, ind=^J, -+ kb2=\E[G, kbs=\177, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, - kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, - kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -- kf18=\E[32~, kf19=\E[33~, kf20=\E[34~, kf5@, kf6=\E[17~, -- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, use=vt220-old, -+ kf18=\E[32~, kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, -+ kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, -+ kmous=\E[M, knp=\E[6~, kpp=\E[5~, kspd=^Z, nel=^M^J, -+ op=\E[49m\E[39m, rev=\E[7m, ri=\EM, rmacs=^O, rmso=\E[27m, -+ rmul=\E[24m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr0=\E[0m, smacs=^N, smso=\E[7m, smul=\E[4m, - --vt220-nam|v200-nam|VT220 in vt100 mode with no auto margins, -- am@, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h, use=vt220, -+#### Mach -+# - --# vt220 termcap written Tue Oct 25 20:41:10 1988 by Alex Latzko --# (not an official DEC entry!) --# The problem with real vt220 terminals is they don't send escapes when in --# in vt220 mode. This can be gotten around two ways. 1> don't send --# escapes or 2> put the vt220 into vt100 mode and use all the nifty --# features of vt100 advanced video which it then has. -+# From: Matthew Vernon <mcv21@pick.sel.cam.ac.uk> -+mach|Mach Console, -+ am, km, -+ cols#80, it#8, lines#25, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=^M, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[9, kend=\E[Y, kf1=\EOP, kf10=\EOY, kf2=\EOQ, -+ kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, -+ kf9=\EOX, khome=\E[H, kich1=\E[@, kll=\E[F, knp=\E[U, -+ kpp=\E[V, rev=\E[7m, rmso=\E[0m, rmul=\E[24m, sgr0=\E[0m, -+ smso=\E[7m, smul=\E[4m, -+mach-bold|Mach Console with bold instead of underline, -+ rmul=\E[0m, smul=\E[1m, use=mach, -+mach-color|Mach Console with ANSI color, -+ colors#8, pairs#64, -+ dim=\E[2m, invis=\E[8m, op=\E[37;40m, rmso=\E[27m, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=mach, -+ -+# From: Samuel Thibault -+# Source: git://git.sv.gnu.org/hurd/gnumach.git -+# Files: i386/i386at/kd.c -+# -+# Added nel, hpa, sgr and removed rmacs, smacs based on source -TD -+mach-gnu|GNU Mach, -+ acsc=+>\,<-\^.v0\333`+a\261f\370g\361h\260i#j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, ech=\E[%p1%dX, -+ el1=\E[1K, hpa=\E[%i%p1%dG, ich=\E[%p1%d@, ich1=\E[@, -+ indn=\E[%p1%dS, invis=\E[8m, nel=\EE, rin=\E[%p1%dT, -+ sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m, -+ use=mach, -+ -+mach-gnu-color|Mach Console with ANSI color, -+ colors#8, pairs#64, -+ op=\E[37;40m, rmso=\E[27m, setab=\E[4%p1%dm, -+ setaf=\E[3%p1%dm, use=mach-gnu, -+ -+# From: Marcus Brinkmann -+# http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/hurd/hurd/console/ - # --# This entry takes the view of putting a vt220 into vt100 mode so --# you can use the escape key in emacs and everything else which needs it. -+# Comments in the original are summarized here: - # --# You probably don't want to use this on a VMS machine since VMS will think --# it has a vt220 and will get fouled up coming out of emacs -+# hurd uses 8-bit characters (km). - # --# From: Alexander Latzko <latzko@marsenius.rutgers.edu>, 30 Dec 1996 --# (Added vt100 <rc>,<sc> to quiet a tic warning -- esr) --vt200-js|vt220-js|dec vt200 series with jump scroll, -- am, -- cols#80, -- bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu1=\E[A, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, -- ht=^I, il1=\E[L, ind=\ED, -- is2=\E[61"p\E[H\E[?3l\E[?4l\E[?1l\E[?5l\E[?6l\E[?7h\E[?8h\E[?25h\E>\E[m, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=^M\ED, rc=\E8, -- rf=/usr/share/tabset/vt100, ri=\EM, rmdc=, rmir=\E[4l, -- rmkx=\E[?1l\E>, rmso=\E[27m$<5/>, rmul=\E[24m, -- rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, smdc=, -- smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m$<5/>, smul=\E[4m, -- --# This was DEC's vt320. Use the purpose-built one below instead --#vt320|DEC VT320 in vt100 emulation mode, --# use=vt220, -- --# Use v320n for SCO's LYRIX. Otherwise, use Adam Thompson's vt320-nam. -+# Although it doesn't do XON/XOFF, we don't want padding characters (xon). - # --vt320nam|v320n|DEC VT320 in vt100 emul. mode with NO AUTO WRAP mode, -- am@, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h, use=vt220, -- --# These entries are not DEC's official ones, they were purpose-built for the --# VT320. Here are the designer's notes: --# <kel> is end on a PC kbd. Actually 'select' on a VT. Mapped to --# 'Erase to End of Field'... since nothing seems to use 'end' anyways... --# khome is Home on a PC kbd. Actually 'FIND' on a VT. --# Things that use <knxt> usually use tab anyways... and things that don't use --# tab usually use <knxt> instead... --# kprv is same as tab - Backtab is useless... --# I left out <sgr> because of its RIDICULOUS complexity, --# and the resulting fact that it causes the termcap translation of the entry --# to SMASH the 1k-barrier... --# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 --# (vt320: uncommented <fsl> --esr) --vt320|vt300|dec vt320 7 bit terminal, -- am, eslok, hs, mir, msgr, xenl, -- cols#80, lines#24, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, fsl=\E[0$}, -- home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, -- il1=\E[L, ind=\ED, -- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -- kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kdch1=\E[3~, kel=\E[4~, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -- kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, -- kf9=\E[20~, khome=\E[1~, kich1=\E[2~, knp=\E[6~, knxt=^I, -- kpp=\E[5~, kprv=\E[Z, kslt=\E[4~, mc0=\E[i, mc4=\E[?4i, -- mc5=\E[?5i, nel=\EE, rc=\E8, rev=\E[7m, -- rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B, -- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, -- rmul=\E[m, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -- sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -- sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- tsl=\E[1$}\E[H\E[K, use=vt220+keypad, --vt320-nam|vt300-nam|dec vt320 7 bit terminal with no am to make SAS happy, -- am@, -- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, -- use=vt320, --# We have to init 132-col mode, not 80-col mode. --vt320-w|vt300-w|dec vt320 wide 7 bit terminal, -- cols#132, wsl#132, -- is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -- use=vt320, --vt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am, -- am@, -- is2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, -- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, -- use=vt320-w, -- --# VT330 and VT340 -- These are ReGIS and SIXEL graphics terminals --# which are pretty much a superset of the VT320. They have the --# host writable status line, yet another different DRCS matrix size, --# and such, but they add the DEC Technical character set, Multiple text --# pages, selectable length pages, and the like. The difference between --# the vt330 and vt340 is that the latter has only 2 planes and a monochrome --# monitor, the former has 4 planes and a color monitor. These terminals --# support VT131 and ANSI block mode, but as with much of these things, --# termcap/terminfo doesn't deal with these features. --# --# Note that this entry is are set up in what was the standard way for GNU --# Emacs v18 terminal modes to deal with the cursor keys in that the arrow --# keys were switched into application mode at the same time the numeric pad --# is switched into application mode. This changes the definitions of the --# arrow keys. Emacs v19 is smarter and mines its keys directly out of --# your termcap or terminfo entry, --# --# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993 --# (vt340: string capability "sb=\E[M" corrected to "sr"; --# also, added <rmam>/<smam> based on the init string -- esr) --vt340|dec-vt340|vt330|dec-vt330|dec vt340 graphics terminal with 24 line page, -- am, eslok, hs, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- blink=\E[5m, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[J, -- cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -- dl=\E[%p1%dM, dl1=\E[M, dsl=\E[2$~\r\E[1$}\E[K\E[$}, -- ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l$<200/>, fsl=\E[$}, -- home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, -- il1=\E[L, ind=\ED, -- is2=\E<\E F\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, -- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2, -- lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m, -- rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B, -- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, -- rmul=\E[24m, rs1=\E[?3l, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -- sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- tsl=\E[2$~\E[1$}\E[1;%dH, -- --# DEC doesn't supply a vt400 description, so we add Daniel Glasser's --# (originally written with vt420 as its primary name, and usable for it). -+# Regarding compatibility to vt100: hurd doesn't specify <xenl>, as we don't -+# have the eat_newline_glitch. It doesn't support setting or removing tab -+# stops (hts/tbc). - # --# VT400/420 -- This terminal is a superset of the vt320. It adds the multiple --# text pages and long text pages with selectable length of the vt340, along --# with left and right margins, rectangular area text copy, fill, and erase --# operations, selected region character attribute change operations, --# page memory and rectangle checksums, insert/delete column, reception --# macros, and other features too numerous to remember right now. TERMCAP --# can only take advantage of a few of these added features. -+# hurd uses ^H instead of \E[D for cub1, as only ^H implements <bw> and it is -+# one byte instead three. - # --# Note that this entry is are set up in what was the standard way for GNU --# Emacs v18 terminal modes to deal with the cursor keys in that the arrow --# keys were switched into application mode at the same time the numeric pad --# is switched into application mode. This changes the definitions of the --# arrow keys. Emacs v19 is smarter and mines its keys directly out of --# your termcap entry, -+# <ich1> is not included because hurd has insert mode. - # --# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993 --# (vt400: string capability ":sb=\E[M:" corrected to ":sr=\E[M:"; --# also, added <rmam>/<smam> based on the init string -- esr) --vt400|vt400-24|dec-vt400|dec vt400 24x80 column autowrap, -- am, eslok, hs, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[J$<10/>, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- dsl=\E[2$~\r\E[1$}\E[K\E[$}, ed=\E[J$<10/>, -- el=\E[K$<4/>, flash=\E[?5h\E[?5l$<200/>, fsl=\E[$}, -- home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -- il=\E[%p1%dL, il1=\E[L, ind=\ED, -- is2=\E<\E F\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, -- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2, -- lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m, -- rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B, -- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, -- rmul=\E[24m, rs1=\E<\E[?3l\E[!p\E[?7h, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -- sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- tsl=\E[2$~\E[1$}\E[1;%dH, -- --# (vt420: I removed <kf0>, it collided with <kf10>. I also restored --# a missing <sc> -- esr) --vt420|DEC VT420, -- am, mir, xenl, xon, -- cols#80, lines#24, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -- clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P, -- dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, -- if=/usr/share/tabset/vt300, il1=\E[L, ind=\ED, -- is2=\E[1;24r\E[24;1H, is3=\E[?67h\E[64;1"p, kbs=^H, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[3~, kf1=\EOP, kf10=\E[29~, kf2=\EOQ, kf3=\EOR, -- kf4=\EOS, kf5=\E[17~, kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, -- kf9=\E[21~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -- kslt=\E[4~, rc=\E8, rev=\E[7m$<2>, -- rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B$<4>, -- rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, -- rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- rmso=\E[m, rmul=\E[m, rs3=\E[?67h\E[64;1"p, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -- sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, -- smkx=\E=, smso=\E[7m, smul=\E[4m, -- --# DEC VT220 and up support DECUDK (user-defined keys). DECUDK (i.e., pfx) --# takes two parameters, the key and the string. Translating the key is --# straightforward (keys 1-5 are not defined on real terminals, though some --# emulators define these): -+# hurd doesn't use ^J for scrolling, because this could put things into the -+# scrollback buffer. - # --# if (key < 16) then value = key; --# else if (key < 21) then value = key + 1; --# else if (key < 25) then value = key + 2; --# else if (key < 27) then value = key + 3; --# else if (key < 30) then value = key + 4; --# else value = key + 5; -+# gsbom/grbom are used to enable/disable real bold (not intensity bright) mode. -+# This is a GNU extension. - # --# The string must be the hexadecimal equivalent, e.g., "5052494E" for "PRINT". --# There's no provision in terminfo for emitting a string in this format, so the --# application has to know it. -+# The original has commented-out ncv, but is restored here. - # --vt420pc|DEC VT420 w/PC keyboard, -- kdch1=\177, kend=\E[4~, kf1=\E[11~, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf13=\E[11;2~, kf14=\E[12;2~, -- kf15=\E[13;2~, kf16=\E[14;2~, kf17=\E[15;2~, -- kf18=\E[17;2~, kf19=\E[18;2~, kf2=\E[12~, kf20=\E[19;2~, -- kf21=\E[20;2~, kf22=\E[21;2~, kf23=\E[23;2~, -- kf24=\E[24;2~, kf25=\E[23~, kf26=\E[24~, kf27=\E[25~, -- kf28=\E[26~, kf29=\E[28~, kf3=\E[13~, kf30=\E[29~, -- kf31=\E[31~, kf32=\E[32~, kf33=\E[33~, kf34=\E[34~, -- kf35=\E[35~, kf36=\E[36~, kf37=\E[23;2~, kf38=\E[24;2~, -- kf39=\E[25;2~, kf4=\E[14~, kf40=\E[26;2~, kf41=\E[28;2~, -- kf42=\E[29;2~, kf43=\E[31;2~, kf44=\E[32;2~, -- kf45=\E[33;2~, kf46=\E[34;2~, kf47=\E[35;2~, -- kf48=\E[36;2~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, khome=\E[H, -- pctrm=USR_TERM\:vt420pcdos\:, -- pfx=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\\, -- use=vt420, -- --vt420pcdos|DEC VT420 w/PC for DOS Merge, -- lines#25, -- dispc=%?%p1%{19}%=%t\E\023\021%e%p1%{32}%<%t\E%p1%c%e%p1%{127}%=%t\E\177%e%p1%c%;, -- pctrm@, -- rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sgr@, -- sgr0=\E[m, smsc=\E[?1;2r\E[34h, use=vt420pc, -- --vt420f|DEC VT420 with VT kbd; VT400 mode; F1-F5 used as Fkeys, -- kdch1=\177, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, -+# Reading the source, RIS resets cnorm, but not xmous. -+hurd|The GNU Hurd console server, -+ am, bce, bw, eo, km, mir, msgr, xenl, xon, -+ colors#8, it#8, ncv#18, pairs#64, -+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\Ec, cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[34l, dch=\E[%p1%dP, -+ dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, flash=\Eg, -+ home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=\E[S, indn=\E[%p1%dS, -+ invis=\E[8m, kb2=\E[G, kbs=\177, kcbt=\E[Z, kcub1=\EOD, -+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, -+ kend=\E[4~, kf1=\EOP, kf10=\E[21~, kf11=\E[23~, - kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, - kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -- kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, -- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[H, lf1=\EOP, lf2=\EOQ, lf3=\EOR, lf4=\EOS, -- use=vt420, -- --vt510|DEC VT510, -- use=vt420, --vt510pc|DEC VT510 w/PC keyboard, -- use=vt420pc, --vt510pcdos|DEC VT510 w/PC for DOS Merge, -- use=vt420pcdos, -+ kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf5=\E[15~, -+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -+ kspd=^Z, nel=^M^J, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\E[T, -+ rin=\E[%p1%dT, ritm=\E[23m, rmacs=\E[10m, rmir=\E[4l, -+ rmso=\E[27m, rmul=\E[24m, rs1=\EM\E[?1000l, sc=\E7, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, -+ sgr0=\E[0m, sitm=\E[3m, smacs=\E[11m, smir=\E[4h, -+ smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, grbom=\E[>1l, -+ gsbom=\E[>1h, - --# VT520/VT525 --# --# The VT520 is a monochrome text terminal capable of managing up to --# four independent sessions in the terminal. It has multiple ANSI --# emulations (VT520, VT420, VT320, VT220, VT100, VT PCTerm, SCO Console) --# and ASCII emulations (WY160/60, PCTerm, 50/50+, 150/120, TVI 950, --# 925 910+, ADDS A2). This terminfo data is for the ANSI emulations only. -+#### QNX - # --# Terminal Set-Up is entered by pressing [F3], [Caps Lock]/[F3] or --# [Alt]/[Print Screen] depending upon which keyboard and which --# terminal mode is being used. If Set-Up has been disabled or --# assigned to an unknown key, Set-Up may be entered by pressing --# [F3] as the first key after power up, regardless of keyboard type. --# (vt520: I added <rmam>/<smam> based on the init string, also <sc> -- esr) --vt520|DEC VT520, -- am, mir, xenl, xon, -- cols#80, lines#24, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -- clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P, -- dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, -- if=/usr/share/tabset/vt300, il1=\E[L, ind=\ED, -- is2=\E[1;24r\E[24;1H, is3=\E[?67h\E[64;1"p, kbs=^H, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[3~, kf1=\EOP, kf10=\E[29~, kf2=\EOQ, kf3=\EOR, -- kf4=\EOS, kf5=\E[17~, kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, -- kf9=\E[21~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -- kslt=\E[4~, -- pfx=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\\, -- rc=\E8, rev=\E[7m$<2>, rf=/usr/share/tabset/vt300, -- ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, -- rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- rmso=\E[m, rmul=\E[m, rs3=\E[?67h\E[64;1"p, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -- sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, -- smso=\E[7m, smul=\E[4m, -- --# (vt525: I added <rmam>/<smam> based on the init string; --# removed <rmso>=\E[m, <rmul>=\E[m, added <sc> -- esr) --vt525|DEC VT525, -- am, mir, xenl, xon, -- cols#80, lines#24, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -- clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P, -- dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, -- if=/usr/share/tabset/vt300, il1=\E[L, ind=\ED, -- is2=\E[1;24r\E[24;1H, is3=\E[?67h\E[64;1"p, kbs=^H, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[3~, kf1=\EOP, kf10=\E[29~, kf2=\EOQ, kf3=\EOR, -- kf4=\EOS, kf5=\E[17~, kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, -- kf9=\E[21~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -- kslt=\E[4~, -- pfx=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\\, -- rc=\E8, rev=\E[7m$<2>, rf=/usr/share/tabset/vt300, -- ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, -- rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- rmso=\E[m, rmul=\E[m, rs3=\E[?67h\E[64;1"p, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -- sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, -- smso=\E[7m, smul=\E[4m, - --#### VT100 emulations -+# QNX 4.0 Console -+# Michael's original version of this entry had <am@>, <smcup=\Ei>, -+# <rmcup=\Eh\ER>; this was so terminfo applications could write the lower -+# right corner without triggering a scroll. The ncurses terminfo library can -+# handle this case with the <ich1> capability, and prefers <am> for better -+# optimization. Bug: The <op> capability resets attributes. -+# From: Michael Hunter <mphunter@qnx.com> 30 Jul 1996 -+# (removed: <sgr=%?%p1%t\E<%;%p2%t\E[%;%p3%t\E(%;%p4%t\E{%;%p6%t\E<%;,>) -+qnx|qnx4|qnx console, -+ daisy, km, mir, msgr, xhpa, xt, -+ colors#8, cols#80, it#4, lines#25, ncv#3, pairs#8, -+ acsc=O\333a\261j\331k\277l\332m\300n\305o\337q\304s\334t\303u\264v\301w\302x\263, -+ bel=^G, blink=\E{, bold=\E<, civis=\Ey0, clear=\EH\EJ, -+ cnorm=\Ey1, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\Ey2, -+ dch1=\Ef, dl1=\EF, ed=\EJ, el=\EK, home=\EH, ht=^I, ich1=\Ee, -+ il1=\EE, ind=^J, kBEG=\377\356, kCAN=\377\263, -+ kCMD=\377\267, kCPY=\377\363, kCRT=\377\364, -+ kDL=\377\366, kEND=\377\301, kEOL=\377\311, -+ kEXT=\377\367, kFND=\377\370, kHLP=\377\371, -+ kHOM=\377\260, kIC=\377\340, kLFT=\377\264, -+ kMOV=\377\306, kMSG=\377\304, kNXT=\377\272, -+ kOPT=\377\372, kPRT=\377\275, kPRV=\377\262, -+ kRDO=\377\315, kRES=\377\374, kRIT=\377\266, -+ kRPL=\377\373, kSAV=\377\307, kSPD=\377\303, -+ kUND=\377\337, kbeg=\377\300, kcan=\377\243, kcbt=\377\0, -+ kclo=\377\343, kclr=\377\341, kcmd=\377\245, -+ kcpy=\377\265, kcrt=\377\305, kctab=\377\237, -+ kcub1=\377\244, kcud1=\377\251, kcuf1=\377\246, -+ kcuu1=\377\241, kdch1=\377\254, kdl1=\377\274, -+ ked=\377\314, kel=\377\310, kend=\377\250, kent=\377\320, -+ kext=\377\270, kf1=\377\201, kf10=\377\212, -+ kf11=\377\256, kf12=\377\257, kf13=\377\213, -+ kf14=\377\214, kf15=\377\215, kf16=\377\216, -+ kf17=\377\217, kf18=\377\220, kf19=\377\221, -+ kf2=\377\202, kf20=\377\222, kf21=\377\223, -+ kf22=\377\224, kf23=\377\333, kf24=\377\334, -+ kf25=\377\225, kf26=\377\226, kf27=\377\227, -+ kf28=\377\230, kf29=\377\231, kf3=\377\203, -+ kf30=\377\232, kf31=\377\233, kf32=\377\234, -+ kf33=\377\235, kf34=\377\236, kf35=\377\276, -+ kf36=\377\277, kf37=\377\321, kf38=\377\322, -+ kf39=\377\323, kf4=\377\204, kf40=\377\324, -+ kf41=\377\325, kf42=\377\326, kf43=\377\327, -+ kf44=\377\330, kf45=\377\331, kf46=\377\332, -+ kf47=\377\316, kf48=\377\317, kf5=\377\205, kf6=\377\206, -+ kf7=\377\207, kf8=\377\210, kf9=\377\211, kfnd=\377\346, -+ khlp=\377\350, khome=\377\240, khts=\377\342, -+ kich1=\377\253, kil1=\377\273, kind=\377\261, -+ kmov=\377\351, kmrk=\377\355, kmsg=\377\345, -+ knp=\377\252, knxt=\377\312, kopn=\377\357, -+ kopt=\377\353, kpp=\377\242, kprt=\377\255, -+ kprv=\377\302, krdo=\377\336, kref=\377\354, -+ kres=\377\360, krfr=\377\347, kri=\377\271, -+ krmir=\377\313, krpl=\377\362, krst=\377\352, -+ ksav=\377\361, kslt=\377\247, kspd=\377\335, -+ ktbc=\377\344, kund=\377\365, mvpa=\E!%p1%02d, op=\ER, -+ rep=\Eg%p2%{32}%+%c%p1%c, rev=\E(, ri=\EI, rmcup=\Eh\ER, -+ rmso=\E), rmul=\E], rs1=\ER, setb=\E@%p1%Pb%gb%gf%d%d, -+ setf=\E@%p1%Pf%gb%gf%d%d, sgr0=\E}\E]\E>\E), smcup=\Ei, -+ smso=\E(, smul=\E[, - # -+# -+qnxt|qnxt4|QNX4 terminal, -+ crxm, use=qnx4, -+# -+qnxm|QNX4 with mouse events, -+ maddr#1, -+ chr=\E/, cvr=\E", is1=\E/0t, mcub=\E/>1h, mcub1=\E/>7h, -+ mcud=\E/>1h, mcud1=\E/>1l\E/>9h, mcuf=\E/>1h\E/>9l, -+ mcuf1=\E/>7l, mcuu=\E/>6h, mcuu1=\E/>6l, rmicm=\E/>2l, -+ smicm=\E/>2h, use=qnx4, -+# -+qnxw|QNX4 windows, -+ xvpa, use=qnxm, -+# -+# Monochrome QNX4 terminal or console. Setting this terminal type will -+# allow an application running on a color console to behave as if it -+# were a monochrome terminal. Output will be through stdout instead of -+# console writes because the term routines will recognize that the -+# terminal name starts with 'qnxt'. -+# -+qnxtmono|Monochrome QNX4 terminal or console, -+ colors@, pairs@, -+ scp@, use=qnx4, - --# John Hawkinson <jhawk@MIT.EDU> tells us that the EWAN telnet for Windows --# (the best Windows telnet as of September 1995) presents the name `dec-vt100' --# to telnetd. Michael Deutschmann <ldeutsch@mail.netshop.net> informs us --# that this works best with a stock vt100 entry. --dec-vt100|EWAN telnet's vt100 emulation, -- use=vt100, -- --# From: Adrian Garside <94ajg2@eng.cam.ac.uk>, 19 Nov 1996 --dec-vt220|DOS tnvt200 terminal emulator, -- am@, use=vt220, -- --# Zstem340 is an (IMHO) excellent VT emulator for PC's. I recommend it to --# anyone who needs PC VT340 emulation. (or anything below that level, for --# that matter -- DEC's ALL-in-1 seems happy with it, as does INFOPLUS's --# RDBM systems, it includes ReGIS and SiXel support! I'm impressed... --# I can send the address if requested. --# (z340: changed garbled \E[5?l to \E[?5l, DEC smooth scroll off -- esr) --# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 --z340|zstem vt340 terminal emulator 132col 42line, -- lines#42, -- is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H, -- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H, -- use=vt320-w, --z340-nam|zstem vt340 terminal emulator 132col 42line (no automatic margins), -- am@, -- is2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H, -- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H, -- use=z340, -- --# CRT is shareware. It implements some xterm features, including mouse. --crt|crt-vt220|CRT 2.3 emulating VT220, -- bce, msgr, -- ncv@, -- hts=\EH, use=vt100+enq, use=vt220, use=ecma+color, -+# From: Federico Bianchi <bianchi@pc-arte2.arte.unipi.it>, 1 Jul 1998 -+# (esr: commented out <scp> and <rmcup> to avoid warnings.) -+# (TD: derive from original qnx4 entry) -+qnxt2|qnx 2.15 serial terminal, -+ am, -+ civis@, cnorm@, cvvis@, dch1@, ich1@, kRES@, kRPL@, kUND@, kspd@, -+ rep@, rmcup@, rmso=\E>, setb@, setf@, smcup@, smso=\E<, use=qnx4, - --# PuTTY 0.55 (released 3 August 2004) --# http://www.chiark.greenend.org.uk/~sgtatham/putty/ -+# QNX ANSI terminal definition -+qansi-g|QNX ANSI, -+ am, eslok, hs, xon, -+ colors#8, cols#80, it#8, lines#25, ncv#19, pairs#64, wsl#80, -+ acsc=Oa``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[2J\E[H, cnorm=\E[?25h\E[?12l, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -+ dl=\E[%p1%dM, dl1=\E[1M, dsl=\E[r, ech=\E[%p1%dX, ed=\E[J, -+ el=\E[K, el1=\E[1K\E[X, flash=\E[?5h$<200>\E[?5l, -+ fsl=\E[?6h\E8, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, -+ ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, -+ ind=\E[S, indn=\E[%p1%dS, invis=\E[9m, -+ is2=\E>\E[?1l\E[?7h\E[0;10;39;49m, is3=\E(B\E)0, -+ kBEG=\ENn, kCAN=\E[s, kCMD=\E[t, kCPY=\ENs, kCRT=\ENt, -+ kDL=\ENv, kEXT=\ENw, kFND=\ENx, kHLP=\ENy, kHOM=\E[h, -+ kLFT=\E[d, kNXT=\E[u, kOPT=\ENz, kPRV=\E[v, kRIT=\E[c, -+ kbs=^H, kcan=\E[S, kcbt=\E[Z, kclo=\ENc, kclr=\ENa, -+ kcmd=\E[G, kcpy=\E[g, kctab=\E[z, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[p, kend=\E[Y, -+ kext=\E[y, kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EOA, -+ kf13=\EOp, kf14=\EOq, kf15=\EOr, kf16=\EOs, kf17=\EOt, -+ kf18=\EOu, kf19=\EOv, kf2=\EOQ, kf20=\EOw, kf21=\EOx, -+ kf22=\EOy, kf23=\EOz, kf24=\EOa, kf25=\E[1~, kf26=\E[2~, -+ kf27=\E[3~, kf28=\E[4~, kf29=\E[5~, kf3=\EOR, kf30=\E[6~, -+ kf31=\E[7~, kf32=\E[8~, kf33=\E[9~, kf34=\E[10~, -+ kf35=\E[11~, kf36=\E[12~, kf37=\E[17~, kf38=\E[18~, -+ kf39=\E[19~, kf4=\EOS, kf40=\E[20~, kf41=\E[21~, -+ kf42=\E[22~, kf43=\E[23~, kf44=\E[24~, kf45=\E[25~, -+ kf46=\E[26~, kf47=\E[27~, kf48=\E[28~, kf5=\EOT, kf6=\EOU, -+ kf7=\EOV, kf8=\EOW, kf9=\EOX, kfnd=\ENf, khlp=\ENh, -+ khome=\E[H, khts=\ENb, kich1=\E[@, kil1=\E[`, kind=\E[a, -+ kmov=\ENi, kmrk=\ENm, kmsg=\ENe, knp=\E[U, kopn=\ENo, -+ kopt=\ENk, kpp=\E[V, kref=\ENl, kres=\ENp, krfr=\ENg, -+ kri=\E[b, krpl=\ENr, krst=\ENj, ksav=\ENq, kslt=\E[T, -+ ktbc=\ENd, kund=\ENu, ll=\E[99H, nel=\EE, op=\E[39;49m, -+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\E[T, -+ rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmso=\E[27m, -+ rmul=\E[24m, rs1=\017\E[?7h\E[0;39;49m$<2>\E>\E[?1l, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -+ setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -+ setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -+ sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;9%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, -+ tsl=\E7\E1;24r\E[?6l\E[25;%i%p1%dH, - # --# Comparing with 0.51, vttest is much better (only a few problems with the --# cursor position reports and wrapping). -+qansi|QNX ansi with console writes, -+ daisy, xhpa, use=qansi-g, - # --# PuTTY 0.51 (released 14 December 2000) -+qansi-t|QNX ansi without console writes, -+ crxm, use=qansi, - # --# This emulates vt100 + vt52 (plus a few vt220 features: ech, SRM, DECTCEM, as --# well as SCO and Atari, color palettes from Linux console). Reading the code, --# it is intended to be VT102 plus selected features. By default, it sets $TERM --# to xterm, which is incorrect, since several features are misimplemented: -+qansi-m|QNX ansi with mouse, -+ maddr#1, -+ chr=\E[, cvr=\E], is1=\E[0t, mcub=\E[>1h, mcub1=\E[>7h, -+ mcud=\E[>1h, mcud1=\E[>1l\E[>9h, mcuf=\E[>1h\E[>9l, -+ mcuf1=\E[>7l, mcuu=\E[>6h, mcuu1=\E[>6l, rmicm=\E[>2l, -+ smicm=\E[>2h, use=qansi, - # --# Alt+key always sends ESC+key, so 'km' capability is removed. -+qansi-w|QNX ansi for windows, -+ xvpa, use=qansi-m, -+ -+#### SCO consoles -+ -+# SCO console and SOS-Syscons console for 386bsd -+# (scoansi: had unknown capabilities -+# :Gc=N:Gd=K:Gh=M:Gl=L:Gu=J:Gv=\072:\ -+# :GC=E:GD=B:GH=D:GL=\64:GU=A:GV=\63:GR=C: -+# :G1=?:G2=Z:G3=@:G4=Y:G5=;:G6=I:G7=H:G8=<:\ -+# :CW=\E[M:NU=\E[N:RF=\E[O:RC=\E[P:\ -+# :WL=\E[S:WR=\E[T:CL=\E[U:CR=\E[V:\ -+# I renamed GS/GE/HM/EN/PU/PD/RT and added klone+sgr-dumb, based -+# on the <smacs>=\E[12m -- esr) - # --# Control responses, wrapping and tabs are buggy, failing a couple of --# screens in vttest. -+# klone+sgr-dumb is an error since the acsc does not match -TD - # --# xterm mouse support is not implemented (unrelease version may). -+# In this description based on SCO's keyboard(HW) manpage list of default -+# function key values: -+# F13-F24 are shifted F1-F12 -+# F25-F36 are control F1-F12 -+# F37-F48 are shift+control F1-F12 - # --# Several features such as backspace/delete are optional; this entry documents --# the default behavior -TD -- --putty|PuTTY terminal emulator, -- am, bce, bw, ccc, hs, mir, msgr, xenl, xon, XT, -- colors#8, it#8, ncv#22, pairs#64, U8#1, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, -- dch=\E[%p1%dP, dch1=\E[P, -- dispc=%?%p1%{8}%=%t\E%%G\342\227\230\E%%@%e%p1%{10}%=%t\E%%G\342\227\231\E%%@%e%p1%{12}%=%t\E%%G\342\231\0\E%%@%e%p1%{13}%=%t\E%%G\342\231\252\E%%@%e%p1%{14}%=%t\E%%G\342\231\253\E%%@%e%p1%{15}%=%t\E%%G\342\230\274\E%%@%e%p1%{27}%=%t\E%%G\342\206\220\E%%@%e%p1%{155}%=%t\E%%G\340\202\242\E%%@%e%p1%c%;, -- dl=\E[%p1%dM, dl1=\E[M, dsl=\E]0;\007, ech=\E[%p1%dX, -- ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0, -- flash=\E[?5h\E[?5l, fsl=^G, home=\E[H, hpa=\E[%i%p1%dG, -- ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, -- indn=\E[%p1%dS, -- initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x, -- is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>\E]R, -- kb2=\E[G, kbs=\177, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, -- kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -- kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, -- kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, -- kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, -- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -- kspd=^Z, nel=^M^J, oc=\E]R, op=\E[39;49m, rc=\E8, rev=\E[7m, -- ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, -- rmcup=\E[2J\E[?47l, rmir=\E[4l, rmpch=\E[10m, -- rmso=\E[27m, rmul=\E[24m, -- rs2=\E<\E["p\E[50;6"p\Ec\E[?3l\E]R\E[?1000l, -- s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, sc=\E7, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[?47h, -- smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, tsl=\E]0;, vpa=\E[%i%p1%dd, use=vt102+enq, --vt100-putty|Reset PuTTY to pure vt100, -- rs2=\E<\E["p\Ec\E[?3l\E]R\E[40"p\E[61"p\E[50;1;2"p, -- use=vt100, --# palette is hardcoded... --putty-256color|PuTTY 0.58 with xterm 256-colors, -- initc@, use=xterm+256color, use=putty, -+# hpa/vpa work in the console, but not in scoterm: -+# hpa=\E[%p1%dG, -+# vpa=\E[%p1%dd, -+# -+# SCO's terminfo uses -+# kLFT=\E[d, -+# kRIT=\E[c, -+# which do not work (console or scoterm). -+# -+# Console documents only 3 attributes can be set with SGR (so we don't use sgr). -+scoansi-old|SCO Extended ANSI standard crt (5.0.5), -+ OTbs, am, bce, eo, xon, -+ colors#8, cols#80, it#8, lines#25, pairs#64, -+ acsc=+/\,.-\230.\2310[5566778899\:\:;;<<==>>FFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXX`\204a0fxgqh2jYk?lZm@nEqDtCu4vAwBx3yszr{c}\034~\207, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -+ civis=\E[=14;12C, clear=\E[H\E[2J, cnorm=\E[=10;12C, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[=0;12C, dch=\E[%p1%dP, -+ dch1=\E[P, dispc=\E[=%p1%dg, dl=\E[%p1%dM, dl1=\E[M, -+ ed=\E[m\E[J, el=\E[m\E[K, el1=\E[1K, home=\E[H, ht=^I, -+ hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, -+ ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, kbeg=\E[E, kbs=^H, -+ kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W, -+ kf12=\E[X, kf13=\E[Y, kf15=\E[a, kf16=\E[b, kf17=\E[c, -+ kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f, kf21=\E[g, -+ kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k, kf26=\E[l, -+ kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O, kf30=\E[p, -+ kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t, kf35=\E[u, -+ kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y, kf4=\E[P, -+ kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\, kf44=\E[], -+ kf45=\E[\^, kf46=\E[_, kf47=\E[`, kf48=\E[{, kf5=\E[Q, -+ kf6=\E[R, kf7=\E[S, kf8=\E[T, kf9=\E[U, khome=\E[H, -+ kich1=\E[L, knp=\E[G, kpp=\E[I, op=\E[0;37;40m, rc=\E8, -+ rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmacs=\E[10m, -+ rmam=\E[?7l, rmso=\E[m, rmul=\E[m, sc=\E7, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0;10m, -+ smacs=\E[12m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, -+scoansi-new|SCO Extended ANSI standard crt (5.0.6), -+ km, -+ civis=\E[=0c, cnorm=\E[=1c, csr=\E[%i%p1%d;%p2%dr, -+ cvvis=\E[=2c, mgc=\E[=r, oc=\E[51m, op=\E[50m, -+ rep=\E[%p1%d;%p2%db, rmm=\E[=11L, -+ sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%e;10%;m, -+ smgb=\E[=1;0m, smgbp=\E[=1;%i%p1%dm, -+ smglp=\E[=2;%i%p1%dm, smgr=\E[=3;0m, -+ smgrp=\E[=3;%i%p1%dm, smgt=\E[=0;0m, -+ smgtp=\E[=0;%i%p1%dm, smm=\E[=10L, -+ wind=\E[%i%p1%d;%p2%d;%i%p3%d;%p4%dr, -+ use=scoansi-old, -+# make this easy to change... -+scoansi|SCO Extended ANSI standard crt, -+ use=scoansi-old, - --# One of the keyboard selections is "VT100+". --# pterm (the X11 port) uses shifted F1-F10 as F11-F20 --putty-vt100|VT100+ keyboard layout, -- kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EO[, kf2=\EOQ, -- kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, -- kf9=\EOX, use=putty, -+#### SGI consoles - --# This entry is for Tera Term Pro version 2.3, for MS-Windows 95/NT written by --# T. Teranishi dated Mar 10, 1998. It is a free software terminal emulator --# (communication program) which supports: -+# Sent by Stefan Stapelberg <stefan@rent-a-guru.de>, 24 Feb 1997, this is -+# from SGI's terminfo database. SGI's entry shows F9-F12 with the codes -+# for the application keypad mode. We have added iris-ansi-ap rather than -+# change the original to keypad mode. - # --# - Serial port connections. --# - TCP/IP (telnet) connections. --# - VT100 emulation, and selected VT200/300 emulation. --# - TEK4010 emulation. --# - File transfer protocols (Kermit, XMODEM, ZMODEM, B-PLUS and --# Quick-VAN). --# - Scripts using the "Tera Term Language". --# - Japanese and Russian character sets. -+# (iris-ansi: added rmam/smam based on init string -- esr) - # --# The program does not come with terminfo or termcap entries. However, the --# emulation (testing with vttest and ncurses) is reasonably close to vt100 (no --# vt52 or doublesize character support; blinking is done with color). Besides --# the HPA, VPA extensions it also implements CPL and CNL. -+# This entry, and those derived from it, is used in xwsh (also known as -+# winterm). Some capabilities that do not fit into the terminfo model -+# include the shift- and control-functionkeys: - # --# All of the function keys can be remapped. This description shows the default --# mapping, as installed. Both vt100 PF1-PF4 keys and quasi-vt220 F1-F4 keys --# are supported. F13-F20 are obtained by shifting F3-F10. The editing keypad --# is laid out like vt220, rather than the face codes on the PC keyboard, i.e, --# kfnd Insert --# kslt Delete --# kich1 Home --# kdch1 PageUp --# kpp End --# knp PageDown -+# F1-F12 generate different codes when shift or control modifiers are used. -+# For example: -+# F1 \E[001q -+# shift F1 \E[013q -+# control-F1 \E[025q - # --# ANSI colors are implemented, but cannot be combined with video attributes --# except for reverse. -+# In application keypad mode, F9-F12 generate codes like vt100 PF1-PF4, i.e., -+# \EOP to \EOS. The shifted and control modifiers still do the same thing. - # --# No fonts are supplied with the program, so the acsc string is chosen to --# correspond with the default Microsoft terminal font. -+# The cursor keys also have different codes: -+# control-up \E[162q -+# control-down \E[165q -+# control-left \E[159q -+# control-right \E[168q - # --# Tera Term recognizes some xterm sequences, including those for setting and --# retrieving the window title, and for setting the window size (i.e., using --# "resize -s"), though it does not pass SIGWINCH to the application if the --# user resizes the window with the mouse. --teraterm2.3|Tera Term Pro, -- km, xon@, -- ncv#43, vt@, -- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -- blink=\E[5m, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[J, -- cnorm=\E[?25h, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, -- flash=\E[?5h\E[?5l$<200/>, hpa=\E[%i%p1%dG, -- il=\E[%p1%dL, il1=\E[L, kdch1=\E[3~, kf1=\E[11~, -- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -- kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, kf20=\E[34~, -- kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, -- kpp=\E[5~, kslt=\E[4~, op=\E[100m, rev=\E[7m, ri=\EM, -- rmso=\E[27m, rmul=\E[24m, sgr0=\E[0m\017, smso=\E[7m, -- smul=\E[4m, vpa=\E[%i%p1%dd, use=vt100+enq, -- use=klone+color, use=vt100, -- --# Version 4.59 has regular vt100 line-drawing (so it is no longer necessary --# to choose a Windows OEM font). -+# shift-up \E[161q -+# shift-down \E[164q -+# shift-left \E[158q -+# shift-right \E[167q - # --# Testing with tack: --# - it does not have xenl (suppress that) --# - underline seems to work with color (modify ncv). --# Testing with vttest: --# - wrapping differs from vt100 (menu 1). --# - it recognizes xterm's X10 and normal mouse tracking, but none of the --# other flavors. --# - it recognizes the dtterm window controls for reporting size in --# characters and pixels. --# - it passes SIGWINCH. --teraterm4.59|Tera Term Pro, -- bce, xenl@, -- ncv#41, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- kmous=\E[M, use=teraterm2.3, -- --teraterm|Tera Term, -- use=teraterm4.59, -- --# Tested with WinNT 4.0, the telnet application assumes the screensize is --# 25x80. This entry uses the 'Terminal' font, to get line-drawing characters. -+# control-tab \[072q - # --# Other notes: --# a) Fails tack's cup (cursor-addressing) test, though cup works well enough --# for casual (occasional) use. Also fails several of the vttest screens, --# but that is not unusual for vt100 "emulators". --# b) Does not implement vt100 keypad --# c) Recognizes a subset of vt52 controls. --ms-vt100|MS telnet imitating dec vt100, -- lines#25, -- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -- ka1@, ka3@, kb2@, kc1@, kc3@, kent@, kf0@, kf1@, kf10@, kf2@, kf3@, kf4@, -- kf5@, kf6@, kf7@, kf8@, kf9@, tbc@, use=vt102+enq, use=vt100, -+iris-ansi|iris-ansi-net|IRIS emulating 40 line ANSI terminal (almost VT100), -+ am, -+ cols#80, it#8, lines#40, -+ bel=^G, bold=\E[1m, clear=\E[H\E[2J, -+ cnorm=\E[9/y\E[12/y\E[=6l, cr=^M, cub=\E[%p1%dD, -+ cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -+ cuu1=\E[A, cvvis=\E[10/y\E[=1h\E[=2l\E[=6h, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -+ home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=\ED, -+ is2=\E[?1l\E>\E[?7h\E[100g\E[0m\E7\E[r\E8, kDC=\E[P, -+ kEND=\E[147q, kHOM=\E[143q, kLFT=\E[158q, kPRT=\E[210q, -+ kRIT=\E[167q, kSPD=\E[218q, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, -+ kend=\E[146q, kent=^M, kf1=\E[001q, kf10=\E[010q, -+ kf11=\E[011q, kf12=\E[012q, kf2=\E[002q, kf3=\E[003q, -+ kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, -+ kf8=\E[008q, kf9=\E[009q, khome=\E[H, kich1=\E[139q, -+ knp=\E[154q, kpp=\E[150q, kprt=\E[209q, krmir=\E[146q, -+ kspd=\E[217q, nel=\EE, pfkey=\EP101;%p1%d.y%p2%s\E\\, -+ rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, -+ sc=\E7, sgr0=\E[m, smam=\E[?7h, smso=\E[1;7m, smul=\E[4m, -+ tbc=\E[3g, -+iris-ansi-ap|IRIS ANSI in application-keypad mode, -+ is2=\E[?1l\E=\E[?7h, kent=\EOM, kf10=\E[010q, -+ kf11=\E[011q, kf12=\E[012q, kf9=\E[009q, use=iris-ansi, - --# Tested with Windows 2000, the telnet application runs in a console window, --# also using 'Terminal' font. --# --# Other notes: --# a) This version has no function keys or numeric keypad. Unlike the older --# version, the numeric keypad is entirely ignored. --# b) The program sets $TERM to "ansi", which of course is inaccurate. --ms-vt100-color|vtnt|windows 2000 ansi (sic), -- bce, -- dch=\E[%p1%dP, ich=\E[%p1%d@, use=ecma+color, -- use=ms-vt100, -+# From the man-page, this is a quasi-vt100 emulator that runs on SGI's IRIX -+# (T.Dickey 98/1/24) -+iris-color|xwsh|IRIX ANSI with color, -+ ncv#33, -+ csr=\E[%i%p1%d;%p2%dr, dch=\E[%p1%dP, dim=\E[2m, -+ ech=\E[%p1%dX, ich=\E[%p1%d@, rc=\E8, ritm=\E[23m, -+ rmul=\E[24m, rs1=\Ec, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sitm=\E[3m, use=vt100+enq, use=klone+color, -+ use=iris-ansi-ap, - --# Based on comments from Federico Bianchi: -+#### OpenBSD consoles - # --# vt100+ is basically a VT102-noSGR with ANSI.SYS colors and a different --# scheme for PF keys. -+# From: Alexei Malinin <Alexei.Malinin@mail.ru>; October, 2011. - # --# and PuTTY wishlist: -+# The following terminal descriptions for the AMD/Intel PC console -+# were prepared based on information contained in the OpenBSD-4.9 -+# termtypes.master and wscons(4) & vga(4) manuals (2010, November). - # --# The modifiers are represented as the codes listed above, prefixed to --# the normal sequences. If the modifier is pressed alone, its sequence --# is transmitted twice in succession. If multiple modifiers apply, --# they're transmitted in the order shift, control, alt. --# --# Shift \E^S --# Alt \E^A, --# Ctrl \E^C, --ms-vt100+|vt100+|windows XP vt100+ (sic), -- kdch1=\E-, kend=\Ek, kf1=\E1, kf10=\E0, kf11=\E!, kf12=\E@, -- kf13=\E\023\E1, kf14=\E\023\E2, kf15=\E\023\E3, -- kf16=\E\023\E4, kf17=\E\023\E5, kf18=\E\023\E6, -- kf19=\E\023\E7, kf2=\E2, kf20=\E\023\E8, kf21=\E\023\E9, -- kf22=\E\023\E0, kf23=\E\023\E!, kf24=\E\023\E@, -- kf25=\E\003\E1, kf26=\E\003\E2, kf27=\E\003\E3, -- kf28=\E\003\E4, kf29=\E\003\E5, kf3=\E3, kf30=\E\003\E6, -- kf31=\E\003\E7, kf32=\E\003\E8, kf33=\E\003\E9, -- kf34=\E\003\E0, kf35=\E\003\E!, kf36=\E\003\E@, -- kf37=\E\001\E1, kf38=\E\001\E2, kf39=\E\001\E3, kf4=\E4, -- kf40=\E\001\E4, kf41=\E\001\E5, kf42=\E\001\E6, -- kf43=\E\001\E7, kf44=\E\001\E8, kf45=\E\001\E9, -- kf46=\E\001\E0, kf47=\E\001\E!, kf48=\E\001\E@, kf5=\E5, -- kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, khome=\Eh, kich1=\E+, -- knp=\E/, kpp=\E?, use=ms-vt100-color, -- --ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+, -- use=ms-vt100+, -- --# expect-5.44.1.15/example/tkterm --# a minimal subset of a vt100 (compare with "news-unk). -+# Added bce based on testing with tack -TD -+# Added several capabilities to pccon+base, reading wsemul_vt100_subr.c -TD -+# Changed kbs to DEL and removed keys that duplicate stty settings -TD - # --# The missing "=" in smkx is not a typo (here), but an error in tkterm. --tt|tkterm|Don Libes' tk text widget terminal emulator, -- clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%p1%d;%p2%dH, cuu1=\E[A, ind=^J, kf1=\EOP, kf2=\EOQ, -- kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, -- kf9=\EOX, rmkx=\E[?1l\E>, rmso=\E[m, smkx=\E[?1h\E, -- smso=\E[7m, -+pccon+keys|OpenBSD PC keyboard keys, -+ kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[3~, kend=\E[8~, kent=^M, kf1=\E[11~, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, kf3=\E[13~, -+ kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, -+ kf9=\E[20~, khome=\E[7~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -+ krfr=^R, -+pccon+sgr+acs0|sgr and simple ASCII pseudographics for OpenBSD PC console, -+ acsc=+>\,<-\^.v0#`+a\:f\\h#i#j+k+l+m+n+o~p-q-r-s_t+u+v+w+x|y#z#{*|!}#~o, -+ sgr=\E[0%?%p1%p3%|%t;7%;m, sgr0=\E[m, -+pccon+sgr+acs|sgr and default ASCII pseudographics for OpenBSD PC console, -+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ enacs=\E)0$<5>, rmacs=\E(B$<5>, -+ sgr=\E[0%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<5>, -+ sgr0=\E[m\E(B$<5>, smacs=\E(0$<5>, -+pccon+colors|ANSI colors for OpenBSD PC console, -+ bce, -+ colors#8, pairs#64, -+ op=\E[m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+pccon+base|base capabilities for OpenBSD PC console, -+ am, km, mc5i, msgr, npc, nxon, xenl, xon, -+ cols#80, it#8, lines#24, -+ bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, -+ dch1=\E[P, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -+ el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ il1=\E[L, ind=\ED, nel=\EE, rev=\E[7m, ri=\EM, rmam=\E[?7l, -+ rmso=\E[m, rs2=\Ec$<50>, smam=\E[?7h, smso=\E[7m, -+ tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, -+pccon0-m|OpenBSD PC console without colors & with simple ASCII pseudographics, -+ use=pccon+base, use=pccon+sgr+acs0, use=pccon+keys, -+pccon0|OpenBSD PC console with simple ASCII pseudographics, -+ use=pccon0-m, use=pccon+colors, -+pccon-m|OpenBSD PC console without colors, -+ use=pccon+base, use=pccon+sgr+acs, use=pccon+keys, -+pccon|OpenBSD PC console, -+ use=pccon-m, use=pccon+colors, - --#### X terminal emulators --# --# You can add the following line to your .Xdefaults to change the terminal type --# set by the xterms you start up to my-xterm: --# --# *termName: my-xterm -+#### NetBSD consoles - # --# System administrators can change the default entry for xterm instances --# by adding a similar line to /usr/X11/lib/X11/app-defaults/XTerm. In either --# case, xterm will detect and reject an invalid terminal type, falling back --# to the default of xterm. -+# pcvt termcap database entries (corresponding to release 3.31) -+# Author's last edit-date: [Fri Sep 15 20:29:10 1995] - # -+# (For the terminfo master file, I translated these into terminfo syntax. -+# Then I dropped all the pseudo-HP entries. we don't want and can't use -+# the :Xs: flag. Then I split :is: into a size-independent <is1> and a -+# size-dependent <is2>. Finally, I added <rmam>/<smam> -- esr) - --# X10/6.6 11/7/86, minus alternate screen, plus (csr) --# (xterm: ":MT:" changed to ":km:"; added <smam>/<rmam> based on init string; --# removed (hs, eslok, tsl=\E[?E\E[?%i%dT, fsl=\E[?F, dsl=\E[?E) --# as these seem not to work -- esr) --x10term|vs100-x10|xterm terminal emulator (X10 window system), -- OTbs, am, km, mir, msgr, xenl, xon, -- cols#80, it#8, lines#65, -- bold=\E[1m, clear=\E[H\E[2J, csr=\E[%i%p1%d;%p2%dr, -- cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL, -- il1=\E[L, ind=^J, is2=\E\E[m\E[?7h\E[?1;4l, kbs=^H, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, -- kf2=\EOQ, kf3=\EOR, kf4=\EOS, rev=\E[7m, ri=\EM, rmam=\E[?7l, -- rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, smam=\E[?7h, smir=\E[4h, smkx=\E[?1h\E=, -- smso=\E[7m, smul=\E[4m, --# Compatible with the R5 xterm --# (from the XFree86 3.2 distribution, <blink=@> removed) --# added khome/kend, rmir/smir, rmul/smul, hts based on the R5 xterm code - TD --# corrected typos in rs2 string - TD --# added u6-u9 -TD --xterm-r5|xterm R5 version, -- OTbs, am, km, msgr, xenl, -- cols#80, it#8, lines#24, -- bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, -- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, -- kdl1=\E[31~, kel=\E[8~, kend=\E[4~, kf0=\EOq, kf1=\E[11~, -- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, -- kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, -- kil1=\E[30~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, rc=\E8, -- rev=\E[7m, ri=\EM, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, -- rmul=\E[m, -- rs2=\E>\E[?1;3;4;5;6l\E[4l\E[?7h\E[m\E[r\E[2J\E[H, -- sc=\E7, -- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, -- sgr0=\E[m, smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, use=vt100+enq, --# Compatible with the R6 xterm --# (from XFree86 3.2 distribution, <acsc> and <it> added, <blink@> removed) --# added khome/kend, hts based on the R6 xterm code - TD --# (khome/kend do not actually work in X11R5 or X11R6, but many people use this --# for compatibility with other emulators). --xterm-r6|xterm-old|xterm X11R6 version, -- OTbs, am, km, mir, msgr, xenl, -- cols#80, it#8, lines#24, -- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -+# NOTE: <ich1> has been taken out of this entry. for reference, it should -+# be <ich1=\E[@>. For discussion, see ICH/ICH1 VERSUS RMIR/SMIR below. -+# (esr: added <civis> and <cnorm> to resolve NetBSD Problem Report #4583) -+pcvtXX|pcvt vt200 emulator (DEC VT220), -+ am, km, mir, msgr, xenl, -+ it#8, vt#3, -+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, - csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, enacs=\E)0, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, -- il1=\E[L, ind=^J, -- is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8, kbs=^H, -+ el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=\ED, indn=\E[%p1%dS, -+ is1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kbs=\177, - kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kdch1=\E[3~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -- kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, -- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- kfnd=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -- kslt=\E[4~, meml=\El, memu=\Em, rc=\E8, rev=\E[7m, ri=\EM, -- rmacs=^O, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, -- rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -- rs2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8, sc=\E7, -- sgr0=\E[m, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h, -+ kdch1=\E[3~, kf1=\E[17~, kf2=\E[18~, kf3=\E[19~, -+ kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, -+ khome=\E[1~, kich1=\E[2~, kll=\E[4~, knp=\E[6~, kpp=\E[5~, -+ nel=\EE, rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt100, -+ ri=\EM, rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l, -+ rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, -+ rs1=\Ec\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sgr0=\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h, - smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- use=vt100+enq, --# This is the base xterm entry for the xterm supplied with XFree86 3.2 & up. --# The name has been changed and some aliases have been removed. --xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System), -- OTbs, am, bce, km, mir, msgr, xenl, -- cols#80, it#8, lines#24, ncv@, -- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0, -- flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG, -- ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, -- il1=\E[L, ind=^J, -- is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>, -- kbeg=\EOE, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -- kcuu1=\EOA, kdch1=\177, kend=\EOF, kf1=\E[11~, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, -- kf19=\E[33~, kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, -- kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, -- kf9=\E[20~, kfnd=\E[1~, khome=\EOH, kich1=\E[2~, -- kmous=\E[M, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, meml=\El, -- memu=\Em, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l, -- rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E[?1l\E>, -- rmso=\E[27m, rmul=\E[24m, rs1=^O, -- rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>, sc=\E7, -- setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h, -- smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt100+enq, -- use=ecma+color, use=vt220+keypad, - --# This is the stock xterm entry supplied with XFree86 3.3, which uses VT100 --# codes for F1-F4 except while in VT220 mode. --xterm-xf86-v33|xterm terminal emulator (XFree86 3.3 Window System), -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, use=xterm-xf86-v32, -+# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor) -+# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and -+# 50 lines entries; 80 columns -+pcvt25|dec vt220 emulation with 25 lines, -+ cols#80, lines#25, -+ is2=\E[1;25r\E[25;1H, use=pcvtXX, -+pcvt28|dec vt220 emulation with 28 lines, -+ cols#80, lines#28, -+ is2=\E[1;28r\E[28;1H, use=pcvtXX, -+pcvt35|dec vt220 emulation with 35 lines, -+ cols#80, lines#35, -+ is2=\E[1;35r\E[35;1H, use=pcvtXX, -+pcvt40|dec vt220 emulation with 40 lines, -+ cols#80, lines#40, -+ is2=\E[1;40r\E[40;1H, use=pcvtXX, -+pcvt43|dec vt220 emulation with 43 lines, -+ cols#80, lines#43, -+ is2=\E[1;43r\E[43;1H, use=pcvtXX, -+pcvt50|dec vt220 emulation with 50 lines, -+ cols#80, lines#50, -+ is2=\E[1;50r\E[50;1H, use=pcvtXX, - --# This version was released in XFree86 3.3.3 (November 1998). --# Besides providing printer support, it exploits a new feature that allows --# xterm to use terminfo-based descriptions with the titeInhibit resource. --# -- the distribution contained incorrect khome/kend values -TD --xterm-xf86-v333|xterm terminal emulator (XFree86 3.3.3 Window System), -- mc5i, -- blink=\E[5m, ich1@, invis=\E[8m, -- is2=\E[!p\E[?3;4l\E[4l\E>, kdch1=\E[3~, kfnd@, kslt@, -- mc0=\E[i, mc4=\E[4i, mc5=\E[5i, rmcup=\E[?1047l\E[?1048l, -- rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- smcup=\E[?1048h\E[?1047h, use=xterm-xf86-v33, -+# NetBSD/FreeBSD vt220 terminal emulator console (pc keyboard & monitor) -+# termcap entries for pure VT220-Emulation and 25, 28, 35, 40, 43 and -+# 50 lines entries; 132 columns -+pcvt25w|dec vt220 emulation with 25 lines and 132 cols, -+ cols#132, lines#25, -+ is2=\E[1;25r\E[25;1H, use=pcvtXX, -+pcvt28w|dec vt220 emulation with 28 lines and 132 cols, -+ cols#132, lines#28, -+ is2=\E[1;28r\E[28;1H, use=pcvtXX, -+pcvt35w|dec vt220 emulation with 35 lines and 132 cols, -+ cols#132, lines#35, -+ is2=\E[1;35r\E[35;1H, use=pcvtXX, -+pcvt40w|dec vt220 emulation with 40 lines and 132 cols, -+ cols#132, lines#40, -+ is2=\E[1;40r\E[40;1H, use=pcvtXX, -+pcvt43w|dec vt220 emulation with 43 lines and 132 cols, -+ cols#132, lines#43, -+ is2=\E[1;43r\E[43;1H, use=pcvtXX, -+pcvt50w|dec vt220 emulation with 50 lines and 132 cols, -+ cols#132, lines#50, -+ is2=\E[1;50r\E[50;1H, use=pcvtXX, - --# This version was released in XFree86 4.0. --xterm-xf86-v40|xterm terminal emulator (XFree86 4.0 Window System), -- npc, -- kDC=\E[3;5~, kEND=\EO5F, kHOM=\EO5H, kIC=\E[2;5~, -- kLFT=\EO5D, kNXT=\E[6;5~, kPRV=\E[5;5~, kRIT=\EO5C, ka1@, -- ka3@, kb2=\EOE, kc1@, kc3@, kcbt=\E[Z, kdch1=\E[3~, kend=\EOF, -- kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S, -- kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, -- kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~, -- kf23=\E[23;2~, kf24=\E[24;2~, kf25=\EO5P, kf26=\EO5Q, -- kf27=\EO5R, kf28=\EO5S, kf29=\E[15;5~, kf30=\E[17;5~, -- 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=\EO6P, -- kf38=\EO6Q, kf39=\EO6R, kf40=\EO6S, 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~, khome=\EOH, rmcup=\E[?1049l, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -- smcup=\E[?1049h, use=xterm-xf86-v333, -+# OpenBSD implements a color variation -+pcvt25-color|dec vt220 emulation with 25 lines and color, -+ cols#80, lines#25, -+ is2=\E[1;25r\E[25;1H, kf1=\EOP, kf10=\E[29~, kf11=\E[23~, -+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -+ kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf5=\E[17~, -+ kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, use=pcvtXX, -+ use=ecma+color, - --# This version was released in XFree86 4.3. --xterm-xf86-v43|xterm terminal emulator (XFree86 4.3 Window System), -- kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~, -- kLFT=\E[1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\E[1;2C, -- kbeg@, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- use=xterm-xf86-v40, -+# Terminfo entries to enable the use of the ncurses library in colour on a -+# NetBSD-arm32 console (only tested on a RiscPC). -+# Created by Dave Millen <dmill@globalnet.co.uk> 22.07.98 -+# modified codes for setf/setb to setaf/setab, then to klone+color, corrected -+# typo in invis - TD -+arm100|arm100-am|Arm(RiscPC) ncurses compatible (for 640x480), -+ am, bce, msgr, xenl, xon, -+ cols#80, it#8, lines#30, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -+ clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C$<2>, -+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, -+ cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, -+ enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, -+ invis=\E[8m$<2>, ka1=\E[q, ka3=\E[s, kb2=\E[r, kbs=^H, -+ kc1=\E[p, kc3=\E[n, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kent=\E[M, kf0=\E[y, kf1=\E[P, kf10=\E[x, -+ kf2=\E[Q, kf3=\E[R, kf4=\E[S, kf5=\E[t, kf6=\E[u, kf7=\E[v, -+ kf8=\E[l, kf9=\E[w, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, -+ rmacs=^O, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>, -+ rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -+ sc=\E7, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<2>, -+ sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, -+ smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, use=ecma+sgr, -+ use=klone+color, - --# This version was released in XFree86 4.4. --xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System), -- cnorm=\E[?12l\E[?25h, cvvis=\E[?12;25h, indn=\E[%p1%dS, -- rin=\E[%p1%dT, use=xterm-xf86-v43, -+arm100-w|arm100-wam|Arm(RiscPC) ncurses compatible (for 1024x768), -+ cols#132, lines#50, use=arm100, - --xterm-xfree86|xterm terminal emulator (XFree86), -- use=xterm-xf86-v44, -+# NetBSD/x68k console vt200 emulator. This port runs on a 68K machine -+# manufactured by Sharp for the Japenese market. -+# From Minoura Makoto <minoura@netlaputa.or.jp>, 12 May 1996 -+x68k|x68k-ite|NetBSD/x68k ITE, -+ cols#96, lines#32, -+ kclr=\E[9~, khlp=\E[28~, use=vt220, - --# This version reflects the current xterm features. --xterm-new|modern xterm terminal emulator, -- npc, -- indn=\E[%p1%dS, kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, -- kIC=\E[2;2~, kNXT=\E[6;2~, kPRV=\E[5;2~, kb2=\EOE, -- kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kend=\EOF, kent=\EOM, khome=\EOH, kich1=\E[2~, kmous=\E[M, -- knp=\E[6~, kpp=\E[5~, rin=\E[%p1%dT, use=xterm+pcfkeys, -- use=xterm-basic, --# --# This fragment describes as much of XFree86 xterm's "pc-style" function --# keys as will fit into terminfo's 60 function keys. --# From ctlseqs.ms: --# Code Modifiers --# --------------------------------- --# 2 Shift --# 3 Alt --# 4 Shift + Alt --# 5 Control --# 6 Shift + Control --# 7 Alt + Control --# 8 Shift + Alt + Control --# --------------------------------- --# The meta key may also be used as a modifier in this scheme, adding another --# bit to the parameter. --xterm+pcfkeys|fragment for PC-style fkeys, -- use=xterm+app, use=xterm+pcf2, use=xterm+pcc2, -- use=xterm+pce2, -+# <tv@pobox.com>: -+# Entry for the DNARD OpenFirmware console, close to ANSI but not quite. - # --xterm+noapp|fragment with cursor keys in normal mode, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[F, -- khome=\E[H, -+# (still unfinished, but good enough so far.) -+ofcons|DNARD OpenFirmware console, -+ bw, -+ cols#80, lines#30, -+ bel=^G, blink=\2335m, bold=\2331m, clear=^L, cr=^M, -+ cub=\233%p1%dD, cub1=\233D, cud=\233%p1%dB, cud1=\233B, -+ cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH, -+ cuu=\233%p1%dA, cuu1=\233A, dch=\233%p1%dP, dch1=\233P, -+ dim=\2332m, dl=\233%p1%dM, dl1=\233M, ed=\233J, el=\233K, -+ flash=^G, ht=^I, ich=\233%p1%d@, ich1=\233@, il=\233%p1%dL, -+ il1=\233L, ind=^J, invis=\2338m, kbs=^H, kcub1=\233D, -+ kcud1=\233B, kcuf1=\233C, kcuu1=\233A, kdch1=\233P, -+ kf1=\2330P, kf10=\2330M, kf2=\2330Q, kf3=\2330W, -+ kf4=\2330x, kf5=\2330t, kf6=\2330u, kf7=\2330q, kf8=\2330r, -+ kf9=\2330p, knp=\233/, kpp=\233?, nel=^M^J, rev=\2337m, -+ rmso=\2330m, rmul=\2330m, -+ sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t2%;%?%p7%t8%;%?%p1%p3%|%t;7%;m, -+ sgr0=\2330m, smso=\2337m, smul=\2334m, - --xterm+app|fragment with cursor keys in application mode, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\EOF, -- khome=\EOH, --# --# The "PC-style" modifier scheme was introduced in xterm patch #94 (1999/3/27) --# and revised in patch #167 (2002/8/24). Some other terminal emulators copied --# the earlier scheme, as noted in the "use=" clauses in this file. -+# NetBSD "wscons" emulator in vt220 mode. -+# This entry is based on the NetBSD termcap entry, correcting the ncv value. -+# The emulator renders underlined text in red. Colors are otherwise usable. - # --# The original assignments from patch #94 for cursor-keys had some technical --# issues: -+# Testing the emulator and reading the source code (NetBSD 2.0), it appears -+# that "vt220" is inaccurate. There are a few vt220-features, but most of the -+# vt220 screens in vttest do not work with this emulator. For instance, it -+# identifies itself (primary DA response) as a vt220 with selective erase. But -+# the selective erase feature does not work. The secondary response is copied -+# from Kermit's emulation of vt220, does not correspond to actual vt220. At -+# the level of detail in a termcap, it is a passable emulator, since ECH does -+# work. Don't use it on a VMS system -TD -+wsvt25|NetBSD wscons in 25 line DEC VT220 mode, -+ bce, msgr, -+ colors#8, cols#80, it#8, lines#25, ncv#2, pairs#64, -+ civis=\E[?25l, cnorm=\E[?25h, is2=\E[r\E[25;1H, -+ kdch1=\E[3~, kend=\E[8~, kf1=\E[11~, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, kf3=\E[13~, -+ kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, -+ kf9=\E[20~, khome=\E[7~, op=\E[m, rs1=\Ec, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=vt220, -+ -+wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta, -+ km, use=wsvt25, -+ -+# NetBSD 6.x still uses wscons, with minor changes (2014/02/22) -TD - # --# A parameter for a function-key to represent a modifier is just more --# bits. But for a cursor-key it may change the behavior of the --# application. For instance, emacs decodes the first parameter of a --# cursor-key as a repeat count. -+# TERM is by default vt100 for the console, wsvt25 for other ttys. -+# Initial testing set TERM=xterm, based on comments by developers, found too -+# many differences to continue in that path. However, test-results may be -+# useful to people curious about compatibility with xterm. - # --# A parameterized string should (really) not begin with SS3 (\EO). --# Rather, CSI (\E[) should be used. -+# Testing with tack: -+# ----------------- -+# Failed: cbt, bel, flash, cvvis, smul (color), blink, invis -+# There is color-bleeding in the color-pairs screen. -+# Attributes do not work with color -+# Failed: vpa/hpa -+# Failed: kf1-kf4, kf13-kf48, khome, kend -+# (effectively xterm-r6 for function-keys) -+# None of the function or cursor key-modifiers are encoded. -+# Console hangs in the smm/rmm test if TERM=xterm, does not show test - # --# For these reasons, the original assignments were deprecated. For --# compatibility reasons, they are still available as a setting of xterm's --# modifyCursorKeys resource. These fragments list the modified cursor-keys --# that might apply to xterm+pcfkeys with different values of that resource. --xterm+pcc3|fragment with modifyCursorKeys:3, -- kLFT=\E[>1;2D, kRIT=\E[>1;2C, kind=\E[>1;2B, -- kri=\E[>1;2A, kDN=\E[>1;2B, kDN3=\E[>1;3B, kDN4=\E[>1;4B, -- kDN5=\E[>1;5B, kDN6=\E[>1;6B, kDN7=\E[>1;7B, -- kLFT3=\E[>1;3D, kLFT4=\E[>1;4D, kLFT5=\E[>1;5D, -- kLFT6=\E[>1;6D, kLFT7=\E[>1;7D, kRIT3=\E[>1;3C, -- kRIT4=\E[>1;4C, kRIT5=\E[>1;5C, kRIT6=\E[>1;6C, -- kRIT7=\E[>1;7C, kUP=\E[>1;2A, kUP3=\E[>1;3A, -- kUP4=\E[>1;4A, kUP5=\E[>1;5A, kUP6=\E[>1;6A, -- kUP7=\E[>1;7A, -- --xterm+pcc2|fragment with modifyCursorKeys:2, -- kLFT=\E[1;2D, kRIT=\E[1;2C, kind=\E[1;2B, kri=\E[1;2A, -- kDN=\E[1;2B, kDN3=\E[1;3B, kDN4=\E[1;4B, kDN5=\E[1;5B, -- kDN6=\E[1;6B, kDN7=\E[1;7B, kLFT3=\E[1;3D, kLFT4=\E[1;4D, -- kLFT5=\E[1;5D, kLFT6=\E[1;6D, kLFT7=\E[1;7D, -- kRIT3=\E[1;3C, kRIT4=\E[1;4C, kRIT5=\E[1;5C, -- kRIT6=\E[1;6C, kRIT7=\E[1;7C, kUP=\E[1;2A, kUP3=\E[1;3A, -- kUP4=\E[1;4A, kUP5=\E[1;5A, kUP6=\E[1;6A, kUP7=\E[1;7A, -+# Testing with vttest: -+# ------------------- -+# Identifies as vt220 with selective erase -+# (however, selective erase refers to DECSCA, SPA) -+# Does not implement vt52 -+# Uses spaces to simulate double-size characters -+# Does not support 8-bit controls -+# Does not support VT220 reports -+# Does not support send/receive mode -+# Supports ECH (like rxvt) -+# Does not support DECSCA -+# Does not support any of the ISO-6429 cursor-movement -+# Does not support any of the ISO-6429 miscellaneous tests -+# (SL/SR also leave unexpected char on screen too) -+# Background does not change in menu 11.6.9 (SGR 22-27) -+# None of the xterm special features tests work -+netbsd6|NetBSD wscons in 25 line DEC VT100 mode, -+ kbs=\177, use=wsvt25, - --xterm+pcc1|fragment with modifyCursorKeys:1, -- kLFT=\E[2D, kRIT=\E[2C, kind=\E[2B, kri=\E[2A, kDN=\E[2B, -- kDN3=\E[3B, kDN4=\E[4B, kDN5=\E[5B, kDN6=\E[6B, kDN7=\E[7B, -- kLFT3=\E[3D, kLFT4=\E[4D, kLFT5=\E[5D, kLFT6=\E[6D, -- kLFT7=\E[7D, kRIT3=\E[3C, kRIT4=\E[4C, kRIT5=\E[5C, -- kRIT6=\E[6C, kRIT7=\E[7C, kUP=\E[2A, kUP3=\E[3A, -- kUP4=\E[4A, kUP5=\E[5A, kUP6=\E[6A, kUP7=\E[7A, -+# `rasterconsole' provided by 4.4BSD, NetBSD and OpenBSD on SPARC, and -+# DECstation/pmax. -+rcons|BSD rasterconsole, -+ use=sun-il, -+# Color version of above. Color currently only provided by NetBSD. -+rcons-color|BSD rasterconsole with ANSI color, -+ bce, -+ colors#8, pairs#64, -+ op=\E[m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=rcons, - --xterm+pcc0|fragment with modifyCursorKeys:0, -- kLFT=\EO2D, kRIT=\EO2C, kind=\EO2B, kri=\EO2A, kDN=\EO2B, -- kDN3=\EO3B, kDN4=\EO4B, kDN5=\EO5B, kDN6=\EO6B, kDN7=\EO7B, -- kLFT3=\EO3D, kLFT4=\EO4D, kLFT5=\EO5D, kLFT6=\EO6D, -- kLFT7=\EO7D, kRIT3=\EO3C, kRIT4=\EO4C, kRIT5=\EO5C, -- kRIT6=\EO6C, kRIT7=\EO7C, kUP=\EO2A, kUP3=\EO3A, -- kUP4=\EO4A, kUP5=\EO5A, kUP6=\EO6A, kUP7=\EO7A, -+# mgterm -- MGL/MGL2, MobileGear Graphic Library -+# for PocketBSD,PocketLinux,NetBSD/{hpcmips,mac68k} -+# -- the setf/setb are probably incorrect, more likely setaf/setab -TD -+# -- compare with cons25w -+mgterm, -+ OTbs, OTpt, am, bce, bw, eo, km, msgr, npc, -+ colors#8, cols#80, it#8, lines#18, pairs#64, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -+ cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[30;1m, dl=\E[%p1%dM, -+ dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, -+ home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich=\E[%p1%d@, -+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -+ indn=\E[%p1%dS, kb2=\E[E, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[F, -+ kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X, kf2=\E[N, -+ kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, -+ kf9=\E[U, khome=\E[H, kich1=\E[L, knp=\E[G, kpp=\E[I, -+ nel=\E[E, op=\E[x, rc=\E8, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, -+ rmso=\E[m, rs2=\E[x\E[m\Ec, sc=\E7, setb=\E[4%p1%dm, -+ setf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, vpa=\E[%i%p1%dd, - -+#### FreeBSD console entries - # --# Here are corresponding fragments from xterm patch #216: -+# From: Andrey Chernov <ache@astral.msk.su> 29 Mar 1996 -+# Andrey Chernov maintains the FreeBSD termcap distributions. - # --xterm+pcf0|fragment with modifyFunctionKeys:0, -- kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -- kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S, -- kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, kf2=\EOQ, -- kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~, -- kf23=\E[23;2~, kf24=\E[24;2~, kf25=\EO5P, kf26=\EO5Q, -- kf27=\EO5R, kf28=\EO5S, kf29=\E[15;5~, kf3=\EOR, -- kf30=\E[17;5~, 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=\EO6P, kf38=\EO6Q, kf39=\EO6R, -- kf4=\EOS, kf40=\EO6S, 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=\EO3P, -- kf5=\E[15~, kf50=\EO3Q, kf51=\EO3R, kf52=\EO3S, -- 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~, kf6=\E[17~, kf60=\E[24;3~, kf61=\EO4P, -- kf62=\EO4Q, kf63=\EO4R, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+# Note: Users of FreeBSD 2.1.0 and older versions must either upgrade -+# or comment out the :cb: capability in the console entry. - # --xterm+pcf2|fragment with modifyFunctionKeys:2, -- kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -- kf13=\E[1;2P, kf14=\E[1;2Q, kf15=\E[1;2R, kf16=\E[1;2S, -- kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, kf2=\EOQ, -- kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~, -- kf23=\E[23;2~, kf24=\E[24;2~, kf25=\E[1;5P, kf26=\E[1;5Q, -- kf27=\E[1;5R, kf28=\E[1;5S, kf29=\E[15;5~, kf3=\EOR, -- kf30=\E[17;5~, 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, -- kf4=\EOS, 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, kf5=\E[15~, 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~, kf6=\E[17~, kf60=\E[24;3~, -- kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, -+# Alexander Lukyanov reports: -+# I have seen FreeBSD-2.1.5R... The old el1 bug changed, but it is still there. -+# Now el1 clears not only to the line beginning, but also a large chunk -+# of previous line. But there is another bug - ech does not work at all. - # --# Chunks from xterm #230: --xterm+pce2|fragment with modifyCursorKeys:2, -- kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~, -- kNXT=\E[6;2~, kPRV=\E[5;2~, kich1=\E[2~, knp=\E[6~, -- kpp=\E[5~, kDC3=\E[3;3~, kDC4=\E[3;4~, kDC5=\E[3;5~, -- kDC6=\E[3;6~, kDC7=\E[3;7~, kEND3=\E[1;3F, kEND4=\E[1;4F, -- kEND5=\E[1;5F, kEND6=\E[1;6F, kEND7=\E[1;7F, -- kHOM3=\E[1;3H, kHOM4=\E[1;4H, kHOM5=\E[1;5H, -- kHOM6=\E[1;6H, kHOM7=\E[1;7H, kIC3=\E[2;3~, kIC4=\E[2;4~, -- kIC5=\E[2;5~, kIC6=\E[2;6~, kIC7=\E[2;7~, kNXT3=\E[6;3~, -- kNXT4=\E[6;4~, kNXT5=\E[6;5~, kNXT6=\E[6;6~, -- kNXT7=\E[6;7~, kPRV3=\E[5;3~, kPRV4=\E[5;4~, -- kPRV5=\E[5;5~, kPRV6=\E[5;6~, kPRV7=\E[5;7~, -- use=xterm+edit, -- --xterm+edit|fragment for 6-key editing-keypad, -- kdch1=\E[3~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -- use=xterm+pc+edit, -- --xterm+pc+edit|fragment for pc-style editing keypad, -- kend=\E[4~, khome=\E[1~, -- --xterm+vt+edit|fragment for vt220-style editing keypad, -- kfnd=\E[1~, kslt=\E[4~, - -+# for syscons -+# common entry without semigraphics -+# Bug: The <op> capability resets attributes. -+# Bug? The ech and el1 attributes appear to move the cursor in some cases; for -+# instance el1 does if the cursor is moved to the right margin first. Removed -+# by T.Dickey 97/5/3 (ech=\E[%p1%dX, el1=\E[1K) - # --# 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 --# is shown here (because that is used in mrxvt and mlterm): --xterm+r6f2|xterm with oldFunctionKeys and modifyFunctionKeys:2, -- kf1=\E[11~, kf13=\E[11;2~, kf14=\E[12;2~, kf15=\E[13;2~, -- kf16=\E[14;2~, kf2=\E[12~, kf25=\E[11;5~, kf26=\E[12;5~, -- kf27=\E[13;5~, kf28=\E[14;5~, kf3=\E[13~, kf37=\E[11;6~, -- kf38=\E[12;6~, kf39=\E[13;6~, kf4=\E[14~, kf40=\E[14;6~, -- kf49=\E[11;3~, kf50=\E[12;3~, kf51=\E[13;3~, -- kf52=\E[14;3~, kf61=\E[11;4~, kf62=\E[12;4~, -- kf63=\E[13;4~, use=xterm+pcf2, -+# Setting colors turns off reverse; we cannot guarantee order, so use ncv. -+# Note that this disables standout with color. - # --# This chunk is used for building the VT220/Sun/PC keyboard variants. --xterm-basic|modern xterm terminal emulator - common, -- OTbs, am, bce, km, mc5i, mir, msgr, xenl, AX, -- colors#8, cols#80, it#8, lines#24, pairs#64, -- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+# The emulator sends difference strings based on shift- and control-keys, -+# like scoansi: -+# F13-F24 are shifted F1-F12 -+# F25-F36 are control F1-F12 -+# F37-F48 are shift+control F1-F12 -+cons25w|ansiw|ansi80x25-raw|freebsd console (25-line raw mode), -+ am, bce, bw, eo, msgr, npc, -+ colors#8, cols#80, it#8, lines#25, ncv#21, pairs#64, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -+ cnorm=\E[=0C, cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, -+ cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, -- flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG, -- ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, -- ind=^J, invis=\E[8m, is2=\E[!p\E[?3;4l\E[4l\E>, kbs=^H, -- kmous=\E[M, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, meml=\El, -- memu=\Em, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, -- rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l, rmir=\E[4l, -- rmkx=\E[?1l\E>, rmm=\E[?1034l, rmso=\E[27m, rmul=\E[24m, -- rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>, sc=\E7, -+ cvvis=\E[=1C, dch=\E[%p1%dP, dch1=\E[P, dim=\E[30;1m, -+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -+ home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich=\E[%p1%d@, -+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -+ indn=\E[%p1%dS, kb2=\E[E, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[F, -+ kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X, kf13=\E[Y, -+ kf14=\E[Z, kf15=\E[a, kf16=\E[b, kf17=\E[c, kf18=\E[d, -+ kf19=\E[e, kf2=\E[N, kf20=\E[f, kf21=\E[g, kf22=\E[h, -+ kf23=\E[i, kf24=\E[j, kf25=\E[k, kf26=\E[l, kf27=\E[m, -+ kf28=\E[n, kf29=\E[o, kf3=\E[O, kf30=\E[p, kf31=\E[q, -+ kf32=\E[r, kf33=\E[s, kf34=\E[t, kf35=\E[u, kf36=\E[v, -+ kf37=\E[w, kf38=\E[x, kf39=\E[y, kf4=\E[P, kf40=\E[z, -+ kf41=\E[@, kf42=\E[[, kf43=\E[\\, kf44=\E[], kf45=\E[\^, -+ kf46=\E[_, kf47=\E[`, kf48=\E[{, kf5=\E[Q, kf6=\E[R, -+ kf7=\E[S, kf8=\E[T, kf9=\E[U, khome=\E[H, kich1=\E[L, -+ knp=\E[G, kpp=\E[I, nel=\E[E, op=\E[x, rc=\E8, rev=\E[7m, -+ ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, rs2=\E[x\E[m\Ec, sc=\E7, - setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m, -- sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smcup=\E[?1049h, -- smir=\E[4h, smkx=\E[?1h\E=, smm=\E[?1034h, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt100+enq, -- --# From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997 --# In retrospect, something like xterm-r6 was intended here -TD --xterm-xi|xterm on XI Graphics Accelerated X under BSD/OS 3.1, -- rmso=\E[m, rmul=\E[m, use=xterm-xf86-v33, -- --# 16-colors is one of the variants of XFree86 3.3 xterm, updated for 4.0 (T.Dickey) --# If configured to support 88- or 256-colors (which is fairly common in 2009), --# xterm also recognizes the control sequences for initc -TD --xterm-16color|xterm with 16 colors like aixterm, -- ccc, -- initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\, -- use=ibm+16color, use=xterm-new, -- --# 256-colors is a compile-time feature of XFree86 xterm beginning with --# patch #111 (1999/7/10) -TD --xterm+256color|xterm 256-color feature, -- ccc, -- colors#256, pairs#32767, -- initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\, -- setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m, -- setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m, -- setb@, setf@, -+ sgr=\E[0%?%p1%t;2;7%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;30;1%;%?%p6%t;1%;m, -+ sgr0=\E[m, smso=\E[7m, vpa=\E[%i%p1%dd, -+cons25|ansis|ansi80x25|freebsd console (25-line ansi mode), -+ acsc=-\030.^Y0\333`\004a\260f\370g\361h\261i\025j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371, -+ use=cons25w, -+cons25-debian|freebsd console with debian backspace (25-line ansi mode), -+ kbs=\177, kdch1=\E[3~, use=cons25, -+cons25-m|ansis-mono|ansi80x25-mono|freebsd console (25-line mono ansi mode), -+ colors@, pairs@, -+ bold@, dim@, op@, rmul=\E[m, setab@, setaf@, -+ sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m, -+ smul=\E[4m, use=cons25, -+cons30|ansi80x30|freebsd console (30-line ansi mode), -+ lines#30, use=cons25, -+cons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode), -+ lines#30, use=cons25-m, -+cons43|ansi80x43|freebsd console (43-line ansi mode), -+ lines#43, use=cons25, -+cons43-m|ansi80x43-mono|freebsd console (43-line mono ansi mode), -+ lines#43, use=cons25-m, -+cons50|ansil|ansi80x50|freebsd console (50-line ansi mode), -+ lines#50, use=cons25, -+cons50-m|ansil-mono|ansi80x50-mono|freebsd console (50-line mono ansi mode), -+ lines#50, use=cons25-m, -+cons60|ansi80x60|freebsd console (60-line ansi mode), -+ lines#60, use=cons25, -+cons60-m|ansi80x60-mono|freebsd console (60-line mono ansi mode), -+ lines#60, use=cons25-m, -+cons25r|pc3r|ibmpc3r|cons25-koi8-r|freebsd console w/koi8-r cyrillic, -+ acsc=-\030.^Y0\215`\004a\220f\234h\221i\025j\205k\203l\202m\204n\212q\0t\206u\207v\211w\210x\201y\230z\231~\225, -+ use=cons25w, -+cons25r-m|pc3r-m|ibmpc3r-mono|cons25-koi8r-m|freebsd console w/koi8-r cyrillic (mono), -+ colors@, pairs@, -+ op@, rmul=\E[m, setab@, setaf@, -+ sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;30;1%;%?%p6%t;1%;m, -+ smul=\E[4m, use=cons25r, -+cons50r|cons50-koi8r|freebsd console w/koi8-r cyrillic (50 lines), -+ lines#50, use=cons25r, -+cons50r-m|cons50-koi8r-m|freebsd console w/koi8-r cyrillic (50-line mono), -+ lines#50, use=cons25r-m, -+cons60r|cons60-koi8r|freebsd console w/koi8-r cyrillic (60 lines), -+ lines#60, use=cons25r, -+cons60r-m|cons60-koi8r-m|freebsd console w/koi8-r cyrillic (60-line mono), -+ lines#60, use=cons25r-m, -+# ISO 8859-1 FreeBSD console -+cons25l1|cons25-iso8859|freebsd console w/iso 8859-1 chars, -+ acsc=+\253\,\273-\030.\031`\201a\202f\207g\210i\247j\213k\214l\215m\216n\217o\220p\221q\222r\223s\224t\225u\226v\227w\230x\231y\232z\233~\237, -+ use=cons25w, -+cons25l1-m|cons25-iso-m|freebsd console w/iso 8859-1 chars (mono), -+ colors@, pairs@, -+ bold@, dim@, op@, rmul=\E[m, setab@, setaf@, -+ sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m, -+ smul=\E[4m, use=cons25l1, -+cons50l1|cons50-iso8859|freebsd console w/iso 8859-1 chars (50 lines), -+ lines#50, use=cons25l1, -+cons50l1-m|cons50-iso-m|freebsd console w/iso 8859-1 chars (50-line mono), -+ lines#50, use=cons25l1-m, -+cons60l1|cons60-iso|freebsd console w/iso 8859-1 chars (60 lines), -+ lines#60, use=cons25l1, -+cons60l1-m|cons60-iso-m|freebsd console w/iso 8859-1 chars (60-line mono), -+ lines#60, use=cons25l1-m, - --# 88-colors is a compile-time feature of XFree86 xterm beginning with --# patch #115 (1999/9/18) -TD -+# Starting with FreeBSD 8, an alternative configuration for syscons is provided, -+# which is intended to be xterm-compatible. See for example -+# http://svnweb.freebsd.org/base/stable/8/sys/dev/syscons/ -+# in particular scterm-teken.c - # --# Note that the escape sequences used are the same as for 256-colors - xterm --# has a different table of default color resource values. If built for --# 256-colors, it can still handle an 88-color palette by using the initc --# capability. -+# For FreeBSD 9 and 10: -+# -------------------- -+# The /etc/ttys entries for console and other ttys are all configured to set -+# TERM=xterm. - # --# At this time (2007/7/14), except for rxvt 2.7.x, none of the other terminals --# which support the xterm+256color feature support the associated initc --# capability. So it is cancelled in the entries which use this and/or the --# xterm+256color block. -+# Testing with tack: -+# There is no VT100 line-drawing (uses +'s and -'s) -+# Shifted f1-f12 give cons25 codes, rather than xterm function-keys - # --# The default color palette for the 256- and 88-colors are different. A --# given executable will have one palette (perhaps compiled-in). If the program --# supports xterm's control sequence, it can be programmed using initc. --xterm+88color|xterm 88-color feature, -- colors#88, pairs#7744, use=xterm+256color, -+# Testing with vttest: -+# Menu 2 diamonds don't work, blink ditto, light background ditto -+# The terminal identifies itself as VT100 with AVO -+# There is no VT52 support -+# There is no doublesize character support -+# The terminal supports ECH (like rxvt) -+# The terminal does not support send/receive mode -+# The terminal supports all of the ISO-6429 cursor-movement -+# The terminal supports some of the ISO-6429 miscellaneous tests -+# (SL/SR also leave unexpected char on screen too) -+# -+# Considering cons25 as a base, the line-drawing mostly works, but is missing -+# the cells which happen to have ASCII control-character values: -+# - ^X arrow pointing up -+# . ^Y arrow pointing down -+# i ^Y lantern -+# ` ^D diamond -+# -+# Those are removed from this entry's acsc string to avoid confusion. -+# The resulting description provides correct line-drawing and function-keys -TD -+teken|syscons with teken, -+ bw@, mir, xenl, -+ acsc=0\333a\260f\370g\361h\261j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263y\363z\362~\371, -+ civis=\E[?25l, cnorm=\E[?25h, cvvis@, hpa=\E[%i%p1%dG, -+ hts=\EH, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[3~, kend=\E[F, kent=^M, kf1=\EOP, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, rmir=\E[4l, -+ smir=\E[4h, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, -+ u8=\E[?1;2c, u9=\E[c, vpa=\E[%i%p1%dd, use=cons25, - --# These variants of XFree86 3.9.16 xterm are built as a configure option. --xterm-256color|xterm with 256 colors, -- use=xterm+256color, use=xterm-new, --xterm-88color|xterm with 88 colors, -- use=xterm+88color, use=xterm-256color, -+#### 386BSD and BSD/OS Consoles -+# - --# These two are used to demonstrate the any-event mouse support, i.e., by --# using an extended name "XM" which tells ncurses to put the terminal into --# a special mode when initializing the xterm mouse. --xterm-1002|testing xterm-mouse, -- XM=\E[?1002%?%p1%{1}%=%th%el%;, use=xterm-new, --xterm-1003|testing xterm-mouse, -- XM=\E[?1003%?%p1%{1}%=%th%el%;, use=xterm-new, -+# This was the original 386BSD console entry (I think). -+# Some places it's named oldpc3|oldibmpc3. -+# From: Alex R.N. Wetmore <aw2t@andrew.cmu.edu> -+origpc3|origibmpc3|IBM PC 386BSD Console, -+ OTbs, am, bw, eo, xon, -+ cols#80, lines#25, -+ acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -+ bold=\E[7m, clear=\Ec, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\E[J, el=\E[K, -+ home=\E[H, ind=\E[S, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, khome=\E[Y, ri=\E[T, rmso=\E[1;0x\E[2;7x, -+ rmul=\E[1;0x\E[2;7x, sgr0=\E[m\E[1;0x\E[2;7x, -+ smso=\E[1;7x\E[2;0x, smul=\E[1;7x\E[2;0x, - --# This is another variant, for XFree86 4.0 xterm (T.Dickey) --# This is an 8-bit version of xterm, which emulates DEC vt220 with ANSI color. --# To use it, your decTerminalID resource must be set to 200 or above. --# --# HTS \E H \210 --# RI \E M \215 --# SS3 \E O \217 --# CSI \E [ \233 --# --xterm-8bit|xterm terminal emulator 8-bit controls (X Window System), -- OTbs, am, bce, km, mc5i, mir, msgr, npc, xenl, AX, -- colors#8, cols#80, it#8, lines#24, pairs#64, -- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\2335m, bold=\2331m, cbt=\233Z, -- civis=\233?25l, clear=\233H\2332J, -- cnorm=\233?25l\233?25h, cr=^M, csr=\233%i%p1%d;%p2%dr, -- cub=\233%p1%dD, cub1=^H, cud=\233%p1%dB, cud1=^J, -- cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH, -- cuu=\233%p1%dA, cuu1=\233A, cvvis=\233?12;25h, -- dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M, -- ech=\233%p1%dX, ed=\233J, el=\233K, el1=\2331K, -- flash=\233?5h$<100/>\233?5l, home=\233H, -- hpa=\233%i%p1%dG, ht=^I, hts=\210, ich=\233%p1%d@, -- il=\233%p1%dL, il1=\233L, ind=^J, invis=\2338m, -- is2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8, -- ka1=\217w, ka3=\217u, kb2=\217y, kbeg=\217E, kbs=^H, -- kc1=\217q, kc3=\217s, kcbt=\233Z, kcub1=\217D, kcud1=\217B, -- kcuf1=\217C, kcuu1=\217A, kdch1=\2333~, kend=\2334~, -- kent=\217M, kf1=\23311~, kf10=\23321~, kf11=\23323~, -- kf12=\23324~, kf13=\23325~, kf14=\23326~, kf15=\23328~, -- kf16=\23329~, kf17=\23331~, kf18=\23332~, kf19=\23333~, -- kf2=\23312~, kf20=\23334~, kf3=\23313~, kf4=\23314~, -- kf5=\23315~, kf6=\23317~, kf7=\23318~, kf8=\23319~, -- kf9=\23320~, khome=\2331~, kich1=\2332~, kmous=\233M, -- knp=\2336~, kpp=\2335~, mc0=\233i, mc4=\2334i, mc5=\2335i, -- meml=\El, memu=\Em, op=\23339;49m, rc=\E8, rev=\2337m, -- ri=\215, rmacs=\E(B, rmam=\233?7l, rmcup=\233?1049l, -- rmir=\2334l, rmkx=\233?1l\E>, rmso=\23327m, rmul=\23324m, -- rs1=\Ec, -- rs2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8, -- sc=\E7, setab=\2334%p1%dm, setaf=\2333%p1%dm, -- setb=\2334%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- setf=\2333%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;, -- sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h, -- smcup=\233?1049h, smir=\2334h, smkx=\233?1h\E=, -- smso=\2337m, smul=\2334m, tbc=\2333g, u6=\233[%i%d;%dR, -- u7=\E[6n, u8=\233[?1;2c, u9=\E[c, vpa=\233%i%p1%dd, -- --xterm-hp|xterm with hpterm function keys, -- kclr=\EJ, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -- kdch1=\EP, kend=\EF, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, -- kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, kich1=\EQ, -- knp=\ES, kpp=\ET, use=xterm-basic, -- --xterm-sco|xterm with SCO function keys, -- kbeg=\E[E, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W, -- kf12=\E[X, kf13=\E[Y, kf14=\E[Z, kf15=\E[a, kf16=\E[b, -- kf17=\E[c, kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f, -- kf21=\E[g, kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k, -- kf26=\E[l, kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O, -- kf30=\E[p, kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t, -- kf35=\E[u, kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y, -- kf4=\E[P, kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\, -- kf44=\E[], kf45=\E[\^, kf46=\E[_, kf47=\E[`, kf48=\E[{, -- kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, kf9=\E[U, khome=\E[H, -- kich1=\E[L, kmous=\E[>M, knp=\E[G, kpp=\E[I, -- use=xterm-basic, -+# description of BSD/386 console emulator in version 1.0 (supplied by BSDI) -+oldpc3|oldibmpc3|old IBM PC BSD/386 Console, -+ OTbs, km, -+ lines#25, -+ bel=^G, bold=\E[=15F, cr=^M, cud1=^J, dim=\E[=8F, dl1=\E[M, -+ ht=^I, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L, kll=\E[F, -+ knp=\E[G, kpp=\E[I, nel=^M^J, sgr0=\E[=R, - --# The xterm-new description has all of the features, but is not completely --# compatible with vt220. If you are using a Sun or PC keyboard, set the --# sunKeyboard resource to true: --# + maps the editing keypad --# + interprets control-function-key as a second array of keys, so a --# 12-fkey keyboard can support vt220's 20-fkeys. --# + maps numeric keypad "+" to ",". --# + uses DEC-style control sequences for the application keypad. --# --xterm-vt220|xterm emulating vt220, -- kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kend=\E[4~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -- kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, -- kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~, -- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -- use=xterm+app, use=xterm+edit, use=xterm-basic, -- use=vt220+keypad, -+# Description of BSD/OS console emulator in version 1.1, 2.0, 2.1 -+# Note, the emulator supports many of the additional console features -+# listed in the iBCS2 (e.g. character-set selection) though not all -+# are described here. This entry really ought to be upgraded. -+# Also note, the console will also work with fewer lines after doing -+# "stty rows NN", e.g. to use 24 lines. -+# (Color support from Kevin Rosenberg <kevin@cyberport.com>, 2 May 1996) -+# Bug: The <op> capability resets attributes. -+bsdos-pc|IBM PC BSD/OS Console, -+ sgr=\E[0;10%?%p1%t;7%;%?%p2%t;1%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, -+ use=bsdos-pc-nobold, - --xterm-vt52|xterm emulating dec vt52, -- cols#80, it#8, lines#24, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, clear=\EH\EJ, cr=^M, cub1=\ED, cud1=\EB, cuf1=\EC, -- cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, ed=\EJ, el=\EK, -- home=\EH, ht=^I, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, -- kcuf1=\EC, kcuu1=\EA, nel=^M^J, ri=\EI, rmacs=\EG, smacs=\EF, -+bsdos-pc-nobold|BSD/OS PC console w/o bold, -+ use=klone+color, use=bsdos-pc-m, - --xterm-noapp|xterm with cursor keys in normal mode, -- rmcup@, rmkx=\E>, smcup@, smkx=\E=, use=xterm+noapp, -- use=xterm, -+bsdos-pc-m|bsdos-pc-mono|BSD/OS PC console mono, -+ OTbs, am, eo, km, xon, -+ cols#80, it#8, lines#25, -+ bel=^G, clear=\Ec, cr=^M, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L, -+ kll=\E[F, knp=\E[G, kpp=\E[I, nel=^M^J, rc=\E8, sc=\E7, -+ sgr=\E[0;10%?%p1%t;7%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m%?%p5%t\E[=8F%;, -+ use=klone+sgr8, - --xterm-24|vs100|xterms|xterm terminal emulator (X Window System), -- lines#24, use=xterm-old, -+# Old names for BSD/OS PC console used in releases before 4.1. -+pc3|BSD/OS on the PC Console, -+ use=bsdos-pc-nobold, -+ibmpc3|pc3-bold|BSD/OS on the PC Console with bold instead of underline, -+ use=bsdos-pc, - --# This is xterm for ncurses. --xterm|xterm terminal emulator (X Window System), -- use=xterm-new, -+# BSD/OS on the SPARC -+bsdos-sparc|Sun SPARC BSD/OS Console, -+ use=sun, - --# This entry assumes that xterm's handling of VT100 SI/SO is disabled by --# setting the vt100Graphics resource to false. --xterm-utf8|xterm with no VT100 line-drawing in UTF-8 mode, -- U8#1, use=xterm, -+# BSD/OS on the PowerPC -+bsdos-ppc|PowerPC BSD/OS Console, -+ use=bsdos-pc, - --# These entries allow access to the X titlebar and icon name as a status line. --# Note that twm (and possibly window managers descended from it such as tvtwm, --# ctwm, and vtwm) track windows by icon-name; thus, you don't want to mess --# with it. --xterm+sl|access X title line and icon name, -- hs, -- wsl#40, -- dsl=\E]0;\007, fsl=^G, tsl=\E]0;, use=xterm, --xterm+sl-twm|access X title line (pacify twm-descended window managers), -- hs, -- wsl#40, -- dsl=\E]2;\007, fsl=^G, tsl=\E]2;, use=xterm, - -+#### DEC VT52 -+# (<acsc>/<rmacs>/<smacs> capabilities aren't in DEC's official entry -- esr) - # --# The following xterm variants don't depend on your base version --# --# xterm with bold instead of underline --xterm-bold|xterm terminal emulator (X11R6 Window System) standout w/bold, -- smso=\E[7m, smul=\E[1m, use=xterm-old, --# (kterm: this had extension capabilities ":KJ:TY=ascii:" -- esr) --# (kterm should not invoke DEC Graphics as the alternate character set --# -- Kenji Rikitake) --# (proper setting of enacs, smacs, rmacs makes kterm to use DEC Graphics --# -- MATSUMOTO Shoji) --# kterm implements acsc via built-in table of X Drawable's --kterm|kterm kanji terminal emulator (X window system), -- eslok, hs, XT, -- ncv@, -- acsc=``aajjkkllmmnnooppqqrrssttuuvvwwxx~~, -- csr=\E[%i%p1%d;%p2%dr, dsl=\E[?H, enacs=, fsl=\E[?F, -- kmous=\E[M, rc=\E8, rmacs=\E(B, rmam=\E[?7l, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;, -- sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, -- tsl=\E[?E\E[?%i%p1%dT, use=xterm-r6, use=ecma+color, --kterm-color|kterm-co|kterm with ANSI colors, -- ncv@, use=kterm, use=ecma+color, --# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file --xterm-nic|xterm with ich/ich1 suppressed for non-curses programs, -- ich@, ich1@, use=xterm, --# From: Mark Sheppard <kimble@mistral.co.uk>, 4 May 1996 --xterm1|xterm terminal emulator ignoring the alternate screen buffer, -- rmcup@, smcup@, use=xterm, -- --# This describes the capabilities of color_xterm, an xterm variant from --# before ECMA-64 color support was folded into the main-line xterm release. --# This entry is straight from color_xterm's maintainer. --# From: Jacob Mandelson <jlm@ugcs.caltech.edu>, 09 Nov 1996 --# The README's with the distribution also say that it supports SGR 21, 24, 25 --# and 27, but they are not present in the terminfo or termcap. --color_xterm|cx|cx100|color_xterm color terminal emulator for X, -- OTbs, am, km, mir, msgr, xenl, XT, -- cols#80, it#8, lines#65, ncv@, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, el1=\E[1K, enacs=\E(B\E)0, home=\E[H, ht=^I, -- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, -- is1=\E[r\E[m\E[?7h\E[?4;6l\E[4l, kbs=^H, kcub1=\EOD, -- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[8~, kf1=\E[11~, -- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, -- kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, khome=\E[7~, kich1=\E[2~, -- kmous=\E[M, knp=\E[6~, kpp=\E[5~, rc=\E8, rev=\E[7m, ri=\EM, -- rmacs=^O, rmam=\E[?7l, rmcup=\E>\E[?41;1r, rmir=\E[4l, -- rmso=\E[27m, rmul=\E[24m, -- rs1=\E(B\017\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E<, -- sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -- sgr0=\E[0m\017, smacs=^N, smam=\E[?7h, -- smcup=\E[?1;41s\E[?1;41h\E=, smir=\E[4h, smso=\E[7m, -- smul=\E[4m, use=ecma+color, use=vt220+keypad, -+# Actually (TD pointed this out at the time the acsc string was added): -+# vt52 shouldn't define full acsc since most of the cells don't match. -+# see vt100 manual page A-31. This is the list that does match: -+# f degree -+# g plus/minus -+# h right-arrow -+# k down-arrow -+# m scan-1 -+# o scan-3 -+# q scan-5 -+# s scan-7 -+# The line-drawing happens to work in several terminal emulators, but should -+# not be used as a guide to the capabilities of the vt52. Note in particular -+# that vt52 does not support line-drawing characters (the scan-X values refer -+# to a crude plotting feature) -TD -+vt52|dec vt52, -+ OTbs, -+ cols#80, it#8, lines#24, -+ acsc=+h.k0affggolpnqprrss, bel=^G, clear=\EH\EJ, cr=^M, -+ cub1=\ED, cud1=\EB, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, -+ el=\EK, home=\EH, ht=^I, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, -+ kcuf1=\EC, kcuu1=\EA, nel=^M^J, ri=\EI, rmacs=\EG, smacs=\EF, - --# The 'nxterm' distributed with Redhat Linux 5.2 is a slight rehack of --# xterm-sb_right-ansi-3d, which implements ANSI colors, but does not support --# SGR 39 or 49. SGR 0 does reset colors (along with everything else). This --# description is "compatible" with color_xterm, rxvt and XFree86 xterm, except --# that each of those implements the home, end, delete keys differently. -+#### DEC VT100 and compatibles - # --# Redhat Linux 6.x distributes XFree86 xterm as "nxterm", which uses bce --# colors; note that this is not compatible with the 5.2 version. --# csw (2002-05-15): make xterm-color primary instead of nxterm, to --# match XFree86's xterm.terminfo usage and prevent circular links --xterm-color|nxterm|generic color xterm, -- ncv@, -- op=\E[m, use=xterm-r6, use=klone+color, -- --# this describes the alpha-version of Gnome terminal shipped with Redhat 6.0 --gnome-rh62|Gnome terminal, -- bce, -- kdch1=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -- use=xterm-color, -- --# GNOME Terminal 1.4.0.4 (Redhat 7.2) -+# DEC terminals from the vt100 forward are collected here. Older DEC terminals -+# and micro consoles can be found in the `obsolete' section. More details on -+# the relationship between the VT100 and ANSI X3.64/ISO 6429/ECMA-48 may be -+# found near the end of this file. - # --# This implements a subset of vt102 with a random selection of features from --# other terminals such as color and function-keys. -+# Except where noted, these entries are DEC's official terminfos. -+# Contact Bill Hedberg <hedberg@hannah.enet.dec.com> of Terminal Support -+# Engineering for more information. Updated terminfos and termcaps -+# are kept available at ftp://gatekeeper.dec.com/pub/DEC/termcaps. - # --# shift-f1 to shift-f10 are f11 to f20 -+# In October 1995 DEC sold its terminals business, including the VT and Dorio -+# line and trademark, to SunRiver Data Systems. SunRiver has since changed -+# its name to Boundless Technologies; see http://www.boundless.com. - # --# NumLock changes the application keypad to approximate vt100 keypad, except --# that there is no escape sequence matching comma (,). -+ -+# NOTE: Any VT100 emulation, whether in hardware or software, almost -+# certainly includes what DEC called the `Level 1 editing extension' codes; -+# only the very oldest VT100s lacked these and there probably aren't any of -+# those left alive. To capture these, use one of the VT102 entries. - # --# Other defects observed: --# vt100 LNM mode is not implemented. --# vt100 80/132 column mode is not implemented. --# vt100 DECALN is not implemented. --# vt100 DECSCNM mode is not implemented, so flash does not work. --# vt100 TBC (tab reset) is not implemented. --# xterm alternate screen controls do not restore cursor position properly --# it hangs in tack after running function-keys test. --gnome-rh72|GNOME Terminal, -- bce, km@, -- civis=\E[?25l, cnorm=\E[?25h, kdch1=\E[3~, kf1=\EOP, -- kf2=\EOQ, kf3=\EOR, kf4=\EOS, rmam=\E[?7l, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\016%e\017%;, -- sgr0=\E[0m\017, smam=\E[?7h, tbc@, use=xterm-color, -- --# GNOME Terminal 2.0.1 (Redhat 8.0) -+# Note that the <xenl> glitch in vt100 is not quite the same as on the Concept, -+# since the cursor is left in a different position while in the -+# weird state (concept at beginning of next line, vt100 at end -+# of this line) so all versions of vi before 3.7 don't handle -+# <xenl> right on vt100. The correct way to handle <xenl> is when -+# you output the char in column 80, immediately output CR LF -+# and then assume you are in column 1 of the next line. If <xenl> -+# is on, am should be on too. - # --# Documentation now claims it implements vt220 (which is demonstrably false). --# However, it does implement ECH, which is a vt220 feature. And there are --# workable vt100 LNM, DECALN, DECSNM modes, making it possible to display --# more of its bugs using vttest. -+# I assume you have smooth scroll off or are at a slow enough baud -+# rate that it doesn't matter (1200? or less). Also this assumes -+# that you set auto-nl to "on", if you set it off use vt100-nam -+# below. - # --# However, note that bce and msgr are broken in this release. Tabs (tbc and --# hts) are broken as well. Sometimes flash (as in xterm-new) works. -+# The padding requirements listed here are guesses. It is strongly -+# recommended that xon/xoff be enabled, as this is assumed here. - # --# kf1 and kf10 are not tested since they're assigned (hardcoded?) to menu --# operations. Shift-tab generates a distinct sequence so it can be argued --# that it implements kcbt. --gnome-rh80|GNOME Terminal, -- bce@, msgr@, -- ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, kbs=\177, -- kcbt=\E^I, op=\E[39;49m, use=gnome-rh72, -- --# GNOME Terminal 2.2.1 (Redhat 9.0) -+# The vt100 uses <rs2> and <rf> rather than <is2>/<tbc>/<hts> because the -+# tab settings are in non-volatile memory and don't need to be -+# reset upon login. Also setting the number of columns glitches -+# the screen annoyingly. You can type "reset" to get them set. - # --# bce and msgr are repaired. --gnome-rh90|GNOME Terminal, -- bce, msgr, -- hpa=\E[%i%p1%dG, kDC=\E[3;2~, kLFT=\EO2D, kRIT=\EO2C, -- kb2=\E[E, kcbt=\E[Z, kend=\EOF, khome=\EOH, tbc=\E[3g, -- vpa=\E[%i%p1%dd, use=xterm+pcf0, use=xterm+pcfkeys, -- use=gnome-rh80, -- --# GNOME Terminal 2.14.2 (Fedora Core 5) --# Ed Catmur notes that gnome-terminal has recognized soft-reset since May 2002. --gnome-fc5|GNOME Terminal, -- rs1=\Ec, -- rs2=\E7\E[r\E8\E[m\E[?7h\E[!p\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, -- use=ansi+enq, use=xterm+pcc0, use=gnome-rh90, -- --# GNOME Terminal 2.18.1 (2007 snapshot) -+# The VT100 series terminals have cursor ("arrows") keys which can operate -+# in two different modes: Cursor Mode and Application Mode. Cursor Mode -+# is the reset state, and is assumed to be the normal state. Application -+# Mode is the "set" state. In Cursor Mode, the cursor keys transmit -+# "Esc [ {code}" sequences, conforming to ANSI standards. In Application -+# Mode, the cursor keys transmit "Esc O <code>" sequences. Application Mode -+# was provided primarily as an aid to the porting of VT52 applications. It is -+# assumed that the cursor keys are normally in Cursor Mode, and expected that -+# applications such as vi will always transmit the <smkx> string. Therefore, -+# the definitions for the cursor keys are made to match what the terminal -+# transmits after the <smkx> string is transmitted. If the <smkx> string -+# is a null string or is not defined, then cursor keys are assumed to be in -+# "Cursor Mode", and the cursor keys definitions should match that assumption, -+# else the application may fail. It is also expected that applications will -+# always transmit the <rmkx> string to the terminal before they exit. - # --# For any "recent" version of gnome-terminal, it is futile to attempt to --# support modifiers on cursor- and keypad keys because the program usually --# is hardcoded to set $TERM to "xterm", and on startup, it builds a subset --# of the keys (which more/less correspond to the termcap values), and will --# interpret those according to the $TERM value, but others not in the --# terminfo according to some constantly changing set of hacker guidelines -TD --vte-2007|VTE in GNOME Terminal snapshot 2.18.1, -- use=xterm+pcc2, use=gnome-fc5, --gnome-2007|GNOME Terminal snapshot 2.18.1, -- use=vte-2007, -- --# GNOME Terminal 2.22.3 (2008 snapshot) -+# The VT100 series terminals have an auxiliary keypad, commonly referred to as -+# the "Numeric Keypad", because it is a cluster of numeric and function keys. -+# The Numeric Keypad which can operate in two different modes: Numeric Mode and -+# Application Mode. Numeric Mode is the reset state, and is assumed to be -+# the normal state. Application Mode is the "set" state. In Numeric Mode, -+# the numeric and punctuation keys transmit ASCII 7-bit characters, and the -+# Enter key transmits the same as the Return key (Note: the Return key -+# can be configured to send either LF (\015) or CR LF). In Application Mode, -+# all the keypad keys transmit "Esc O {code}" sequences. The PF1 - PF4 keys -+# always send the same "Esc O {code}" sequences. It is assumed that the keypad -+# is normally in Numeric Mode. If an application requires that the keypad be -+# in Application Mode then it is expected that the user, or the application, -+# will set the TERM environment variable to point to a terminfo entry which has -+# defined the <smkx> string to include the codes that switch the keypad into -+# Application Mode, and the terminfo entry will also define function key -+# fields to match the Application Mode control codes. If the <smkx> string -+# is a null string or is not defined, then the keypad is assumed to be in -+# Numeric Mode. If the <smkx> string switches the keypad into Application -+# Mode, it is expected that the <rmkx> string will contain the control codes -+# necessary to reset the keypad to "Normal" mode, and it is also expected that -+# applications which transmit the <smkx> string will also always transmit the -+# <rmkx> string to the terminal before they exit. - # --# In vttest, it claims to be a vt220 with national replacement character-sets, --# but aside from the identifier string, implements only a small fraction of --# vt220's behavior, which will make it less usable on a VMS system (unclear --# what the intent of the developer is, since the NRC feature exposed in vttest --# by this change does not work). --vte-2008|VTE in GNOME Terminal snapshot 2.22.3, -- use=vte+pcfkeys, use=vte-2007, --gnome-2008|GNOME Terminal snapshot 2.22.3, -- use=vte-2008, -- --# GNOME terminal may automatically use the contents of the "xterm" terminfo to --# supply key information which is not built into the program. With 2.22.3, --# this list is built into the program (which addresses the inadvertant use of --# random terminfo data, though using a set of values which does not correspond --# to any that xterm produces - still not solving the problem that GNOME --# terminal hardcodes the $TERM variable as "xterm"). -+# Here's a diagram of the VT100 keypad keys with their bindings. -+# The top line is the name of the key (some DEC keyboards have the keys -+# labelled somewhat differently, like GOLD instead of PF1, but this is -+# the most "official" name). The second line is the escape sequence it -+# generates in Application Keypad mode (where "$" means the ESC -+# character). The third line contains two items, first the mapping of -+# the key in terminfo, and then in termcap. -+# _______________________________________ -+# | PF1 | PF2 | PF3 | PF4 | -+# | $OP | $OQ | $OR | $OS | -+# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_| -+# | 7 8 9 - | -+# | $Ow | $Ox | $Oy | $Om | -+# |_kf9__k9_|_kf10_k;_|_kf0__k0_|_________| -+# | 4 | 5 | 6 | , | -+# | $Ot | $Ou | $Ov | $Ol | -+# |_kf5__k5_|_kf6__k6_|_kf7__k7_|_kf8__k8_| -+# | 1 | 2 | 3 | | -+# | $Oq | $Or | $Os | enter | -+# |_ka1__K1_|_kb2__K2_|_ka3__K3_| $OM | -+# | 0 | . | | -+# | $Op | $On | | -+# |___kc1_______K4____|_kc3__K5_|_kent_@8_| - # --# terminfo modifier code keys --# kf13-kf24 shift 2 F1 to F12 --# kf25-kf36 control 5 F1 to F12 --# kf37-kf48 shift/control 6 F1 to F12 --# kf49-kf60 alt 3 F1 to F12 --# kf61-kf63 shift-alt 4 F1 to F3 -+# Note however, that the arrangement of the 5-key ka1-kc3 do not follow the -+# 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, -+ ka1=\EOq, ka3=\EOs, kb2=\EOr, kc1=\EOp, kc3=\EOn, -+vt100+pfkeys|dec vt100 numeric keypad, -+ kent=\EOM, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -+ use=vt100+keypad, -+vt100+fnkeys|dec vt100 numeric keypad, -+ kf0=\EOy, kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, -+ kf9=\EOw, use=vt100+pfkeys, - # --# The parameters with \EO (SS3) are technically an error, since SS3 should have --# no parameters. This appears to be rote copying based on xterm+pcc0. --vte+pcfkeys|VTE's variation on xterm+pcfkeys, -- kf1=\EOP, kf13=\EO1;2P, kf14=\EO1;2Q, kf15=\EO1;2R, -- kf16=\EO1;2S, kf2=\EOQ, kf25=\EO1;5P, kf26=\EO1;5Q, -- kf27=\EO1;5R, kf28=\EO1;5S, kf3=\EOR, kf37=\EO1;6P, -- kf38=\EO1;6Q, kf39=\EO1;6R, kf4=\EOS, kf40=\EO1;6S, -- kf49=\EO1;3P, kf50=\EO1;3Q, kf51=\EO1;3R, kf52=\EO1;3S, -- kf61=\EO1;4P, kf62=\EO1;4Q, kf63=\EO1;4R, -- use=xterm+pcfkeys, --gnome+pcfkeys|VTE's variation on xterm+pcfkeys, -- use=vte+pcfkeys, -- --vte|VTE aka GNOME Terminal, -- use=vte-2008, --gnome|GNOME Terminal, -- use=vte, -- --# palette is hardcoded... --vte-256color|VTE with xterm 256-colors, -- initc@, use=xterm+256color, use=vte, --gnome-256color|GNOME Terminal with xterm 256-colors, -- use=vte-256color, -- --# XFCE Terminal 0.2.5.4beta2 -+# 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 -+# use the 5-key arrangement to model the arrow keys as suggested in the -+# terminfo guidelines: -+# _______________________________________ -+# | PF1 | PF2 | PF3 | PF4 | -+# | $OP | $OQ | $OR | $OS | -+# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_| -+# | 7 8 9 - | -+# | $Ow | $Ox | $Oy | $Om | -+# |_ka1__K1_|_________|_ka3__K3_|_________| -+# | 4 | 5 | 6 | , | -+# | $Ot | $Ou | $Ov | $Ol | -+# |_________|_kb2__K2_|_________|_________| -+# | 1 | 2 | 3 | | -+# | $Oq | $Or | $Os | enter | -+# |_kc1__K4_|_________|_kc3__K5_| $OM | -+# | 0 | . | | -+# | $Op | $On | | -+# |___________________|_________|_kent_@8_| - # --# This is based on some of the same source code, e.g., the VTE library, as --# gnome-terminal, but has fewer features, fails more screens in vttest. --# Since most of the terminfo-related behavior is due to the VTE library, --# the terminfo is the same as gnome-terminal. --xfce|Xfce Terminal, -- use=vte, -- --# Multi-Gnome-Terminal 1.6.2 -+vt220+keypad|dec vt220 numeric keypad, -+ ka1=\EOw, ka3=\EOy, kb2=\EOu, kc1=\EOq, kc3=\EOs, kent=\EOM, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, ka2=\EOx, kb1=\EOt, -+ kb3=\EOv, kc2=\EOr, - # --# This does not use VTE, and does have different behavior (compare xfce and --# gnome). --mgt|Multi GNOME Terminal, -- indn=\E[%p1%dS, rin=\E[%p1%dT, use=xterm-xf86-v333, -- --# This is kvt 0-18.7, shipped with Redhat 6.0 (though whether it supports bce --# or not is debatable). --kvt|KDE terminal, -- bce, km@, -- kdch1=\177, kend=\E[F, khome=\E[H, use=xterm-color, -- --# Konsole 1.0.1 --# (formerly known as kvt) -+vt100+enq|ncurses extension for vt100-style ENQ, -+ u8=\E[?1;2c, use=ansi+enq, -+vt102+enq|ncurses extension for vt102-style ENQ, -+ u8=\E[?6c, use=ansi+enq, - # --# This program hardcodes $TERM to 'xterm', which is not accurate. However, to --# simplify this entry (and point out why konsole isn't xterm), we base this on --# xterm-r6. The default keyboard appears to be 'linux'. -+# And here, for those of you with orphaned VT100s lacking documentation, is -+# a description of the soft switches invoked when you do `Set Up'. - # --# Notes: --# a) konsole implements several features from XFree86 xterm, though none of --# that is documented - except of course in its source code - apparently --# because its implementors are unaccustomed to reading documentation - as --# evidenced by the sparse and poorly edited documentation distributed with --# konsole. Some features such as the 1049 private mode are recognized but --# incorrectly implemented as a duplicate of the 47 private mode. --# b) even with the "vt100 (historical)" keyboard setting, the numeric keypad --# sends PC-style escapes rather than vt100. --# c) fails vttest menu 3 (Test of character sets) because it does not properly --# parse some control sequences. Also fails vttest Primary Device Attributes --# by sending a bogus code (in the source it says it's supposed to be a --# vt220, which is doubly incorrect because it does not implement vt220 --# control sequences except for a few special cases). Treat it as a --# mildly-broken vt102. --# --# Update for konsole 1.3.2: --# The 1049 private mode works (but see the other xterm screens in vttest). --# Primary Device Attributes now returns the code for a vt100 with advanced --# video option. Perhaps that's intended to be a "mildly-broken vt102". --# --# Updated for konsole 1.6.4: --# add konsole-solaris -+# Scroll 0-Jump Shifted 3 0-# -+# | 1-Smooth | 1-British pound sign -+# | Autorepeat 0-Off | Wrap Around 0-Off -+# | | 1-On | | 1-On -+# | | Screen 0-Dark Bkg | | New Line 0-Off -+# | | | 1-Light Bkg | | | 1-On -+# | | | Cursor 0-Underline | | | Interlace 0-Off -+# | | | | 1-Block | | | | 1-On -+# | | | | | | | | -+# 1 1 0 1 1 1 1 1 0 1 0 0 0 0 1 0 <--Standard Settings -+# | | | | | | | | -+# | | | Auto XON/XOFF 0-Off | | | Power 0-60 Hz -+# | | | 1-On | | | 1-50 Hz -+# | | Ansi/VT52 0-VT52 | | Bits Per Char. 0-7 Bits -+# | | 1-ANSI | | 1-8 Bits -+# | Keyclick 0-Off | Parity 0-Off -+# | 1-On | 1-On -+# Margin Bell 0-Off Parity Sense 0-Odd -+# 1-On 1-Even - # --# Updated for konsole 1.6.6: --# add control-key modifiers for function-keys, etc. -+# The following SET-UP modes are assumed for normal operation: -+# ANSI_MODE AUTO_XON/XOFF_ON NEWLINE_OFF 80_COLUMNS -+# WRAP_AROUND_ON JUMP_SCROLL_OFF -+# Other SET-UP modes may be set for operator convenience or communication -+# requirements; I recommend -+# AUTOREPEAT_ON BLOCK_CURSOR MARGIN_BELL_OFF SHIFTED_3_# -+# Unless you have a graphics add-on such as Digital Engineering's VT640 -+# (and even then, whenever it can be arranged!) you should set -+# INTERLACE_OFF - # --# vttest menu 1 shows that both konsole and gnome terminal do wrapping --# different from xterm (and vt100's). They have the same behavior in this --# detail, but it is unclear which copies the other. --konsole-base|KDE console window, -- bce, km@, npc, XT, -- ncv@, -- bel@, blink=\E[5m, civis=\E[?25l, cnorm=\E[?25h, -- ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, -- hpa=\E[%i%p1%dG, indn=\E[%p1%dS, kbs=\177, kdch1@, -- kend=\E[4~, kf1@, kf10@, kf11@, kf12@, kf13@, kf14@, kf15@, kf16@, -- kf17@, kf18@, kf19@, kf2@, kf20@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, -- kf9@, kfnd@, khome=\E[1~, kslt@, rin=\E[%p1%dT, rmam=\E[?7l, -- rmso=\E[27m, rmul=\E[24m, -- rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -- sgr0=\E[0m\017, smam=\E[?7h, vpa=\E[%i%p1%dd, -- use=ecma+color, use=xterm-r6, --konsole-linux|KDE console window with linux keyboard, -- kdch1=\E[3~, kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf13@, kf14@, kf15@, kf16@, kf17@, kf18@, kf19@, -- kf2=\E[[B, kf20@, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, -- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- use=konsole-base, --konsole-solaris|KDE console window with Solaris keyboard, -- kbs=^H, kend=\E[4~, khome=\E[1~, use=konsole-vt100, --# KDE's "XFree86 3.x.x" keyboard is based on reading the xterm terminfo rather --# than testing the code. --konsole-xf3x|KDE console window with keyboard for XFree86 3.x xterm, -- kend=\E[4~, khome=\E[1~, use=konsole-vt100, --# The value for kbs reflects local customization rather than the settings used --# for XFree86 xterm. --konsole-xf4x|KDE console window with keyboard for XFree86 4.x xterm, -- kend=\EOF, khome=\EOH, use=konsole+pcfkeys, -- use=konsole-vt100, --# Konsole does not implement shifted cursor-keys. --konsole+pcfkeys|konsole subset of xterm+pcfkeys, -- kLFT@, kRIT@, kcbt=\E[Z, kind@, kri@, kDN@, kUP@, use=xterm+pcc2, -- use=xterm+pcf0, --# KDE's "vt100" keyboard has no relationship to any terminal that DEC made, but --# it is still useful for deriving the other entries. --konsole-vt100|KDE console window with vt100 (sic) keyboard, -- kbs=\177, kdch1=\E[3~, kend=\E[F, kf1=\E[11~, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf13@, kf14@, kf15@, kf16@, kf17@, -- kf18@, kf19@, kf2=\E[12~, kf20@, kf3=\E[13~, kf4=\E[14~, -- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[H, use=konsole-base, --konsole-vt420pc|KDE console window with vt420 pc keyboard, -- kbs=^H, kdch1=\177, use=konsole-vt100, --konsole-16color|klone of xterm-16color, -- ncv#32, use=ibm+16color, use=konsole, --# make a default entry for konsole --konsole|KDE console window, -- use=konsole-xf4x, -+# (vt100: I added <rmam>/<smam> based on the init string, also <OTbs>. -- esr) -+vt100|vt100-am|dec vt100 (w/advanced video), -+ OTbs, am, mc5i, msgr, xenl, xon, -+ cols#80, it#8, lines#24, vt#3, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -+ clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C$<2>, -+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, -+ cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, -+ enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, lf1=pf1, -+ lf2=pf2, lf3=pf3, lf4=pf4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, -+ rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, -+ rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, -+ sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=, -+ smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, -+ use=vt100+fnkeys, -+vt100nam|vt100-nam|vt100 no automargins, -+ am@, xenl@, use=vt100-am, -+vt100-vb|dec vt100 (w/advanced video) & no beep, -+ bel@, flash=\E[?5h\E[?5l, use=vt100, - --# palette is hardcoded... --konsole-256color|KDE console window with xterm 256-colors, -- initc@, use=xterm+256color, use=konsole, -+# Ordinary vt100 in 132 column ("wide") mode. -+vt100-w|vt100-w-am|dec vt100 132 cols (w/advanced video), -+ cols#132, lines#24, -+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-am, -+vt100-w-nam|vt100-nam-w|dec vt100 132 cols (w/advanced video no automargin), -+ cols#132, lines#14, vt@, -+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-nam, - --# This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD --# --# It is nominally a vt102 emulator, with features borrowed from rxvt and --# xterm. --# --# The function keys are numbered based on shift/control/alt modifiers, except --# that the control-modifier itself is used to spawn a new copy of mlterm (the --# "-P" option). So control/F1 to control/F12 may not be usable, depending on --# how it is configured. --# --# kf1 to kf12 \E[11~ to \E[24~ --# shift kf1 to kf12 \E[11;2~ to \E[24;2~ --# alt kf1 to kf12 \E[11;3~ to \E[24;3~ --# shift/alt kf1 to kf12 \E[11;4~ to \E[24;4~ --# control kf1 to kf12 \E[11;5~ to \E[24;5~ (maybe) --# control/shift kf1 to kf12 \E[11;6~ to \E[24;6~ --# control/alt kf1 to kf12 \E[11;7~ to \E[24;7~ --# control/shift/alt kf1 to kf12 \E[11;8~ to \E[24;8~ --# --mlterm|multi lingual terminal emulator, -- am, eslok, km, mc5i, mir, msgr, npc, xenl, XT, -- colors#8, cols#80, it#8, lines#24, pairs#64, -- acsc=00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=, -- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, -- is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>, -- kbs=\177, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -- kcuu1=\EOA, kdch1=\E[3~, kend=\EOF, kent=\EOM, kfnd=\E[1~, -- khome=\EOH, kich1=\E[2~, kind=\EO1;2B, kmous=\E[M, -- knp=\E[6~, kpp=\E[5~, kri=\EO1;2A, kslt=\E[4~, mc0=\E[i, -- nel=\EE, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, -- rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l, -- rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, -- rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l, -- sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;, -- sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smcup=\E[?1049h, -- smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?1;2c, u9=\E[c, -- vpa=\E[%i%p1%dd, use=mlterm+pcfkeys, use=xterm+r6f2, -+# vt100 with no advanced video. -+vt100-nav|vt100 without advanced video option, -+ xmc#1, -+ blink@, bold@, rev@, rmso=\E[m, rmul@, sgr@, sgr0@, smso=\E[7m, -+ smul@, use=vt100, -+vt100-nav-w|vt100-w-nav|dec vt100 132 cols 14 lines (no advanced video option), -+ cols#132, lines#14, use=vt100-nav, - --# The insert/delete/home/end keys do not respond to modifiers because mlterm --# looks in its termcap to decide which string to send. If it used terminfo --# (when available), it could use the extended names introduced for xterm. --mlterm+pcfkeys|fragment for PC-style fkeys, -- kLFT=\EO1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\EO1;2C, -- kDN=\EO1;2B, kDN3=\EO1;3B, kDN4=\EO1;4B, kDN5=\EO1;5B, -- kDN6=\EO1;6B, kDN7=\EO1;7B, kIC5=\E[2;5~, kIC6=\E[2;6~, -- kLFT3=\EO1;3D, kLFT4=\EO1;4D, kLFT5=\EO1;5D, -- kLFT6=\EO1;6D, kLFT7=\EO1;7D, kNXT5=\E[6;5~, -- kNXT6=\E[6;6~, kPRV5=\E[5;5~, kPRV6=\E[5;6~, -- kRIT3=\EO1;3C, kRIT4=\EO1;4C, kRIT5=\EO1;5C, -- kRIT6=\EO1;6C, kRIT7=\EO1;7C, kUP=\EO1;2A, kUP3=\EO1;3A, -- kUP4=\EO1;4A, kUP5=\EO1;5A, kUP6=\EO1;6A, kUP7=\EO1;7A, -+# vt100 with one of the 24 lines used as a status line. -+# We put the status line on the top. -+vt100-s|vt100-s-top|vt100-top-s|vt100 for use with top sysline, -+ eslok, hs, -+ lines#23, -+ clear=\E[2;1H\E[J$<50>, csr=\E[%i%i%p1%d;%p2%dr, -+ cup=\E[%i%p1%{1}%+%d;%p2%dH$<5>, dsl=\E7\E[1;24r\E8, -+ fsl=\E8, home=\E[2;1H, is2=\E7\E[2;24r\E8, -+ tsl=\E7\E[1;%p1%dH\E[1K, use=vt100-am, - --mlterm-256color|mlterm 3.0 with xterm 256-colors, -- use=xterm+256color, use=rxvt, -+# Status line at bottom. -+# Clearing the screen will clobber status line. -+vt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline, -+ eslok, hs, -+ lines#23, -+ dsl=\E7\E[1;24r\E8, fsl=\E8, is2=\E[1;23r\E[23;1H, -+ tsl=\E7\E[24;%p1%dH\E[1K, use=vt100-am, - --# From: Thomas Dickey <dickey@clark.net> 04 Oct 1997 --# Updated: Oezguer Kesim <kesim@math.fu-berlin.de> 02 Nov 1997 --# Notes: --# rxvt 2.21b uses --# smacs=\E(B\E)U^N, rmacs=\E(B\E)0^O, --# but some applications don't work with that. --# It also has an AIX extension --# box2=lqkxjmwuvtn, --# and --# ech=\E[%p1%dX, --# but the latter does not work correctly. --# --# The distributed terminfo says it implements hpa and vpa, but they are not --# implemented correctly, using relative rather than absolute positioning. --# --# rxvt is normally configured to look for "xterm" or "xterm-color" as $TERM. --# Since rxvt is not really compatible with xterm, it should be configured as --# "rxvt" or "rxvt-color". --# --# removed dch/dch1 because they are inconsistent with bce/ech -TD --# remove km as per tack test -TD --rxvt-basic|rxvt terminal base (X Window System), -- OTbs, am, bce, eo, mir, msgr, xenl, xon, XT, -- cols#80, it#8, lines#24, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -- enacs=\E(B\E)0, flash=\E[?5h\E[?5l, home=\E[H, ht=^I, -- hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, -- ind=^J, is1=\E[?47l\E=\E[?1l, -- is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^H, -- kcbt=\E[Z, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, -- rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E>, rmso=\E[27m, -- rmul=\E[24m, -- rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, -- rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, -- s0ds=\E(B, s1ds=\E(0, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -- sgr0=\E[0m\017, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h, -- smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=vt100+enq, -- use=rxvt+pcfkeys, use=vt220+keypad, --# Key Codes from rxvt reference: --# --# Note: Shift + F1-F10 generates F11-F20 --# --# For the keypad, use Shift to temporarily override Application-Keypad --# setting use Num_Lock to toggle Application-Keypad setting if Num_Lock --# is off, escape sequences toggle Application-Keypad setting. --# Also note that values of Home, End, Delete may have been compiled --# differently on your system. --# --# Normal Shift Control Ctrl+Shift --# Tab ^I ESC [ Z ^I ESC [ Z --# BackSpace ^H ^? ^? ^? --# Find ESC [ 1 ~ ESC [ 1 $ ESC [ 1 ^ ESC [ 1 @ --# Insert ESC [ 2 ~ paste ESC [ 2 ^ ESC [ 2 @ --# Execute ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @ --# Select ESC [ 4 ~ ESC [ 4 $ ESC [ 4 ^ ESC [ 4 @ --# Prior ESC [ 5 ~ scroll-up ESC [ 5 ^ ESC [ 5 @ --# Next ESC [ 6 ~ scroll-down ESC [ 6 ^ ESC [ 6 @ --# Home ESC [ 7 ~ ESC [ 7 $ ESC [ 7 ^ ESC [ 7 @ --# End ESC [ 8 ~ ESC [ 8 $ ESC [ 8 ^ ESC [ 8 @ --# Delete ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @ --# F1 ESC [ 11 ~ ESC [ 23 ~ ESC [ 11 ^ ESC [ 23 ^ --# F2 ESC [ 12 ~ ESC [ 24 ~ ESC [ 12 ^ ESC [ 24 ^ --# F3 ESC [ 13 ~ ESC [ 25 ~ ESC [ 13 ^ ESC [ 25 ^ --# F4 ESC [ 14 ~ ESC [ 26 ~ ESC [ 14 ^ ESC [ 26 ^ --# F5 ESC [ 15 ~ ESC [ 28 ~ ESC [ 15 ^ ESC [ 28 ^ --# F6 ESC [ 17 ~ ESC [ 29 ~ ESC [ 17 ^ ESC [ 29 ^ --# F7 ESC [ 18 ~ ESC [ 31 ~ ESC [ 18 ^ ESC [ 31 ^ --# F8 ESC [ 19 ~ ESC [ 32 ~ ESC [ 19 ^ ESC [ 32 ^ --# F9 ESC [ 20 ~ ESC [ 33 ~ ESC [ 20 ^ ESC [ 33 ^ --# F10 ESC [ 21 ~ ESC [ 34 ~ ESC [ 21 ^ ESC [ 34 ^ --# F11 ESC [ 23 ~ ESC [ 23 $ ESC [ 23 ^ ESC [ 23 @ --# F12 ESC [ 24 ~ ESC [ 24 $ ESC [ 24 ^ ESC [ 24 @ --# F13 ESC [ 25 ~ ESC [ 25 $ ESC [ 25 ^ ESC [ 25 @ --# F14 ESC [ 26 ~ ESC [ 26 $ ESC [ 26 ^ ESC [ 26 @ --# F15 (Help) ESC [ 28 ~ ESC [ 28 $ ESC [ 28 ^ ESC [ 28 @ --# F16 (Menu) ESC [ 29 ~ ESC [ 29 $ ESC [ 29 ^ ESC [ 29 @ --# F17 ESC [ 31 ~ ESC [ 31 $ ESC [ 31 ^ ESC [ 31 @ --# F18 ESC [ 32 ~ ESC [ 32 $ ESC [ 32 ^ ESC [ 32 @ --# F19 ESC [ 33 ~ ESC [ 33 $ ESC [ 33 ^ ESC [ 33 @ --# F20 ESC [ 34 ~ ESC [ 34 $ ESC [ 34 ^ ESC [ 34 @ --# --# Application --# Up ESC [ A ESC [ a ESC O a ESC O A --# Down ESC [ B ESC [ b ESC O b ESC O B --# Right ESC [ C ESC [ c ESC O c ESC O C --# Left ESC [ D ESC [ d ESC O d ESC O D --# KP_Enter ^M ESC O M --# KP_F1 ESC O P ESC O P --# KP_F2 ESC O Q ESC O Q --# KP_F3 ESC O R ESC O R --# KP_F4 ESC O S ESC O S --# XK_KP_Multiply * ESC O j --# XK_KP_Add + ESC O k --# XK_KP_Separator , ESC O l --# XK_KP_Subtract - ESC O m --# XK_KP_Decimal . ESC O n --# XK_KP_Divide / ESC O o --# XK_KP_0 0 ESC O p --# XK_KP_1 1 ESC O q --# XK_KP_2 2 ESC O r --# XK_KP_3 3 ESC O s --# XK_KP_4 4 ESC O t --# XK_KP_5 5 ESC O u --# XK_KP_6 6 ESC O v --# XK_KP_7 7 ESC O w --# XK_KP_8 8 ESC O x --# XK_KP_9 9 ESC O y --# --# The source-code for rxvt actually defines mappings for F21-F35, using --# "ESC [ 35 ~" to "ESC [ 49 ~". Keyboards with more than 12 function keys --# are rare, so this entry uses the shift- and control-modifiers as in --# xterm+pcfkeys to define keys past F12. --# --# kIC is normally not used, since rxvt performs a paste for that (shifted --# insert), unless private mode 35 is set. --# --# kDN, kDN5, kDN6, etc are extensions based on the names from xterm+pcfkeys -TD --# Removed kDN6, etc (control+shift) since rxvt does not implement this -TD --rxvt+pcfkeys|fragment for PC-style fkeys, -- kDC=\E[3$, kEND=\E[8$, kHOM=\E[7$, kIC=\E[2$, kLFT=\E[d, -- kNXT=\E[6$, kPRV=\E[5$, kRIT=\E[c, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kel=\E[8\^, -- kend=\E[8~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -- kf2=\E[12~, kf20=\E[34~, kf21=\E[23$, kf22=\E[24$, -- kf23=\E[11\^, kf24=\E[12\^, kf25=\E[13\^, kf26=\E[14\^, -- kf27=\E[15\^, kf28=\E[17\^, kf29=\E[18\^, kf3=\E[13~, -- kf30=\E[19\^, kf31=\E[20\^, kf32=\E[21\^, kf33=\E[23\^, -- kf34=\E[24\^, kf35=\E[25\^, kf36=\E[26\^, kf37=\E[28\^, -- kf38=\E[29\^, kf39=\E[31\^, kf4=\E[14~, kf40=\E[32\^, -- kf41=\E[33\^, kf42=\E[34\^, kf43=\E[23@, kf44=\E[24@, -- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- kfnd=\E[1~, khome=\E[7~, kich1=\E[2~, kind=\E[a, knp=\E[6~, -- kpp=\E[5~, kri=\E[b, kslt=\E[4~, kDC5=\E[3\^, kDC6=\E[3@, -- kDN=\E[b, kDN5=\EOb, kEND5=\E[8\^, kEND6=\E[8@, -- kHOM5=\E[7\^, kHOM6=\E[7@, kIC5=\E[2\^, kIC6=\E[2@, -- kLFT5=\EOd, kNXT5=\E[6\^, kNXT6=\E[6@, kPRV5=\E[5\^, -- kPRV6=\E[5@, kRIT5=\EOc, kUP=\E[a, kUP5=\EOa, -+# Most of the `vt100' emulators out there actually emulate a vt102 -+# This entry (or vt102-nsgr) is probably the right thing to use for -+# these. -+vt102|dec vt102, -+ dch1=\E[P, dl1=\E[M, il1=\E[L, rmir=\E[4l, smir=\E[4h, -+ use=vt100, -+vt102-w|dec vt102 in wide mode, -+ cols#132, -+ rs3=\E[?3h, use=vt102, - --rxvt|rxvt terminal emulator (X Window System), -- ncv@, -- hpa=\E[%i%p1%dG, kf0=\E[21~, sgr0=\E[m\017, -- vpa=\E[%i%p1%dd, use=rxvt-basic, use=ecma+color, --rxvt-color|rxvt terminal emulator (X Window System), -- use=rxvt, --rxvt-256color|rxvt 2.7.9 with xterm 256-colors, -- use=xterm+256color, use=rxvt, --rxvt-88color|rxvt 2.7.9 with xterm 88-colors, -- use=xterm+88color, use=rxvt, --rxvt-xpm|rxvt terminal emulator (X Window System), -- use=rxvt, --rxvt-cygwin|rxvt terminal emulator (X Window System) on cygwin, -- acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -- use=rxvt, --rxvt-cygwin-native|rxvt terminal emulator (native MS Window System port) on cygwin, -- acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330~\376, -- use=rxvt-cygwin, -+# Many brain-dead PC comm programs that pretend to be `vt100-compatible' -+# fail to interpret the ^O and ^N escapes properly. Symptom: the <sgr0> -+# string in the canonical vt100 entry above leaves the screen littered -+# with little snowflake or star characters (IBM PC ROM character \017 = ^O) -+# after highlight turnoffs. This entry should fix that, and even leave -+# ACS support working, at the cost of making multiple-highlight changes -+# slightly more expensive. -+# From: Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995 -+vt102-nsgr|vt102 no sgr (use if you see snowflakes after highlight changes), -+ sgr@, sgr0=\E[m, use=vt102, - --# This variant is supposed to work with rxvt 2.7.7 when compiled with --# NO_BRIGHTCOLOR defined. rxvt needs more work... --rxvt-16color|xterm with 16 colors like aixterm, -- ncv#32, use=ibm+16color, use=rxvt, -+# VT125 Graphics CRT. Clear screen also erases graphics -+# Some vt125's came configured with vt102 support. -+vt125|vt125 graphics terminal, -+ mir, -+ clear=\E[H\E[2J\EPpS(E)\E\\$<50>, use=vt100, - --# mrxvt 0.5.4 --# --# mrxvt is based on rxvt 2.7.11, but has by default XTERM_FKEYS defined, which --# makes its function-keys different from other flavors of rxvt -TD --mrxvt|multitabbed rxvt, -- XT, -- kEND=\E[8;2~, kHOM=\E[7;2~, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kend=\E[8~, khome=\E[7~, -- kEND3=\E[8;3~, kEND4=\E[8;4~, kEND5=\E[8;5~, -- kEND6=\E[8;6~, kEND7=\E[8;7~, kHOM3=\E[7;3~, -- kHOM4=\E[7;4~, kHOM5=\E[7;5~, kHOM6=\E[7;6~, -- kHOM7=\E[7;7~, use=xterm+r6f2, use=xterm+pcfkeys, -- use=rxvt, -+# This isn't a DEC entry, it came from University of Wisconsin. -+# (vt131: I added <rmam>/<smam> based on the init string, also <OTbs> -- esr) -+vt131|dec vt131, -+ OTbs, am, xenl, -+ cols#80, it#8, lines#24, vt#3, -+ bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>, -+ clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub1=^H, cud1=^J, cuf1=\E[C$<2/>, -+ cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>, -+ ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, ht=^I, -+ is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, kcud1=\EOB, -+ kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, -+ kf4=\EOS, nel=^M^J, rc=\E8, rev=\E[7m$<2/>, ri=\EM$<5/>, -+ rmam=\E[?7h, rmkx=\E[?1l\E>, rmso=\E[m$<2/>, -+ rmul=\E[m$<2/>, -+ rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sgr0=\E[m$<2/>, smam=\E[?7h, smkx=\E[?1h\E=, -+ smso=\E[7m$<2/>, smul=\E[4m$<2/>, - --mrxvt-256color|multitabbed rxvt with 256 colors, -- use=xterm+256color, use=mrxvt, -+# vt132 - like vt100 but slower and has ins/del line and such. -+# I'm told that <smir>/<rmir> are backwards in the terminal from the -+# manual and from the ANSI standard, this describes the actual -+# terminal. I've never actually used a vt132 myself, so this -+# is untested. -+# -+vt132|DEC vt132, -+ xenl, -+ dch1=\E[P$<7>, dl1=\E[M$<99>, il1=\E[L$<99>, ind=\n$<30>, -+ ip=$<7>, rmir=\E[4h, smir=\E[4l, use=vt100, - --# From: Michael Jennings <mej@valinux.com> -+# This vt220 description maps F5--F9 to the second block of function keys -+# at the top of the keyboard. The "DO" key is used as F10 to avoid conflict -+# with the key marked (ESC) on the vt220. See vt220d for an alternate mapping. -+# PF1--PF4 are used as F1--F4. - # --# Eterm 0.9.3 -+# added msgr -TD -+vt220-old|vt200-old|DEC VT220 in vt100 emulation mode, -+ OTbs, OTpt, am, mir, msgr, xenl, xon, -+ cols#80, lines#24, vt#3, -+ OTnl=^J, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, civis=\E[?25l, -+ clear=\E[H\E[2J$<50>, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH$<10>, cuu1=\E[A, dch1=\E[P, -+ dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, -+ if=/usr/share/tabset/vt100, il1=\E[L, ind=\ED$<20/>, -+ is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\EOP, -+ kf10=\E[29~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\E[17~, -+ kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, -+ khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, rc=\E8, -+ rev=\E[7m$<2>, rf=/usr/share/tabset/vt100, -+ ri=\EM$<14/>, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, -+ rmso=\E[27m, rmul=\E[24m, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -+ sgr0=\E[m$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, -+ smso=\E[7m, smul=\E[4m, -+ -+# A much better description of the VT200/220; used to be vt220-8 -+# changed rmacs/smacs from shift-in/shift-out to vt200-old's explicit G0/G1 -+# designation to accommodate bug in pcvt -TD - # --# removed kf0 which conflicts with kf10 -TD --# remove cvvis which conflicts with cnorm -TD --# Eterm does not implement control/shift cursor keys such as kDN6, or kPRV/kNXT --# but does otherwise follow the rxvt+pcfkeys model -TD --# remove nonworking flash -TD --# remove km as per tack test -TD --Eterm|Eterm-color|Eterm with xterm-style color support (X Window System), -- am, bce, bw, eo, mc5i, mir, msgr, xenl, xon, XT, -- btns#5, cols#80, it#8, lines#24, lm#0, ncv@, -+# Here's a picture of the VT220 editing keypad: -+# +--------+--------+--------+ -+# | Find | Insert | Remove | -+# +--------+--------+--------+ -+# | Select | Prev | Next | -+# +--------+--------+--------+ -+vt220|vt200|dec vt220, -+ OTbs, am, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, vt#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, - csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, - ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, -- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, -- is1=\E[?47l\E>\E[?1l, -- is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kNXT@, -- kPRV@, ka1=\E[7~, ka3=\E[5~, kb2=\EOu, kbeg=\EOu, kbs=^H, -- kc1=\E[8~, kc3=\E[6~, kent=\EOM, khlp=\E[28~, kmous=\E[M, -- mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, -- rmam=\E[?7l, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=, -- rmso=\E[27m, rmul=\E[24m, -- rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, -- rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, -- sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h, -- smir=\E[4h, smkx=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- vpa=\E[%i%p1%dd, use=vt100+enq, use=rxvt+pcfkeys, -- use=ecma+color, -- --Eterm-256color|Eterm with xterm 256-colors, -- use=xterm+256color, use=Eterm, -- --Eterm-88color|Eterm with 88 colors, -- use=xterm+88color, use=Eterm, -+ flash=\E[?5h$<200/>\E[?5l, home=\E[H, ht=^I, hts=\EH, -+ ich=\E[%p1%d@, if=/usr/share/tabset/vt100, -+ il=\E[%p1%dL, il1=\E[L, ind=\ED, -+ is2=\E[?7h\E[>\E[?1l\E F\E[?4l, kbs=^H, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -+ kf14=\E[26~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -+ kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~, -+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, -+ khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -+ krdo=\E[29~, kslt=\E[4~, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, -+ nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B$<4>, -+ rmam=\E[?7l, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, -+ rs1=\E[?3l, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -+ sgr0=\E[m\E(B, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h, -+ smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=ansi+pp, -+ use=ansi+enq, -+vt220-w|vt200-w|DEC vt220 in wide mode, -+ cols#132, -+ rs3=\E[?3h, use=vt220, -+vt220-8bit|vt220-8|vt200-8bit|vt200-8|dec vt220/200 in 8-bit mode, -+ OTbs, am, mc5i, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, vt#3, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\2335m, bold=\2331m, clear=\233H\233J, cr=^M, -+ csr=\233%i%p1%d;%p2%dr, cub=\233%p1%dD, cub1=^H, -+ cud=\233%p1%dB, cud1=^J, cuf=\233%p1%dC, cuf1=\233C, -+ cup=\233%i%p1%d;%p2%dH, cuu=\233%p1%dA, cuu1=\233A, -+ dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M, -+ ech=\233%p1%dX, ed=\233J, el=\233K, el1=\2331K, enacs=\E)0, -+ flash=\233?5h$<200/>\233?5l, home=\233H, ht=^I, hts=\EH, -+ ich=\233%p1%d@, if=/usr/share/tabset/vt100, -+ il=\233%p1%dL, il1=\233L, ind=\ED, -+ is2=\233?7h\233>\233?1l\E F\233?4l, kbs=^H, -+ kcub1=\233D, kcud1=\233B, kcuf1=\233C, kcuu1=\233A, -+ kdch1=\2333~, kf1=\EOP, kf10=\23321~, kf11=\23323~, -+ kf12=\23324~, kf13=\23325~, kf14=\23326~, kf17=\23331~, -+ kf18=\23332~, kf19=\23333~, kf2=\EOQ, kf20=\23334~, -+ kf3=\EOR, kf4=\EOS, kf6=\23317~, kf7=\23318~, kf8=\23319~, -+ kf9=\23320~, kfnd=\2331~, khlp=\23328~, khome=\233H, -+ kich1=\2332~, knp=\2336~, kpp=\2335~, krdo=\23329~, -+ kslt=\2334~, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, mc0=\233i, -+ mc4=\2334i, mc5=\2335i, nel=\EE, rc=\E8, rev=\2337m, ri=\EM, -+ rmacs=\E(B, rmam=\233?7l, rmir=\2334l, rmso=\23327m, -+ rmul=\23324m, rs1=\233?3l, sc=\E7, -+ sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -+ sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h, smir=\2334h, -+ smso=\2337m, smul=\2334m, tbc=\2333g, - --# Based on rxvt 2.4.8, it has a few differences in key bindings --aterm|AfterStep terminal, -- XT, -- kbs=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, use=rxvt, -+# vt220d: -+# This vt220 description regards F6--F10 as the second block of function keys -+# at the top of the keyboard. This mapping follows the description given -+# in the VT220 Programmer Reference Manual and agrees with the labeling -+# on some terminals that emulate the vt220. There is no support for an F5. -+# See vt220 for an alternate mapping. -+# -+vt220d|DEC VT220 in vt100 mode with DEC function key labeling, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -+ kf18=\E[32~, kf19=\E[33~, kf20=\E[34~, kf5@, kf6=\E[17~, -+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, use=vt220-old, - --# xiterm 0.5-5.2 --# This is not based on xterm's source... --# vttest shows several problems with keyboard, cursor-movements. --# see also http://invisible-island.net/xterm/xterm.faq.html#bug_xiterm --xiterm|internationalized terminal emulator for X, -- km@, -- kbs=\177, kdch1=\E[3~, use=klone+color, use=xterm-r6, -+vt220-nam|v200-nam|VT220 in vt100 mode with no auto margins, -+ am@, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h, use=vt220, - --# These (xtermc and xtermm) are distributed with Solaris. They refer to a --# variant of xterm which is apparently no longer supported, but are interesting --# because they illustrate SVr4 curses mouse controls - T.Dickey --xtermm|xterm terminal emulator (monocrome), -- OTbs, am, km, mir, msgr, xenl, -- btns#3, cols#80, it#8, lines#24, -+# vt220 termcap written Tue Oct 25 20:41:10 1988 by Alex Latzko -+# (not an official DEC entry!) -+# The problem with real vt220 terminals is they don't send escapes when in -+# in vt220 mode. This can be gotten around two ways. 1> don't send -+# escapes or 2> put the vt220 into vt100 mode and use all the nifty -+# features of vt100 advanced video which it then has. -+# -+# This entry takes the view of putting a vt220 into vt100 mode so -+# you can use the escape key in emacs and everything else which needs it. -+# -+# You probably don't want to use this on a VMS machine since VMS will think -+# it has a vt220 and will get fouled up coming out of emacs -+# -+# From: Alexander Latzko <latzko@marsenius.rutgers.edu>, 30 Dec 1996 -+# (Added vt100 <rc>,<sc> to quiet a tic warning -- esr) -+# added msgr -TD -+vt200-js|vt220-js|dec vt200 series with jump scroll, -+ am, msgr, -+ cols#80, -+ bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu1=\E[A, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, -+ ht=^I, il1=\E[L, ind=\ED, -+ is2=\E[61"p\E[H\E[?3l\E[?4l\E[?1h\E[?5l\E[?6l\E[?7h\E[?8h\E[?25h\E>\E[m, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=^M\ED, rc=\E8, -+ rf=/usr/share/tabset/vt100, ri=\EM, rmdc=, rmir=\E[4l, -+ rmkx=\E[?1l\E>, rmso=\E[27m$<5/>, rmul=\E[24m, -+ rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, smdc=, -+ smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m$<5/>, smul=\E[4m, -+ -+# This was DEC's vt320. Use the purpose-built one below instead -+#vt320|DEC VT320 in vt100 emulation mode, -+# use=vt220, -+ -+# Use v320n for SCO's LYRIX. Otherwise, use Adam Thompson's vt320-nam. -+# -+vt320nam|v320n|DEC VT320 in vt100 emul. mode with NO AUTO WRAP mode, -+ am@, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h, use=vt220, -+ -+# These entries are not DEC's official ones, they were purpose-built for the -+# VT320. Here are the designer's notes: -+# <kel> is end on a PC kbd. Actually 'select' on a VT. Mapped to -+# 'Erase to End of Field'... since nothing seems to use 'end' anyways... -+# khome is Home on a PC kbd. Actually 'FIND' on a VT. -+# Things that use <knxt> usually use tab anyways... and things that don't use -+# tab usually use <knxt> instead... -+# kprv is same as tab - Backtab is useless... -+# I left out <sgr> because of its RIDICULOUS complexity, -+# and the resulting fact that it causes the termcap translation of the entry -+# to SMASH the 1k-barrier... -+# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 -+# (vt320: uncommented <fsl> --esr) -+vt320|vt300|dec vt320 7 bit terminal, -+ am, hs, mir, msgr, xenl, -+ cols#80, lines#24, wsl#80, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink@, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, - cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, getm=\E[%p1%dY, -- home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, -- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[Y, kf0=\EOy, -- kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf5=\EOT, kf6=\EOU, -- kf7=\EOV, kf8=\EOW, kf9=\EOX, khome=\E[H, kmous=\E[^_, -- knp=\E[U, kpp=\E[V, rc=\E8, reqmp=\E[492Z, rev=\E[7m, ri=\EM, -- rmacs=^O, rmcup=\E@0\E[?4r, rmso=\E[m, -- rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smcup=\E@0\E[?4s\E[?4h\E@1, -- smso=\E[7m, tbc=\E[3g, use=vt100+fnkeys, -- --xtermc|xterm terminal emulator (color), -- colors#8, ncv#7, pairs#64, -- op=\E[100m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- use=xtermm, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, ht=^I, -+ hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, -+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -+ kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kdch1=\E[3~, kel=\E[4~, kf10=\E[21~, kf11=\E[23~, -+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -+ kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, -+ kf9=\E[20~, khome=\E[1~, kich1=\E[2~, knp=\E[6~, knxt=^I, -+ kpp=\E[5~, kprv=\E[Z, kslt=\E[4~, nel=\EE, rc=\E8, rev=\E[7m, -+ rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B, -+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, -+ rmul=\E[m, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -+ sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -+ sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ use=dec+pp, use=vt220+keypad, use=dec+sl, use=ansi+enq, -+vt320-nam|vt300-nam|dec vt320 7 bit terminal with no am to make SAS happy, -+ am@, -+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, -+ use=vt320, -+# We have to init 132-col mode, not 80-col mode. -+vt320-w|vt300-w|dec vt320 wide 7 bit terminal, -+ cols#132, wsl#132, -+ is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -+ use=vt320, -+vt320-w-nam|vt300-w-nam|dec vt320 wide 7 bit terminal with no am, -+ am@, -+ is2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, -+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;24r\E[24;1H, -+ use=vt320-w, - --# From: David J. MacKenzie <djm@va.pubnix.com> 20 Apr 1995 --# Here's a termcap entry I've been using for xterm_color, which comes --# with BSD/OS 2.0, and the X11R6 contrib tape too I think. Besides the --# color stuff, I also have a status line defined as the window manager --# title bar. [I have translated it to terminfo -- ESR] --xterm-pcolor|xterm with color used for highlights and status line, -- bold=\E[1m\E[43m, rev=\E[7m\E[34m, smso=\E[7m\E[31m, -- smul=\E[4m\E[42m, use=xterm+sl, use=xterm-r6, -+# VT330 and VT340 -- These are ReGIS and SIXEL graphics terminals -+# which are pretty much a superset of the VT320. They have the -+# host writable status line, yet another different DRCS matrix size, -+# and such, but they add the DEC Technical character set, Multiple text -+# pages, selectable length pages, and the like. The difference between -+# the vt330 and vt340 is that the latter has only 2 planes and a monochrome -+# monitor, the former has 4 planes and a color monitor. These terminals -+# support VT131 and ANSI block mode, but as with much of these things, -+# termcap/terminfo doesn't deal with these features. -+# -+# Note that this entry is are set up in what was the standard way for GNU -+# Emacs v18 terminal modes to deal with the cursor keys in that the arrow -+# keys were switched into application mode at the same time the numeric pad -+# is switched into application mode. This changes the definitions of the -+# arrow keys. Emacs v19 is smarter and mines its keys directly out of -+# your termcap or terminfo entry, -+# -+# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993 -+# (vt340: string capability "sb=\E[M" corrected to "sr"; -+# also, added <rmam>/<smam> based on the init string -- esr) -+vt340|dec-vt340|vt330|dec-vt330|dec vt340 graphics terminal with 24 line page, -+ am, eslok, hs, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, vt#3, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ blink=\E[5m, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[J, -+ cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -+ dl=\E[%p1%dM, dl1=\E[M, dsl=\E[2$~\r\E[1$}\E[K\E[$}, -+ ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l$<200/>, fsl=\E[$}, -+ home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, -+ il1=\E[L, ind=\ED, -+ is2=\E<\E F\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, -+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2, -+ lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m, -+ rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B, -+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, -+ rmul=\E[24m, rs1=\E[?3l, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -+ sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ tsl=\E[2$~\E[1$}\E[1;%dH, - --# HP ships this (HPUX 9 and 10), except for the pb#9600 which was merged in --# from BSD termcap. (hpterm: added empty <acsc>, we have no idea what ACS --# chars look like --esr) --hpterm|X-hpterm|hp X11 terminal emulator, -- am, da, db, mir, xhp, -- cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, pb#9600, xmc#0, -- acsc=, bel=^G, bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, -- cub1=^H, cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, -- cuu1=\EA, dch1=\EP, dim=\E&dH, dl1=\EM, ed=\EJ$<1>, el=\EK, -- hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL, ind=^J, kbs=^H, -- kclr=\EJ, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -- kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, kf1=\Ep, -- kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, -- khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, kind=\ES, kll=\EF, -- knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, ktbc=\E3, meml=\El, -- memu=\Em, pfkey=\E&f%p1%dk%p2%l%dL%p2%s, -- pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s, -- pfx=\E&f2a%p1%dk%p2%l%dL%p2%s, -- pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rev=\E&dB, ri=\ET, -- rmacs=^O, rmir=\ER, rmkx=\E&s0A, rmln=\E&j@, rmso=\E&d@, -- rmul=\E&d@, -- sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;, -- sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smln=\E&jB, -- smso=\E&dJ, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, --# HPUX 11 provides a color version. --hpterm-color|HP X11 terminal emulator with color, -- ccc, -- colors#64, pairs#8, -- home=\E&a0y0C, -- initp=\E&v%p2%da%p3%db%p4%dc%p5%dx%p6%dy%p7%dz%p1%dI, -- op=\E&v0S, scp=\E&v%p1%dS, use=hpterm, -- --# This entry describes an xterm with Sun-style function keys enabled --# via the X resource setting "xterm*sunFunctionKeys:true" --# To understand <kf11>/<kf12> note that L1,L2 and F11,F12 are the same. --# The <kf13>...<kf20> keys are L3-L10. We don't set <kf16=\E[197z> --# because we want it to be seen as <kcpy>. --# The <kf31>...<kf45> keys are R1-R15. We treat some of these in accordance --# with their Sun keyboard labels instead. --# From: Simon J. Gerraty <sjg@zen.void.oz.au> 10 Jan 1996 --xterm-sun|xterm with sunFunctionKeys true, -- kb2=\E[218z, kcpy=\E[197z, kcub1=\EOD, kcud1=\EOB, -- kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3z, kend=\E[220z, -- kent=\EOM, kf1=\E[224z, kf10=\E[233z, kf11=\E[192z, -- kf12=\E[193z, kf13=\E[194z, kf14=\E[195z, kf15=\E[196z, -- kf17=\E[198z, kf18=\E[199z, kf19=\E[200z, kf2=\E[225z, -- kf20=\E[201z, kf3=\E[226z, kf31=\E[208z, kf32=\E[209z, -- kf33=\E[210z, kf34=\E[211z, kf35=\E[212z, kf36=\E[213z, -- kf38=\E[215z, kf4=\E[227z, kf40=\E[217z, kf42=\E[219z, -- kf44=\E[221z, kf45=\E[222z, kf46=\E[234z, kf47=\E[235z, -- kf5=\E[228z, kf6=\E[229z, kf7=\E[230z, kf8=\E[231z, -- kf9=\E[232z, kfnd=\E[200z, khlp=\E[196z, khome=\E[214z, -- kich1=\E[2z, knp=\E[222z, kpp=\E[216z, kund=\E[195z, -- use=xterm-basic, --xterms-sun|small (80x24) xterm with sunFunctionKeys true, -- cols#80, lines#24, use=xterm-sun, -- --# This is for the extensible terminal emulator on the X11R6 contrib tape. --# It corresponds to emu's internal emulation: --# emu -term emu --# emu's default sets TERM to "xterm", but that doesn't work well -TD --# fixes: remove bogus rmacs/smacs, change oc to op, add bce, am -TD --# fixes: add civis, cnorm, sgr -TD --emu|emu native mode, -- am, bce, mir, msgr, xon, -- colors#15, cols#80, it#8, lines#24, pairs#64, vt#200, -- acsc=61a\202f\260g2j\213k\214l\215m\216n\217o\220q\222s\224t\225u\226v\227w\230x\231~\244, -- bel=^G, blink=\EW, bold=\EU, civis=\EZ, clear=\EP\EE0;0;, -- cnorm=\Ea, cr=^M, csr=\Ek%p1%d;%p2%d;, cub=\Eq-%p1%d;, -- cub1=^H, cud=\Ep%p1%d;, cud1=\EB, cuf=\Eq%p1%d;, cuf1=\EC, -- cup=\EE%p1%d;%p2%d;, cuu=\Ep-%p1%d;, cuu1=\EA, -- dch=\EI%p1%d;, dch1=\EI1;, dl=\ER%p1%d;, dl1=\ER1;, -- ech=\Ej%p1%d;, ed=\EN, el=\EK, el1=\EL, home=\EE0;0;, ht=^I, -- hts=\Eh, il=\EQ%p1%d;, il1=\EQ1;, ind=\EG, -- is2=\ES\Er0;\Es0;, kbs=^H, kcub1=\EC, kcud1=\EB, kcuf1=\ED, -- kcuu1=\EA, kdch1=\177, kent=^M, kf0=\EF00, kf1=\EF01, -- kf10=\EF10, kf11=\EF11, kf12=\EF12, kf13=\EF13, kf14=\EF14, -- kf15=\EF15, kf16=\EF16, kf17=\EF17, kf18=\EF18, kf19=\EF19, -- kf2=\EF02, kf20=\EF20, kf3=\EF03, kf4=\EF04, kf5=\EF05, -- kf6=\EF06, kf7=\EF07, kf8=\EF08, kf9=\EF09, kfnd=\Efind, -- kich1=\Eins, knp=\Enext, kpp=\Eprior, kslt=\Esel, -- op=\Es0;\Er0;, rev=\ET, ri=\EF, rmir=\EX, rmso=\ES, rmul=\ES, -- rs2=\ES\Es0;\Er0;, setab=\Es%i%p1%d;, -- setaf=\Er%i%p1%d;, -- sgr=\ES%?%p1%t\ET%;%?%p2%t\EV%;%?%p3%t\ET%;%?%p4%t\EW%;%?%p6%t\EU%;, -- sgr0=\ES, smir=\EY, smso=\ET, smul=\EV, tbc=\Ej, -- --# vt220 Terminfo entry for the Emu emulation, corresponds to --# emu -term vt220 --# with NumLock set (to make the keypad transmit kf0-kf9). --# fixes: add am, xenl, corrected sgr0 -TD --emu-220|Emu-220 (vt200-7bit mode), -- am, xenl, xon, -- cols#80, it#8, lines#24, vt#200, -- acsc=aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, -- blink=\E[0;5m, bold=\E[0;1m, civis=\E[?25l, -- clear=\E[2J\E[H, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[1D, -- cud=\E[%p1%dB, cud1=\E[1B, cuf=\E[%p1%dC, cuf1=\E[1C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[1A, -- dch=\E[%p1%dP, dch1=\E[1P, dl=\E[%p1%dM, dl1=\E[1M, -- ed=\E[0J, el=\E[0K, el1=\E[1K, enacs=\E)0, home=\E[H, ht=^I, -- hts=\EH, if=/usr/share/tabset/vt300, il=\E[%p1%dL, -- il1=\E[1L, ind=\ED, is2=\E>\E[?1l\E[?3l\E[4l\E[?7h, -- kbs=^H, kcmd=\E[29~, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kdch1=\E[3~, kent=\EOM, kf0=\EOp, kf1=\EOq, -- kf10=\EOl, kf11=\EOm, kf12=\EOn, kf13=\EOP, kf14=\EOQ, -- kf15=\EOR, kf16=\EOS, kf2=\EOr, kf26=\E[17~, kf27=\E[18~, -- kf28=\E[19~, kf29=\E[20~, kf3=\EOs, kf30=\E[21~, -- kf34=\E[26~, kf37=\E[31~, kf38=\E[32~, kf39=\E[33~, -- kf4=\EOt, kf40=\E[34~, kf5=\EOu, kf6=\EOv, kf7=\EOw, -- kf8=\EOx, kf9=\EOy, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, -- knp=\E[6~, kpp=\E[5~, kslt=\E[4~, rc=\E8, rev=\E[0;7m, -- ri=\EM, rmacs=^O, rmcup=\E>, rmkx=\E>, rmso=\E[m, rmul=\E[m, -- rs2=\E[4l\E[34l\E[?1l\E[?3l\E[?5l\E[?7h, sc=\E7, -- sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m, smacs=^N, smcup=\E[?1l\E=, smkx=\E=, -- smso=\E[0;7m, smul=\E[0;4m, tbc=\E[3g, --# A commercial product, Reportedly a version of Xterm with an OPEN LOOK UI, --# print interface, ANSI X3.64 colour escape sequences, etc. Newsgroup postings --# indicate that it emulates more than one terminal, but incompletely. -+# DEC doesn't supply a vt400 description, so we add Daniel Glasser's -+# (originally written with vt420 as its primary name, and usable for it). - # --# This is adapted from a FreeBSD bug-report by Daniel Rudy <dcrudy@pacbell.net> --# It is based on vt102's entry, with some subtle differences, but also --# has status line --# supports ANSI colors (except for 'op' string) --# apparently implements alternate screen like xterm --# does not use padding, of course. --mvterm|vv100|SwitchTerm aka mvTERM, -- am, eslok, hs, km, mir, msgr, xenl, -- colors#8, cols#80, it#8, lines#24, pairs#64, -+# VT400/420 -- This terminal is a superset of the vt320. It adds the multiple -+# text pages and long text pages with selectable length of the vt340, along -+# with left and right margins, rectangular area text copy, fill, and erase -+# operations, selected region character attribute change operations, -+# page memory and rectangle checksums, insert/delete column, reception -+# macros, and other features too numerous to remember right now. TERMCAP -+# can only take advantage of a few of these added features. -+# -+# Note that this entry is are set up in what was the standard way for GNU -+# Emacs v18 terminal modes to deal with the cursor keys in that the arrow -+# keys were switched into application mode at the same time the numeric pad -+# is switched into application mode. This changes the definitions of the -+# arrow keys. Emacs v19 is smarter and mines its keys directly out of -+# your termcap entry, -+# -+# From: Daniel Glasser <dag@persoft.persoft.com>, 13 Oct 1993 -+# (vt400: string capability ":sb=\E[M:" corrected to ":sr=\E[M:"; -+# also, added <rmam>/<smam> based on the init string -- esr) -+vt400|vt400-24|dec-vt400|dec vt400 24x80 column autowrap, -+ am, eslok, hs, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, vt#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -+ blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[J$<10/>, cnorm=\E[?25h, cr=^M, - csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, - cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- dsl=\E[?E, ed=\E[J, el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, -- fsl=\E[?F, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOy, -- kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, -- op=\E[100m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, -- rmcup=\E[2J\E[?47l\E8, rmkx=\E[?1l\E>, rmso=\E[m, -- rmul=\E[m, -- rs2=\E>\E[1;3;4;5;6l\E[?7h\E[100m\E[m\E[r\E[2J\E[H, -- sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smcup=\E7\E[?47h, -+ dsl=\E[2$~\r\E[1$}\E[K\E[$}, ed=\E[J$<10/>, -+ el=\E[K$<4/>, flash=\E[?5h\E[?5l$<200/>, fsl=\E[$}, -+ home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -+ il=\E[%p1%dL, il1=\E[L, ind=\ED, -+ is2=\E<\E F\E>\E[?1h\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, -+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2, -+ lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m, -+ rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B, -+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, -+ rmul=\E[24m, rs1=\E<\E[?3l\E[!p\E[?7h, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -+ sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smir=\E[4h, - smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- tsl=\E[?E\E[?%i%p1%dT, use=vt100+fnkeys, -- --### MTERM --# --# This application is available by email from <mouse@Rodents.Montreal.QC.CA>. --# --# "mterm -type ansi" sets $TERM to "ansi" --mterm-ansi|ANSI emulation, -- am, bw, mir, msgr, -- it#8, -- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -- cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -- dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, -- el=\E[K, home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=, -- il=\E[%p1%dL, il1=\E[L, ind=\E[S, indn=\E[%p1%dS, -- invis=\E[8m, is2=\E)0\017, kbs=^H, nel=\EE, rev=\E[7m, -- ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmir=\E[4l, rmso=\E[27m, -- rmul=\E[24m, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m, smacs=^N, smir=\E[4h, smso=\E[7m, smul=\E[4m, -- vpa=\E[%i%p1%dd, --# mterm normally sets $TERM to "mterm" --mterm|mouse-sun|Der Mouse term, -- am, bw, mir, -- it#8, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^N, cuf1=^S, -- cup=\006%p1%d.%p2%d., cuu1=^X, dch1=^Y, dl1=^K, ed=^B, el=^C, -- home=^P, ht=^I, il1=^A, ind=^U, kbs=^H, ll=^R, nel=^M^U, ri=^W, -- rmir=^O, rmso=^T, smir=^Q, smso=^V, --# "mterm -type decansi" sets $TERM to "decansi" --# --# note: kdch1, kfnd, kslt are in the source code, but do not work -TD --decansi|ANSI emulation with DEC compatibility hacks, -- am, mir, msgr, xenl, -- colors#8, it#8, pairs#64, -- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, -- dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, enacs=\E(B\E)0, -- home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=, il=\E[%p1%dL, -- il1=\E[L, ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, -- is2=\E)0\E[r\017, kbs=^H, kcub1=\EOD, kcud1=\EOB, -- kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, kf1=\E[11~, -- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -- kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, kf20=\E[34~, -- kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, -- kpp=\E[5~, kslt=\E[4~, nel=\EE, op=\E[0m, rc=\E8, rev=\E[7m, -- ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, -- rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, sc=\E7, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m, smacs=^N, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, u6=\E[%i%d;%dR, -- u7=\E[6n, vpa=\E[%i%p1%dd, -+ tsl=\E[2$~\E[1$}\E[1;%dH, use=dec+sl, - --#### VWM --# --# vwmterm is a terminal emulator written for the VWM console window manager --# --vwmterm|(vwm term), -- am, bce, ccc, mir, msgr, npc, xenl, xon, -- colors#8, pairs#64, -+# (vt420: I removed <kf0>, it collided with <kf10>. I also restored -+# a missing <sc> -- esr) -+# add msgr and other capabilities from vt220 -TD -+vt420|DEC VT420, -+ am, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, vt#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, cub=\E[%p1%dD, -- cub1=^H, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -- cuu1=\E[A, cvvis=\E[?25h, dim=\E[2m, ed=\E[J, el=\E[K, -- home=\E[H, il1=\E[L, ind=^J, invis=\E[8m, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, -- kend=\E[4~, kf1=\E[[A, kf10=\E[21~, kf11=\E[22~, -- kf12=\E[23~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, -- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[1~, knp=\E[6~, kpp=\E[5~, rev=\E[7m, rmacs=\E[10m, -- rmam=\E[?7l, rmcup=\E[?1049l, rs1=\E[H\E[J\E[m\Ec, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, -- sgr0=\E[0;10m, smacs=\E[11m, smam=\E[?7h, -- smcup=\E[?1049h, smso=\E[3m, smul=\E[4m, -+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, civis=\E[?25l, -+ clear=\E[H\E[2J$<50>, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K, -+ enacs=\E)0, flash=\E[?5h$<200/>\E[?5l, home=\E[H, ht=^I, -+ hts=\EH, ich=\E[%p1%d@, if=/usr/share/tabset/vt300, -+ il=\E[%p1%dL, il1=\E[L, ind=\ED, is2=\E[1;24r\E[24;1H, -+ is3=\E[?67h\E[64;1"p, kbs=^H, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP, kf10=\E[29~, -+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\E[17~, kf6=\E[18~, -+ kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, kfnd=\E[1~, -+ kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, nel=\EE, -+ rc=\E8, rev=\E[7m$<2>, rf=/usr/share/tabset/vt300, -+ ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, -+ rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -+ rmso=\E[27m, rmul=\E[24m, rs3=\E[?67h\E[64;1"p, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<2>, -+ sgr0=\E[m\E(B$<2>, smacs=\E(0$<2>, smam=\E[?7h, -+ smir=\E[4h, smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ use=ansi+pp, use=dec+sl, use=ansi+enq, - --#### MGR -+# DEC VT220 and up support DECUDK (user-defined keys). DECUDK (i.e., pfx) -+# takes two parameters, the key and the string. Translating the key is -+# straightforward (keys 1-5 are not defined on real terminals, though some -+# emulators define these): - # --# MGR is a Bell Labs window system lighter-weight than X. --# These entries describe MGR's xterm-equivalent. --# They are courtesy of Vincent Broman <broman@nosc.mil> 14 Jan 1997 -+# if (key < 16) then value = key; -+# else if (key < 21) then value = key + 1; -+# else if (key < 25) then value = key + 2; -+# else if (key < 27) then value = key + 3; -+# else if (key < 30) then value = key + 4; -+# else value = key + 5; - # -- --mgr|Bellcore MGR (non X) window system terminal emulation, -- am, km, -- bel=^G, bold=\E2n, civis=\E9h, clear=^L, cnorm=\Eh, cr=^M, -- csr=\E%p1%d;%p2%dt, cub1=^H, cud1=\Ef, cuf1=\Er, -- cup=\E%p2%d;%p1%dM, cuu1=\Eu, cvvis=\E0h, -- dch=\E%p1%dE$<5>, dch1=\EE, dl=\E%p1%dd$<3*>, -- dl1=\Ed$<3>, ed=\EC, el=\Ec, hd=\E1;2f, ht=^I, hu=\E1;2u, -- ich=\E%p1%dA$<5>, ich1=\EA, il=\E%p1%da$<3*>, -- il1=\Ea$<3>, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, nel=^M^J, rev=\E1n, rmam=\E5S, -- rmso=\E0n, rmul=\E0n, sgr0=\E0n, smam=\E5s, smso=\E1n, -- smul=\E4n, --mgr-sun|Mgr window with Sun keyboard, -- ka1=\E[214z, ka3=\E[216z, kb2=\E[218z, kc1=\E[220z, -- kc3=\E[222z, kcpy=\E[197z, kend=\E[220z, kent=\E[250z, -- kf1=\E[224z, kf10=\E[233z, kf11=\E[234z, kf12=\E[235z, -- kf2=\E[225z, kf3=\E[226z, kf4=\E[227z, kf5=\E[228z, -- kf6=\E[229z, kf7=\E[230z, kf8=\E[231z, kf9=\E[232z, -- kfnd=\E[200z, khlp=\E[207z, khome=\E[214z, knp=\E[222z, -- kopn=\E[198z, kpp=\E[216z, kund=\E[195z, use=mgr, --mgr-linux|Mgr window with Linux keyboard, -- ka1=\E[H, ka3=\E[5~, kb2=\E[G, kc1=\E[Y, kc3=\E[6~, -- kdch1=\E[3~, kend=\E[4~, kf0=\E[[J, kf1=\E[[A, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, -- kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[1~, knp=\E[6~, kpp=\E[5~, use=mgr, -- --######## UNIX VIRTUAL TERMINALS, VIRTUAL CONSOLES, AND TELNET CLIENTS -+# The string must be the hexadecimal equivalent, e.g., "5052494E" for "PRINT". -+# There's no provision in terminfo for emitting a string in this format, so the -+# application has to know it. - # -+vt420pc|DEC VT420 w/PC keyboard, -+ kdch1=\177, kend=\E[4~, kf1=\E[11~, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf13=\E[11;2~, kf14=\E[12;2~, -+ kf15=\E[13;2~, kf16=\E[14;2~, kf17=\E[15;2~, -+ kf18=\E[17;2~, kf19=\E[18;2~, kf2=\E[12~, kf20=\E[19;2~, -+ kf21=\E[20;2~, kf22=\E[21;2~, kf23=\E[23;2~, -+ kf24=\E[24;2~, kf25=\E[23~, kf26=\E[24~, kf27=\E[25~, -+ kf28=\E[26~, kf29=\E[28~, kf3=\E[13~, kf30=\E[29~, -+ kf31=\E[31~, kf32=\E[32~, kf33=\E[33~, kf34=\E[34~, -+ kf35=\E[35~, kf36=\E[36~, kf37=\E[23;2~, kf38=\E[24;2~, -+ kf39=\E[25;2~, kf4=\E[14~, kf40=\E[26;2~, kf41=\E[28;2~, -+ kf42=\E[29;2~, kf43=\E[31;2~, kf44=\E[32;2~, -+ kf45=\E[33;2~, kf46=\E[34;2~, kf47=\E[35;2~, -+ kf48=\E[36;2~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, khome=\E[H, -+ pctrm=USR_TERM\:vt420pcdos\:, -+ pfx=\EP1;1|%?%{16}%p1%>%t%{0}%e%{21}%p1%>%t%{1}%e%{25}%p1%>%t%{2}%e%{27}%p1%>%t%{3}%e%{30}%p1%>%t%{4}%e%{5}%;%p1%+%d/%p2%s\E\\, -+ use=vt420, - --# Columbus UNIX virtual terminal. This terminal also appears in --# UNIX 4.0 and successors as line discipline 1 (?), but is --# undocumented and does not really work quite right. --cbunix|cb unix virtual terminal, -- OTbs, am, da, db, -- cols#80, lines#24, lm#0, -- bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\EG%p2%c%p1%c, cuu1=\EA, dch1=\EM, dl1=\EN, ed=\EL, -- el=\EK, ich1=\EO, il1=\EP, ind=^J, kcub1=\ED, kcud1=\EB, -- kcuf1=\EC, kcuu1=\EA, khome=\EE, rmso=\Eb^D, rmul=\Eb^A, -- smso=\Ea^D, smul=\Ea^A, --# (vremote: removed obsolete ":nl@:" -- esr) --vremote|virtual remote terminal, -- am@, -- cols#79, use=cbunix, -- --pty|4bsd pseudo teletype, -- cup=\EG%p1%{32}%+%c%p2%{32}%+%c, rmso=\Eb$, rmul=\Eb!, -- smso=\Ea$, smul=\Ea!, use=cbunix, -+vt420pcdos|DEC VT420 w/PC for DOS Merge, -+ lines#25, -+ dispc=%?%p1%{19}%=%t\E\023\021%e%p1%{32}%<%t\E%p1%c%e%p1%{127}%=%t\E\177%e%p1%c%;, -+ pctrm@, -+ rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sgr@, -+ sgr0=\E[m, smsc=\E[?1;2r\E[34h, use=vt420pc, - --# The codes supported by the term.el terminal emulation in GNU Emacs 19.30 --eterm|gnu emacs term.el terminal emulation, -- am, mir, xenl, -- cols#80, lines#24, -- bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, rev=\E[7m, -- rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, smcup=\E7\E[?47h, smir=\E[4h, smso=\E[7m, -- smul=\E[4m, -+vt420f|DEC VT420 with VT kbd; VT400 mode; F1-F5 used as Fkeys, -+ kdch1=\177, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, -+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -+ kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[H, lf1=\EOP, lf2=\EOQ, lf3=\EOR, lf4=\EOS, -+ use=vt420, - --# The codes supported by the term.el terminal emulation in GNU Emacs 22.2 --eterm-color|Emacs term.el terminal emulator term-protocol-version 0.96, -- am, mir, msgr, xenl, -- colors#8, cols#80, lines#24, pairs#64, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, kbs=\177, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kdch1=\E[3~, kend=\E[4~, khome=\E[1~, kich1=\E[2~, -- knp=\E[6~, kpp=\E[5~, op=\E[39;49m, rc=\E8, rev=\E[7m, -- ri=\EM, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec, -- sc=\E7, setab=\E[%p1%'('%+%dm, setaf=\E[%p1%{30}%+%dm, -- sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m, -- sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, -- u6=\E[%i%d;%dR, u7=\E[6n, -+vt510|DEC VT510, -+ use=vt420, -+vt510pc|DEC VT510 w/PC keyboard, -+ use=vt420pc, -+vt510pcdos|DEC VT510 w/PC for DOS Merge, -+ use=vt420pcdos, - --# Entries for use by the `screen' program by Juergen Weigert, --# Michael Schroeder, Oliver Laumann. The screen and --# screen-w entries came with version 3.7.1. The screen2 and screen3 entries --# come from University of Wisconsin and may be older. --# (screen: added <cnorm> on ANSI model -- esr) -+# VT520/VT525 - # --# 'screen' defines extensions to termcap. Some are used in its terminal --# description: --# G0 (bool) Terminal can deal with ISO 2022 font selection sequences. --# AX (bool) Does understand ANSI set default fg/bg color --# (\E[39m / \E[49m). --# S0 (str) Switch charset 'G0' to the specified charset. --# E0 (str) Switch charset 'G0' back to standard charset. -+# The VT520 is a monochrome text terminal capable of managing up to -+# four independent sessions in the terminal. It has multiple ANSI -+# emulations (VT520, VT420, VT320, VT220, VT100, VT PCTerm, SCO Console) -+# and ASCII emulations (WY160/60, PCTerm, 50/50+, 150/120, TVI 950, -+# 925 910+, ADDS A2). This terminfo data is for the ANSI emulations only. - # --# tested with screen 3.09.08 --screen|VT 100/ANSI X3.64 virtual terminal, -- OTbs, OTpt, am, km, mir, msgr, xenl, G0, -- colors#8, cols#80, it#8, lines#24, ncv@, pairs#64, U8#1, -- acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[34h\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, -- cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0, -- flash=\Eg, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0, kbs=^H, kcbt=\E[Z, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -- nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, -- rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[23m, -- rmul=\E[24m, rs2=\Ec\E[?1000l\E[?25h, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smcup=\E[?1049h, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m, tbc=\E[3g, E0=\E(B, -- S0=\E(%p1%c, use=ecma+color, --# The bce and status-line entries are from screen 3.9.13 (and require some --# changes to .screenrc). --screen-bce|VT 100/ANSI X3.64 virtual terminal with bce, -- bce, -- ech@, use=screen, --screen-s|VT 100/ANSI X3.64 virtual terminal with hardstatus line, -- dsl=\E_\E\\, fsl=\E\\, tsl=\E_, use=screen, -- --# ====================================================================== --# Entries for GNU Screen with 16 colors. --# Those variations permit to benefit from 16 colors palette, and from --# bold font and blink attribute separated from bright colors. But they --# are less portable than the generic "screen" 8 color entries: Their --# usage makes real sense only if the terminals you attach and reattach --# do all support 16 color palette. -- --screen-16color|GNU Screen with 16 colors, -- use=ibm+16color, use=screen, -- --screen-16color-s|GNU Screen with 16 colors and status line, -- use=ibm+16color, use=screen-s, -- --screen-16color-bce|GNU Screen with 16 colors and BCE, -- use=ibm+16color, use=screen-bce, -+# Terminal Set-Up is entered by pressing [F3], [Caps Lock]/[F3] or -+# [Alt]/[Print Screen] depending upon which keyboard and which -+# terminal mode is being used. If Set-Up has been disabled or -+# assigned to an unknown key, Set-Up may be entered by pressing -+# [F3] as the first key after power up, regardless of keyboard type. -+vt520|DEC VT520, -+ use=ansi+rca, use=vt420, use=ansi+tabs, - --screen-16color-bce-s|GNU Screen with 16 colors, BCE, and status line, -- bce, use=ibm+16color, use=screen-s, -+vt525|DEC VT525, -+ use=vt520, - --# ====================================================================== --# Entries for GNU Screen 4.02 with --enable-colors256. -+#### VT100 emulations -+# - --screen-256color|GNU Screen with 256 colors, -- ccc@, -- initc@, use=xterm+256color, use=screen, -+# John Hawkinson <jhawk@MIT.EDU> tells us that the EWAN telnet for Windows -+# (the best Windows telnet as of September 1995) presents the name `dec-vt100' -+# to telnetd. Michael Deutschmann <ldeutsch@mail.netshop.net> informs us -+# that this works best with a stock vt100 entry. -+dec-vt100|EWAN telnet's vt100 emulation, -+ use=vt100, - --screen-256color-s|GNU Screen with 256 colors and status line, -- ccc@, -- initc@, use=xterm+256color, use=screen-s, -+# From: Adrian Garside <94ajg2@eng.cam.ac.uk>, 19 Nov 1996 -+dec-vt220|DOS tnvt200 terminal emulator, -+ am@, use=vt220, - --screen-256color-bce|GNU Screen with 256 colors and BCE, -- ccc@, -- initc@, use=xterm+256color, use=screen-bce, -+# Zstem340 is an (IMHO) excellent VT emulator for PC's. I recommend it to -+# anyone who needs PC VT340 emulation. (or anything below that level, for -+# that matter -- DEC's ALL-in-1 seems happy with it, as does INFOPLUS's -+# RDBM systems, it includes ReGIS and SiXel support! I'm impressed... -+# I can send the address if requested. -+# (z340: changed garbled \E[5?l to \E[?5l, DEC smooth scroll off -- esr) -+# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 -+z340|zstem vt340 terminal emulator 132col 42line, -+ lines#42, -+ is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H, -+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h\E[1;42r\E[42;1H, -+ use=vt320-w, -+z340-nam|zstem vt340 terminal emulator 132col 42line (no automatic margins), -+ am@, -+ is2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H, -+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7l\E[?8h\E[1;42r\E[42;1H, -+ use=z340, - --screen-256color-bce-s|GNU Screen with 256 colors, BCE, and status line, -- bce, ccc@, -- initc@, use=xterm+256color, use=screen-s, -+# CRT is shareware. It implements some xterm features, including mouse. -+crt|crt-vt220|CRT 2.3 emulating VT220, -+ bce, msgr, -+ ncv@, -+ hts=\EH, use=vt100+enq, use=vt220, use=ecma+color, - --# ====================================================================== -- --# Read the fine manpage: --# When screen tries to figure out a terminal name for --# itself, it first looks for an entry named "screen.<term>", --# where <term> is the contents of your $TERM variable. If --# no such entry exists, screen tries "screen" (or "screen-w" --# if the terminal is wide (132 cols or more)). If even this --# entry cannot be found, "vt100" is used as a substitute. -+# PuTTY 0.55 (released 3 August 2004) -+# http://www.chiark.greenend.org.uk/~sgtatham/putty/ - # --# Notwithstanding the manpage, screen uses its own notion of the termcap --# and some keys from "screen.<term>" are ignored. Here is an entry which --# covers those (tested with screen 4.00.02) -TD --screen+fkeys|function-keys according to screen, -- kend=\E[4~, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kfnd@, -- khome=\E[1~, kslt@, -+# Comparing with 0.51, vttest is much better (only a few problems with the -+# cursor position reports and wrapping). - # --# Here are a few customized entries which are useful -TD -+# PuTTY 0.51 (released 14 December 2000) - # --# Notes: --# (a) screen does not support invis. --# (b) screen's implementation of bw is incorrect according to tack. --# (c) screen appears to hardcode the strings for khome/kend, making it --# necessary to override the "use=" clause's values (screen+fkeys). --# (d) screen sets $TERMCAP to a termcap-formatted copy of the 'screen' entry, --# which is NOT the same as the terminfo screen.<term>. --# (e) when screen finds one of these customized entries, it sets $TERM to --# match. Hence, no "screen.xterm" entry is provided, since that would --# create heartburn for people running remote xterm's. -+# This emulates vt100 + vt52 (plus a few vt220 features: ech, SRM, DECTCEM, as -+# well as SCO and Atari, color palettes from Linux console). Reading the code, -+# it is intended to be VT102 plus selected features. By default, it sets $TERM -+# to xterm, which is incorrect, since several features are misimplemented: - # --# xterm (-xfree86 or -r6) does not normally support kIC, kNXT and kPRV --# since the default translations override the built-in keycode --# translation. They are suppressed here to show what is tested by tack. --screen.xterm-xfree86|screen.xterm-new|screen customized for modern xterm, -- bce@, bw, -- invis@, kIC@, kNXT@, kPRV@, meml@, memu@, -- sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m, -- use=screen+fkeys, use=xterm-new, --# xterm-r6 does not really support khome/kend unless it is propped up by --# the translations resource. --screen.xterm-r6|screen customized for X11R6 xterm, -- bw, use=screen+fkeys, use=xterm-r6, --# Color applications running in screen and TeraTerm do not play well together --# on Solaris because Sun's curses implementation gets confused. --screen.teraterm|disable ncv in teraterm, -- ncv#127, -- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -- use=screen+fkeys, use=screen, --# Other terminals --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=vt220+keypad, use=screen, --screen.Eterm|screen in Eterm, -- use=screen+fkeys, use=Eterm, --screen.mrxvt|screen in mrxvt, -- use=screen+fkeys, use=mrxvt, --screen.vte|screen in any VTE-based terminal, -- use=screen+fkeys, use=vte, --screen.gnome|screen in GNOME Terminal, -- use=screen+fkeys, use=gnome, --screen.konsole|screen in KDE console window, -- use=screen+fkeys, use=konsole, --# fix the backspace key --screen.linux|screen in linux console, -- bw, -- kbs=\177, kcbt@, use=screen+fkeys, use=screen, --screen.mlterm|screen in mlterm, -- use=screen+fkeys, use=mlterm, -- --# The default "screen" entry is reasonably portable, but not optimal for the --# most widely-used terminal emulators. The "bce" capability is supported in --# screen since 3.9.13, and when used, will require fewer characters to be sent --# to the terminal for updates. -+# Alt+key always sends ESC+key, so 'km' capability is removed. - # --# If you are using only terminals which support bce, then you can use this --# feature in your screen configuration. -+# Control responses, wrapping and tabs are buggy, failing a couple of -+# screens in vttest. - # --# Adding these lines to your ".screenrc" file will allow using these customized --# entries: --# term screen-bce --# bce on --# defbce on --screen-bce.xterm-new|screen optimized for modern xterm, -- bce, -- ech@, use=screen.xterm-new, --screen-bce.rxvt|screen optimized for rxvt, -- bce, -- ech@, use=screen.rxvt, --screen-bce.Eterm|screen optimized for Eterm, -- bce, -- ech@, use=screen.Eterm, --screen-bce.mrxvt|screen optimized for mrxvt, -- bce, -- ech@, use=screen.mrxvt, --screen-bce.gnome|screen optimized for GNOME-Terminal, -- bce, -- ech@, use=screen.gnome, --screen-bce.konsole|screen optimized for KDE console window, -- bce, -- ech@, use=screen.konsole, --screen-bce.linux|screen optimized for linux console, -- bce, -- ech@, use=screen.linux, --screen-bce.mlterm|screen optimized for mlterm, -- bce, -- ech@, use=screen.mlterm, -- --screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols, -- cols#132, use=screen, -+# xterm mouse support is not implemented (unrelease version may). -+# -+# Several features such as backspace/delete are optional; this entry documents -+# the default behavior -TD - --screen2|old VT 100/ANSI X3.64 virtual terminal, -- cols#80, it#8, lines#24, -- cbt=\E[Z, clear=\E[2J\E[H, cr=^M, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=, il=\E[%p1%dL, -- il1=\E[L, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -- kcuu1=\EA, kf0=\E~, kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV, -- kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\E0I, khome=\EH, -- nel=^M^J, rc=\E8, ri=\EM, rmir=\E[4l, rmso=\E[23m, -- rmul=\E[24m, rs1=\Ec, sc=\E7, sgr0=\E[m, smir=\E[4h, -- smso=\E[3m, smul=\E[4m, tbc=\E[3g, --# (screen3: removed unknown ":xv:LP:G0:" -- esr) --screen3|older VT 100/ANSI X3.64 virtual terminal, -- km, mir, msgr, -- cols#80, it#8, lines#24, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -- cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+putty|PuTTY terminal emulator, -+ am, bce, bw, ccc, mir, msgr, xenl, xon, XT, -+ colors#8, it#8, ncv#22, pairs#64, U8#1, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0, kbs=^H, kcub1=\EOD, -- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, -- kf3=\EOR, kf4=\EOS, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, -- rmir=\E[4l, rmkx=\E>, rmso=\E[23m, rmul=\E[24m, rs1=\Ec, -- sc=\E7, sgr0=\E[m, smir=\E[4h, smkx=\E=, smso=\E[3m, -- smul=\E[4m, tbc=\E[3g, -+ dch=\E[%p1%dP, dch1=\E[P, -+ dispc=%?%p1%{8}%=%t\E%%G\342\227\230\E%%@%e%p1%{10}%=%t\E%%G\342\227\231\E%%@%e%p1%{12}%=%t\E%%G\342\231\0\E%%@%e%p1%{13}%=%t\E%%G\342\231\252\E%%@%e%p1%{14}%=%t\E%%G\342\231\253\E%%@%e%p1%{15}%=%t\E%%G\342\230\274\E%%@%e%p1%{27}%=%t\E%%G\342\206\220\E%%@%e%p1%{155}%=%t\E%%G\340\202\242\E%%@%e%p1%c%;, -+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -+ el1=\E[1K, enacs=\E(B\E)0, flash=\E[?5h\E[?5l, home=\E[H, -+ hpa=\E[%i%p1%dG, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, -+ ind=^J, indn=\E[%p1%dS, -+ initc=\E]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x, -+ is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>\E]R, -+ kb2=\E[G, kbs=\177, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, -+ kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, -+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, -+ kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, -+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -+ kspd=^Z, nel=^M^J, oc=\E]R, op=\E[39;49m, rc=\E8, rev=\E[7m, -+ ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, -+ rmcup=\E[2J\E[?47l, rmir=\E[4l, rmpch=\E[10m, -+ rmso=\E[27m, rmul=\E[24m, -+ rs2=\E<\E["p\E[50;6"p\Ec\E[?3l\E]R\E[?1000l, -+ s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, sc=\E7, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[?47h, -+ smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3;J, use=vt102+enq, -+ use=xterm+sl, -+vt100-putty|Reset PuTTY to pure vt100, -+ rs2=\E<\E["p\Ec\E[?3l\E]R\E[40"p\E[61"p\E[50;1;2"p, -+ use=vt100, -+# palette is hardcoded... -+putty-256color|PuTTY 0.58 with xterm 256-colors, -+ initc@, use=xterm+256color, use=putty, - --# Francesco Potorti <F.Potorti@cnuce.cnr.it>: --# NCSA telnet is one of the most used telnet clients for the Macintosh. It has --# been maintained until recently by the National Center for Supercomputer --# Applications, and it is feature rich, stable and free. It can be downloaded --# from www.ncsa.edu. This terminfo description file is based on xterm-vt220, --# xterm+sl, and the docs at NCSA. It works well. -+# One of the keyboard selections is "VT100+". -+# pterm (the X11 port) uses shifted F1-F10 as F11-F20 -+putty-vt100|VT100+ keyboard layout, -+ kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EO[, kf2=\EOQ, -+ kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, -+ kf9=\EOX, use=putty, -+ -+# Unlike xterm-sco, this leaves kmous ambiguous with kf1. - # --# NCSA Telnet 2.6 for Macintosh in vt220 8-bit emulation mode --# The terminal options should be set as follows: --# Xterm sequences ON --# use VT wrap mode ON --# use Emacs arrow keys OFF --# CTRL-COMND is Emacs meta ON --# 8 bit mode ON --# answerback string: "ncsa-vt220-8" --# setup keys: all disabled -+# Use modifiers to obtain function keys past 12: -+# F1-F12 - normal -+# F13-F24 - shift -+# F25-F36 - control/alt -+# F37-F48 - control/shift - # --# Application mode is not used. -+putty-sco|putty with SCO function keys, -+ kbeg=\E[E, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W, -+ kf12=\E[X, kf13=\E[Y, kf14=\E[Z, kf15=\E[a, kf16=\E[b, -+ kf17=\E[c, kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f, -+ kf21=\E[g, kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k, -+ kf26=\E[l, kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O, -+ kf30=\E[p, kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t, -+ kf35=\E[u, kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y, -+ kf4=\E[P, kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\, -+ kf44=\E[], kf45=\E[\^, kf46=\E[_, kf47=\E[`, kf48=\E[{, -+ kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, kf9=\E[U, khome=\E[H, -+ kich1=\E[L, knp=\E[G, kpp=\E[I, use=putty, -+ -+# This entry is for Tera Term Pro version 2.3, for MS-Windows 95/NT written by -+# T. Teranishi dated Mar 10, 1998. It is a free software terminal emulator -+# (communication program) which supports: - # --# Other special mappings: --# Apple VT220 --# HELP Find --# HOME Insert here --# PAGEUP Remove --# DEL Select --# END Prev Screen --# PAGEDOWN Next Screen -+# - Serial port connections. -+# - TCP/IP (telnet) connections. -+# - VT100 emulation, and selected VT200/300 emulation. -+# - TEK4010 emulation. -+# - File transfer protocols (Kermit, XMODEM, ZMODEM, B-PLUS and -+# Quick-VAN). -+# - Scripts using the "Tera Term Language". -+# - Japanese and Russian character sets. - # --# Though it supports ANSI color, NCSA Telnet uses color to represent blinking --# text. -+# The program does not come with terminfo or termcap entries. However, the -+# emulation (testing with vttest and ncurses) is reasonably close to vt100 (no -+# vt52 or doublesize character support; blinking is done with color). Besides -+# the HPA, VPA extensions it also implements CPL and CNL. - # --# The status-line manipulation is a mapping of the xterm-compatible control --# sequences for setting the window-title. So you must use tsl and fsl in --# pairs, since the latter ends the string that is loaded to the window-title. --ncsa-m|ncsa-vt220-8|NCSA Telnet 2.6 for Macintosh in vt220-8 mode, -- am, hs, km, mir, msgr, xenl, -- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- dsl=\E]0;\007, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, -- flash=\E[?5h\E[?5l, fsl=^G, home=\E[H, ht=^I, hts=\EH, -- ich=\E[%p1%d@, if=/usr/share/tabset/vt100, -- il=\E[%p1%dL, il1=\E[L, ind=\n$<150*>, -- is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>, kbs=^H, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[4~, kend=\E[5~, kf1=\E[17~, kf10=\E[28~, -- kf11=\E[29~, kf12=\E[31~, kf13=\E[32~, kf14=\E[33~, -- kf15=\E[34~, kf2=\E[18, kf3=\E[19~, kf4=\E[20~, kf5=\E[21~, -- kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, khlp=\E[1~, -- khome=\E[2~, knp=\E[6~, kpp=\E[3~, mc4=\E[4i, mc5=\E[5i, -- rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt100, ri=\EM, -- rmacs=\E(B, rmam=\E[?7l, rmcup=\E[2J\E8, rmir=\E[4l, -- rmso=\E[27m, rmul=\E[24m, -- rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;4;6l\E[4l\E>, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;, -- sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smcup=\E7, -- smir=\E[4h, smso=\E[7m, smul=\E[4m, tbc=\E[3g, tsl=\E]0;, -- u8=\E[?62;1;6c, use=ansi+enq, --ncsa|NCSA Telnet 2.7 for Macintosh in vt220-8 mode, -- use=ncsa-m, use=klone+color, --ncsa-ns|NCSA Telnet 2.7 for Macintosh in vt220-8 mode, -- hs@, -- dsl@, fsl@, tsl@, use=ncsa, --ncsa-m-ns|NCSA Telnet 2.6 for Macintosh in vt220-8 mode, -- hs@, -- dsl@, fsl@, tsl@, use=ncsa-m, --# alternate -TD: --# The documented function-key mapping refers to the Apple Extended Keyboard --# (e.g., NCSA Telnet's F1 corresponds to a VT220 F6). We use the VT220-style --# codes, however, since the numeric keypad (VT100) PF1-PF4 are available on --# some keyboards and many applications require these as F1-F4. -+# All of the function keys can be remapped. This description shows the default -+# mapping, as installed. Both vt100 PF1-PF4 keys and quasi-vt220 F1-F4 keys -+# are supported. F13-F20 are obtained by shifting F3-F10. The editing keypad -+# is laid out like vt220, rather than the face codes on the PC keyboard, i.e, -+# kfnd Insert -+# kslt Delete -+# kich1 Home -+# kdch1 PageUp -+# kpp End -+# knp PageDown - # --ncsa-vt220|NCSA Telnet using vt220-compatible function keys, -- kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -- kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, -- kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, -- kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, use=ncsa, -- --#### Pilot Pro Palm-Top -+# ANSI colors are implemented, but cannot be combined with video attributes -+# except for reverse. - # --# Termcap for Top Gun Telnet and SSH on the Palm Pilot. --# http://www.ai/~iang/TGssh/ --pilot|tgtelnet|Top Gun Telnet on the Palm Pilot Professional, -- OTbs, am, xenl, -- cols#39, lines#16, -- bel=^G, clear=\Ec, cr=^M, cub1=^H, cud1=^J, -- cup=\Em%p1%{32}%+%c%p2%{32}%+%c, home=\Em\s\s, ht=^I, -- ind=^J, kbs=^H, kcub1=^H, kcud1=^J, knp=^L, kpp=^K, nel=\Em~\s, -- rmso=\EB, smso=\Eb, -- --# From: Federico Bianchi <bianchi@www.arte.unipi.it> --# These entries are for the Embeddable Linux Kernel System (ELKS) --# project - an heavily stripped down Linux to be run on 16 bit --# boxes or, eventually, to be used in embedded systems - and have been --# adapted from the stock ELKS termcap. The project itself looks stalled, --# and the latest improvements I know of date back to March 2000. -+# No fonts are supplied with the program, so the acsc string is chosen to -+# correspond with the default Microsoft terminal font. - # --# To cope with the ELKS dumb console I added an "elks-glasstty" entry; --# as an added bonus, this deals with all the capabilities common to --# both VT52 and ANSI (or, eventually, "special") modes. -- --elks-glasstty|ELKS glass-TTY capabilities, -- OTbs, am, -- cols#80, it#8, lines#25, -- bel=^G, cr=^M, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, -- nel=^M^J, -- --elks-vt52|ELKS vt52 console, -- clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, el=\EK, -- home=\EH, use=elks-glasstty, -- --elks-ansi|ELKS ANSI console, -- clear=\E[H\E[2J, cub1=\E[D, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, -- rmso=\E[m, smso=\E[7m, use=elks-glasstty, -- --# As a matter of fact, ELKS 0.0.83 on PCs defaults to ANSI emulation --# instead of VT52, but the "elks" entry still refers to the latter. -+# Tera Term recognizes some xterm sequences, including those for setting and -+# retrieving the window title, and for setting the window size (i.e., using -+# "resize -s"), though it does not pass SIGWINCH to the application if the -+# user resizes the window with the mouse. -+teraterm2.3|Tera Term Pro, -+ km, xon@, -+ ncv#43, vt@, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ blink=\E[5m, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[J, -+ cnorm=\E[?25h, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, -+ flash=\E[?5h\E[?5l$<200/>, hpa=\E[%i%p1%dG, -+ il=\E[%p1%dL, il1=\E[L, kdch1=\E[3~, kf1=\E[11~, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -+ kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, kf20=\E[34~, -+ kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, -+ kpp=\E[5~, kslt=\E[4~, op=\E[100m, rev=\E[7m, ri=\EM, -+ rmso=\E[27m, rmul=\E[24m, sgr0=\E[0m\017, smso=\E[7m, -+ smul=\E[4m, vpa=\E[%i%p1%dd, use=vt100+enq, -+ use=klone+color, use=vt100, - --elks|default ELKS console, -- use=elks-vt52, -+# Version 4.59 has regular vt100 line-drawing (so it is no longer necessary -+# to choose a Windows OEM font). -+# -+# Testing with tack: -+# - it does not have xenl (suppress that) -+# - underline seems to work with color (modify ncv). -+# Testing with vttest: -+# - wrapping differs from vt100 (menu 1). -+# - it recognizes xterm's X10 and normal mouse tracking, but none of the -+# other flavors. -+# - it recognizes the dtterm window controls for reporting size in -+# characters and pixels. -+# - it passes SIGWINCH. -+teraterm4.59|Tera Term Pro, -+ bce, xenl@, -+ ncv#41, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ kmous=\E[M, use=teraterm2.3, - --# Project SIBO (for Psion 3 palmtops) console is identical to the ELKS --# one but in screen size -+teraterm|Tera Term, -+ use=teraterm4.59, - --sibo|ELKS SIBO console, -- cols#61, it#8, lines#20, use=elks-vt52, -+# Tested with WinNT 4.0, the telnet application assumes the screensize is -+# 25x80. This entry uses the 'Terminal' font, to get line-drawing characters. -+# -+# Other notes: -+# a) Fails tack's cup (cursor-addressing) test, though cup works well enough -+# for casual (occasional) use. Also fails several of the vttest screens, -+# but that is not unusual for vt100 "emulators". -+# b) Does not implement vt100 keypad -+# c) Recognizes a subset of vt52 controls. -+ms-vt100|MS telnet imitating dec vt100, -+ lines#25, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ ka1@, ka3@, kb2@, kc1@, kc3@, kent@, kf0@, kf1@, kf10@, kf2@, kf3@, kf4@, -+ kf5@, kf6@, kf7@, kf8@, kf9@, tbc@, use=vt102+enq, use=vt100, - --######## COMMERCIAL WORKSTATION CONSOLES -+# Tested with Windows 2000, the telnet application runs in a console window, -+# also using 'Terminal' font. - # -+# Other notes: -+# a) This version has no function keys or numeric keypad. Unlike the older -+# version, the numeric keypad is entirely ignored. -+# b) The program sets $TERM to "ansi", which of course is inaccurate. -+ms-vt100-color|vtnt|windows 2000 ansi (sic), -+ bce, -+ dch=\E[%p1%dP, ich=\E[%p1%d@, use=ecma+color, -+ use=ms-vt100, - --#### Alpha consoles -+# Based on comments from Federico Bianchi: -+# -+# vt100+ is basically a VT102-noSGR with ANSI.SYS colors and a different -+# scheme for PF keys. -+# -+# and PuTTY wishlist: -+# -+# The modifiers are represented as the codes listed above, prefixed to -+# the normal sequences. If the modifier is pressed alone, its sequence -+# is transmitted twice in succession. If multiple modifiers apply, -+# they're transmitted in the order shift, control, alt. - # -+# Shift \E^S -+# Alt \E^A, -+# Ctrl \E^C, -+ms-vt100+|vt100+|windows XP vt100+ (sic), -+ kdch1=\E-, kend=\Ek, kf1=\E1, kf10=\E0, kf11=\E!, kf12=\E@, -+ kf13=\E\023\E1, kf14=\E\023\E2, kf15=\E\023\E3, -+ kf16=\E\023\E4, kf17=\E\023\E5, kf18=\E\023\E6, -+ kf19=\E\023\E7, kf2=\E2, kf20=\E\023\E8, kf21=\E\023\E9, -+ kf22=\E\023\E0, kf23=\E\023\E!, kf24=\E\023\E@, -+ kf25=\E\003\E1, kf26=\E\003\E2, kf27=\E\003\E3, -+ kf28=\E\003\E4, kf29=\E\003\E5, kf3=\E3, kf30=\E\003\E6, -+ kf31=\E\003\E7, kf32=\E\003\E8, kf33=\E\003\E9, -+ kf34=\E\003\E0, kf35=\E\003\E!, kf36=\E\003\E@, -+ kf37=\E\001\E1, kf38=\E\001\E2, kf39=\E\001\E3, kf4=\E4, -+ kf40=\E\001\E4, kf41=\E\001\E5, kf42=\E\001\E6, -+ kf43=\E\001\E7, kf44=\E\001\E8, kf45=\E\001\E9, -+ kf46=\E\001\E0, kf47=\E\001\E!, kf48=\E\001\E@, kf5=\E5, -+ kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, khome=\Eh, kich1=\E+, -+ knp=\E/, kpp=\E?, use=ms-vt100-color, - --# This is from the OSF/1 Release 1.0 termcap file --pccons|pcconsole|ANSI (mostly) Alpha PC console terminal emulation, -- am, xon, -- cols#80, lines#25, -- bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -- el=\E[K, home=\E[H, ht=^I, ich1=\E[@, il1=\E[L, kbs=^H, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, -- nel=^M^J, rev=\E[7m, rmso=\E[m, sgr0=\E[m, smso=\E[7m, -+ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+, -+ use=ms-vt100+, - --#### Sun consoles -+# expect-5.44.1.15/example/tkterm -+# a minimal subset of a vt100 (compare with "news-unk). - # -+# The missing "=" in smkx is not a typo (here), but an error in tkterm. -+tt|tkterm|Don Libes' tk text widget terminal emulator, -+ clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%p1%d;%p2%dH, cuu1=\E[A, ind=^J, kf1=\EOP, kf2=\EOQ, -+ kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, -+ kf9=\EOX, rmkx=\E[?1l\E>, rmso=\E[m, smkx=\E[?1h\E, -+ smso=\E[7m, - --# :is1: resets scrolling region in case a previous user had used "tset vt100" --oldsun|Sun Microsystems Workstation console, -- OTbs, am, km, mir, msgr, -- cols#80, it#8, lines#34, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, -- dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, ht=^I, -- ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, -- is1=\E[1r, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, -- rmso=\E[m, sgr0=\E[m, smso=\E[7m, --# From: Alexander Lukyanov <lav@video.yars.free.net>, 14 Nov 1995 --# <lines> capability later corrected by J.T. Conklin <jtc@cygnus.com> --# SGR 1, 4 aren't supported - removed bold/underline (T.Dickey 17 Jan 1998) --sun-il|Sun Microsystems console with working insert-line, -- am, km, msgr, -- cols#80, lines#34, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, -- dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, ht=^I, -- ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, -- kb2=\E[218z, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kdch1=\177, kend=\E[220z, kf1=\E[224z, -- kf10=\E[233z, kf11=\E[234z, kf12=\E[235z, kf2=\E[225z, -- kf3=\E[226z, kf4=\E[227z, kf5=\E[228z, kf6=\E[229z, -- kf7=\E[230z, kf8=\E[231z, kf9=\E[232z, khome=\E[214z, -- knp=\E[222z, kopt=\E[194z, kpp=\E[216z, kres=\E[193z, -- kund=\E[195z, rev=\E[7m, rmso=\E[m, rmul@, rs2=\E[s, -- sgr=\E[0%?%p1%p3%|%t;7%;m, sgr0=\E[m, smso=\E[7m, -- u8=\E[1t, u9=\E[11t, --# On some versions of CGSIX framebuffer firmware (SparcStation 5), <il1>/<il> --# flake out on the last line. Unfortunately, without them the terminal has no --# way to scroll. --sun-cgsix|sun-ss5|Sun SparcStation 5 console, -- il@, il1@, use=sun-il, --# If you are using an SS5, change the sun definition to use sun-ss5. --sun|sun1|sun2|Sun Microsystems Inc. workstation console, -- use=sun-il, -+######## X TERMINAL EMULATORS -+#### XTERM -+# -+# You can add the following line to your .Xdefaults to change the terminal type -+# set by the xterms you start up to my-xterm: -+# -+# *termName: my-xterm -+# -+# System administrators can change the default entry for xterm instances -+# by adding a similar line to /usr/X11/lib/X11/app-defaults/XTerm. In either -+# case, xterm will detect and reject an invalid terminal type, falling back -+# to the default of xterm. -+# - --# From: <john@ucbrenoir> Tue Sep 24 13:14:44 1985 --sun-s|Sun Microsystems Workstation window with status line, -- hs, -- dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, use=sun, --sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs, -- hs, -- dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, use=sun-e, --sun-48|Sun 48-line window, -- cols#80, lines#48, use=sun, --sun-34|Sun 34-line window, -- cols#80, lines#34, use=sun, --sun-24|Sun 24-line window, -- cols#80, lines#24, use=sun, --sun-17|Sun 17-line window, -- cols#80, lines#17, use=sun, --sun-12|Sun 12-line window, -- cols#80, lines#12, use=sun, --sun-1|Sun 1-line window for sysline, -- eslok, hs, -- cols#80, lines#1, -- dsl=^L, fsl=\E[K, tsl=^M, use=sun, --sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character, -- ich1@, rmir@, smir@, use=sun, --sun-c|sun-cmd|Sun Microsystems Workstation console with scrollable history, -- lines#35, -- rmcup=\E[>4h, smcup=\E[>4l, use=sun, --sun-type4|Sun Workstation console with type 4 keyboard, -- kcub1=\E[217z, kcud1=\E[221z, kcuf1=\E[219z, -- kcuu1=\E[215z, use=sun-il, -- --# Most of the current references to sun-color are from users wondering why this --# is the default on install. Details from reading the wscons manpage, adding --# cub, etc., here (rather than in the base sun-il entry) since it is not clear --# when those were added -TD (2005-05-28) --# --# According to wscons manpage, color is supported only on IA systems. --# Sun's terminfo entry documents bold and smul/rmul capabilities, but wscons --# does not list these. It also sets ncv#3, however that corresponds to --# underline and standout. --# --# Since the documentation and terminfo do not agree, see also current code at --# http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/io/tem_safe.c --# --# That (actually a different driver which "supports" sun-color) also supports --# these features: --# vpa=\E[%i%p1%dd --# hpa=\E[%i%p1%d` --# cbt=\E[Z --# dim=\E[2m --# blink=\E[5m --# It supports bold, but not underline -TD (2009-09-19) --sun-color|Sun Microsystems Workstation console with color support (IA systems), -- colors#8, ncv#3, pairs#64, -- cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC, -- cuu=\E[%p1%dA, home=\E[H, op=\E[0m, setab=\E[4%p1%dm, -- setaf=\E[3%p1%dm, -+# X10/6.6 11/7/86, minus alternate screen, plus (csr) -+# (xterm: ":MT:" changed to ":km:"; added <smam>/<rmam> based on init string; -+# removed (hs, eslok, tsl=\E[?E\E[?%i%dT, fsl=\E[?F, dsl=\E[?E) -+# as these seem not to work -- esr) -+x10term|vs100-x10|xterm terminal emulator (X10 window system), -+ OTbs, am, km, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#65, -+ bold=\E[1m, clear=\E[H\E[2J, csr=\E[%i%p1%d;%p2%dr, -+ cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL, -+ il1=\E[L, ind=^J, is2=\E\E[m\E[?7h\E[?1;4l, kbs=^H, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, -+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, rev=\E[7m, ri=\EM, rmam=\E[?7l, -+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, smam=\E[?7h, smir=\E[4h, smkx=\E[?1h\E=, -+ smso=\E[7m, smul=\E[4m, -+# Compatible with the R5 xterm -+# (from the XFree86 3.2 distribution, <blink=@> removed) -+# added khome/kend, rmir/smir, rmul/smul, hts based on the R5 xterm code - TD -+# corrected typos in rs2 string - TD -+# added u6-u9 -TD -+xterm-r5|xterm R5 version, -+ OTbs, am, km, msgr, xenl, -+ cols#80, it#8, lines#24, -+ bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, -+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, -+ kdl1=\E[31~, kel=\E[8~, kend=\E[4~, kf0=\EOq, kf1=\E[11~, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, -+ kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, -+ kil1=\E[30~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, rc=\E8, -+ rev=\E[7m, ri=\EM, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, -+ rmul=\E[m, -+ rs2=\E>\E[?1;3;4;5;6l\E[4l\E[?7h\E[m\E[r\E[2J\E[H, -+ sc=\E7, -+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, -+ sgr0=\E[m, smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, use=vt100+enq, -+# Compatible with the R6 xterm -+# (from XFree86 3.2 distribution, <acsc> and <it> added, <blink@> removed) -+# added khome/kend, hts based on the R6 xterm code - TD -+# (khome/kend do not actually work in X11R5 or X11R6, but many people use this -+# for compatibility with other emulators). -+xterm-r6|xterm X11R6 version, -+ OTbs, am, km, mir, msgr, xenl, -+ cols#80, it#8, lines#24, -+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, enacs=\E)0, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, -+ il1=\E[L, ind=^J, -+ is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8, kbs=^H, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kdch1=\E[3~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, -+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -+ kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ kfnd=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -+ kslt=\E[4~, meml=\El, memu=\Em, rc=\E8, rev=\E[7m, ri=\EM, -+ rmacs=^O, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, -+ rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -+ rs2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8, sc=\E7, -+ sgr0=\E[m, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ use=vt100+enq, -+xterm-old|antique xterm version, -+ use=xterm-r6, -+# This is the base xterm entry for the xterm supplied with XFree86 3.2 & up. -+# The name has been changed and some aliases have been removed. -+xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System), -+ OTbs, am, bce, km, mir, msgr, xenl, XT, -+ cols#80, it#8, lines#24, ncv@, -+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0, -+ flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG, -+ ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, -+ il1=\E[L, ind=^J, -+ is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>, -+ kbeg=\EOE, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -+ kcuu1=\EOA, kdch1=\177, kend=\EOF, kf1=\E[11~, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -+ kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, -+ kf19=\E[33~, kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, -+ kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, -+ kf9=\E[20~, kfnd=\E[1~, khome=\EOH, kich1=\E[2~, -+ kmous=\E[M, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, meml=\El, -+ memu=\Em, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l, -+ rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E[?1l\E>, -+ rmso=\E[27m, rmul=\E[24m, rs1=^O, -+ rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>, sc=\E7, - setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, - setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -- use=sun, -- --#### Iris consoles --# -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h, -+ smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt100+enq, -+ use=ecma+color, use=vt220+keypad, - --# (wsiris: this had extension capabilities --# :HS=\E7F2:HE=\E7F7:\ --# :CT#2:CZ=*Bblack,red,green,yellow,blue,magenta,cyan,*Fwhite: --# See the note on Iris extensions near the end of this file. --# Finally, removed suboptimal <clear>=\EH\EJ and added <cud1> & --# <flash> from BRL -- esr) --wsiris|iris40|iris emulating a 40 line visual 50 (approximately), -- OTbs, OTnc, OTpt, am, -- OTkn#3, cols#80, it#8, lines#40, -- OTnl=\EB, bel=^G, clear=\Ev, cnorm=\E>, cub1=^H, cud1=\EB, -- cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, -- cvvis=\E;, dim=\E7F2, dl1=\EM, ed=\EJ, el=\EK, -- flash=\E7F4\E7B1\013\E7F7\E7B0, home=\EH, ht=^I, il1=\EL, -- ind=^J, is2=\E7B0\E7F7\E7C2\E7R3, kcub1=\ED, kcud1=\EB, -- kcuf1=\EC, kcuu1=\EA, kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3, -- kf4=\E4, kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, ri=\EI, -- rmso=\E0@, rmul=\E7R3\E0@, sgr0=\E7F7, smso=\E9P, -- smul=\E7R2\E9P, -+# This is the stock xterm entry supplied with XFree86 3.3, which uses VT100 -+# codes for F1-F4 except while in VT220 mode. -+xterm-xf86-v33|xterm terminal emulator (XFree86 3.3 Window System), -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, use=xterm-xf86-v32, - --#### NeWS consoles --# --# Console terminal windows under the NeWS (Sun's Display Postscript windowing --# environment). Note: these have nothing to do with Sony's News workstation --# line. --# -+# This version was released in XFree86 3.3.3 (November 1998). -+# Besides providing printer support, it exploits a new feature that allows -+# xterm to use terminfo-based descriptions with the titeInhibit resource. -+# -- the distribution contained incorrect khome/kend values -TD -+xterm-xf86-v333|xterm terminal emulator (XFree86 3.3.3 Window System), -+ blink=\E[5m, ich1@, invis=\E[8m, -+ is2=\E[!p\E[?3;4l\E[4l\E>, kdch1=\E[3~, kfnd@, kslt@, -+ rmcup=\E[?1047l\E[?1048l, rs1=\Ec, -+ rs2=\E[!p\E[?3;4l\E[4l\E>, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ smcup=\E[?1048h\E[?1047h, use=ansi+pp, -+ use=xterm-xf86-v33, - --# Entry for NeWS's psterm from Eric Messick & Hugh Daniel --# (psterm: unknown ":sl=\EOl:el=\ENl:" removed -- esr) --psterm|psterm-basic|NeWS psterm-80x34, -- OTbs, am, hs, km, ul, -- cols#80, it#8, lines#34, -- blink=\EOb, bold=\EOd, clear=^L, csr=\EE%p1%d;%p2%d;, -- cub1=\ET, cud1=\EP, cuf1=\EV, cup=\E%p1%d;%p2%d;, cuu1=\EY, -- dch1=\EF, dl1=\EK, ed=\EB, el=\EC, flash=\EZ, fsl=\ENl, -- home=\ER, ht=^I, il1=\EA, ind=\EW, is1=\EN*, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, ll=\EU, rc=^\, rev=\EOr, -- ri=\EX, rmcup=\ENt, rmir=\ENi, rmso=\ENo, rmul=\ENu, sc=^], -- sgr0=\EN*, smcup=\EOt, smir=\EOi, smso=\EOo, smul=\EOu, -- tsl=\EOl, --psterm-96x48|NeWS psterm 96x48, -- cols#96, lines#48, use=psterm, --psterm-90x28|NeWS psterm 90x28, -- cols#90, lines#28, use=psterm, --psterm-80x24|NeWS psterm 80x24, -- cols#80, lines#24, use=psterm, --# This is a faster termcap for psterm. Warning: if you use this termcap, --# some control characters you type will do strange things to the screen. --# (psterm-fast: unknown ":sl=^Ol:el=^Nl:" -- esr) --psterm-fast|NeWS psterm fast version (flaky ctrl chars), -- OTbs, am, hs, km, ul, -- cols#80, it#8, lines#34, -- blink=^Ob, bold=^Od, clear=^L, csr=\005%p1%d;%p2%d;, -- cub1=^T, cud1=^P, cuf1=^V, cup=\004%p1%d;%p2%d;, cuu1=^Y, -- dch1=^F, dl1=^K, ed=^B, el=^C, flash=^Z, fsl=^Nl, home=^R, ht=^I, -- il1=^A, ind=^W, is1=^N*, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, ll=^U, rc=^\, rev=^Or, ri=^X, rmcup=^Nt, rmir=^Ni, -- rmso=^No, rmul=^Nu, sc=^], sgr0=^N*, smcup=^Ot, smir=^Oi, -- smso=^Oo, smul=^Ou, tsl=^Ol, -+# This version was released in XFree86 4.0. -+xterm-xf86-v40|xterm terminal emulator (XFree86 4.0 Window System), -+ npc, -+ kDC=\E[3;5~, kEND=\EO5F, kHOM=\EO5H, kIC=\E[2;5~, -+ kLFT=\EO5D, kNXT=\E[6;5~, kPRV=\E[5;5~, kRIT=\EO5C, ka1@, -+ ka3@, kb2=\EOE, kc1@, kc3@, kcbt=\E[Z, kdch1=\E[3~, kend=\EOF, -+ kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S, -+ kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, -+ kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~, -+ kf23=\E[23;2~, kf24=\E[24;2~, kf25=\EO5P, kf26=\EO5Q, -+ kf27=\EO5R, kf28=\EO5S, kf29=\E[15;5~, kf30=\E[17;5~, -+ 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=\EO6P, -+ kf38=\EO6Q, kf39=\EO6R, kf40=\EO6S, 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~, khome=\EOH, rmcup=\E[?1049l, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -+ smcup=\E[?1049h, use=xterm-xf86-v333, - --#### NeXT consoles --# --# Use `glasstty' for the Workspace application --# -+# This version was released in XFree86 4.3. -+xterm-xf86-v43|xterm terminal emulator (XFree86 4.3 Window System), -+ kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~, -+ kLFT=\E[1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\E[1;2C, -+ kbeg@, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ use=xterm-xf86-v40, - --# From: Dave Wetzel <dave@turbocat.snafu.de> 22 Dec 1995 --next|NeXT console, -- am, xt, -- cols#80, it#8, lines#24, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, -- ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, -- rmso=\E[4;1m, sgr0=\E[m, smso=\E[4;2m, --nextshell|NeXT Shell application, -- am, -- cols#80, -- bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, kbs=^H, kcub1=^H, -- kcud1=^J, nel=^M^J, -+# This version was released in XFree86 4.4. -+xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System), -+ cnorm=\E[?12l\E[?25h, cvvis=\E[?12;25h, indn=\E[%p1%dS, -+ rin=\E[%p1%dT, use=xterm-xf86-v43, - --#### Sony NEWS workstations --# -+xterm-xfree86|xterm terminal emulator (XFree86), -+ use=xterm-xf86-v44, - --# (news-unk: this had :KB=news: -- esr) --news-unk|SONY NEWS vt100 emulator common entry, -- OTbs, OTpt, am, xenl, -- cols#80, -- OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, -- cr=^M, csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, -- ed=\E[J, el=\E[K, home=\E[H, ht=^I, -- if=/usr/share/tabset/vt100, il=\E[%p1%dL, il1=\E[L, -- is2=\E[?7h\E[?1l\E[?3l\E7\E8, kbs=^H, kcub1=\EOD, -- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOY, kf1=\EOP, -- kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, -- kf8=\EOW, kf9=\EOX, rc=\E8, rev=\E[7m, ri=\EM, -- rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[r, sc=\E7, -- sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, --# --# (news-29: this had :TY=ascii: --esr) --news-29, -- lines#29, use=news-unk, --# (news-29-euc: this had :TY=euc: --esr) --news-29-euc, -- use=news-29, --# (news-29-sjis: this had :TY=sjis: --esr) --news-29-sjis, -- use=news-29, --# --# (news-33: this had :TY=ascii: --esr) --news-33, -- lines#33, use=news-unk, --# (news-33-euc: this had :TY=euc: --esr) --news-33-euc, -- use=news-33, --# (news-33-sjis: this had :TY=sjis: --esr) --news-33-sjis, -- use=news-33, --# --# (news-42: this had :TY=ascii: --esr) --news-42, -- lines#42, use=news-unk, --# (news-42-euc: this had :TY=euc: --esr) --news-42-euc, -- use=news-42, --# (news-42-sjis: this had :TY=sjis: --esr) --news-42-sjis, -- use=news-42, -+# This version reflects the current xterm features. -+xterm-new|modern xterm terminal emulator, -+ npc, -+ indn=\E[%p1%dS, kb2=\EOE, kcbt=\E[Z, kent=\EOM, -+ rin=\E[%p1%dT, use=xterm+pcfkeys, use=xterm+tmux, -+ use=xterm-basic, -+ -+# This fragment is for people who cannot agree on what the backspace key -+# should send. -+xterm+kbs|fragment for backspace key, -+ kbs=^H, - # --# NEWS-OS old termcap entry -+# This fragment describes as much of XFree86 xterm's "pc-style" function -+# keys as will fit into terminfo's 60 function keys. -+# From ctlseqs.ms: -+# Code Modifiers -+# --------------------------------- -+# 2 Shift -+# 3 Alt -+# 4 Shift + Alt -+# 5 Control -+# 6 Shift + Control -+# 7 Alt + Control -+# 8 Shift + Alt + Control -+# --------------------------------- -+# The meta key may also be used as a modifier in this scheme, adding another -+# bit to the parameter. -+xterm+pcfkeys|fragment for PC-style fkeys, -+ use=xterm+app, use=xterm+pcf2, use=xterm+pcc2, -+ use=xterm+pce2, - # --# (news-old-unk: this had :KB=news:TY=sjis: --esr) --news-old-unk|SONY NEWS vt100 emulator common entry, -- OTbs, OTpt, am, xenl, -- cols#80, vt#3, -- OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[;H\E[2J, -- cr=^M, csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, -- home=\E[H, ht=^I, if=/usr/share/tabset/vt100, kbs=^H, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, -- kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, rev=\E[7m, ri=\EM, -- rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -+xterm+noapp|fragment with cursor keys in normal mode, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[F, -+ khome=\E[H, -+ -+xterm+app|fragment with cursor keys in application mode, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\EOF, -+ khome=\EOH, - # --# (nwp512: this had :DE=^H:, which I think means <OTbs> --esr) --nwp512|news|nwp514|news40|vt100-bm|old sony vt100 emulator 40 lines, -- OTbs, -- lines#40, -- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8, -- use=news-old-unk, -+# The "PC-style" modifier scheme was introduced in xterm patch #94 (1999/3/27) -+# and revised in patch #167 (2002/8/24). Some other terminal emulators copied -+# the earlier scheme, as noted in the "use=" clauses in this file. - # --# (nwp512-a: this had :TY=ascii: and the alias vt100-bm --esr) --nwp512-a|nwp514-a|news-a|news42|news40-a|sony vt100 emulator 42 line, -- lines#42, -- is2=\E[?7h\E[?1l\E[?3l\E7\E[1;42r\E8, -- use=news-old-unk, -+# The original assignments from patch #94 for cursor-keys had some technical -+# issues: - # --# (nwp-512-o: this had :KB=nwp410:DE=^H: I interpret the latter as <OTbs>. --esr) --nwp512-o|nwp514-o|news-o|news40-o|vt100-bm-o|sony vt100 emulator 40 lines, -- OTbs, -- lines#40, -- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8, -- use=news-old-unk, -+# A parameter for a function-key to represent a modifier is just more -+# bits. But for a cursor-key it may change the behavior of the -+# application. For instance, emacs decodes the first parameter of a -+# cursor-key as a repeat count. - # --# (nwp513: this had :DE=^H: and the alias vt100-bm --esr) --nwp513|nwp518|nwe501|newscbm|news31|sony vt100 emulator 33 lines, -- OTbs, -- lines#31, -- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8, -- use=news-old-unk, -+# A parameterized string should (really) not begin with SS3 (\EO). -+# Rather, CSI (\E[) should be used. - # --# (nwp513-a: this had :TY=ascii: and :DE=^H:, which I interpret as <OTbs>; --esr) --# also the alias vt100-bm. --nwp513-a|nwp518-a|nwe501-a|nwp251-a|newscbm-a|news31-a|newscbm33|news33|old sony vt100 emulator 33 lines, -- OTbs, -- lines#33, -- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;33r\E8, -- use=news-old-unk, -+# For these reasons, the original assignments were deprecated. For -+# compatibility reasons, they are still available as a setting of xterm's -+# modifyCursorKeys resource. These fragments list the modified cursor-keys -+# that might apply to xterm+pcfkeys with different values of that resource. -+xterm+pcc3|fragment with modifyCursorKeys:3, -+ kLFT=\E[>1;2D, kRIT=\E[>1;2C, kind=\E[>1;2B, -+ kri=\E[>1;2A, kDN=\E[>1;2B, kDN3=\E[>1;3B, kDN4=\E[>1;4B, -+ kDN5=\E[>1;5B, kDN6=\E[>1;6B, kDN7=\E[>1;7B, -+ kLFT3=\E[>1;3D, kLFT4=\E[>1;4D, kLFT5=\E[>1;5D, -+ kLFT6=\E[>1;6D, kLFT7=\E[>1;7D, kRIT3=\E[>1;3C, -+ kRIT4=\E[>1;4C, kRIT5=\E[>1;5C, kRIT6=\E[>1;6C, -+ kRIT7=\E[>1;7C, kUP=\E[>1;2A, kUP3=\E[>1;3A, -+ kUP4=\E[>1;4A, kUP5=\E[>1;5A, kUP6=\E[>1;6A, -+ kUP7=\E[>1;7A, -+ -+xterm+pcc2|fragment with modifyCursorKeys:2, -+ kLFT=\E[1;2D, kRIT=\E[1;2C, kind=\E[1;2B, kri=\E[1;2A, -+ kDN=\E[1;2B, kDN3=\E[1;3B, kDN4=\E[1;4B, kDN5=\E[1;5B, -+ kDN6=\E[1;6B, kDN7=\E[1;7B, kLFT3=\E[1;3D, kLFT4=\E[1;4D, -+ kLFT5=\E[1;5D, kLFT6=\E[1;6D, kLFT7=\E[1;7D, -+ kRIT3=\E[1;3C, kRIT4=\E[1;4C, kRIT5=\E[1;5C, -+ kRIT6=\E[1;6C, kRIT7=\E[1;7C, kUP=\E[1;2A, kUP3=\E[1;3A, -+ kUP4=\E[1;4A, kUP5=\E[1;5A, kUP6=\E[1;6A, kUP7=\E[1;7A, -+ -+xterm+pcc1|fragment with modifyCursorKeys:1, -+ kLFT=\E[2D, kRIT=\E[2C, kind=\E[2B, kri=\E[2A, kDN=\E[2B, -+ kDN3=\E[3B, kDN4=\E[4B, kDN5=\E[5B, kDN6=\E[6B, kDN7=\E[7B, -+ kLFT3=\E[3D, kLFT4=\E[4D, kLFT5=\E[5D, kLFT6=\E[6D, -+ kLFT7=\E[7D, kRIT3=\E[3C, kRIT4=\E[4C, kRIT5=\E[5C, -+ kRIT6=\E[6C, kRIT7=\E[7C, kUP=\E[2A, kUP3=\E[3A, -+ kUP4=\E[4A, kUP5=\E[5A, kUP6=\E[6A, kUP7=\E[7A, -+ -+xterm+pcc0|fragment with modifyCursorKeys:0, -+ kLFT=\EO2D, kRIT=\EO2C, kind=\EO2B, kri=\EO2A, kDN=\EO2B, -+ kDN3=\EO3B, kDN4=\EO4B, kDN5=\EO5B, kDN6=\EO6B, kDN7=\EO7B, -+ kLFT3=\EO3D, kLFT4=\EO4D, kLFT5=\EO5D, kLFT6=\EO6D, -+ kLFT7=\EO7D, kRIT3=\EO3C, kRIT4=\EO4C, kRIT5=\EO5C, -+ kRIT6=\EO6C, kRIT7=\EO7C, kUP=\EO2A, kUP3=\EO3A, -+ kUP4=\EO4A, kUP5=\EO5A, kUP6=\EO6A, kUP7=\EO7A, -+ - # --# (nwp513-o: had :DE=^H:, I think that's <OTbs>; also the alias vt100-bm --esr) --nwp513-o|nwp518-o|nwe501-o|nwp251-o|newscbm-o|news31-o|old sony vt100 emulator 33 lines, -- OTbs, -- lines#31, -- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8, -- use=news-old-unk, -+# Here are corresponding fragments from xterm patch #216: - # --# (news28: this had :DE=^H:, I think that's <OTbs>, and :KB=nws1200: --esr) --news28|sony vt100 emulator 28 lines, -- OTbs, -- lines#28, -- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;28r\E8, -- use=news-old-unk, -+xterm+pcf0|fragment with modifyFunctionKeys:0, -+ kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -+ kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S, -+ kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, kf2=\EOQ, -+ kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~, -+ kf23=\E[23;2~, kf24=\E[24;2~, kf25=\EO5P, kf26=\EO5Q, -+ kf27=\EO5R, kf28=\EO5S, kf29=\E[15;5~, kf3=\EOR, -+ kf30=\E[17;5~, 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=\EO6P, kf38=\EO6Q, kf39=\EO6R, -+ kf4=\EOS, kf40=\EO6S, 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=\EO3P, -+ kf5=\E[15~, kf50=\EO3Q, kf51=\EO3R, kf52=\EO3S, -+ 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~, kf6=\E[17~, kf60=\E[24;3~, kf61=\EO4P, -+ kf62=\EO4Q, kf63=\EO4R, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, - # --# (news29: this had :TY=ascii:KB=nws1200:\ --esr) --news29|news28-a|sony vt100 emulator 29 lines, -- lines#29, -- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;29r\E8, -- use=news-old-unk, -+xterm+pcf2|fragment with modifyFunctionKeys:2, -+ kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -+ kf13=\E[1;2P, kf14=\E[1;2Q, kf15=\E[1;2R, kf16=\E[1;2S, -+ kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, kf2=\EOQ, -+ kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~, -+ kf23=\E[23;2~, kf24=\E[24;2~, kf25=\E[1;5P, kf26=\E[1;5Q, -+ kf27=\E[1;5R, kf28=\E[1;5S, kf29=\E[15;5~, kf3=\EOR, -+ kf30=\E[17;5~, 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, -+ kf4=\EOS, 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, kf5=\E[15~, 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~, kf6=\E[17~, kf60=\E[24;3~, -+ kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, - # --# (news511: this had :TY=sjis: --esr) --nwp511|nwp-511|nwp-511 vt100, -- OTbs, OTpt, am, xenl, -- cols#80, lines#24, -- clear=\E[;H\E[2J$<20/>, cub1=\E[D, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A$<2/>, dl1=\E[M, -- ed=\E[J$<30/>, el=\E[K$<3/>, -- flash=\E[?5h\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l, -- il1=\E[L, is2=\E[?5l\E[?1l\E>\E[?7h\E[?8h, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, -- kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\E#W, khome=\E[H, -- ri=\EM$<5/>, rmso=\E[m$<2/>, rmul=\E[m$<2/>, -- rs2=\E7\E[r\E8\E[?5l\E[?1l\E>\E[?7h\E[?8h, -- smso=\E[7m$<2/>, smul=\E[4m$<2/>, --# (news517: this had :TY=sjis:. --esr) --nwp517|nwp-517|nwp-517 vt200 80 cols 30 rows, -- eslok, hs, -- cols#80, lines#30, -- OTi2=\E[2$~\n, dsl=\E[1$~, fsl=\E[0$}, -- is2=\E7\E[r\E8\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- tsl=\E[1$}\E[;%df, use=vt200, --# (news517-w: this had :TY=sjis:. --esr) --nwp517-w|nwp-517-w|nwp-517 vt200 132 cols 50 rows, -- eslok, hs, -- cols#132, lines#50, -- OTi2=\E[2$~\n, dsl=\E[1$~, fsl=\E[0$}, -- is2=\E7\E[r\E8\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, -- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, -- tsl=\E[1$}\E[;%df, use=vt200, -+# Chunks from xterm #230: -+xterm+pce2|fragment with modifyCursorKeys:2, -+ kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~, -+ kNXT=\E[6;2~, kPRV=\E[5;2~, kich1=\E[2~, knp=\E[6~, -+ kpp=\E[5~, kDC3=\E[3;3~, kDC4=\E[3;4~, kDC5=\E[3;5~, -+ kDC6=\E[3;6~, kDC7=\E[3;7~, kEND3=\E[1;3F, kEND4=\E[1;4F, -+ kEND5=\E[1;5F, kEND6=\E[1;6F, kEND7=\E[1;7F, -+ kHOM3=\E[1;3H, kHOM4=\E[1;4H, kHOM5=\E[1;5H, -+ kHOM6=\E[1;6H, kHOM7=\E[1;7H, kIC3=\E[2;3~, kIC4=\E[2;4~, -+ kIC5=\E[2;5~, kIC6=\E[2;6~, kIC7=\E[2;7~, kNXT3=\E[6;3~, -+ kNXT4=\E[6;4~, kNXT5=\E[6;5~, kNXT6=\E[6;6~, -+ kNXT7=\E[6;7~, kPRV3=\E[5;3~, kPRV4=\E[5;4~, -+ kPRV5=\E[5;5~, kPRV6=\E[5;6~, kPRV7=\E[5;7~, -+ use=xterm+edit, - --#### Common Desktop Environment --# -+xterm+edit|fragment for 6-key editing-keypad, -+ kdch1=\E[3~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -+ use=xterm+pc+edit, - --# This ships with Sun's CDE in Solaris 2.5 --# Corrected Sun Aug 9 1998 by Alexander V. Lukyanov <lav@video.yars.free.net> --dtterm|CDE desktop terminal, -- am, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, lm#0, ncv@, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, -+xterm+pc+edit|fragment for pc-style editing keypad, -+ kend=\E[4~, khome=\E[1~, -+ -+xterm+vt+edit|fragment for vt220-style editing keypad, -+ kfnd=\E[1~, kslt=\E[4~, -+ -+# -+# 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 -+# is shown here (because that is used in mrxvt and mlterm): -+xterm+r6f2|xterm with oldFunctionKeys and modifyFunctionKeys:2, -+ kf1=\E[11~, kf13=\E[11;2~, kf14=\E[12;2~, kf15=\E[13;2~, -+ kf16=\E[14;2~, kf2=\E[12~, kf25=\E[11;5~, kf26=\E[12;5~, -+ kf27=\E[13;5~, kf28=\E[14;5~, kf3=\E[13~, kf37=\E[11;6~, -+ kf38=\E[12;6~, kf39=\E[13;6~, kf4=\E[14~, kf40=\E[14;6~, -+ kf49=\E[11;3~, kf50=\E[12;3~, kf51=\E[13;3~, -+ kf52=\E[14;3~, kf61=\E[11;4~, kf62=\E[12;4~, -+ kf63=\E[13;4~, use=xterm+pcf2, -+# -+# This chunk is used for building the VT220/Sun/PC keyboard variants. -+xterm-basic|modern xterm terminal emulator - common, -+ OTbs, am, bce, km, mir, msgr, xenl, AX, XT, -+ colors#8, cols#80, it#8, lines#24, pairs#64, -+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=^M, - csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, - cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, -+ cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, - dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, -- enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, home=\E[H, -+ flash=\E[?5h$<100/>\E[?5l, home=\E[H, hpa=\E[%i%p1%dG, - ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, -- ind=\ED, invis=\E[8m, is2=\E F\E>\E[?1l\E[?7h\E[?45l, -- kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[3~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -- kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, -- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -- kslt=\E[4~, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, -- rmam=\E[?7l, rmir=\E[4l, rmso=\E[22;27m, rmul=\E[24m, -- sc=\E7, -- sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -- smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, use=ecma+color, -+ ind=^J, invis=\E[8m, is2=\E[!p\E[?3;4l\E[4l\E>, -+ kmous=\E[M, meml=\El, memu=\Em, op=\E[39;49m, rc=\E8, -+ rev=\E[7m, ri=\EM, rmacs=\E(B, rmam=\E[?7l, -+ rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>, -+ rmm=\E[?1034l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec, -+ rs2=\E[!p\E[?3;4l\E[4l\E>, sc=\E7, setab=\E[4%p1%dm, -+ setaf=\E[3%p1%dm, -+ setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -+ setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m, -+ sgr0=\E(B\E[m, smacs=\E(0, smam=\E[?7h, smcup=\E[?1049h, -+ smir=\E[4h, smkx=\E[?1h\E=, smm=\E[?1034h, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3;J, -+ use=ansi+pp, use=xterm+kbs, use=vt100+enq, - --#### Non-Unix Consoles --# -+# From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997 -+# In retrospect, something like xterm-r6 was intended here -TD -+xterm-xi|xterm on XI Graphics Accelerated X under BSD/OS 3.1, -+ rmso=\E[m, rmul=\E[m, use=xterm-xf86-v33, - --### EMX termcap.dat compatibility modes --# --# Also (possibly only EMX, so we don't put it in ansi.sys, etc): set the --# no_color_video to inform the application that standout(1), underline(2) --# reverse(4) and invisible(64) don't work with color. --emx-base|DOS special keys, -- bce, bw, -- it#8, ncv#71, -- bel=^G, use=ansi.sys, -+# 16-colors is one of the variants of XFree86 3.3 xterm, updated for 4.0 (T.Dickey) -+# If configured to support 88- or 256-colors (which is fairly common in 2009), -+# xterm also recognizes the control sequences for initc -TD -+xterm-16color|xterm with 16 colors like aixterm, -+ ccc, -+ initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\, -+ use=ibm+16color, use=xterm-new, - --# Except for the "-emx" suffixes, these are as distributed with EMX 0.9b, --# a Unix-style environment used on OS/2. (Note that the suffix makes some --# names longer than 14 characters, the nominal maximum). -+# 256-colors is a compile-time feature of XFree86 xterm beginning with -+# patch #111 (1999/7/10) -TD -+xterm+256color|xterm 256-color feature, -+ ccc, -+ colors#256, pairs#32767, -+ initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\, -+ setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m, -+ setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m, -+ setb@, setf@, -+ -+# 88-colors is a compile-time feature of XFree86 xterm beginning with -+# patch #115 (1999/9/18) -TD - # --# Removed: rmacs=\E[10m, smacs=\E[11m, because OS/2 does not implement acs. --ansi-emx|ANSI.SYS color, -- am, bce, eo, mir, msgr, xon, -- colors#8, cols#80, it#8, lines#25, pairs#64, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[1;33;44m\E[H\E[J, cnorm=\E[?25h, cr=^M, cub1=^H, -- cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -- dch=\E[%p1%dp, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, -- home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, ind=^J, -- kb2=\E[G, kbs=^H, kf0=\0D, kll=\0O, kspd=^Z, nel=^M^J, -- rev=\E[5;37;41m, rmir=\E[4l, rmpch=\E[10m, -- rmso=\E[0;44m\E[1;33m, rmul=\E[0;44m\E[1;33m, rs1=\Ec, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr0=\E[0m\E[1;33;44m, smir=\E[4h, smpch=\E[11m, -- smso=\E[0;31;47m, smul=\E[1;31;44m, tbc=\E[3g, u8=\E[?6c, -- u9=\E[c, use=emx-base, --# nice colors for Emacs (white on blue, mode line white on cyan) --ansi-color-2-emx|ANSI.SYS color 2, -- clear=\E[0;37;44m\E[H\E[J, rev=\E[1;37;46m, -- rmso=\E[0;37;44m, rmul=\E[0;37;44m, rs1=\Ec, -- setaf=\E[3%p1%dm, sgr0=\E[0;37;44m, smso=\E[1;37;46m, -- smul=\E[1;36;44m, use=ansi-emx, --# nice colors for Emacs (white on black, mode line black on cyan) --ansi-color-3-emx|ANSI.SYS color 3, -- clear=\E[0;37;40m\E[H\E[J, rev=\E[1;37;46m, -- rmso=\E[0;37;40m, rmul=\E[0;37;40m, rs1=\Ec, -- setaf=\E[3%p1%dm, sgr0=\E[0;10m, smso=\E[1;37;46m, -- smul=\E[0;36;40m, use=ansi-emx, --mono-emx|stupid monochrome ansi terminal with only one kind of emphasis, -- am, -- cols#80, it#8, lines#24, -- clear=\E[H\E[2J$<50>, cub1=\E[D, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, -- ht=^I, kb2=\E[G, kbs=^H, kcub1=\0K, kcud1=\0P, kcuf1=\0M, -- kcuu1=\0H, kf0=\0D, kf1=\0;, kf2=\0<, kf3=\0=, kf4=\0>, -- kf5=\0?, kf6=\0@, kf7=\0A, kf8=\0B, kf9=\0C, khome=\0G, -- kich1=\0R, kll=\0O, knp=\0Q, kpp=\0I, nel=^M^J, rev=\E[7m, -- sgr0=\E[0m, -+# Note that the escape sequences used are the same as for 256-colors - xterm -+# has a different table of default color resource values. If built for -+# 256-colors, it can still handle an 88-color palette by using the initc -+# capability. -+# -+# At this time (2007/7/14), except for rxvt 2.7.x, none of the other terminals -+# which support the xterm+256color feature support the associated initc -+# capability. So it is cancelled in the entries which use this and/or the -+# xterm+256color block. -+# -+# The default color palette for the 256- and 88-colors are different. A -+# given executable will have one palette (perhaps compiled-in). If the program -+# supports xterm's control sequence, it can be programmed using initc. -+xterm+88color|xterm 88-color feature, -+ colors#88, pairs#7744, use=xterm+256color, - --# Use this for cygwin32 (tested with beta 19.1) --# underline is colored bright magenta --# shifted kf1-kf12 are kf11-kf22 --cygwinB19|ansi emulation for cygwin32, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, -- kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D, -- kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, rmam@, smam@, -- use=ansi.sys, -+# These variants of XFree86 3.9.16 xterm are built as a configure option. -+xterm-256color|xterm with 256 colors, -+ use=xterm+256color, use=xterm-new, -+xterm-88color|xterm with 88 colors, -+ use=xterm+88color, use=xterm-256color, - --# Use this for cygwin (tested with version 1.1.0). --# I've combined pcansi and linux. Some values of course were different and --# I've indicated which of these were and which I used. --# Cheers, earnie_boyd@yahoo.com --# several changes based on running with tack and comparing with older entry -TD --# more changes from csw: --# add cbt [backtab] --# remove eo [erase overstrike with blank] --# change clear was \E[H\E[J now \E[2J (faster?) --# remove cols --# remove lines --# remove ncv#3 [colors collide with highlights, bitmask] not applicable --# to MSDOS box? --# add cub [cursor back param] --# add cuf [cursor forward param] --# add cuu [cursor up param] --# add cud [cursor down param] --# add hs [has status line] --# add fsl [return from status line] --# add tsl [go to status line] --# add smacs [Start alt charset] (not sure if this works) --# add rmacs [End alt charset] (ditto) --# add smcup [enter_ca_mode] (save console; thanks Corinna) --# add rmcup [exit_ca_mode] (restore console; thanks Corinna) --# add kb2 [center of keypad] --# add u8 [user string 8] \E[?6c --# add el [clear to end of line] \E[K --# Notes: --# cnorm [make cursor normal] not implemented --# flash [flash] not implemented --# blink [blink] not implemented very usefully in cygwin? \E[5m --# dim [dim] not implemented very usefully in cygwin? \E[2m --# cub1 [cursor back 1] typically \E[D, but ^H is faster? --# kNXT [shifted next key] not implemented --# kPRV [shifted prev key] not implemented --# khome [home key] really is \E[1~ NOT \E[H --# tbc [clear tab stops] not implemented --# xenl [newline ignnored after 80 cols] messes up last line? Ehud Karni --# smpch [Start PC charset] is \E[11m, same as smacs --# rmpch [End PC charset] is \E[10m, same as rmacs --# mir [move in insert mode] fails in tack? --# bce [back color erase] causes problems with change background color? --# cvvis [make cursor very visible] causes a stackdump when testing with --# testcurs using the output option? \E[?25h\E[?8c --# civis [make cursor invisible] causes everything to stackdump? \E[?25l\E[?1c --# ech [erase characters param] broken \E[%p1%dX --# kcbt [back-tab key] not implemented in cygwin? \E[Z -+# These two are used to demonstrate the any-event mouse support, i.e., by -+# using an extended name "XM" which tells ncurses to put the terminal into -+# a special mode when initializing the xterm mouse. -+xterm+sm+1002|testing xterm-mouse, -+ XM=\E[?1002%?%p1%{1}%=%th%el%;, use=xterm-new, -+xterm+sm+1003|testing xterm-mouse, -+ XM=\E[?1003%?%p1%{1}%=%th%el%;, use=xterm-new, -+ -+xterm-1002|testing xterm-mouse, -+ use=xterm+sm+1002, use=xterm-new, -+xterm-1003|testing xterm-mouse, -+ use=xterm+sm+1003, use=xterm-new, -+ -+# This chunk is based on suggestions by Ailin Nemui and Nicholas Marriott, who -+# asked for some of xterm's advanced features to be added to its terminfo -+# entry. It defines extended capabilities not found in standard terminfo or -+# termcap. These are useful in tmux, for instance, hence the name. -+# -+# One caveat in adding extended capabilities in ncurses is that if the names -+# are longer than two characters, then they will not be visible through the -+# termcap interface. -+# -+# Ms modifies the selection/clipboard. Its parameters are -+# p1 = the storage unit (clipboard, selection or cut buffer) -+# p2 = the base64-encoded clipboard content. -+# -+# Ss is used to set the cursor style as described by the DECSCUSR -+# function to a block or underline. -+# Se resets the cursor style to the terminal power-on default. -+# -+# Cs and Cr set and reset the cursor colour. -+xterm+tmux|advanced xterm features used in tmux, -+ Cr=\E]112\007, Cs=\E]12;%p1%s\007, -+ Ms=\E]52;%p1%s;%p2%s\007, Se=\E[2 q, Ss=\E[%p1%d q, -+ -+# This is another variant, for XFree86 4.0 xterm (T.Dickey) -+# This is an 8-bit version of xterm, which emulates DEC vt220 with ANSI color. -+# To use it, your decTerminalID resource must be set to 200 or above. - # --# 2005/11/12 -TD --# Remove cbt since it does not work in current cygwin --# Add 'mir' and 'in' flags based on tack --cygwin|ansi emulation for Cygwin, -- am, hs, mir, msgr, xon, -- colors#8, it#8, pairs#64, -- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -- bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, cub=\E[%p1%dD, -- cub1=^H, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -- cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, fsl=^G, home=\E[H, -- hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, kb2=\E[G, -- kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, -- kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D, -- kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kspd=^Z, -- nel=^M^J, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, -- rmacs=\E[10m, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, -- rmpch=\E[10m, rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, -- sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, -- sgr0=\E[0;10m, smacs=\E[11m, smcup=\E7\E[?47h, -- smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m, tsl=\E];, -- vpa=\E[%i%p1%dd, use=vt102+enq, -+# HTS \E H \210 -+# RI \E M \215 -+# SS3 \E O \217 -+# CSI \E [ \233 -+# -+xterm-8bit|xterm terminal emulator 8-bit controls (X Window System), -+ OTbs, am, bce, km, mc5i, mir, msgr, npc, xenl, AX, -+ colors#8, cols#80, it#8, lines#24, pairs#64, -+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\2335m, bold=\2331m, cbt=\233Z, -+ civis=\233?25l, clear=\233H\2332J, -+ cnorm=\233?25l\233?25h, cr=^M, csr=\233%i%p1%d;%p2%dr, -+ cub=\233%p1%dD, cub1=^H, cud=\233%p1%dB, cud1=^J, -+ cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH, -+ cuu=\233%p1%dA, cuu1=\233A, cvvis=\233?12;25h, -+ dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M, -+ ech=\233%p1%dX, ed=\233J, el=\233K, el1=\2331K, -+ flash=\233?5h$<100/>\233?5l, home=\233H, -+ hpa=\233%i%p1%dG, ht=^I, hts=\210, ich=\233%p1%d@, -+ il=\233%p1%dL, il1=\233L, ind=^J, invis=\2338m, -+ is2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8, -+ ka1=\217w, ka3=\217u, kb2=\217y, kbeg=\217E, kc1=\217q, -+ kc3=\217s, kcbt=\233Z, kcub1=\217D, kcud1=\217B, -+ kcuf1=\217C, kcuu1=\217A, kdch1=\2333~, kend=\2334~, -+ kent=\217M, kf1=\23311~, kf10=\23321~, kf11=\23323~, -+ kf12=\23324~, kf13=\23325~, kf14=\23326~, kf15=\23328~, -+ kf16=\23329~, kf17=\23331~, kf18=\23332~, kf19=\23333~, -+ kf2=\23312~, kf20=\23334~, kf3=\23313~, kf4=\23314~, -+ kf5=\23315~, kf6=\23317~, kf7=\23318~, kf8=\23319~, -+ kf9=\23320~, khome=\2331~, kich1=\2332~, kmous=\233M, -+ knp=\2336~, kpp=\2335~, mc0=\233i, mc4=\2334i, mc5=\2335i, -+ meml=\El, memu=\Em, op=\23339;49m, rc=\E8, rev=\2337m, -+ ri=\215, rmacs=\E(B, rmam=\233?7l, rmcup=\233?1049l, -+ rmir=\2334l, rmkx=\233?1l\E>, rmso=\23327m, rmul=\23324m, -+ rs1=\Ec, -+ rs2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8, -+ sc=\E7, setab=\2334%p1%dm, setaf=\2333%p1%dm, -+ setb=\2334%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -+ setf=\2333%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -+ sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;, -+ sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h, -+ smcup=\233?1049h, smir=\2334h, smkx=\233?1h\E=, -+ smso=\2337m, smul=\2334m, tbc=\2333g, u6=\233[%i%d;%dR, -+ u7=\E[6n, u8=\233[?1;2c, u9=\E[c, vpa=\233%i%p1%dd, -+ use=xterm+kbs, - --# I've supplied this so that you can help test new values and add other --# features. Cheers, earnie_boyd@yahoo.com. -+xterm-hp|xterm with hpterm function keys, -+ kclr=\EJ, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -+ kdch1=\EP, kend=\EF, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, -+ kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, kich1=\EQ, -+ knp=\ES, kpp=\ET, use=xterm-basic, -+ -+xterm-sco|xterm with SCO function keys, -+ kbeg=\E[E, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W, -+ kf12=\E[X, kf13=\E[Y, kf14=\E[Z, kf15=\E[a, kf16=\E[b, -+ kf17=\E[c, kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f, -+ kf21=\E[g, kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k, -+ kf26=\E[l, kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O, -+ kf30=\E[p, kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t, -+ kf35=\E[u, kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y, -+ kf4=\E[P, kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\, -+ kf44=\E[], kf45=\E[\^, kf46=\E[_, kf47=\E[`, kf48=\E[{, -+ kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, kf9=\E[U, khome=\E[H, -+ kich1=\E[L, kmous=\E[>M, knp=\E[G, kpp=\E[I, -+ use=xterm-basic, -+ -+# The xterm-new description has all of the features, but is not completely -+# compatible with vt220. If you are using a Sun or PC keyboard, set the -+# sunKeyboard resource to true: -+# + maps the editing keypad -+# + interprets control-function-key as a second array of keys, so a -+# 12-fkey keyboard can support vt220's 20-fkeys. -+# + maps numeric keypad "+" to ",". -+# + uses DEC-style control sequences for the application keypad. - # --# Some features are from pcansi. The op value is from linux. Function-keys --# are from linux. These have been tested not to cause problems. xenl was in --# this list, but DOES cause problems so it has been removed --cygwinDBG|Debug Version for Cygwin, -- am, eo, mir, msgr, xon, -- colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64, -- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -- cnorm=\E[?25h, cr=^M, cub=\E[%p1%dD, cub1=\E[D, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, -- dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -- flash=\E[?5h\E[?5l$<200/>, home=\E[H, hpa=\E[%i%p1%dG, -- ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, -- il1=\E[L, ind=^J, invis=\E[8m, kNXT=\E[6$, kPRV=\E[5$, -- kb2=\E[G, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, -- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -- kf18=\E[32~, kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, -- kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, -- knp=\E[6~, kpp=\E[5~, kspd=^Z, nel=^M^J, op=\E[39;49m, -- rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E[10m, rmir=\E[4l, -- rmso=\E[m, rmul=\E[m, rs1=\Ec\E]R, sc=\E7, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m, -- sgr0=\E[0;10m, smacs=\E[11m, smir=\E[4h, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt102+enq, -+xterm-vt220|xterm emulating vt220, -+ kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kend=\E[4~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, -+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -+ use=xterm+app, use=xterm+edit, use=xterm-basic, -+ use=vt220+keypad, - --# Key definitions: --# The encodings for unshifted arrow keys, F1-F12, Home, Insert, etc. match the --# encodings used by other x86 environments. All others are invented for DJGPP. --# Oddly enough, while several combinations of modifiers are tabulated, there is --# none for shifted cursor keys. -+xterm-vt52|xterm emulating dec vt52, -+ cols#80, it#8, lines#24, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, clear=\EH\EJ, cr=^M, cub1=\ED, cud1=\EB, cuf1=\EC, -+ cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, ed=\EJ, el=\EK, -+ home=\EH, ht=^I, ind=^J, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -+ kcuu1=\EA, nel=^M^J, ri=\EI, rmacs=\EG, smacs=\EF, -+ use=xterm+kbs, -+ -+xterm-noapp|xterm with cursor keys in normal mode, -+ rmcup@, rmkx=\E>, smcup@, smkx=\E=, use=xterm+noapp, -+ use=xterm, -+ -+xterm-24|vs100|xterms|xterm terminal emulator (X Window System), -+ lines#24, use=xterm-old, -+ -+# This is xterm for ncurses. -+xterm|xterm terminal emulator (X Window System), -+ use=xterm-new, -+ -+# This entry assumes that xterm's handling of VT100 SI/SO is disabled by -+# setting the vt100Graphics resource to false. -+xterm-utf8|xterm with no VT100 line-drawing in UTF-8 mode, -+ U8#1, use=xterm, -+ -+# These building-blocks allow access to the X titlebar and icon name as a -+# status line. There are a few problems in using them in entries: - # --# F1 \E[[A --# F2 \E[[B --# F3 \E[[C --# F4 \E[[D --# F5 \E[[E --# F6 \E[17~ --# F7 \E[18~ --# F8 \E[19~ --# F9 \E[20~ --# F10 \E[21~ --# F11 \E[23~ --# F12 \E[24~ -+# a) tsl should have a parameter to denote the column on which to transfer to -+# the status line. -+# b) the "0" code for xterm updates both icon-title and window title. Some -+# window managers such as twm (and possibly window managers descended from -+# it such as tvtwm, ctwm, and vtwm) track windows by icon-name. Thus, you -+# don't want to mess with icon-name when using those window managers. - # --# Delete \E[3~ --# Down Arrow \E[B --# End \E[4~ --# Home \E[1~ --# Insert \E[2~ --# Left Arrow \E[D --# Page Down \E[6~ --# Page Up \E[5~ --# Right Arrow \E[C --# Up Arrow \E[A -+# The extension "TS" is preferable, because it does not accept a parameter. -+# However, if you are using a non-extended terminfo, "TS" is not visible. -+xterm+sl|access X title line and icon name, -+ hs, -+ dsl=\E]0;\007, fsl=^G, tsl=\E]0;, TS=\E]0;, -+xterm+sl-twm|access X title line (pacify twm-descended window managers), -+ hs, -+ dsl=\E]2;\007, fsl=^G, tsl=\E]2;, TS=\E]2;, -+ -+# In contrast, this block can be used for a DEC vt320 and up. There are two -+# controls used. - # --# Shift-F1 \E[25~ --# Shift-F2 \E[26~ --# Shift-F3 \E[27~ --# Shift-F4 \E[28~ --# Shift-F5 \E[29~ --# Shift-F6 \E[30~ --# Shift-F7 \E[31~ --# Shift-F8 \E[32~ --# Shift-F9 \E[33~ --# Shift-F10 \E[34~ --# Shift-F11 \E[35~ --# Shift-F12 \E[36~ -+# DECSASD (select active status display) -+# \E[0$} Main display -+# \E[1$} Status line -+# -+# DECSSDT (select status line type) -+# \E[0$~ No status line -+# \E[1$~ Indicator status line -+# \E[2$~ Host-writable status line -+# -+# The building block assumes that the terminal always shows something at the -+# status line (either the indicator, or status line). That is because if no -+# status line is used, then the terminal makes that line part of the user -+# window, changing its size without notice. -+# -+# Because there is no "esl" (enable status line) capability, the "tsl" -+# capability ensures that the status line is host-writable. A DEC terminal -+# will clear the status line when changing from indicator to host-writable -+# mode. -+# -+# Once on the status line, the row part of cursor addressing is ignored. Since -+# tsl expects a parameter (to specify the column), the shortest addressing that -+# can be used for this purpose is HPA, e.g., \E[5d to go to column 5. - # --# Ctrl-F1 \E[47~ --# Ctrl-F2 \E[48~ --# Ctrl-F3 \E[49~ --# Ctrl-F4 \E[50~ --# Ctrl-F5 \E[51~ --# Ctrl-F6 \E[52~ --# Ctrl-F7 \E[53~ --# Ctrl-F8 \E[54~ --# Ctrl-F9 \E[55~ --# Ctrl-F10 \E[56~ --# Ctrl-F11 \E[57~ --# Ctrl-F12 \E[58~ -+dec+sl|DEC VTxx status line, -+ eslok, hs, -+ dsl=\E[1$~, fsl=\E[0$}, tsl=\E[2$~\E[1$}\E[%i%p1%d`, -+ - # --# Ctrl-Delete \E[43~ --# Ctrl-Down Arrow \E[38~ --# Ctrl-End \E[44~ --# Ctrl-Home \E[41~ --# Ctrl-Insert \E[42~ --# Ctrl-Left Arrow \E[39~ --# Ctrl-Page Down \E[46~ --# Ctrl-Page Up \E[45~ --# Ctrl-Right Arrow \E[40~ --# Ctrl-Up Arrow \E[37~ -+# The following xterm variants don't depend on your base version - # --# Alt-F1 \E[59~ --# Alt-F2 \E[60~ --# Alt-F3 \E[61~ --# Alt-F4 \E[62~ --# Alt-F5 \E[63~ --# Alt-F6 \E[64~ --# Alt-F7 \E[65~ --# Alt-F8 \E[66~ --# Alt-F9 \E[67~ --# Alt-F10 \E[68~ --# Alt-F11 \E[79~ --# Alt-F12 \E[80~ --# --# Alt-Delete \E[65~ --# Alt-Down Arrow \E[60~ --# Alt-End \E[66~ --# Alt-Home \E[41~ --# Alt-Insert \E[64~ --# Alt-Left Arrow \E[61~ --# Alt-Page Down \E[68~ --# Alt-Page Up \E[67~ --# Alt-Right Arrow \E[62~ --# Alt-Up Arrow \E[59~ --# --# Also: --# Alt-A \E[82~ --# Alt-B \E[82~ --# Alt-C \E[83~ --# Alt-D \E[84~ --# Alt-E \E[85~ --# Alt-F \E[86~ --# Alt-G \E[87~ --# Alt-H \E[88~ --# Alt-I \E[89~ --# Alt-J \E[90~ --# Alt-K \E[91~ --# Alt-L \E[92~ --# Alt-M \E[93~ --# Alt-N \E[94~ --# Alt-O \E[95~ --# Alt-P \E[96~ --# Alt-Q \E[97~ --# Alt-R \E[98~ --# Alt-S \E[99~ --# Alt-T \E[100~ --# Alt-U \E[101~ --# Alt-V \E[102~ --# Alt-W \E[103~ --# Alt-X \E[104~ --# Alt-Y \E[105~ --# Alt-Z \E[106~ --djgpp|ansi emulation for DJGPP alpha, -- am, bce, msgr, xhp, xon, xt, -- colors#8, it#8, pairs#64, -- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[1v, -- clear=\E[H\E[J, cnorm=\E[v, cr=^M, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[2v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, -- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, -- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -- indn=\E[%p1%dS, invis=\E[8m, kbs=^H, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, -- kend=\E[4~, kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, -- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=^M^J, -- op=\E[37;40m, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%e;25%;%?%p6%t;1%;%?%p7%t;8%;m, -- sgr0=\E[m, smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, -- --djgpp203|Entry for DJGPP 2.03, -- OTbs, am, -- cols#80, it#8, lines#25, -- bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, -- kcud1=^J, nel=^M^J, -+# xterm with bold instead of underline -+xterm-bold|xterm terminal emulator (X11R6 Window System) standout w/bold, -+ sgr=%?%p9%t\016%e\017%;B\E[0%?%p6%t;1%;%?%p2%t;1%;%?%p1%p3%|%t;7%;m, -+ smso=\E[7m, smul=\E[1m, use=xterm-old, - --djgpp204|Entry for DJGPP 2.04, -- OTbs, am, AX, -- colors#8, cols#80, it#8, lines#25, ncv#3, pairs#64, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[1v, -- clear=\E[H\E[2J, cnorm=\E[v, cr=^M, cub=\E[%p1%dD, -- cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -- cuu1=\E[A, cvvis=\E[2v, dch=\E[%p1%dP, dch1=\E[P, -- dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -- home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, -- il1=\E[L, ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, kbs=^H, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[3~, kf0=\E[21~, kf1=\E[[A, kf10=\E[21~, kf2=\E[[B, -- kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, -- kll=\E[4~, knp=\E[6~, kpp=\E[5~, nel=^M^J, rev=\E[7m, -- ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, setab=\E[4%p1%dm, -- setaf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, smul=\E[4m, -+# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file -+xterm-nic|xterm with ich/ich1 suppressed for non-curses programs, -+ ich@, ich1@, use=xterm, -+# From: Mark Sheppard <kimble@mistral.co.uk>, 4 May 1996 -+xterm1|xterm terminal emulator ignoring the alternate screen buffer, -+ rmcup@, smcup@, use=xterm, - --# This is tested using U/Win's telnet. Scrolling is omitted because it is --# buggy. Another odd bug appears when displaying "~" in alternate character --# set (the emulator spits out error messages). Compare with att6386 -TD --uwin|U/Win 3.2 console, -- am, eo, in, msgr, xenl, xon, -- colors#8, it#8, ncv#58, pairs#64, -- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, cub1=^H, cud1=^J, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, ech=\E[%p1%dX, -- ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH, -- ich=\E[%p1%d@, ich1=\E[@, kbs=^H, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[Y, kf1=\EOP, -- kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf2=\EOQ, kf3=\EOR, -- kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, kf9=\EOX, -- khome=\E[H, kich1=\E[@, nel=^M^J, op=\E[39;49m, rc=\E8, -- rev=\E[7m, rmacs=\E[10m, rmir=\E[4l, rmpch=\E[10m, -- rmso=\E[27m, rmul=\E[m, rs1=\Ec\E]R, sc=\E7, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0;10m, -- smacs=\E[11m, smir=\E[4h, smpch=\E[11m, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, -+#### KTERM -+# (kterm: this had extension capabilities ":KJ:TY=ascii:" -- esr) -+# (kterm should not invoke DEC Graphics as the alternate character set -+# -- Kenji Rikitake) -+# (proper setting of enacs, smacs, rmacs makes kterm to use DEC Graphics -+# -- MATSUMOTO Shoji) -+# kterm implements acsc via built-in table of X Drawable's -+kterm|kterm kanji terminal emulator (X window system), -+ eslok, hs, XT, -+ ncv@, -+ acsc=``aajjkkllmmnnooppqqrrssttuuvvwwxx~~, -+ csr=\E[%i%p1%d;%p2%dr, dsl=\E[?H, enacs=, fsl=\E[?F, -+ kmous=\E[M, rc=\E8, rmacs=\E(B, rmam=\E[?7l, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;, -+ sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, -+ tsl=\E[?E\E[?%i%p1%dT, use=xterm-r6, use=ecma+color, -+kterm-color|kterm-co|kterm with ANSI colors, -+ ncv@, use=kterm, use=ecma+color, - --# This entry fits the Windows NT console when the _POSIX_TERM environment --# variable is set to 'on'. While the Windows NT POSIX console is seldom used, --# the Telnet client supplied with both the Windows for WorkGroup 3.11 TCP/IP --# stack and the Win32 (i.e., Windows 95 and Windows NT 3.1 or later) operating --# systems is not, and (surprise!) they match very well. --# --# See: MS Knowledge Base item Q108581, dated 13-MAY-1997, titled "Setting Up --# VI POSIX Editor for Windows NT 3.1". True to Microsoft form, not only --# are the installation instructions a pile of mind-numbing bureaucratese, --# but the termcap entry is actually broken and unusable as given; the :do: --# capability is misspelled "d". --# --# To use this, you need to a bunch of environment variables: --# --# SET _POSIX_TERM=on --# SET TERM=ansi --# SET TERMCAP=location of termcap file in POSIX file format --# which is case-sensitive. --# e.g. SET TERMCAP=//D/RESKIT35/posix/termcap --# SET TMP=//C/TEMP --# --# Important note: setting the TMP environment variable in POSIX style renders --# it incompatible with a lot of other applications, including Visual C++. So --# you should have a separate command window just for vi. All the other --# variables may be permanently set in the Control Panel\System applet. --# --# You can find out more about the restrictions of this facility at --# <http://www.nentug.org/unix-to-nt/ntposix.htm>. --# --# From: Federico Bianchi <bianchi@magna.cisid.unipi.it>, 15 Jan 1997 --ansi-nt|psx_ansi|Microsoft Windows NT console POSIX ANSI mode, -- am, bw, msgr, -- cols#80, it#8, lines#25, -- bel=^G, clear=\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, -- home=\E[H, ht=^I, ind=\E[S, kbs=^H, kcub1=\E[D, kcud1=\E[V, -- kcuf1=\E[C, kcuu1=\E[A, nel=\r\E[S, rc=\E[u, rev=\E[7m, -- ri=\E[T, rmso=\E[m, sc=\E[s, sgr0=\E[0m, smso=\E[7m, --# From: jew@venus.sunquest.com --# Date: 19 Feb 93 23:41:07 GMT --# Here's a combination of ansi and vt100 termcap --# entries that works nearly perfectly for me --# (Gateway 2000 Handbook and Microsoft Works 3.0): --pcmw|PC running Microsoft Works, -- am, xenl, -- cols#80, it#8, lines#24, vt#3, -- bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>, -- clear=\E[;H\E[2J$<50/>, cr=^M, cub1=^H, cud1=^J, -- cuf1=\E[C$<2/>, cup=\E[%i%p1%d;%p2%dH$<5/>, -- cuu1=\E[A$<2/>, ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, -- ht=^I, hts=\EH$<2/>, ind=\ED$<5/>, is2=\E[1;24r\E[24;1H, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=\r\ED$<5/>, -- rc=\E8, rev=\E[7m$<2/>, rf=/usr/share/lib/tabset/vt100, -- ri=\EM$<5/>, rmso=\E[m$<2/>, rmul=\E[m$<2/>, -+#### Other XTERM -+# These (xtermc and xtermm) are distributed with Solaris. They refer to a -+# variant of xterm which is apparently no longer supported, but are interesting -+# because they illustrate SVr4 curses mouse controls - T.Dickey -+xtermm|xterm terminal emulator (monocrome), -+ OTbs, am, km, mir, msgr, xenl, -+ btns#3, cols#80, it#8, lines#24, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink@, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, getm=\E[%p1%dY, -+ home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, -+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[Y, kf0=\EOy, -+ kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf5=\EOT, kf6=\EOU, -+ kf7=\EOV, kf8=\EOW, kf9=\EOX, khome=\E[H, kmous=\E[^_, -+ knp=\E[U, kpp=\E[V, rc=\E8, reqmp=\E[492Z, rev=\E[7m, ri=\EM, -+ rmacs=^O, rmcup=\E@0\E[?4r, rmso=\E[m, -+ rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, - rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr0=\E[m$<2/>, smso=\E[7m$<2/>, smul=\E[4m$<2/>, -- tbc=\E[3g$<2/>, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smcup=\E@0\E[?4s\E[?4h\E@1, -+ smso=\E[7m, tbc=\E[3g, use=vt100+fnkeys, - --# From: Federico Bianchi --# This is the entry for the OpenNT terminal. --# The ntconsole name is for backward compatability. --# This is for OpenNT 2.0 and later. --# Later OpenNT was renamed to Interix. --# --# Presently it is distributed by Microsoft as Services For Unix (SFU). --# The 3.5 beta contains ncurses 4.2 (that is header files and executables, --# the documentation dates from 1.9.9e) -TD -+xtermc|xterm terminal emulator (color), -+ colors#8, ncv#7, pairs#64, -+ op=\E[100m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -+ setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -+ use=xtermm, - --interix|opennt|opennt-25|ntconsole|ntconsole-25|OpenNT-term compatible with color, -- am, bw, msgr, -- colors#8, cols#80, lines#25, ncv#3, pairs#64, -- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -- bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[2J, cub=\E[%p1%dD, -- cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -- cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, -- home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -- indn=\E[%p1%dS, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[M, kend=\E[U, kf0=\EFA, -- kf1=\EF1, kf10=\EFA, kf11=\EFB, kf12=\EFC, kf13=\EFD, -- kf14=\EFE, kf15=\EFF, kf16=\EFG, kf17=\EFH, kf18=\EFI, -- kf19=\EFJ, kf2=\EF2, kf20=\EFK, kf21=\EFL, kf22=\EFM, -- kf23=\EFN, kf24=\EFO, kf25=\EFP, kf26=\EFQ, kf27=\EFR, -- kf28=\EFS, kf29=\EFT, kf3=\EF3, kf30=\EFU, kf31=\EFV, -- kf32=\EFW, kf33=\EFX, kf34=\EFY, kf35=\EFZ, kf36=\EFa, -- kf37=\EFb, kf38=\EFc, kf39=\EFd, kf4=\EF4, kf40=\EFe, -- kf41=\EFf, kf42=\EFg, kf43=\EFh, kf44=\EFi, kf45=\EFj, -- kf46=\EFk, kf47=\EFm, kf48=\EFn, kf49=\EFo, kf5=\EF5, -- kf50=\EFp, kf51=\EFq, kf52=\EFr, kf53=\EFs, kf54=\EFt, -- kf55=\EFu, kf56=\EFv, kf57=\EFw, kf58=\EFx, kf59=\EFy, -- kf6=\EF6, kf60=\EFz, kf61=\EF+, kf62=\EF-, -- kf63=\EF\014 kf64=\EF$, kf7=\EF7, kf8=\EF8, kf9=\EF9, -- kich1=\E[L, kll=\E[U, knp=\E[T, kpp=\E[S, ll=\E[U, nel=^M^J, -- op=\E[m, rc=\E[u, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, -- rmcup=\E[2b\E[u\r\E[K, rmso=\E[m, rmul=\E[m, rs1=\Ec, -- sc=\E[s, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- setb=\E[%p1%{40}%+%dm, setf=\E[%p1%{30}%+%dm, -- sgr0=\E[0m, smcup=\E[s\E[1b, smso=\E[7m, smul=\E[4m, -+# From: David J. MacKenzie <djm@va.pubnix.com> 20 Apr 1995 -+# Here's a termcap entry I've been using for xterm_color, which comes -+# with BSD/OS 2.0, and the X11R6 contrib tape too I think. Besides the -+# color stuff, I also have a status line defined as the window manager -+# title bar. [I have translated it to terminfo -- ESR] -+xterm-pcolor|xterm with color used for highlights and status line, -+ wsl#40, -+ bold=\E[1;43m, rev=\E[7;34m, -+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1;43%;%?%p2%t;4;42%;%?%p1%t;7;31%;%?%p3%t;7;34%;%?%p4%t;5%;%?%p7%t;8%;m, -+ smso=\E[7;31m, smul=\E[4;42m, use=xterm+sl, use=xterm-r6, - --opennt-35|ntconsole-35|OpenNT-term35 compatible with color, -- lines#35, use=opennt, -+# This describes the capabilities of color_xterm, an xterm variant from -+# before ECMA-64 color support was folded into the main-line xterm release. -+# This entry is straight from color_xterm's maintainer. -+# From: Jacob Mandelson <jlm@ugcs.caltech.edu>, 09 Nov 1996 -+# The README's with the distribution also say that it supports SGR 21, 24, 25 -+# and 27, but they are not present in the terminfo or termcap. -+color_xterm|cx|cx100|color_xterm color terminal emulator for X, -+ OTbs, am, km, mir, msgr, xenl, XT, -+ cols#80, it#8, lines#65, ncv@, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, el1=\E[1K, enacs=\E(B\E)0, home=\E[H, ht=^I, -+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ is1=\E[r\E[m\E[?7h\E[?4;6l\E[4l, kbs=^H, kcub1=\EOD, -+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[8~, kf1=\E[11~, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\E[12~, -+ kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, khome=\E[7~, kich1=\E[2~, -+ kmous=\E[M, knp=\E[6~, kpp=\E[5~, rc=\E8, rev=\E[7m, ri=\EM, -+ rmacs=^O, rmam=\E[?7l, rmcup=\E>\E[?41;1r, rmir=\E[4l, -+ rmso=\E[27m, rmul=\E[24m, -+ rs1=\E(B\017\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E<, -+ sc=\E7, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[0m\017, smacs=^N, smam=\E[?7h, -+ smcup=\E[?1;41s\E[?1;41h\E=, smir=\E[4h, smso=\E[7m, -+ smul=\E[4m, use=ecma+color, use=vt220+keypad, - --opennt-50|ntconsole-50|OpenNT-term50 compatible with color, -- lines#50, use=opennt, -+# The 'nxterm' distributed with Redhat Linux 5.2 is a slight rehack of -+# xterm-sb_right-ansi-3d, which implements ANSI colors, but does not support -+# SGR 39 or 49. SGR 0 does reset colors (along with everything else). This -+# description is "compatible" with color_xterm, rxvt and XFree86 xterm, except -+# that each of those implements the home, end, delete keys differently. -+# -+# Redhat Linux 6.x distributes XFree86 xterm as "nxterm", which uses bce -+# colors; note that this is not compatible with the 5.2 version. -+# csw (2002-05-15): make xterm-color primary instead of nxterm, to -+# match XFree86's xterm.terminfo usage and prevent circular links -+xterm-color|nxterm|generic color xterm, -+ ncv@, -+ op=\E[m, use=xterm-r6, use=klone+color, - --opennt-60|ntconsole-60|OpenNT-term60 compatible with color, -- lines#60, use=opennt, -+# This entry describes an xterm with Sun-style function keys enabled -+# via the X resource setting "xterm*sunFunctionKeys:true" -+# To understand <kf11>/<kf12> note that L1,L2 and F11,F12 are the same. -+# The <kf13>...<kf20> keys are L3-L10. We don't set <kf16=\E[197z> -+# because we want it to be seen as <kcpy>. -+# The <kf31>...<kf45> keys are R1-R15. We treat some of these in accordance -+# with their Sun keyboard labels instead. -+# From: Simon J. Gerraty <sjg@zen.void.oz.au> 10 Jan 1996 -+xterm-sun|xterm with sunFunctionKeys true, -+ kb2=\E[218z, kcpy=\E[197z, kcub1=\EOD, kcud1=\EOB, -+ kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3z, kend=\E[220z, -+ kent=\EOM, kf1=\E[224z, kf10=\E[233z, kf11=\E[192z, -+ kf12=\E[193z, kf13=\E[194z, kf14=\E[195z, kf15=\E[196z, -+ kf17=\E[198z, kf18=\E[199z, kf19=\E[200z, kf2=\E[225z, -+ kf20=\E[201z, kf3=\E[226z, kf31=\E[208z, kf32=\E[209z, -+ kf33=\E[210z, kf34=\E[211z, kf35=\E[212z, kf36=\E[213z, -+ kf38=\E[215z, kf4=\E[227z, kf40=\E[217z, kf42=\E[219z, -+ kf44=\E[221z, kf45=\E[222z, kf46=\E[234z, kf47=\E[235z, -+ kf5=\E[228z, kf6=\E[229z, kf7=\E[230z, kf8=\E[231z, -+ kf9=\E[232z, kfnd=\E[200z, khlp=\E[196z, khome=\E[214z, -+ kich1=\E[2z, knp=\E[222z, kpp=\E[216z, kund=\E[195z, -+ use=xterm-basic, -+xterms-sun|small (80x24) xterm with sunFunctionKeys true, -+ cols#80, lines#24, use=xterm-sun, - --opennt-100|ntconsole-100|OpenNT-term100 compatible with color, -- lines#100, use=opennt, -+#### GNOME (VTE) -+# this describes the alpha-version of Gnome terminal shipped with Redhat 6.0 -+gnome-rh62|Gnome terminal, -+ bce, -+ kdch1=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -+ use=xterm-color, - --# OpenNT wide terminals --opennt-w|opennt-25-w|ntconsole-w|ntconsole-25-w|OpenNT-term-w compat with color, -- cols#125, use=opennt, -+# GNOME Terminal 1.4.0.4 (Redhat 7.2) -+# -+# This implements a subset of vt102 with a random selection of features from -+# other terminals such as color and function-keys. -+# -+# shift-f1 to shift-f10 are f11 to f20 -+# -+# NumLock changes the application keypad to approximate vt100 keypad, except -+# that there is no escape sequence matching comma (,). -+# -+# Other defects observed: -+# vt100 LNM mode is not implemented. -+# vt100 80/132 column mode is not implemented. -+# vt100 DECALN is not implemented. -+# vt100 DECSCNM mode is not implemented, so flash does not work. -+# vt100 TBC (tab reset) is not implemented. -+# xterm alternate screen controls do not restore cursor position properly -+# it hangs in tack after running function-keys test. -+gnome-rh72|GNOME Terminal, -+ bce, km@, -+ civis=\E[?25l, cnorm=\E[?25h, kdch1=\E[3~, kf1=\EOP, -+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, rmam=\E[?7l, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[0m\017, smam=\E[?7h, tbc@, use=xterm-color, - --opennt-35-w|ntconsole-35-w|OpenNT-term35-w compatible with color, -- lines#35, use=opennt-w, -+# GNOME Terminal 2.0.1 (Redhat 8.0) -+# -+# Documentation now claims it implements vt220 (which is demonstrably false). -+# However, it does implement ECH, which is a vt220 feature. And there are -+# workable vt100 LNM, DECALN, DECSNM modes, making it possible to display -+# more of its bugs using vttest. -+# -+# However, note that bce and msgr are broken in this release. Tabs (tbc and -+# hts) are broken as well. Sometimes flash (as in xterm-new) works. -+# -+# kf1 and kf10 are not tested since they're assigned (hardcoded?) to menu -+# operations. Shift-tab generates a distinct sequence so it can be argued -+# that it implements kcbt. -+gnome-rh80|GNOME Terminal, -+ bce@, msgr@, -+ ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, kbs=\177, -+ kcbt=\E^I, op=\E[39;49m, use=gnome-rh72, - --opennt-50-w|ntconsole-50-w|OpenNT-term50-w compatible with color, -- lines#50, use=opennt-w, -+# GNOME Terminal 2.2.1 (Redhat 9.0) -+# -+# bce and msgr are repaired. -+gnome-rh90|GNOME Terminal, -+ bce, msgr, XT, -+ hpa=\E[%i%p1%dG, kDC=\E[3;2~, kLFT=\EO2D, kRIT=\EO2C, -+ kb2=\E[E, kcbt=\E[Z, kend=\EOF, khome=\EOH, tbc=\E[3g, -+ vpa=\E[%i%p1%dd, use=xterm+pcf0, use=xterm+pcfkeys, -+ use=gnome-rh80, - --opennt-60-w|ntconsole-60-w|OpenNT-term60-w compatible with color, -- lines#60, use=opennt-w, -+# GNOME Terminal 2.14.2 (Fedora Core 5) -+# Ed Catmur notes that gnome-terminal has recognized soft-reset since May 2002. -+gnome-fc5|GNOME Terminal, -+ rs1=\Ec, -+ rs2=\E7\E[r\E8\E[m\E[?7h\E[!p\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, -+ use=ansi+enq, use=xterm+pcc0, use=gnome-rh90, - --opennt-w-vt|opennt-25-w-vt|ntconsole-w-vt|ntconsole-25-w-vt|OpenNT-term-w-vt compat with color, -- cols#132, use=opennt, -+# GNOME Terminal 2.18.1 (2007 snapshot) -+# -+# For any "recent" version of gnome-terminal, it is futile to attempt to -+# support modifiers on cursor- and keypad keys because the program usually -+# is hardcoded to set $TERM to "xterm", and on startup, it builds a subset -+# of the keys (which more/less correspond to the termcap values), and will -+# interpret those according to the $TERM value, but others not in the -+# terminfo according to some constantly changing set of hacker guidelines -TD -+vte-2007|VTE in GNOME Terminal snapshot 2.18.1, -+ use=xterm+pcc2, use=gnome-fc5, -+gnome-2007|GNOME Terminal snapshot 2.18.1, -+ use=vte-2007, - --# OpenNT terminals with no smcup/rmcup (names match termcap entries) --interix-nti|opennt-nti|opennt-25-nti|ntconsole-25-nti|OpenNT-nti compatible with color, -- rmcup@, smcup@, use=opennt, -+# GNOME Terminal 2.22.3 (2008 snapshot) -+# -+# In vttest, it claims to be a vt220 with national replacement character-sets, -+# but aside from the identifier string, implements only a small fraction of -+# vt220's behavior, which will make it less usable on a VMS system (unclear -+# what the intent of the developer is, since the NRC feature exposed in vttest -+# by this change does not work). -+vte-2008|VTE in GNOME Terminal snapshot 2.22.3, -+ use=vte+pcfkeys, use=vte-2007, -+gnome-2008|GNOME Terminal snapshot 2.22.3, -+ use=vte-2008, - --opennt-35-nti|ntconsole-35-nti|OpenNT-term35-nti compatible with color, -- lines#35, use=opennt-nti, -+# GNOME Terminal 3.6.0 (2012) -+# VTE 0.34.1 was marked in git 2012-10-15 (three days after patch was applied -+# in ncurses). It inherited from gnome-fc5, which broke the modified forms -+# of f1-f4 -TD -+# -+# Testing with tack shows that flash does not/has not worked -TD -+vte-2012|VTE 0.34.1, -+ flash@, ritm=\E[23m, sitm=\E[3m, use=vte-2008, -+# Version 3.6.1 sets TERM to xterm-256color (still hardcoded), which has -+# 61 differences from a correct entry for gnome terminal. -+gnome-2012|GNOME Terminal 3.6.0, -+ use=vte-2012, - --opennt-50-nti|ntconsole-50-nti|OpenNT-term50-nti compatible with color, -- lines#50, use=opennt-nti, -+# GNOME terminal may automatically use the contents of the "xterm" terminfo to -+# supply key information which is not built into the program. With 2.22.3, -+# this list is built into the program (which addresses the inadvertant use of -+# random terminfo data, though using a set of values which does not correspond -+# to any that xterm produces - still not solving the problem that GNOME -+# terminal hardcodes the $TERM variable as "xterm"). -+# -+# terminfo modifier code keys -+# kf13-kf24 shift 2 F1 to F12 -+# kf25-kf36 control 5 F1 to F12 -+# kf37-kf48 shift/control 6 F1 to F12 -+# kf49-kf60 alt 3 F1 to F12 -+# kf61-kf63 shift-alt 4 F1 to F3 -+# -+# The parameters with \EO (SS3) are technically an error, since SS3 should have -+# no parameters. This appears to be rote copying based on xterm+pcc0. -+vte+pcfkeys|VTE's variation on xterm+pcfkeys, -+ kf1=\EOP, kf13=\EO1;2P, kf14=\EO1;2Q, kf15=\EO1;2R, -+ kf16=\EO1;2S, kf2=\EOQ, kf25=\EO1;5P, kf26=\EO1;5Q, -+ kf27=\EO1;5R, kf28=\EO1;5S, kf3=\EOR, kf37=\EO1;6P, -+ kf38=\EO1;6Q, kf39=\EO1;6R, kf4=\EOS, kf40=\EO1;6S, -+ kf49=\EO1;3P, kf50=\EO1;3Q, kf51=\EO1;3R, kf52=\EO1;3S, -+ kf61=\EO1;4P, kf62=\EO1;4Q, kf63=\EO1;4R, -+ use=xterm+pcfkeys, -+gnome+pcfkeys|VTE's variation on xterm+pcfkeys, -+ use=vte+pcfkeys, - --opennt-60-nti|ntconsole-60-nti|OpenNT-term60-nti compatible with color, -- lines#60, use=opennt-nti, -+vte|VTE aka GNOME Terminal, -+ use=vte-2012, -+gnome|GNOME Terminal, -+ use=vte, - --opennt-100-nti|ntconsole-100-nti|OpenNT-term100-nti compatible with color, -- lines#100, use=opennt-nti, -+# palette is hardcoded... -+vte-256color|VTE with xterm 256-colors, -+ use=xterm+256color, use=vte, -+gnome-256color|GNOME Terminal with xterm 256-colors, -+ use=vte-256color, - --######## COMMON TERMINAL TYPES -+# XFCE Terminal 0.2.5.4beta2 - # --# This section describes terminal classes and maker brands that are still --# quite common, but have proprietary command sets not blessed by ANSI. -+# This is based on some of the same source code, e.g., the VTE library, as -+# gnome-terminal, but has fewer features, fails more screens in vttest. -+# Since most of the terminfo-related behavior is due to the VTE library, -+# the terminfo is the same as gnome-terminal. -+xfce|Xfce Terminal, -+ use=vte-2008, -+ -+#### Other GNOME -+# Multi-Gnome-Terminal 1.6.2 - # -+# This does not use VTE, and does have different behavior (compare xfce and -+# gnome). -+mgt|Multi GNOME Terminal, -+ indn=\E[%p1%dS, rin=\E[%p1%dT, use=xterm-xf86-v333, - --#### Altos -+#### KDE -+# This is kvt 0-18.7, shipped with Redhat 6.0 (though whether it supports bce -+# or not is debatable). -+kvt|KDE terminal, -+ bce, km@, -+ kdch1=\177, kend=\E[F, khome=\E[H, use=xterm-color, -+ -+# Konsole 1.0.1 -+# (formerly known as kvt) - # --# Altos made a moderately successful line of UNIX boxes. In 1990 they were --# bought out by Acer, a major Taiwanese manufacturer of PC-clones. --# Acer has a web site at http://www.acer.com. -+# This program hardcodes $TERM to 'xterm', which is not accurate. However, to -+# simplify this entry (and point out why konsole isn't xterm), we base this on -+# xterm-r6. The default keyboard appears to be 'linux'. - # --# Altos descriptions from Ted Mittelstaedt <tedm@agora.rain.com> 4 Sep 1993 --# His comments suggest they were shipped with the system. --# -- --# (altos2: had extension capabilities --# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ --# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ --# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ --# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: --# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\ --# :YU=^AQ\r:YD=^AR\r:YR=^AS\r:YL=^AT\r:\ --# :HL=^AP\r:SP=\E[i:\ --# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T:\ --# :LO=\E[0q:LC=\E[5q:LL=\E[6q:\ --# Comparison with the k* capabilities makes it obvious that the c* things are --# shift keys. I have renamed them to keys 32 and up accordingly. Also, --# :sr: was given as a boolean-- esr) --altos2|alt2|altos-2|altos II, -- cols#80, it#8, lines#24, xmc#0, -- clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[1B, cuf1=\E[1C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[1A, dch1=\E[P, dl1=\E[M, -- ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@, -- if=/usr/share/tabset/vt100, il1=\E[L, ind=^J, -- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kDL=^Am\r, -- kEOL=^An\r, kbs=^H, kcbt=^AK\r, kclr=^AL\r, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=^AM\r, kel=^AN\r, -- kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf32=^A`\r, -- kf33=^Aa\r, kf34=^Ab\r, kf35=^Ac\r, kf36=^Ad\r, kf37=^Ae\r, -- kf38=^Af\r, kf39=^Ag\r, kf4=^AC\r, kf40=^Ah\r, kf41=^Ai\r, -- kf42=^Aj\r, kf43=^Ak\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -- kf8=^AG\r, kf9=^AH\r, khome=\E[f, kil1=^AJ\r, kind=^AO\r, -- nel=^M^J, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, sgr0=\E[m, -- smam=\E[?7h, smso=\E[7m, smul=\E[4m, --# (altos3: had extension capabilities --# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ --# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ --# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ --# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: --# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\ --# :HL=^AP\r:SP=\E[i:\ --# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T:\ --altos3|altos5|alt3|alt5|altos-3|altos-5|altos III or V, -- blink=\E[5p, ri=\EM, sgr0=\E[p, use=altos2, --altos4|alt4|altos-4|altos IV, -- use=wy50, --# (altos7: had extension capabilities: --# :GG#0:GI=\EH8:GF=\EH7:\ --# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ --# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ --# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ --# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: --# Comparison with the k* capabilities makes it obvious that the c* things are --# shift keys. I have renamed them to keys 32 and up accordingly. I have --# also made this entry relative to adm12 in order to give it an <sgr>. The --# <invis> imported by use=adm+sgr may work, let me know. -- esr) --altos7|alt7|altos VII, -- am, mir, -- cols#80, lines#24, xmc#0, -- acsc=j5k3l2m1n8q\:t4u9v=w0x6, blink=\EG2, bold=\EGt, -- clear=\E+^^, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dim=\EGp, dl1=\ER, ed=\EY, el=\ET, home=^^, ht=^I, il1=\EE, -- ind=^J, invis=\EG1, -- is2=\E`\:\Ee(\EO\Ee6\Ec41\E~4\Ec21\Eu\E~2, kDL=^Am\r, -- kEOL=^An\r, kbs=^H, kcbt=^AK\r, kclr=^AL\r, kcub1=^H, -- kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=^AM\r, kel=^AN\r, -- kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf32=^A`\r, -- kf33=^Aa\r, kf34=^Ab\r, kf35=^Ac\r, kf36=^Ad\r, kf37=^Ae\r, -- kf38=^Af\r, kf39=^Ag\r, kf4=^AC\r, kf40=^Ah\r, kf41=^Ai\r, -- kf42=^Aj\r, kf43=^Ak\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -- kf8=^AG\r, kf9=^AH\r, khome=^^, kil1=^AJ\r, kind=^AO\r, -- knp=\EK, kpp=\EJ, mc4=\EJ, mc5=\Ed#, nel=^M^J, ri=\Ej, -- rmir=\Er, smir=\Eq, use=adm+sgr, --altos7pc|alt7pc|altos PC VII, -- kend=\ET, use=altos7, -- --#### Hewlett-Packard (hp) -+# Notes: -+# a) konsole implements several features from XFree86 xterm, though none of -+# that is documented - except of course in its source code - apparently -+# because its implementors are unaccustomed to reading documentation - as -+# evidenced by the sparse and poorly edited documentation distributed with -+# konsole. Some features such as the 1049 private mode are recognized but -+# incorrectly implemented as a duplicate of the 47 private mode. -+# b) even with the "vt100 (historical)" keyboard setting, the numeric keypad -+# sends PC-style escapes rather than vt100. -+# c) fails vttest menu 3 (Test of character sets) because it does not properly -+# parse some control sequences. Also fails vttest Primary Device Attributes -+# by sending a bogus code (in the source it says it's supposed to be a -+# vt220, which is doubly incorrect because it does not implement vt220 -+# control sequences except for a few special cases). Treat it as a -+# mildly-broken vt102. - # --# Hewlett-Packard --# 8000 Foothills Blvd --# Roseville, CA 95747 --# Vox: 1-(916)-785-4363 (Technical response line for VDTs) --# 1-(800)-633-3600 (General customer support) -+# Update for konsole 1.3.2: -+# The 1049 private mode works (but see the other xterm screens in vttest). -+# Primary Device Attributes now returns the code for a vt100 with advanced -+# video option. Perhaps that's intended to be a "mildly-broken vt102". - # -+# Updated for konsole 1.6.4: -+# add konsole-solaris - # --# As of March 1998, HP no longer has any terminals in production. --# The 700 series (22, 32, 41, 44, 92, 94, 96, 98) is still being --# supported (they still have parts). So are the 2392a and 2394a. --# See the WORKSTATION CONSOLES section for the 700s. -+# Updated for konsole 1.6.6: -+# add control-key modifiers for function-keys, etc. - # -+# vttest menu 1 shows that both konsole and gnome terminal do wrapping -+# different from xterm (and vt100's). They have the same behavior in this -+# detail, but it is unclear which copies the other. -+konsole-base|KDE console window, -+ bce, km@, npc, XT, -+ ncv@, -+ bel@, blink=\E[5m, civis=\E[?25l, cnorm=\E[?25h, -+ ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, -+ hpa=\E[%i%p1%dG, indn=\E[%p1%dS, kbs=\177, kdch1=\E[3~, -+ kend=\E[4~, kf1@, kf10@, kf11@, kf12@, kf13@, kf14@, kf15@, kf16@, -+ kf17@, kf18@, kf19@, kf2@, kf20@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, -+ kf9@, kfnd@, khome=\E[1~, kslt@, rin=\E[%p1%dT, rmam=\E[?7l, -+ rmso=\E[27m, rmul=\E[24m, -+ rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[0m\017, smam=\E[?7h, vpa=\E[%i%p1%dd, -+ use=ecma+color, use=xterm-r6, -+konsole-linux|KDE console window with linux keyboard, -+ kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13@, -+ kf14@, kf15@, kf16@, kf17@, kf18@, kf19@, kf2=\E[[B, kf20@, -+ kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, use=konsole-base, -+konsole-solaris|KDE console window with Solaris keyboard, -+ kbs=^H, kend=\E[4~, khome=\E[1~, use=konsole-vt100, -+# KDE's "XFree86 3.x.x" keyboard is based on reading the xterm terminfo rather -+# than testing the code. -+konsole-xf3x|KDE console window with keyboard for XFree86 3.x xterm, -+ kend=\E[4~, khome=\E[1~, use=konsole-vt100, -+# The value for kbs reflects local customization rather than the settings used -+# for XFree86 xterm. -+konsole-xf4x|KDE console window with keyboard for XFree86 4.x xterm, -+ kend=\EOF, khome=\EOH, use=konsole+pcfkeys, -+ use=konsole-vt100, -+# Konsole does not implement shifted cursor-keys. -+konsole+pcfkeys|konsole subset of xterm+pcfkeys, -+ kLFT@, kRIT@, kcbt=\E[Z, kind@, kri@, kDN@, kUP@, use=xterm+pcc2, -+ use=xterm+pcf0, -+# KDE's "vt100" keyboard has no relationship to any terminal that DEC made, but -+# it is still useful for deriving the other entries. -+konsole-vt100|KDE console window with vt100 (sic) keyboard, -+ kbs=\177, kdch1=\E[3~, kend=\E[F, kf1=\E[11~, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf13@, kf14@, kf15@, kf16@, kf17@, -+ kf18@, kf19@, kf2=\E[12~, kf20@, kf3=\E[13~, kf4=\E[14~, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[H, use=konsole-base, -+konsole-vt420pc|KDE console window with vt420 pc keyboard, -+ kbs=^H, kdch1=\177, use=konsole-vt100, -+konsole-16color|klone of xterm-16color, -+ ncv#32, use=ibm+16color, use=konsole, -+# make a default entry for konsole -+konsole|KDE console window, -+ use=konsole-xf4x, - --# Generic HP terminal - this should (hopefully) work on any HP terminal. --hpgeneric|hp|hewlett-packard generic terminal, -- OTbs, OTpt, am, da, db, mir, xhp, -- cols#80, lines#24, lm#0, vt#6, -- bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\E&a%p2%dc%p1%dY$<6>, cuu1=\EA, dch1=\EP, dl1=\EM, -- ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL, -- ind=^J, kbs=^H, kcbt=\Ei, rmir=\ER, rmso=\E&d@, rmul=\E&d@, -- sgr0=\E&d@, smir=\EQ, smso=\E&dJ, smul=\E&dD, tbc=\E3, -- vpa=\E&a%p1%dY, -- --hp110|hewlett-packard model 110 portable, -- lines#16, use=hpgeneric, -- --hp+pfk+cr|hp function keys with CR, -- kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, -- kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, -+# palette is hardcoded... -+konsole-256color|KDE console window with xterm 256-colors, -+ initc@, use=xterm+256color, use=konsole, - --hp+pfk-cr|hp function keys w/o CR, -- kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, -- kf8=\Ew, -+#### MLTERM -+# http://mlterm.sourceforge.net/ - --# The hp2621s use the same keys for the arrows and function keys, --# but not separate escape sequences. These definitions allow the --# user to use those keys as arrow keys rather than as function --# keys. --hp+pfk+arrows|hp alternate arrow definitions, -- kcub1=\Eu\r, kcud1=\Ew\r, kcuf1=\Ev\r, kcuu1=\Et\r, kf1@, -- kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, khome=\Ep\r, kind=\Er\r, -- kll=\Eq\r, kri=\Es\r, -+mlterm|multi lingual terminal emulator, -+ use=mlterm3, - --hp+arrows|hp arrow definitions, -- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh, -- kind=\ES, kll=\EF, kri=\ET, -+# Tested mlterm 3.2.2: -+# mlterm 3.x has made changes, but they are not reflected in the included -+# mlterm.ti; this entry is based on testing with tack and vttest -TD -+mlterm3|multi lingual terminal emulator, -+ kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, -+ use=xterm+app, use=xterm+pcf0, use=xterm+pcc2, -+ use=xterm+pce2, use=mlterm2, - --# Generic stuff from the HP 262x series -+# This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD - # --hp262x|HP 262x terminals, -- xhp, -- blink=\E&dA, dch1=\EP$<2>, ed=\EJ, ht=\011$<2>, ind=\ES, -- invis=\E&dS, ip=$<2>, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -- kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, khome=\Eh, -- kich1=\EQ, kil1=\EL, kind=\ES, knp=\EU, kpp=\EV, kri=\ET, -- krmir=\ER, rev=\E&dB, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, -- sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%c, -- sgr0=\E&d@, smkx=\E&s1A, smso=\E&dB, smul=\E&dD, -- --# Note: no <home> on HPs since that homes to top of memory, not screen. --# Due to severe 2621 braindamage, the only way to get the arrow keys to --# transmit anything at all is to turn on the function key labels --# with <smkx>, and even then the user has to hold down shift! --# The default 2621 turns off the labels except when it has to to --# enable the function keys. If your installation prefers labels --# on all the time, or off all the time (at the "expense" of the --# function keys), use 2621-nl or 2621-wl. -+# It is nominally a vt102 emulator, with features borrowed from rxvt and -+# xterm. - # --# Note: there are newer ROMs for 2621's that allow you to set --# strap A so the regular arrow keys xmit \EA, etc, as with the --# 2645. However, even with this strap set, the terminal stops --# xmitting if you reset it, until you unset and reset the strap! --# Since there is no way to set/unset the strap with an escape --# sequence, we don't use it in the default. --# If you like, you can use 2621-ba (brain-damaged arrow keys). --hp2621-ba|2621 w/new rom and strap A set, -- rmkx@, smkx@, use=hp+arrows, use=hp2621, -- --# hp2621 with function labels. Most of the time they are off, --# but inside vi, the function key labels appear. You have to --# hold down shift to get them to xmit. --hp2621|hp2621a|hp2621A|2621|2621a|2621A|hp2621-wl|2621-wl|hp 2621 w/labels, -- is2=\E&jA\r, rmkx=\E&jA, use=hp2621-fl, --hp2621-fl|hp 2621, -- xhp@, xon, -- pb#19200, -- cbt=\Ei, cup=\E&a%p2%dc%p1%dY, dch1=\EP$<2>, ht=\011$<2>, -- ip=$<2>, is2=\E&j@\r, rmkx=\E&j@, rmso=\E&d@, rmul=\E&d@, -- sgr0=\E&d@, smkx=\E&jB, smso=\E&dD, smul=\E&dD, -- use=hp+pfk+cr, use=hpgeneric, -- --# To use hp2621p printer, setenv TERM=2621p, PRINTER=2612p --hp2621p|hp 2621 with printer, -- mc4=\E&p13C, mc5=\E&p11C, use=hp2621, -- --hp2621p-a|hp2621p with fn as arrows, -- use=hp+pfk+arrows, use=hp2621p, -- --# hp2621 with k45 keyboard --hp2621-k45|hp2621k45|k45|hp 2621 with 45 keyboard, -- kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -- khome=\Eh, rmkx=\E&s0A, smkx=\E&s1A, use=hp2621, -- --# 2621 using all 48 lines of memory, only 24 visible at any time. --hp2621-48|48 line 2621, -- lines#48, -- cup=\E&a%p2%dc%p1%dR, home=\EH, vpa=\E&a%p1%dR, -- use=hp2621, -- --# 2621 with no labels ever. Also prevents vi delays on escape. --hp2621-nl|hp 2621 with no labels, -- kcub1@, kcud1@, kcuf1@, kcuu1@, khome@, rmkx@, smkx@, -- use=hp2621-fl, -- --# Needed for UCB ARPAVAX console, since lsi-11 expands tabs --# (wrong). --# --hp2621-nt|hp 2621 w/no tabs, -- ht@, use=hp2621, -- --# Hp 2624 B with 4 or 10 pages of memory. -+# The function keys are numbered based on shift/control/alt modifiers, except -+# that the control-modifier itself is used to spawn a new copy of mlterm (the -+# "-P" option). So control/F1 to control/F12 may not be usable, depending on -+# how it is configured. - # --# Some assumptions are made with this entry. These settings are --# NOT set up by the initialization strings. -+# kf1 to kf12 \E[11~ to \E[24~ -+# shift kf1 to kf12 \E[11;2~ to \E[24;2~ -+# alt kf1 to kf12 \E[11;3~ to \E[24;3~ -+# shift/alt kf1 to kf12 \E[11;4~ to \E[24;4~ -+# control kf1 to kf12 \E[11;5~ to \E[24;5~ (maybe) -+# control/shift kf1 to kf12 \E[11;6~ to \E[24;6~ -+# control/alt kf1 to kf12 \E[11;7~ to \E[24;7~ -+# control/shift/alt kf1 to kf12 \E[11;8~ to \E[24;8~ - # --# Port Configuration --# RecvPace=Xon/Xoff --# XmitPace=Xon/Xoff --# StripNulDel=Yes -+mlterm2|multi lingual terminal emulator, -+ am, eslok, km, mc5i, mir, msgr, npc, xenl, XT, -+ colors#8, cols#80, it#8, lines#24, pairs#64, -+ acsc=00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=, -+ home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, -+ is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>, -+ kbs=\177, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -+ kcuu1=\EOA, kdch1=\E[3~, kend=\EOF, kent=\EOM, kfnd=\E[1~, -+ khome=\EOH, kich1=\E[2~, kind=\EO1;2B, kmous=\E[M, -+ knp=\E[6~, kpp=\E[5~, kri=\EO1;2A, kslt=\E[4~, mc0=\E[i, -+ nel=\EE, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, -+ rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l, -+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, -+ rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l, -+ sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;, -+ sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smcup=\E[?1049h, -+ smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, u8=\E[?1;2c, u9=\E[c, -+ vpa=\E[%i%p1%dd, use=mlterm+pcfkeys, use=xterm+r6f2, -+ -+# The insert/delete/home/end keys do not respond to modifiers because mlterm -+# looks in its termcap to decide which string to send. If it used terminfo -+# (when available), it could use the extended names introduced for xterm. -+mlterm+pcfkeys|fragment for PC-style fkeys, -+ kLFT=\EO1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\EO1;2C, -+ kDN=\EO1;2B, kDN3=\EO1;3B, kDN4=\EO1;4B, kDN5=\EO1;5B, -+ kDN6=\EO1;6B, kDN7=\EO1;7B, kIC5=\E[2;5~, kIC6=\E[2;6~, -+ kLFT3=\EO1;3D, kLFT4=\EO1;4D, kLFT5=\EO1;5D, -+ kLFT6=\EO1;6D, kLFT7=\EO1;7D, kNXT5=\E[6;5~, -+ kNXT6=\E[6;6~, kPRV5=\E[5;5~, kPRV6=\E[5;6~, -+ kRIT3=\EO1;3C, kRIT4=\EO1;4C, kRIT5=\EO1;5C, -+ kRIT6=\EO1;6C, kRIT7=\EO1;7C, kUP=\EO1;2A, kUP3=\EO1;3A, -+ kUP4=\EO1;4A, kUP5=\EO1;5A, kUP6=\EO1;6A, kUP7=\EO1;7A, -+ -+mlterm-256color|mlterm 3.0 with xterm 256-colors, -+ use=xterm+256color, use=mlterm, -+ -+#### RXVT -+# From: Thomas Dickey <dickey@clark.net> 04 Oct 1997 -+# Updated: Oezguer Kesim <kesim@math.fu-berlin.de> 02 Nov 1997 -+# Notes: -+# rxvt 2.21b uses -+# smacs=\E(B\E)U^N, rmacs=\E(B\E)0^O, -+# but some applications don't work with that. -+# It also has an AIX extension -+# box2=lqkxjmwuvtn, -+# and -+# ech=\E[%p1%dX, -+# but the latter does not work correctly. - # --# Terminal Configuration --# InhHndShk=Yes --# InhDC2=Yes --# XmitFnctn(A)=No --# InhEolWrp=No -+# The distributed terminfo says it implements hpa and vpa, but they are not -+# implemented correctly, using relative rather than absolute positioning. - # --# Note: the 2624 DOES have a true <home>, believe it or not! -+# rxvt is normally configured to look for "xterm" or "xterm-color" as $TERM. -+# Since rxvt is not really compatible with xterm, it should be configured as -+# "rxvt" or "rxvt-color". - # --# The 2624 has an "error line" to which messages can be sent. --# This is CLOSE to what is expected for a "status line". However, --# after a message is sent to the "error line", the next carriage --# return is EATEN and the "error line" is turned back off again! --# So I guess we can't define <hs>, <eslok>, <wsl>, <dsl>, <fsl>, <tsl>. -+# removed dch/dch1 because they are inconsistent with bce/ech -TD -+# remove km as per tack test -TD -+rxvt-basic|rxvt terminal base (X Window System), -+ OTbs, am, bce, eo, mir, msgr, xenl, xon, XT, -+ cols#80, it#8, lines#24, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -+ enacs=\E(B\E)0, flash=\E[?5h\E[?5l, home=\E[H, ht=^I, -+ hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, -+ ind=^J, is1=\E[?47l\E=\E[?1l, -+ is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^H, -+ kcbt=\E[Z, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, -+ rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E>, rmso=\E[27m, -+ rmul=\E[24m, -+ rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, -+ rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, -+ s0ds=\E(B, s1ds=\E(0, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[0m\017, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h, -+ smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=vt100+enq, -+ use=rxvt+pcfkeys, use=vt220+keypad, -+# Key Codes from rxvt reference: - # --# This entry supports emacs (and any other program that uses raw --# mode) at 4800 baud and less. I couldn't get the padding right --# for 9600. -+# Note: Shift + F1-F10 generates F11-F20 - # --# (hp2624: replaced NUL sequences in flash with mandatory pauses -- esr) --hp2624|hp2624a|hp2624b|hp2624b-4p|Hewlett Packard 2624 B, -- da, db, -- lm#96, -- flash=\E&w13F$<66/>\E&w12F$<66/>\E&w13F$<66/>\E&w12F, -- use=hp+labels, use=scrhp, -- --# This hp2626 entry does not use any of the fancy windowing stuff --# of the 2626. -+# For the keypad, use Shift to temporarily override Application-Keypad -+# setting use Num_Lock to toggle Application-Keypad setting if Num_Lock -+# is off, escape sequences toggle Application-Keypad setting. -+# Also note that values of Home, End, Delete may have been compiled -+# differently on your system. - # --# Indeed, terminfo does not yet handle such stuff. Since changing --# any window clears memory, it is probably not possible to use --# this for screen opt. -+# Normal Shift Control Ctrl+Shift -+# Tab ^I ESC [ Z ^I ESC [ Z -+# BackSpace ^H ^? ^? ^? -+# Find ESC [ 1 ~ ESC [ 1 $ ESC [ 1 ^ ESC [ 1 @ -+# Insert ESC [ 2 ~ paste ESC [ 2 ^ ESC [ 2 @ -+# Execute ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @ -+# Select ESC [ 4 ~ ESC [ 4 $ ESC [ 4 ^ ESC [ 4 @ -+# Prior ESC [ 5 ~ scroll-up ESC [ 5 ^ ESC [ 5 @ -+# Next ESC [ 6 ~ scroll-down ESC [ 6 ^ ESC [ 6 @ -+# Home ESC [ 7 ~ ESC [ 7 $ ESC [ 7 ^ ESC [ 7 @ -+# End ESC [ 8 ~ ESC [ 8 $ ESC [ 8 ^ ESC [ 8 @ -+# Delete ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @ -+# F1 ESC [ 11 ~ ESC [ 23 ~ ESC [ 11 ^ ESC [ 23 ^ -+# F2 ESC [ 12 ~ ESC [ 24 ~ ESC [ 12 ^ ESC [ 24 ^ -+# F3 ESC [ 13 ~ ESC [ 25 ~ ESC [ 13 ^ ESC [ 25 ^ -+# F4 ESC [ 14 ~ ESC [ 26 ~ ESC [ 14 ^ ESC [ 26 ^ -+# F5 ESC [ 15 ~ ESC [ 28 ~ ESC [ 15 ^ ESC [ 28 ^ -+# F6 ESC [ 17 ~ ESC [ 29 ~ ESC [ 17 ^ ESC [ 29 ^ -+# F7 ESC [ 18 ~ ESC [ 31 ~ ESC [ 18 ^ ESC [ 31 ^ -+# F8 ESC [ 19 ~ ESC [ 32 ~ ESC [ 19 ^ ESC [ 32 ^ -+# F9 ESC [ 20 ~ ESC [ 33 ~ ESC [ 20 ^ ESC [ 33 ^ -+# F10 ESC [ 21 ~ ESC [ 34 ~ ESC [ 21 ^ ESC [ 34 ^ -+# F11 ESC [ 23 ~ ESC [ 23 $ ESC [ 23 ^ ESC [ 23 @ -+# F12 ESC [ 24 ~ ESC [ 24 $ ESC [ 24 ^ ESC [ 24 @ -+# F13 ESC [ 25 ~ ESC [ 25 $ ESC [ 25 ^ ESC [ 25 @ -+# F14 ESC [ 26 ~ ESC [ 26 $ ESC [ 26 ^ ESC [ 26 @ -+# F15 (Help) ESC [ 28 ~ ESC [ 28 $ ESC [ 28 ^ ESC [ 28 @ -+# F16 (Menu) ESC [ 29 ~ ESC [ 29 $ ESC [ 29 ^ ESC [ 29 @ -+# F17 ESC [ 31 ~ ESC [ 31 $ ESC [ 31 ^ ESC [ 31 @ -+# F18 ESC [ 32 ~ ESC [ 32 $ ESC [ 32 ^ ESC [ 32 @ -+# F19 ESC [ 33 ~ ESC [ 33 $ ESC [ 33 ^ ESC [ 33 @ -+# F20 ESC [ 34 ~ ESC [ 34 $ ESC [ 34 ^ ESC [ 34 @ - # --# ed is incredibly slow most of the time - I am guessing at the --# exact padding. Since the terminal uses xoff/xon this is intended --# only for cost computation, so that the terminal will prefer el --# or even dl1 which is probably faster! -+# Application -+# Up ESC [ A ESC [ a ESC O a ESC O A -+# Down ESC [ B ESC [ b ESC O b ESC O B -+# Right ESC [ C ESC [ c ESC O c ESC O C -+# Left ESC [ D ESC [ d ESC O d ESC O D -+# KP_Enter ^M ESC O M -+# KP_F1 ESC O P ESC O P -+# KP_F2 ESC O Q ESC O Q -+# KP_F3 ESC O R ESC O R -+# KP_F4 ESC O S ESC O S -+# XK_KP_Multiply * ESC O j -+# XK_KP_Add + ESC O k -+# XK_KP_Separator , ESC O l -+# XK_KP_Subtract - ESC O m -+# XK_KP_Decimal . ESC O n -+# XK_KP_Divide / ESC O o -+# XK_KP_0 0 ESC O p -+# XK_KP_1 1 ESC O q -+# XK_KP_2 2 ESC O r -+# XK_KP_3 3 ESC O s -+# XK_KP_4 4 ESC O t -+# XK_KP_5 5 ESC O u -+# XK_KP_6 6 ESC O v -+# XK_KP_7 7 ESC O w -+# XK_KP_8 8 ESC O x -+# XK_KP_9 9 ESC O y - # --# \ED\EJ\EC hack for ed from Ed Bradford - apparently ed is only --# extra slow on the last line of the window. -+# The source-code for rxvt actually defines mappings for F21-F35, using -+# "ESC [ 35 ~" to "ESC [ 49 ~". Keyboards with more than 12 function keys -+# are rare, so this entry uses the shift- and control-modifiers as in -+# xterm+pcfkeys to define keys past F12. - # --# The padding probably should be changed. -+# kIC is normally not used, since rxvt performs a paste for that (shifted -+# insert), unless private mode 35 is set. - # --hp2626|hp2626a|hp2626p|hp 2626, -- da, db, -- lm#0, pb#19200, -- ed=\ED\EJ$<500>\EC, indn=\E&r%p1%dD, ip=$<4>, -- is2=\E&j@\r, rin=\E&r%p1%dU, use=hp+pfk+cr, -- use=hp+labels, use=scrhp, -+# kDN, kDN5, kDN6, etc are extensions based on the names from xterm+pcfkeys -TD -+# Removed kDN6, etc (control+shift) since rxvt does not implement this -TD -+rxvt+pcfkeys|fragment for PC-style fkeys, -+ kDC=\E[3$, kEND=\E[8$, kHOM=\E[7$, kIC=\E[2$, kLFT=\E[d, -+ kNXT=\E[6$, kPRV=\E[5$, kRIT=\E[c, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kel=\E[8\^, -+ kend=\E[8~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, -+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -+ kf2=\E[12~, kf20=\E[34~, kf21=\E[23$, kf22=\E[24$, -+ kf23=\E[11\^, kf24=\E[12\^, kf25=\E[13\^, kf26=\E[14\^, -+ kf27=\E[15\^, kf28=\E[17\^, kf29=\E[18\^, kf3=\E[13~, -+ kf30=\E[19\^, kf31=\E[20\^, kf32=\E[21\^, kf33=\E[23\^, -+ kf34=\E[24\^, kf35=\E[25\^, kf36=\E[26\^, kf37=\E[28\^, -+ kf38=\E[29\^, kf39=\E[31\^, kf4=\E[14~, kf40=\E[32\^, -+ kf41=\E[33\^, kf42=\E[34\^, kf43=\E[23@, kf44=\E[24@, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ kfnd=\E[1~, khome=\E[7~, kich1=\E[2~, kind=\E[a, knp=\E[6~, -+ kpp=\E[5~, kri=\E[b, kslt=\E[4~, kDC5=\E[3\^, kDC6=\E[3@, -+ kDN=\E[b, kDN5=\EOb, kEND5=\E[8\^, kEND6=\E[8@, -+ kHOM5=\E[7\^, kHOM6=\E[7@, kIC5=\E[2\^, kIC6=\E[2@, -+ kLFT5=\EOd, kNXT5=\E[6\^, kNXT6=\E[6@, kPRV5=\E[5\^, -+ kPRV6=\E[5@, kRIT5=\EOc, kUP=\E[a, kUP5=\EOa, - --# This entry is for sysline. It allocates a 23 line window with --# a 115 line workspace for regular use, and a 1 line window for --# the status line. --# --# This assumes port 2 is being used. --# Turn off horizontal line, Create ws #1 with 115 lines, --# Create ws #2 with 1 line, Create window #1 lines 1-23, --# Create window #2 lines 24-24, Attach cursor to workspace #1. --# Note that this clears the tabs so it must be done by tset before --# it sets the tabs. --# --hp2626-s|hp 2626 using only 23 lines, -- eslok, hs, -- lines#23, -- fsl=\E&d@\E&w7f2p1I\E&w4f1I, -- is1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I \E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \r, -- tsl=\E&w7f2p2I\E&w4f2I\r\EK\E&a%p1%dC, use=hp2626, --# Force terminal back to 24 lines after being 23. --hp2626-ns|hp 2626 using all 24 lines, -- is1=\E&q3t0{0H \E&w0f118n1I \E&w0f1n2I \E&w2f1i0d0u23l0S \E&w3f2I \E&w7f2p1I \r, -- use=hp2626, --# Various entries useful for small windows on 2626. --hp2626-12|hewlett-packard 2626 12 lines, -- lines#12, use=hp2626, --hp2626-12x40|hewlett-packard 2626 12 lines 40 columns, -- cols#40, lines#12, use=hp2626, --hp2626-x40|hewlett-packard 2626 40 columns, -- cols#40, use=hp2626, --hp2626-12-s|hewlett-packard 2626 11 lines plus status, -- lines#11, use=hp2626-s, -+rxvt|rxvt terminal emulator (X Window System), -+ ncv@, -+ hpa=\E[%i%p1%dG, kf0=\E[21~, sgr0=\E[m\017, -+ vpa=\E[%i%p1%dd, use=rxvt-basic, use=ecma+color, -+rxvt-color|rxvt terminal emulator (X Window System), -+ use=rxvt, -+rxvt-256color|rxvt 2.7.9 with xterm 256-colors, -+ use=xterm+256color, use=rxvt, -+rxvt-88color|rxvt 2.7.9 with xterm 88-colors, -+ use=xterm+88color, use=rxvt, -+rxvt-xpm|rxvt terminal emulator (X Window System), -+ use=rxvt, -+rxvt-cygwin|rxvt terminal emulator (X Window System) on cygwin, -+ acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ use=rxvt, -+rxvt-cygwin-native|rxvt terminal emulator (native MS Window System port) on cygwin, -+ acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330~\376, -+ use=rxvt-cygwin, - --# --# hp2627 color tubes from University of Wisconsin --# --hp2627a-rev|hp 2627 with reverse video colors, -- cr=^M, cud1=^J, ht=^I, ind=^J, -- is2=\E&v0m1a0b0c1x1y1z1i0a0b1c1x1y1z0i0S\E&j@\r\E3\r, -- kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, rmul=\E&v0S\E&d@, -- smul=\E&dD\E&v1S, use=hp2621-nl, --hp2627a|hp 2627 color terminal with no labels, -- cr=^M, cud1=^J, ht=^I, ind=^J, -- is2=\E&v0m1a1b0c1i0a1b1c2i1a0b0c0i0S\E&j@\r\E3\r, -- kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, rmso=\E&v0S, -- rmul=\E&v0S\E&d@, smso=\E&v2S, smul=\E&dD\E&v1S, -- use=hp2621-nl, --hp2627c|hp 2627 color (cyan) terminal with no labels, -- cr=^M, cud1=^J, ht=^I, ind=^J, -- is2=\E&v0m1a0b0c2i1a1b0c1i0a1b1c0i0S\E&j@\r\E3\r, -- kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, use=hp2627a, -+# This variant is supposed to work with rxvt 2.7.7 when compiled with -+# NO_BRIGHTCOLOR defined. rxvt needs more work... -+rxvt-16color|xterm with 16 colors like aixterm, -+ ncv#32, use=ibm+16color, use=rxvt, - --# hp2640a doesn't have the Y cursor addressing feature, and C is --# memory relative instead of screen relative, as we need. -+#### MRXVT -+# mrxvt 0.5.4 - # --hp2640a|hp 2640a, -- cup@, rmkx@, smkx@, use=hp2645, -- --hp2640b|hp2644a|hp 264x series, -- rmkx@, smkx@, use=hp2645, -- --# (hp2641a: removed unknown :gu: -- esr) --hp2641a|hp2645a|hp2647a|HP 264?A series BRL entry, -- am, da, db, mir, xhp, -- cols#80, lines#24, -- bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\E&a%p2%2dc%p1%2dY, cuu1=\EA, dch1=\EP, dl1=\EM, -- ed=\EJ, el=\EK, hpa=\E&a%p1%2dC, ht=^I, -- if=/usr/share/tabset/std, il1=\EL, ind=^J, -- is2=\EE$<500/>, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, -- rmir=\ER, rmso=\E&d@, smir=\EQ, smso=\E&dB, -- vpa=\E&a%p1%2dY, -- --# This terminal should be used at 4800 baud or less. It needs padding for --# plain characters at 9600, I guessed at an appropriate cr delay. It really --# wants ^E/^F handshaking, but that doesn't work well even if you write --# software to support it. --hp2645|hp45|HP 2645 series, -- pb#9600, -- blink=\E&dA, cr=\r$<20>, dim=\E&dH, kctab=\E2, kcub1=\ED, -- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, -- ked=\EJ, kel=\EK, khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, -- kind=\ES, knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, rev=\E&dB, -- rmkx=\E&s0A, -- sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%?%p5%t%{72}%|%;%?%p6%t%{66}%|%;%c, -- sgr0=\E&d@, smkx=\E&s1A, smul=\E&dD, use=hpgeneric, --# You should use this terminal at 4800 baud or less. --hp2648|hp2648a|HP 2648a graphics terminal, -- clear=\EH\EJ$<50>, cup=\E&a%p2%dc%p1%dY$<20>, -- dch1=\EP$<7>, ip=$<5>, use=hp2645, -- --# The HP 150 terminal is a fairly vanilla HP terminal, with the --# clreol standout problem. It also has graphics capabilities and --# a touch screen, which we don't describe here. --hp150|hewlett packard Model 150, -- OTbs, use=hp2622, -+# mrxvt is based on rxvt 2.7.11, but has by default XTERM_FKEYS defined, which -+# makes its function-keys different from other flavors of rxvt -TD -+mrxvt|multitabbed rxvt, -+ XT, -+ kEND=\E[8;2~, kHOM=\E[7;2~, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kend=\E[8~, khome=\E[7~, -+ kEND3=\E[8;3~, kEND4=\E[8;4~, kEND5=\E[8;5~, -+ kEND6=\E[8;6~, kEND7=\E[8;7~, kHOM3=\E[7;3~, -+ kHOM4=\E[7;4~, kHOM5=\E[7;5~, kHOM6=\E[7;6~, -+ kHOM7=\E[7;7~, use=xterm+r6f2, use=xterm+pcfkeys, -+ use=rxvt, - --# HP 2382a terminals, "the little ones." They don't have any --# alternate character set support and sending out ^N/^O will --# leave the screen blank. --hp2382a|hp2382|hewlett packard 2382a, -- da, db, -- lh#1, lm#48, -- acsc@, -- pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s, -- rmacs@, -- sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%{64}%+%e%{83}%;%e%?%ga%t%ga%{64}%+%e%{64}%;%;%c, -- sgr0=\E&d@, smacs@, use=hp+labels, use=scrhp, -+mrxvt-256color|multitabbed rxvt with 256 colors, -+ use=xterm+256color, use=mrxvt, - --hp2621-a|hp2621a-a|hp2621 with fn as arrows, -- use=hp+pfk+arrows, use=hp2621-fl, -+#### ETERM -+# From: Michael Jennings <mej@valinux.com> -+# -+# Eterm 0.9.3 -+# -+# removed kf0 which conflicts with kf10 -TD -+# remove cvvis which conflicts with cnorm -TD -+# Eterm does not implement control/shift cursor keys such as kDN6, or kPRV/kNXT -+# but does otherwise follow the rxvt+pcfkeys model -TD -+# remove nonworking flash -TD -+# remove km as per tack test -TD -+Eterm|Eterm-color|Eterm with xterm-style color support (X Window System), -+ am, bce, bw, eo, mc5i, mir, msgr, xenl, xon, XT, -+ btns#5, cols#80, it#8, lines#24, lm#0, ncv@, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, -+ home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ is1=\E[?47l\E>\E[?1l, -+ is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kNXT@, -+ kPRV@, ka1=\E[7~, ka3=\E[5~, kb2=\EOu, kbeg=\EOu, kbs=^H, -+ kc1=\E[8~, kc3=\E[6~, kent=\EOM, khlp=\E[28~, kmous=\E[M, -+ mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, -+ rmam=\E[?7l, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=, -+ rmso=\E[27m, rmul=\E[24m, -+ rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, -+ rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h, -+ sc=\E7, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E7\E[?47h, -+ smir=\E[4h, smkx=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ vpa=\E[%i%p1%dd, use=vt100+enq, use=rxvt+pcfkeys, -+ use=ecma+color, - --# newer hewlett packard terminals -+Eterm-256color|Eterm with xterm 256-colors, -+ use=xterm+256color, use=Eterm, - --newhpkeyboard|generic entry for HP extended keyboard, -- kbs=^H, kcbt=\Ei, kclr=\EJ, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -- kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, khome=\Eh, -- kich1=\EQ, kil1=\EL, kind=\ET, kll=\EF, knp=\EU, kpp=\EV, -- kri=\ES, krmir=\ER, rmkx=\E&s0A, smkx=\E&s1A, -- use=hp+pfk-cr, -+Eterm-88color|Eterm with 88 colors, -+ use=xterm+88color, use=Eterm, - --newhp|generic entry for new hewlett packard terminals, -- am, bw, mir, xhp, xon, -- cols#80, lines#24, pb#4800, -- acsc=2[3@4>5I9(\:'JSKWLQMAO#P$Q;R!S"T1U2V4W3X\:Y+Z*dHjGkTlRmFn/q\,t5u6v8w7x., -- bel=^G, blink=\E&dA, bold=\E&dF, cbt=\Ei, cr=^M, cub1=^H, -- cud1=^J, cuf1=\EC, cuu1=\EA, dch1=\EP$<2>, dim=\E&dH, -- dl1=\EM, ed=\EJ, el=\EK, ht=\011$<2>, hts=\E1, il1=\EL, ind=^J, -- invis=\E&dS, ip=$<2>, is1=\E&jB$<8>, nel=^M^J, -- pfkey=\E&f0a%p1%dk0d%p2%l%dL%p2%s, -- pfloc=\E&f1a%p1%dk0d%p2%l%dL%p2%s, -- pfx=\E&f2a%p1%dk0d%p2%l%dL%p2%s, rev=\E&dB, ri=\ET, -- rmacs=^O, rmir=\ER, rmso=\E&d@, rmul=\E&d@, rs1=\Eg, -- sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%{64}%+%e%{83}%;%e%?%ga%t%ga%{64}%+%e%{64}%;%;%c%?%p9%t\016%e\017%;, -- sgr0=\E&d@\017, smacs=^N, smir=\EQ, smso=\E&dJ, smul=\E&dD, -- tbc=\E3, use=newhpkeyboard, -+#### ATERM -+# Based on rxvt 2.4.8, it has a few differences in key bindings -+aterm|AfterStep terminal, -+ XT, -+ kbs=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, use=rxvt, - --memhp|memory relative addressing for new HP ttys, -- vt#6, -- clear=\EH\EJ$<40>, cub=\E&a-%p1%dC, cud=\E&a+%p1%dR, -- cuf=\E&a+%p1%dC, cup=\E&a%p1%dr%p2%dC, cuu=\E&a-%p1%dR, -- home=\EH, hpa=\E&a%p1%dC, ll=\E&a23R\r, -- mrcup=\E&a%p1%dr%p2%dC, vpa=\E&a%p1%dR, use=newhp, -+#### XITERM -+# xiterm 0.5-5.2 -+# This is not based on xterm's source... -+# vttest shows several problems with keyboard, cursor-movements. -+# see also http://invisible-island.net/xterm/xterm.faq.html#bug_xiterm -+xiterm|internationalized terminal emulator for X, -+ km@, -+ kbs=\177, kdch1=\E[3~, use=klone+color, use=xterm-r6, - --scrhp|screen relative addressing for new HP ttys, -- clear=\E&a0c0Y\EJ$<40>, cub=\E&a-%p1%dC, -- cud=\E&a+%p1%dR, cuf=\E&a+%p1%dC, -- cup=\E&a%p1%dy%p2%dC$<10>, cuu=\E&a-%p1%dR, -- home=\E&a0y0C, hpa=\E&a%p1%dC, ll=\E&a0y0C\EA, -- mrcup=\E&a%p1%dr%p2%dC, vpa=\E&a%p1%dY, use=newhp, - --# (hp+labels: added label values from a BRL termcap -- esr) --hp+labels|"standard" label info for new HP ttys, -- lh#2, lw#8, nlab#8, -- lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, -- pln=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s, -- rmln=\E&j@, smln=\E&jB, -+#### HPTERM -+# HP ships this (HPUX 9 and 10), except for the pb#9600 which was merged in -+# from BSD termcap. (hpterm: added empty <acsc>, we have no idea what ACS -+# chars look like --esr) -+hpterm|X-hpterm|hp X11 terminal emulator, -+ am, da, db, mir, xhp, -+ cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, pb#9600, xmc#0, -+ acsc=, bel=^G, bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, -+ cub1=^H, cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, -+ cuu1=\EA, dch1=\EP, dim=\E&dH, dl1=\EM, ed=\EJ$<1>, el=\EK, -+ hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL, ind=^J, kbs=^H, -+ kclr=\EJ, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -+ kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, kf1=\Ep, -+ kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, -+ khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, kind=\ES, kll=\EF, -+ knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, ktbc=\E3, meml=\El, -+ memu=\Em, pfkey=\E&f%p1%dk%p2%l%dL%p2%s, -+ pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s, -+ pfx=\E&f2a%p1%dk%p2%l%dL%p2%s, -+ pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rev=\E&dB, ri=\ET, -+ rmacs=^O, rmir=\ER, rmkx=\E&s0A, rmln=\E&j@, rmso=\E&d@, -+ rmul=\E&d@, -+ sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;, -+ sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smln=\E&jB, -+ smso=\E&dJ, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, -+# HPUX 11 provides a color version. -+hpterm-color|HP X11 terminal emulator with color, -+ ccc, -+ colors#64, pairs#8, -+ home=\E&a0y0C, -+ initp=\E&v%p2%da%p3%db%p4%dc%p5%dx%p6%dy%p7%dz%p1%dI, -+ op=\E&v0S, scp=\E&v%p1%dS, use=hpterm, - --hp+printer|"standard" printer info for HP ttys, -- ff=\E&p4u0C, mc0=\EH\E&p4dF, mc4=\E&p13C, mc5=\E&p11C, -- -- --# The new hp2621b is kind of a cross between the old 2621 and the --# new 262x series of machines. It has dip-switched options. --# The firmware has a bug in it such that if you give it a null --# length label, the following character is eaten! --hp2621b|hp 2621b with old style keyboard, -- lh#1, lm#48, lw#8, nlab#8, -- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh, -- kind=\ET, kll=\EF, kri=\ES, -- pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%{32}%c%;%p2%s\E%{111}%p1%+%c\r, -- smln=\E&jB, use=hp2621, -- --hp2621b-p|hp 2621b with printer, -- use=hp+printer, use=hp2621b, -+#### EMU -+# This is for the extensible terminal emulator on the X11R6 contrib tape. -+# It corresponds to emu's internal emulation: -+# emu -term emu -+# emu's default sets TERM to "xterm", but that doesn't work well -TD -+# fixes: remove bogus rmacs/smacs, change oc to op, add bce, am -TD -+# fixes: add civis, cnorm, sgr -TD -+emu|emu native mode, -+ am, bce, mir, msgr, xon, -+ colors#15, cols#80, it#8, lines#24, pairs#64, vt#200, -+ acsc=61a\202f\260g2j\213k\214l\215m\216n\217o\220q\222s\224t\225u\226v\227w\230x\231~\244, -+ bel=^G, blink=\EW, bold=\EU, civis=\EZ, clear=\EP\EE0;0;, -+ cnorm=\Ea, cr=^M, csr=\Ek%p1%d;%p2%d;, cub=\Eq-%p1%d;, -+ cub1=^H, cud=\Ep%p1%d;, cud1=\EB, cuf=\Eq%p1%d;, cuf1=\EC, -+ cup=\EE%p1%d;%p2%d;, cuu=\Ep-%p1%d;, cuu1=\EA, -+ dch=\EI%p1%d;, dch1=\EI1;, dl=\ER%p1%d;, dl1=\ER1;, -+ ech=\Ej%p1%d;, ed=\EN, el=\EK, el1=\EL, home=\EE0;0;, ht=^I, -+ hts=\Eh, il=\EQ%p1%d;, il1=\EQ1;, ind=\EG, -+ is2=\ES\Er0;\Es0;, kbs=^H, kcub1=\EC, kcud1=\EB, kcuf1=\ED, -+ kcuu1=\EA, kdch1=\177, kent=^M, kf0=\EF00, kf1=\EF01, -+ kf10=\EF10, kf11=\EF11, kf12=\EF12, kf13=\EF13, kf14=\EF14, -+ kf15=\EF15, kf16=\EF16, kf17=\EF17, kf18=\EF18, kf19=\EF19, -+ kf2=\EF02, kf20=\EF20, kf3=\EF03, kf4=\EF04, kf5=\EF05, -+ kf6=\EF06, kf7=\EF07, kf8=\EF08, kf9=\EF09, kfnd=\Efind, -+ kich1=\Eins, knp=\Enext, kpp=\Eprior, kslt=\Esel, -+ op=\Es0;\Er0;, rev=\ET, ri=\EF, rmir=\EX, rmso=\ES, rmul=\ES, -+ rs2=\ES\Es0;\Er0;, setab=\Es%i%p1%d;, -+ setaf=\Er%i%p1%d;, -+ sgr=\ES%?%p1%t\ET%;%?%p2%t\EV%;%?%p3%t\ET%;%?%p4%t\EW%;%?%p6%t\EU%;, -+ sgr0=\ES, smir=\EY, smso=\ET, smul=\EV, tbc=\Ej, - --# hp2621b - new 2621b with new extended keyboard --# these are closer to the new 26xx series than the other 2621b --hp2621b-kx|hp 2621b with extended keyboard, -- use=newhpkeyboard, use=hp2621b, -+# vt220 Terminfo entry for the Emu emulation, corresponds to -+# emu -term vt220 -+# with NumLock set (to make the keypad transmit kf0-kf9). -+# fixes: add am, xenl, corrected sgr0 -TD -+emu-220|Emu-220 (vt200-7bit mode), -+ am, xenl, xon, -+ cols#80, it#8, lines#24, vt#200, -+ acsc=aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, -+ blink=\E[0;5m, bold=\E[0;1m, civis=\E[?25l, -+ clear=\E[2J\E[H, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[1D, -+ cud=\E[%p1%dB, cud1=\E[1B, cuf=\E[%p1%dC, cuf1=\E[1C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[1A, -+ dch=\E[%p1%dP, dch1=\E[1P, dl=\E[%p1%dM, dl1=\E[1M, -+ ed=\E[0J, el=\E[0K, el1=\E[1K, enacs=\E)0, home=\E[H, ht=^I, -+ hts=\EH, if=/usr/share/tabset/vt300, il=\E[%p1%dL, -+ il1=\E[1L, ind=\ED, is2=\E>\E[?1l\E[?3l\E[4l\E[?7h, -+ kbs=^H, kcmd=\E[29~, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kdch1=\E[3~, kent=\EOM, kf0=\EOp, kf1=\EOq, -+ kf10=\EOl, kf11=\EOm, kf12=\EOn, kf13=\EOP, kf14=\EOQ, -+ kf15=\EOR, kf16=\EOS, kf2=\EOr, kf26=\E[17~, kf27=\E[18~, -+ kf28=\E[19~, kf29=\E[20~, kf3=\EOs, kf30=\E[21~, -+ kf34=\E[26~, kf37=\E[31~, kf38=\E[32~, kf39=\E[33~, -+ kf4=\EOt, kf40=\E[34~, kf5=\EOu, kf6=\EOv, kf7=\EOw, -+ kf8=\EOx, kf9=\EOy, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, -+ knp=\E[6~, kpp=\E[5~, kslt=\E[4~, rc=\E8, rev=\E[0;7m, -+ ri=\EM, rmacs=^O, rmcup=\E>, rmkx=\E>, rmso=\E[m, rmul=\E[m, -+ rs2=\E[4l\E[34l\E[?1l\E[?3l\E[?5l\E[?7h, sc=\E7, -+ sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m, smacs=^N, smcup=\E[?1l\E=, smkx=\E=, -+ smso=\E[0;7m, smul=\E[0;4m, tbc=\E[3g, - --hp2621b-kx-p|hp 2621b with new keyboard & printer, -- use=hp+printer, use=hp2621b-kx, -+#### MVTERM -+# A commercial product, Reportedly a version of Xterm with an OPEN LOOK UI, -+# print interface, ANSI X3.64 colour escape sequences, etc. Newsgroup postings -+# indicate that it emulates more than one terminal, but incompletely. -+# -+# This is adapted from a FreeBSD bug-report by Daniel Rudy <dcrudy@pacbell.net> -+# It is based on vt102's entry, with some subtle differences, but also -+# has status line -+# supports ANSI colors (except for 'op' string) -+# apparently implements alternate screen like xterm -+# does not use padding, of course. -+mvterm|vv100|SwitchTerm aka mvTERM, -+ am, eslok, hs, km, mir, msgr, xenl, -+ colors#8, cols#80, it#8, lines#24, pairs#64, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ dsl=\E[?E, ed=\E[J, el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, -+ fsl=\E[?F, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOy, -+ kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw, -+ op=\E[100m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, -+ rmcup=\E[2J\E[?47l\E8, rmkx=\E[?1l\E>, rmso=\E[m, -+ rmul=\E[m, -+ rs2=\E>\E[1;3;4;5;6l\E[?7h\E[100m\E[m\E[r\E[2J\E[H, -+ sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smcup=\E7\E[?47h, -+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ tsl=\E[?E\E[?%i%p1%dT, use=vt100+fnkeys, - --# Some assumptions are made in the following entries. --# These settings are NOT set up by the initialization strings. -+#### MTERM - # --# Port Configuration --# RecvPace=Xon/Xoff XmitPace=Xon/Xoff StripNulDel=Yes -+# This application is available by email from <mouse@Rodents.Montreal.QC.CA>. - # --# Terminal Configuration --# InhHndShk(G)=Yes InhDC2(H)=Yes --# XmitFnctn(A)=No InhEolWrp=No -+# "mterm -type ansi" sets $TERM to "ansi" -+mterm-ansi|ANSI emulation, -+ am, bw, mir, msgr, -+ it#8, -+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -+ cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -+ dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, -+ el=\E[K, home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=, -+ il=\E[%p1%dL, il1=\E[L, ind=\E[S, indn=\E[%p1%dS, -+ invis=\E[8m, is2=\E)0\017, kbs=^H, nel=\EE, rev=\E[7m, -+ ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmir=\E[4l, rmso=\E[27m, -+ rmul=\E[24m, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m, smacs=^N, smir=\E[4h, smso=\E[7m, smul=\E[4m, -+ vpa=\E[%i%p1%dd, -+# mterm normally sets $TERM to "mterm" -+mterm|mouse-sun|Der Mouse term, -+ am, bw, mir, -+ it#8, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^N, cuf1=^S, -+ cup=\006%p1%d.%p2%d., cuu1=^X, dch1=^Y, dl1=^K, ed=^B, el=^C, -+ home=^P, ht=^I, il1=^A, ind=^U, kbs=^H, ll=^R, nel=^M^U, ri=^W, -+ rmir=^O, rmso=^T, smir=^Q, smso=^V, -+# "mterm -type decansi" sets $TERM to "decansi" - # -+# note: kdch1, kfnd, kslt are in the source code, but do not work -TD -+decansi|ANSI emulation with DEC compatibility hacks, -+ am, mir, msgr, xenl, -+ colors#8, it#8, pairs#64, -+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, -+ dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, enacs=\E(B\E)0, -+ home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=, il=\E[%p1%dL, -+ il1=\E[L, ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, -+ is2=\E)0\E[r\017, kbs=^H, kcub1=\EOD, kcud1=\EOB, -+ kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, kf1=\E[11~, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -+ kf18=\E[32~, kf19=\E[33~, kf2=\E[12~, kf20=\E[34~, -+ kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, kich1=\E[2~, knp=\E[6~, -+ kpp=\E[5~, kslt=\E[4~, nel=\EE, op=\E[0m, rc=\E8, rev=\E[7m, -+ ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, -+ rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, sc=\E7, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m, smacs=^N, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, u6=\E[%i%d;%dR, -+ u7=\E[6n, vpa=\E[%i%p1%dd, -+ -+#### VWM - # --# Hp 2622a & hp2623a display and graphics terminals -+# vwmterm is a terminal emulator written for the VWM console window manager - # --hp2622|hp2622a|hp 2622, -- da, db, -- lm#0, pb#19200, -- is2=\E&dj@\r, use=hp+pfk+cr, use=hp+labels, use=scrhp, -+vwmterm|(vwm term), -+ am, bce, ccc, mir, msgr, npc, xenl, xon, -+ colors#8, pairs#64, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, cub=\E[%p1%dD, -+ cub1=^H, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -+ cuu1=\E[A, cvvis=\E[?25h, dim=\E[2m, ed=\E[J, el=\E[K, -+ home=\E[H, il1=\E[L, ind=^J, invis=\E[8m, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, -+ kend=\E[4~, kf1=\E[[A, kf10=\E[21~, kf11=\E[22~, -+ kf12=\E[23~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, -+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, knp=\E[6~, kpp=\E[5~, rev=\E[7m, rmacs=\E[10m, -+ rmam=\E[?7l, rmcup=\E[?1049l, rs1=\E[H\E[J\E[m\Ec, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, -+ sgr0=\E[0;10m, smacs=\E[11m, smam=\E[?7h, -+ smcup=\E[?1049h, smso=\E[3m, smul=\E[4m, - --# The 2623 is a 2622 with extra graphics hardware. --hp2623|hp2623a|hp 2623, -- use=hp2622, -+#### MGR -+# -+# MGR is a Bell Labs window system lighter-weight than X. -+# These entries describe MGR's xterm-equivalent. -+# They are courtesy of Vincent Broman <broman@nosc.mil> 14 Jan 1997 -+# - --hp2624b-p|hp2624b-4p-p|hewlett packard 2624 B with printer, -- use=hp+printer, use=hp2624, -+mgr|Bellcore MGR (non X) window system terminal emulation, -+ am, km, -+ bel=^G, bold=\E2n, civis=\E9h, clear=^L, cnorm=\Eh, cr=^M, -+ csr=\E%p1%d;%p2%dt, cub1=^H, cud1=\Ef, cuf1=\Er, -+ cup=\E%p2%d;%p1%dM, cuu1=\Eu, cvvis=\E0h, -+ dch=\E%p1%dE$<5>, dch1=\EE, dl=\E%p1%dd$<3*>, -+ dl1=\Ed$<3>, ed=\EC, el=\Ec, hd=\E1;2f, ht=^I, hu=\E1;2u, -+ ich=\E%p1%dA$<5>, ich1=\EA, il=\E%p1%da$<3*>, -+ il1=\Ea$<3>, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, nel=^M^J, rev=\E1n, rmam=\E5S, -+ rmso=\E0n, rmul=\E0n, sgr0=\E0n, smam=\E5s, smso=\E1n, -+ smul=\E4n, -+mgr-sun|Mgr window with Sun keyboard, -+ ka1=\E[214z, ka3=\E[216z, kb2=\E[218z, kc1=\E[220z, -+ kc3=\E[222z, kcpy=\E[197z, kend=\E[220z, kent=\E[250z, -+ kf1=\E[224z, kf10=\E[233z, kf11=\E[234z, kf12=\E[235z, -+ kf2=\E[225z, kf3=\E[226z, kf4=\E[227z, kf5=\E[228z, -+ kf6=\E[229z, kf7=\E[230z, kf8=\E[231z, kf9=\E[232z, -+ kfnd=\E[200z, khlp=\E[207z, khome=\E[214z, knp=\E[222z, -+ kopn=\E[198z, kpp=\E[216z, kund=\E[195z, use=mgr, -+mgr-linux|Mgr window with Linux keyboard, -+ ka1=\E[H, ka3=\E[5~, kb2=\E[G, kc1=\E[Y, kc3=\E[6~, -+ kdch1=\E[3~, kend=\E[4~, kf0=\E[[J, kf1=\E[[A, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, -+ kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, knp=\E[6~, kpp=\E[5~, use=mgr, - --# The hewlett packard B can have an optional extra 6 pages of memory. --hp2624-10p|hp2624a-10p|hp2624b-10p|hewlett packard 2624 B w/ 10 pages of memory, -- lm#240, use=hp2624, -+#### SIMPLETERM -+# st.suckless.org -+# st-0.1.1 -+# -+# Note: the original terminfo description uses leading blank to persuade -+# ncurses to use "st" as its name. Proper fix for that is to use "st" as an -+# alias. -+# -+# Reading the code shows it should work for aixterm 16-colors -+# - added st-16color -+# -+# Using tack: -+# - set eo (erase-overstrike) -+# - set xenl -+# - tbc doesn't work -+# - hts works -+# - cbt doesn't work -+# - shifted cursor-keys send sequences like rxvt -+# - sgr referred to unimplemented "invis" mode. -+# Fixes: add eo and xenl per tack, remove nonworking cbt, hts and tbc, invis -+simpleterm|st| simpleterm, -+ am, eo, mir, msgr, ul, xenl, -+ colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64, -+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, bold=\E[1m, civis=\E[?25l, clear=\E[H\E[2J, -+ cnorm=\E[?12l\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub1=^H, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, -+ home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, kbs=\177, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, knp=\E[6~, kpp=\E[5~, op=\E[37;40m, rc=\E8, -+ rev=\E[7m, rmacs=\E(B, rmso=\E[m, rmul=\E[m, sc=\E7, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, -+ sgr0=\E[0m, smacs=\E(0, smso=\E[7m, smul=\E[4m, -+st-16color|simpleterm with 16-colors, -+ use=ibm+16color, use=simpleterm, -+# 256 colors "works", but when running xterm's test-scripts, some garbage is -+# shown in the titlebar. -+st-256color|simpleterm with 256 colors, -+ ccc@, -+ initc@, use=xterm+256color, use=simpleterm, - --hp2624b-10p-p|hewlett packard 2624 B w/ extra memory & printer, -- lm#240, use=hp2624b-p, -+#### TERMINATOR -+# http://software.jessies.org/terminator/ -+# Tested using their Debian package org.jessies.terminator 6.104.3256 on 64-bit -+# Debian/current -TD (2011/8/20) -+# -+# There are some packaging problems: -+# a) using Java, the program starts off using 50Mb, and climbs from there, -+# up to 114Mb after testing (no scrollback). -+# b) it insists on reinstalling its terminal description in $HOME/.terminfo -+# (two copies, just in case the host happens to be Mac OS X). -+# I deleted this after testing with tack. -+# -+# Issues/features found with tack: -+# a) tbc does not work (implying that hts also is broken). -+# Comparing with the tabs utility shows a problem with the last tabstop on -+# a line. -+# b) has xterm-style shifted function-key strings -+# meta also is used, but control is ignored. -+# c) has xterm-style modifiers for cursor keys (shift, control, shift+control, meta) -+# d) some combinations of shift/control send xterm-style sequences for -+# insert/delete/home/end. -+# e) numeric keypad sends only numbers (compare with vttest). -+# f) meta mode (km) is not implemented. -+# -+# Issues found with ncurses test-program: -+# a) bce is inconsistently implemented -+# b) widths of Unicode values above 256 do not always agree with wcwidth. -+# -+# Checked with vttest, found low degree of compatibility there. -+# -+# Checked with xterm's scripts, found that the 256-color palette is fixed. -+# -+# Fixes: -+# a) add sgr string -+# b) corrected sgr0 to reset alternate character set -+# c) modified smacs/rmacs to use SCS rather than SI/SO -+# d) removed bce -+# e) removed km -+terminator|Terminator no line wrap, -+ eo, mir, msgr, xenl, xon, -+ colors#256, cols#80, it#8, lines#24, lm#0, pairs#32767, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bold=\E[1m, civis=\E[?25l, clear=\E[H\E[2J, -+ cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -+ enacs=\E(B\E)0, flash=^G, home=\E[H, hpa=\E[%i%p1%dG, -+ ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ is1=\E[?47l\E=\E[?1l, -+ is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^H, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -+ kf15=\E[28~, kf16=\E[29~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -+ op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B, -+ rmcup=\E[?47l\E8, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, -+ rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, -+ rs2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E>, -+ s0ds=\E(B, s1ds=\E(0, sc=\E7, setab=\E[48;5;%p1%dm, -+ setaf=\E[38;5;%p1%dm, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;, -+ sgr0=\E[m\E(B, smacs=\E(0, smcup=\E7\E[?47h, smir=\E[4h, -+ smso=\E[7m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, -+ use=xterm+sl-twm, -+ -+#### TERMINOLOGY -+# http://enlightenment.org -+# -+# Tested terminology-0.3.0, using tack and vttest. This is not a vt100 -+# emulator, nor is it compatible with xterm, but it uses a few features from -+# both -TD -+# -+# General comments: -+# cursor does not fill on focus -+# there are pervasive problems with clearing/erasing parts of the screen -+# resizing the window causes it to stop listening to the keyboard -+# tack - -+# doesn't understand vt100 CPR needed for resize -+# no CBT -+# no cvvis -+# has invis -+# no blink -+# uses bce model for colors, but (see below) fails the vttest screens -+# has partial support for 256color feature. -+# tack cursor-keys: -+# ctrl+shift (ignored) -+# 2 shift -+# shift-alt modifier -> shift (2) -+# 3 alt -+# 4 -+# 5 ctrl -+# tack modifiers do not work for fkeys -+# ctrl + khome/kend works - none of the other modifiers do -+# vttest - -+# spits lots of messages from termptyesc.c especially in vttest. -+# no 132-column mode -+# fails menu 1, 2 (definitely not vt100-compatible) -+# primary and -+# secondary report says (perhaps... vt420): \E[>41;285;0c -+# CHA, HPR, VPA, CNL, CPL work -+# BCE with ED/EL - fail -+# BCE with ECH/indexing - fail -+# SD/SU work -+# unlike teken, background light/dark works -+# can set title -+# X10 and Normal mouse work -+# Any-event mouse works -+# Mouse button-event works -+terminology|EFL-based terminal emulator, -+ ccc@, mc5i@, xon@, -+ blink@, ed@, el@, el1@, initc@, invis=\E[8m, kLFT=\E[1;2D, -+ kRIT=\E[1;2C, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ kind=\E[1;2B, kri=\E[1;2A, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<2>, -+ vpa=\E[%i%p1%dd, kDC3=\E[3;3~, kDC4=\E[3;4~, -+ kDC5=\E[3;5~, kDC6=\E[3;6~, kDC7=\E[3;7~, kDN=\E[1;2B, -+ kDN3=\E[1;3B, kDN4=\E[1;4B, kDN5=\E[1;5B, kDN6=\E[1;6B, -+ kDN7=\E[1;7B, kEND5=\E[1;5F, kHOM5=\E[1;5H, -+ kLFT3=\E[1;3D, kLFT4=\E[1;4D, kLFT5=\E[1;5D, -+ kLFT6=\E[1;6D, kLFT7=\E[1;7D, kRIT3=\E[1;3C, -+ kRIT4=\E[1;4C, kRIT5=\E[1;5C, kRIT6=\E[1;6C, -+ kRIT7=\E[1;7C, kUP=\E[1;2A, use=vt100, -+ use=xterm+256color, - --# Color manipulations for HP terminals --hp+color|hp with colors, -- ccc, -- colors#16, ncv#17, pairs#7, -- initp=\E&v%?%p2%{1000}%=%t1%e.%p2%d%;a%?%p3%{1000}%=%t1%e.%p3%d%;b%?%p4%{1000}%=%t1%e.%p4%d%;c%?%p5%{1000}%=%t1%e.%p5%d%;x%?%p6%{1000}%=%t1%e.%p6%d%;y%?%p7%{1000}%=%t1%e.%p7%d%;z%p1%dI, -- oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5I\E&v1b1c6I\E&v1x1y7I, -- op=\E&v0S, scp=\E&v%p1%dS, -+######## UNIX VIRTUAL TERMINALS, VIRTUAL CONSOLES, AND TELNET CLIENTS -+# - --# <is2> sets the screen to be 80 columns wide --hp2397a|hp2397|hewlett packard 2397A color terminal, -- is2=\E&w6f80X, use=memhp, use=hp+labels, use=hp+color, -+# Columbus UNIX virtual terminal. This terminal also appears in -+# UNIX 4.0 and successors as line discipline 1 (?), but is -+# undocumented and does not really work quite right. -+cbunix|cb unix virtual terminal, -+ OTbs, am, da, db, -+ cols#80, lines#24, lm#0, -+ bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\EG%p2%c%p1%c, cuu1=\EA, dch1=\EM, dl1=\EN, ed=\EL, -+ el=\EK, ich1=\EO, il1=\EP, ind=^J, kcub1=\ED, kcud1=\EB, -+ kcuf1=\EC, kcuu1=\EA, khome=\EE, rmso=\Eb^D, rmul=\Eb^A, -+ smso=\Ea^D, smul=\Ea^A, -+# (vremote: removed obsolete ":nl@:" -- esr) -+vremote|virtual remote terminal, -+ am@, -+ cols#79, use=cbunix, - --# HP 700/44 Setup parameters: --# Terminal Mode HP-PCterm --# Inhibit Auto Wrap NO --# Status Line Host Writable --# PC Character Set YES --# Twenty-Five Line Mode YES --# XON/XOFF @128 or 64 (sc) --# Keycode Mode NO or YES (sc) --# Backspace Key BS or BS/DEL -+pty|4bsd pseudo teletype, -+ cup=\EG%p1%{32}%+%c%p2%{32}%+%c, rmso=\Eb$, rmul=\Eb!, -+ smso=\Ea$, smul=\Ea!, use=cbunix, -+ -+#### Emacs -+ -+# The codes supported by the term.el terminal emulation in GNU Emacs 19.30 -+eterm|gnu emacs term.el terminal emulation, -+ am, mir, xenl, -+ cols#80, lines#24, -+ bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, rev=\E[7m, -+ rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, smcup=\E7\E[?47h, smir=\E[4h, smso=\E[7m, -+ smul=\E[4m, -+ -+# The codes supported by the term.el terminal emulation in GNU Emacs 22.2 -+eterm-color|Emacs term.el terminal emulator term-protocol-version 0.96, -+ am, mir, msgr, xenl, -+ colors#8, cols#80, lines#24, pairs#64, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, kbs=\177, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kdch1=\E[3~, kend=\E[4~, khome=\E[1~, kich1=\E[2~, -+ knp=\E[6~, kpp=\E[5~, op=\E[39;49m, rc=\E8, rev=\E[7m, -+ ri=\EM, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, rs1=\Ec, -+ sc=\E7, setab=\E[%p1%'('%+%dm, setaf=\E[%p1%{30}%+%dm, -+ sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m, -+ sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, -+ u6=\E[%i%d;%dR, u7=\E[6n, -+ -+#### Screen -+ -+# Entries for use by the `screen' program by Juergen Weigert, -+# Michael Schroeder, Oliver Laumann. The screen and -+# screen-w entries came with version 3.7.1. The screen2 and screen3 entries -+# come from University of Wisconsin and may be older. -+# (screen: added <cnorm> on ANSI model -- esr) - # --# <is2> sets pcterm; autowrap; 25 lines; pc char set; prog DEL key; --# \E\\? does not turn off keycode mode --# <smsc> sets alternate start/stop; keycode on --hpansi|hp700|hewlett packard 700/44 in HP-PCterm mode, -- am, eo, xenl, xon, -- cols#80, lines#25, -- acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -- bel=^G, cbt=\E[Z, civis=\E[?25l, clear=\E[2J\E[H, -- cnorm=\E[?25h, cr=^M, cub1=\E[D, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -- ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@, il1=\E[L, -- ind=^J, -- is2=\E[44"p\E[?7h\E[>10h\E[>12h\EP1;1|3/7F\E\\, -- kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kend=\E[4~, kf1=\E[17~, kf10=\E[28~, -- kf2=\E[18~, kf3=\E[19~, kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, -- kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, khome=\E[1~, knp=\E[6~, -- kpp=\E[5~, rmam=\E[?7l, -- rmsc=\E[>11l\EP1**x0/11;1/13\E[m\E\\, rmso=\E[m, -- rmul=\E[m, sgr0=\E[m, smam=\E[?7h, -- smsc=\E[>11h\EPO**x0/65;1/67\E\\$<250>, smso=\E[7m, -- smul=\E[4m, xoffc=g, xonc=e, -+# 'screen' defines extensions to termcap. Some are used in its terminal -+# description: -+# G0 (bool) Terminal can deal with ISO 2022 font selection sequences. -+# AX (bool) Does understand ANSI set default fg/bg color -+# (\E[39m / \E[49m). -+# S0 (str) Switch charset 'G0' to the specified charset. -+# E0 (str) Switch charset 'G0' back to standard charset. - # --# (hp2392: copied <rmir> here from hpex -- esr) --hp2392|239x series, -- cols#80, -- cbt=\Ei, cup=\E&a%p1%dy%p2%dC, kf1=\Ep\r, kf2=\Eq\r, -- kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, -- kf8=\Ew\r, khome=\Eh, kind=\EU, knp=\Eu, kpp=\Ev, kri=\EV, -- rmir=\ER, rmul=\E&d@, smir=\EQ, smul=\E&dD, vpa=\E&a%p1%dY, -- use=hpsub, -+# tested with screen 3.09.08 -+screen|VT 100/ANSI X3.64 virtual terminal, -+ OTbs, OTpt, am, km, mir, msgr, xenl, G0, -+ colors#8, cols#80, it#8, lines#24, ncv@, pairs#64, U8#1, -+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[34h\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, -+ cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0, -+ flash=\Eg, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0, kbs=^H, kcbt=\E[Z, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, -+ nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, -+ rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[23m, -+ rmul=\E[24m, rs2=\Ec\E[?1000l\E[?25h, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smcup=\E[?1049h, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m, tbc=\E[3g, E0=\E(B, -+ S0=\E(%p1%c, use=ecma+color, -+# The bce and status-line entries are from screen 3.9.13 (and require some -+# changes to .screenrc). -+screen-bce|VT 100/ANSI X3.64 virtual terminal with bce, -+ bce, -+ ech@, use=screen, -+screen-s|VT 100/ANSI X3.64 virtual terminal with hardstatus line, -+ dsl=\E_\E\\, fsl=\E\\, tsl=\E_, use=screen, - --hpsub|hp terminals -- capability subset, -- am, da, db, mir, xhp, xon, -- lines#24, -- bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, -- cuu1=\EA, dch1=\EP, dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, -- ht=^I, if=/usr/share/tabset/stdcrt, il1=\EL, ind=^J, -- is2=\E&s1A\E<\E&k0\\, kbs=^H, kcub1=\ED, kcud1=\EB, -- kcuf1=\EC, kcuu1=\EA, khome=\Eh, rmkx=\E&s0A, rmso=\E&d@, -- sgr0=\E&d@, smkx=\E&s1A, smso=\E&dB, -+# ====================================================================== -+# Entries for GNU Screen with 16 colors. -+# Those variations permit to benefit from 16 colors palette, and from -+# bold font and blink attribute separated from bright colors. But they -+# are less portable than the generic "screen" 8 color entries: Their -+# usage makes real sense only if the terminals you attach and reattach -+# do all support 16 color palette. - --# hpex: --# May be used for most 24 x 80 hp terminals, --# but has no padding added, so may allow runover in some terminals at high --# baud rates. Will not work for hp2640a or hp2640b terminals, hp98x6 and --# hp98x5 terminal emulators or hp98x6 consoles. --# Adds xy-cursor addressing, vertical cursor addressing, home, --# last line, and underline capabilities. --# --# (hpex: removed memory-lock capabilities ":ml=\El:mu=\Em:", --# moved <rmir> here from hpsub -- esr) --hpex|hp extended capabilites, -- cr=^M, cud1=^J, cup=\E&a%p1%dy%p2%dC, ht=^I, ind=^J, kbs=^H, -- kcub1=^H, kcud1=^J, nel=^M^J, rmir=\ER, rmul=\E&d@, smir=\EQ, -- smul=\E&dD, vpa=\E&a%p1%dY, use=hpsub, -+screen-16color|GNU Screen with 16 colors, -+ use=ibm+16color, use=screen, - --# From: Ville Sulko <Ville.Sulko@bip.atk.tpo.fi>, 05 Aug 1996 --hp2|hpex2|hewlett-packard extended capabilities newer version, -- am, da, db, mir, xhp, -- cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, xmc#0, -- bel=^G, clear=\E&a0y0C\EJ, cr=^M, cub1=^H, cud1=\EB, -- cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, -- dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, -- il1=\EL, ind=^J, kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED, -- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, -- ked=\EJ, kel=\EK, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, -- kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, khts=\E1, kich1=\EQ, -- kil1=\EL, kind=\ES, kll=\EF, knp=\EU, kpp=\EV, kri=\ET, -- krmir=\ER, ktbc=\E3, meml=\El, memu=\Em, -- pfkey=\E&f%p1%dk%p2%l%dL%p2%s, -- pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s, -- pfx=\E&f2a%p1%dk%p2%l%dL%p2%s, -- pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rmir=\ER, rmkx=\E&s0A, -- rmln=\E&j@, rmso=\E&d@, rmul=\E&d@, -- sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;, -- sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smln=\E&jB, smso=\E&dB, -- smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, -+screen-16color-s|GNU Screen with 16 colors and status line, -+ use=ibm+16color, use=screen-s, - --# HP 236 console --# From: <ddavis@ic.berkeley.edu> --hp236|hp236 internal terminal emulator, -- OTbs, am, -- cols#80, lines#24, -- clear=\EF, cnorm=\EDE, cub1=^H, -- cup=\EE%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, cvvis=\EDB, -- dch1=\EJ, dl1=\EH, el=\EK, ich1=\EI, il1=\EG, rmso=\ECI, -- sgr0=\ECI, smso=\EBI, -+screen-16color-bce|GNU Screen with 16 colors and BCE, -+ use=ibm+16color, use=screen-bce, - --# This works on a hp300 console running Utah 4.3 BSD --# From: Craig Leres <leres@okeeffe.berkeley.edu> --hp300h|HP Catseye console, -- OTbs, am, da, db, mir, xhp, -- cols#128, lines#51, lm#0, xmc#0, -- bel=^G, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, cub1=^H, cud1=\EB, -- cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, -- dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, -- if=/usr/share/tabset/stdcrt, il1=\EL, ind=^J, kbs=^H, -- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh, -- rmir=\ER, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@, -- smir=\EQ, smkx=\E&s1A, smso=\E&dB, smul=\E&dD, tbc=\E3, -- vpa=\E&a%p1%dY, --# From: Greg Couch <gregc@ernie.berkeley.edu> --hp9837|hp98720|hp98721|HP 9000/300 workstations, -- OTbs, am, da, db, mir, xhp, -- cols#128, it#8, lines#46, lm#0, -- bel=^G, cbt=\Ei, clear=\E&a0y0C\EJ, cub1=^H, cud1=\EB, -- cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, -- dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, -- il1=\EL, ind=^J, is2=\E&v0m1b0i&j@, kbs=^H, kcub1=\ED, -- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, -- ked=\EJ, kel=\EK, khome=\Eh, kich1=\EQ, kil1=\EL, knp=\EU, -- kpp=\EV, rmir=\ER, rmkx=\E&s0A, rmso=\E&v0S, rmul=\E&d@, -- sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smso=\E&v5S, smul=\E&dD, -- tbc=\E3, vpa=\E&a%p1%dY, --# HP 9845 desktop computer from BRL --# (hp9845: removed unknown capability :gu: -- esr) --hp9845|HP 9845, -- OTbs, am, da, db, eo, mir, xhp, -- cols#80, lines#21, -- OTbc=\ED, clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC, -- cup=\E&a%p2%2dc%p1%2dY, cuu1=\EA, dch1=\EP, dl1=\EM, -- ed=\EJ, el=\EK, if=/usr/share/tabset/std, il1=\EL, -- rmir=\ER, rmso=\E&d@, smir=\EQ, smso=\E&dB, --# From: Charles A. Finnell of MITRE <finnell@mitre.org>, developed 07SEP90 --# (hp98550: replaced /usr/share/tabset/9837 with std because <it#8>,<hts=\E1>; --# added empty <acsc> to avoid warnings re <smacs>/<rmacs> --esr) --hp98550|hp98550a|HP 9000 Series 300 color console, -- OTbs, am, da, db, mir, xhp, -- cols#128, it#8, lines#49, lm#0, -- acsc=, bel=^G, blink=\E&dA, bold=\E&dJ, cbt=\Ei, civis=\E*dR, -- clear=\EH\EJ, cnorm=\E*dQ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, dim=\E&dH, -- dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, -- if=/usr/share/tabset/std, il1=\EL, ind=^J, invis=\E&ds, -- kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -- kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, kf1=\Ep, -- kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, -- khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, kind=\ES, kll=\EF, -- knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, ktbc=\E3, rev=\E&dJ, -- rmacs=^O, rmir=\ER, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, -- sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smso=\E&dJ, -- smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, --# From: Victor Duchovni <vic@fine.princeton.edu> --# (hp700-wy: removed obsolete ":nl=^J:"; --# replaced /usr/share/tabset/hp700-wy with std because <it#8>,<hts=\E1> -- esr) --hp700-wy|HP700/41 emulating wyse30, -- OTbs, am, bw, mir, msgr, -- cols#80, it#8, lines#24, xmc#1, -- cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^V, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\EY, el=\ET$<10/>, home=^^, ht=^I, hts=\E1, -- if=/usr/share/tabset/stdcrt, il1=\EE$<0.7*/>, -- is1=\E~"\EC\Er\E(\EG0\003\E`9\E`1, kbs=\177, kcbt=\EI, -- kclr=^Z, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, ked=\EY, -- kel=\ET, khome=^^, khts=\EI, kich1=\Eq, krmir=\Er, ll=^^^K, -- ri=\Ej, rmir=\Er, rmso=\EG0$<10/>, rmul=\EG0$<10/>, -- sgr0=\EG0$<10/>, smir=\Eq, smso=\EG4$<10/>, -- smul=\EG8$<10/>, tbc=\E0, vpa=\E[%p1%{32}%+%c, --hp70092|hp70092a|hp70092A|HP 700/92, -- am, da, db, xhp, -- cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, -- acsc=0cjgktlrmfn/q\,t5u6v8w7x., bel=^G, blink=\E&dA, -- bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, cub1=^H, -- cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, -- dch1=\EP, dim=\E&dH, dl1=\EM, el=\EK, hpa=\E&a%p1%dC, ht=^I, -- hts=\E1, il1=\EL, kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED, -- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, -- ked=\EJ, kel=\EK, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, -- kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, khts=\E1, kich1=\EQ, -- kil1=\EL, kind=\ES, kll=\EF, knp=\EU, kpp=\EV, kri=\ET, -- krmir=\ER, ktbc=\E3, rev=\E&dB, ri=\ET, rmacs=^O, rmir=\ER, -- rmkx=\E&s0A, rmln=\E&j@, rmso=\E&d@, rmul=\E&d@, -- sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smln=\E&jB, -- smso=\E&dJ, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, -+screen-16color-bce-s|GNU Screen with 16 colors, BCE, and status line, -+ bce, use=ibm+16color, use=screen-s, - --bobcat|sbobcat|HP 9000 model 300 console, -- am, da, db, mir, xhp, -- cols#128, it#8, lines#47, xmc#0, -- cbt=\Ei, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, -- cup=\E&a%p1%dy%p2%dC$<6/>, cuu1=\EA, dch1=\EP, -- dl1=\EM$<10*/>, ed=\EJ, el=\EK, hpa=\E&a%p1%dC$<6/>, ht=^I, -- il1=\EL$<10*/>, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, -- kcuf1=\EC, kcuu1=\EA, khome=\Eh, nel=^M^J, rmir=\ER, -- rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@, smir=\EQ, -- smkx=\E&s1A, smso=\E&dB, smul=\E&dD, vpa=\E&a%p1%dY$<6/>, --gator-t|HP 9000 model 237 emulating extra-tall AAA, -- lines#94, use=gator, --gator|HP 9000 model 237 emulating AAA, -- bw, km, mir, ul, -- cols#128, it#8, lines#47, -- bel=^G, cbt=\E[Z, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\EM, -- dch=\E[%p1%dP$<4/>, dch1=\E[P, dl=\E[%p1%dM$<1*/>, -- dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, hpa=\E[%i%p1%d`, -- ht=^I, ich=\E[%p1%d@$<4/>, ich1=\E[@, il=\E[%p1%dL$<1*/>, -- il1=\E[L, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, -- rep=%p1%c\E[%p2%db$<1*/>, rev=\E[7m, rmso=\E[m, -- rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, --gator-52|HP 9000 model 237 emulating VT52, -- cols#128, lines#47, use=vt52, --gator-52t|HP 9000 model 237 emulating extra-tall VT52, -- lines#94, use=gator-52, -+# ====================================================================== -+# Entries for GNU Screen 4.02 with --enable-colors256. - --#### Honeywell-Bull --# --# From: Michael Haardt <michael@gandalf.moria> 11 Jan 93 --# -+screen-256color|GNU Screen with 256 colors, -+ ccc@, -+ initc@, use=xterm+256color, use=screen, - --# Honeywell Bull terminal. Its cursor and function keys send single --# control characters and it has standout/underline glitch. Most programs --# do not like these features/bugs. Visual bell is realized by flashing the --# "keyboard locked" LED. --dku7003-dumb|Honeywell Bull DKU 7003 dumb mode, -- cols#80, lines#25, -- clear=^]^_, cr=^M, cub1=^Y, cud1=^K, cuf1=^X, -- cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, ed=^_, el=\E[K, -- flash=\E[2h\E[2l, home=^], ht=^I, ind=^J, kbs=^H, kcub1=^Y, -- kcud1=^K, kcuf1=^X, kcuu1=^Z, khome=^], nel=^M^J, --dku7003|Honeywell Bull DKU 7003 all features described, -- msgr, -- xmc#1, -- blink=\E[5m, bold=\E[7m, dim=\E[2m, rev=\E[7m, rmso=\E[m, -- rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, -- use=dku7003-dumb, -+screen-256color-s|GNU Screen with 256 colors and status line, -+ ccc@, -+ initc@, use=xterm+256color, use=screen-s, - --#### Lear-Siegler (adm) --# --# These guys are long since out of the terminals business, but --# in 1995 many current terminals still have an adm type as one of their --# emulations (usually their stupidest, and usually labeled adm3, though --# these `adm3' emulations normally have adm3a+ capabilities). --# --# WARNING: Some early ADM terminals (including the ADM3 and ADM5) had a --# `diagnostic feature' that sending them a ^G while pin 22 (`Ring Indicator') --# was being held to ground would trigger a send of the top line on the screen. --# A quick fix might be to drop back to a cheesy 4-wire cable with pin 22 --# hanging in the air. (Thanks to Eric Fischer, <eric@fudge.uchicago.edu>, --# for clearing up this point.) -+screen-256color-bce|GNU Screen with 256 colors and BCE, -+ ccc@, -+ initc@, use=xterm+256color, use=screen-bce, - --adm1a|adm1|lsi adm1a, -- am, -- cols#80, lines#24, -- bel=^G, clear=\E;$<1>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, home=^^, -- ind=^J, --adm2|lsi adm2, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\EY, el=\ET, home=^^, ich1=\EQ, il1=\EE, ind=^J, -- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, --# (adm3: removed obsolete ":ma=^K^P:" -- esr) --adm3|lsi adm3, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, ind=^J, --# The following ADM-3A switch settings are assumed for normal operation: --# SPACE U/L_DISP CLR_SCRN 24_LINE --# CUR_CTL LC_EN AUTO_NL FDX --# Other switches may be set for operator convenience or communication --# requirements. I recommend --# DISABLE_KB_LOCK LOCAL_OFF 103 202_OFF --# ETX_OFF EOT_OFF --# Most of these terminals required an option ROM to support lower case display. --# Open the case and look at the motherboard; if you see an open 24-pin DIP --# socket, you may be out of luck. -+screen-256color-bce-s|GNU Screen with 256 colors, BCE, and status line, -+ bce, ccc@, -+ initc@, use=xterm+256color, use=screen-s, -+ -+# ====================================================================== -+ -+# Read the fine manpage: -+# When screen tries to figure out a terminal name for -+# itself, it first looks for an entry named "screen.<term>", -+# where <term> is the contents of your $TERM variable. If -+# no such entry exists, screen tries "screen" (or "screen-w" -+# if the terminal is wide (132 cols or more)). If even this -+# entry cannot be found, "vt100" is used as a substitute. - # --# (adm3a: some capabilities merged in from BRl entry -- esr) --adm3a|lsi adm3a, -- OTbs, am, -- cols#80, lines#24, -- OTma=^K^P, OTnl=^J, bel=^G, clear=\032$<1/>, cr=^M, cub1=^H, -- cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=^K, home=^^, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^L, -- kcuu1=^K, rs2=^N, --adm3a+|adm3a plus, -- kbs=^H, use=adm3a, --# (adm5: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" & duplicate ":do=^J:" -- esr) --adm5|lsi adm5, -- xmc#1, -- bel=^G, cr=^M, cud1=^J, ed=\EY, el=\ET, kbs=^H, khome=^^, -- rmso=\EG, smso=\EG, use=adm3a+, --# A lot of terminals other than adm11s use these. Wherever you see --# use=adm+sgr with some of its capabilities disabled, try the --# disabled ones. They may well work but not have been documented or --# expressed in the using entry. We'd like to cook up an <sgr> but the --# <rmacs>/<smacs> sequences of the using entries vary too much. --adm+sgr|adm style highlight capabilities, -- invis=\EG1, rev=\EG4, rmso=\EG0, rmul=\EG0, sgr0=\EG0, -- smso=\EG4, smul=\EG8, --# LSI ADM-11 from George William Hartwig, Jr. <geo@BRL-TGR.ARPA> via BRL --# Status line additions from Stephen J. Muir <stephen%comp.lancs.ac.uk@ucl-cs> --# <khome> from <stephen%comp.lancs.ac.uk@ucl-cs.arpa>. <clear> could also --# be ^Z, according to his entry. --# (adm11: <smul>=\EG4 was obviously erroneous because it also said --# <rev>=\EG4. Looking at other ADMs confirms this -- esr) --adm11|LSI ADM-11, -- OTbs, am, hs, -- OTkn#8, cols#80, lines#24, -- OTnl=^J, bel=^G, blink=\EG2, clear=\E*, cr=^M, cub1=^H, -- cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=^K, dsl=\Eh, ed=\EY, el=\ET, fsl=\E(\r, home=^^, ht=^I, -- kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r, -- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -- kf7=^AF\r, kf8=^AG\r, khome=^^, nel=^M^J, tsl=\EF\E), -- use=adm+sgr, --# From: Andrew Scott Beals <bandy@lll-crg.ARPA> --# Corrected by Olaf Siebert <rhialto@polder.ubc.kun.nl>, 11 May 1995 --# Supervisor mode info by Ari Wuolle, <awuolle@delta.hut.fi>, 27 Aug 1996 --# (adm12: removed obsolete ":kn:ma=j^Jk^P^K^Pl ^R^L^L :". This formerly had --# <is2>=\Eq but that looked wrong; this <is2> is from Dave Yost <esquire!yost> --# via BRL. That entry asserted <xmc#1>, but I've left that out because --# neither earlier nor later ADMSs have it -- esr) -+# Notwithstanding the manpage, screen uses its own notion of the termcap -+# and some keys from "screen.<term>" are ignored. Here is an entry which -+# covers those (tested with screen 4.00.02) -TD -+screen+fkeys|function-keys according to screen, -+ kend=\E[4~, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kfnd@, -+ khome=\E[1~, kslt@, - # --# You will need to get into the supervisor setup before you can set --# baudrate etc. for your ADM-12+. Press Shift-Ctrl-Setup and you should --# see a lot more setup options. -+# Here are a few customized entries which are useful -TD - # --# While in supervisor setup you can also use following codes: -+# Notes: -+# (a) screen does not support invis. -+# (b) screen's implementation of bw is incorrect according to tack. -+# (c) screen appears to hardcode the strings for khome/kend, making it -+# necessary to override the "use=" clause's values (screen+fkeys). -+# (d) screen sets $TERMCAP to a termcap-formatted copy of the 'screen' entry, -+# which is NOT the same as the terminfo screen.<term>. -+# (e) when screen finds one of these customized entries, it sets $TERM to -+# match. Hence, no "screen.xterm" entry is provided, since that would -+# create heartburn for people running remote xterm's. - # --# Ctrl-P Personality character selections (configure for example what --# arrow keys send, if I recall correctly) --# Ctrl-T tabs 1-80 use left&right to move and up to set and --# Ctrl-V tabs 81-158 down to clear tab. Shift-Ctrl-M sets right margin at cursor --# Ctrl-B Binary setup (probably not needed. I think that everything can --# be set using normal setup) --# Ctrl-A Answerback mode (enter answerback message) --# Ctrl-U User friendly mode (normal setup) --# Ctrl-D Defaults entire setup and function keys from EPROM tables --# Ctrl-S Save both setup and functions keys. Takes from 6 to 10 seconds. --# Ctrl-R Reads both setup and functions keys from NVM. --# Shift-Ctrl-X Unlock keyboard and cancel received X-OFF status --# --# ADM-12+ supports hardware handshaking, but it is DTR/CTS as opposed to --# RTS/CTS used nowadays with virtually every modem and computer. 19200 --# bps works fine with hardware flow control. --# --# The following null-modem cable should fix this and enable you to use --# RTS/CTS handshaking (which Linux supports, use CRTSCTS setting). Also --# set ADM-12+ for DTR handshaking from supervisor setup. -+# xterm (-xfree86 or -r6) does not normally support kIC, kNXT and kPRV -+# since the default translations override the built-in keycode -+# translation. They are suppressed here to show what is tested by tack. -+screen.xterm-xfree86|screen.xterm-new|screen customized for modern xterm, -+ bce@, bw, -+ invis@, kIC@, kNXT@, kPRV@, meml@, memu@, -+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m, -+ E3@, use=screen+fkeys, use=xterm-new, -+# xterm-r6 does not really support khome/kend unless it is propped up by -+# the translations resource. -+screen.xterm-r6|screen customized for X11R6 xterm, -+ bw, use=screen+fkeys, use=xterm-r6, -+# Color applications running in screen and TeraTerm do not play well together -+# on Solaris because Sun's curses implementation gets confused. -+screen.teraterm|disable ncv in teraterm, -+ ncv#127, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ use=screen+fkeys, use=screen, -+# Other terminals -+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=vt220+keypad, use=screen, -+screen.Eterm|screen in Eterm, -+ use=screen+fkeys, use=Eterm, -+screen.mrxvt|screen in mrxvt, -+ use=screen+fkeys, use=mrxvt, -+screen.vte|screen in any VTE-based terminal, -+ use=screen+fkeys, use=vte, -+screen.gnome|screen in GNOME Terminal, -+ use=screen+fkeys, use=gnome, -+screen.konsole|screen in KDE console window, -+ use=screen+fkeys, use=konsole, -+# fix the backspace key -+screen.linux|screen in linux console, -+ bw, -+ kbs=\177, kcbt@, use=screen+fkeys, use=screen, -+screen.mlterm|screen in mlterm, -+ use=screen+fkeys, use=mlterm, -+ -+# The default "screen" entry is reasonably portable, but not optimal for the -+# most widely-used terminal emulators. The "bce" capability is supported in -+# screen since 3.9.13, and when used, will require fewer characters to be sent -+# to the terminal for updates. - # --# PC Serial ADM-12+ --# -------- ------- --# 2 - 3 --# 3 - 2 --# 4 - 5 --# 5 - 20 --# 6,8 - 4 --# 7 - 7 --# 20 - 6,8 -+# If you are using only terminals which support bce, then you can use this -+# feature in your screen configuration. - # --adm12|lsi adm12, -- OTbs, OTpt, am, mir, -- OTug#1, cols#80, it#8, lines#24, -- bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\EY, el=\ET, home=^^, hts=\E1, ich1=\EQ, il1=\EE, -- is2=\E0 \E1 \E1 \E1 \E1 \E1 \E1 \E1 \E1, -- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r, -- kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r, -- kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, rmir=\Er, smir=\Eq, tbc=\E0, -- use=adm+sgr, --# (adm20: removed obsolete ":kn#7:" -- esr) --adm20|lear siegler adm20, -- OTbs, am, -+# Adding these lines to your ".screenrc" file will allow using these customized -+# entries: -+# term screen-bce -+# bce on -+# defbce on -+screen-bce.xterm-new|screen optimized for modern xterm, -+ bce, -+ ech@, use=screen.xterm-new, -+screen-bce.rxvt|screen optimized for rxvt, -+ bce, -+ ech@, use=screen.rxvt, -+screen-bce.Eterm|screen optimized for Eterm, -+ bce, -+ ech@, use=screen.Eterm, -+screen-bce.mrxvt|screen optimized for mrxvt, -+ bce, -+ ech@, use=screen.mrxvt, -+screen-bce.gnome|screen optimized for GNOME-Terminal, -+ bce, -+ ech@, use=screen.gnome, -+screen-bce.konsole|screen optimized for KDE console window, -+ bce, -+ ech@, use=screen.konsole, -+screen-bce.linux|screen optimized for linux console, -+ bce, -+ ech@, use=screen.linux, -+screen-bce.mlterm|screen optimized for mlterm, -+ bce, -+ ech@, use=screen.mlterm, -+ -+screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols, -+ cols#132, use=screen, -+ -+screen2|old VT 100/ANSI X3.64 virtual terminal, - cols#80, it#8, lines#24, -- bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cuf1=^L, -- cup=\E=%i%p2%{31}%+%c%p1%{31}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\EY, el=\ET, home=^^, ht=^I, ich1=\EQ, il1=\EE, -- kf1=^A, kf2=^B, kf3=^W, kf4=^D, kf5=^E, kf6=^X, kf7=^Z, rmso=\E(, -- sgr0=\E(, smso=\E), --adm21|lear siegler adm21, -- xmc#1, -- bel=^G, cr=^M, cud1=^J, dch1=\EW, dl1=30*\ER, ed=\EY, el=\ET, -- ich1=\EQ, il1=30*\EE, ind=^J, invis@, kbs=^H, kcub1=^H, -- kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, use=adm+sgr, -- use=adm3a, --# (adm22: ":em=:" was an obvious typo for ":ei=:"; also, --# removed obsolete ":kn#7:ma=j^Jk^P^K^Pl ^R^L^L :"; --# removed bogus-looking \200 from before <cup>. -- esr) --adm22|lsi adm22, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\Ey, el=\Et, home=^^, ht=\Ei, ich1=\EQ, il1=\EE, -- is2=\E%\014\014\014\016\003\0\003\002\003\002\0\0\0\0\0\0\0\0\0\0\0, -- kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r, -- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -- kf7=^AF\r, khome=^^, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, -- lf6=F6, lf7=F7, rmso=\E(, sgr0=\E(, smso=\E), --# ADM 31 DIP Switches --# --# This information comes from two versions of the manual for the --# Lear-Siegler ADM 31. --# --# Main board: --# rear of case --# +-||||-------------------------------------+ --# + S1S2 ||S + --# + ||3 + --# + + --# + ||S + --# + ||4 + --# + + --# + + --# + + --# + + --# + + --# +-+ +-+ --# + + --# + S5 S6 S7 + --# + == == == + --# +----------------------------------------------+ --# front of case (keyboard) --# --# S1 - Data Rate - Modem --# S2 - Data Rate - Printer --# ------------------------ --# Data Rate Setting --# ------------------- --# 50 0 0 0 0 --# 75 1 0 0 0 --# 110 0 1 0 0 --# 134.5 1 1 0 0 --# 150 0 0 1 0 --# 300 1 0 1 0 --# 600 0 1 1 0 --# 1200 1 1 1 0 --# 1800 0 0 0 1 --# 2000 1 0 0 1 --# 2400 0 1 0 1 --# 3600 1 1 0 1 --# 4800 0 0 1 1 --# 7200 1 0 1 1 --# 9600 0 1 1 1 --# x 1 1 1 1 --# --# S3 - Interface/Printer/Attributes --# --------------------------------- --# Printer Busy Control --# sw1 sw2 sw3 --# --------------- --# off off off Busy not active, CD disabled --# off off on Busy not active, CD enabled --# off on off Busy active on J5-20, CD disabled --# on off off Busy active on J5-19, CD disabled - Factory Set. --# on off on Busy active on J5-19, CD enabled -+ cbt=\E[Z, clear=\E[2J\E[H, cr=^M, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=, il=\E[%p1%dL, -+ il1=\E[L, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -+ kcuu1=\EA, kf0=\E~, kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV, -+ kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\E0I, khome=\EH, -+ nel=^M^J, rc=\E8, ri=\EM, rmir=\E[4l, rmso=\E[23m, -+ rmul=\E[24m, rs1=\Ec, sc=\E7, sgr0=\E[m, smir=\E[4h, -+ smso=\E[3m, smul=\E[4m, tbc=\E[3g, -+# (screen3: removed unknown ":xv:LP:G0:" -- esr) -+screen3|older VT 100/ANSI X3.64 virtual terminal, -+ km, mir, msgr, -+ cols#80, it#8, lines#24, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -+ cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0, kbs=^H, kcub1=\EOD, -+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, -+ kf3=\EOR, kf4=\EOS, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, -+ rmir=\E[4l, rmkx=\E>, rmso=\E[23m, rmul=\E[24m, rs1=\Ec, -+ sc=\E7, sgr0=\E[m, smir=\E[4h, smkx=\E=, smso=\E[3m, -+ smul=\E[4m, tbc=\E[3g, -+ -+#### NCSA Telnet -+ -+# Francesco Potorti <F.Potorti@cnuce.cnr.it>: -+# NCSA telnet is one of the most used telnet clients for the Macintosh. It has -+# been maintained until recently by the National Center for Supercomputer -+# Applications, and it is feature rich, stable and free. It can be downloaded -+# from www.ncsa.edu. This terminfo description file is based on xterm-vt220, -+# xterm+sl, and the docs at NCSA. It works well. - # --# sw4 Used in conjuction with S4 for comm interface control - Fact 0 -+# NCSA Telnet 2.6 for Macintosh in vt220 8-bit emulation mode -+# The terminal options should be set as follows: -+# Xterm sequences ON -+# use VT wrap mode ON -+# use Emacs arrow keys OFF -+# CTRL-COMND is Emacs meta ON -+# 8 bit mode ON -+# answerback string: "ncsa-vt220-8" -+# setup keys: all disabled - # --# sw5 Secondary Channel Control (Hardware implementation only) - Fact 0 -+# Application mode is not used. - # --# sw6 ON enables printer BUSY active LOW - Factory Setting --# OFF enables printer BUSY active HIGH - If set to this, ADM31 senses -+# Other special mappings: -+# Apple VT220 -+# HELP Find -+# HOME Insert here -+# PAGEUP Remove -+# DEL Select -+# END Prev Screen -+# PAGEDOWN Next Screen - # --# sw7 ON - steady cursor - Factory Setting --# OFF - blinking cursor -+# Though it supports ANSI color, NCSA Telnet uses color to represent blinking -+# text. - # --# sw8 ON causes selected attribute character to be displayed --# OFF causes SPACE to be displayed instead - Factory Setting --# --# S4 - Interface --# -------------- --# Modem Interface --# S3 S4 S4 S4 S4 --# sw4 sw1 sw2 sw3 sw4 --# --------------------------- --# OFF ON OFF ON OFF Enable RS-232C interface, Direct Connect and --# Current Loop disabled - Factory Setting --# ON ON OFF ON OFF Enable Current Loop interface, Direct Connect --# disabled --# OFF OFF ON OFF ON Enable Direct Connect interface, RS-232C and --# Current Loop Disabled --# --# sw5 ON disables dot stretching mode - Factory Setting --# OFF enables dot stretching mode --# sw6 ON enables blanking function --# OFF enables underline function - Factory Setting --# sw7 ON causes NULLS to be displayed as NULLS --# OFF causes NULLS to be displayed as SPACES - Factory Setting --# --# S5 - Word Structure --# ------------------- --# sw1 ON enables BREAK key - Factory Setting --# OFF disables BREAK key --# sw2 ON selects 50Hz monitor refresh rate --# OFF selects 60Hz monitor refresh rate - Factory Setting --# --# Modem Port Selection --# sw3 sw4 sw5 --# --------------- --# ON ON ON Selects 7 DATA bits, even parity, 2 STOP bits --# OFF ON ON Selects 7 DATA bits, odd parity, 2 STOP bits --# ON OFF ON Selects 7 DATA bits, even parity, 1 STOP bit - Factory Set. --# OFF OFF ON Selects 7 DATA bits, odd parity, 1 STOP bit --# ON ON OFF Selects 8 DATA bits, no parity, 2 STOP bits --# OFF ON OFF Selects 8 DATA bits, no parity, 1 STOP bit --# ON OFF OFF Selects 8 DATA bits, even parity, 1 STOP bit --# OFF OFF OFF Selects 8 DATA bits, odd parity, 1 STOP bit --# --# sw6 ON sends bit 8 a 1 (mark) --# OFF sends bit 8 as 0 (space) - Factory Setting --# sw7 ON selects Block Mode --# OFF selects Conversation Mode - Factory Setting --# sw8 ON selects Full Duplex operation --# OFF selects Half Duplex operation - Factory Setting --# --# S6 - Printer --# ------------ --# sw1, sw2, sw6, sw7 Reserved - Factory 0 --# --# Printer Port Selection --# same as Modem above, bit 8 (when 8 DATA bits) is always = 0 --# --# sw8 ON enables Printer Port --# OFF disables Printer Port - Factory Setting --# --# S7 - Polling Address --# -------------------- --# sw1-7 Establish ASCII character which designates terminal polling address --# ON = logic 0 --# OFF = logic 1 - Factory Setting --# sw8 ON enables Polling Option --# OFF disables Polling Option - Factory Setting -+# The status-line manipulation is a mapping of the xterm-compatible control -+# sequences for setting the window-title. So you must use tsl and fsl in -+# pairs, since the latter ends the string that is loaded to the window-title. -+ncsa-m|ncsa-vt220-8|NCSA Telnet 2.6 for Macintosh in vt220-8 mode, -+ am, km, mir, msgr, xenl, -+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, el1=\E[1K, enacs=\E)0, flash=\E[?5h\E[?5l, -+ home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ if=/usr/share/tabset/vt100, il=\E[%p1%dL, il1=\E[L, -+ ind=\n$<150*>, -+ is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>, kbs=^H, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[4~, kend=\E[5~, kf1=\E[17~, kf10=\E[28~, -+ kf11=\E[29~, kf12=\E[31~, kf13=\E[32~, kf14=\E[33~, -+ kf15=\E[34~, kf2=\E[18, kf3=\E[19~, kf4=\E[20~, kf5=\E[21~, -+ kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, khlp=\E[1~, -+ khome=\E[2~, knp=\E[6~, kpp=\E[3~, mc4=\E[4i, mc5=\E[5i, -+ rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt100, ri=\EM, -+ rmacs=\E(B, rmam=\E[?7l, rmcup=\E[2J\E8, rmir=\E[4l, -+ rmso=\E[27m, rmul=\E[24m, -+ rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;4;6l\E[4l\E>, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;, -+ sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smcup=\E7, -+ smir=\E[4h, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ u8=\E[?62;1;6c, use=xterm+sl, use=ansi+enq, -+ncsa|NCSA Telnet 2.7 for Macintosh in vt220-8 mode, -+ use=ncsa-m, use=klone+color, -+ncsa-ns|NCSA Telnet 2.7 for Macintosh in vt220-8 mode, -+ hs@, -+ dsl@, fsl@, tsl@, use=ncsa, -+ncsa-m-ns|NCSA Telnet 2.6 for Macintosh in vt220-8 mode, -+ hs@, -+ dsl@, fsl@, tsl@, use=ncsa-m, -+# alternate -TD: -+# The documented function-key mapping refers to the Apple Extended Keyboard -+# (e.g., NCSA Telnet's F1 corresponds to a VT220 F6). We use the VT220-style -+# codes, however, since the numeric keypad (VT100) PF1-PF4 are available on -+# some keyboards and many applications require these as F1-F4. - # -+ncsa-vt220|NCSA Telnet using vt220-compatible function keys, -+ kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, -+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, -+ kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, use=ncsa, -+ -+#### Pilot Pro Palm-Top - # --# On some older adm31s, S4 does not exist, and S5-sw6 is not defined. -+# Termcap for Top Gun Telnet and SSH on the Palm Pilot. -+# http://www.ai/~iang/TGssh/ -+pilot|tgtelnet|Top Gun Telnet on the Palm Pilot Professional, -+ OTbs, am, xenl, -+ cols#39, lines#16, -+ bel=^G, clear=\Ec, cr=^M, cub1=^H, cud1=^J, -+ cup=\Em%p1%{32}%+%c%p2%{32}%+%c, home=\Em\s\s, ht=^I, -+ ind=^J, kbs=^H, kcub1=^H, kcud1=^J, knp=^L, kpp=^K, nel=\Em~\s, -+ rmso=\EB, smso=\Eb, -+ -+# From: Federico Bianchi <bianchi@www.arte.unipi.it> -+# These entries are for the Embeddable Linux Kernel System (ELKS) -+# project - an heavily stripped down Linux to be run on 16 bit -+# boxes or, eventually, to be used in embedded systems - and have been -+# adapted from the stock ELKS termcap. The project itself looks stalled, -+# and the latest improvements I know of date back to March 2000. - # --# This adm31 entry uses underline as the standout mode. --# If the adm31 gives you trouble with standout mode, check the DIP switch in --# position 6, bank @c11, 25% from back end of the circuit board. Should be --# OFF. If there is no such switch, you have an old adm31 and must use oadm31. --# (adm31: removed obsolete ":ma=j^Jk^P^K^Pl ^R^L^L :" -- esr) --adm31|lsi adm31 with sw6 set for underline mode, -- OTbs, am, mir, -- cols#80, lines#24, -- bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\EY, el=\ET, home=^^, il1=\EE, ind=^J, is2=\Eu\E0, -- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r, -- kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r, -- kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, rmir=\Er, rmso=\EG0, -- rmul=\EG0, sgr0=\EG0, smir=\Eq, smso=\EG1, smul=\EG1, --adm31-old|o31|old adm31, -- rmul@, smso=\EG4, smul@, use=adm31, --# LSI ADM-36 from Col. George L. Sicherman <gloria!colonel> via BRL --adm36|LSI ADM36, -- OTbs, OTpt, -- OTkn#4, -- if=/usr/share/tabset/vt100, -- is2=\E<\E>\E[6;?2;?7;?8h\E[4;20;?1;?3;?4;?5;?6;?18;?19l, -- use=vt100, --# (adm42: removed obsolete ":ma=^K^P:" -- esr) --adm42|lsi adm42, -+# To cope with the ELKS dumb console I added an "elks-glasstty" entry; -+# as an added bonus, this deals with all the capabilities common to -+# both VT52 and ANSI (or, eventually, "special") modes. -+ -+elks-glasstty|ELKS glass-TTY capabilities, - OTbs, am, -- cols#80, lines#24, -- bel=^G, cbt=\EI, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- cvvis=\EC\E3 \E3(, dch1=\EW, dl1=\ER, ed=\EY, el=\ET, ht=^I, -- il1=\EE$<270>, ind=^J, invis@, ip=$<6*>, kcub1=^H, kcud1=^J, -- kcuf1=^L, kcuu1=^K, khome=^^, pad=\177, rmir=\Er, rmul@, -- smir=\Eq, smul@, use=adm+sgr, --# The following termcap for the Lear Siegler ADM-42 leaves the --# "system line" at the bottom of the screen blank (for those who --# find it distracting otherwise) --adm42-ns|lsi adm-42 with no system line, -- cbt=\EI\EF \011, clear=\E;\EF \011, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<6>\EF \011, -- dch1=\EW\EF \011, dl1=\ER\EF \011, ed=\EY\EF \011, -- el=\ET\EF \011, il1=\EE\EF \011, rmir=\Er\EF \011, -- smir=\Eq\EF \011, use=adm42, --# ADM 1178 terminal -- rather like an ADM-42. Manual is dated March 1 1985. --# The insert mode of this terminal is commented out because it's broken for our --# purposes in that it will shift the position of every character on the page, --# not just the cursor line! --# From: Michael Driscoll <fenris@lightspeed.net> 10 July 1996 --adm1178|1178|lsi adm1178, -- am, -- cols#80, lines#24, xmc#1, -- bel=^G, bold=\E(, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J, -- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- cvvis=\EC\E3 \E3(, dch1=\EW, dl1=\ER, ed=\EY, el=\ET, -- home=^^, ht=^I, il1=\EE, ind=^J, ip=$<6*/>, kbs=^H, kcub1=^H, -- kcud1=^J, nel=^M^J, pad=\177, rev=\EG4, rmso=\EG0, rmul=\EG0, -- sgr0=\E), smso=\EG4, smul=\EG1, -+ cols#80, it#8, lines#25, -+ bel=^G, cr=^M, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, -+ nel=^M^J, - --#### Prime --# --# Yes, Prime made terminals. These entries were posted by Kevin J. Cummings --# <cummings@primerd.prime.com> on 14 Dec 1992 and lightly edited by esr. --# Prime merged with ComputerVision in the late 1980s; you can reach them at: --# --# ComputerVision Services --# 500 Old Connecticut Path --# Framingham, Mass. --# -+elks-vt52|ELKS vt52 console, -+ clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, el=\EK, -+ home=\EH, use=elks-glasstty, - --# Standout mode is dim reverse-video. --pt100|pt200|wren|fenix|prime pt100/pt200, -- am, bw, mir, msgr, -- cols#80, it#8, lines#24, -- cbt=\E[Z, clear=\E?, cr=^M, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E0%p1%{33}%+%c%p2%{33}%+%c, cuu=\E[%p1%dA, -- cuu1=\EM, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl1=\E[M, -- ed=\E[J\E[r, el=\E[K\E[t, flash=\E$$<200/>\E$P, -- home=\E$B, ht=^I, il1=\E[L\E[t, ind=^J, kbs=^H, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E$A, nel=^M^J, -- rmcup=, rmir=\E[4l, rmkx=\E[>13l, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, -- smcup=\E[>1l\E[>2l\E[>16l\E[4l\E[>9l\E[20l\E[>3l\E[>7h\E[>12l\E[1Q, -- smir=\E[4h, smkx=\E[>13h, smso=\E[2;7m, smul=\E[4m, --pt100w|pt200w|wrenw|fenixw|prime pt100/pt200 in 132-column mode, -- cols#132, -- cup=\E[%i%p1%d;%p2%dH, use=pt100, --pt250|Prime PT250, -- rmso@, smso@, use=pt100, --pt250w|Prime PT250 in 132-column mode, -- rmso@, smso@, use=pt100w, -+elks-ansi|ELKS ANSI console, -+ clear=\E[H\E[2J, cub1=\E[D, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, -+ rmso=\E[m, smso=\E[7m, use=elks-glasstty, - --#### Qume (qvt) -+# As a matter of fact, ELKS 0.0.83 on PCs defaults to ANSI emulation -+# instead of VT52, but the "elks" entry still refers to the latter. -+ -+elks|default ELKS console, -+ use=elks-vt52, -+ -+# Project SIBO (for Psion 3 palmtops) console is identical to the ELKS -+# one but in screen size -+ -+sibo|ELKS SIBO console, -+ cols#61, it#8, lines#20, use=elks-vt52, -+ -+######## COMMERCIAL WORKSTATION CONSOLES - # --# Qume, Inc. --# 3475-A North 1st Street --# San Jose CA 95134 --# Vox: (800)-457-4447 --# Fax: (408)-473-1510 --# Net: josed@techsupp.wyse.com (Jose D'Oliveira) -+ -+#### Alpha consoles - # --# Qume was bought by Wyse, but still (as of early 1995) has its own support --# group and production division. --# --# Discontinued Qume models: --# --# The qvt101 and qvt102 listed here are long obsolete; so is the qvt101+ --# built to replace them, and a qvt119+ which was a 101+ with available wide --# mode (132 columns). There was a qvt103 which added vt100/vt131 emulations --# and an ANSI-compatible qvt203 that replaced it. Qume started producing --# ANSI-compatible terminals with the qvt323 and qvt61. --# --# Current Qume models (as of February 1995): --# --# All current Qume terminals have ANSI-compatible operation modes. --# Qume is still producing the qvt62, which features emulations for other --# popular lines such as ADDS, and dual-host capabilities. The qvt82 is --# designed for use as a SCO ANSI terminal. The qvt70 is a color terminal --# with many emulations including Wyse370, Wyse 325, etc. Their newest --# model is the qvt520, which is vt420-compatible. --# --# There are some ancient printing Qume terminals under `Daisy Wheel Printers' --# --# If you inherit a Qume without docs, try Ctrl-Shift-Setup to enter its --# setup mode. Shift-s should be a configuration save to NVRAM. - --qvt101|qvt108|qume qvt 101 and QVT 108, -- xmc#1, use=qvt101+, -+# This is from the OSF/1 Release 1.0 termcap file -+pccons|pcconsole|ANSI (mostly) Alpha PC console terminal emulation, -+ am, xon, -+ cols#80, lines#25, -+ bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -+ el=\E[K, home=\E[H, ht=^I, ich1=\E[@, il1=\E[L, kbs=^H, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, -+ nel=^M^J, rev=\E[7m, rmso=\E[m, sgr0=\E[m, smso=\E[7m, - --# This used to have <cvvis=\E.2> but no <cnorm> or <civis>. The BSD termcap --# file had <cvvis=\EM4 \200\200\200>. I've done the safe thing and yanked --# both. The <rev> is from BSD, which also claimed bold=\E( and dim=\E). --# What seems to be going on here is that this entry was designed so that --# the normal highlight is bold and standout is dim plus something else --# (reverse-video maybe? But then, are there two <rev> sequences?) --qvt101+|qvt101p|qume qvt 101 PLUS product, -- am, bw, hs, ul, -- cols#80, lines#24, xmc#0, -- bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=^M, cub1=^H, cud1=^J, -- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- dch1=\EW, dl1=\ER, dsl=\Eg\Ef\r, ed=\EY, el=\ET, -- flash=\Eb$<200>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1, -- ich1=\EQ, il1=\EE, ind=^J, invis@, kbs=^H, kcbt=\EI, kcub1=^H, -- kcud1=^J, kcuf1=^L, kcuu1=^K, kdl1=\ER, ked=\EY, kel=\ET, -- kf1=^A@\r, kf10=^AI\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, -- kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, -- khome=^^, kich1=\EQ, kil1=\EE, mc4=\EA, mc5=\E@, rmso=\E(, -- smso=\E0P\E), tbc=\E3, tsl=\Eg\Ef, use=adm+sgr, --qvt102|qume qvt 102, -- cnorm=\E., use=qvt101, --# (qvt103: added <rmam>/<smam> based on init string -- esr) --qvt103|qume qvt 103, -- am, xenl, xon, -- cols#80, it#8, lines#24, vt#3, -- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -- clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C$<2>, -- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, -- cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, -- hts=\EH, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -- kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, -- rev=\E[7m$<2>, ri=\EM$<5>, rmam=\E[?7l, rmkx=\E[?1l\E>, -- rmso=\E[m$<2>, rmul=\E[m$<2>, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>, -- sgr0=\E[m$<2>, smam=\E[?7h, smkx=\E[?1h\E=, -- smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, --qvt103-w|qume qvt103 132 cols, -- cols#132, lines#24, -- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=qvt103, --qvt119+|qvt119p|qvt119|qume qvt 119 and 119PLUS terminals, -- am, hs, mir, msgr, -- cols#80, lines#24, xmc#0, -- bel=^G, cbt=\EI, clear=\E*1, cnorm=\E.4, cr=^M, cub1=^H, -- cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=^K, cvvis=\E.2, dch1=\EW, dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey, -- el=\Et, flash=\En0$<200>\En1, fsl=^M, home=^^, ht=^I, -- hts=\E1, il1=\EE, ind=^J, is2=\EDF\EC\EG0\Er\E(\E%EX, -- kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^AI\r, -- kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -- kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -- mc4=\EA, mc5=\E@, ri=\EJ, rmir=\Er, smir=\Eq, smul=\EG8, -- tbc=\E3, tsl=\Eg\Ef, use=adm+sgr, --qvt119+-25|qvt119p-25|QVT 119 PLUS with 25 data lines, -- lines#25, use=qvt119+, --qvt119+-w|qvt119p-w|qvt119-w|QVT 119 and 119 PLUS in 132 column mode, -- cols#132, -- is2=\EDF\EC\EG0\Er\E(\E%\EX\En4, use=qvt119+, --qvt119+-25-w|qvt119p-25-w|qvt119-25-w|QVT 119 and 119 PLUS 132 by 25, -- lines#25, use=qvt119+, --qvt203|qvt203+|qume qvt 203 Plus, -- dch1=\E[P$<7>, dl1=\E[M$<99>, il1=\E[L$<99>, ind=\n$<30>, -- ip=$<7>, kf0=\E[29~, kf1=\E[17~, kf2=\E[18~, kf3=\E[19~, -- kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, -- kf9=\E[28~, rmir=\E[4l, smir=\E[4h, use=qvt103, --qvt203-w|qvt203-w-am|qume qvt 203 PLUS in 132 cols (w/advanced video), -- cols#132, lines#24, -- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=qvt203, --# --# Since a command is present for enabling 25 data lines, --# a specific terminfo entry may be generated for the 203. --# If one is desired for the QVT 119 PLUS then 25 lines must --# be selected in the status line (setup line 9). -+#### Sun consoles - # --qvt203-25|QVT 203 PLUS with 25 by 80 column mode, -- cols#80, lines#25, -- is2=\E[=40h\E[?3l, use=qvt203, --qvt203-25-w|QVT 203 PLUS with 25 by 132 columns, -- cols#132, lines#25, -- rs2=\E[?3h\E[=40h, use=qvt203, - --#### Televideo (tvi) -+# :is1: resets scrolling region in case a previous user had used "tset vt100" -+oldsun|Sun Microsystems Workstation console, -+ OTbs, am, km, mir, msgr, -+ cols#80, it#8, lines#34, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, -+ dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, ht=^I, -+ ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ is1=\E[1r, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, -+ rmso=\E[m, sgr0=\E[m, smso=\E[7m, -+# From: Alexander Lukyanov <lav@video.yars.free.net>, 14 Nov 1995 -+# <lines> capability later corrected by J.T. Conklin <jtc@cygnus.com> -+# SGR 1, 4 aren't supported - removed bold/underline (T.Dickey 17 Jan 1998) -+sun-il|Sun Microsystems console with working insert-line, -+ am, km, msgr, -+ cols#80, lines#34, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, -+ dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, ht=^I, -+ ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ kb2=\E[218z, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kdch1=\177, kend=\E[220z, kf1=\E[224z, -+ kf10=\E[233z, kf11=\E[234z, kf12=\E[235z, kf2=\E[225z, -+ kf3=\E[226z, kf4=\E[227z, kf5=\E[228z, kf6=\E[229z, -+ kf7=\E[230z, kf8=\E[231z, kf9=\E[232z, khome=\E[214z, -+ kich1=\E[247z, knp=\E[222z, kopt=\E[194z, kpp=\E[216z, -+ kres=\E[193z, kund=\E[195z, rev=\E[7m, rmso=\E[m, rmul@, -+ rs2=\E[s, sgr=\E[0%?%p1%p3%|%t;7%;m, sgr0=\E[m, -+ smso=\E[7m, u8=\E[1t, u9=\E[11t, -+# On some versions of CGSIX framebuffer firmware (SparcStation 5), <il1>/<il> -+# flake out on the last line. Unfortunately, without them the terminal has no -+# way to scroll. -+sun-cgsix|sun-ss5|Sun SparcStation 5 console, -+ il@, il1@, use=sun-il, -+# If you are using an SS5, change the sun definition to use sun-ss5. -+sun|sun1|sun2|Sun Microsystems Inc. workstation console, -+ use=sun-il, -+ -+sun+sl|Sun Workstation window status line, -+ hs, -+ dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, -+ -+# From: <john@ucbrenoir> Tue Sep 24 13:14:44 1985 -+sun-s|Sun Microsystems Workstation window with status line, -+ hs, -+ dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, use=sun, -+sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs, -+ hs, -+ dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, use=sun-e, -+sun-48|Sun 48-line window, -+ cols#80, lines#48, use=sun, -+sun-34|Sun 34-line window, -+ cols#80, lines#34, use=sun, -+sun-24|Sun 24-line window, -+ cols#80, lines#24, use=sun, -+sun-17|Sun 17-line window, -+ cols#80, lines#17, use=sun, -+sun-12|Sun 12-line window, -+ cols#80, lines#12, use=sun, -+sun-1|Sun 1-line window for sysline, -+ eslok, hs, -+ cols#80, lines#1, -+ dsl=^L, fsl=\E[K, tsl=^M, use=sun, -+sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character, -+ ich1@, rmir@, smir@, use=sun, -+sun-c|sun-cmd|Sun Microsystems Workstation console with scrollable history, -+ lines#35, -+ rmcup=\E[>4h, smcup=\E[>4l, use=sun, -+sun-type4|Sun Workstation console with type 4 keyboard, -+ kcub1=\E[217z, kcud1=\E[221z, kcuf1=\E[219z, -+ kcuu1=\E[215z, use=sun-il, -+ -+# Most of the current references to sun-color are from users wondering why this -+# is the default on install. Details from reading the wscons manpage, adding -+# cub, etc., here (rather than in the base sun-il entry) since it is not clear -+# when those were added -TD (2005-05-28) - # --# TeleVideo --# 550 East Brokaw Road --# PO Box 49048 95161 --# San Jose CA 95112 --# Vox: (408)-954-8333 --# Fax: (408)-954-0623 -+# According to wscons manpage, color is supported only on IA systems. -+# Sun's terminfo entry documents bold and smul/rmul capabilities, but wscons -+# does not list these. It also sets ncv#3, however that corresponds to -+# underline and standout. - # -+# Since the documentation and terminfo do not agree, see also current code at -+# http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/io/tem_safe.c - # --# These require incredible amounts of padding. -+# That (actually a different driver which "supports" sun-color) also supports -+# these features: -+# vpa=\E[%i%p1%dd -+# hpa=\E[%i%p1%d` -+# cbt=\E[Z -+# dim=\E[2m -+# blink=\E[5m -+# It supports bold, but not underline -TD (2009-09-19) -+sun-color|Sun Microsystems Workstation console with color support (IA systems), -+ colors#8, ncv#3, pairs#64, -+ bold=\E[1m, cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC, -+ cuu=\E[%p1%dA, home=\E[H, op=\E[0m, rs2=\E[s, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ setb=\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -+ setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m, -+ sgr=\E[0%?%p6%t;1%;%?%p1%p3%|%t;7%;m, sgr0=\E[m, -+ smso=\E[7m, use=sun, -+ -+#### Iris consoles - # --# All of these terminals (912 to 970 and the tvipt) are discontinued. Newer --# Televideo terminals are ANSI and PC-ANSI compatible. - --tvi803|televideo 803, -- clear=\E*$<10>, use=tvi950, -+# (wsiris: this had extension capabilities -+# :HS=\E7F2:HE=\E7F7:\ -+# :CT#2:CZ=*Bblack,red,green,yellow,blue,magenta,cyan,*Fwhite: -+# See the note on Iris extensions near the end of this file. -+# Finally, removed suboptimal <clear>=\EH\EJ and added <cud1> & -+# <flash> from BRL -- esr) -+wsiris|iris40|iris emulating a 40 line visual 50 (approximately), -+ OTbs, OTnc, OTpt, am, -+ OTkn#3, cols#80, it#8, lines#40, -+ OTnl=\EB, bel=^G, clear=\Ev, cnorm=\E>, cub1=^H, cud1=\EB, -+ cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, -+ cvvis=\E;, dim=\E7F2, dl1=\EM, ed=\EJ, el=\EK, -+ flash=\E7F4\E7B1\013\E7F7\E7B0, home=\EH, ht=^I, il1=\EL, -+ ind=^J, is2=\E7B0\E7F7\E7C2\E7R3, kcub1=\ED, kcud1=\EB, -+ kcuf1=\EC, kcuu1=\EA, kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3, -+ kf4=\E4, kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, ri=\EI, -+ rmso=\E0@, rmul=\E7R3\E0@, sgr0=\E7F7, smso=\E9P, -+ smul=\E7R2\E9P, - --# Vanilla tvi910 -- W. Gish <cswarren@violet> 10/29/86 --# Switch settings are: --# --# S1 1 2 3 4 --# D D D D 9600 --# D D D U 50 --# D D U D 75 --# D D U U 110 --# D U D D 135 --# D U D U 150 --# D U U D 300 --# D U U U 600 --# U D D D 1200 --# U D D U 1800 --# U D U D 2400 --# U D U U 3600 --# U U D D 4800 --# U U D U 7200 --# U U U D 9600 --# U U U U 19200 -+#### NeWS consoles - # --# S1 5 6 7 8 --# U D X D 7N1 (data bits, parity, stop bits) (X means ignored) --# U D X U 7N2 --# U U D D 7O1 --# U U D U 7O2 --# U U U D 7E1 --# U U U U 7E2 --# D D X D 8N1 --# D D X U 8N2 --# D U D D 8O1 --# D U U U 8E2 -+# Console terminal windows under the NeWS (Sun's Display Postscript windowing -+# environment). Note: these have nothing to do with Sony's News workstation -+# line. - # --# S1 9 Autowrap --# U on --# D off -+ -+# Entry for NeWS's psterm from Eric Messick & Hugh Daniel -+# (psterm: unknown ":sl=\EOl:el=\ENl:" removed -- esr) -+psterm|psterm-basic|NeWS psterm-80x34, -+ OTbs, am, hs, km, ul, -+ cols#80, it#8, lines#34, -+ blink=\EOb, bold=\EOd, clear=^L, csr=\EE%p1%d;%p2%d;, -+ cub1=\ET, cud1=\EP, cuf1=\EV, cup=\E%p1%d;%p2%d;, cuu1=\EY, -+ dch1=\EF, dl1=\EK, ed=\EB, el=\EC, flash=\EZ, fsl=\ENl, -+ home=\ER, ht=^I, il1=\EA, ind=\EW, is1=\EN*, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, ll=\EU, rc=^\, rev=\EOr, -+ ri=\EX, rmcup=\ENt, rmir=\ENi, rmso=\ENo, rmul=\ENu, sc=^], -+ sgr0=\EN*, smcup=\EOt, smir=\EOi, smso=\EOo, smul=\EOu, -+ tsl=\EOl, -+psterm-96x48|NeWS psterm 96x48, -+ cols#96, lines#48, use=psterm, -+psterm-90x28|NeWS psterm 90x28, -+ cols#90, lines#28, use=psterm, -+psterm-80x24|NeWS psterm 80x24, -+ cols#80, lines#24, use=psterm, -+# This is a faster termcap for psterm. Warning: if you use this termcap, -+# some control characters you type will do strange things to the screen. -+# (psterm-fast: unknown ":sl=^Ol:el=^Nl:" -- esr) -+psterm-fast|NeWS psterm fast version (flaky ctrl chars), -+ OTbs, am, hs, km, ul, -+ cols#80, it#8, lines#34, -+ blink=^Ob, bold=^Od, clear=^L, csr=\005%p1%d;%p2%d;, -+ cub1=^T, cud1=^P, cuf1=^V, cup=\004%p1%d;%p2%d;, cuu1=^Y, -+ dch1=^F, dl1=^K, ed=^B, el=^C, flash=^Z, fsl=^Nl, home=^R, ht=^I, -+ il1=^A, ind=^W, is1=^N*, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, ll=^U, rc=^\, rev=^Or, ri=^X, rmcup=^Nt, rmir=^Ni, -+ rmso=^No, rmul=^Nu, sc=^], sgr0=^N*, smcup=^Ot, smir=^Oi, -+ smso=^Oo, smul=^Ou, tsl=^Ol, -+ -+#### NeXT consoles - # --# S1 10 CR/LF --# U do CR/LF when CR received --# D do CR when CR received -+# Use `glasstty' for the Workspace application - # --# S2 1 Mode --# U block --# D conversational -+ -+# From: Dave Wetzel <dave@turbocat.snafu.de> 22 Dec 1995 -+next|NeXT console, -+ am, xt, -+ cols#80, it#8, lines#24, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, -+ ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, -+ rmso=\E[4;1m, sgr0=\E[m, smso=\E[4;2m, -+nextshell|NeXT Shell application, -+ am, -+ cols#80, -+ bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, kbs=^H, kcub1=^H, -+ kcud1=^J, nel=^M^J, -+ -+#### Sony NEWS workstations - # --# S2 2 Duplex --# U half --# D full -+ -+# (news-unk: this had :KB=news: -- esr) -+news-unk|SONY NEWS vt100 emulator common entry, -+ OTbs, OTpt, am, xenl, -+ cols#80, -+ OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, -+ cr=^M, csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, -+ ed=\E[J, el=\E[K, home=\E[H, ht=^I, -+ if=/usr/share/tabset/vt100, il=\E[%p1%dL, il1=\E[L, -+ is2=\E[?7h\E[?1h\E[?3l\E7\E8, kbs=^H, kcub1=\EOD, -+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOY, kf1=\EOP, -+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, -+ kf8=\EOW, kf9=\EOX, rc=\E8, rev=\E[7m, ri=\EM, -+ rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[r, sc=\E7, -+ sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, - # --# S2 3 Hertz --# U 50 --# D 60 -+# (news-29: this had :TY=ascii: --esr) -+news-29, -+ lines#29, use=news-unk, -+# (news-29-euc: this had :TY=euc: --esr) -+news-29-euc, -+ use=news-29, -+# (news-29-sjis: this had :TY=sjis: --esr) -+news-29-sjis, -+ use=news-29, - # --# S2 4 Edit mode --# U local --# D duplex -+# (news-33: this had :TY=ascii: --esr) -+news-33, -+ lines#33, use=news-unk, -+# (news-33-euc: this had :TY=euc: --esr) -+news-33-euc, -+ use=news-33, -+# (news-33-sjis: this had :TY=sjis: --esr) -+news-33-sjis, -+ use=news-33, - # --# S2 5 Cursor type --# U underline --# D block -+# (news-42: this had :TY=ascii: --esr) -+news-42, -+ lines#42, use=news-unk, -+# (news-42-euc: this had :TY=euc: --esr) -+news-42-euc, -+ use=news-42, -+# (news-42-sjis: this had :TY=sjis: --esr) -+news-42-sjis, -+ use=news-42, - # --# S2 6 Cursor down key --# U send ^J --# D send ^V -+# NEWS-OS old termcap entry - # --# S2 7 Screen colour --# U green on black --# D black on green -+# (news-old-unk: this had :KB=news:TY=sjis: --esr) -+news-old-unk|SONY NEWS vt100 emulator common entry, -+ OTbs, OTpt, am, xenl, -+ cols#80, vt#3, -+ OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[;H\E[2J, -+ cr=^M, csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, -+ home=\E[H, ht=^I, if=/usr/share/tabset/vt100, kbs=^H, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, -+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, rev=\E[7m, ri=\EM, -+ rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, - # --# S2 8 DSR status (pin 6) --# U disconnected --# D connected -+# (nwp512: this had :DE=^H:, which I think means <OTbs> --esr) -+nwp512|news|nwp514|news40|vt100-bm|old sony vt100 emulator 40 lines, -+ OTbs, -+ lines#40, -+ is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8, -+ use=news-old-unk, - # --# S2 9 DCD status (pin 8) --# U disconnected --# D duplex -+# (nwp512-a: this had :TY=ascii: and the alias vt100-bm --esr) -+nwp512-a|nwp514-a|news-a|news42|news40-a|sony vt100 emulator 42 line, -+ lines#42, -+ is2=\E[?7h\E[?1l\E[?3l\E7\E[1;42r\E8, -+ use=news-old-unk, - # --# S2 10 DTR status (pin 20) --# U disconnected --# D duplex --# (tvi910: removed obsolete ":ma=^Kk^Ll^R^L:"; added <khome>, <cub1>, <cud1>, --# <ind>, <hpa>, <vpa>, <am>, <msgr> from SCO entry -- esr) --tvi910|televideo model 910, -- OTbs, am, msgr, -- cols#80, it#8, lines#24, xmc#1, -- bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EY, el=\ET, -- home=\E=\001\001, hpa=\E]%p1%{32}%+%c, ht=^I, -- if=/usr/share/tabset/stdcrt, ind=^J, invis@, kbs=^H, -- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^AI\r, kf1=^A@\r, -- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -- kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -- vpa=\E[%p1%{32}%+%c, use=adm+sgr, --# From: Alan R. Rogers <rogers%albany@csnet-relay> --# as subsequently hacked over by someone at SCO --# (tvi910+: removed obsolete ":ma=^K^P^L :" -- esr) -+# (nwp-512-o: this had :KB=nwp410:DE=^H: I interpret the latter as <OTbs>. --esr) -+nwp512-o|nwp514-o|news-o|news40-o|vt100-bm-o|sony vt100 emulator 40 lines, -+ OTbs, -+ lines#40, -+ is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8, -+ use=news-old-unk, - # --# Here are the 910+'s DIP switches (U = up, D = down, X = don't care): -+# (nwp513: this had :DE=^H: and the alias vt100-bm --esr) -+nwp513|nwp518|nwe501|newscbm|news31|sony vt100 emulator 33 lines, -+ OTbs, -+ lines#31, -+ is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8, -+ use=news-old-unk, - # --# S1 1 2 3 4: --# D D D D 9600 D D D U 50 D D U D 75 D D U U 110 --# D U D D 135 D U D U 150 D U U D 300 D U U U 600 --# U D D D 1200 U D D U 1800 U D U D 2400 U D U U 3600 --# U U D D 4800 U U D U 7200 U U U D 9600 U U U U 19200 -+# (nwp513-a: this had :TY=ascii: and :DE=^H:, which I interpret as <OTbs>; --esr) -+# also the alias vt100-bm. -+nwp513-a|nwp518-a|nwe501-a|nwp251-a|newscbm-a|news31-a|newscbm33|news33|old sony vt100 emulator 33 lines, -+ OTbs, -+ lines#33, -+ is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;33r\E8, -+ use=news-old-unk, - # --# S1 5 6 7 8: --# U D X D 7N1 U D X U 7N2 U U D D 7O1 U U D U 7O2 --# U U U D 7E1 U U U U 7E2 D D X D 8N1 D D X U 8N2 --# D U D D 8O1 D U U U 8E2 -+# (nwp513-o: had :DE=^H:, I think that's <OTbs>; also the alias vt100-bm --esr) -+nwp513-o|nwp518-o|nwe501-o|nwp251-o|newscbm-o|news31-o|old sony vt100 emulator 33 lines, -+ OTbs, -+ lines#31, -+ is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8, -+ use=news-old-unk, - # --# S1 9 Autowrap (U = on, D = off) --# S1 10 CR/LF (U = CR/LF on CR received, D = CR on CR received) --# S2 1 Mode (U = block, D = conversational) --# S2 2 Duplex (U = half, D = full) --# S2 3 Hertz (U = 50, D = 60) --# S2 4 Edit mode (U = local, D = duplex) --# S2 5 Cursor type (U = underline, D = block) --# S2 6 Cursor down key (U = send ^J, D = send ^V) --# S2 7 Screen colour (U = green on black, D = black on green) --# S2 8 DSR status (pin 6) (U = disconnected, D = connected) --# S2 9 DCD status (pin 8) (U = disconnected, D = connected) --# S2 10 DTR status (pin 20) (U = disconnected, D = connected) -+# (news28: this had :DE=^H:, I think that's <OTbs>, and :KB=nws1200: --esr) -+news28|sony vt100 emulator 28 lines, -+ OTbs, -+ lines#28, -+ is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;28r\E8, -+ use=news-old-unk, - # --tvi910+|televideo 910+, -- dch1=\EW, dl1=\ER$<33*>, home=^^, ich1=\EQ, il1=\EE$<33*>, -- kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, -- kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, -- ll=\E=7\s, use=tvi910, -- --# (tvi912: removed obsolete ":ma=^K^P^L :", added <flash> and --# <khome> from BRL entry -- esr) --tvi912|tvi914|tvi920|old televideo 912/914/920, -- OTbs, OTpt, am, msgr, -- cols#80, it#8, lines#24, xmc#1, -- bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER$<33*>, ed=\Ey, el=\ET, flash=\Eb$<50/>\Ed, home=^^, -- ht=^I, hts=\E1, ich1=\EQ, if=/usr/share/tabset/stdcrt, -- il1=\EE$<33*>, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, -- kcuu1=^K, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, -- kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, -- kf9=^AH\r, khome=^^, rmso=\Ek, rmul=\Em, smso=\Ej, smul=\El, -- tbc=\E3, --# We got some new tvi912c terminals that act really weird on the regular --# termcap, so one of our gurus worked this up. Seems that cursor --# addressing is broken. --tvi912cc|tvi912 at cowell college, -- cup@, use=tvi912c, -- --# tvi{912,920}[bc] - TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C --# From: Benjamin C. W. Sittler --# --# Someone has put a scanned copy of the manual online at: --# http://vt100.net/televideo/912b-om/ --# --# These terminals were produced ca. 1979, and had a 12" monochrome --# screen, supported 75-9600 baud (no handshaking), monochrome, 7-bit --# ASCII, and were generally similar to adm3a but with attributes --# (including some with magic cookies), fancy half-duplex mode, and --# different bugs. --# --# Some operations reqire truly incredible amounts of padding. The --# insert_line (<il1>) and delete_line (<dl1>) operations in particular --# are so slow as to be nearly unusable. -+# (news29: this had :TY=ascii:KB=nws1200:\ --esr) -+news29|news28-a|sony vt100 emulator 29 lines, -+ lines#29, -+ is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;29r\E8, -+ use=news-old-unk, - # --# There may or may not have been a separate, earlier series of 912/920 --# terminals (without the "B" and "C" suffix); I have never seen one, --# and the manual only describes the "B" and "C" series. The 912 and 920 --# are quite distinct from the 914 and 924, which were much nicer non- --# magic-cookie terminals similar to the 950. -+# (news511: this had :TY=sjis: --esr) -+nwp511|nwp-511|nwp-511 vt100, -+ OTbs, OTpt, am, xenl, -+ cols#80, lines#24, -+ clear=\E[;H\E[2J$<20/>, cub1=\E[D, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A$<2/>, dl1=\E[M, -+ ed=\E[J$<30/>, el=\E[K$<3/>, -+ flash=\E[?5h\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l, -+ il1=\E[L, is2=\E[?5l\E[?1l\E>\E[?7h\E[?8h, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, -+ kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\E#W, khome=\E[H, -+ ri=\EM$<5/>, rmso=\E[m$<2/>, rmul=\E[m$<2/>, -+ rs2=\E7\E[r\E8\E[?5l\E[?1l\E>\E[?7h\E[?8h, -+ smso=\E[7m$<2/>, smul=\E[4m$<2/>, -+# (news517: this had :TY=sjis:. --esr) -+nwp517|nwp-517|nwp-517 vt200 80 cols 30 rows, -+ eslok, hs, -+ cols#80, lines#30, -+ OTi2=\E[2$~\n, dsl=\E[1$~, fsl=\E[0$}, -+ is2=\E7\E[r\E8\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -+ tsl=\E[1$}\E[;%df, use=vt200, -+# (news517-w: this had :TY=sjis:. --esr) -+nwp517-w|nwp-517-w|nwp-517 vt200 132 cols 50 rows, -+ eslok, hs, -+ cols#132, lines#50, -+ OTi2=\E[2$~\n, dsl=\E[1$~, fsl=\E[0$}, -+ is2=\E7\E[r\E8\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, -+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, -+ tsl=\E[1$}\E[;%df, use=vt200, -+ -+#### Common Desktop Environment - # --# This is a new description for the following TeleVideo terminals, --# distinguished chiefly by their keyboards: -+ -+# This ships with Sun's CDE in Solaris 2.5 -+# Corrected Sun Aug 9 1998 by Alexander V. Lukyanov <lav@video.yars.free.net> -+dtterm|CDE desktop terminal, -+ am, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, lm#0, ncv@, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, -+ dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, -+ enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, home=\E[H, -+ ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, -+ ind=\ED, invis=\E[8m, is2=\E F\E>\E[?1l\E[?7h\E[?45l, -+ kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[3~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, -+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -+ kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -+ kslt=\E[4~, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, -+ rmam=\E[?7l, rmir=\E[4l, rmso=\E[22;27m, rmul=\E[24m, -+ sc=\E7, -+ sgr=\E[0%?%p1%t;2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -+ smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, use=ecma+color, -+ -+######## Non-Unix Consoles - # --# TVI-912B - very odd layout, no function keys (84 keys) --# TVI-920B - typewriter layout, no function keys (103 keys) --# TVI-912C - very odd layout, function keys F1-F11 (82 keys) --# TVI-920C - typewriter layout, function keys F1-F11 (101 keys) -+ -+#### EMX termcap.dat compatibility modes - # --# To choose a setting for the TERM variable, start with the model: -+# Also (possibly only EMX, so we don't put it in ansi.sys, etc): set the -+# no_color_video to inform the application that standout(1), underline(2) -+# reverse(4) and invisible(64) don't work with color. -+emx-base|DOS special keys, -+ bce, bw, -+ it#8, ncv#71, -+ bel=^G, use=ansi.sys, -+ -+# Except for the "-emx" suffixes, these are as distributed with EMX 0.9b, -+# a Unix-style environment used on OS/2. (Note that the suffix makes some -+# names longer than 14 characters, the nominal maximum). - # --# Model || base name --# ----------||----------- --# TVI-912B || tvi912b --# TVI-912C || tvi912c --# TVI-920B || tvi920b --# TVI-920C || tvi920c -+# Removed: rmacs=\E[10m, smacs=\E[11m, because OS/2 does not implement acs. -+ansi-emx|ANSI.SYS color, -+ am, bce, eo, mir, msgr, xon, -+ colors#8, cols#80, it#8, lines#25, pairs#64, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[1;33;44m\E[H\E[J, cnorm=\E[?25h, cr=^M, cub1=^H, -+ cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -+ dch=\E[%p1%dp, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, -+ home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, ind=^J, -+ kb2=\E[G, kbs=^H, kf0=\0D, kll=\0O, kspd=^Z, nel=^M^J, -+ rev=\E[5;37;41m, rmir=\E[4l, rmpch=\E[10m, -+ rmso=\E[0;44m\E[1;33m, rmul=\E[0;44m\E[1;33m, rs1=\Ec, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr0=\E[0m\E[1;33;44m, smir=\E[4h, smpch=\E[11m, -+ smso=\E[0;31;47m, smul=\E[1;31;44m, tbc=\E[3g, u8=\E[?6c, -+ u9=\E[c, use=emx-base, -+# nice colors for Emacs (white on blue, mode line white on cyan) -+ansi-color-2-emx|ANSI.SYS color 2, -+ clear=\E[0;37;44m\E[H\E[J, rev=\E[1;37;46m, -+ rmso=\E[0;37;44m, rmul=\E[0;37;44m, rs1=\Ec, -+ setaf=\E[3%p1%dm, sgr0=\E[0;37;44m, smso=\E[1;37;46m, -+ smul=\E[1;36;44m, use=ansi-emx, -+# nice colors for Emacs (white on black, mode line black on cyan) -+ansi-color-3-emx|ANSI.SYS color 3, -+ clear=\E[0;37;40m\E[H\E[J, rev=\E[1;37;46m, -+ rmso=\E[0;37;40m, rmul=\E[0;37;40m, rs1=\Ec, -+ setaf=\E[3%p1%dm, sgr0=\E[0;10m, smso=\E[1;37;46m, -+ smul=\E[0;36;40m, use=ansi-emx, -+mono-emx|stupid monochrome ansi terminal with only one kind of emphasis, -+ am, -+ cols#80, it#8, lines#24, -+ clear=\E[H\E[2J$<50>, cub1=\E[D, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H, -+ ht=^I, kb2=\E[G, kbs=^H, kcub1=\0K, kcud1=\0P, kcuf1=\0M, -+ kcuu1=\0H, kf0=\0D, kf1=\0;, kf2=\0<, kf3=\0=, kf4=\0>, -+ kf5=\0?, kf6=\0@, kf7=\0A, kf8=\0B, kf9=\0C, khome=\0G, -+ kich1=\0R, kll=\0O, knp=\0Q, kpp=\0I, nel=^M^J, rev=\E[7m, -+ sgr0=\E[0m, -+ -+#### Cygwin -+ -+# Use this for cygwin32 (tested with beta 19.1) -+# underline is colored bright magenta -+# shifted kf1-kf12 are kf11-kf22 -+cygwinB19|ansi emulation for cygwin32, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -+ kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, -+ kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D, -+ kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, rmam@, smam@, -+ use=ansi.sys, -+ -+# Use this for cygwin (tested with version 1.1.0). -+# I've combined pcansi and linux. Some values of course were different and -+# I've indicated which of these were and which I used. -+# Cheers, earnie_boyd@yahoo.com -+# several changes based on running with tack and comparing with older entry -TD -+# more changes from csw: -+# add cbt [backtab] -+# remove eo [erase overstrike with blank] -+# change clear was \E[H\E[J now \E[2J (faster?) -+# remove cols -+# remove lines -+# remove ncv#3 [colors collide with highlights, bitmask] not applicable -+# to MSDOS box? -+# add cub [cursor back param] -+# add cuf [cursor forward param] -+# add cuu [cursor up param] -+# add cud [cursor down param] -+# add hs [has status line] -+# add fsl [return from status line] -+# add tsl [go to status line] -+# add smacs [Start alt charset] (not sure if this works) -+# add rmacs [End alt charset] (ditto) -+# add smcup [enter_ca_mode] (save console; thanks Corinna) -+# add rmcup [exit_ca_mode] (restore console; thanks Corinna) -+# add kb2 [center of keypad] -+# add u8 [user string 8] \E[?6c -+# add el [clear to end of line] \E[K -+# Notes: -+# cnorm [make cursor normal] not implemented -+# flash [flash] not implemented -+# blink [blink] not implemented very usefully in cygwin? \E[5m -+# dim [dim] not implemented very usefully in cygwin? \E[2m -+# cub1 [cursor back 1] typically \E[D, but ^H is faster? -+# kNXT [shifted next key] not implemented -+# kPRV [shifted prev key] not implemented -+# khome [home key] really is \E[1~ NOT \E[H -+# tbc [clear tab stops] not implemented -+# xenl [newline ignnored after 80 cols] messes up last line? Ehud Karni -+# smpch [Start PC charset] is \E[11m, same as smacs -+# rmpch [End PC charset] is \E[10m, same as rmacs -+# mir [move in insert mode] fails in tack? -+# bce [back color erase] causes problems with change background color? -+# cvvis [make cursor very visible] causes a stackdump when testing with -+# testcurs using the output option? \E[?25h\E[?8c -+# civis [make cursor invisible] causes everything to stackdump? \E[?25l\E[?1c -+# ech [erase characters param] broken \E[%p1%dX -+# kcbt [back-tab key] not implemented in cygwin? \E[Z - # --# Then add a suffix from the following table describing installed options --# and how you'd like to use the terminal: -+# 2005/11/12 -TD -+# Remove cbt since it does not work in current cygwin -+# Add 'mir' and 'in' flags based on tack -+cygwin|ansi emulation for Cygwin, -+ am, hs, mir, msgr, xon, -+ colors#8, it#8, pairs#64, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, cub=\E[%p1%dD, -+ cub1=^H, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -+ cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, fsl=^G, home=\E[H, -+ hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, kb2=\E[G, -+ kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -+ kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, -+ kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, kf3=\E[[C, kf4=\E[[D, -+ kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kspd=^Z, -+ nel=^M^J, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, -+ rmacs=\E[10m, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, -+ rmpch=\E[10m, rmso=\E[27m, rmul=\E[24m, rs1=\Ec\E]R, -+ sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m, -+ sgr0=\E[0;10m, smacs=\E[11m, smcup=\E7\E[?47h, -+ smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m, tsl=\E];, -+ vpa=\E[%i%p1%dd, use=vt102+enq, -+ -+# I've supplied this so that you can help test new values and add other -+# features. Cheers, earnie_boyd@yahoo.com. - # --# Use Video | Second | Visual | Magic | Page || feature --# Attributes | Page | Bell | Cookies | Print || suffix --# ------------|--------|--------|---------|-------||--------- --# No | No | N/A | N/A | No || -unk --# No | No | N/A | N/A | Yes || -p --# No | Yes | No | N/A | No || -2p-unk --# No | Yes | No | N/A | Yes || -2p-p --# No | Yes | Yes | N/A | No || -vb-unk --# No | Yes | Yes | N/A | Yes || -vb-p --# Yes | No | N/A | No | N/A || --# Yes | No | N/A | Yes | N/A || -mc --# Yes | Yes | No | No | N/A || -2p --# Yes | Yes | No | Yes | N/A || -2p-mc --# Yes | Yes | Yes | No | N/A || -vb --# Yes | Yes | Yes | Yes | N/A || -vb-mc --# --# So e.g. a model 920 C with second page memory option, visual bell --# and no magic cookies would be tvi920c-vb; a model 912 B without the --# second page memory option and using magic cookies would be --# tvi912b-mc --# --# PADDING --# --# At 9600 baud, the terminal is prone to overflow its input buffer --# during complex operations (insert/delete --# character/line/screen/page), and it does not signal this over the --# RS232 cable. The typical symptom of an overrun is that the terminal --# starts beeping, and output becomes garbled. --# --# The padding delays in this terminfo were derived using tack(1) --# running on a Linux box connected to a TVI-920C with a later-model --# (A49C1-style) ROM running at 9600 baud, so your mileage may --# vary. The numbers below seem to give the terminal enough time so --# that it doesn't overflow its input buffer and start losing --# characters. --# --# KEYS --# --# If you want to use the FUNCT key on a tvi912[bc], use the --# corresponding tvi920[bc] terminfo with FUNCT + ... equivalents from --# the following table (these also work on the 920 series): --# --# Unshifted Function Keys: --# --# Key | capname|| Equivalent --# -----|--------||------------ --# F1 | <kf1> || FUNCT + @ --# F2 | <kf2> || FUNCT + A --# F3 | <kf3> || FUNCT + B --# F4 | <kf4> || FUNCT + C --# F5 | <kf5> || FUNCT + D --# F6 | <kf6> || FUNCT + E --# F7 | <kf7> || FUNCT + F --# F8 | <kf8> || FUNCT + G --# F9 | <kf9> || FUNCT + H --# F10 | <kf10> || FUNCT + I --# F11 | <kf11> || FUNCT + J --# --# Shifted Function Keys: --# --# SHIFT + Key | capname|| Equivalent --# -------------|--------||------------ --# SHIFT + F1 | <kf12> || FUNCT + ` --# SHIFT + F2 | <kf13> || FUNCT + a --# SHIFT + F3 | <kf14> || FUNCT + b --# SHIFT + F4 | <kf15> || FUNCT + c --# SHIFT + F5 | <kf16> || FUNCT + d --# SHIFT + F6 | <kf17> || FUNCT + e --# SHIFT + F7 | <kf18> || FUNCT + f --# SHIFT + F8 | <kf19> || FUNCT + g --# SHIFT + F9 | <kf20> || FUNCT + h --# SHIFT + F10 | <kf21> || FUNCT + i --# SHIFT + F11 | <kf22> || FUNCT + j --# --# PORTS AND SWITCH SETTINGS --# --# Here are the switch settings for the TVI-912B/TVI-920B and --# TVI-912C/TVI-920C: --# --# S1 (Line), and S3 (Printer) baud rates -- put one, and only one, switch down: --# 2: 9600 3: 4800 4: 2400 5: 1200 --# 6: 600 7: 300 8: 150 9: 75 --# 10: 110 --# --# S2 UART/Terminal options: --# Up Down --# 1: Not used Not allowed --# 2: Alternate character set Standard character set --# 3: Full duplex Half duplex --# 4: 50 Hz refresh 60 Hz refresh --# 5: No parity Send parity --# 6: 2 stop bits 1 stop bit --# 7: 8 data bits 7 data bits --# 8: Not used Not allowed on Rev E or lower --# 9: Even parity Odd parity --# 10: Steady cursor Blinking cursor --# (On Rev E or lower, use W25 instead of switch 10.) --# --# S5 UART/Terminal options: --# Open Closed --# 1: P3-6 Not connected DSR received on P3-6 --# 2: P3-8 Not connected DCD received on P3-8 --# --# 3 Open, 4 Open: P3-20 Not connected --# 3 Open, 4 Closed: DTR on when terminal is on --# 3 Closed, 4 Open: DTR is connected to RTS --# 3 Closed, 4 Closed: Not allowed --# --# 5 Closed: HDX printer (hardware control) Rev. K with extension port off, --# all data transmitted out of the modem port (P3) will also be --# transmitted out of the printer port (P4). --# --# 6 Open, 7 Open: Not allowed --# 6 Open, 7 Closed: 20ma current loop input --# 6 Closed, 7 Open: RS232 input --# 6 Closed, 7 Closed: Not allowed --# --# Jumper options: --# If the jumper is installed, the effect will occur (the next time the terminal --# is switched on). -+# Some features are from pcansi. The op value is from linux. Function-keys -+# are from linux. These have been tested not to cause problems. xenl was in -+# this list, but DOES cause problems so it has been removed -+cygwinDBG|Debug Version for Cygwin, -+ am, eo, mir, msgr, xon, -+ colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -+ cnorm=\E[?25h, cr=^M, cub=\E[%p1%dD, cub1=\E[D, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, -+ dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -+ flash=\E[?5h\E[?5l$<200/>, home=\E[H, hpa=\E[%i%p1%dG, -+ ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, -+ il1=\E[L, ind=^J, invis=\E[8m, kNXT=\E[6$, kPRV=\E[5$, -+ kb2=\E[G, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~, kf1=\E[[A, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -+ kf18=\E[32~, kf19=\E[33~, kf2=\E[[B, kf20=\E[34~, -+ kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, -+ knp=\E[6~, kpp=\E[5~, kspd=^Z, nel=^M^J, op=\E[39;49m, -+ rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E[10m, rmir=\E[4l, -+ rmso=\E[m, rmul=\E[m, rs1=\Ec\E]R, sc=\E7, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m, -+ sgr0=\E[0;10m, smacs=\E[11m, smir=\E[4h, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt102+enq, -+ -+#### DJGPP -+ -+# Key definitions: -+# The encodings for unshifted arrow keys, F1-F12, Home, Insert, etc. match the -+# encodings used by other x86 environments. All others are invented for DJGPP. -+# Oddly enough, while several combinations of modifiers are tabulated, there is -+# none for shifted cursor keys. - # --# S4/W31: Enables automatic LF upon receipt of CR from --# remote or keyboard. --# S4/W32: Enables transmission of EOT at the end of Send. If not --# installed, a carriage return is sent. --# S4/W33: Disables automatic carriage return in column 80. --# S4/W34: Selects Page Print Mode as initial condition. If not --# installed, Extension Mode is selected. -+# F1 \E[[A -+# F2 \E[[B -+# F3 \E[[C -+# F4 \E[[D -+# F5 \E[[E -+# F6 \E[17~ -+# F7 \E[18~ -+# F8 \E[19~ -+# F9 \E[20~ -+# F10 \E[21~ -+# F11 \E[23~ -+# F12 \E[24~ - # --# NON-STANDARD CAPABILITIES -+# Delete \E[3~ -+# Down Arrow \E[B -+# End \E[4~ -+# Home \E[1~ -+# Insert \E[2~ -+# Left Arrow \E[D -+# Page Down \E[6~ -+# Page Up \E[5~ -+# Right Arrow \E[C -+# Up Arrow \E[A - # --# Sending <u9> or <u7> returns a cursor position report in the format --# YX\r, where Y and X are as in <cup>. This format is described in --# <u8> and <u6>, but it's not clear how one should write an --# appropriate scanf string, since we need to subtract %' ' from the --# character after reading it. The <u9> capability is used by tack(1) --# to synchronize during padding tests, and seems to work for that --# purpose. -+# Shift-F1 \E[25~ -+# Shift-F2 \E[26~ -+# Shift-F3 \E[27~ -+# Shift-F4 \E[28~ -+# Shift-F5 \E[29~ -+# Shift-F6 \E[30~ -+# Shift-F7 \E[31~ -+# Shift-F8 \E[32~ -+# Shift-F9 \E[33~ -+# Shift-F10 \E[34~ -+# Shift-F11 \E[35~ -+# Shift-F12 \E[36~ - # --# This description also includes the obsolete termcap capabilities --# has_hardware_tabs (<OTpt>) and backspaces_with_bs (<OTbs>). -+# Ctrl-F1 \E[47~ -+# Ctrl-F2 \E[48~ -+# Ctrl-F3 \E[49~ -+# Ctrl-F4 \E[50~ -+# Ctrl-F5 \E[51~ -+# Ctrl-F6 \E[52~ -+# Ctrl-F7 \E[53~ -+# Ctrl-F8 \E[54~ -+# Ctrl-F9 \E[55~ -+# Ctrl-F10 \E[56~ -+# Ctrl-F11 \E[57~ -+# Ctrl-F12 \E[58~ - # --# FEATURES NOT YET DESCRIBED IN THIS TERMINFO -+# Ctrl-Delete \E[43~ -+# Ctrl-Down Arrow \E[38~ -+# Ctrl-End \E[44~ -+# Ctrl-Home \E[41~ -+# Ctrl-Insert \E[42~ -+# Ctrl-Left Arrow \E[39~ -+# Ctrl-Page Down \E[46~ -+# Ctrl-Page Up \E[45~ -+# Ctrl-Right Arrow \E[40~ -+# Ctrl-Up Arrow \E[37~ - # --# The FUNCT modifier actually works with every normal key by sending --# ^AX\r, where X is the sequence normally sent by that key. This is a --# sort of meta key not currently describable in terminfo. -+# Alt-F1 \E[59~ -+# Alt-F2 \E[60~ -+# Alt-F3 \E[61~ -+# Alt-F4 \E[62~ -+# Alt-F5 \E[63~ -+# Alt-F6 \E[64~ -+# Alt-F7 \E[65~ -+# Alt-F8 \E[66~ -+# Alt-F9 \E[67~ -+# Alt-F10 \E[68~ -+# Alt-F11 \E[79~ -+# Alt-F12 \E[80~ - # --# There are quite a few other keys (especially on the 920 models,) but --# they are for the most part only useful in block mode. -+# Alt-Delete \E[65~ -+# Alt-Down Arrow \E[60~ -+# Alt-End \E[66~ -+# Alt-Home \E[41~ -+# Alt-Insert \E[64~ -+# Alt-Left Arrow \E[61~ -+# Alt-Page Down \E[68~ -+# Alt-Page Up \E[67~ -+# Alt-Right Arrow \E[62~ -+# Alt-Up Arrow \E[59~ - # --# These terminals have lots of forms manipulation features, mainly --# useful in block mode, including "clear X to nulls" (vs. "clear X to --# spaces"; nulls are sentinels for "send X" operations); "send X" --# operations for uploading all or part of the screen; and block-mode --# editing keys (they don't send escape sequences, but manipulate video --# memory directly). Block mode is used for local editing, and protect --# mode (in conjunction with the "write protect" attribute, --# a.k.a. half-intensity outside of protect mode) is used to control --# which parts of the screen are edited/sent/printed (by <mc0>). --# --# There are at least two major families of ROM, "early" and --# A49B1/A49C1; the major difference seems to be that the latter ROMs --# support a few extra escape sequences for manipulating the off-screen --# memory page, and for sending whole pages back to the host (mainly --# useful in block mode.) The descriptions in this file don't use any --# of those sequences: set cursor position including page (\E-PYX, --# where P is \s for page 0 and ! for page 1 [actually only the LSB of --# P is taken into account, so e.g. 0 and 1 work too,] and Y and X are --# as in <cup>); read cursor position (\E/), which is analogous to <u9> --# and returns PYX\r, where P is \s for page 0 or ! for page 1, and YX --# are as in <cup>, and some "send page" features mainly useful for --# forms manipulation. --# --# The keyboard enable (\E") and disable (\E#) sequences are unused, --# except that a terminal reset (<is2>) enables the keyboard. -+# Also: -+# Alt-A \E[82~ -+# Alt-B \E[82~ -+# Alt-C \E[83~ -+# Alt-D \E[84~ -+# Alt-E \E[85~ -+# Alt-F \E[86~ -+# Alt-G \E[87~ -+# Alt-H \E[88~ -+# Alt-I \E[89~ -+# Alt-J \E[90~ -+# Alt-K \E[91~ -+# Alt-L \E[92~ -+# Alt-M \E[93~ -+# Alt-N \E[94~ -+# Alt-O \E[95~ -+# Alt-P \E[96~ -+# Alt-Q \E[97~ -+# Alt-R \E[98~ -+# Alt-S \E[99~ -+# Alt-T \E[100~ -+# Alt-U \E[101~ -+# Alt-V \E[102~ -+# Alt-W \E[103~ -+# Alt-X \E[104~ -+# Alt-Y \E[105~ -+# Alt-Z \E[106~ -+djgpp|ansi emulation for DJGPP alpha, -+ am, bce, msgr, xhp, xon, xt, -+ colors#8, it#8, pairs#64, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[1v, -+ clear=\E[H\E[J, cnorm=\E[v, cr=^M, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[2v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, -+ home=\E[H, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, -+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -+ indn=\E[%p1%dS, invis=\E[8m, kbs=^H, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, -+ kend=\E[4~, kf1=\E[[A, kf10=\E[21~, kf11=\E[23~, -+ kf12=\E[24~, kf2=\E[[B, kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, -+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[1~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=^M^J, -+ op=\E[37;40m, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%e;25%;%?%p6%t;1%;%?%p7%t;8%;m, -+ sgr0=\E[m, smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, -+ -+djgpp203|Entry for DJGPP 2.03, -+ OTbs, am, -+ cols#80, it#8, lines#25, -+ bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, -+ kcud1=^J, nel=^M^J, -+ -+djgpp204|Entry for DJGPP 2.04, -+ OTbs, am, AX, -+ colors#8, cols#80, it#8, lines#25, ncv#3, pairs#64, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[1v, -+ clear=\E[H\E[2J, cnorm=\E[v, cr=^M, cub=\E[%p1%dD, -+ cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -+ cuu1=\E[A, cvvis=\E[2v, dch=\E[%p1%dP, dch1=\E[P, -+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -+ home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, -+ il1=\E[L, ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, kbs=^H, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[3~, kf0=\E[21~, kf1=\E[[A, kf10=\E[21~, kf2=\E[[B, -+ kf3=\E[[C, kf4=\E[[D, kf5=\E[[E, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~, -+ kll=\E[4~, knp=\E[6~, kpp=\E[5~, nel=^M^J, rev=\E[7m, -+ ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, setab=\E[4%p1%dm, -+ setaf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, smul=\E[4m, -+ -+#### U/Win -+ -+# This is tested using U/Win's telnet. Scrolling is omitted because it is -+# buggy. Another odd bug appears when displaying "~" in alternate character -+# set (the emulator spits out error messages). Compare with att6386 -TD -+uwin|U/Win 3.2 console, -+ am, eo, in, msgr, xenl, xon, -+ colors#8, it#8, ncv#58, pairs#64, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, cub1=^H, cud1=^J, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, ech=\E[%p1%dX, -+ ed=\E[J, el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH, -+ ich=\E[%p1%d@, ich1=\E[@, kbs=^H, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[Y, kf1=\EOP, -+ kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf2=\EOQ, kf3=\EOR, -+ kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, kf9=\EOX, -+ khome=\E[H, kich1=\E[@, nel=^M^J, op=\E[39;49m, rc=\E8, -+ rev=\E[7m, rmacs=\E[10m, rmir=\E[4l, rmpch=\E[10m, -+ rmso=\E[27m, rmul=\E[m, rs1=\Ec\E]R, sc=\E7, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0;10m, -+ smacs=\E[11m, smir=\E[4h, smpch=\E[11m, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n, -+ -+#### Microsoft (miscellaneous) -+ -+# This entry fits the Windows NT console when the _POSIX_TERM environment -+# variable is set to 'on'. While the Windows NT POSIX console is seldom used, -+# the Telnet client supplied with both the Windows for WorkGroup 3.11 TCP/IP -+# stack and the Win32 (i.e., Windows 95 and Windows NT 3.1 or later) operating -+# systems is not, and (surprise!) they match very well. - # --# Auto-flip mode (\Ev) is likely faster than the scrolling mode (\Ew) --# enabled in <is2>, but auto-flip is very jarring so we don't use it. -+# See: MS Knowledge Base item Q108581, dated 13-MAY-1997, titled "Setting Up -+# VI POSIX Editor for Windows NT 3.1". True to Microsoft form, not only -+# are the installation instructions a pile of mind-numbing bureaucratese, -+# but the termcap entry is actually broken and unusable as given; the :do: -+# capability is misspelled "d". - # --# BUGS -+# To use this, you need to a bunch of environment variables: - # --# At least up to the A49B1 and A49C1 ROMs, there are no \Eb and \Ed --# sequences (I infer that in some TeleVideo terminal they may invert --# and uninvert the display) so the <flash> sequence given here is a --# cheesy page-flip instead. -+# SET _POSIX_TERM=on -+# SET TERM=ansi -+# SET TERMCAP=location of termcap file in POSIX file format -+# which is case-sensitive. -+# e.g. SET TERMCAP=//D/RESKIT35/posix/termcap -+# SET TMP=//C/TEMP - # --# The back_tab (<cbt>) sequence (\EI) doesn't work according to --# tack(1), so it is not included in the descriptions below. -+# Important note: setting the TMP environment variable in POSIX style renders -+# it incompatible with a lot of other applications, including Visual C++. So -+# you should have a separate command window just for vi. All the other -+# variables may be permanently set in the Control Panel\System applet. - # --# It's not clear whether auto_left_margin (<bw>) flag should be set --# for these terminals; tack says yes, so it is set here, but this --# differs from other descriptions I've seen. -+# You can find out more about the restrictions of this facility at -+# <http://www.nentug.org/unix-to-nt/ntposix.htm>. - # --# Extension print mode (<mc5>) echoes all characters to the printer --# port [in addition to displaying them] except for the page print mode --# sequence (<mc4>); this is a slight violation of the terminfo --# definition for <mc5> but I don't expect it to cause problems. We --# reset to page print mode in <rs1> since it may have been enabled --# accidentally. -+# From: Federico Bianchi <bianchi@magna.cisid.unipi.it>, 15 Jan 1997 -+ansi-nt|psx_ansi|Microsoft Windows NT console POSIX ANSI mode, -+ am, bw, msgr, -+ cols#80, it#8, lines#25, -+ bel=^G, clear=\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, -+ home=\E[H, ht=^I, ind=\E[S, kbs=^H, kcub1=\E[D, kcud1=\E[V, -+ kcuf1=\E[C, kcuu1=\E[A, nel=\r\E[S, rc=\E[u, rev=\E[7m, -+ ri=\E[T, rmso=\E[m, sc=\E[s, sgr0=\E[0m, smso=\E[7m, -+# From: jew@venus.sunquest.com -+# Date: 19 Feb 93 23:41:07 GMT -+# Here's a combination of ansi and vt100 termcap -+# entries that works nearly perfectly for me -+# (Gateway 2000 Handbook and Microsoft Works 3.0): -+pcmw|PC running Microsoft Works, -+ am, xenl, -+ cols#80, it#8, lines#24, vt#3, -+ bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>, -+ clear=\E[;H\E[2J$<50/>, cr=^M, cub1=^H, cud1=^J, -+ cuf1=\E[C$<2/>, cup=\E[%i%p1%d;%p2%dH$<5/>, -+ cuu1=\E[A$<2/>, ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, -+ ht=^I, hts=\EH$<2/>, ind=\ED$<5/>, is2=\E[1;24r\E[24;1H, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=\r\ED$<5/>, -+ rc=\E8, rev=\E[7m$<2/>, rf=/usr/share/tabset/vt100, -+ ri=\EM$<5/>, rmso=\E[m$<2/>, rmul=\E[m$<2/>, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sgr0=\E[m$<2/>, smso=\E[7m$<2/>, smul=\E[4m$<2/>, -+ tbc=\E[3g$<2/>, -+ -+# From: Federico Bianchi -+# This is the entry for the OpenNT terminal. -+# The ntconsole name is for backward compatability. -+# This is for OpenNT 2.0 and later. -+# Later OpenNT was renamed to Interix. - # --# The descriptions with plus signs (+) are building blocks. -+# Presently it is distributed by Microsoft as Services For Unix (SFU). -+# The 3.5 beta contains ncurses 4.2 (that is header files and executables, -+# the documentation dates from 1.9.9e) -TD - --tvi912b-unk|tvi912c-unk|TeleVideo TVI-912B or TVI-912C (no attributes), -- OTbs, OTpt, am, bw, -- cols#80, it#8, lines#24, -- bel=^G, clear=\032$<50>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%' '%+%c%p2%' '%+%c, cuu1=^K, dch1=\EW$<30>, -- dl1=\ER$<1*>$<100>, ed=\Ey$<2*>$<10>, el=\ET$<15>, -- home=^^, ht=^I, hts=\E1, ich1=\EQ$<30>, -- if=/usr/share/tabset/stdcrt, il1=\EE$<1*>$<100>, -- ind=\n$<10>, is2=\Ew\EA\E'\E"\E(, kcub1=^H, kcud1=^J, -- kcuf1=^L, kcuu1=^K, kdch1=\177, kent=^M, khome=^^, mc4=\EA, -- mc5=\E@, rs1=\Ek\010\Em\010\Eq\032, tbc=\E3, u6=%c%c\r, -- u7=\E?, u8=%c%c\r, u9=\E?, -+interix|opennt|opennt-25|ntconsole|ntconsole-25|OpenNT-term compatible with color, -+ am, bw, msgr, -+ colors#8, cols#80, lines#25, ncv#3, pairs#64, -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[2J, cub=\E[%p1%dD, -+ cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -+ cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, -+ home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -+ indn=\E[%p1%dS, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[M, kend=\E[U, kf0=\EFA, -+ kf1=\EF1, kf10=\EFA, kf11=\EFB, kf12=\EFC, kf13=\EFD, -+ kf14=\EFE, kf15=\EFF, kf16=\EFG, kf17=\EFH, kf18=\EFI, -+ kf19=\EFJ, kf2=\EF2, kf20=\EFK, kf21=\EFL, kf22=\EFM, -+ kf23=\EFN, kf24=\EFO, kf25=\EFP, kf26=\EFQ, kf27=\EFR, -+ kf28=\EFS, kf29=\EFT, kf3=\EF3, kf30=\EFU, kf31=\EFV, -+ kf32=\EFW, kf33=\EFX, kf34=\EFY, kf35=\EFZ, kf36=\EFa, -+ kf37=\EFb, kf38=\EFc, kf39=\EFd, kf4=\EF4, kf40=\EFe, -+ kf41=\EFf, kf42=\EFg, kf43=\EFh, kf44=\EFi, kf45=\EFj, -+ kf46=\EFk, kf47=\EFm, kf48=\EFn, kf49=\EFo, kf5=\EF5, -+ kf50=\EFp, kf51=\EFq, kf52=\EFr, kf53=\EFs, kf54=\EFt, -+ kf55=\EFu, kf56=\EFv, kf57=\EFw, kf58=\EFx, kf59=\EFy, -+ kf6=\EF6, kf60=\EFz, kf61=\EF+, kf62=\EF-, -+ kf63=\EF\014 kf64=\EF$, kf7=\EF7, kf8=\EF8, kf9=\EF9, -+ kich1=\E[L, kll=\E[U, knp=\E[T, kpp=\E[S, ll=\E[U, nel=^M^J, -+ op=\E[m, rc=\E[u, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, -+ rmcup=\E[2b\E[u\r\E[K, rmso=\E[m, rmul=\E[m, rs1=\Ec, -+ sc=\E[s, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ setb=\E[%p1%{40}%+%dm, setf=\E[%p1%{30}%+%dm, -+ sgr0=\E[0m, smcup=\E[s\E[1b, smso=\E[7m, smul=\E[4m, - --# This isn't included in the basic capabilities because it is --# typically unusable in combination with the full range of video --# attributes, since the magic cookie attributes turn into ASCII --# control characters, and the half-intensity ("protected") attribute --# converts all affected characters to spaces. -+opennt-35|ntconsole-35|OpenNT-term35 compatible with color, -+ lines#35, use=opennt, - --tvi912b+printer|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C page print support, -- mc0=\EP, -+opennt-50|ntconsole-50|OpenNT-term50 compatible with color, -+ lines#50, use=opennt, - --# This uses half-intensity mode (<dim>) for standout (<smso>), and --# exposes no other attributes (half-intensity is the only attribute --# that does not generate a magic cookie.) -- --tvi912b+dim|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C half-intensity attribute support, -- msgr, -- dim=\E), rmso=\E(, sgr=\E%?%p1%p5%|%t)%e(%;, sgr0=\E(, -- smso=\E), -- --# Full magic-cookie attribute support, with half-intensity reverse --# video for standout. Note that we add a space in the <dim> sequence --# to give a consistent magic-cookie count. Also note that <sgr> uses --# backspacing (in the TVI-supported order) to apply all requested --# attributes with only a single magic cookie. -- --tvi912b+mc|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C full magic-cookie attribute support, -- xmc#1, -- blink=\E\^, dim=\E)\s, invis=\E_, rev=\Ej, rmso=\E(\Ek, -- rmul=\Em, -- sgr=\E%?%p1%p5%|%t)%e(%; \010\E%?%p1%p3%|%tj%ek%;\010\E%?%p2%tl%em%;\010\E%?%p7%t_%e%?%p4%t\^%eq%;%;, -- sgr0=\E(\Ek\010\Em\010\Eq, smso=\E)\Ej, smul=\El, -+opennt-60|ntconsole-60|OpenNT-term60 compatible with color, -+ lines#60, use=opennt, - --# This uses the second page memory option to save & restore screen --# contents. If your terminal is missing the option, this description --# should still work, but that has not been tested. -+opennt-100|ntconsole-100|OpenNT-term100 compatible with color, -+ lines#100, use=opennt, - --tvi912b+2p|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option support, -- flash=\EK$<100>\EK, rmcup=\032$<50>\EK\E=7\s, -- smcup=\EK\032$<50>\E(\Ek\010\Em\010\Eq\032$<50>, -+# OpenNT wide terminals -+opennt-w|opennt-25-w|ntconsole-w|ntconsole-25-w|OpenNT-term-w compat with color, -+ cols#125, use=opennt, - --# This simulates flashing by briefly toggling to the other page --# (kludge!) -+opennt-35-w|ntconsole-35-w|OpenNT-term35-w compatible with color, -+ lines#35, use=opennt-w, - --tvi912b+vb|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option "visible bell" support, -- bel=\EK$<100>\EK, use=tvi912b+2p, -+opennt-50-w|ntconsole-50-w|OpenNT-term50-w compatible with color, -+ lines#50, use=opennt-w, - --# Function keys (<kf12> .. <kf22> are shifted <kf1> .. <kf11>) -+opennt-60-w|ntconsole-60-w|OpenNT-term60-w compatible with color, -+ lines#60, use=opennt-w, - --tvi920b+fn|TeleVideo TVI-920B and TVI-920C function key support, -- kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^A`\r, kf13=^Aa\r, -- kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r, kf17=^Ae\r, kf18=^Af\r, -- kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r, kf21=^Ai\r, kf22=^Aj\r, -- kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -- kf8=^AG\r, kf9=^AH\r, -+opennt-w-vt|opennt-25-w-vt|ntconsole-w-vt|ntconsole-25-w-vt|OpenNT-term-w-vt compat with color, -+ cols#132, use=opennt, - --# Combinations of the basic building blocks -+# OpenNT terminals with no smcup/rmcup (names match termcap entries) -+interix-nti|opennt-nti|opennt-25-nti|ntconsole-25-nti|OpenNT-nti compatible with color, -+ rmcup@, smcup@, use=opennt, - --tvi912b-2p-unk|tvi912c-2p-unk|tvi912b-unk-2p|tvi912c-unk-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes), -- use=tvi912b+2p, use=tvi912b-unk, -+opennt-35-nti|ntconsole-35-nti|OpenNT-term35-nti compatible with color, -+ lines#35, use=opennt-nti, - --tvi912b-vb-unk|tvi912c-vb-unk|tvi912b-unk-vb|tvi912c-unk-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes), -- use=tvi912b+vb, use=tvi912b-unk, -+opennt-50-nti|ntconsole-50-nti|OpenNT-term50-nti compatible with color, -+ lines#50, use=opennt-nti, - --tvi912b-p|tvi912c-p|TeleVideo TVI-912B or TVI-912C (no attributes; page print), -- use=tvi912b+printer, use=tvi912b-unk, -+opennt-60-nti|ntconsole-60-nti|OpenNT-term60-nti compatible with color, -+ lines#60, use=opennt-nti, - --tvi912b-2p-p|tvi912c-2p-p|tvi912b-p-2p|tvi912c-p-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes; page print), -- use=tvi912b+2p, use=tvi912b+printer, use=tvi912b-unk, -+opennt-100-nti|ntconsole-100-nti|OpenNT-term100-nti compatible with color, -+ lines#100, use=opennt-nti, - --tvi912b-vb-p|tvi912c-vb-p|tvi912b-p-vb|tvi912c-p-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes; page print), -- use=tvi912b+vb, use=tvi912b+printer, use=tvi912b-unk, -+######## COMMON TERMINAL TYPES -+# -+# This section describes terminal classes and maker brands that are still -+# quite common, but have proprietary command sets not blessed by ANSI. -+# - --tvi912b-2p|tvi912c-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; half-intensity attribute), -- use=tvi912b+2p, use=tvi912b+dim, use=tvi912b-unk, -+#### Altos -+# -+# Altos made a moderately successful line of UNIX boxes. In 1990 they were -+# bought out by Acer, a major Taiwanese manufacturer of PC-clones. -+# Acer has a web site at http://www.acer.com. -+# -+# Altos descriptions from Ted Mittelstaedt <tedm@agora.rain.com> 4 Sep 1993 -+# His comments suggest they were shipped with the system. -+# - --tvi912b-2p-mc|tvi912c-2p-mc|tvi912b-mc-2p|tvi912c-mc-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; magic cookies), -- use=tvi912b+2p, use=tvi912b+mc, use=tvi912b-unk, -+# (altos2: had extension capabilities -+# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ -+# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ -+# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ -+# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: -+# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\ -+# :YU=^AQ\r:YD=^AR\r:YR=^AS\r:YL=^AT\r:\ -+# :HL=^AP\r:SP=\E[i:\ -+# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T:\ -+# :LO=\E[0q:LC=\E[5q:LL=\E[6q:\ -+# Comparison with the k* capabilities makes it obvious that the c* things are -+# shift keys. I have renamed them to keys 32 and up accordingly. Also, -+# :sr: was given as a boolean-- esr) -+altos2|alt2|altos-2|altos II, -+ cols#80, it#8, lines#24, xmc#0, -+ clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[1B, cuf1=\E[1C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[1A, dch1=\E[P, dl1=\E[M, -+ ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@, -+ if=/usr/share/tabset/vt100, il1=\E[L, ind=^J, -+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kDL=^Am\r, -+ kEOL=^An\r, kbs=^H, kcbt=^AK\r, kclr=^AL\r, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=^AM\r, kel=^AN\r, -+ kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf32=^A`\r, -+ kf33=^Aa\r, kf34=^Ab\r, kf35=^Ac\r, kf36=^Ad\r, kf37=^Ae\r, -+ kf38=^Af\r, kf39=^Ag\r, kf4=^AC\r, kf40=^Ah\r, kf41=^Ai\r, -+ kf42=^Aj\r, kf43=^Ak\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -+ kf8=^AG\r, kf9=^AH\r, khome=\E[f, kil1=^AJ\r, kind=^AO\r, -+ nel=^M^J, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, sgr0=\E[m, -+ smam=\E[?7h, smso=\E[7m, smul=\E[4m, -+# (altos3: had extension capabilities -+# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ -+# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ -+# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ -+# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: -+# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\ -+# :HL=^AP\r:SP=\E[i:\ -+# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T: -+altos3|altos5|alt3|alt5|altos-3|altos-5|altos III or V, -+ blink=\E[5p, ri=\EM, sgr0=\E[p, use=altos2, -+altos4|alt4|altos-4|altos IV, -+ use=wy50, -+# (altos7: had extension capabilities: -+# :GG#0:GI=\EH8:GF=\EH7:\ -+# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\ -+# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\ -+# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\ -+# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r: -+# Comparison with the k* capabilities makes it obvious that the c* things are -+# shift keys. I have renamed them to keys 32 and up accordingly. I have -+# also made this entry relative to adm12 in order to give it an <sgr>. The -+# <invis> imported by use=adm+sgr may work, let me know. -- esr) -+altos7|alt7|altos VII, -+ am, mir, -+ cols#80, lines#24, xmc#0, -+ acsc=j5k3l2m1n8q\:t4u9v=w0x6, blink=\EG2, bold=\EGt, -+ clear=\E+^^, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dim=\EGp, dl1=\ER, ed=\EY, el=\ET, home=^^, ht=^I, il1=\EE, -+ ind=^J, invis=\EG1, -+ is2=\E`\:\Ee(\EO\Ee6\Ec41\E~4\Ec21\Eu\E~2, kDL=^Am\r, -+ kEOL=^An\r, kbs=^H, kcbt=^AK\r, kclr=^AL\r, kcub1=^H, -+ kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=^AM\r, kel=^AN\r, -+ kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf32=^A`\r, -+ kf33=^Aa\r, kf34=^Ab\r, kf35=^Ac\r, kf36=^Ad\r, kf37=^Ae\r, -+ kf38=^Af\r, kf39=^Ag\r, kf4=^AC\r, kf40=^Ah\r, kf41=^Ai\r, -+ kf42=^Aj\r, kf43=^Ak\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -+ kf8=^AG\r, kf9=^AH\r, khome=^^, kil1=^AJ\r, kind=^AO\r, -+ knp=\EK, kpp=\EJ, mc4=\EJ, mc5=\Ed#, nel=^M^J, ri=\Ej, -+ rmir=\Er, smir=\Eq, use=adm+sgr, -+altos7pc|alt7pc|altos PC VII, -+ kend=\ET, use=altos7, - --tvi912b-vb|tvi912c-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; half-intensity attribute), -- use=tvi912b+vb, use=tvi912b+dim, use=tvi912b-unk, -+#### Hewlett-Packard (hp) -+# -+# Hewlett-Packard -+# 8000 Foothills Blvd -+# Roseville, CA 95747 -+# Vox: 1-(916)-785-4363 (Technical response line for VDTs) -+# 1-(800)-633-3600 (General customer support) -+# -+# -+# As of March 1998, HP no longer has any terminals in production. -+# The 700 series (22, 32, 41, 44, 92, 94, 96, 98) is still being -+# supported (they still have parts). So are the 2392a and 2394a. -+# See the WORKSTATION CONSOLES section for the 700s. -+# - --tvi912b-vb-mc|tvi912c-vb-mc|tvi912b-mc-vb|tvi912c-mc-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; magic cookies), -- use=tvi912b+vb, use=tvi912b+mc, use=tvi912b-unk, -+# Generic HP terminal - this should (hopefully) work on any HP terminal. -+hpgeneric|hp|hewlett-packard generic terminal, -+ OTbs, OTpt, am, da, db, mir, xhp, -+ cols#80, lines#24, lm#0, vt#6, -+ bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\E&a%p2%dc%p1%dY$<6>, cuu1=\EA, dch1=\EP, dl1=\EM, -+ ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL, -+ ind=^J, kbs=^H, kcbt=\Ei, rmir=\ER, rmso=\E&d@, rmul=\E&d@, -+ sgr0=\E&d@, smir=\EQ, smso=\E&dJ, smul=\E&dD, tbc=\E3, -+ vpa=\E&a%p1%dY, - --tvi912b|tvi912c|TeleVideo TVI-912B or TVI-912C (half-intensity attribute), -- use=tvi912b+dim, use=tvi912b-unk, -+hp110|hewlett-packard model 110 portable, -+ lines#16, use=hpgeneric, - --tvi912b-mc|tvi912c-mc|TeleVideo TVI-912B or TVI-912C (magic cookies), -- use=tvi912b+mc, use=tvi912b-unk, -+hp+pfk+cr|hp function keys with CR, -+ kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, -+ kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, - --tvi920b-unk|tvi920c-unk|TeleVideo TVI-920B or TVI-920C (no attributes), -- use=tvi920b+fn, use=tvi912b-unk, -+hp+pfk-cr|hp function keys w/o CR, -+ kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, -+ kf8=\Ew, - --tvi920b-2p-unk|tvi920c-2p-unk|tvi920b-unk-2p|tvi920c-unk-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes), -- use=tvi920b+fn, use=tvi912b+2p, use=tvi912b-unk, -+# The hp2621s use the same keys for the arrows and function keys, -+# but not separate escape sequences. These definitions allow the -+# user to use those keys as arrow keys rather than as function -+# keys. -+hp+pfk+arrows|hp alternate arrow definitions, -+ kcub1=\Eu\r, kcud1=\Ew\r, kcuf1=\Ev\r, kcuu1=\Et\r, kf1@, -+ kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, khome=\Ep\r, kind=\Er\r, -+ kll=\Eq\r, kri=\Es\r, - --tvi920b-vb-unk|tvi920c-vb-unk|tvi920b-unk-vb|tvi920c-unk-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes), -- use=tvi920b+fn, use=tvi912b+vb, use=tvi912b-unk, -+hp+arrows|hp arrow definitions, -+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh, -+ kind=\ES, kll=\EF, kri=\ET, - --tvi920b-p|tvi920c-p|TeleVideo TVI-920B or TVI-920C (no attributes; page print), -- use=tvi920b+fn, use=tvi912b+printer, use=tvi912b-unk, -+# Generic stuff from the HP 262x series -+# -+hp262x|HP 262x terminals, -+ xhp, -+ blink=\E&dA, dch1=\EP$<2>, ed=\EJ, ht=\011$<2>, ind=\ES, -+ invis=\E&dS, ip=$<2>, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -+ kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, khome=\Eh, -+ kich1=\EQ, kil1=\EL, kind=\ES, knp=\EU, kpp=\EV, kri=\ET, -+ krmir=\ER, rev=\E&dB, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, -+ sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%c, -+ sgr0=\E&d@, smkx=\E&s1A, smso=\E&dB, smul=\E&dD, - --tvi920b-2p-p|tvi920c-2p-p|tvi920b-p-2p|tvi920c-p-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes; page print), -- use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+printer, -- use=tvi912b-unk, -+# Note: no <home> on HPs since that homes to top of memory, not screen. -+# Due to severe 2621 braindamage, the only way to get the arrow keys to -+# transmit anything at all is to turn on the function key labels -+# with <smkx>, and even then the user has to hold down shift! -+# The default 2621 turns off the labels except when it has to to -+# enable the function keys. If your installation prefers labels -+# on all the time, or off all the time (at the "expense" of the -+# function keys), use 2621-nl or 2621-wl. -+# -+# Note: there are newer ROMs for 2621's that allow you to set -+# strap A so the regular arrow keys xmit \EA, etc, as with the -+# 2645. However, even with this strap set, the terminal stops -+# xmitting if you reset it, until you unset and reset the strap! -+# Since there is no way to set/unset the strap with an escape -+# sequence, we don't use it in the default. -+# If you like, you can use 2621-ba (brain-damaged arrow keys). -+hp2621-ba|2621 w/new rom and strap A set, -+ rmkx@, smkx@, use=hp+arrows, use=hp2621, - --tvi920b-vb-p|tvi920c-vb-p|tvi920b-p-vb|tvi920c-p-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes; page print), -- use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+printer, -- use=tvi912b-unk, -- --tvi920b-2p|tvi920c-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; half-intensity attribute), -- use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+dim, -- use=tvi912b-unk, -- --tvi920b-2p-mc|tvi920c-2p-mc|tvi920b-mc-2p|tvi920c-mc-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; magic cookies), -- use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+mc, -- use=tvi912b-unk, -+# hp2621 with function labels. Most of the time they are off, -+# but inside vi, the function key labels appear. You have to -+# hold down shift to get them to xmit. -+hp2621|hp2621a|hp2621A|2621|2621a|2621A|hp2621-wl|2621-wl|hp 2621 w/labels, -+ is2=\E&jA\r, rmkx=\E&jA, use=hp2621-fl, -+hp2621-fl|hp 2621, -+ xhp@, xon, -+ pb#19200, -+ cbt=\Ei, cup=\E&a%p2%dc%p1%dY, dch1=\EP$<2>, ht=\011$<2>, -+ ip=$<2>, is2=\E&j@\r, rmkx=\E&j@, rmso=\E&d@, rmul=\E&d@, -+ sgr0=\E&d@, smkx=\E&jB, smso=\E&dD, smul=\E&dD, -+ use=hp+pfk+cr, use=hpgeneric, - --tvi920b-vb|tvi920c-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; half-intensity attribute), -- use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+dim, -- use=tvi912b-unk, -+# To use hp2621p printer, setenv TERM=2621p, PRINTER=2612p -+hp2621p|hp 2621 with printer, -+ mc4=\E&p13C, mc5=\E&p11C, use=hp2621, - --tvi920b-vb-mc|tvi920c-vb-mc|tvi920b-mc-vb|tvi920c-mc-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; magic cookies), -- use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+mc, -- use=tvi912b-unk, -+hp2621p-a|hp2621p with fn as arrows, -+ use=hp+pfk+arrows, use=hp2621p, - --tvi920b|tvi920c|TeleVideo TVI-920B or TVI-920C (half-intensity attribute), -- use=tvi920b+fn, use=tvi912b+dim, use=tvi912b-unk, -+# hp2621 with k45 keyboard -+hp2621-k45|hp2621k45|k45|hp 2621 with 45 keyboard, -+ kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -+ khome=\Eh, rmkx=\E&s0A, smkx=\E&s1A, use=hp2621, - --tvi920b-mc|tvi920c-mc|TeleVideo TVI-920B or TVI-920C (magic cookies), -- use=tvi920b+fn, use=tvi912b+mc, use=tvi912b-unk, -+# 2621 using all 48 lines of memory, only 24 visible at any time. -+hp2621-48|48 line 2621, -+ lines#48, -+ cup=\E&a%p2%dc%p1%dR, home=\EH, vpa=\E&a%p1%dR, -+ use=hp2621, - --# Televideo 921 and variants --# From: Tim Theisen <tim@cs.wisc.edu> 22 Sept 1995 --# (tvi921: removed :ko=bt: before translation, I see no backtab cap; --# also added empty <acsc> to suppress tic warning -- esr) --tvi921|televideo model 921 with sysline same as page & real vi function, -- OTbs, OTpt, am, hs, xenl, xhp, -- cols#80, lines#24, xmc#0, -- acsc=, clear=^Z, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<3/>, cuu1=^K, -- cvvis=\E.2, dch1=\EW, dl1=\ER$<1*/>, dsl=\Ef\r\Eg, ed=\EY, -- el=\ET, fsl=\Eg, home=^^, ht=^I, ich1=\EQ, -- if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, invis@, -- is2=\El\E"\EF1\E.3\017\EA\E<, kbs=^H, kclr=^Z, kcub1=^H, -- kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER$<1*/>, -- ked=\EY, kel=\ET, kich1=\EQ, kil1=\EE, nel=^M^J, rmacs=\E%%, -- rmir=, smacs=\E$, smir=, tsl=\Ef\EG0, use=adm+sgr, --# without the beeper --# (tvi92B: removed :ko=bt: before translation, I see no backtab cap; --# also added empty <acsc> to suppress tic warning -- esr) --tvi92B|televideo model 921 with sysline same as page & real vi function & no beeper, -- am, hs, xenl, xhp, -- cols#80, lines#24, xmc#0, -- acsc=, clear=^Z, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<3/>, cuu1=^K, -- cvvis=\E.2, dch1=\EW, dl1=\ER$<1*/>, dsl=\Ef\r\Eg, ed=\EY, -- el=\ET, flash=\Eb$<200/>\Ed, fsl=\Eg, home=^^, ht=^I, -- ich1=\EQ, if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, -- invis@, is2=\El\E"\EF1\E.3\017\EA\E<, kbs=^H, kclr=^Z, -- kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, -- kdl1=\ER$<1*/>, ked=\EY, kel=\ET, kich1=\EQ, kil1=\EE, -- nel=^M^J, rmacs=\E%%, smacs=\E$, tsl=\Ef\EG0, use=adm+sgr, --# (tvi92D: removed :ko=bt: before translation, I see no backtab cap -- esr) --tvi92D|tvi92B with DTR instead of XON/XOFF & better padding, -- dl1=\ER$<2*/>, il1=\EE$<2*/>, -- is2=\El\E"\EF1\E.3\016\EA\E<, kdl1=\ER$<2*/>, -- kil1=\EE$<2*/>, use=tvi92B, -+# 2621 with no labels ever. Also prevents vi delays on escape. -+hp2621-nl|hp 2621 with no labels, -+ kcub1@, kcud1@, kcuf1@, kcuu1@, khome@, rmkx@, smkx@, -+ use=hp2621-fl, - --# (tvi924: This used to have <dsl=\Es0>, <fsl=\031>. I put the new strings --# in from a BSD termcap file because it looks like they do something the --# old ones skip -- esr) --tvi924|televideo tvi924, -- am, bw, hs, in, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, wsl#80, xmc#0, -- bel=^G, blink=\EG2, cbt=\EI, civis=\E.0, clear=\E*0, -- cnorm=\E.3, cr=^M, csr=\E_%p1%{32}%+%c%p2%{32}%+%c, -- cub1=^H, cud1=^V, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, cvvis=\E.1, -- dch1=\EW, dl1=\ER, dsl=\Es0\Ef\031, ed=\Ey, el=\Et, -- flash=\Eb$<200>\Ed, fsl=\031\Es1, home=^^, ht=^I, hts=\E1, -- ich1=\EQ, if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, -- invis@, is1=\017\E%\E'\E(\EDF\EC\EG0\EN0\Es0\Ev0, -- kbs=^H, kclr=\E*0, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, -- kdch1=\EW, kdl1=\ER, ked=\Ey, kel=\Et, kf0=^A@\r, kf1=^AA\r, -- kf10=^AJ\r, kf11=^AK\r, kf12=^AL\r, kf13=^AM\r, kf14=^AN\r, -- kf15=^AO\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, kf5=^AE\r, -- kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, khome=^^, -- kich1=\EQ, kil1=\EE, lf0=F1, lf1=F2, lf10=F11, lf2=F3, lf3=F4, -- lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, lf9=F10, -- pfkey=\E|%p1%{49}%+%c%p2%s\031, ri=\Ej, tbc=\E3, tsl=\Ef, -- use=adm+sgr, -+# Needed for UCB ARPAVAX console, since lsi-11 expands tabs -+# (wrong). -+# -+hp2621-nt|hp 2621 w/no tabs, -+ ht@, use=hp2621, - --# TVI925 DIP switches. In each of these, D = Down and U = Up, -+# Hp 2624 B with 4 or 10 pages of memory. - # --# Here are the settings for the external (baud) switches (S1): -+# Some assumptions are made with this entry. These settings are -+# NOT set up by the initialization strings. - # --# Position Baud --# 7 8 9 10 [Printer] --# 1 2 3 4 [Main RS232] --# ----------------------------------------------------- --# D D D D 9600 --# D D D U 50 --# D D U D 75 --# D D U U 110 --# D U D D 135 --# D U D U 150 --# D U U D 300 --# D U U U 600 --# U D D D 1200 --# U D D U 1800 --# U D U D 2400 --# U D U U 3600 --# U U D D 4800 --# U U D U 7200 --# U U U D 9600 --# U U U U 19200 -+# Port Configuration -+# RecvPace=Xon/Xoff -+# XmitPace=Xon/Xoff -+# StripNulDel=Yes - # -+# Terminal Configuration -+# InhHndShk=Yes -+# InhDC2=Yes -+# XmitFnctn(A)=No -+# InhEolWrp=No - # --# Settings for word length and stop-bits (S1) -+# Note: the 2624 DOES have a true <home>, believe it or not! - # --# Position Description --# 5 6 --# --------------------------- --# U - 7-bit word --# D - 8-bit word --# - U 2 stop bits --# - D 1 stop bit -+# The 2624 has an "error line" to which messages can be sent. -+# This is CLOSE to what is expected for a "status line". However, -+# after a message is sent to the "error line", the next carriage -+# return is EATEN and the "error line" is turned back off again! -+# So I guess we can't define <hs>, <eslok>, <wsl>, <dsl>, <fsl>, <tsl>. - # -+# This entry supports emacs (and any other program that uses raw -+# mode) at 4800 baud and less. I couldn't get the padding right -+# for 9600. - # --# S2 (external) settings -+# (hp2624: replaced NUL sequences in flash with mandatory pauses -- esr) -+hp2624|hp2624a|hp2624b|hp2624b-4p|Hewlett Packard 2624 B, -+ da, db, -+ lm#96, -+ flash=\E&w13F$<66/>\E&w12F$<66/>\E&w13F$<66/>\E&w12F, -+ use=hp+labels, use=scrhp, -+ -+# This hp2626 entry does not use any of the fancy windowing stuff -+# of the 2626. - # --# Position Up Dn Description --# -------------------------------------------- --# 1 X Local edit --# X Duplex edit (transmit editing keys) --# -------------------------------------------- --# 2 X 912/920 emulation --# X 925 --# -------------------------------------------- --# 3 X --# 4 X No parity --# 5 X --# -------------------------------------------- --# 3 X --# 4 X Odd parity --# 5 X --# -------------------------------------------- --# 3 X --# 4 X Even parity --# 5 X --# -------------------------------------------- --# 3 X --# 4 X Mark parity --# 5 X --# -------------------------------------------- --# 3 X --# 4 X Space parity --# 5 X --# -------------------------------------------- --# 6 X White on black display --# X Black on white display --# -------------------------------------------- --# 7 X Half Duplex --# 8 X --# -------------------------------------------- --# 7 X Full Duplex --# 8 X --# -------------------------------------------- --# 7 X Block mode --# 8 X --# -------------------------------------------- --# 9 X 50 Hz --# X 60 Hz --# -------------------------------------------- --# 10 X CR/LF (Auto LF) --# X CR only -+# Indeed, terminfo does not yet handle such stuff. Since changing -+# any window clears memory, it is probably not possible to use -+# this for screen opt. - # --# S3 (internal switch) settings: -+# ed is incredibly slow most of the time - I am guessing at the -+# exact padding. Since the terminal uses xoff/xon this is intended -+# only for cost computation, so that the terminal will prefer el -+# or even dl1 which is probably faster! - # --# Position Up Dn Description --# -------------------------------------------- --# 1 X Keyclick off --# X Keyclick on --# -------------------------------------------- --# 2 X English --# 3 X --# -------------------------------------------- --# 2 X German --# 3 X --# -------------------------------------------- --# 2 X French --# 3 X --# -------------------------------------------- --# 2 X Spanish --# 3 X --# -------------------------------------------- --# 4 X Blinking block cursor --# 5 X --# -------------------------------------------- --# 4 X Blinking underline cursor --# 5 X --# -------------------------------------------- --# 4 X Steady block cursor --# 5 X --# -------------------------------------------- --# 4 X Steady underline cursor --# 5 X --# -------------------------------------------- --# 6 X Screen blanking timer (ON) --# X Screen blanking timer (OFF) --# -------------------------------------------- --# 7 X Page attributes --# X Line attributes --# -------------------------------------------- --# 8 X DCD disconnected --# X DCD connected --# -------------------------------------------- --# 9 X DSR disconnected --# X DSR connected --# -------------------------------------------- --# 10 X DTR Disconnected --# X DTR connected --# -------------------------------------------- --# --# (tvi925: BSD has <clear=\E*>. I got <is2> and <ri> from there -- esr) --tvi925|televideo 925, -- OTbs, am, bw, hs, ul, -- cols#80, lines#24, xmc#1, -- bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=^M, cub1=^H, cud1=^V, -- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- cvvis=\E.2, dch1=\EW, dl1=\ER, dsl=\Eh, ed=\EY, el=\ET, -- flash=\Eb$<200>\Ed, fsl=^M\Eg, home=^^, ht=^I, hts=\E1, -- ich1=\EQ, il1=\EE, ind=^J, invis@, is2=\El\E", kbs=^H, kclr=^Z, -- kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, -- ked=\EY, kel=\ET, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, -- kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, -- kf9=^AH\r, khome=^^, kich1=\EQ, kil1=\EE, ri=\Ej, tbc=\E3, -- tsl=\Eh\Ef, use=adm+sgr, --# TeleVideo 925 from Mitch Bradley <sun!wmb> via BRL --# to avoid "magic cookie" standout glitch: --tvi925-hi|TeleVideo Model 925 with half intensity standout mode, -- xmc@, -- kbs=^H, kcub1=^H, kcud1=^J, rmso=\E(, smso=\E), use=tvi925, -- --# From: Todd Litwin <litwin@litwin.jpl.nasa.gov> 28 May 1993 --# Originally Tim Curry, Univ. of Central Fla., <duke!ucf-cs!tim> 5/21/82 --# for additional capabilities, --# The following tvi descriptions from B:pjphar and virus!mike --# is for all 950s. It sets the following attributes: --# full duplex (\EDF) write protect off (\E() --# conversation mode (\EC) graphics mode off (\E%) --# white on black (\Ed) auto page flip off (\Ew) --# turn off status line (\Eg) clear status line (\Ef\r) --# normal video (\E0) monitor mode off (\EX or \Eu) --# edit mode (\Er) load blank char to space (\Ee\040) --# line edit mode (\EO) enable buffer control (^O) --# protect mode off (\E\047) duplex edit keys (\El) --# program unshifted send key to send line all (\E016) --# program shifted send key to send line unprotected (\E004) --# set the following to nulls: --# field delimiter (\Ex0\200\200) --# line delimiter (\Ex1\200\200) --# start-protected field delimiter (\Ex2\200\200) --# end-protected field delimiter (\Ex3\200\200) --# set end of text delimiter to carriage return/null (\Ex4\r\200) --# --# TVI 950 Switch Setting Reference Charts --# --# TABLE 1: --# --# S1 1 2 3 4 5 6 7 8 9 10 --# +-----------------------+-----+-----+-----------------------+ --# | Computer Baud Rate |Data |Stop | Printer Baud Rate | --# | |Bits |Bits | | --# +------+-----------------------+-----+-----+-----------------------+ --# | Up | See | 7 | 2 | See | --# +------+-----------------------+-----+-----+-----------------------+ --# | Down | TABLE 2 | 8 | 1 | TABLE 2 | --# +------+-----------------------+-----+-----+-----------------------+ --# --# --# S2 1 2 3 4 5 6 7 8 9 10 --# +-----+-----+-----------------+-----+-----------+-----+-----+ --# |Edit |Cursr| Parity |Video|Transmiss'n| Hz |Click| --# +------+-----+-----+-----------------+-----+-----------+-----+-----+ --# | Up | Dplx|Blink| See |GonBk| See | 60 | Off | --# +------+-----+-----+-----------------+-----+-----------+-----+-----+ --# | Down |Local|St'dy| TABLE 3 |BkonG| CHART | 50 | On | --# +------+-----+-----+-----------------+-----+-----------+-----+-----+ --# --# TABLE 2: --# --# +-----------+-----+-----+-----+-----+-----------+ --# | Display | 1 | 2 | 3 | 4 | Baud | --# +-----------+-----+-----+-----+-----+ | --# | Printer | 7 | 8 | 9 | 10 | Rate | --# +-----------+-----+-----+-----+-----+-----------+ --# | D | D | D | D | 9600 | --# | U | D | D | D | 50 | --# | D | U | D | D | 75 | --# | U | U | D | D | 110 | --# | D | D | U | D | 135 | --# | U | D | U | D | 150 | --# | D | U | U | D | 300 | --# | U | U | U | D | 600 | --# | D | D | D | U | 1200 | --# | U | D | D | U | 1800 | --# | D | U | D | U | 2400 | --# | U | U | D | U | 3600 | --# | D | D | U | U | 4800 | --# | U | D | U | U | 7200 | --# | D | U | U | U | 9600 | --# | U | U | U | U | 19200 | --# +-----+-----+-----+-----+-----------+ --# --# TABLE 3: --# +-----+-----+-----+-----------+ --# | 3 | 4 | 5 | Parity | --# +-----+-----+-----+-----------+ --# | X | X | D | None | --# | D | D | U | Odd | --# | D | U | U | Even | --# | U | D | U | Mark | --# | U | U | U | Space | --# +-----+-----+-----+-----------+ --# X = don't care --# --# CHART: --# +-----+-----+-----------------+ --# | 7 | 8 | Communication | --# +-----+-----+-----------------+ --# | D | D | Half Duplex | --# | D | U | Full Duplex | --# | U | D | Block | --# | U | U | Local | --# +-----+-----+-----------------+ --# --# (tvi950: early versions had obsolete ":ma=^Vj^Kk^Hh^Ll^^H:". --# I also inserted <ich1> and <kich1>; the :ko: string indicated that <ich> --# should be present and all tvi native modes use the same string for this. --# Finally, note that BSD has cud1=^V. -- esr) --tvi950|televideo 950, -- OTbs, am, hs, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, xmc#1, -- acsc=b\011c\014d\re\ni\013, bel=^G, cbt=\EI, clear=\E*, -- cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey, el=\Et, flash=\Eb$<200/>\Ed, -- fsl=^M, home=^^, ht=^I, hts=\E1, ich1=\EQ, il1=\EE, ind=^J, -- invis@, -- is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\Ef\r, -- kbs=^H, kcbt=\EI, kclr=\E*, kcub1=^H, kcud1=^V, kcuf1=^L, -- kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\Ey, kel=\Et, kf0=^A0\r, -- kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -- kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -- kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`, ri=\Ej, rmacs=^X, -- rmir=\Er, smacs=^U, smir=\Eq, tbc=\E3, tsl=\Eg\Ef, -- use=adm+sgr, --# --# is for 950 with two pages adds the following: --# set 48 line page (\E\\2) --# place cursor at page 0, line 24, column 1 (\E-07 ) --# set local (no send) edit keys (\Ek) --# --# two page 950 adds the following: --# when entering ex, set 24 line page (\E\\1) --# when exiting ex, reset 48 line page (\E\\2) --# place cursor at 0,24,1 (\E-07 ) --# set duplex (send) edit keys (\El) when entering vi --# set local (no send) edit keys (\Ek) when exiting vi -+# \ED\EJ\EC hack for ed from Ed Bradford - apparently ed is only -+# extra slow on the last line of the window. - # --tvi950-2p|televideo950 w/2 pages, -- is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\2\E-07 \011, -- rmcup=\E\\2\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, -- smkx=\El, use=tvi950, -+# The padding probably should be changed. - # --# is for 950 with four pages adds the following: --# set 96 line page (\E\\3) --# place cursor at page 0, line 24, column 1 (\E-07 ) -+hp2626|hp2626a|hp2626p|hp 2626, -+ da, db, -+ lm#0, pb#19200, -+ ed=\ED\EJ$<500>\EC, indn=\E&r%p1%dD, ip=$<4>, -+ is2=\E&j@\r, rin=\E&r%p1%dU, use=hp+pfk-cr, -+ use=hp+labels, use=scrhp, -+ -+# This entry is for sysline. It allocates a 23 line window with -+# a 115 line workspace for regular use, and a 1 line window for -+# the status line. - # --# four page 950 adds the following: --# when entering ex, set 24 line page (\E\\1) --# when exiting ex, reset 96 line page (\E\\3) --# place cursor at 0,24,1 (\E-07 ) -+# This assumes port 2 is being used. -+# Turn off horizontal line, Create ws #1 with 115 lines, -+# Create ws #2 with 1 line, Create window #1 lines 1-23, -+# Create window #2 lines 24-24, Attach cursor to workspace #1. -+# Note that this clears the tabs so it must be done by tset before -+# it sets the tabs. - # --tvi950-4p|televideo950 w/4 pages, -- is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\3\E-07 \011, -- rmcup=\E\\3\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, -- smkx=\El, use=tvi950, -+hp2626-s|hp 2626 using only 23 lines, -+ eslok, hs, -+ lines#23, -+ fsl=\E&d@\E&w7f2p1I\E&w4f1I, -+ is1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I \E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \r, -+ tsl=\E&w7f2p2I\E&w4f2I\r\EK\E&a%p1%dC, use=hp2626, -+# Force terminal back to 24 lines after being 23. -+hp2626-ns|hp 2626 using all 24 lines, -+ is1=\E&q3t0{0H \E&w0f118n1I \E&w0f1n2I \E&w2f1i0d0u23l0S \E&w3f2I \E&w7f2p1I \r, -+ use=hp2626, -+# Various entries useful for small windows on 2626. -+hp2626-12|hewlett-packard 2626 12 lines, -+ lines#12, use=hp2626, -+hp2626-12x40|hewlett-packard 2626 12 lines 40 columns, -+ cols#40, lines#12, use=hp2626, -+hp2626-x40|hewlett-packard 2626 40 columns, -+ cols#40, use=hp2626, -+hp2626-12-s|hewlett-packard 2626 11 lines plus status, -+ lines#11, use=hp2626-s, -+ - # --# <is2> for reverse video 950 changes the following: --# set reverse video (\Ed) -+# hp2627 color tubes from University of Wisconsin - # --# set vb accordingly (\Ed ...delay... \Eb) -+hp2627a-rev|hp 2627 with reverse video colors, -+ cr=^M, cud1=^J, ht=^I, ind=^J, -+ is2=\E&v0m1a0b0c1x1y1z1i0a0b1c1x1y1z0i0S\E&j@\r\E3\r, -+ kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, rmul=\E&v0S\E&d@, -+ smul=\E&dD\E&v1S, use=hp2621-nl, -+hp2627a|hp 2627 color terminal with no labels, -+ cr=^M, cud1=^J, ht=^I, ind=^J, -+ is2=\E&v0m1a1b0c1i0a1b1c2i1a0b0c0i0S\E&j@\r\E3\r, -+ kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, rmso=\E&v0S, -+ rmul=\E&v0S\E&d@, smso=\E&v2S, smul=\E&dD\E&v1S, -+ use=hp2621-nl, -+hp2627c|hp 2627 color (cyan) terminal with no labels, -+ cr=^M, cud1=^J, ht=^I, ind=^J, -+ is2=\E&v0m1a0b0c2i1a1b0c1i0a1b1c0i0S\E&j@\r\E3\r, -+ kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, use=hp2627a, -+ -+# hp2640a doesn't have the Y cursor addressing feature, and C is -+# memory relative instead of screen relative, as we need. - # --tvi950-rv|televideo950 rev video, -- flash=\Ed$<200/>\Eb, -- is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0, -- use=tvi950, -+hp2640a|hp 2640a, -+ cup@, rmkx@, smkx@, use=hp2645, - --# tvi950-rv-2p uses the appropriate entries from 950-2p and 950-rv --tvi950-rv-2p|televideo950 rev video w/2 pages, -- flash=\Ed$<200/>\Eb, -- is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\2\E-07\s, -- rmcup=\E\\2\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, -- smkx=\El, use=tvi950, -+hp2640b|hp2644a|hp 264x series, -+ rmkx@, smkx@, use=hp2645, - --# tvi950-rv uses the appropriate entries from 950-4p and 950-rv --tvi950-rv-4p|televideo950 rev video w/4 pages, -- flash=\Ed$<200/>\Eb, -- is2=\EDF\EC\Eb\EG0\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\3\E-07\s, -- rmcup=\E\\3\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, -- smkx=\El, use=tvi950, --# From: Andreas Stolcke <stolcke@icsi.berkeley.edu> --# (tvi955: removed obsolete ":ma:=^Vj^Kk^Hh^Ll^^H"; --# removed incorrect (and overridden) ":do=^J:"; fixed broken continuations in --# the :rs: string, inserted the <ich> implied by the termcap :ko: string. Note --# the :ko: string had :cl: in it, which means that one of the original --# <clear=\E*>, <kclr=\EY> had to be wrong; set <kclr=\E*> because that's what --# the 950 has. Finally, corrected the <kel> string to match the 950 and what --# ko implies -- esr) --# If the BSD termcap file was right, <cup=\E=%p1%{32}%+%c%p2%{32}%+%c> would --# also work. --tvi955|televideo 955, -- OTbs, mc5i, msgr@, -- it#8, xmc@, -- acsc=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ, blink=\EG2, -- civis=\E.0, cnorm=\E.2, cud1=^V, cup=\E[%i%p1%d;%p2%dH, -- cvvis=\E.1, dim=\E[=5h, ind@, invis=\EG1, -- is2=\E[=3l\EF1\Ed\EG0\E[=5l\E%\El, kctab=\E2, khts=\E1, -- knp=\EK, kpp=\EJ, krmir=\EQ, ktbc=\E3, mc0=\EP, rmacs=\E%%, -- rmam=\E[=7l, rmxon=^N, -- rs1=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee \017\E0P\E6\0\E0p\E4\0\Ef\r, -- sgr0=\EG0\E[=5l, smacs=\E$, smam=\E[=7h, smxon=^O, -- use=tvi950, --tvi955-w|955-w|televideo955 w/132 cols, -- cols#132, -- is2=\E[=3h\EF1\Ed\EG0\E[=5l\E%\El, use=tvi955, --# use half-intensity as normal mode, full intensity as <bold> --tvi955-hb|955-hb|televideo955 half-bright, -- bold=\E[=5l, dim@, is2=\E[=3l\EF1\Ed\EG0\E[=5h\E%\El, -- sgr0=\EG0\E[=5h, use=tvi955, --# From: Humberto Appleton <beto@cs.utexas.edu>, 880521 UT Austin --# (tvi970: removed ":sg#0:"; removed <rmso>=\E[m, <rmul>=\E[m; --# added <am>/<csr>/<home>/<hpa>/<vpa>/<smcup>/<rmcup> from BRL. --# According to BRL we could have <rmkx>=\E>, <smkx>=\E= but I'm not sure what --# it does to the function keys. I deduced <rmam>/<smam>. --# also added empty <acsc> to suppress tic warning, -- esr) --tvi970|televideo 970, -- OTbs, OTpt, am, da, db, mir, msgr, -- cols#80, it#8, lines#24, -- acsc=, cbt=\E[Z, clear=\E[H\E[2J, csr=\E[%i%p1%d;%p2%dr, -- cub1=^H, cud1=\ED, cuf1=\E[C, cup=\E[%i%p1%d;%p2%df, -- cuu1=\EM, cvvis=\E[1Q, dch1=\E[P, dl1=\E[M, dsl=\Eg\Ef\r, -- ed=\E[J, el=\E[K, flash=\E[5m$<200/>\E[m, home=\E[H, -- hpa=\E[%i%p1%dG, ht=^I, il1=\E[L, -- is2=\E<\E[?21l\E[19h\E[1Q\E[10l\E[7l\E[H\E[2J, -- kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kf1=\E?a, kf2=\E?b, kf3=\E?c, kf4=\E?d, kf5=\E?e, kf6=\E?f, -- kf7=\E?g, kf8=\E?h, kf9=\E?i, khome=\E[H, ri=\EM, rmacs=\E(B, -- rmam=\E[?7h, rmcup=, rmir=\E[4l, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, smacs=\E(B, smam=\E[?7l, -- smcup=\E[?20l\E[?7h\E[1Q, smir=\E[4h, smso=\E[7m, -- smul=\E[4m, vpa=\E[%i%p1%dd, --tvi970-vb|televideo 970 with visual bell, -- flash=\E[?5h\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l, -- use=tvi970, --tvi970-2p|televideo 970 with using 2 pages of memory, -- rmcup=\E[H\E[J\E[V, smcup=\E[U\E[?20l\E[?7h\E[1Q, -- use=tvi970, --# Works with vi and rogue. NOTE: Esc v sets autowrap on, Esc u sets 80 chars --# per line (rather than 40), Esc K chooses the normal character set. Not sure --# padding is needed, but adapted from the tvi920c termcap. The <smso> and --# <smul> strings are klutzy, but at least use no screen space. --# (tvipt: removed obsolete ":ma=^Kk^Ll^R^L:". I wish we knew <rmam>, --# its absence means <smam>=\Ev isn't safe to use. -- esr) --# From: Gene Rochlin <armsis@amber.berkeley.edu> 9/19/84. --# The <ed>/<kf0>/<kf1>/<khome>/<mc4>, and <mc5> caps are from BRL, which says: --# F1 and F2 should be programmed as ^A and ^B; required for UNIFY. --tvipt|televideo personal terminal, -- OTbs, am, -+# (hp2641a: removed unknown :gu: -- esr) -+hp2641a|hp2645a|hp2647a|HP 264?A series BRL entry, -+ am, da, db, mir, xhp, - cols#80, lines#24, -- cbt=\EI, clear=^Z, cub1=^H, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\ER$<5*>, -- ed=\EY, el=\ET, home=^^, if=/usr/share/tabset/stdcrt, -- il1=\EE$<5*>, is2=\Ev\Eu\EK, kbs=^H, kcub1=^H, kcud1=^J, -- kcuf1=^L, kcuu1=^K, kf0=^A, kf1=^B, khome=^^, mc4=^T, mc5=^R, -- rmso=\EF, rmul=\EF, smso=\EG1@A\EH, smul=\EG1B@\EH, --# From: Nathan Peterson <nathan@sco.com>, 03 Sep 1996 --tvi9065|televideo 9065, -- am, bw, chts, hs, mc5i, mir, msgr, xenl, xon, -- cols#80, it#8, lh#1, lines#25, lm#0, lw#9, ma#4, nlab#8, vt#0, -- wnum#0, wsl#30, -- acsc='r0_jhkglfmeniopqksqtmulvownxj, bel=^G, -- blink=\EG2, bold=\EG\,, cbt=\EI, civis=\E.0, clear=^Z, -- cnorm=\E.3, cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, -- cub1=^H, cud=\E[%p1%dB, cud1=^V, cuf=\E[%p1%dC, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu=\E[%p1%dA, -- cuu1=^K, cvvis=\E.2, dch=\E[%p1%dP, dch1=\EW, dim=\EGp, -- dl=\E[%p1%dM, dl1=\ER, dsl=\E_30\r, ech=\E[%p1%d@, ed=\EY, -- el=\ET, flash=\Eb$<15>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1, -- ich=\E[%p1%d@, if=/usr/share/tabset/stdcrt, -- il=\E[%p1%dL, il1=\EE, ind=^J, indn=\E[%p1%dS, invis=\EG1, -- 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, -- kdch1=\EW, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^AK\r, -- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -- kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, ll=\E[25;1H, -- mc0=\E[0;0i, mc4=\Ea, mc5=\E`, nel=^M^J, -- pfkey=\E|%p1%{48}%+%c3%p2%s\031, -- 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, rin=\E[%p1%dT, -- 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, 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[=13.h\E[=14.h\E[=15l\E[=20h\E[=60l\E[=61h\E[=9l\E[=10l\E[=21l\E[=23l\E[=3l\E_40\E_50\En\Ew\Ee \Ex0\0\0\Ex1\0\0\Ex2\0\0\Ex3\0\0\Ex4\0\0\E1, -- rs3=\E[=19h\E.3\E9\E0O\0\0\0\0\0\E0o\0\0\0\0\0\E0J\177\0\0\0\0, -- sgr=\EG0%?%p1%t\EGt%;%?%p2%t\EG8%;%?%p3%t\EG4%;%?%p4%t\EG2%;%?%p5%t\EGp%;%?%p6%t\EG\,%;%?%p7%t\EG1%;%?%p9%t\E$%e\E%%%;, -- sgr0=\EG0, 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, -+ bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\E&a%p2%2dc%p1%2dY, cuu1=\EA, dch1=\EP, dl1=\EM, -+ ed=\EJ, el=\EK, hpa=\E&a%p1%2dC, ht=^I, -+ if=/usr/share/tabset/std, il1=\EL, ind=^J, -+ is2=\EE$<500/>, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, -+ rmir=\ER, rmso=\E&d@, smir=\EQ, smso=\E&dB, -+ vpa=\E&a%p1%2dY, - --#### Visual (vi) -+# This terminal should be used at 4800 baud or less. It needs padding for -+# plain characters at 9600, I guessed at an appropriate cr delay. It really -+# wants ^E/^F handshaking, but that doesn't work well even if you write -+# software to support it. -+hp2645|hp45|HP 2645 series, -+ pb#9600, -+ blink=\E&dA, cr=\r$<20>, dim=\E&dH, kctab=\E2, kcub1=\ED, -+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, -+ ked=\EJ, kel=\EK, khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, -+ kind=\ES, knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, rev=\E&dB, -+ rmkx=\E&s0A, -+ sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%?%p5%t%{72}%|%;%?%p6%t%{66}%|%;%c, -+ sgr0=\E&d@, smkx=\E&s1A, smul=\E&dD, use=hpgeneric, -+# You should use this terminal at 4800 baud or less. -+hp2648|hp2648a|HP 2648a graphics terminal, -+ clear=\EH\EJ$<50>, cup=\E&a%p2%dc%p1%dY$<20>, -+ dch1=\EP$<7>, ip=$<5>, use=hp2645, -+ -+# The HP 150 terminal is a fairly vanilla HP terminal, with the -+# clreol standout problem. It also has graphics capabilities and -+# a touch screen, which we don't describe here. -+hp150|hewlett packard Model 150, -+ OTbs, use=hp2622, -+ -+# HP 2382a terminals, "the little ones." They don't have any -+# alternate character set support and sending out ^N/^O will -+# leave the screen blank. -+hp2382a|hp2382|hewlett packard 2382a, -+ da, db, -+ lh#1, lm#48, -+ acsc@, -+ pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s, -+ rmacs@, -+ sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%{64}%+%e%{83}%;%e%?%ga%t%ga%{64}%+%e%{64}%;%;%c, -+ sgr0=\E&d@, smacs@, use=hp+labels, use=scrhp, -+ -+hp2621-a|hp2621a-a|hp2621 with fn as arrows, -+ use=hp+pfk+arrows, use=hp2621-fl, -+ -+# newer hewlett packard terminals -+ -+newhpkeyboard|generic entry for HP extended keyboard, -+ kbs=^H, kcbt=\Ei, kclr=\EJ, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -+ kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, khome=\Eh, -+ kich1=\EQ, kil1=\EL, kind=\ET, kll=\EF, knp=\EU, kpp=\EV, -+ kri=\ES, krmir=\ER, rmkx=\E&s0A, smkx=\E&s1A, -+ use=hp+pfk-cr, -+ -+newhp|generic entry for new hewlett packard terminals, -+ am, bw, mir, xhp, xon, -+ cols#80, lines#24, pb#4800, -+ acsc=2[3@4>5I9(\:'JSKWLQMAO#P$Q;R!S"T1U2V4W3X\:Y+Z*dHjGkTlRmFn/q\,t5u6v8w7x., -+ bel=^G, blink=\E&dA, bold=\E&dF, cbt=\Ei, cr=^M, cub1=^H, -+ cud1=^J, cuf1=\EC, cuu1=\EA, dch1=\EP$<2>, dim=\E&dH, -+ dl1=\EM, ed=\EJ, el=\EK, ht=\011$<2>, hts=\E1, il1=\EL, ind=^J, -+ invis=\E&dS, ip=$<2>, is1=\E&jB$<8>, nel=^M^J, -+ pfkey=\E&f0a%p1%dk0d%p2%l%dL%p2%s, -+ pfloc=\E&f1a%p1%dk0d%p2%l%dL%p2%s, -+ pfx=\E&f2a%p1%dk0d%p2%l%dL%p2%s, rev=\E&dB, ri=\ET, -+ rmacs=^O, rmir=\ER, rmso=\E&d@, rmul=\E&d@, rs1=\Eg, -+ sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%{64}%+%e%{83}%;%e%?%ga%t%ga%{64}%+%e%{64}%;%;%c%?%p9%t\016%e\017%;, -+ sgr0=\E&d@\017, smacs=^N, smir=\EQ, smso=\E&dJ, smul=\E&dD, -+ tbc=\E3, use=newhpkeyboard, -+ -+memhp|memory relative addressing for new HP ttys, -+ vt#6, -+ clear=\EH\EJ$<40>, cub=\E&a-%p1%dC, cud=\E&a+%p1%dR, -+ cuf=\E&a+%p1%dC, cup=\E&a%p1%dr%p2%dC, cuu=\E&a-%p1%dR, -+ home=\EH, hpa=\E&a%p1%dC, ll=\E&a23R\r, -+ mrcup=\E&a%p1%dr%p2%dC, vpa=\E&a%p1%dR, use=newhp, -+ -+scrhp|screen relative addressing for new HP ttys, -+ clear=\E&a0c0Y\EJ$<40>, cub=\E&a-%p1%dC, -+ cud=\E&a+%p1%dR, cuf=\E&a+%p1%dC, -+ cup=\E&a%p1%dy%p2%dC$<10>, cuu=\E&a-%p1%dR, -+ home=\E&a0y0C, hpa=\E&a%p1%dC, ll=\E&a0y0C\EA, -+ mrcup=\E&a%p1%dr%p2%dC, vpa=\E&a%p1%dY, use=newhp, -+ -+# (hp+labels: added label values from a BRL termcap -- esr) -+hp+labels|"standard" label info for new HP ttys, -+ lh#2, lw#8, nlab#8, -+ lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, -+ pln=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s, -+ rmln=\E&j@, smln=\E&jB, -+ -+hp+printer|"standard" printer info for HP ttys, -+ ff=\E&p4u0C, mc0=\EH\E&p4dF, mc4=\E&p13C, mc5=\E&p11C, -+ -+ -+# The new hp2621b is kind of a cross between the old 2621 and the -+# new 262x series of machines. It has dip-switched options. -+# The firmware has a bug in it such that if you give it a null -+# length label, the following character is eaten! -+hp2621b|hp 2621b with old style keyboard, -+ lh#1, lm#48, lw#8, nlab#8, -+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh, -+ kind=\ET, kll=\EF, kri=\ES, -+ pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%{32}%c%;%p2%s\E%{111}%p1%+%c\r, -+ smln=\E&jB, use=hp2621, -+ -+hp2621b-p|hp 2621b with printer, -+ use=hp+printer, use=hp2621b, -+ -+# hp2621b - new 2621b with new extended keyboard -+# these are closer to the new 26xx series than the other 2621b -+hp2621b-kx|hp 2621b with extended keyboard, -+ use=newhpkeyboard, use=hp2621b, -+ -+hp2621b-kx-p|hp 2621b with new keyboard & printer, -+ use=hp+printer, use=hp2621b-kx, -+ -+# Some assumptions are made in the following entries. -+# These settings are NOT set up by the initialization strings. - # --# In September 1993, Visual Technology of Westboro, Massachusetts, --# merged with White Pine Software of Nashua, New Hampshire. -+# Port Configuration -+# RecvPace=Xon/Xoff XmitPace=Xon/Xoff StripNulDel=Yes -+# -+# Terminal Configuration -+# InhHndShk(G)=Yes InhDC2(H)=Yes -+# XmitFnctn(A)=No InhEolWrp=No - # --# White Pine Software may be contacted at +1 603/886-9050. --# Or visit White Pine on the World Wide Web at URL http://www.wpine.com. - # -+# Hp 2622a & hp2623a display and graphics terminals -+# -+hp2622|hp2622a|hp 2622, -+ da, db, -+ lm#0, pb#19200, -+ is2=\E&dj@\r, use=hp+pfk-cr, use=hp+labels, use=scrhp, - --# Visual 50 from Beau Shekita, BTL-Whippany <whuxlb!ejs> --# Recently I hacked together the following termcap for Visual --# Technology's Visual 50 terminal. It's a slight modification of --# the vt52 termcap. --# It's intended to run when the Visual 50 is in vt52 emulation mode --# (I know what you're thinking; if it's emulating a vt52, then why --# another termcap? Well, it turns out that the Visual 50 can handle --# <dl1> and db(?) among other things, which the vt52 can't) --# The termcap works OK for the most part. The only problem is on --# character inserts. The whole line gets painfully redrawn for each --# character typed. Any suggestions? --# Beau's entry is combined with the vi50 entry from University of Wisconsin. --# Note especially the <il1> function. <kf4>-<kf6> are really l4-l6 in --# disguise; <kf7>-<kf9> are really l1-l3. --vi50|visual 50, -- OTbs, OTpt, am, da, db, msgr, -- cols#80, it#8, lines#24, -- OTnl=^J, bel=^G, cbt=\Ez$<4/>, clear=\EH\EJ, cr=^M, cub1=^H, -- cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=\EA, dl1=\EM$<3*/>, ed=\EJ, el=\EK$<16/>, home=\EH, -- ht=^I, il1=\EL, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, -- kcuf1=\EC, kcuu1=\EA, kf1=\EP, kf2=\EQ, kf3=\ER, kf4=\EV, -- kf5=\EE, kf6=\E], kf7=\EL, kf8=\Ev, kf9=\EM, khome=\EH, -- nel=^M^J, ri=\EI, rmso=\ET, rmul=\EW, smso=\EU, smul=\ES, --# this one was BSD & SCO's vi50 --vi50adm|visual 50 in adm3a mode, -- am, msgr, -- cols#80, it#8, lines#24, -- bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\EM, -- ed=\Ek, el=\EK, home=\EH, ht=^I, il1=\EL, ind=^J, kbs=^H, -- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\EH, -- rmso=\ET, smso=\EU, --# From: Jeff Siegal <jbs@quiotix.com> --vi55|Visual 55, -- OTbs, am, mir, msgr, -- cols#80, it#8, lines#24, -- clear=\Ev, csr=\E_%p1%{65}%+%c%p2%{65}%+%c, cub1=^H, -- cud1=^J, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=\EA, dch1=\Ew, dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I, -- il1=\EL, is2=\Ev\E_AX\Eb\EW\E9P\ET, kbs=^H, kcub1=\ED, -- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, ri=\EI, rmir=\Eb, rmso=\ET, -- smir=\Ea, smso=\EU, -+# The 2623 is a 2622 with extra graphics hardware. -+hp2623|hp2623a|hp 2623, -+ use=hp2622, - --# Visual 200 from BRL --# The following switch settings are assumed for normal operation: --# FULL_DUPLEX SCROLL CR --# AUTO_NEW_LINE_ON VISUAL_200_EMULATION_MODE --# Other switches may be set for operator convenience or communication --# requirements. --# Character insertion is kludged in order to get around the "beep" misfeature. --# (This cap is commented out because <smir>/<rmir> is more efficient -- esr) --# Supposedly "4*" delays should be used for <il1>, <ed>, <clear>, <dch1>, --# and <dl1> strings, but we seem to get along fine without them. --vi200|visual 200, -- OTbs, OTpt, am, mir, msgr, -- OTkn#10, cols#80, it#8, lines#24, -- acsc=, bel=^G, cbt=\Ez, clear=\Ev, cnorm=\Ec, cr=^M, cub1=^H, -- cud1=^J, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=\EA, cvvis=\Ed, dch1=\EO, dim=\E4, dl1=\EM, ed=\Ey, -- el=\Ex, home=\EH, ht=^I, hts=\E1, il1=\EL, ind=^J, invis=\Ea, -- kbs=^H, kclr=\Ev, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -- kcuu1=\EA, kdch1=\EO, kdl1=\EM, ked=\EJ, kel=\Et, kf0=\E?p, -- kf1=\E?q, kf2=\E?r, kf3=\E?s, kf4=\E?t, kf5=\E?u, kf6=\E?v, -- kf7=\E?w, kf8=\E?x, kf9=\E?y, khome=\EH, khts=\E1, kich1=\Ei, -- kil1=\EL, krmir=\Ej, mc0=\EH\E], mc4=\EX, mc5=\EW, ri=\EI, -- rmacs=\EG, rmkx=\E>, rmso=\E3, -- rs1=\E3\Eb\Ej\E\El\EG\Ec\Ek\EX, sgr0=\E3\Eb, smacs=\EF, -- smkx=\E=, smso=\E4, tbc=\Eg, --# The older Visuals didn't come with function keys. This entry uses --# <smkx> and <rmkx> so that the keypad keys can be used as function keys. --# If your version of vi doesn't support function keys you may want --# to use vi200-f. --vi200-f|visual 200 no function keys, -- is2=\E3\Eb\Ej\E\\\El\EG\Ed\Ek, kf0=\E?p, kf1=\E?q, -- kf2=\E?r, kf3=\E?s, kf4=\E?t, kf5=\E?u, kf6=\E?v, kf7=\E?w, -- kf8=\E?x, kf9=\E?y, rmkx=\E>, rmso@, smkx=\E=, smso@, -- use=vi200, --vi200-rv|visual 200 reverse video, -- cnorm@, cvvis@, ri@, rmso=\E3, smso=\E4, use=vi200, -+hp2624b-p|hp2624b-4p-p|hewlett packard 2624 B with printer, -+ use=hp+printer, use=hp2624, - --# the function keys are programmable but we don't reprogram them to their --# default values with <is2> because programming them is very verbose. maybe --# an initialization file should be made for the 300 and they could be stuck --# in it. --# (vi300: added <rmam>/<smam> based on init string -- esr) --vi300|visual 300 ansi x3.64, -- am, bw, mir, xenl, -- cols#80, lines#24, -- bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -- dch1=\E[P$<40>, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, -- il1=\E[L, ind=^J, -- is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[1Q\E[0;1(D\E[8s, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kf1=\E_A\E\\, kf2=\E_B\E\\, kf3=\E_C\E\\, kf4=\E_D\E\\, -- kf5=\E_E\E\\, kf6=\E_F\E\\, kf7=\E_G\E\\, kf8=\E_H\E\\, -- kf9=\E_I\E\\, khome=\E[H, ri=\EM, rmam=\E[?7l, rmir=\E[4l, -- rmso=\E[m, rmul=\E[m, sgr0=\E[m, smam=\E[?7h, smir=\E[4h, -- smso=\E[1m, smul=\E[4m, --# some of the vi300s have older firmware that has the command --# sequence for setting editing extent reversed. --vi300-old|visual 300 with old firmware (set edit extent reversed), -- is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[2Q\E[0;1(D\E[8s, -- use=vi300, -+# The hewlett packard B can have an optional extra 6 pages of memory. -+hp2624-10p|hp2624a-10p|hp2624b-10p|hewlett packard 2624 B w/ 10 pages of memory, -+ lm#240, use=hp2624, - --# Visual 500 prototype entry from University of Wisconsin. --# The best place to look for the escape sequences is page A1-1 of the --# Visual 500 manual. The initialization sequence given here may be --# overkill, but it does leave out some of the initializations which can --# be done with the menus in set-up mode. --# The :xp: line below is so that emacs can understand the padding requirements --# of this slow terminal. :xp: is 10 time the padding factor. --# (vi500: removed unknown :xp#4: termcap; --# also added empty <acsc> to suppress tic warning -- esr) --vi500|visual 500, -- am, mir, msgr, -- cols#80, it#8, lines#33, -- acsc=, cbt=\Ez$<4/>, clear=\Ev$<6*/>, cr=^M, -- csr=\E(%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=\EB, -- cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, -- dch1=\EO$<3*/>, dl1=\EM$<3*/>, ed=\Ey$<3*/>, -- el=\Ex$<16/>, home=\EH, ht=\011$<8/>, il1=\EL\Ex$<3*/>, -- ind=^J, -- is2=\E3\E\001\E\007\E\003\Ek\EG\Ed\EX\El\E>\Eb\E\\, -- kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -- khome=\EH, nel=^M^J, rmacs=^O, rmir=\Ej, rmso=\E^G, -- rmul=\E^C, smacs=^N, smir=\Ei, smso=\E^H, smul=\E^D, -+hp2624b-10p-p|hewlett packard 2624 B w/ extra memory & printer, -+ lm#240, use=hp2624b-p, - --# The visual 550 is a visual 300 with tektronix graphics, --# and with 33 lines. clear screen is modified here to --# also clear the graphics. --vi550|visual 550 ansi x3.64, -- lines#33, -- clear=\030\E[H\E[2J, use=vi300, -+# Color manipulations for HP terminals -+hp+color|hp with colors, -+ ccc, -+ colors#16, ncv#17, pairs#7, -+ initp=\E&v%?%p2%{1000}%=%t1%e.%p2%d%;a%?%p3%{1000}%=%t1%e.%p3%d%;b%?%p4%{1000}%=%t1%e.%p4%d%;c%?%p5%{1000}%=%t1%e.%p5%d%;x%?%p6%{1000}%=%t1%e.%p6%d%;y%?%p7%{1000}%=%t1%e.%p7%d%;z%p1%dI, -+ oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5I\E&v1b1c6I\E&v1x1y7I, -+ op=\E&v0S, scp=\E&v%p1%dS, - --vi603|visual603|visual 603, -- hs, mir, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, -- csr=\E[%i%p1%d;%p2%dr, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -- dsl=\EP2;1~\E\\, ed=\E[J, el=\E[K, fsl=\E\\, il1=\E[L, -- ind=\ED, is1=\E>\E[?3l\E[?4l\E[?7h\E[?8h\E[1;24r, -- rev=\E[7m, ri=\EM, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, -- sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, tsl=\EP2~, -- use=vt100, -+# <is2> sets the screen to be 80 columns wide -+hp2397a|hp2397|hewlett packard 2397A color terminal, -+ is2=\E&w6f80X, use=memhp, use=hp+labels, use=hp+color, - --#### Wyse (wy) --# --# Wyse Technology --# 3471 North First Street --# San Jose, CA 95134 --# Vox: (408)-473-1200 --# Fax: (408) 473-1222 --# Web: http://www.wyse.com --# --# Wyse sales can be reached by phone at 1-800-GET-WYSE. Tech support is at --# (800)-800-WYSE (option 5 gets you a human). There's a Web page at the --# obvious address, <http://www.wyse.com>. They keep terminfo entries at --# <http://www.wyse.co.uk/support/appnotes/idxappnt.htm>. --# --# Wyse bought out Link Technology, Inc. in 1990 and closed it down in 1995. --# They now own the Qume and Amdek brands, too. So these are the people to --# talk with about all Link, Qume, and Amdek terminals. --# --# These entries include a few small fixes. --# I canceled the bel capacities in the vb entries. --# I made two trivial syntax fixes in the wyse30 entry. --# I made some entries relative to adm+sgr. -+# HP 700/44 Setup parameters: -+# Terminal Mode HP-PCterm -+# Inhibit Auto Wrap NO -+# Status Line Host Writable -+# PC Character Set YES -+# Twenty-Five Line Mode YES -+# XON/XOFF @128 or 64 (sc) -+# Keycode Mode NO or YES (sc) -+# Backspace Key BS or BS/DEL - # -+# <is2> sets pcterm; autowrap; 25 lines; pc char set; prog DEL key; -+# \E\\? does not turn off keycode mode -+# <smsc> sets alternate start/stop; keycode on -+hpansi|hp700|hewlett packard 700/44 in HP-PCterm mode, -+ am, eo, xenl, xon, -+ cols#80, lines#25, -+ acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -+ bel=^G, cbt=\E[Z, civis=\E[?25l, clear=\E[2J\E[H, -+ cnorm=\E[?25h, cr=^M, cub1=\E[D, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -+ ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@, il1=\E[L, -+ ind=^J, -+ is2=\E[44"p\E[?7h\E[>10h\E[>12h\EP1;1|3/7F\E\\, -+ kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kend=\E[4~, kf1=\E[17~, kf10=\E[28~, -+ kf2=\E[18~, kf3=\E[19~, kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, -+ kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, khome=\E[1~, knp=\E[6~, -+ kpp=\E[5~, rmam=\E[?7l, -+ rmsc=\E[>11l\EP1**x0/11;1/13\E[m\E\\, rmso=\E[m, -+ rmul=\E[m, sgr0=\E[m, smam=\E[?7h, -+ smsc=\E[>11h\EPO**x0/65;1/67\E\\$<250>, smso=\E[7m, -+ smul=\E[4m, xoffc=g, xonc=e, - # --# Note: The wyse75, wyse85, and wyse99 have been discontinued. -+# (hp2392: copied <rmir> here from hpex -- esr) -+hp2392|239x series, -+ cols#80, -+ cbt=\Ei, cup=\E&a%p1%dy%p2%dC, kf1=\Ep\r, kf2=\Eq\r, -+ kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, -+ kf8=\Ew\r, khome=\Eh, kind=\EU, knp=\Eu, kpp=\Ev, kri=\EV, -+ rmir=\ER, rmul=\E&d@, smir=\EQ, smul=\E&dD, vpa=\E&a%p1%dY, -+ use=hpsub, - --# Although the Wyse 30 can support more than one attribute --# it requires magic cookies to do so. Many applications do not --# function well with magic cookies. The following terminfo uses --# the protect mode to support one attribute (dim) without cookies. --# If more than one attribute is needed then the wy30-mc terminfo --# should be used. -+hpsub|hp terminals -- capability subset, -+ am, da, db, mir, xhp, xon, -+ lines#24, -+ bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, -+ cuu1=\EA, dch1=\EP, dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, -+ ht=^I, if=/usr/share/tabset/stdcrt, il1=\EL, ind=^J, -+ is2=\E&s1A\E<\E&k0\\, kbs=^H, kcub1=\ED, kcud1=\EB, -+ kcuf1=\EC, kcuu1=\EA, khome=\Eh, rmkx=\E&s0A, rmso=\E&d@, -+ sgr0=\E&d@, smkx=\E&s1A, smso=\E&dB, -+ -+# hpex: -+# May be used for most 24 x 80 hp terminals, -+# but has no padding added, so may allow runover in some terminals at high -+# baud rates. Will not work for hp2640a or hp2640b terminals, hp98x6 and -+# hp98x5 terminal emulators or hp98x6 consoles. -+# Adds xy-cursor addressing, vertical cursor addressing, home, -+# last line, and underline capabilities. - # --wy30|wyse30|Wyse 30, -- am, bw, hs, mc5i, mir, msgr, xon, -- cols#80, lh#1, lines#24, lw#8, ma#1, nlab#8, wsl#45, -- acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, cbt=\EI, -- civis=\E`0, clear=\E+$<80>, cnorm=\E`1, cr=^M, cub1=^H, -- cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=^K, dch1=\EW$<10>, dim=\E`7\E), dl1=\ER$<1>, -- dsl=\EF\r, ed=\EY$<80>, el=\ET, flash=\E`8$<100/>\E`9, -- fsl=^M, home=^^, ht=\011$<1>, hts=\E1, il1=\EE$<2>, -- ind=\n$<2>, ip=$<2>, is2=\E'\E(\E\^3\E`9\016\024, -- kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, -- kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kent=\E7, -- kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -- kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, khome=^^, kich1=\EQ, -- kil1=\EE, knp=\EK, kpp=\EJ, krpl=\Er, ll=^^^K, mc0=\EP, mc4=^T, -- mc5=^X, nel=^M^J, pfx=\Ez%p1%{63}%+%c%p2%s\177, -- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E`7\E), ri=\Ej$<3>, -- rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(, -- sgr=%?%p1%p5%p8%|%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, -- sgr0=\E(\EH\003, smacs=\EH^B, smir=\Eq, smln=\EA10, -- smso=\E`7\E), tbc=\E0, tsl=\EF, -+# (hpex: removed memory-lock capabilities ":ml=\El:mu=\Em:", -+# moved <rmir> here from hpsub -- esr) -+hpex|hp extended capabilites, -+ cr=^M, cud1=^J, cup=\E&a%p1%dy%p2%dC, ht=^I, ind=^J, kbs=^H, -+ kcub1=^H, kcud1=^J, nel=^M^J, rmir=\ER, rmul=\E&d@, smir=\EQ, -+ smul=\E&dD, vpa=\E&a%p1%dY, use=hpsub, -+ -+# From: Ville Sulko <Ville.Sulko@bip.atk.tpo.fi>, 05 Aug 1996 -+hp2|hpex2|hewlett-packard extended capabilities newer version, -+ am, da, db, mir, xhp, -+ cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, xmc#0, -+ bel=^G, clear=\E&a0y0C\EJ, cr=^M, cub1=^H, cud1=\EB, -+ cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, -+ dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, -+ il1=\EL, ind=^J, kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED, -+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, -+ ked=\EJ, kel=\EK, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, -+ kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, khts=\E1, kich1=\EQ, -+ kil1=\EL, kind=\ES, kll=\EF, knp=\EU, kpp=\EV, kri=\ET, -+ krmir=\ER, ktbc=\E3, meml=\El, memu=\Em, -+ pfkey=\E&f%p1%dk%p2%l%dL%p2%s, -+ pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s, -+ pfx=\E&f2a%p1%dk%p2%l%dL%p2%s, -+ pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rmir=\ER, rmkx=\E&s0A, -+ rmln=\E&j@, rmso=\E&d@, rmul=\E&d@, -+ sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;, -+ sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smln=\E&jB, smso=\E&dB, -+ smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, -+ -+# HP 236 console -+# From: <ddavis@ic.berkeley.edu> -+hp236|hp236 internal terminal emulator, -+ OTbs, am, -+ cols#80, lines#24, -+ clear=\EF, cnorm=\EDE, cub1=^H, -+ cup=\EE%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, cvvis=\EDB, -+ dch1=\EJ, dl1=\EH, el=\EK, ich1=\EI, il1=\EG, rmso=\ECI, -+ sgr0=\ECI, smso=\EBI, -+ -+# This works on a hp300 console running Utah 4.3 BSD -+# From: Craig Leres <leres@okeeffe.berkeley.edu> -+hp300h|HP Catseye console, -+ OTbs, am, da, db, mir, xhp, -+ cols#128, lines#51, lm#0, xmc#0, -+ bel=^G, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, cub1=^H, cud1=\EB, -+ cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, -+ dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, -+ if=/usr/share/tabset/stdcrt, il1=\EL, ind=^J, kbs=^H, -+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh, -+ rmir=\ER, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@, -+ smir=\EQ, smkx=\E&s1A, smso=\E&dB, smul=\E&dD, tbc=\E3, -+ vpa=\E&a%p1%dY, -+# From: Greg Couch <gregc@ernie.berkeley.edu> -+hp9837|hp98720|hp98721|HP 9000/300 workstations, -+ OTbs, am, da, db, mir, xhp, -+ cols#128, it#8, lines#46, lm#0, -+ bel=^G, cbt=\Ei, clear=\E&a0y0C\EJ, cub1=^H, cud1=\EB, -+ cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, -+ dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, -+ il1=\EL, ind=^J, is2=\E&v0m1b0i&j@, kbs=^H, kcub1=\ED, -+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, -+ ked=\EJ, kel=\EK, khome=\Eh, kich1=\EQ, kil1=\EL, knp=\EU, -+ kpp=\EV, rmir=\ER, rmkx=\E&s0A, rmso=\E&v0S, rmul=\E&d@, -+ sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smso=\E&v5S, smul=\E&dD, -+ tbc=\E3, vpa=\E&a%p1%dY, -+# HP 9845 desktop computer from BRL -+# (hp9845: removed unknown capability :gu: -- esr) -+hp9845|HP 9845, -+ OTbs, am, da, db, eo, mir, xhp, -+ cols#80, lines#21, -+ OTbc=\ED, clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC, -+ cup=\E&a%p2%2dc%p1%2dY, cuu1=\EA, dch1=\EP, dl1=\EM, -+ ed=\EJ, el=\EK, if=/usr/share/tabset/std, il1=\EL, -+ rmir=\ER, rmso=\E&d@, smir=\EQ, smso=\E&dB, -+# From: Charles A. Finnell of MITRE <finnell@mitre.org>, developed 07SEP90 -+# (hp98550: replaced /usr/share/tabset/9837 with std because <it#8>,<hts=\E1>; -+# added empty <acsc> to avoid warnings re <smacs>/<rmacs> --esr) -+hp98550|hp98550a|HP 9000 Series 300 color console, -+ OTbs, am, da, db, mir, xhp, -+ cols#128, it#8, lines#49, lm#0, -+ acsc=, bel=^G, blink=\E&dA, bold=\E&dJ, cbt=\Ei, civis=\E*dR, -+ clear=\EH\EJ, cnorm=\E*dQ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\E&a%p1%dy%p2%dC, cuu1=\EA, dch1=\EP, dim=\E&dH, -+ dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, -+ if=/usr/share/tabset/std, il1=\EL, ind=^J, invis=\E&ds, -+ kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -+ kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, kf1=\Ep, -+ kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, -+ khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, kind=\ES, kll=\EF, -+ knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, ktbc=\E3, rev=\E&dJ, -+ rmacs=^O, rmir=\ER, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, -+ sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smso=\E&dJ, -+ smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, -+# From: Victor Duchovni <vic@fine.princeton.edu> -+# (hp700-wy: removed obsolete ":nl=^J:"; -+# replaced /usr/share/tabset/hp700-wy with std because <it#8>,<hts=\E1> -- esr) -+hp700-wy|HP700/41 emulating wyse30, -+ OTbs, am, bw, mir, msgr, -+ cols#80, it#8, lines#24, xmc#1, -+ cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^V, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\EY, el=\ET$<10/>, home=^^, ht=^I, hts=\E1, -+ if=/usr/share/tabset/stdcrt, il1=\EE$<0.7*/>, -+ is1=\E~"\EC\Er\E(\EG0\003\E`9\E`1, kbs=\177, kcbt=\EI, -+ kclr=^Z, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, ked=\EY, -+ kel=\ET, khome=^^, khts=\EI, kich1=\Eq, krmir=\Er, ll=^^^K, -+ ri=\Ej, rmir=\Er, rmso=\EG0$<10/>, rmul=\EG0$<10/>, -+ sgr0=\EG0$<10/>, smir=\Eq, smso=\EG4$<10/>, -+ smul=\EG8$<10/>, tbc=\E0, vpa=\E[%p1%{32}%+%c, -+hp70092|hp70092a|hp70092A|HP 700/92, -+ am, da, db, xhp, -+ cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8, -+ acsc=0cjgktlrmfn/q\,t5u6v8w7x., bel=^G, blink=\E&dA, -+ bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, cub1=^H, -+ cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA, -+ dch1=\EP, dim=\E&dH, dl1=\EM, el=\EK, hpa=\E&a%p1%dC, ht=^I, -+ hts=\E1, il1=\EL, kbs=^H, kclr=\EJ, kctab=\E2, kcub1=\ED, -+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, -+ ked=\EJ, kel=\EK, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, -+ kf6=\Eu, kf7=\Ev, kf8=\Ew, khome=\Eh, khts=\E1, kich1=\EQ, -+ kil1=\EL, kind=\ES, kll=\EF, knp=\EU, kpp=\EV, kri=\ET, -+ krmir=\ER, ktbc=\E3, rev=\E&dB, ri=\ET, rmacs=^O, rmir=\ER, -+ rmkx=\E&s0A, rmln=\E&j@, rmso=\E&d@, rmul=\E&d@, -+ sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smln=\E&jB, -+ smso=\E&dJ, smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY, -+ -+bobcat|sbobcat|HP 9000 model 300 console, -+ am, da, db, mir, xhp, -+ cols#128, it#8, lines#47, xmc#0, -+ cbt=\Ei, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC, -+ cup=\E&a%p1%dy%p2%dC$<6/>, cuu1=\EA, dch1=\EP, -+ dl1=\EM$<10*/>, ed=\EJ, el=\EK, hpa=\E&a%p1%dC$<6/>, ht=^I, -+ il1=\EL$<10*/>, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, -+ kcuf1=\EC, kcuu1=\EA, khome=\Eh, nel=^M^J, rmir=\ER, -+ rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@, smir=\EQ, -+ smkx=\E&s1A, smso=\E&dB, smul=\E&dD, vpa=\E&a%p1%dY$<6/>, -+gator-t|HP 9000 model 237 emulating extra-tall AAA, -+ lines#94, use=gator, -+gator|HP 9000 model 237 emulating AAA, -+ bw, km, mir, ul, -+ cols#128, it#8, lines#47, -+ bel=^G, cbt=\E[Z, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\EM, -+ dch=\E[%p1%dP$<4/>, dch1=\E[P, dl=\E[%p1%dM$<1*/>, -+ dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, hpa=\E[%i%p1%d`, -+ ht=^I, ich=\E[%p1%d@$<4/>, ich1=\E[@, il=\E[%p1%dL$<1*/>, -+ il1=\E[L, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, -+ rep=%p1%c\E[%p2%db$<1*/>, rev=\E[7m, rmso=\E[m, -+ rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, -+gator-52|HP 9000 model 237 emulating VT52, -+ cols#128, lines#47, use=vt52, -+gator-52t|HP 9000 model 237 emulating extra-tall VT52, -+ lines#94, use=gator-52, -+ -+#### Honeywell-Bull - # --# This terminal description uses the non-hidden attribute mode --# (with magic cookie). -+# From: Michael Haardt <michael@gandalf.moria> 11 Jan 93 - # --# (wy30-mc: added <smcup> to suppress tic warning --esr) --wy30-mc|wyse30-mc|wyse 30 with magic cookies, -- msgr@, -- ma@, xmc#1, -- blink=\EG2, dim=\EGp, prot=\EG0\E), rmacs=\EG0\EH\003, -- rmcup=\EG0, rmso=\EG0, -- sgr=\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, -- sgr0=\EG0\E(\EH\003, smacs=\EG0\EH\002, smcup=, -- smso=\EG4, use=wy30, use=adm+sgr, --# The mandatory pause used by <flash> does not work with --# older versions of terminfo. If you see this effect then --# unset xon and delete the / from the delay. --# i.e. change $<100/> to $<100> --wy30-vb|wyse30-vb|wyse 30 visible bell, -- bel@, use=wy30, -+ -+# Honeywell Bull terminal. Its cursor and function keys send single -+# control characters and it has standout/underline glitch. Most programs -+# do not like these features/bugs. Visual bell is realized by flashing the -+# "keyboard locked" LED. -+dku7003-dumb|Honeywell Bull DKU 7003 dumb mode, -+ cols#80, lines#25, -+ clear=^]^_, cr=^M, cub1=^Y, cud1=^K, cuf1=^X, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, ed=^_, el=\E[K, -+ flash=\E[2h\E[2l, home=^], ht=^I, ind=^J, kbs=^H, kcub1=^Y, -+ kcud1=^K, kcuf1=^X, kcuu1=^Z, khome=^], nel=^M^J, -+dku7003|Honeywell Bull DKU 7003 all features described, -+ msgr, -+ xmc#1, -+ blink=\E[5m, bold=\E[7m, dim=\E[2m, rev=\E[7m, rmso=\E[m, -+ rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, -+ use=dku7003-dumb, -+ -+#### Lear-Siegler (adm) - # --# The Wyse 50 can support one attribute (e.g. Dim, Inverse, --# Normal) without magic cookies by using the protect mode. --# The following description uses this feature, but when more --# than one attribute is put on the screen at once, all attributes --# will be changed to be the same as the last attribute given. --# The Wyse 50 can support more attributes when used with magic --# cookies. The wy50-mc terminal description uses magic cookies --# to correctly handle multiple attributes on a screen. -+# These guys are long since out of the terminals business, but -+# in 1995 many current terminals still have an adm type as one of their -+# emulations (usually their stupidest, and usually labeled adm3, though -+# these `adm3' emulations normally have adm3a+ capabilities). - # --wy50|wyse50|Wyse 50, -- am, bw, hs, mc5i, mir, msgr, xon, -- cols#80, lh#1, lines#24, lw#8, ma#1, nlab#8, wsl#45, -- acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, cbt=\EI, -- civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, cub1=^H, -+# WARNING: Some early ADM terminals (including the ADM3 and ADM5) had a -+# `diagnostic feature' that sending them a ^G while pin 22 (`Ring Indicator') -+# was being held to ground would trigger a send of the top line on the screen. -+# A quick fix might be to drop back to a cheesy 4-wire cable with pin 22 -+# hanging in the air. (Thanks to Eric Fischer, <eric@fudge.uchicago.edu>, -+# for clearing up this point.) -+ -+adm1a|adm1|lsi adm1a, -+ am, -+ cols#80, lines#24, -+ bel=^G, clear=\E;$<1>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, home=^^, -+ ind=^J, -+adm2|lsi adm2, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\EY, el=\ET, home=^^, ich1=\EQ, il1=\EE, ind=^J, -+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, -+# (adm3: removed obsolete ":ma=^K^P:" -- esr) -+adm3|lsi adm3, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, ind=^J, -+# The following ADM-3A switch settings are assumed for normal operation: -+# SPACE U/L_DISP CLR_SCRN 24_LINE -+# CUR_CTL LC_EN AUTO_NL FDX -+# Other switches may be set for operator convenience or communication -+# requirements. I recommend -+# DISABLE_KB_LOCK LOCAL_OFF 103 202_OFF -+# ETX_OFF EOT_OFF -+# Most of these terminals required an option ROM to support lower case display. -+# Open the case and look at the motherboard; if you see an open 24-pin DIP -+# socket, you may be out of luck. -+# -+# (adm3a: some capabilities merged in from BRl entry -- esr) -+adm3a|lsi adm3a, -+ OTbs, am, -+ cols#80, lines#24, -+ OTma=^K^P, OTnl=^J, bel=^G, clear=\032$<1/>, cr=^M, cub1=^H, - cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=^K, dch1=\EW$<1>, dim=\E`7\E), dl1=\ER, dsl=\EF\r, -- ed=\EY$<20>, el=\ET, flash=\E`8$<100/>\E`9, fsl=^M, -- home=^^, ht=^I, hts=\E1, il1=\EE, ind=\n$<2>, ip=$<1>, -- is1=\E`\:\E`9$<30>, is2=\016\024\E'\E(, kHOM=\E{, kbs=^H, -- kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, -- kdl1=\ER, ked=\EY, kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, -- kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, -- kf16=^AO\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -- kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -- kich1=\EQ, kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, -- ll=^^^K, mc0=\EP, mc4=^T, mc5=^X, nel=^M^J, -- pfx=\Ez%p1%{63}%+%c%p2%s\177, -- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E`7\E), rev=\E`6\E), -- ri=\Ej, rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(, -- sgr=%?%p1%p3%|%t\E`6\E)%e%p5%p8%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, -- sgr0=\E(\EH\003, smacs=\EH^B, smir=\Eq, smln=\EA10, -- smso=\E`6\E), tbc=\E0, tsl=\EF, -+ cuu1=^K, home=^^, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^L, -+ kcuu1=^K, rs2=^N, -+adm3a+|adm3a plus, -+ kbs=^H, use=adm3a, -+# (adm5: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" & duplicate ":do=^J:" -- esr) -+adm5|lsi adm5, -+ xmc#1, -+ bel=^G, cr=^M, cud1=^J, ed=\EY, el=\ET, kbs=^H, khome=^^, -+ rmso=\EG, smso=\EG, use=adm3a+, -+# A lot of terminals other than adm11s use these. Wherever you see -+# use=adm+sgr with some of its capabilities disabled, try the -+# disabled ones. They may well work but not have been documented or -+# expressed in the using entry. We'd like to cook up an <sgr> but the -+# <rmacs>/<smacs> sequences of the using entries vary too much. -+adm+sgr|adm style highlight capabilities, -+ invis=\EG1, rev=\EG4, rmso=\EG0, rmul=\EG0, sgr0=\EG0, -+ smso=\EG4, smul=\EG8, -+# LSI ADM-11 from George William Hartwig, Jr. <geo@BRL-TGR.ARPA> via BRL -+# Status line additions from Stephen J. Muir <stephen%comp.lancs.ac.uk@ucl-cs> -+# <khome> from <stephen%comp.lancs.ac.uk@ucl-cs.arpa>. <clear> could also -+# be ^Z, according to his entry. -+# (adm11: <smul>=\EG4 was obviously erroneous because it also said -+# <rev>=\EG4. Looking at other ADMs confirms this -- esr) -+adm11|LSI ADM-11, -+ OTbs, am, hs, -+ OTkn#8, cols#80, lines#24, -+ OTnl=^J, bel=^G, blink=\EG2, clear=\E*, cr=^M, cub1=^H, -+ cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, -+ cuu1=^K, dsl=\Eh, ed=\EY, el=\ET, fsl=\E(\r, home=^^, ht=^I, -+ kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r, -+ kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -+ kf7=^AF\r, kf8=^AG\r, khome=^^, nel=^M^J, tsl=\EF\E), -+ use=adm+sgr, -+# From: Andrew Scott Beals <bandy@lll-crg.ARPA> -+# Corrected by Olaf Siebert <rhialto@polder.ubc.kun.nl>, 11 May 1995 -+# Supervisor mode info by Ari Wuolle, <awuolle@delta.hut.fi>, 27 Aug 1996 -+# (adm12: removed obsolete ":kn:ma=j^Jk^P^K^Pl ^R^L^L :". This formerly had -+# <is2>=\Eq but that looked wrong; this <is2> is from Dave Yost <esquire!yost> -+# via BRL. That entry asserted <xmc#1>, but I've left that out because -+# neither earlier nor later ADMSs have it -- esr) - # --# This terminal description uses the non-hidden attribute mode --# (with magic cookie). -+# You will need to get into the supervisor setup before you can set -+# baudrate etc. for your ADM-12+. Press Shift-Ctrl-Setup and you should -+# see a lot more setup options. - # --# The mandatory pause used by flash does not work with some --# older versions of terminfo. If you see this effect then --# unset <xon> and delete the / from the delay. --# i.e. change $<100/> to $<100> --# (wy50-mc: added <smcup> to suppress tic warning --esr) --wy50-mc|wyse50-mc|wyse 50 with magic cookies, -- msgr@, -- ma@, xmc#1, -- blink=\EG2, dim=\EGp, prot=\EG0\E), rev=\EG4, -- rmacs=\EG0\EH\003, rmcup=\EG0, rmso=\EG0, -- sgr=\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, -- sgr0=\EG0\E(\EH\003, smacs=\EG0\EH\002, smcup=, -- smso=\EGt, use=wy50, use=adm+sgr, --wy50-vb|wyse50-vb|wyse 50 visible bell, -- bel@, use=wy50, --wy50-w|wyse50-w|wyse 50 132-column, -- cols#132, lw#7, nlab#16, wsl#97, -- cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<2>, is1=\E`;\E`9$<30>, -- use=wy50, --wy50-wvb|wyse50-wvb|wyse 50 132-column visible bell, -- bel@, use=wy50-w, -- -+# While in supervisor setup you can also use following codes: - # --# The Wyse 350 is a Wyse 50 with color. --# Unfortunately this means that it has magic cookies. --# The color attributes are designed to overlap the reverse, dim and --# underline attributes. This is nice for monochrome applications --# because you can make underline stuff green (or any other color) --# but for true color applications it's not so hot because you cannot --# mix color with reverse, dim or underline. --# To further complicate things one of the attributes must be --# black (either the foreground or the background). In reverse video --# the background changes color with black letters. In normal video --# the foreground changes colors on a black background. --# This terminfo uses some of the more advanced features of curses --# to display both color and blink. In the final analysis I am not --# sure that the wy350 runs better with this terminfo than it does --# with the wy50 terminfo (with user adjusted colors). -+# Ctrl-P Personality character selections (configure for example what -+# arrow keys send, if I recall correctly) -+# Ctrl-T tabs 1-80 use left&right to move and up to set and -+# Ctrl-V tabs 81-158 down to clear tab. Shift-Ctrl-M sets right margin at cursor -+# Ctrl-B Binary setup (probably not needed. I think that everything can -+# be set using normal setup) -+# Ctrl-A Answerback mode (enter answerback message) -+# Ctrl-U User friendly mode (normal setup) -+# Ctrl-D Defaults entire setup and function keys from EPROM tables -+# Ctrl-S Save both setup and functions keys. Takes from 6 to 10 seconds. -+# Ctrl-R Reads both setup and functions keys from NVM. -+# Shift-Ctrl-X Unlock keyboard and cancel received X-OFF status - # --# The mandatory pause used by flash does not work with --# older versions of terminfo. If you see this effect then --# unset xon and delete the / from the delay. --# i.e. change $<100/> to $<100> -+# ADM-12+ supports hardware handshaking, but it is DTR/CTS as opposed to -+# RTS/CTS used nowadays with virtually every modem and computer. 19200 -+# bps works fine with hardware flow control. - # --# Bug: The <op> capability resets attributes. --wy350|wyse350|Wyse 350, -- am, bw, hs, mc5i, mir, xon, -- colors#8, cols#80, lh#1, lines#24, lw#8, ncv#55, nlab#8, pairs#8, -- wsl#45, xmc#1, -- acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, blink=\EG2, -- cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, -- cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<1>, -- dim=\EGp, dl1=\ER, dsl=\EF\r, ed=\EY$<20>, el=\ET, -- flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=^I, hts=\E1, -- il1=\EE, ind=\n$<2>, ip=$<1>, is1=\E`\:\E`9$<30>, -- is2=\016\024\E'\E(, is3=\E%?, kHOM=\E{, kbs=^H, kcbt=\EI, -- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, -- ked=\EY, kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, -- kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, -- kf16=^AO\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -- kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -- kich1=\EQ, kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, -- ll=^^^K, mc0=\EP, mc4=^T, mc5=^X, nel=^M^J, oc=\E%?, op=\EG0, -- pfx=\Ez%p1%{63}%+%c%p2%s\177, -- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\EG0\E), ri=\Ej, -- rmacs=\EG0\EH\003, rmir=\Er, rmln=\EA11, setb=, -- setf=%?%p1%{0}%=%t%{76}%e%p1%{1}%=%t%{64}%e%p1%{2}%=%t%{8}%e%p1%{3}%=%t%{72}%e%p1%{4}%=%t%{4}%e%p1%{5}%=%t%{68}%e%p1%{6}%=%t%{12}%e%p1%{7}%=%t%{0}%;%PC\EG%gC%gA%+%{48}%+%c, -- sgr=%{0}%?%p4%t%{2}%|%;%?%p7%t%{1}%|%;%PA\EG%?%gC%t%gC%e%{0}%?%p1%t%{4}%|%;%?%p2%t%{8}%|%;%?%p3%t%{4}%|%;%?%p5%t%{64}%|%;%;%gA%+%{48}%+%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, -- sgr0=\EG0\E(\EH\003%{0}%PA%{0}%PC, smacs=\EG0\EH\002, -- smir=\Eq, smln=\EA10, tbc=\E0, tsl=\EF, use=adm+sgr, --wy350-vb|wyse350-vb|wyse 350 visible bell, -- bel@, use=wy350, --wy350-w|wyse350-w|wyse 350 132-column, -- cols#132, lw#7, nlab#16, wsl#97, -- cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<2>, is1=\E`;\E`9$<30>, -- use=wy350, --wy350-wvb|wyse350-wvb|wyse 350 132-column visible bell, -- bel@, use=wy350-w, -+# The following null-modem cable should fix this and enable you to use -+# RTS/CTS handshaking (which Linux supports, use CRTSCTS setting). Also -+# set ADM-12+ for DTR handshaking from supervisor setup. - # --# This terminfo description is untested. --# The wyse100 emulates an adm31, so the adm31 entry should work. -+# PC Serial ADM-12+ -+# -------- ------- -+# 2 - 3 -+# 3 - 2 -+# 4 - 5 -+# 5 - 20 -+# 6,8 - 4 -+# 7 - 7 -+# 20 - 6,8 - # --wy100|wyse 100, -- hs, mir, -- cols#80, lines#24, xmc#1, -- bel=^G, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+adm12|lsi adm12, -+ OTbs, OTpt, am, mir, -+ OTug#1, cols#80, it#8, lines#24, -+ bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, - cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, dsl=\EA31, ed=\EY, el=\ET, fsl=^M, il1=\EE, ind=^J, -- invis@, is2=\Eu\E0, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, -- kcuu1=^K, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, -- kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, khome=\E{, -- rmir=\Er, smir=\Eq, tsl=\EF, use=adm+sgr, --# --# The Wyse 120/150 has most of the features of the Wyse 60. --# This terminal does not need padding up to 9600 baud! --# <msgr> should be set but the clear screen fails when in --# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear --# then set <msgr>. --# --wy120|wyse120|wy150|wyse150|Wyse 120/150, -- am, bw, hs, km, mc5i, mir, msgr, xon, -- cols#80, it#8, lh#1, lines#24, lw#8, nlab#8, pb#9601, wsl#45, -- acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, -- bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<50>, -- cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<7>, -- dim=\EGp, dl1=\ER$<3>, dsl=\EF\r, ed=\EY$<50>, el=\ET$<4>, -- flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=\011$<1>, -- hts=\E1, il1=\EE$<3>, ind=\n$<3>, ip=$<2>, is1=\EcB0\EcC1, -- is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, -- is3=\EwJ\Ew1$<150>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, -- kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, -- kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -- kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, -+ dl1=\ER, ed=\EY, el=\ET, home=^^, hts=\E1, ich1=\EQ, il1=\EE, -+ is2=\E0 \E1 \E1 \E1 \E1 \E1 \E1 \E1 \E1, -+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r, -+ kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r, -+ kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, rmir=\Er, smir=\Eq, tbc=\E0, -+ use=adm+sgr, -+# (adm20: removed obsolete ":kn#7:" -- esr) -+adm20|lear siegler adm20, -+ OTbs, am, -+ cols#80, it#8, lines#24, -+ bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cuf1=^L, -+ cup=\E=%i%p2%{31}%+%c%p1%{31}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\EY, el=\ET, home=^^, ht=^I, ich1=\EQ, il1=\EE, -+ kf1=^A, kf2=^B, kf3=^W, kf4=^D, kf5=^E, kf6=^X, kf7=^Z, rmso=\E(, -+ sgr0=\E(, smso=\E), -+adm21|lear siegler adm21, -+ xmc#1, -+ bel=^G, cr=^M, cud1=^J, dch1=\EW, dl1=30*\ER, ed=\EY, el=\ET, -+ ich1=\EQ, il1=30*\EE, ind=^J, invis@, kbs=^H, kcub1=^H, -+ kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, use=adm+sgr, -+ use=adm3a, -+# (adm22: ":em=:" was an obvious typo for ":ei=:"; also, -+# removed obsolete ":kn#7:ma=j^Jk^P^K^Pl ^R^L^L :"; -+# removed bogus-looking \200 from before <cup>. -- esr) -+adm22|lsi adm22, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\Ey, el=\Et, home=^^, ht=\Ei, ich1=\EQ, il1=\EE, -+ is2=\E%\014\014\014\016\003\0\003\002\003\002\0\0\0\0\0\0\0\0\0\0\0, -+ kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r, - kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -- kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, -- kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=^^^K, -- mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<3>, -- pfloc=\EZ2%p1%{63}%+%c%p2%s\177, -- pfx=\EZ1%p1%{63}%+%c%p2%s\177, -- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<2>, -- rmacs=\EcD, rmam=\Ed., rmcup=\Ew1, rmir=\Er, rmln=\EA11, -- rmxon=\Ec20, rs1=\E~!\E~4$<30>, rs2=\EeF\E`\:$<70>, -- rs3=\EwG\Ee($<100>, -- sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, -- sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, -- smcup=\Ew0, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21, -- tbc=\E0, tsl=\EF, use=adm+sgr, -+ kf7=^AF\r, khome=^^, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, -+ lf6=F6, lf7=F7, rmso=\E(, sgr0=\E(, smso=\E), -+# ADM 31 DIP Switches - # --wy120-w|wyse120-w|wy150-w|wyse150-w|wyse 120/150 132-column, -- cols#132, lw#7, nlab#16, wsl#97, -- cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<12>, ip=$<4>, -- rs2=\E`;$<70>, use=wy120, -+# This information comes from two versions of the manual for the -+# Lear-Siegler ADM 31. - # --wy120-25|wyse120-25|wy150-25|wyse150-25|wyse 120/150 80-column 25-lines, -- lh@, lines#25, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<100>, use=wy120, --# --wy120-25-w|wyse120-25-w|wy150-25-w|wyse150-25-w|wyse 120/150 132-column 25-lines, -- lh@, lines#25, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<100>, use=wy120-w, --# --wy120-vb|wyse120-vb|wy150-vb|wyse150-vb|Wyse 120/150 visible bell, -- bel@, use=wy120, --# --wy120-w-vb|wy120-wvb|wyse120-wvb|wy150-w-vb|wyse150-w-vb|Wyse 120/150 132-column visible bell, -- bel@, use=wy120-w, --# --# The Wyse 60 is like the Wyse 50 but with more padding. --# The reset strings are slow and the pad times very depending --# on other parameters such as font loading. I have tried --# to follow the following outline: -+# Main board: -+# rear of case -+# +-||||-------------------------------------+ -+# + S1S2 ||S + -+# + ||3 + -+# + + -+# + ||S + -+# + ||4 + -+# + + -+# + + -+# + + -+# + + -+# + + -+# +-+ +-+ -+# + + -+# + S5 S6 S7 + -+# + == == == + -+# +----------------------------------------------+ -+# front of case (keyboard) - # --# <rs1> -> set personality --# <rs2> -> set number of columns --# <rs3> -> set number of lines --# <is1> -> select the proper font --# <is2> -> do the initialization --# <is3> -> set up display memory (2 pages) -+# S1 - Data Rate - Modem -+# S2 - Data Rate - Printer -+# ------------------------ -+# Data Rate Setting -+# ------------------- -+# 50 0 0 0 0 -+# 75 1 0 0 0 -+# 110 0 1 0 0 -+# 134.5 1 1 0 0 -+# 150 0 0 1 0 -+# 300 1 0 1 0 -+# 600 0 1 1 0 -+# 1200 1 1 1 0 -+# 1800 0 0 0 1 -+# 2000 1 0 0 1 -+# 2400 0 1 0 1 -+# 3600 1 1 0 1 -+# 4800 0 0 1 1 -+# 7200 1 0 1 1 -+# 9600 0 1 1 1 -+# x 1 1 1 1 - # --# The Wyse 60's that have vt100 emulation are slower than the --# older Wyse 60's. This change happened mid-1987. --# The capabilities effected are <dch1> <dl1> <il1> <ind> <ri> -+# S3 - Interface/Printer/Attributes -+# --------------------------------- -+# Printer Busy Control -+# sw1 sw2 sw3 -+# --------------- -+# off off off Busy not active, CD disabled -+# off off on Busy not active, CD enabled -+# off on off Busy active on J5-20, CD disabled -+# on off off Busy active on J5-19, CD disabled - Factory Set. -+# on off on Busy active on J5-19, CD enabled - # --# The meta key is only half right. This terminal will return the --# high order bit set when you hit CTRL-function_key -+# sw4 Used in conjuction with S4 for comm interface control - Fact 0 - # --# It may be useful to assign two function keys with the --# values \E=(\s look at old data in page 1 --# \E=W, look at bottom of page 1 --# where \s is a space ( ). -+# sw5 Secondary Channel Control (Hardware implementation only) - Fact 0 - # --# Note: --# The Wyse 60 runs faster when the XON/XOFF --# handshake is turned off. -+# sw6 ON enables printer BUSY active LOW - Factory Setting -+# OFF enables printer BUSY active HIGH - If set to this, ADM31 senses - # --# (wy60: we use \E{ rather than ^^ for home (both are documented) to avoid --# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr) --wy60|wyse60|Wyse 60, -- am, bw, hs, km, mc5i, mir, msgr, -- cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#45, -- acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, -- bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<100>, -- cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- dch1=\EW$<11>, dclk=\E`b, dim=\EGp, dl1=\ER$<5>, dsl=\EF\r, -- ed=\EY$<100>, el=\ET, flash=\E`8$<100/>\E`9, fsl=^M, -- home=\E{, ht=\011$<1>, hts=\E1, il1=\EE$<4>, ind=\n$<5>, -- ip=$<3>, is1=\EcB0\EcC1, -- is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, -- is3=\EwJ\Ew1$<150>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, -- kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, -- kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -- kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, -- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -- kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, -- kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=\E{^K, -- mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<3>, -- pfloc=\EZ2%p1%{63}%+%c%p2%s\177, -- pfx=\EZ1%p1%{63}%+%c%p2%s\177, -- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<7>, -- rmacs=\EcD, rmam=\Ed., rmclk=\E`c, rmcup=\Ew1, rmir=\Er, -- rmln=\EA11, rmxon=\Ec20, rs1=\E~!\E~4$<150>, -- rs2=\EeG$<150>, rs3=\EwG\Ee($<200>, -- sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, -- sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, -- smcup=\Ew0, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21, -- tbc=\E0, tsl=\EF, use=adm+sgr, -+# sw7 ON - steady cursor - Factory Setting -+# OFF - blinking cursor - # --wy60-w|wyse60-w|wyse 60 132-column, -- cols#132, lw#7, nlab#16, wsl#97, -- cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<16>, ip=$<5>, -- rs2=\EeF$<150>\E`;$<150>, use=wy60, -+# sw8 ON causes selected attribute character to be displayed -+# OFF causes SPACE to be displayed instead - Factory Setting - # --wy60-25|wyse60-25|wyse 60 80-column 25-lines, -- lh@, lines#25, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<200>, use=wy60, --wy60-25-w|wyse60-25-w|wyse 60 132-column 25-lines, -- lh@, lines#25, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<200>, use=wy60-w, -+# S4 - Interface -+# -------------- -+# Modem Interface -+# S3 S4 S4 S4 S4 -+# sw4 sw1 sw2 sw3 sw4 -+# --------------------------- -+# OFF ON OFF ON OFF Enable RS-232C interface, Direct Connect and -+# Current Loop disabled - Factory Setting -+# ON ON OFF ON OFF Enable Current Loop interface, Direct Connect -+# disabled -+# OFF OFF ON OFF ON Enable Direct Connect interface, RS-232C and -+# Current Loop Disabled - # --wy60-42|wyse60-42|wyse 60 80-column 42-lines, -- lines#42, -- clear=\E+$<260>, cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<2>, -- dch1=\EW$<16>, dl1=\ER$<11>, ed=\Ey$<260>, il1=\EE$<11>, -- ind=\n$<9>, ip=$<5>, is1=\EcB2\EcC3, nel=\r\n$<6>, -- ri=\Ej$<10>, rs3=\Ee*$<150>, use=wy60, --wy60-42-w|wyse60-42-w|wyse 60 132-column 42-lines, -- cols#132, lw#7, nlab#16, wsl#97, -- clear=\E+$<260>, cup=\Ea%i%p1%dR%p2%dC$<2>, -- dch1=\EW$<19>, ed=\Ey$<260>, home=\036$<2>, ip=$<6>, -- nel=\r\n$<11>, rs2=\EeF$<150>\E`;$<150>, use=wy60-42, -+# sw5 ON disables dot stretching mode - Factory Setting -+# OFF enables dot stretching mode -+# sw6 ON enables blanking function -+# OFF enables underline function - Factory Setting -+# sw7 ON causes NULLS to be displayed as NULLS -+# OFF causes NULLS to be displayed as SPACES - Factory Setting - # --wy60-43|wyse60-43|wyse 60 80-column 43-lines, -- lh@, lines#43, lw@, nlab@, -- pln@, rs3=\Ee+$<150>, use=wy60-42, --wy60-43-w|wyse60-43-w|wyse 60 132-column 43-lines, -- lh@, lines#43, lw@, nlab@, -- pln@, rs3=\Ee+$<150>, use=wy60-42-w, -+# S5 - Word Structure -+# ------------------- -+# sw1 ON enables BREAK key - Factory Setting -+# OFF disables BREAK key -+# sw2 ON selects 50Hz monitor refresh rate -+# OFF selects 60Hz monitor refresh rate - Factory Setting - # --wy60-vb|wyse60-vb|Wyse 60 visible bell, -- bel@, use=wy60, --wy60-w-vb|wy60-wvb|wyse60-wvb|Wyse 60 132-column visible bell, -- bel@, use=wy60-w, -- --# The Wyse-99GT looks at lot like the Wyse 60 except that it --# does not have the 42/43 line mode. In the Wyse-60 the "lines" --# setup parameter controls the number of lines on the screen. --# For the Wyse 99GT the "lines" setup parameter controls the --# number of lines in a page. The screen can display 25 lines max. --# The Wyse-99GT also has personalities for the VT220 and --# Tektronix 4014. But this has no bearing on the native mode. -+# Modem Port Selection -+# sw3 sw4 sw5 -+# --------------- -+# ON ON ON Selects 7 DATA bits, even parity, 2 STOP bits -+# OFF ON ON Selects 7 DATA bits, odd parity, 2 STOP bits -+# ON OFF ON Selects 7 DATA bits, even parity, 1 STOP bit - Factory Set. -+# OFF OFF ON Selects 7 DATA bits, odd parity, 1 STOP bit -+# ON ON OFF Selects 8 DATA bits, no parity, 2 STOP bits -+# OFF ON OFF Selects 8 DATA bits, no parity, 1 STOP bit -+# ON OFF OFF Selects 8 DATA bits, even parity, 1 STOP bit -+# OFF OFF OFF Selects 8 DATA bits, odd parity, 1 STOP bit - # --# (msgr) should be set but the clear screen fails when in --# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear --# then set msgr, else use msgr@. -+# sw6 ON sends bit 8 a 1 (mark) -+# OFF sends bit 8 as 0 (space) - Factory Setting -+# sw7 ON selects Block Mode -+# OFF selects Conversation Mode - Factory Setting -+# sw8 ON selects Full Duplex operation -+# OFF selects Half Duplex operation - Factory Setting - # --# u0 -> enter Tektronix mode --# u1 -> exit Tektronix mode -+# S6 - Printer -+# ------------ -+# sw1, sw2, sw6, sw7 Reserved - Factory 0 - # --wy99gt|wyse99gt|Wyse 99gt, -- msgr@, -- clear=\E+$<130>, dch1=\EW$<7>, dl1=\ER$<4>, ed=\Ey$<130>, -- el=\Et$<5>, flash=\E`8$<100/>\E`9, ht=\011$<1>, -- il1=\EE$<4>, ind=\n$<4>, ip=$<2>, is3=\Ew0$<20>, nel@, -- ri=\Ej$<3>, rmcup=\Ew0, rs2=\E`\:$<150>, smcup=\Ew1, -- u0=\E~>\E8, u1=\E[42h, use=wy60, -+# Printer Port Selection -+# same as Modem above, bit 8 (when 8 DATA bits) is always = 0 - # --wy99gt-w|wyse99gt-w|wyse 99gt 132-column, -- cols#132, lw#7, nlab#16, wsl#97, -- clear=\E+$<160>, cup=\Ea%i%p1%dR%p2%dC$<2>, -- dch1=\EW$<9>, ed=\Ey$<160>, ip=$<4>, rs2=\E`;$<150>, -- use=wy99gt, -+# sw8 ON enables Printer Port -+# OFF disables Printer Port - Factory Setting - # --wy99gt-25|wyse99gt-25|wyse 99gt 80-column 25-lines, -- lh@, lines#25, lw@, nlab@, -- pln@, rs2=\E`\:$<150>, rs3=\EwG\Ee)$<200>, use=wy99gt, -+# S7 - Polling Address -+# -------------------- -+# sw1-7 Establish ASCII character which designates terminal polling address -+# ON = logic 0 -+# OFF = logic 1 - Factory Setting -+# sw8 ON enables Polling Option -+# OFF disables Polling Option - Factory Setting - # --wy99gt-25-w|wyse99gt-25-w|wyse 99gt 132-column 25-lines, -- lh@, lines#25, lw@, nlab@, -- pln@, rs2=\E`;$<150>, use=wy99gt-w, - # --wy99gt-vb|wyse99gt-vb|Wyse 99gt visible bell, -- bel@, use=wy99gt, -+# On some older adm31s, S4 does not exist, and S5-sw6 is not defined. - # --wy99gt-w-vb|wy99gt-wvb|wyse99gt-wvb|Wyse 99gt 132-column visible bell, -- bel@, use=wy99gt-w, -- --# Can't set tabs! Other bugs (ANSI mode only): --# - can't redefine function keys (anyway, key redefinition in ANSI mode --# is too much complex to be described); --# - meta key can't be described (the terminal forgets it when reset); --# The xon-xoff handshaking can't be disabled while in ansi personality, so --# emacs can't work at speed greater than 9600 baud. No padding is needed at --# this speed. --# dch1 has been commented out because it causes annoying glittering when --# vi deletes one character at the beginning of a line with tabs in it. --# dch makes sysgen(1M) have a horrible behaviour when deleting --# a screen and makes screen(1) behave badly, so it is disabled too. The nice --# thing is that vi goes crazy if smir-rmir are present and both dch-dch1 are --# not, so smir and rmir are commented out as well. --# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 --wy99-ansi|Wyse WY-99GT in ansi mode (int'l PC keyboard), -- am, km, mc5i, mir, msgr, xenl, -- cols#80, it#8, lines#25, vt#3, -- acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J$<200>, cnorm=\E[34h\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD$<1>, -- cub1=\010$<1>, cud=\E[%p1%dB, cud1=\ED, -- cuf=\E[%p1%dC$<1>, cuf1=\E[C$<1>, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, -- cvvis=\E[34l\E[?25h, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, -- ech=\E[%p1%dX, ed=\E[J$<8*>, el=\E[K$<1>, el1=\E[1K$<1>, -- enacs=\E)0, flash=\E[?5h$<30/>\E[?5l, home=\E[H, -- hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, -- il1=\E[L, ind=\n$<1>, invis=\E[8m, -- is2=\E7\E[1r\E8\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[4i, -- kbs=^H, kcbt=\E[z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -- kcuu1=\EOA, kf1=\EOP, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf17=\E[K, kf18=\E[31~, kf19=\E[32~, kf2=\EOQ, -- kf20=\E[33~, kf21=\E[34~, kf22=\E[35~, kf23=\E[1~, -- kf24=\E[2~, kf3=\EOR, kf4=\EOS, kf5=\E[M, kf6=\E[17~, -- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, ll=\E[24E, mc0=\E[?19h, -- mc4=\E[4i, mc5=\E[5i, nel=\EE, prot=\E[1"q, rc=\E8, -- rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, -- rmkx=\E[?1l, rmso=\E[27m, rmul=\E[24m, -- rs2=\E[61"p\E[40h\E[?6l\E[1r\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[24E\E[4i, -- sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%O%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m\E[%?%p8%t1%;"q%?%p9%t\016%e\017%;, -- sgr0=\E[m\017\E["q, smacs=^N, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1h, smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, -- --# This is the american terminal. Here tabs work fine. --# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 --wy99a-ansi|Wyse WY-99GT in ansi mode (US PC keyboard), -- hts=\EH, is3=\E[?5l, rs3=\E[?5l, tbc=\E[3g, use=wy99-ansi, -- --# This terminal (firmware version 02) has a lot of bugs: --# - can't set tabs; --# - other bugs in ANSI modes (see above). --# This description disables handshaking when using cup. This is because --# GNU emacs doesn't like Xon-Xoff handshaking. This means the terminal --# cannot be used at speeds greater than 9600 baud, because at greater --# speeds handshaking is needed even for character sending. If you use --# DTR handshaking, you can use even greater speeds. --# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 --wy99f|wy99fgt|wy-99fgt|Wyse WY-99GT (int'l PC keyboard), -- am, bw, hs, km, mc5i, mir, msgr, xon, -- cols#80, it#8, lines#25, wsl#46, -- acsc='x+y.w_vi~j(k'l&m%n)o9q*s8t-u.v\,w+x=, bel=^G, -- blink=\EG2, cbt=\EI, civis=\E`0, clear=\E'\E(\032, -- cnorm=\E`4\E`1, cr=^M, cub1=^H, cud1=\Ej, cuf1=^L, -+# This adm31 entry uses underline as the standout mode. -+# If the adm31 gives you trouble with standout mode, check the DIP switch in -+# position 6, bank @c11, 25% from back end of the circuit board. Should be -+# OFF. If there is no such switch, you have an old adm31 and must use oadm31. -+# (adm31: removed obsolete ":ma=j^Jk^P^K^Pl ^R^L^L :" -- esr) -+adm31|lsi adm31 with sw6 set for underline mode, -+ OTbs, am, mir, -+ cols#80, lines#24, -+ bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\EY, el=\ET, home=^^, il1=\EE, ind=^J, is2=\Eu\E0, -+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r, -+ kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r, -+ kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, rmir=\Er, rmso=\EG0, -+ rmul=\EG0, sgr0=\EG0, smir=\Eq, smso=\EG1, smul=\EG1, -+adm31-old|o31|old adm31, -+ rmul@, smso=\EG4, smul@, use=adm31, -+# LSI ADM-36 from Col. George L. Sicherman <gloria!colonel> via BRL -+adm36|LSI ADM36, -+ OTbs, OTpt, -+ OTkn#4, -+ if=/usr/share/tabset/vt100, -+ is2=\E<\E>\E[6;?2;?7;?8h\E[4;20;?1;?3;?4;?5;?6;?18;?19l, -+ use=vt100, -+# (adm42: removed obsolete ":ma=^K^P:" -- esr) -+adm42|lsi adm42, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, cbt=\EI, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L, - cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- cvvis=\E`2\E`1, dch1=\EW, dim=\EGp, dl1=\ER, dsl=\EF\r, -- ed=\EY$<8*>, el=\ET$<8>, enacs=\Ec@1J$<2000>, -- flash=\E\^1$<30/>\E\^0, fsl=^M, home=^^, ht=^I, il1=\EE, -- ind=^J, invis=\EG3, -- is2=\Eu\Ee6\EC\EDF\Ec21\Ec31\Ec62\Ec72\Ee;\016\E'\EeL\E`9\E\^0\E`1\E`4\Ee.\E`\:\Ee1\EG0\E(\Ed/\Ee4\Ed*\EO\E`I\Er\Ee"\EcD\024, -- ka1=^^, ka3=\EJ, kbs=^H, kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, -- kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r, kf10=^AI\r, -- kf11=^AJ\r, kf12=^AK\r, kf13=^A`\r, kf14=^Aa\r, kf15=^Ab\r, -- kf16=^Ac\r, kf17=^Ad\r, kf18=^Ae\r, kf19=^Af\r, kf2=^AA\r, -- kf20=^Ag\r, kf21=^Ah\r, kf22=^Ai\r, kf23=^Aj\r, kf24=^Ak\r, -- kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -- kf8=^AG\r, kf9=^AH\r, kprt=\EP, mc0=\EP, mc4=^T, mc5=\Ed#, -- nel=^_, prot=\E), rev=\EG4, ri=\Ej, rmacs=\EcD, rmam=\Ed., -- rmcup=\Ec21\Ec31, rmir=\Er, rmso=\EG0, rmxon=\Ec20\Ec30, -- rs2=\Eu\E~4\Ee6\EC\EDF\Ec21\Ec31\Ec62\Ec72\Ee;\016\E'\EeL\E`9\E\^0\E`1\E`4\Ee.\E`\:\Ee)\Ew\EwG\Ew0\Ee1\EG0\E(\Ed/\Ee4\Ed*\EO\E`I\Er\Ee"\Ec@0B\EcD\024, -- sgr=\E(\EG%{48}%?%p1%p3%O%t%{4}%+%;%?%p2%t%{8}%+%;%?%p4%t%{2}%+%;%?%p5%t%{64}%+%;%?%p7%t%{1}%+%;%c%?%p8%t\E)%;%?%p9%t\EcE%e\EcD%;, -- sgr0=\E(\EG0, smacs=\EcE, smam=\Ed/, smcup=\Ec20\Ec30, -- smir=\Eq, smso=\EG4, smxon=\Ec21\Ec31, tsl=\EF, -- --# This is the american terminal. Here tabs work. --# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 --wy99fa|wy99fgta|wy-99fgta|Wyse WY-99GT (US PC keyboard), -- hts=\E1, tbc=\E0, use=wy99f, -+ cvvis=\EC\E3 \E3(, dch1=\EW, dl1=\ER, ed=\EY, el=\ET, ht=^I, -+ il1=\EE$<270>, ind=^J, invis@, ip=$<6*>, kcub1=^H, kcud1=^J, -+ kcuf1=^L, kcuu1=^K, khome=^^, pad=\177, rmir=\Er, rmul@, -+ smir=\Eq, smul@, use=adm+sgr, -+# The following termcap for the Lear Siegler ADM-42 leaves the -+# "system line" at the bottom of the screen blank (for those who -+# find it distracting otherwise) -+adm42-ns|lsi adm-42 with no system line, -+ cbt=\EI\EF \011, clear=\E;\EF \011, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<6>\EF \011, -+ dch1=\EW\EF \011, dl1=\ER\EF \011, ed=\EY\EF \011, -+ el=\ET\EF \011, il1=\EE\EF \011, rmir=\Er\EF \011, -+ smir=\Eq\EF \011, use=adm42, -+# ADM 1178 terminal -- rather like an ADM-42. Manual is dated March 1 1985. -+# The insert mode of this terminal is commented out because it's broken for our -+# purposes in that it will shift the position of every character on the page, -+# not just the cursor line! -+# From: Michael Driscoll <fenris@lightspeed.net> 10 July 1996 -+adm1178|1178|lsi adm1178, -+ am, -+ cols#80, lines#24, xmc#1, -+ bel=^G, bold=\E(, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J, -+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ cvvis=\EC\E3 \E3(, dch1=\EW, dl1=\ER, ed=\EY, el=\ET, -+ home=^^, ht=^I, il1=\EE, ind=^J, ip=$<6*/>, kbs=^H, kcub1=^H, -+ kcud1=^J, nel=^M^J, pad=\177, rev=\EG4, rmso=\EG0, rmul=\EG0, -+ sgr0=\E), smso=\EG4, smul=\EG1, - -+#### Prime - # --# The Wyse 160 is combination of the WY-60 and the WY-99gt. --# The reset strings are slow and the pad times very depending --# on other parameters such as font loading. I have tried --# to follow the following outline: -+# Yes, Prime made terminals. These entries were posted by Kevin J. Cummings -+# <cummings@primerd.prime.com> on 14 Dec 1992 and lightly edited by esr. -+# Prime merged with ComputerVision in the late 1980s; you can reach them at: - # --# <rs1> -> set personality --# <rs2> -> set number of columns --# <rs3> -> set number of lines --# <is1> -> select the proper font --# <is2> -> do the initialization --# <is3> -> set up display memory (2 pages) -+# ComputerVision Services -+# 500 Old Connecticut Path -+# Framingham, Mass. - # --# The display memory may be used for either text or graphics. --# When "Display Memory = Shared" the terminal will have more pages --# but garbage may be left on the screen when you switch from --# graphics to text. If "Display Memory = Unshared" then the --# text area will be only one page long. -+ -+# Standout mode is dim reverse-video. -+pt100|pt200|wren|fenix|prime pt100/pt200, -+ am, bw, mir, msgr, -+ cols#80, it#8, lines#24, -+ cbt=\E[Z, clear=\E?, cr=^M, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E0%p1%{33}%+%c%p2%{33}%+%c, cuu=\E[%p1%dA, -+ cuu1=\EM, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl1=\E[M, -+ ed=\E[J\E[r, el=\E[K\E[t, flash=\E$$<200/>\E$P, -+ home=\E$B, ht=^I, il1=\E[L\E[t, ind=^J, kbs=^H, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E$A, nel=^M^J, -+ rmcup=, rmir=\E[4l, rmkx=\E[>13l, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, -+ smcup=\E[>1l\E[>2l\E[>16l\E[4l\E[>9l\E[20l\E[>3l\E[>7h\E[>12l\E[1Q, -+ smir=\E[4h, smkx=\E[>13h, smso=\E[2;7m, smul=\E[4m, -+pt100w|pt200w|wrenw|fenixw|prime pt100/pt200 in 132-column mode, -+ cols#132, -+ cup=\E[%i%p1%d;%p2%dH, use=pt100, -+pt250|Prime PT250, -+ rmso@, smso@, use=pt100, -+pt250w|Prime PT250 in 132-column mode, -+ rmso@, smso@, use=pt100w, -+ -+#### Qume (qvt) - # --# (wy160: we use \E{ rather than ^^ for home (both are documented) to avoid --# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr) --wy160|wyse160|Wyse 160, -- am, bw, hs, km, mc5i, mir, msgr, -- cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#38, -- acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, -- bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<30>, -- cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<5>, -- dclk=\E`b, dim=\EGp, dl1=\ER$<1>, dsl=\EF\r, ed=\EY$<30>, -- el=\ET$<5>, flash=\E`8$<100/>\E`9, fsl=^M, home=\E{, ht=^I, -- hts=\E1, il1=\EE$<1>, ind=\n$<1>, ip=$<2>, is1=\EcB0\EcC1, -- is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, -- is3=\Ew0$<100>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, -- kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, -- kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -- kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, -- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -- kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, -- kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=\E{^K, -- mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<1>, -- pfloc=\EZ2%p1%{63}%+%c%p2%s\177, -- pfx=\EZ1%p1%{63}%+%c%p2%s\177, -- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<1>, -- rmacs=\EcD, rmam=\Ed., rmclk=\E`c, rmcup=\Ew0, rmir=\Er, -- rmln=\EA11, rmxon=\Ec20, rs1=\E~!\E~4$<70>, -- rs2=\E`\:$<100>, rs3=\EwG\Ee($<140>, -- sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, -- sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, -- smcup=\Ew1, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21, -- tbc=\E0, tsl=\EF, use=adm+sgr, -+# Qume, Inc. -+# 3475-A North 1st Street -+# San Jose CA 95134 -+# Vox: (800)-457-4447 -+# Fax: (408)-473-1510 -+# Net: josed@techsupp.wyse.com (Jose D'Oliveira) - # --wy160-w|wyse160-w|wyse 160 132-column, -- cols#132, lw#7, nlab#16, wsl#90, -- cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<9>, -- rs2=\EeF$<150>\E`;$<150>, use=wy160, -+# Qume was bought by Wyse, but still (as of early 1995) has its own support -+# group and production division. - # --wy160-25|wyse160-25|wyse 160 80-column 25-lines, -- lh@, lines#25, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<200>, use=wy160, --wy160-25-w|wyse160-25-w|wyse 160 132-column 25-lines, -- lh@, lines#25, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<200>, use=wy160-w, -+# Discontinued Qume models: - # --wy160-42|wyse160-42|wyse 160 80-column 42-lines, -- lines#42, -- clear=\E+$<50>, dl1=\ER$<2>, ed=\Ey$<50>, il1=\EE$<2>, -- ind=\n$<2>, is1=\EcB2\EcC3, nel=\r\n$<2>, ri=\Ej$<2>, -- rs3=\Ee*$<150>, use=wy160, --wy160-42-w|wyse160-42-w|wyse 160 132-column 42-lines, -- cols#132, lw#7, nlab#16, wsl#90, -- cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<8>, ip=$<3>, -- rs2=\EeF$<150>\E`;$<150>, use=wy160-42, -+# The qvt101 and qvt102 listed here are long obsolete; so is the qvt101+ -+# built to replace them, and a qvt119+ which was a 101+ with available wide -+# mode (132 columns). There was a qvt103 which added vt100/vt131 emulations -+# and an ANSI-compatible qvt203 that replaced it. Qume started producing -+# ANSI-compatible terminals with the qvt323 and qvt61. - # --wy160-43|wyse160-43|wyse 160 80-column 43-lines, -- lh@, lines#43, lw@, nlab@, -- pln@, rs3=\Ee+$<150>, use=wy160-42, --wy160-43-w|wyse160-43-w|wyse 160 132-column 43-lines, -- lh@, lines#43, lw@, nlab@, -- pln@, rs3=\Ee+$<150>, use=wy160-42-w, -+# Current Qume models (as of February 1995): - # --wy160-vb|wyse160-vb|Wyse 160 visible bell, -- bel@, use=wy160, --wy160-w-vb|wy160-wvb|wyse160-wvb|Wyse 160 132-column visible bell, -- bel@, use=wy160-w, -+# All current Qume terminals have ANSI-compatible operation modes. -+# Qume is still producing the qvt62, which features emulations for other -+# popular lines such as ADDS, and dual-host capabilities. The qvt82 is -+# designed for use as a SCO ANSI terminal. The qvt70 is a color terminal -+# with many emulations including Wyse370, Wyse 325, etc. Their newest -+# model is the qvt520, which is vt420-compatible. - # --# The Wyse 75 is a vt100 lookalike without advanced video. -+# There are some ancient printing Qume terminals under `Daisy Wheel Printers' - # --# The Wyse 75 can support one attribute (e.g. Dim, Inverse, --# Underline) without magic cookies. The following description --# uses this capability, but when more than one attribute is --# put on the screen at once, all attributes will be changed --# to be the same as the last attribute given. --# The Wyse 75 can support more attributes when used with magic --# cookies. The wy75-mc terminal description uses magic cookies --# to correctly handle multiple attributes on a screen. -+# If you inherit a Qume without docs, try Ctrl-Shift-Setup to enter its -+# setup mode. Shift-s should be a configuration save to NVRAM. -+ -+qvt101|qvt108|qume qvt 101 and QVT 108, -+ xmc#1, use=qvt101+, -+ -+# This used to have <cvvis=\E.2> but no <cnorm> or <civis>. The BSD termcap -+# file had <cvvis=\EM4 \200\200\200>. I've done the safe thing and yanked -+# both. The <rev> is from BSD, which also claimed bold=\E( and dim=\E). -+# What seems to be going on here is that this entry was designed so that -+# the normal highlight is bold and standout is dim plus something else -+# (reverse-video maybe? But then, are there two <rev> sequences?) - # --wy75|wyse75|wyse 75, -- am, hs, mc5i, mir, msgr, xenl, xon, -- cols#80, lines#24, ma#1, pb#1201, wsl#78, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, cbt=\E[Z, civis=\E[?25l, clear=\E[H\E[J$<30>, -- cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr$<2>, -+# Added kdch1, kil1, kdl1 based on screenshot -TD: -+# http://www.vintagecomputer.net/qume/qvt-108/qume_qvt-108_keyboard.jpg -+qvt101+|qvt101p|qume qvt 101 PLUS product, -+ am, bw, hs, ul, -+ cols#80, lines#24, xmc#0, -+ bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=^M, cub1=^H, cud1=^J, -+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ dch1=\EW, dl1=\ER, dsl=\Eg\Ef\r, ed=\EY, el=\ET, -+ flash=\Eb$<200>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1, -+ ich1=\EQ, il1=\EE, ind=^J, invis@, kbs=^H, kcbt=\EI, kcub1=^H, -+ kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, -+ kel=\ET, kf1=^A@\r, kf10=^AI\r, kf2=^AA\r, kf3=^AB\r, -+ kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, -+ kf9=^AH\r, khome=^^, kich1=\EQ, kil1=\EE, mc4=\EA, mc5=\E@, -+ rmso=\E(, smso=\E0P\E), tbc=\E3, tsl=\Eg\Ef, use=adm+sgr, -+qvt102|qume qvt 102, -+ cnorm=\E., use=qvt101, -+# (qvt103: added <rmam>/<smam> based on init string -- esr) -+qvt103|qume qvt 103, -+ am, xenl, xon, -+ cols#80, it#8, lines#24, vt#3, -+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -+ clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, - cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP$<3*>, -- dch1=\E[P$<3>, dim=\E[0t\E[2m, dl=\E[%p1%dM$<1*>, -- dl1=\E[M, dsl=\E[>\,\001\001\E[>-\001\001, -- ech=\E[%p1%dX, ed=\E[J$<30>, el=\E[K$<3>, el1=\E[1K$<3>, -- enacs=\E)0, flash=\E[30h\E\,\E[30l$<250>, fsl=^A, -- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, -- ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>, -- ind=\n$<2>, ip=$<1>, -- is1=\E[2;4;20;30l\E[?1;10l\E[12h\E[?7;8;25h, -- is2=\E>\E(B\E)0\017, is3=\E[m, kbs=^H, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\E[M, kel=\E[K, -- kf1=\E[?5i, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -- kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, -- kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\E[?3i, -- kf20=\E[34~, kf21=\E[35~, kf3=\E[2i, kf4=\E[@, kf5=\E[M, -- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, -- khlp=\E[28~, khome=\E[H, kich1=\E[@, kil1=\E[L, knp=\E[6~, -- kpp=\E[5~, kprt=\E[?5i, kslt=\E[4~, mc0=\E[0i, mc4=\E[4i, -- mc5=\E[5i, rc=\E8, rev=\E[1t\E[7m, ri=\EM$<2>, rmacs=^O, -- rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m, rmul=\E[m, -- rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<80>, rs3=\E[?5l, -- sc=\E7, -- sgr=%?%p5%t\E[0t%;%?%p3%p1%|%t\E[1t%;%?%p2%t\E[2t%;%?%p4%t\E[3t%;%?%p1%p2%p3%p4%p5%|%|%|%|%t\E[7m%e\E[m%;%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1l\E[?7h\E=, smso=\E[1t\E[7m, smul=\E[2t\E[4m, -- tbc=\E[3g, tsl=\E[>\,\001, use=vt220+keypad, -+ cuf=\E[%p1%dC, cuf1=\E[C$<2>, -+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, -+ cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I, -+ hts=\EH, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -+ kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, -+ rev=\E[7m$<2>, ri=\EM$<5>, rmam=\E[?7l, rmkx=\E[?1l\E>, -+ rmso=\E[m$<2>, rmul=\E[m$<2>, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>, -+ sgr0=\E[m$<2>, smam=\E[?7h, smkx=\E[?1h\E=, -+ smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, -+qvt103-w|qume qvt103 132 cols, -+ cols#132, lines#24, -+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=qvt103, -+qvt119+|qvt119p|qvt119|qume qvt 119 and 119PLUS terminals, -+ am, hs, mir, msgr, -+ cols#80, lines#24, xmc#0, -+ bel=^G, cbt=\EI, clear=\E*1, cnorm=\E.4, cr=^M, cub1=^H, -+ cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, -+ cuu1=^K, cvvis=\E.2, dch1=\EW, dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey, -+ el=\Et, flash=\En0$<200>\En1, fsl=^M, home=^^, ht=^I, -+ hts=\E1, il1=\EE, ind=^J, is2=\EDF\EC\EG0\Er\E(\E%EX, -+ kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^AI\r, -+ kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -+ kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -+ mc4=\EA, mc5=\E@, ri=\EJ, rmir=\Er, smir=\Eq, smul=\EG8, -+ tbc=\E3, tsl=\Eg\Ef, use=adm+sgr, -+qvt119+-25|qvt119p-25|QVT 119 PLUS with 25 data lines, -+ lines#25, use=qvt119+, -+qvt119+-w|qvt119p-w|qvt119-w|QVT 119 and 119 PLUS in 132 column mode, -+ cols#132, -+ is2=\EDF\EC\EG0\Er\E(\E%\EX\En4, use=qvt119+, -+qvt119+-25-w|qvt119p-25-w|qvt119-25-w|QVT 119 and 119 PLUS 132 by 25, -+ lines#25, use=qvt119+, -+qvt203|qvt203+|qume qvt 203 Plus, -+ dch1=\E[P$<7>, dl1=\E[M$<99>, il1=\E[L$<99>, ind=\n$<30>, -+ ip=$<7>, kf0=\E[29~, kf1=\E[17~, kf2=\E[18~, kf3=\E[19~, -+ kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, -+ kf9=\E[28~, rmir=\E[4l, smir=\E[4h, use=qvt103, -+qvt203-w|qvt203-w-am|qume qvt 203 PLUS in 132 cols (w/advanced video), -+ cols#132, lines#24, -+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=qvt203, - # --# This terminal description uses the non-hidden attribute mode --# (with magic cookie). -+# Since a command is present for enabling 25 data lines, -+# a specific terminfo entry may be generated for the 203. -+# If one is desired for the QVT 119 PLUS then 25 lines must -+# be selected in the status line (setup line 9). - # --wy75-mc|wyse75-mc|wyse 75 with magic cookies, -- msgr@, -- ma@, xmc#1, -- blink=\E[2p, dim=\E[1p, invis=\E[4p, is3=\E[m\E[p, -- rev=\E[16p, rmacs=\E[0p\017, rmso=\E[0p, rmul=\E[0p, -- sgr=\E[%{0}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{16}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{1}%|%;%?%p7%t%{4}%|%;%dp%?%p9%t\016%e\017%;, -- sgr0=\E[0p\017, smacs=\E[0p\016, smso=\E[17p, smul=\E[8p, -- use=wy75, --wy75-vb|wyse75-vb|wyse 75 with visible bell, -- pb@, -- bel@, use=wy75, --wy75-w|wyse75-w|wyse 75 in 132 column mode, -- cols#132, wsl#130, -- rs2=\E[35h\E[?3h$<80>, use=wy75, --wy75-wvb|wyse75-wvb|wyse 75 with visible bell 132 columns, -- pb@, -- bel@, use=wy75-w, -+qvt203-25|QVT 203 PLUS with 25 by 80 column mode, -+ cols#80, lines#25, -+ is2=\E[=40h\E[?3l, use=qvt203, -+qvt203-25-w|QVT 203 PLUS with 25 by 132 columns, -+ cols#132, lines#25, -+ rs2=\E[?3h\E[=40h, use=qvt203, -+ -+#### Televideo (tvi) - # --# Wyse 85 emulating a vt220 7 bit mode. --# 24 line screen with status line. -+# TeleVideo -+# 550 East Brokaw Road -+# PO Box 49048 95161 -+# San Jose CA 95112 -+# Vox: (408)-954-8333 -+# Fax: (408)-954-0623 - # --# The vt220 mode permits more function keys but it wipes out --# the escape key. I strongly recommend that <f11> be set to --# escape (esc). --# The terminal may have to be set for 8 data bits and 2 stop --# bits for the arrow keys to work. --# The Wyse 85 runs faster with XON/XOFF enabled. Also the --# <dch> and <ich> work best when XON/XOFF is set. <ich> and --# <dch> leave trash on the screen when used without XON/XOFF. - # --wy85|wyse85|wyse 85, -- am, hs, mc5i, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J$<110>, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP$<3*>, dch1=\E[P$<3>, dim=\E[2m, -- dl=\E[%p1%dM$<3*>, dl1=\E[M$<3>, dsl=\E[40l, -- ech=\E[%p1%dX, ed=\E[J$<110>, el=\E[K$<1>, el1=\E[1K, -- enacs=\E)0, flash=\E[30h\E\,\E[30l$<300>, -- fsl=\E[1;24r\E8, home=\E[H, ht=\011$<1>, hts=\EH, -- ich=\E[%p1%d@$<4*>, il=\E[%p1%dL$<5*>, il1=\E[L$<5>, -- ind=\n$<3>, invis=\E[8m, ip=$<3>, is1=\E[62;1"p\E[?5W, -- is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h$<16>, -- is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -- kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, -- kf19=\E[33~, kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, -- khome=\E[26~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -- kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, -- mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM$<3>, -- rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m, -- rmul=\E[m, rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<70>, -- rs3=\E[?5l, sc=\E7, -- sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- tsl=\E[40h\E7\E[25;%i%p1%dH, use=vt220+keypad, -+# These require incredible amounts of padding. - # --# Wyse 85 with visual bell. --wy85-vb|wyse85-vb|wyse 85 with visible bell, -- bel@, flash=\E[30h\E\,\E[30l$<300>, use=wy85, -+# All of these terminals (912 to 970 and the tvipt) are discontinued. Newer -+# Televideo terminals are ANSI and PC-ANSI compatible. -+ -+tvi803|televideo 803, -+ clear=\E*$<10>, use=tvi950, -+ -+# Vanilla tvi910 -- W. Gish <cswarren@violet> 10/29/86 -+# Switch settings are: - # --# Wyse 85 in 132-column mode. --wy85-w|wyse85-w|wyse 85 in 132-column mode, -- cols#132, wsl#132, -- rs2=\E[35h\E[?3h$<70>, use=wy85, -+# S1 1 2 3 4 -+# D D D D 9600 -+# D D D U 50 -+# D D U D 75 -+# D D U U 110 -+# D U D D 135 -+# D U D U 150 -+# D U U D 300 -+# D U U U 600 -+# U D D D 1200 -+# U D D U 1800 -+# U D U D 2400 -+# U D U U 3600 -+# U U D D 4800 -+# U U D U 7200 -+# U U U D 9600 -+# U U U U 19200 - # --# Wyse 85 in 132-column mode with visual bell. --wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns, -- bel@, use=wy85-w, -- --# From: Kevin Turner <kevint@aracnet.com>, 12 Jul 1998 --# This copes with an apparent firmware bug in the wy85. He writes: --# "What I did was change leave the terminal cursor keys set to Normal --# (instead of application), and change \E[ to \233 for all the keys in --# terminfo. At one point, I found some reference indicating that this --# terminal bug (not sending \E[) was acknowledged by Wyse (so it's not just --# me), but I can't find that and the server under my bookmark to "Wyse --# Technical" isn't responding. So there's the question of wether the wy85 --# terminfo should reflect the manufactuer's intended behaviour of the terminal --# or the actual." --wy85-8bit|wyse85-8bit|wyse 85 in 8-bit mode, -- am, hs, mc5i, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J$<110>, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP$<3*>, dch1=\E[P$<3>, dim=\E[2m, -- dl=\E[%p1%dM$<3*>, dl1=\E[M$<3>, dsl=\E[40l, -- ech=\E[%p1%dX, ed=\E[J$<110>, el=\E[K$<1>, el1=\E[1K, -- enacs=\E)0, flash=\E[30h\E\,\E[30l$<300>, -- fsl=\E[1;24r\E8, home=\E[H, ht=\011$<1>, hts=\EH, -- ich=\E[%p1%d@$<4*>, il=\E[%p1%dL$<5*>, il1=\E[L$<5>, -- ind=\n$<3>, invis=\E[8m, ip=$<3>, is1=\E[62;1"p\E[?5W, -- is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h$<16>, -- is3=\E>\E(B\E)0\017\E[m, ka1=\EOw, ka3=\EOy, kb2=\EOu, -- kbs=^H, kc1=\EOq, kc3=\EOs, kcub1=\233D, kcud1=\233B, -- kcuf1=\233C, kcuu1=\233A, kdch1=\2333~, kent=\EOM, -- kf1=\EOP, kf10=\23321~, kf11=\23323~, kf12=\23324~, -- kf13=\23325~, kf14=\23326~, kf15=\23328~, kf16=\23329~, -- kf17=\23331~, kf18=\23332~, kf19=\23333~, kf2=\EOQ, -- kf20=\23334~, kf3=\EOR, kf4=\EOS, kf6=\23317~, kf7=\23318~, -- kf8=\23319~, kf9=\23320~, kfnd=\2331~, khlp=\23328~, -- khome=\23326~, kich1=\2332~, knp=\2336~, kpp=\2335~, -- kslt=\2334~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, -- mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM$<3>, -- rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m, -- rmul=\E[m, rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<70>, -- rs3=\E[?5l, sc=\E7, -- sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;+m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- tsl=\E[40h\E7\E[25;%i%p1%dH, -+# S1 5 6 7 8 -+# U D X D 7N1 (data bits, parity, stop bits) (X means ignored) -+# U D X U 7N2 -+# U U D D 7O1 -+# U U D U 7O2 -+# U U U D 7E1 -+# U U U U 7E2 -+# D D X D 8N1 -+# D D X U 8N2 -+# D U D D 8O1 -+# D U U U 8E2 - # --# Wyse 185 emulating a vt320 7 bit mode. -+# S1 9 Autowrap -+# U on -+# D off - # --# This terminal always displays 25 lines. These lines may be used --# as 24 data lines and a terminal status line (top or bottom) or --# 25 data lines. The 48 and 50 line modes change the page size --# and not the number of lines on the screen. -+# S1 10 CR/LF -+# U do CR/LF when CR received -+# D do CR when CR received - # --# The Compose Character key can be used as a meta key if changed --# by set-up. -+# S2 1 Mode -+# U block -+# D conversational - # --wy185|wyse185|wyse 185, -- am, hs, km, mc5i, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr$<20>, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<3>, dch1=\E[P$<3>, -- dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, -- dsl=\E7\E[99;0H\E[K\E8, ech=\E[%p1%dX, ed=\E[J$<40>, -- el=\E[K, el1=\E[1K, enacs=\E)0, -- flash=\E[30h\E\,\E[30l$<100>, fsl=\E[1;24r\E8, -- home=\E[H, hpa=\E[%i%p1%d`, ht=^I, hts=\EH, -- ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>, il1=\E[L$<3>, -- ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W, -- is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h, -- is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP, -- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -- kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR, -- kf4=\EOS, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, kich1=\E[2~, -- knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, -- lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, -- ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, rmcup=\E[ R, rmir=\E[4l, -- rmkx=\E>, rmso=\E[27m, rmul=\E[24m, -- rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p, rs2=\E[35h\E[?3l, -- rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7, -- sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[ Q, -- smir=\E[4h, smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, tsl=\E7\E[99;%i%p1%dH, vpa=\E[%i%p1%dd, -- use=vt220+keypad, -+# S2 2 Duplex -+# U half -+# D full - # --# Wyse 185 with 24 data lines and top status (terminal status) --wy185-24|wyse185-24|wyse 185 with 24 data lines, -- hs@, -- dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@, -- use=wy185, -+# S2 3 Hertz -+# U 50 -+# D 60 - # --# Wyse 185 with visual bell. --wy185-vb|wyse185-vb|wyse 185+flash, -- bel@, use=wy185, -+# S2 4 Edit mode -+# U local -+# D duplex - # --# Wyse 185 in 132-column mode. --wy185-w|wyse185-w|wyse 185 in 132-column mode, -- cols#132, wsl#132, -- dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>, -- ip=$<7>, rs2=\E[35h\E[?3h, use=wy185, -+# S2 5 Cursor type -+# U underline -+# D block - # --# Wyse 185 in 132-column mode with visual bell. --wy185-wvb|wyse185-wvb|wyse 185+flash+132 cols, -- bel@, use=wy185-w, -- --# wy325 terminfo entries --# Done by Joe H. Davis 3-9-92 -- --# lines 25 columns 80 -+# S2 6 Cursor down key -+# U send ^J -+# D send ^V - # --wy325|wyse325|Wyse epc, -- am, bw, hs, mc5i, mir, -- cols#80, lh#1, lines#24, lw#8, nlab#8, pb#9601, wsl#45, -- acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, -- bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<50>, -- cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<7>, -- dim=\EGp, dl1=\ER$<3>, dsl=\EF\r, ed=\EY$<50>, el=\ET$<4>, -- flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=^I, hts=\E1, -- il1=\EE$<3>, ind=\n$<3>, ip=$<2>, is1=\EcB0\EcC1, -- is2=\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, -- is3=\Ew0$<16>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, -- kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, -- kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -- kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, -- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -- kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\Eq, -- kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=^^^K, -- mc0=\EP, mc4=^T, mc5=\Ed#, -- pfloc=\EZ2%p1%{63}%+%c%p2%s\177, -- pfx=\EZ1%p1%{63}%+%c%p2%s\177, -- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<2>, -- rmacs=\EcD, rmam=\Ed., rmcup=\Ew0, rmir=\Er, rmln=\EA11, -- rs1=\E~!\E~4$<30>, rs2=\EeF\E`\:$<70>, -- rs3=\EwG\Ee($<100>, -- sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, -- sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, -- smcup=\Ew1, smir=\Eq, smln=\EA10, smso=\EGt, tbc=\E0, -- tsl=\EF, use=adm+sgr, -- -+# S2 7 Screen colour -+# U green on black -+# D black on green - # --# lines 24 columns 80 vb -+# S2 8 DSR status (pin 6) -+# U disconnected -+# D connected - # --wy325-vb|wyse325-vb|wyse-325 with visual bell, -- bel@, use=wy325, -- -+# S2 9 DCD status (pin 8) -+# U disconnected -+# D duplex - # --# lines 24 columns 132 -+# S2 10 DTR status (pin 20) -+# U disconnected -+# D duplex -+# (tvi910: removed obsolete ":ma=^Kk^Ll^R^L:"; added <khome>, <cub1>, <cud1>, -+# <ind>, <hpa>, <vpa>, <am>, <msgr> from SCO entry -- esr) -+tvi910|televideo model 910, -+ OTbs, am, msgr, -+ cols#80, it#8, lines#24, xmc#1, -+ bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EY, el=\ET, -+ home=\E=\001\001, hpa=\E]%p1%{32}%+%c, ht=^I, -+ if=/usr/share/tabset/stdcrt, ind=^J, invis@, kbs=^H, -+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^AI\r, kf1=^A@\r, -+ kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -+ kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -+ vpa=\E[%p1%{32}%+%c, use=adm+sgr, -+# From: Alan R. Rogers <rogers%albany@csnet-relay> -+# as subsequently hacked over by someone at SCO -+# (tvi910+: removed obsolete ":ma=^K^P^L :" -- esr) - # --wy325-w|wyse325-w|wy325w-24|wyse-325 in wide mode, -- cols#132, lw#7, nlab#16, wsl#97, -- cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<12>, ip=$<4>, -- rs2=\E`;$<70>, use=wy325, -+# Here are the 910+'s DIP switches (U = up, D = down, X = don't care): - # --# lines 25 columns 80 -+# S1 1 2 3 4: -+# D D D D 9600 D D D U 50 D D U D 75 D D U U 110 -+# D U D D 135 D U D U 150 D U U D 300 D U U U 600 -+# U D D D 1200 U D D U 1800 U D U D 2400 U D U U 3600 -+# U U D D 4800 U U D U 7200 U U U D 9600 U U U U 19200 - # --wy325-25|wyse325-25|wy325-80|wyse-325|wyse-325 25 lines, -- lh@, lines#25, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<100>, use=wy325, -+# S1 5 6 7 8: -+# U D X D 7N1 U D X U 7N2 U U D D 7O1 U U D U 7O2 -+# U U U D 7E1 U U U U 7E2 D D X D 8N1 D D X U 8N2 -+# D U D D 8O1 D U U U 8E2 - # --# lines 25 columns 132 -+# S1 9 Autowrap (U = on, D = off) -+# S1 10 CR/LF (U = CR/LF on CR received, D = CR on CR received) -+# S2 1 Mode (U = block, D = conversational) -+# S2 2 Duplex (U = half, D = full) -+# S2 3 Hertz (U = 50, D = 60) -+# S2 4 Edit mode (U = local, D = duplex) -+# S2 5 Cursor type (U = underline, D = block) -+# S2 6 Cursor down key (U = send ^J, D = send ^V) -+# S2 7 Screen colour (U = green on black, D = black on green) -+# S2 8 DSR status (pin 6) (U = disconnected, D = connected) -+# S2 9 DCD status (pin 8) (U = disconnected, D = connected) -+# S2 10 DTR status (pin 20) (U = disconnected, D = connected) - # --wy325-25w|wyse325-25w|wy325 132 columns, -- lh@, lines#25, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<100>, use=wy325-w, -+tvi910+|televideo 910+, -+ dch1=\EW, dl1=\ER$<33*>, home=^^, ich1=\EQ, il1=\EE$<33*>, -+ kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, -+ kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, -+ ll=\E=7\s, use=tvi910, -+ -+# (tvi912: removed obsolete ":ma=^K^P^L :", added <flash> and -+# <khome> from BRL entry -- esr) -+tvi912|tvi914|tvi920|old televideo 912/914/920, -+ OTbs, OTpt, am, msgr, -+ cols#80, it#8, lines#24, xmc#1, -+ bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER$<33*>, ed=\Ey, el=\ET, flash=\Eb$<50/>\Ed, home=^^, -+ ht=^I, hts=\E1, ich1=\EQ, if=/usr/share/tabset/stdcrt, -+ il1=\EE$<33*>, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, -+ kcuu1=^K, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, -+ kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, -+ kf9=^AH\r, khome=^^, rmso=\Ek, rmul=\Em, smso=\Ej, smul=\El, -+ tbc=\E3, -+# We got some new tvi912c terminals that act really weird on the regular -+# termcap, so one of our gurus worked this up. Seems that cursor -+# addressing is broken. -+tvi912cc|tvi912 at cowell college, -+ cup@, use=tvi912c, -+ -+# tvi{912,920}[bc] - TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C -+# From: Benjamin C. W. Sittler - # --# lines 25 columns 132 vb -+# Someone has put a scanned copy of the manual online at: -+# http://vt100.net/televideo/912b-om/ - # --wy325-w-vb|wy325-wvb|wyse325-wvb|wyse-325 wide mode reverse video, -- bel@, use=wy325-w, -- --# --# lines 42 columns 80 -+# These terminals were produced ca. 1979, and had a 12" monochrome -+# screen, supported 75-9600 baud (no handshaking), monochrome, 7-bit -+# ASCII, and were generally similar to adm3a but with attributes -+# (including some with magic cookies), fancy half-duplex mode, and -+# different bugs. - # --wy325-42|wyse325-42|wyse-325 42 lines, -- lh@, lines#42, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<100>, use=wy325, -+# Some operations reqire truly incredible amounts of padding. The -+# insert_line (<il1>) and delete_line (<dl1>) operations in particular -+# are so slow as to be nearly unusable. - # --# lines 42 columns 132 -+# There may or may not have been a separate, earlier series of 912/920 -+# terminals (without the "B" and "C" suffix); I have never seen one, -+# and the manual only describes the "B" and "C" series. The 912 and 920 -+# are quite distinct from the 914 and 924, which were much nicer non- -+# magic-cookie terminals similar to the 950. - # --wy325-42w|wyse325-42w|wyse-325 42 lines wide mode, -- lh@, lines#42, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<100>, use=wy325-w, -+# This is a new description for the following TeleVideo terminals, -+# distinguished chiefly by their keyboards: - # --# lines 42 columns 132 vb -+# TVI-912B - very odd layout, no function keys (84 keys) -+# TVI-920B - typewriter layout, no function keys (103 keys) -+# TVI-912C - very odd layout, function keys F1-F11 (82 keys) -+# TVI-920C - typewriter layout, function keys F1-F11 (101 keys) - # --wy325-42w-vb|wy325-42wvb|wyse-325 42 lines wide mode visual bell, -- bel@, use=wy325-w, -+# To choose a setting for the TERM variable, start with the model: - # --# lines 43 columns 80 -+# Model || base name -+# ----------||----------- -+# TVI-912B || tvi912b -+# TVI-912C || tvi912c -+# TVI-920B || tvi920b -+# TVI-920C || tvi920c - # --wy325-43|wyse325-43|wyse-325 43 lines, -- lh@, lines#43, lw@, nlab@, -- pln@, use=wy325, -+# Then add a suffix from the following table describing installed options -+# and how you'd like to use the terminal: - # --# lines 43 columns 132 -+# Use Video | Second | Visual | Magic | Page || feature -+# Attributes | Page | Bell | Cookies | Print || suffix -+# ------------|--------|--------|---------|-------||--------- -+# No | No | N/A | N/A | No || -unk -+# No | No | N/A | N/A | Yes || -p -+# No | Yes | No | N/A | No || -2p-unk -+# No | Yes | No | N/A | Yes || -2p-p -+# No | Yes | Yes | N/A | No || -vb-unk -+# No | Yes | Yes | N/A | Yes || -vb-p -+# Yes | No | N/A | No | N/A || -+# Yes | No | N/A | Yes | N/A || -mc -+# Yes | Yes | No | No | N/A || -2p -+# Yes | Yes | No | Yes | N/A || -2p-mc -+# Yes | Yes | Yes | No | N/A || -vb -+# Yes | Yes | Yes | Yes | N/A || -vb-mc - # --wy325-43w|wyse325-43w|wyse-325 43 lines wide mode, -- lh@, lines#43, lw@, nlab@, -- pln@, rs3=\EwG\Ee)$<100>, use=wy325-w, -+# So e.g. a model 920 C with second page memory option, visual bell -+# and no magic cookies would be tvi920c-vb; a model 912 B without the -+# second page memory option and using magic cookies would be -+# tvi912b-mc - # --# lines 43 columns 132 vb -+# PADDING - # --wy325-43w-vb|wy325-43wvb|wyse-325 43 lines wide mode visual bell, -- bel@, use=wy325-w, -- --# Wyse 370 -- 24 line screen with status line. -+# At 9600 baud, the terminal is prone to overflow its input buffer -+# during complex operations (insert/delete -+# character/line/screen/page), and it does not signal this over the -+# RS232 cable. The typical symptom of an overrun is that the terminal -+# starts beeping, and output becomes garbled. - # --# The terminal may have to be set for 8 data bits and 2 stop --# bits for the arrow keys to work. -+# The padding delays in this terminfo were derived using tack(1) -+# running on a Linux box connected to a TVI-920C with a later-model -+# (A49C1-style) ROM running at 9600 baud, so your mileage may -+# vary. The numbers below seem to give the terminal enough time so -+# that it doesn't overflow its input buffer and start losing -+# characters. - # --# If you change keyboards the terminal will send different --# escape sequences. --# The following definition is for the basic terminal without --# function keys. -+# KEYS - # --# <u0> -> enter Tektronix 4010/4014 mode --# <u1> -> exit Tektronix 4010/4014 mode --# <u2> -> enter ASCII mode (from any ANSI mode) --# <u3> -> exit ASCII mode (goto native ANSI mode) --# <u4> -> enter Tek 4207 ANSI mode (from any ANSI mode) --# <u5> -> exit Tek 4207 mode (goto native ANSI mode) -+# If you want to use the FUNCT key on a tvi912[bc], use the -+# corresponding tvi920[bc] terminfo with FUNCT + ... equivalents from -+# the following table (these also work on the 920 series): - # --# Bug: The <op> capability resets attributes. --wy370-nk|wyse 370 without function keys, -- am, ccc, hs, mc5i, mir, msgr, xenl, xon, -- colors#64, cols#80, it#8, lines#24, ncv#48, pairs#64, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<1*>, dch1=\E[P$<1>, -- dclk=\E[31h, dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, -- dsl=\E[40l, ech=\E[%p1%dX$<.1*>, ed=\E[J$<40>, -- el=\E[K$<10>, el1=\E[1K$<12>, enacs=\E)0, -- flash=\E[30h\E\,\E[30l$<300>, fsl=\E[1;24r\E8, -- home=\E[H, hpa=\E[%i%p1%d`, ht=\011$<1>, hts=\EH, -- ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>, -- ind=\n$<2>, -- initc=\E[66;%p1%d;%?%p2%{250}%<%t%{0}%e%p2%{500}%<%t%{16}%e%p2%{750}%<%t%{32}%e%{48}%;%?%p3%{250}%<%t%{0}%e%p3%{500}%<%t%{4}%e%p3%{750}%<%t%{8}%e%{12}%;%?%p4%{250}%<%t%{0}%e%p4%{500}%<%t%{1}%e%p4%{750}%<%t%{2}%e%{3}%;%{1}%+%+%+%dw, -- invis=\E[8m, ip=$<1>, is1=\E[90;1"p\E[?5W$<6>, -- is2=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h, -- is3=\E>\017\E)0\E(B\E[63;0w\E[m, mc0=\E[0i, mc4=\E[4i, -- mc5=\E[5i, -- oc=\E[60w\E[63;0w\E[66;1;4w\E[66;2;13w\E[66;3;16w\E[66;4;49w\E[66;5;51w\E[66;6;61w\E[66;7;64w, -- op=\E[m, rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O, -- rmam=\E[?7l, rmclk=\E[31l, rmcup=\E[ R, rmir=\E[4l, -- rmkx=\E>, rmso=\E[27m, rmul=\E[24m, -- rs1=\E[13l\E[3l\E!p\E[?4i, rs2=\E[35h\E[?3l$<8>, -- rs3=\E[?5l, sc=\E7, setb=\E[62;%p1%dw, setf=\E[61;%p1%dw, -- sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[ Q, -- smir=\E[4h, smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, tsl=\E[40l\E[40h\E7\E[99;%i%p1%dH, -- u0=\E[?38h\E8, u1=\E[?38l\E)0, u2=\E[92;52"p, u3=\E~B, -- u4=\E[92;76"p, u5=\E%!1\E[90;1"p, vpa=\E[%i%p1%dd, -+# Unshifted Function Keys: - # --# Function key set for the ASCII (wy-50 compatible) keyboard --# This is the default 370. -+# Key | capname|| Equivalent -+# -----|--------||------------ -+# F1 | <kf1> || FUNCT + @ -+# F2 | <kf2> || FUNCT + A -+# F3 | <kf3> || FUNCT + B -+# F4 | <kf4> || FUNCT + C -+# F5 | <kf5> || FUNCT + D -+# F6 | <kf6> || FUNCT + E -+# F7 | <kf7> || FUNCT + F -+# F8 | <kf8> || FUNCT + G -+# F9 | <kf9> || FUNCT + H -+# F10 | <kf10> || FUNCT + I -+# F11 | <kf11> || FUNCT + J - # --wy370|wyse370|wy370-101k|Wyse 370 with 101 key keyboard, -- kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kdch1=\EOQ, kdl1=\EOQ, kent=\EOM, kf1=\E[?4i, -- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf2=\E[?3i, -- kf3=\E[2i, kf4=\E[@, kf5=\E[M, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, khome=\E[H, kich1=\EOP, kil1=\EOP, -- knp=\E[U, kpp=\E[V, use=wy370-nk, -+# Shifted Function Keys: - # --# Function key set for the VT-320 (and wy85) compatible keyboard -+# SHIFT + Key | capname|| Equivalent -+# -------------|--------||------------ -+# SHIFT + F1 | <kf12> || FUNCT + ` -+# SHIFT + F2 | <kf13> || FUNCT + a -+# SHIFT + F3 | <kf14> || FUNCT + b -+# SHIFT + F4 | <kf15> || FUNCT + c -+# SHIFT + F5 | <kf16> || FUNCT + d -+# SHIFT + F6 | <kf17> || FUNCT + e -+# SHIFT + F7 | <kf18> || FUNCT + f -+# SHIFT + F8 | <kf19> || FUNCT + g -+# SHIFT + F9 | <kf20> || FUNCT + h -+# SHIFT + F10 | <kf21> || FUNCT + i -+# SHIFT + F11 | <kf22> || FUNCT + j - # --wy370-105k|Wyse 370 with 105 key keyboard, -- kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[3~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -- kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, -- kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~, -- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, -- khlp=\E[28~, khome=\E[26~, kich1=\E[2~, knp=\E[6~, -- kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, -- use=wy370-nk, use=vt220+keypad, -+# PORTS AND SWITCH SETTINGS - # --# Function key set for the PC compatible keyboard -+# Here are the switch settings for the TVI-912B/TVI-920B and -+# TVI-912C/TVI-920C: - # --wy370-EPC|Wyse 370 with 102 key keyboard, -- kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kend=\E[1~, kent=\EOM, kf1=\EOP, kf10=\E[21~, -- kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -- kf5=\E[M, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[H, kich1=\E[2~, knp=\E[U, kpp=\E[V, use=wy370-nk, -+# S1 (Line), and S3 (Printer) baud rates -- put one, and only one, switch down: -+# 2: 9600 3: 4800 4: 2400 5: 1200 -+# 6: 600 7: 300 8: 150 9: 75 -+# 10: 110 - # --# Wyse 370 with visual bell. --wy370-vb|Wyse 370 with visible bell, -- bel@, use=wy370, -+# S2 UART/Terminal options: -+# Up Down -+# 1: Not used Not allowed -+# 2: Alternate character set Standard character set -+# 3: Full duplex Half duplex -+# 4: 50 Hz refresh 60 Hz refresh -+# 5: No parity Send parity -+# 6: 2 stop bits 1 stop bit -+# 7: 8 data bits 7 data bits -+# 8: Not used Not allowed on Rev E or lower -+# 9: Even parity Odd parity -+# 10: Steady cursor Blinking cursor -+# (On Rev E or lower, use W25 instead of switch 10.) - # --# Wyse 370 in 132-column mode. --wy370-w|Wyse 370 in 132-column mode, -- cols#132, wsl#132, -- rs2=\E[35h\E[?3h$<70>, use=wy370, -+# S5 UART/Terminal options: -+# Open Closed -+# 1: P3-6 Not connected DSR received on P3-6 -+# 2: P3-8 Not connected DCD received on P3-8 - # --# Wyse 370 in 132-column mode with visual bell. --wy370-wvb|Wyse 370 with visible bell 132-columns, -- flash=\E[30h\E\,\E[30l$<300>, use=wy370-w, --wy370-rv|Wyse 370 reverse video, -- rs3=\E[32h\E[?5h, use=wy370, -+# 3 Open, 4 Open: P3-20 Not connected -+# 3 Open, 4 Closed: DTR on when terminal is on -+# 3 Closed, 4 Open: DTR is connected to RTS -+# 3 Closed, 4 Closed: Not allowed - # --# Wyse 99gt Tektronix 4010/4014 emulator, -+# 5 Closed: HDX printer (hardware control) Rev. K with extension port off, -+# all data transmitted out of the modem port (P3) will also be -+# transmitted out of the printer port (P4). - # --wy99gt-tek|Wyse 99gt Tektronix 4010/4014 emulator, -- am, os, -- cols#74, lines#35, -- bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, -- cup=\035%{3040}%{89}%p1%*%-%Py%p2%{55}%*%Px%gy%{128}%/%{31}%&%{32}%+%c%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c%gy%{004}%/%{31}%&%{96}%+%c%gx%{128}%/%{31}%&%{32}%+%c%gx%{004}%/%{31}%&%{64}%+%c\037, -- cuu1=^K, ff=^L, -- hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037, -- home=^]7`x @\037, -- hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037, -- is2=\E8, nel=^M^J, u0=\E~>\E8, u1=\E[42h, -+# 6 Open, 7 Open: Not allowed -+# 6 Open, 7 Closed: 20ma current loop input -+# 6 Closed, 7 Open: RS232 input -+# 6 Closed, 7 Closed: Not allowed - # --# Wyse 160 Tektronix 4010/4014 emulator, -+# Jumper options: -+# If the jumper is installed, the effect will occur (the next time the terminal -+# is switched on). - # --wy160-tek|Wyse 160 Tektronix 4010/4014 emulator, -- cup=\035%{3103}%{91}%p1%*%-%Py%p2%{55}%*%Px%gy%{128}%/%{31}%&%{32}%+%c%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c%gy%{004}%/%{31}%&%{96}%+%c%gx%{128}%/%{31}%&%{32}%+%c%gx%{004}%/%{31}%&%{64}%+%c\037, -- home=^]8`g @\037, use=wy99gt-tek, --# --# Wyse 370 Tektronix 4010/4014 emulator, --# --wy370-tek|Wyse 370 Tektronix 4010/4014 emulator, -- am, os, -- cols#80, lines#36, -- bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, -- cup=\035%{775}%{108}%p1%*%{5}%/%-%Py%p2%{64}%*%{4}%+%{5}%/%Px%gy%{32}%/%{31}%&%{32}%+%c%gy%{31}%&%{96}%+%c%gx%{32}%/%{31}%&%{32}%+%c%gx%{31}%&%{64}%+%c\037, -- cuu1=^K, ff=^L, -- hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037, -- home=^]8g @\037, -- hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037, -- is2=\E8, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^I, kcuu1=^K, -- nel=^M^J, u0=\E[?38h\E8, u1=\E[?38l\E)0, -- --# Vendor-supplied Wyse entries end here. -- --# --#TITLE: TERMINFO ENTRY WY520 --#DATE: 8/5/93 --# The WY520 terminfo is based on the WY285 entry published on the WYSE --# BBS with the addition of more function keys and special keys. --# --# rs1 -> set personality --# rs2 -> set number of columns --# rs3 -> set number of lines --# is1 -> select the proper font --# is2 -> do the initialization --# is3 -> If this string is empty then rs3 gets sent. --# --# Wyse 520 emulating a vt420 7 bit mode with default ANSI keyboard --# - The BS key is programmed to generate BS in smcup since --# is2 doesn't seem to work. --# - Remove and shift/Remove: delete a character --# - Insert : enter insert mode --# - Find : delete to end of file --# - Select : clear a line --# - F11, F12, F13: send default sequences (not ESC, BS, LF) --# - F14 : Home key --# - Bottom status line (host writable line) is used. --# - smkx,rmkx are removed because this would put the numeric --# keypad in Dec application mode which doesn't seem to work --# with SCO applications. --# --wy520|wyse520|wyse 520, -- am, hs, km, mc5i, mir, xenl, xon, -- cols#80, it#8, lines#24, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr$<20>, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<3>, dch1=\E[P$<30>, -- dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, dsl=\E[0$~, -- ech=\E[%p1%dX, ed=\E[J$<40>, el=\E[K, el1=\E[1K, -- enacs=\E)0, fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%d`, ht=^I, -- hts=\EH, ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>, -- il1=\E[L$<3>, ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W, -- is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h, -- is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, ked=\E[1~, -- kel=\E[4~, kent=\EOM, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -- kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, -- kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, -- kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1, -- lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, -- rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, -- rmcup=\E[ R, rmir=\E[4l, rmso=\E[m, rmul=\E[24m, -- rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p, rs2=\E[35h\E[?3l, -- rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7, -- sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, -- smcup=\E[ Q\E[?67;8h, smir=\E[4h, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, tsl=\E[2$~\E[1$}\E[%i%p1%d`, -- vpa=\E[%i%p1%dd, use=vt220+keypad, --# --# Wyse 520 with 24 data lines and status (terminal status) --wy520-24|wyse520-24|wyse 520 with 24 data lines, -- hs@, -- dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@, -- use=wy520, --# --# Wyse 520 with visual bell. --wy520-vb|wyse520-vb|wyse 520 with visible bell, -- flash=\E[30h\E\,\E[30l$<100>, use=wy520, --# --# Wyse 520 in 132-column mode. --wy520-w|wyse520-w|wyse 520 in 132-column mode, -- cols#132, wsl#132, -- dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>, -- ip=$<7>, rs2=\E[35h\E[?3h, use=wy520, -+# S4/W31: Enables automatic LF upon receipt of CR from -+# remote or keyboard. -+# S4/W32: Enables transmission of EOT at the end of Send. If not -+# installed, a carriage return is sent. -+# S4/W33: Disables automatic carriage return in column 80. -+# S4/W34: Selects Page Print Mode as initial condition. If not -+# installed, Extension Mode is selected. - # --# Wyse 520 in 132-column mode with visual bell. --wy520-wvb|wyse520-wvb|wyse 520 with visible bell 132-columns, -- flash=\E[30h\E\,\E[30l$<100>, use=wy520-w, -+# NON-STANDARD CAPABILITIES - # -+# Sending <u9> or <u7> returns a cursor position report in the format -+# YX\r, where Y and X are as in <cup>. This format is described in -+# <u8> and <u6>, but it's not clear how one should write an -+# appropriate scanf string, since we need to subtract %' ' from the -+# character after reading it. The <u9> capability is used by tack(1) -+# to synchronize during padding tests, and seems to work for that -+# purpose. - # --# Wyse 520 emulating a vt420 7 bit mode. --# The DEL key is programmed to generate BS in is2. --# With EPC keyboard. --# - 'End' key will clear till end of line on EPC keyboard --# - Shift/End : ignored. --# - Insert : enter insert mode. --# - Delete : delete a character (have to change interrupt character --# to CTRL-C: stty intr '^c') for it to work since the --# Delete key sends 7FH. --wy520-epc|wyse520-epc|wyse 520 with EPC keyboard, -- kdch1=\177, kel=\E[4~, kend=\E[4~, kf0=\E[21~, kf1=\E[11~, -- kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, khome=\E[H, -- use=wy520, -+# This description also includes the obsolete termcap capabilities -+# has_hardware_tabs (<OTpt>) and backspaces_with_bs (<OTbs>). - # --# Wyse 520 with 24 data lines and status (terminal status) --# with EPC keyboard. --wy520-epc-24|wyse520-pc-24|wyse 520 with 24 data lines and EPC keyboard, -- hs@, -- dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@, -- use=wy520-epc, -+# FEATURES NOT YET DESCRIBED IN THIS TERMINFO - # --# Wyse 520 with visual bell. --wy520-epc-vb|wyse520-pc-vb|wyse 520 with visible bell and EPC keyboard, -- flash=\E[30h\E\,\E[30l$<100>, use=wy520-epc, -+# The FUNCT modifier actually works with every normal key by sending -+# ^AX\r, where X is the sequence normally sent by that key. This is a -+# sort of meta key not currently describable in terminfo. - # --# Wyse 520 in 132-column mode. --wy520-epc-w|wyse520-epc-w|wyse 520 in 132-column mode with EPC keyboard, -- cols#132, wsl#132, -- dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>, -- ip=$<7>, rs2=\E[35h\E[?3h, use=wy520-epc, -+# There are quite a few other keys (especially on the 920 models,) but -+# they are for the most part only useful in block mode. - # --# Wyse 520 in 132-column mode with visual bell. --wy520-epc-wvb|wyse520-p-wvb|wyse 520 with visible bell 132-columns and EPC keyboard, -- flash=\E[30h\E\,\E[30l$<100>, use=wy520-epc-w, -+# These terminals have lots of forms manipulation features, mainly -+# useful in block mode, including "clear X to nulls" (vs. "clear X to -+# spaces"; nulls are sentinels for "send X" operations); "send X" -+# operations for uploading all or part of the screen; and block-mode -+# editing keys (they don't send escape sequences, but manipulate video -+# memory directly). Block mode is used for local editing, and protect -+# mode (in conjunction with the "write protect" attribute, -+# a.k.a. half-intensity outside of protect mode) is used to control -+# which parts of the screen are edited/sent/printed (by <mc0>). - # --# Wyse 520 in 80-column, 36 lines --wy520-36|wyse520-36|wyse 520 with 36 data lines, -- hs@, -- lines#36, -- dsl@, fsl@, rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r, tsl@, -- use=wy520, -+# There are at least two major families of ROM, "early" and -+# A49B1/A49C1; the major difference seems to be that the latter ROMs -+# support a few extra escape sequences for manipulating the off-screen -+# memory page, and for sending whole pages back to the host (mainly -+# useful in block mode.) The descriptions in this file don't use any -+# of those sequences: set cursor position including page (\E-PYX, -+# where P is \s for page 0 and ! for page 1 [actually only the LSB of -+# P is taken into account, so e.g. 0 and 1 work too,] and Y and X are -+# as in <cup>); read cursor position (\E/), which is analogous to <u9> -+# and returns PYX\r, where P is \s for page 0 or ! for page 1, and YX -+# are as in <cup>, and some "send page" features mainly useful for -+# forms manipulation. - # --# Wyse 520 in 80-column, 48 lines --wy520-48|wyse520-48|wyse 520 with 48 data lines, -- hs@, -- lines#48, -- dsl@, fsl@, rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r, tsl@, -- use=wy520, -+# The keyboard enable (\E") and disable (\E#) sequences are unused, -+# except that a terminal reset (<is2>) enables the keyboard. - # --# Wyse 520 in 132-column, 36 lines --wy520-36w|wyse520-36w|wyse 520 with 132 columns and 36 data lines, -- cols#132, wsl#132, -- rs2=\E[?3h, -- rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|, -- use=wy520-36, -+# Auto-flip mode (\Ev) is likely faster than the scrolling mode (\Ew) -+# enabled in <is2>, but auto-flip is very jarring so we don't use it. - # --# Wyse 520 in 132-column, 48 lines --wy520-48w|wyse520-48w|wyse 520 with 48 data lines, -- cols#132, wsl#132, -- rs2=\E[?3h, -- rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|, -- use=wy520-48, -+# BUGS - # -+# At least up to the A49B1 and A49C1 ROMs, there are no \Eb and \Ed -+# sequences (I infer that in some TeleVideo terminal they may invert -+# and uninvert the display) so the <flash> sequence given here is a -+# cheesy page-flip instead. - # --# Wyse 520 in 80-column, 36 lines with EPC keyboard --wy520-36pc|wyse520-36pc|wyse 520 with 36 data lines and EPC keyboard, -- hs@, -- lines#36, -- dsl@, fsl@, rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r, tsl@, -- use=wy520-epc, -+# The back_tab (<cbt>) sequence (\EI) doesn't work according to -+# tack(1), so it is not included in the descriptions below. - # --# Wyse 520 in 80-column, 48 lines with EPC keyboard --wy520-48pc|wyse520-48pc|wyse 520 with 48 data lines and EPC keyboard, -- hs@, -- lines#48, -- dsl@, fsl@, rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r, tsl@, -- use=wy520-epc, -+# It's not clear whether auto_left_margin (<bw>) flag should be set -+# for these terminals; tack says yes, so it is set here, but this -+# differs from other descriptions I've seen. - # --# Wyse 520 in 132-column, 36 lines with EPC keyboard --wy520-36wpc|wyse520-36wpc|wyse 520 with 36 data lines and EPC keyboard, -- cols#132, wsl#132, -- rs2=\E[?3h, -- rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|, -- use=wy520-36pc, -+# Extension print mode (<mc5>) echoes all characters to the printer -+# port [in addition to displaying them] except for the page print mode -+# sequence (<mc4>); this is a slight violation of the terminfo -+# definition for <mc5> but I don't expect it to cause problems. We -+# reset to page print mode in <rs1> since it may have been enabled -+# accidentally. - # --# Wyse 520 in 132-column, 48 lines with EPC keyboard --wy520-48wpc|wyse520-48wpc|wyse 520 with 48 data lines and EPC keyboard, -- cols#132, wsl#132, -- rs2=\E[?3h, -- rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|, -- use=wy520-48pc, -+# The descriptions with plus signs (+) are building blocks. - --# From: John Gilmore <hoptoad!gnu@lll-crg.arpa> --# (wyse-vp: removed <if=/usr/share/tabset/wyse-adds>, there's no such --# file and we don't know what <hts> is -- esr) --wyse-vp|Wyse 50 in ADDS Viewpoint emulation mode with "enhance" on, -- OTbs, am, -+tvi912b-unk|tvi912c-unk|TeleVideo TVI-912B or TVI-912C (no attributes), -+ OTbs, OTpt, am, bw, - cols#80, it#8, lines#24, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^F, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dch1=\EW, -- dl1=\El, ed=\Ek, el=\EK, home=^A, ht=^I, il1=\EM, ind=^J, -- is2=\E`\:\E`9\017\Er, kbs=^H, kcub1=^U, kcud1=^J, kcuf1=^F, -- kcuu1=^Z, khome=^A, ll=^A^Z, nel=^M^J, rmir=\Er, rmso=^O, -- rmul=^O, rs1=\E`\:\E`9\017\Er, sgr0=^O, smir=\Eq, smso=^N, -- smul=^N, -- --wy75ap|wyse75ap|wy-75ap|wyse-75ap|Wyse WY-75 Applications and Cursor keypad, -- is2=\E[1;24r\E[?10;3l\E[?1;25h\E[4l\E[m\E(B\E=, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- khome=\EOH, rmkx=\E[?1l\E>$<10/>, smkx=\E[?1h\E=$<10/>, -- use=wy75, -+ bel=^G, clear=\032$<50>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%' '%+%c%p2%' '%+%c, cuu1=^K, dch1=\EW$<30>, -+ dl1=\ER$<1*>$<100>, ed=\Ey$<2*>$<10>, el=\ET$<15>, -+ home=^^, ht=^I, hts=\E1, ich1=\EQ$<30>, -+ if=/usr/share/tabset/stdcrt, il1=\EE$<1*>$<100>, -+ ind=\n$<10>, is2=\Ew\EA\E'\E"\E(, kcub1=^H, kcud1=^J, -+ kcuf1=^L, kcuu1=^K, kdch1=\177, kent=^M, khome=^^, mc4=\EA, -+ mc5=\E@, rs1=\Ek\010\Em\010\Eq\032, tbc=\E3, u6=%c%c\r, -+ u7=\E?, u8=%c%c\r, u9=\E?, - --# From: Eric Freudenthal <freudent@eric.ultra.nyu.edu> --wy100q|Wyse 100 for Quotron, -- OTbs, -- cols#80, lines#24, xmc#1, -- cbt=\EI, clear=^Z, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\EY, el=\ET, home=^^, il1=\EE, invis@, -- is2=\E`\:\0\EC\EDF\E0\E'\E(\EA21, kcub1=^H, kcud1=^J, -- kcuf1=^L, kcuu1=^K, ri=\Ej, rmir=\Er, smir=\Eq, use=adm+sgr, -+# This isn't included in the basic capabilities because it is -+# typically unusable in combination with the full range of video -+# attributes, since the magic cookie attributes turn into ASCII -+# control characters, and the half-intensity ("protected") attribute -+# converts all affected characters to spaces. - --#### Kermit terminal emulations --# --# Obsolete Kermit versions may be listed in the section describing obsolete --# non-ANSI terminal emulators later in the file. --# -+tvi912b+printer|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C page print support, -+ mc0=\EP, - --# KERMIT standard all versions. --# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi. --# (kermit: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr) --# From: greg small <gts@populi.berkeley.edu> 9-25-84 --kermit|standard kermit, -- OTbs, -- cols#80, lines#24, -- clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, -- el=\EK, home=\EH, is2=K0 Standard Kermit 9-25-84\n, -- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, --kermit-am|standard kermit plus auto-margin, -- am, -- is2=K1 Standard Kermit plus Automatic Margins\n, -- use=kermit, --# IBMPC Kermit 1.2. --# Bugs: <ed>, <el>: do not work except at beginning of line! <clear> does --# not work, but fake with :cl=\EH\EJ (since :cd=\EJ: works at beginning of --# line). --# From: greg small <gts@populi.berkeley.edu> 8-30-84 --pckermit|pckermit12|UCB IBMPC Kermit 1.2, -- am, -- lines#25, -- clear=\EH\EJ, ed@, el@, -- is2=K2 UCB IBMPC Kermit 1.2 8-30-84\n, use=kermit, --# IBMPC Kermit 1.20 --# Cannot use line 25, now acts funny like ansi special scrolling region. --# Initialization must escape from that region by cursor position to line 24. --# Cannot use character insert because 1.20 goes crazy if insert at col 80. --# Does not use :am: because autowrap is lost when kermit dropped and restarted. --# From: greg small <gts@populi.berkeley.edu> 12-19-84 --pckermit120|UCB IBMPC Kermit 1.20, -- it#8, lines#24, -- cud1=\EB, cvvis=\EO\Eq\EEK3, dch1=\EN, dl1=\EM, ht=^I, -- il1=\EL, -- is2=\EO\Eq\EJ\EY7 K3 UCB IBMPC Kermit 1.20 12-19-84\n, -- rmir@, rmso=\Eq, smir@, smso=\Ep, use=kermit, --# MS-DOS Kermit 2.27 for the IBMPC --# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi. --# Cannot use line 25, now acts funny like ansi special scrolling region. --# Initialization must escape from that region by cursor position to line 24. --# Does not use am: because autowrap is lost when kermit dropped and restarted. --# Reverse video for standout like H19. --# (msk227: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr) --# From: greg small <gts@populi.berkeley.edu> 3-17-85 --msk227|mskermit227|MS-DOS Kermit 2.27 for the IBMPC, -- OTbs, am@, -- cols#80, it#8, lines#24, -- clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, -- cvvis=\EO\Eq\EG\EwK4, dch1=\EN, dl1=\EM, ed=\EJ, el=\EK, -- home=\EH, ht=^I, il1=\EL, -- is2=\EO\Eq\EG\Ew\EJ\EY7 K4 MS Kermit 2.27 for the IBMPC 3-17-85\n, -- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, rc=\Ek, -- rmir=\EO, rmso=\Eq, sc=\Ej, smir=\E@, smso=\Ep, --# MS-DOS Kermit 2.27 with automatic margins --# From: greg small <gts@populi.berkeley.edu> 3-17-85 --msk227am|mskermit227am|UCB MS-DOS Kermit 2.27 with automatic margins, -- am, -- cvvis=\EO\Eq\EG\EvK5, -- is2=\EO\Eq\EG\Ev\EJ\EY7 K5 MS Kermit 2.27 +automatic margins 3-17-85\n, -- use=msk227, --# MS-DOS Kermit 2.27 UCB 227.14 for the IBM PC --# Automatic margins now default. Use ansi <sgr> for highlights. --# Define function keys. --# (msk22714: removed obsolete ":kn#10:" -- esr) --# From: greg small <gts@populi.berkeley.edu> 3-17-85 --msk22714|mskermit22714|UCB MS-DOS Kermit 2.27 UCB 227.14 IBM PC, -- am, -- bold=\E[1m, cvvis=\EO\Eq\EG\EvK6, -- is2=\EO\Eq\EG\Ev\EJ\EY7 K6 MS Kermit 2.27 UCB 227.14 IBM PC 3-17-85\n, -- kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3, kf4=\E4, kf5=\E5, kf6=\E6, -- kf7=\E7, kf8=\E8, kf9=\E9, rev=\E[7m, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, smso=\E[1m, smul=\E[4m, use=mskermit227, --# This was designed for a VT320 emulator, but it is probably a good start --# at support for the VT320 itself. --# Please send changes with explanations to bug-gnu-emacs@prep.ai.mit.edu. --# (vt320-k3: I added <rmam>/<smam> based on the init string -- esr) --vt320-k3|MS-Kermit 3.00's vt320 emulation, -- am, eslok, hs, km, mir, msgr, xenl, -- cols#80, it#8, lines#49, pb#9600, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[H\E[J, cmdch=\E, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- dsl=\E[0$~, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -- flash=\E[?5h\E[?5l\E[?5h\E[?5l\E[?5h\E[?5l, -- fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, -- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, -- is2=\E>\E F\E[?1l\E[?7h\E[r\E[2$~, kbs=^H, kcub1=\EOD, -- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdl1=\E[3~, kf0=\E[21~, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, -- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kich1=\E[2~, knp=\E[6~, -- kpp=\E[5~, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, nel=^M^J, rc=\E8, -- rev=\E[7m, ri=\EM, rin=\E[%p1%dL, rmacs=\E(B, rmam=\E[?7l, -- rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, -- rs1=\E(B\E)B\E>\E F\E[4;20l\E[12h\E[?1;5;6;38;42l\E[?7;25h\E[4i\E[?4i\E[m\E[r\E[2$~, -- sc=\E7, sgr0=\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- tsl=\E[1$}\r\E[K, vpa=\E[%i%p1%dd, --# From: Joseph Gil <yogi@cs.ubc.ca> 13 Dec 1991 --# ACS capabilities from Philippe De Muyter <phdm@info.ucl.ac.be> 30 May 1996 --# (I removed a bogus boolean :mo: and added <msgr>, <smam>, <rmam> -- esr) --vt320-k311|dec vt320 series as defined by kermit 3.11, -- am, eslok, hs, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[;H\E[2J, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- dsl=\E[2$~\r\E[1$}\E[K\E[$}, ed=\E[J, el=\E[K, -- flash=\E[?5h\E[?5l, fsl=\E[$}, home=\E[H, ht=^I, hts=\EH, -- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L$<3/>, ind=\ED, -- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, -- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2, -- lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m, -- rf=/usr/share/tabset/vt100, ri=\EM, rmacs=^O, -- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, -- rmul=\E[24m, rs1=\E[?3l, sc=\E7, sgr0=\E[m, smacs=^N, -- smam=\E[?7h, smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, tsl=\E[2$~\E[1$}\E[1;%dH, -+# This uses half-intensity mode (<dim>) for standout (<smso>), and -+# exposes no other attributes (half-intensity is the only attribute -+# that does not generate a magic cookie.) - --######## NON-ANSI TERMINAL EMULATIONS --# -+tvi912b+dim|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C half-intensity attribute support, -+ msgr, -+ dim=\E), rmso=\E(, sgr=\E%?%p1%p5%|%t)%e(%;, sgr0=\E(, -+ smso=\E), - --#### Avatar --# --# These entries attempt to describe Avatar, a terminal emulation used with --# MS-DOS bulletin-board systems. It was designed to give ANSI-like --# capabilities, but with cheaper (shorter) control sequences. Messy design, --# excessively dependent on PC idiosyncracies, but apparently rather popular --# in the BBS world. --# --# No color support. Avatar doesn't fit either of the Tektronix or HP color --# models that terminfo knows about. An Avatar color attribute is the --# low 7 bits of the IBM-PC display-memory attribute. Bletch. --# --# I wrote these entries while looking at the Avatar spec. I don't have --# the facilities to test them. Let me know if they work, or don't. --# --# Avatar escapes not used by these entries (because maybe you're smarter --# and more motivated than I am and can figure out how to wrap terminfo --# around some of them, and because they are weird enough to be funny): --# level 0: --# ^L -- clear window/reset current attribute to default --# ^V^A%p1%c -- set current color attribute, parameter decodes as follows: --# --# bit: 6 5 4 3 2 1 0 --# | | | | | --# +---+---+ | +---+---+ --# | | | --# | | foreground color --# | foreground intensity --# background color --# level 0+: --# ^V^J%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) up by p1 lines --# ^V^K%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) down by p1 lines --# ^V^L%p1%c%p2%c%p3%c -- clear p2 lines and p3 cols w/attr %p1 --# ^V^M%p1%c%p2%c%p3%c%p4%c -- fill p3 lines & p4 cols w/char p2+attr %p1 --# (^V^L and ^V^M set the current attribute as a side-effect.) --# ^V ^Y <a> [...] <c> -- repeat pattern. <a> specifies the number of bytes --# in the pattern, <c> the number of times the pattern --# should be repeated. If either value is 0, no-op. --# The pattern can contain Avatar console codes, --# including other ^V ^Y patterns. --# level 1: --# ^V^O -- clockwise mode on; turn print direction right each time you --# hit a window edge (yes, really). Turned off by CR --# ^V^P -- no-op --# ^V^Q%c -- query the driver --# ^V^R -- driver reset --# ^V^S -- Sound tone (PC-specific) --# ^V^T -- change highlight at current cursor poition to %c --# ^V^U%p1%c%p2%c -- highlight window <a> with attribute <b> --# ^V^V%p1%c%p2%c%p3%c%p4%c%p5%c --# -- define window --# --# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 --# (The <blink>/<bold>/<rev>/<smacs>/<smul>/<smso> capabilities exist only to --# tell ncurses that the corresponding highlights exist; it should use <sgr>, --# which is the only method that will actually work for multiple highlights.) --# --# Update by TD - 2004: half of this was inconsistent. Found documentation --# and repaired most of the damage. sgr0 is probably incorrect, but the --# available documentation gives no clues for a workable string. --avatar0|avatar terminal emulator level 0, -- am, bce, msgr, -- cols#80, it#8, lines#25, -- blink=^V^B, bold=^V^A^P, cr=^M, cub1=^V^E, cud1=^V^D, -- cuf1=^V^F, cup=\026\010%p1%c%p2%c, cuu1=^V^C, el=^V^G, -- ind=^J, invis=^V^A\0, rep=\031%p1%c%p2%c, rev=^V^Ap, -- rmacs@, rs2=^L, -- sgr=%?%p1%p2%|%p3%|%p6%|%p7%|%t\026\001%?%p7%t%{128}%e%{0}%?%p1%t%{112}%|%;%?%p2%t%{1}%|%;%?%p3%t%{112}%|%;%?%p6%t%{16}%|%;%;%c%;%?%p4%t\026\002%;, -- sgr0=^V^A^G, smacs@, smso=^V^Ap, smul=^V^A^A, -- use=klone+acs, --# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 --avatar0+|avatar terminal emulator level 0+, -- dch1=^V^N, rmir=\026\n\0\0\0\0, smir=^V^I, use=avatar0, --# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 --avatar|avatar1|avatar terminal emulator level 1, -- civis=^V'^B, cnorm=^V'^A, cvvis=^V^C, dl1=^V-, il1=^V+, -- rmam=^V", rmir=^V^P, smam=^V$, use=avatar0+, -+# Full magic-cookie attribute support, with half-intensity reverse -+# video for standout. Note that we add a space in the <dim> sequence -+# to give a consistent magic-cookie count. Also note that <sgr> uses -+# backspacing (in the TVI-supported order) to apply all requested -+# attributes with only a single magic cookie. - --#### RBcomm --# --# RBComm is a lean and mean terminal emulator written by the Interrupt List --# maintainer, Ralf Brown. It was fairly popular in the late DOS years (early --# '90s), especially in the BBS world, and still has some loyal users due to --# its very small memory footprint and to a cute macro language. --rbcomm|IBM PC with RBcomm and EMACS keybindings, -- am, bw, mir, msgr, xenl, -- cols#80, it#8, lines#25, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=^L, cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub1=^H, cud1=^C, cuf1=^B, -- cup=\037%p2%{32}%+%c%p1%{32}%+%c, cuu1=^^, dch1=^W, -- dl=\E[%p1%dM, dl1=^Z, ech=\E[%p1%dX, ed=^F5, el=^P^P, ht=^I, -- il=\E[%p1%dL, il1=^K, ind=\ED, invis=\E[8m, -- is2=\017\035\E(B\E)0\E[?7h\E[?3l\E[>8g, kbs=^H, -- kcub1=^B, kcud1=^N, kcuf1=^F, kcuu1=^P, khome=^A, nel=^M\ED, -- rc=\E8, rep=\030%p1%c%p2%c, rev=^R, ri=\EM, rmcup=, rmdc=, -- rmir=^], rmkx=\E>, rmso=^U, rmul=^U, -- rs1=\017\E(B\E)0\025\E[?3l\E[>8g, sc=\E7, sgr0=\E[m, -- smcup=, smdc=, smir=^\, smkx=\E=, smso=^R, smul=^T, --rbcomm-nam|IBM PC with RBcomm without autowrap, -- am@, -- bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J, -- is2=\017\035\E(B\E)0\E[?7l\E[?3l\E[>8g, kbs=^H, -- kcub1=^H, kcud1=^J, nel=^M^J, use=rbcomm, --rbcomm-w|IBM PC with RBcomm in 132 column mode, -- cols#132, -- bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J, -- is2=\017\035\E(B\E)0\E[?7h\E[?3h\E[>8g, kbs=^H, -- kcub1=^H, kcud1=^J, nel=^M^J, use=rbcomm, -- --######## LCD DISPLAYS --# -+tvi912b+mc|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C full magic-cookie attribute support, -+ xmc#1, -+ blink=\E\^, dim=\E)\s, invis=\E_, rev=\Ej, rmso=\E(\Ek, -+ rmul=\Em, -+ sgr=\E%?%p1%p5%|%t)%e(%; \010\E%?%p1%p3%|%tj%ek%;\010\E%?%p2%tl%em%;\010\E%?%p7%t_%e%?%p4%t\^%eq%;%;, -+ sgr0=\E(\Ek\010\Em\010\Eq, smso=\E)\Ej, smul=\El, - --#### Matrix Orbital --# from: Eric Z. Ayers (eric@ale.org) --# --# Matrix Orbital 20x4 LCD display --# Command Character is 0xFE (decimal 254, octal 376) --# --# On this device, cursor addressability isn't possible. The LCD expects: --# 0xfe G <col> <row> --# for cup: %p1 == row and %p2 is column --# --# This line: --# cup=\376G%p2%c%p1%c --# LOOKS like it will work, but sometimes only one of the two numbers is sent. --# See the terminfo (5) manpage commented regarding 'Terminals which use "%c"'. --# --# Alas, there is no cursor upline capability on this display. --# --# These entries add some 'sanity stuff' to the clear function. That is, it --# does a 'clear' and also turns OFF auto scroll, turns ON Auto Line Wrapping, --# and turns off the cursor blinking and stuff like that. --# --# NOTE: calling 'beep' turns on the backlight (bell) --# NOTE: calling 'flash' turns it on and back off (visual bell) --# --MtxOrb|Generic Matrix Orbital LCD display, -- bel=\376B^A, clear=\376X\376C\376R\376K\376T, -- cnorm=\376K\376T, cub1=\376L, cuf1=\376M, -- flash=\376B\001$<200>\376F, home=\376H, --MtxOrb204|20x4 Matrix Orbital LCD display, -- cols#20, lines#4, use=MtxOrb, --MtxOrb162|16x2 Matrix Orbital LCD display, -- cols#16, lines#2, use=MtxOrb, --# The end -+# This uses the second page memory option to save & restore screen -+# contents. If your terminal is missing the option, this description -+# should still work, but that has not been tested. - --######## OLDER TERMINAL TYPES --# --# This section is devoted to older commercial terminal brands that are now --# discontinued, but known to be still in use or represented by emulations. --# -+tvi912b+2p|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option support, -+ flash=\EK$<100>\EK, rmcup=\032$<50>\EK\E=7\s, -+ smcup=\EK\032$<50>\E(\Ek\010\Em\010\Eq\032$<50>, - --#### AT&T (att, tty) --# --# This section also includes Teletype-branded VDTs. --# --# The AT&T/Teletype terminals group was sold to SunRiver Data Systems (now --# Boundless Technologies); for details, see the header comment on the ADDS --# section. --# --# These are AT&T's official terminfo entries. All-caps aliases have been --# removed. --# --att2300|sv80|AT&T 2300 Video Information Terminal 80 column mode, -- am, eo, mir, msgr, xon, -- cols#80, it#8, lines#24, -- bel=^G, clear=\E[H\E[J, cr=^M, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcbt=\E[Z, kclr=\E[J, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, -- kdl1=\E[M, kf1=\E[1r, kf10=\E[10r, kf11=\E[11r, -- kf12=\E[12r, kf13=\E[13r, kf14=\E[14r, kf15=\E[15r, -- kf16=\E[16r, kf2=\E[2r, kf3=\E[3r, kf4=\E[4r, kf5=\E[5r, -- kf6=\E[6r, kf7=\E[7r, kf8=\E[8r, kf9=\E[9r, khome=\E[H, -- kich1=\E[@, kil1=\E[L, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, -- rev=\E[7m, rmir=\E[4l, rmso=\E[m, sgr0=\E[m, smir=\E[4h, -- smso=\E[7m, --att2350|AT&T 2350 Video Information Terminal 80 column mode, -- mc0@, mc4@, mc5@, use=att2300, -+# This simulates flashing by briefly toggling to the other page -+# (kludge!) - --# Must setup RETURN KEY - CR, REC'VD LF - INDEX. --# Seems upward compatible with vt100, plus ins/del line/char. --# On sgr, the protection parameter is ignored. --# No check is made to make sure that only 3 parameters are output. --# standout= reverse + half-intensity = 3 | 5. --# bold= reverse + underline = 2 | 3. --# note that half-bright blinking doesn't look different from normal blinking. --# NOTE:you must program the function keys first, label second! --# (att4410: a BSD entry has been seen with the following capabilities: --# <is2=\E[?6l>, <kf1=\EOc>, <kf2=\EOd>, <kf3=\EOe>, <kf4=\EOg>, --# <kf6=\EOh>, <kf7=\EOi>, <kf8=\EOj>, -- esr) --att5410v1|att4410v1|tty5410v1|AT&T 4410/5410 80 columns - version 1, -- am, hs, mir, msgr, xon, -- cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, -- acsc=++\,\,--..00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[2;7m, clear=\E[H\E[J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dim=\E[2m, -- dl1=\E[M, ed=\E[J, el=\E[K, fsl=\E8, home=\E[H, ht=^I, -- ich1=\E[@, il1=\E[L, ind=^J, invis=\E[8m, is1=\E[?3l\E)0, -- is3=\E[1;03q f1 \EOP\E[2;03q f2 \EOQ\E[3;03q f3 \EOR\E[4;03q f4 \EOS\E[5;03q f5 \EOT\E[6;03q f6 \EOU\E[7;03q f7 \EOV\E[8;03q f8 \EOW, -- kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, -- kf6=\EOU, kf7=\EOV, kf8=\EOW, khome=\E[H, kll=\E[24;1H, -- ll=\E[24H, nel=^M^J, -- pfx=\E[%p1%1d;%p2%l%2.2dq f%p1%1d %p2%s, -- pln=\E[%p1%d;00q%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM, -- rmacs=^O, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, -- sc=\E7, -- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smso=\E[7m, smul=\E[4m, -- tsl=\E7\E[25;%p1%{1}%+%dH, -+tvi912b+vb|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option "visible bell" support, -+ bel=\EK$<100>\EK, use=tvi912b+2p, - --att4410v1-w|att5410v1-w|tty5410v1-w|AT&T 4410/5410 132 columns - version 1, -- cols#132, wsl#132, -- is1=\E[?3h\E)0, rs2=\Ec\E[?3h\E[2;0y, use=att5410v1, -+# Function keys (<kf12> .. <kf22> are shifted <kf1> .. <kf11>) - --att4410|att5410|tty5410|AT&T 4410/5410 80 columns - version 2, -- OTbs, -- pfx=\E[%p1%d;%p2%l%02dq f%p1%d %p2%s, -- use=att5410v1, -+tvi920b+fn|TeleVideo TVI-920B and TVI-920C function key support, -+ kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^A`\r, kf13=^Aa\r, -+ kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r, kf17=^Ae\r, kf18=^Af\r, -+ kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r, kf21=^Ai\r, kf22=^Aj\r, -+ kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -+ kf8=^AG\r, kf9=^AH\r, - --att5410-w|att4410-w|4410-w|tty5410-w|5410-w|AT&T 4410/5410 in 132 column mode, -- cols#132, wsl#132, -- is1=\E[?3h\E)0, rs2=\Ec\E[?3h\E[2;0y, use=att4410, -+# Combinations of the basic building blocks - --# 5410 in terms of a vt100 --# (v5410: added <rmam>/<smam> based on init string -- esr) --v5410|att5410 in terms of a vt100, -- am, mir, msgr, xon, -- cols#80, it#8, lines#24, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -- clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub1=^H, cud1=^J, cuf1=\E[C$<2>, -- cup=\E[%i%p1%d;%p2%dH$<5>, cuu1=\E[A$<2>, dch1=\E[P, -- dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, -- enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ich1=\E[@, -- il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -- kcuu1=\EOA, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, -- rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>, -- rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, -- 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=vt100+fnkeys, -+tvi912b-2p-unk|tvi912c-2p-unk|tvi912b-unk-2p|tvi912c-unk-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes), -+ use=tvi912b+2p, use=tvi912b-unk, - --# --# Teletype Model 5420 -- A souped up 5410, with multiple windows, --# even! the 5420 has three modes: scroll, window or page mode --# this terminfo should work in scroll or window mode, but doesn't --# take advantage of any of the differences between them. --# --# Has memory below (2 lines!) --# 3 pages of memory (plus some spare) --# The 5410 sequences for <cup>, <cvvis>, <dch>, <dl>, <ech>, <flash>, <home>, --# <hpa>, <hts> would work for these, but these work in both scroll and window --# mode... Unset insert character so insert mode works --# <is1> sets 80 column mode, --# <is2> escape sequence: --# 1) turn off all fonts --# 2) function keys off, keyboard lock off, control display off, --# insert mode off, erasure mode off, --# 3) full duplex, monitor mode off, send graphics off, nl on lf off --# 4) reset origin mode --# 5) set line wraparound --# 6) exit erasure mode, positional attribute mode, and erasure extent mode --# 7) clear margins --# 8) program ENTER to transmit ^J, --# We use \212 to program the ^J because a bare ^J will get translated by --# UNIX into a CR/LF. The enter key is needed for AT&T uOMS. --# 1 2 3 4 5 6 7 8 --# <is3> set screen color to black, --# No representation in terminfo for the delete word key: kdw1=\Ed --# Key capabilities assume the power-up send sequence... --# This <rmcup> is not strictly necessary, but it helps maximize --# memory usefulness: <rmcup=\Ez>, --# Alternate sgr0: <sgr0=\E[m\EW^O>, --# Alternate sgr: <sgr=\E[%?%p1%t2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t^N%e^O%;>, --# smkx programs the SYS PF keys to send a set sequence. --# It also sets up labels f1, f2, ..., f8, and sends edit keys. --# This string causes them to send the strings <kf1>-<kf8> --# when pressed in SYS PF mode. --# (att4415: I added <rmam>/<smam> based on the init string -- esr) --att4415|tty5420|att5420|AT&T 4415/5420 80 cols, -- OTbs, db, mir, xon, -- lh#2, lm#78, lw#8, nlab#8, wsl#55, -- cbt=\E[Z, clear=\E[x\E[J, cnorm=\E[11;0j, cub=\E[%p1%dD, -- cud=\E[%p1%dB, cuf=\E[%p1%dC, cup=\E[%i%p1%d;%p2%dx, -- cuu=\E[%p1%dA, cvvis=\E[11;1j, dch=\E[%p1%dP, -- dl=\E[%p1%dM, ech=\E[%p1%ds\E[%p1%dD, -- flash=\E[?5h$<200>\E[?5l, home=\E[x, -- hpa=\E[%p1%{1}%+%dG, hts=\EH, ich=\E[%p1%d@, ich1@, -- il=\E[%p1%dL, indn=\E[%p1%dE, is1=\E[?3l$<100>, -- is2=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[21;1j\212, -- is3=\E[?5l, kbeg=\Et, kcbt=\E[Z, kdch1=\E[P, kdl1=\E[M, -- kel=\E[2K, kend=\Ez, kent=\Eent, kf1=\EOc, kf2=\EOd, -- kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, -- kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U, -- kpp=\E[V, kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, -- lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?2i, mc4=\E[?9i, -- mc5=\E[?4i, mrcup=\E[%i%p1%d;%p2%dt, -- pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s, -- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV, -- rin=\E[%p1%dF, rmam=\E[?7l, rmir=\E[4l, -- rmkx=\E[19;0j\E[21;1j\212, rmln=\E|, -- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smam=\E[?7h, smir=\E[4h, -- smkx=\E[19;1j\E[21;4j\Eent, smln=\E~, tbc=\E[3g, -- tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd, -- use=att4410, -+tvi912b-vb-unk|tvi912c-vb-unk|tvi912b-unk-vb|tvi912c-unk-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes), -+ use=tvi912b+vb, use=tvi912b-unk, - --att4415-w|tty5420-w|att5420-w|AT&T 4415/5420 132 cols, -- cols#132, lm#54, wsl#97, -- is1=\E[?3h$<100>, use=att4415, -+tvi912b-p|tvi912c-p|TeleVideo TVI-912B or TVI-912C (no attributes; page print), -+ use=tvi912b+printer, use=tvi912b-unk, - --att4415-rv|tty5420-rv|att5420-rv|AT&T 4415/5420 80 cols/rv, -- flash=\E[?5l$<200>\E[?5h, is3=\E[?5h, use=att4415, -+tvi912b-2p-p|tvi912c-2p-p|tvi912b-p-2p|tvi912c-p-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes; page print), -+ use=tvi912b+2p, use=tvi912b+printer, use=tvi912b-unk, - --att4415-w-rv|tty5420-w-rv|att5420-w-rv|AT&T 4415/5420 132 cols/rv, -- cols#132, lm#54, wsl#97, -- flash=\E[?5l$<200>\E[?5h, is1=\E[?3h$<100>, is3=\E[?5h, -- use=att4415, -+tvi912b-vb-p|tvi912c-vb-p|tvi912b-p-vb|tvi912c-p-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes; page print), -+ use=tvi912b+vb, use=tvi912b+printer, use=tvi912b-unk, - --# Note that this mode permits programming USER PF KEYS and labels --# However, when you program user pf labels you have to reselect --# user pf keys to make them appear! --att4415+nl|tty5420+nl|att5420+nl|generic AT&T 4415/5420 changes for not changing labels, -- kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, -- pfx=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s, -- pln=\E[%p1%d;0;0;1q%p2%:-16.16s, -+tvi912b-2p|tvi912c-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; half-intensity attribute), -+ use=tvi912b+2p, use=tvi912b+dim, use=tvi912b-unk, - --att4415-nl|tty5420-nl|att5420-nl|AT&T 4415/5420 without changing labels, -- kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, -- use=att4415, -+tvi912b-2p-mc|tvi912c-2p-mc|tvi912b-mc-2p|tvi912c-mc-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; magic cookies), -+ use=tvi912b+2p, use=tvi912b+mc, use=tvi912b-unk, - --att4415-rv-nl|tty5420-rv-nl|att5420-rv-nl|AT&T 4415/5420 reverse video without changing labels, -- kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, -- use=att4415-rv, -+tvi912b-vb|tvi912c-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; half-intensity attribute), -+ use=tvi912b+vb, use=tvi912b+dim, use=tvi912b-unk, - --att4415-w-nl|tty5420-w-nl|att5420-w-nl|AT&T 4415/5420 132 cols without changing labels, -- kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, -- use=att4415-w, -+tvi912b-vb-mc|tvi912c-vb-mc|tvi912b-mc-vb|tvi912c-mc-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; magic cookies), -+ use=tvi912b+vb, use=tvi912b+mc, use=tvi912b-unk, - --att4415-w-rv-n|tty5420-w-rv-n|att5420-w-rv-n|AT&T 4415/5420 132 cols reverse without changing labels, -- kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, -- use=att4415-w-rv, -+tvi912b|tvi912c|TeleVideo TVI-912B or TVI-912C (half-intensity attribute), -+ use=tvi912b+dim, use=tvi912b-unk, - --att5420_2|AT&T 5420 model 2 80 cols, -- am, db, hs, mir, msgr, xon, -- cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, wsl#55, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- blink=\E[5m, cbt=\E[1Z, clear=\EH\EJ, cnorm=\E[11;0j, -- cr=\EG, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[1B, cuf=\E[%p1%dC, cuf1=\E[1C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[1A, -- cvvis=\E[11;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -- dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[0J, -- el=\E[0K, el1=\E[1K, flash=\E[?5h$<200>\E[?5l, fsl=\E8, -- home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, -- ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, -- indn=\E[%p1%dE, invis=\E[8m, -- is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;0j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r, -- kbeg=\Et, kbs=^H, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, -- kel=\E[2K, kend=\Ez, kent=^J, kf1=\EOc, kf2=\EOd, kf3=\EOe, -- kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, khome=\E[H, -- kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U, -- kpp=\E[V, kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, -- lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?;2i, mc4=\E[4i, -- mc5=\E[5i, mrcup=\E[%i%p1%d;%p2%dt, nel=^M^J, -- pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s\E~, -- pln=\E[%p1%d;0;0;0q%p2%:-16.16s\E~, prot=\EV, rc=\E8, -- rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, rmkx=\E[19;0j, -- rmln=\E|, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, -- sc=\E7, -- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smkx=\E[19;1j, smln=\E~, -- smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd, --att5420_2-w|AT&T 5420 model 2 in 132 column mode, -- cols#132, -- is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;1j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r, -- use=att5420_2, -+tvi912b-mc|tvi912c-mc|TeleVideo TVI-912B or TVI-912C (magic cookies), -+ use=tvi912b+mc, use=tvi912b-unk, - --att4418|att5418|AT&T 5418 80 cols, -- am, xon, -- cols#80, lines#24, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, clear=\E[H\E[2J, cr=^M, cub=\E[%p1%dD, -- cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -- cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[1P, dim=\E[2m, -- dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K, home=\E[H, -- ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, ind=^J, -- is1=\E[?3l, is2=\E)0\E?6l\E?5l, kclr=\E[%%, kcub1=\E@, -- kcud1=\EU, kcuf1=\EA, kcuu1=\ES, kent=\E[, kf1=\E[h, -- kf10=\E[m, kf11=\E[n, kf12=\E[o, kf13=\E[H, kf14=\E[I, -- kf15=\E[J, kf18=\E[K, kf19=\E[L, kf2=\E[i, kf20=\E[E, -- kf21=\E[_, kf22=\E[M, kf23=\E[N, kf24=\E[O, kf3=\E[j, -- kf6=\E[k, kf7=\E[l, kf8=\E[f, kf9=\E[w, khome=\Ec, rc=\E8, -- rev=\E[7m, rmacs=^O, rmso=\E[m, rmul=\E[m, sc=\E7, -- sgr0=\E[m\017, smacs=^N, smso=\E[7m, smul=\E[4m, --att4418-w|att5418-w|AT&T 5418 132 cols, -- cols#132, -- is1=\E[?3h, use=att5418, -+tvi920b-unk|tvi920c-unk|TeleVideo TVI-920B or TVI-920C (no attributes), -+ use=tvi920b+fn, use=tvi912b-unk, - --att4420|tty4420|teletype 4420, -- OTbs, da, db, eo, msgr, ul, xon, -- cols#80, lines#24, lm#72, -- bel=^G, clear=\EH\EJ, cr=\EG, cub1=\ED, cud1=\EB, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP, -- dl1=\EM, ed=\EJ, el=\Ez, home=\EH, il1=\EL, ind=\EH\EM\EY7\s, -- kcbt=\EO, kclr=\EJ, kcub1=^H, kcud1=\EB, kcuf1=\EC, -- kcuu1=\EA, kdch1=\EP, kdl1=\EM, kf0=\EU, kf3=\E@, khome=\EH, -- kich1=\E\^, kil1=\EL, kind=\ES, kri=\ET, -- lf0=segment advance, lf3=cursor tab, rmdc@, rmso=\E~, -- rmul=\EZ, smdc@, smso=\E}, smul=\E\\, -+tvi920b-2p-unk|tvi920c-2p-unk|tvi920b-unk-2p|tvi920c-unk-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes), -+ use=tvi920b+fn, use=tvi912b+2p, use=tvi912b-unk, - --# The following is a terminfo entry for the Teletype 4424 --# asynchronous keyboard-display terminal. It supports --# the vi editor. The terminal must be set up as follows, --# --# HIGHLIGHT DEFINITION 3-TONE --# DISPLAY FUNCTION GROUP III --# --# The second entry below provides limited (a la adm3a) --# operation under GROUP II. --# --# This must be used with DISPLAY FUNCTION GROUP I or III --# and HIGHLIGHT DEFINITION 3-TONE --# The terminal has either bold or blink, depending on options --# --# (att4424: commented out <smcup>=\E[1m, we don't need bright locked on -- esr) --att4424|tty4424|teletype 4424, -- OTbs, am, xon, -- cols#80, lines#24, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E3, bold=\E3, cbt=\EO, clear=\E[H\E[2J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\EB, cuf=\E[%p1%dC, cuf1=\EC, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EA, -- dch=\E[%p1%dP, dch1=\EP, dim=\EW, dl=\E[%p1%dM, dl1=\EM, -- ed=\EJ, el=\Ez, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -- ich1=\E\^, il=\E[%p1%dL, il1=\EL, ind=^J, is2=\E[20l\E[?7h, -- kbs=^H, kclr=\EJ, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -- khome=\E[H, nel=\EE, rev=\E}, ri=\ET, rmacs=\E(B, rmso=\E~, -- rmul=\EZ, -- sgr=\E[%?%p1%t7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p6%p4%|%t;5%;%?%p5%t;0%;m, -- sgr0=\EX\E~\EZ\E4\E(B, smacs=\E(0, smso=\E}, smul=\E\\, -- tbc=\EF, -+tvi920b-vb-unk|tvi920c-vb-unk|tvi920b-unk-vb|tvi920c-unk-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes), -+ use=tvi920b+fn, use=tvi912b+vb, use=tvi912b-unk, - --att4424-1|tty4424-1|teletype 4424 in display function group I, -- kclr@, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome@, -- use=att4424, -+tvi920b-p|tvi920c-p|TeleVideo TVI-920B or TVI-920C (no attributes; page print), -+ use=tvi920b+fn, use=tvi912b+printer, use=tvi912b-unk, - --# This entry is not one of AT&T's official ones, it was translated from the --# 4.4BSD termcap file. The highlight strings are different from att4424. --# I have no idea why this is -- older firmware version, maybe? --# The following two lines are the comment originally attached to the entry: --# This entry appears to avoid the top line - I have no idea why. --# From: jwb Wed Mar 31 13:25:09 1982 remote from ihuxp --att4424m|tty4424m|teletype 4424M, -- am, da, db, mir, -- cols#80, it#8, lines#23, -- bel=^G, clear=\E[2;H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%2d;%p2%2dH\E[B, cuu1=\E[A, dch1=\EP, -- dl1=\EM, el=\E[K, ht=^I, ich1=\E\^, il1=\EL, ind=^J, ip=$<2/>, -- is2=\E[m\E[2;24r, kbs=^H, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, -- kf4=\EOS, khome=\E[H, nel=^M^J, ri=\ET, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, smso=\E[7m, smul=\E[4m, -+tvi920b-2p-p|tvi920c-2p-p|tvi920b-p-2p|tvi920c-p-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes; page print), -+ use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+printer, -+ use=tvi912b-unk, - --# The Teletype 5425 is really version 2 of the Teletype 5420. It --# is quite similar, except for some minor differences. No page --# mode, for example, so all of the <cup> sequences used above have --# to change back to what's being used for the 5410. Many of the --# option settings have changed their numbering as well. --# --# This has been tested on a preliminary model. --# --# (att5425: added <rmam>/<smam> based on the init string -- esr) --att5425|tty5425|att4425|AT&T 4425/5425, -- am, da, db, hs, mir, msgr, xenl, xon, -- cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, wsl#55, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, -- clear=\E[H\E[J, cnorm=\E[12;0j, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[12;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -- dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[J, -- el=\E[K, el1=\E[1K, enacs=\E(B\E)0, -- flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, -- hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dE, -- invis=\E[8m, is1=\E<\E[?3l$<100>, -- is2=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[25;1j\212, -- is3=\E[?5l, kbeg=\Et, kbs=^H, kcbt=\E[Z, kclr=\E[J, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, -- kdl1=\E[M, kel=\E[2K, kend=\Ez, kent=\Eent, kf1=\EOc, -- kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, -- kf8=\EOj, khome=\E[H, kich1=\E[4h, kil1=\E[L, kind=\E[T, -- kri=\E[S, ll=\E[24H, mc0=\E[?2i, mc4=\E[?9i, mc5=\E[?4i, -- nel=^M^J, -- pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, -- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV, rc=\E8, -- rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, rmam=\E[?7l, -- rmir=\E[4l, rmkx=\E[21;0j\E[25;1j\212, rmln=\E|, -- rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, sc=\E7, -- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -- smkx=\E[21;1j\E[25;4j\Eent\E~, smln=\E~, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, tsl=\E7\E[25;%p1%{8}%+%dH, -- vpa=\E[%p1%{1}%+%dd, -+tvi920b-vb-p|tvi920c-vb-p|tvi920b-p-vb|tvi920c-p-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes; page print), -+ use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+printer, -+ use=tvi912b-unk, - --att5425-nl|tty5425-nl|att4425-nl|AT&T 4425/5425 80 columns no labels, -- smkx=\E[21;1j\E[25;4j\Eent, use=att4425, -+tvi920b-2p|tvi920c-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; half-intensity attribute), -+ use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+dim, -+ use=tvi912b-unk, - --att5425-w|att4425-w|tty5425-w|teletype 4425/5425 in 132 column mode, -- cols#132, lm#54, wsl#97, -- is1=\E[?3h$<100>, use=tty5425, -+tvi920b-2p-mc|tvi920c-2p-mc|tvi920b-mc-2p|tvi920c-mc-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; magic cookies), -+ use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+mc, -+ use=tvi912b-unk, - --# (att4426: his had bogus capabilities: :ri=\EM:, :ri=\E[1U:. --# I also added <rmam>/<smam> -- esr) --att4426|tty4426|teletype 4426S, -- am, da, db, xon, -- cols#80, lines#24, lm#48, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, bold=\E[5m, clear=\E[H\E[2J\E[1U\E[H\E[2J\E[1V, -- cr=^M, cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\EP, -- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[0K, home=\E[H, -- hpa=\E[%p1%dG, ht=^I, hts=\E1, ich=\E[%p1%d@, ich1=\E\^, -- il=\E[%p1%dL, il1=\EL, ind=^J, indn=\E[%p1%dS, -- is1=\Ec\E[?7h, is2=\E[m\E[1;24r, kbs=^H, kcbt=\EO, -- kclr=\E[2J, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, -- kf7=\EOV, kf8=\EOW, khome=\E[H, kll=\E[24;1H, ll=\E[24H, -- nel=^M^J, rc=\E8, rev=\E[7m, ri=\ET, rin=\E[%p1%dT, -- rmacs=\E(B, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, -- rs2=\Ec\E[?3l\E[2;0y, sc=\E7, sgr0=\E[m\E(B, smacs=\E(0, -- smam=\E[?7h, smso=\E[5m, smul=\E[4m, tbc=\E[3g, -- vpa=\E[%p1%dd, -+tvi920b-vb|tvi920c-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; half-intensity attribute), -+ use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+dim, -+ use=tvi912b-unk, - --# Terminfo entry for the AT&T 510 A Personal Terminal --# Function keys 9 - 16 are available only after the --# screen labeled (soft keys/action blocks) are labeled. Function key --# 9 corresponds to the leftmost touch target on the screen, --# function key 16 corresponds to the rightmost. --# --# This entry is based on one done by Ernie Rice at Summit, NJ and --# changed by Anne Gallup, Skokie, IL, ttrdc!anne --att510a|bct510a|AT&T 510A Personal Terminal, -- am, mir, msgr, xenl, xon, -- cols#80, lh#2, lines#24, lw#7, nlab#8, -- acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, -- civis=\E[11;0|, clear=\E[H\E[J, cnorm=\E[11;3|, cr=^M, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[11;2|, dch=\E[%p1%dP, -- dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, -- el=\E[0K, el1=\E[1K, enacs=\E(B\E)1, ff=^L, home=\E[H, ht=^I, -- hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, is1=\E(B\E)1\E[2l, -- is3=\E[21;1|\212, kLFT=\E[u, kRIT=\E[v, kbs=^H, kcbt=\E[Z, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOm, -- kf10=\EOd, kf11=\EOe, kf12=\EOf, kf13=\EOg, kf14=\EOh, -- kf15=\EOi, kf16=\EOj, kf2=\EOV, kf3=\EOu, kf4=\ENj, kf5=\ENe, -- kf6=\ENf, kf7=\ENh, kf8=\E[H, kf9=\EOc, kind=\E[S, kri=\E[T, -- mc0=\E[0i, mc4=\E[?8i, mc5=\E[?4i, nel=\EE, -- pln=\E[%p1%dp%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM, -- rmacs=^O, rmkx=\E[19;0|, rmso=\E[m, rmul=\E[m, sc=\E7, -- sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smkx=\E[19;1|, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, -+tvi920b-vb-mc|tvi920c-vb-mc|tvi920b-mc-vb|tvi920c-mc-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; magic cookies), -+ use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+mc, -+ use=tvi912b-unk, - --# Terminfo entry for the AT&T 510 D Personal Terminal --# Function keys 9 through 16 are accessed by bringing up the --# system blocks. --# Function key 9 corresponds to the leftmost touch target on the screen, --# function key 16 corresponds to the rightmost. --# --# There are problems with soft key labeling. These are due to --# strangenesses in the native terminal that are impossible to --# describe in a terminfo. --att510d|bct510d|AT&T 510D Personal Terminal, -- am, da, db, mir, msgr, xenl, xon, -- cols#80, lh#2, lines#24, lm#48, lw#7, nlab#8, -- acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, -- clear=\E[H\E[J, cnorm=\E[11;3|, cr=^M, cub=\E[%p1%dD, -- cub1=^H, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -- cuu1=\E[A, cvvis=\E[11;2|, dch=\E[%p1%dP, dch1=\E[P, -- dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K, -- el1=\E[1K, enacs=\E(B\E)1, ff=^L, home=\E[H, -- hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, -- invis=\E[8m, is1=\E(B\E)1\E[5;0|, is3=\E[21;1|\212, -- kLFT=\E[u, kRIT=\E[v, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOm, kf10=\EOd, -- kf11=\EOe, kf12=\EOf, kf13=\EOg, kf14=\EOh, kf15=\EOi, -- kf16=\EOj, kf2=\EOV, kf3=\EOu, kf4=\ENj, kf5=\ENe, kf6=\ENf, -- kf7=\ENh, kf8=\E[H, kf9=\EOc, kind=\E[S, kri=\E[T, ll=\E#2, -- mc0=\E[0i, mc4=\E[?8i, mc5=\E[?4i, mgc=\E\:, nel=\EE, -- pln=\E[%p1%dp%p2%:-16s, rc=\E8, -- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, -- rin=\E[%p1%dT, rmacs=^O, rmir=\E[4l, rmkx=\E[19;0|, -- rmln=\E<, rmso=\E[m, rmul=\E[m, rmxon=\E[29;1|, -- rs2=\E[5;0|, sc=\E7, -- sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smgl=\E4, smgr=\E5, smir=\E[4h, -- smkx=\E[19;1|, smln=\E?, smso=\E[7m, smul=\E[4m, -- smxon=\E[29;0|, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd, -+tvi920b|tvi920c|TeleVideo TVI-920B or TVI-920C (half-intensity attribute), -+ use=tvi920b+fn, use=tvi912b+dim, use=tvi912b-unk, - --# (att500: I merged this with the att513 entry, att500 just used att513 -- esr) --att500|att513|AT&T 513 using page mode, -- am, chts, mir, msgr, xenl, xon, -- cols#80, lh#2, lines#24, lw#8, nlab#8, -- acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, -- clear=\E[H\E[J, cnorm=\E[11;0|, cr=^M, -- csr=%i\E[%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[11;1|, dch=\E[%p1%dP, dch1=\E[P$<1>, dim=\E[2m, -- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -- enacs=\E(B\E)1, home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, -- hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, -- indn=\E[%p1%dE, invis=\E[8m, -- is1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l, -- kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON, -- kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK, -- kFND=\EOX, kHLP=\EOM, kHOM=\ENM, kIC=\ENJ, kLFT=\ENK, -- kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, kOPT=\EOR, kPRT=\EOZ, -- kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, kRIT=\ENL, kRPL=\EOY, -- kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, kbs=^H, kcan=\EOw, -- kcbt=\E[Z, kclo=\EOV, kclr=\E[J, kcmd=\EOu, kcpy=\ENd, -- kcrt=\EOn, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=\Eent, -- kext=\EOk, kf1=\EOc, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, -- kf6=\EOh, kf7=\EOi, kf8=\EOj, kfnd=\EOx, khlp=\EOm, -- khome=\E[H, kich1=\ENj, kind=\E[S, kmov=\ENc, kmrk=\ENi, -- kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, -- kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, -- kres=\EOq, krfr=\ENa, kri=\E[T, krpl=\EOy, krst=\EOB, -- ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, ll=\E#2, -- mc0=\E[?98l\E[0i, mc4=\E[?98l\E[?8i, mc5=\E[?98l\E[?4i, -- nel=\EE, -- pfkey=\E[%p1%d;%p2%l%d;3;0p F%p1%d %p2%s, -- pfloc=\E[%p1%d;%p2%l%d;2;0p F%p1%d %p2%s, -- pfx=\E[%p1%d;%p2%l%d;1;0p F%p1%d %p2%s, -- pln=\E[%p1%dp%p2%:-16s, rc=\E8, -- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, -- rin=\E[%p1%dF, rmacs=^O, rmir=\E[4l, -- rmkx=\E[19;0|\E[21;1|\212, rmln=\E<, rmso=\E[m, -- rmul=\E[m, -- rs1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l\E[2;0|\E[6;1|\E[8;0|\E[19;0|\E[1{\E[?99l, -- rs2=\E[5;0|, sc=\E7, -- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smir=\E[4h, -- smkx=\E[19;1|\E[21;4|\Eent, smln=\E?, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd, -+tvi920b-mc|tvi920c-mc|TeleVideo TVI-920B or TVI-920C (magic cookies), -+ use=tvi920b+fn, use=tvi912b+mc, use=tvi912b-unk, - --# 01-07-88 --# printer must be set to EMUL ANSI to accept ESC codes --# <cuu1> stops at top margin --# <is1> sets cpi 10,lpi 6,form 66,left 1,right 132,top 1,bottom 66,font --# and alt font ascii,wrap on,tabs cleared --# <is2> disables newline on LF,Emphasized off --# The <u0> capability sets form length --att5310|att5320|AT&T Model 53210 or 5320 matrix printer, -- xhpa, xvpa, -- bufsz#8192, cols#132, cps#120, it#8, lines#66, orc#10, -- orhi#100, orl#12, orvi#72, -- cpi=%?%p1%{10}%=%t\E[w%e%p1%{12}%=%t\E[2w%e%p1%{5}%=%t\E[5w%e%p1%{13}%=%p1%{14}%=%O%t\E[3w%e%p1%{16}%=%p1%{17}%=%O%t\E[4w%e%p1%{6}%=%t\E[6w%e%p1%{7}%=%t\E[7w%e%p1%{8}%=%t\E[8w%;, -- cr=^M, -- csnm=%?%p1%{0}%=%tusascii%e%p1%{1}%=%tenglish%e%p1%{2}%=%tfinnish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgermanic%e%p1%{7}%=%tfrench%e%p1%{8}%=%tcanadian_french%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tline%e%p1%{12}%=%tsecurity%e%p1%{13}%=%tebcdic%e%p1%{14}%=%tapl%e%p1%{15}%=%tmosaic%;, -- cud=\E[%p1%de, cud1=^J, cuf=\E[%p1%da, cuf1=\s, cuu1=\EM, -- ff=^L, hpa=\E[%p1%d`, ht=^I, is1=\Ec, is2=\E[20l\r, -- lpi=%?%p1%{2}%=%t\E[4z%e%p1%{3}%=%t\E[5z%e%p1%{4}%=%t\E[6z%e%p1%{6}%=%t\E[z%e%p1%{8}%=%t\E[2z%e%p1%{12}%=%t\E[3z%;, -- rshm=\E[m, -- scs=%?%p1%{0}%=%t\E(B%e%p1%{1}%=%t\E(A%e%p1%{2}%=%t\E(C%e%p1%{3}%=%t\E(D%e%p1%{4}%=%t\E(E%e%p1%{5}%=%t\E(H%e%p1%{6}%=%t\E(K%e%p1%{7}%=%t\E(R%e%p1%{8}%=%t\E(Q%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(Z%e%p1%{11}%=%t\E(0%e%p1%{12}%=%t\E(1%e%p1%{13}%=%t\E(3%e%p1%{14}%=%t\E(8%e%p1%{15}%=%t\E(}%;, -- smgbp=\E[;%p1%dr, smglp=\E[%{1}%p1%+%ds, -- smgrp=\E[;%{1}%p1%+%ds, smgtp=\E[%p1%dr, sshm=\E[5m, -- u0=\E[%p1%dt, vpa=\E[%p1%dd, -+# Televideo 921 and variants -+# From: Tim Theisen <tim@cs.wisc.edu> 22 Sept 1995 -+# (tvi921: removed :ko=bt: before translation, I see no backtab cap; -+# also added empty <acsc> to suppress tic warning -- esr) -+tvi921|televideo model 921 with sysline same as page & real vi function, -+ OTbs, OTpt, am, hs, xenl, xhp, -+ cols#80, lines#24, xmc#0, -+ acsc=, clear=^Z, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<3/>, cuu1=^K, -+ cvvis=\E.2, dch1=\EW, dl1=\ER$<1*/>, dsl=\Ef\r\Eg, ed=\EY, -+ el=\ET, fsl=\Eg, home=^^, ht=^I, ich1=\EQ, -+ if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, invis@, -+ is2=\El\E"\EF1\E.3\017\EA\E<, kbs=^H, kclr=^Z, kcub1=^H, -+ kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER$<1*/>, -+ ked=\EY, kel=\ET, kich1=\EQ, kil1=\EE, nel=^M^J, rmacs=\E%%, -+ rmir=, smacs=\E$, smir=, tsl=\Ef\EG0, use=adm+sgr, -+# without the beeper -+# (tvi92B: removed :ko=bt: before translation, I see no backtab cap; -+# also added empty <acsc> to suppress tic warning -- esr) -+tvi92B|televideo model 921 with sysline same as page & real vi function & no beeper, -+ am, hs, xenl, xhp, -+ cols#80, lines#24, xmc#0, -+ acsc=, clear=^Z, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<3/>, cuu1=^K, -+ cvvis=\E.2, dch1=\EW, dl1=\ER$<1*/>, dsl=\Ef\r\Eg, ed=\EY, -+ el=\ET, flash=\Eb$<200/>\Ed, fsl=\Eg, home=^^, ht=^I, -+ ich1=\EQ, if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, -+ invis@, is2=\El\E"\EF1\E.3\017\EA\E<, kbs=^H, kclr=^Z, -+ kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, -+ kdl1=\ER$<1*/>, ked=\EY, kel=\ET, kich1=\EQ, kil1=\EE, -+ nel=^M^J, rmacs=\E%%, smacs=\E$, tsl=\Ef\EG0, use=adm+sgr, -+# (tvi92D: removed :ko=bt: before translation, I see no backtab cap -- esr) -+tvi92D|tvi92B with DTR instead of XON/XOFF & better padding, -+ dl1=\ER$<2*/>, il1=\EE$<2*/>, -+ is2=\El\E"\EF1\E.3\016\EA\E<, kdl1=\ER$<2*/>, -+ kil1=\EE$<2*/>, use=tvi92B, - --# Teletype 5620, firmware version 1.1 (8;7;3) or earlier from BRL --# The following SET-UP modes are assumed for normal operation: --# CR_DEF=CR NL_DEF=INDEX DUPLEX=FULL --# Other SET-UP modes may be set for operator convenience or communication --# requirements. This termcap description is for the Resident Terminal Mode. --# No delays specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! --# The BRL entry also said: UNSAFE :ll=\E[70H: --att5620-1|tty5620-1|dmd1|Teletype 5620 with old ROMs, -- am, xon, -- cols#88, it#8, lines#70, vt#3, -- bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, -- dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, -- home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, -- il1=\E[L, ind=^J, indn=\E[%p1%dS, kbs=^H, kclr=\E[2J, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, -- kll=\E[70;1H, nel=^M^J, rc=\E8, ri=\E[T, rin=\E[%p1%dT, -- rs1=\Ec, sc=\E7, -+# (tvi924: This used to have <dsl=\Es0>, <fsl=\031>. I put the new strings -+# in from a BSD termcap file because it looks like they do something the -+# old ones skip -- esr) -+tvi924|televideo tvi924, -+ am, bw, hs, in, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, wsl#80, xmc#0, -+ bel=^G, blink=\EG2, cbt=\EI, civis=\E.0, clear=\E*0, -+ cnorm=\E.3, cr=^M, csr=\E_%p1%{32}%+%c%p2%{32}%+%c, -+ cub1=^H, cud1=^V, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, cvvis=\E.1, -+ dch1=\EW, dl1=\ER, dsl=\Es0\Ef\031, ed=\Ey, el=\Et, -+ flash=\Eb$<200>\Ed, fsl=\031\Es1, home=^^, ht=^I, hts=\E1, -+ ich1=\EQ, if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, -+ invis@, is1=\017\E%\E'\E(\EDF\EC\EG0\EN0\Es0\Ev0, -+ kbs=^H, kclr=\E*0, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, -+ kdch1=\EW, kdl1=\ER, ked=\Ey, kel=\Et, kf0=^A@\r, kf1=^AA\r, -+ kf10=^AJ\r, kf11=^AK\r, kf12=^AL\r, kf13=^AM\r, kf14=^AN\r, -+ kf15=^AO\r, kf2=^AB\r, kf3=^AC\r, kf4=^AD\r, kf5=^AE\r, -+ kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, kf9=^AI\r, khome=^^, -+ kich1=\EQ, kil1=\EE, lf0=F1, lf1=F2, lf10=F11, lf2=F3, lf3=F4, -+ lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, lf9=F10, -+ pfkey=\E|%p1%{49}%+%c%p2%s\031, ri=\Ej, tbc=\E3, tsl=\Ef, -+ use=adm+sgr, - --# 5620 terminfo (2.0 or later ROMS with char attributes) --# The following SET-UP modes are assumed for normal operation: --# DUPLEX=FULL GEN_FLOW=ON NEWLINE=INDEX RETURN=CR --# Other SET-UP modes may be set for operator convenience or communication --# requirements. This termcap description is for Resident Terminal Mode. No --# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! --# assumptions: <ind> (scroll forward one line) is only done at screen bottom --# Be aware that older versions of the dmd have a firmware bug that affects --# parameter defaulting; for this terminal, the 0 in \E[0m is not optional. --# <msgr> is from an otherwise inferior BRL for this terminal. That entry --# also has <ll>=\E[70H commented out and marked unsafe. --# For more, see the 5620 FAQ maintained by David Breneman <daveb@dgtl.com>. --att5620|dmd|tty5620|ttydmd|5620|5620 terminal 88 columns, -- OTbs, am, msgr, npc, xon, -- cols#88, it#8, lines#70, -- bel=^G, bold=\E[2m, clear=\E[H\E[J, cr=^M, cub1=^H, -- cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, -- dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich=\E[%p1%d@, -- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -- indn=\E[%p1%dS, kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kll=\E[70;1H, nel=^J, -- pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8, rev=\E[7m, ri=\E[T, -- rin=\E[%p1%dT, rmso=\E[0m, rmul=\E[0m, rs1=\Ec, sc=\E7, -- sgr0=\E[0m, smso=\E[7m, smul=\E[4m, --att5620-24|tty5620-24|dmd-24|teletype dmd 5620 in a 24x80 layer, -- lines#24, use=att5620, --att5620-34|tty5620-34|dmd-34|teletype dmd 5620 in a 34x80 layer, -- lines#34, use=att5620, --# 5620 layer running the "S" system's downloaded graphics handler: --att5620-s|tty5620-s|layer|vitty|5620 S layer, -- OTbs, OTpt, am, -- cols#80, it#8, lines#72, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, -- cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=^K, dl1=\ED, -- el=\EK, flash=\E^G, ht=^I, il1=\EI, ind=^J, kbs=^H, kclr=\E[2J, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, -- kll=\E[70;1H, -- --# Entries for <kf15> thru <kf28> refer to the shifted system pf keys. --# --# Entries for <kf29> thru <kf46> refer to the alternate keypad mode --# keys: = * / + 7 8 9 - 4 5 6 , 1 2 3 0 . ENTER --att605|AT&T 605 80 column 102key keyboard, -- am, eo, xon, -- cols#80, lines#24, lw#8, nlab#8, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -- cr=^M, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, -- dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K, el1=\E[1K, fsl=\E8, ht=^I, ich=\E[%p1%d@, ich1=\E[@, -- il1=\E[L, ind=^J, invis=\E[8m, -- is1=\E[8;0|\E[?\E[13;20l\E[?\E[12h, is2=\E[m\017, -- kLFT=\E[ A, kRIT=\E[ @, kbs=^H, kcbt=\E[Z, kclr=\E[2J, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, -- kdl1=\E[M, kend=\E[24;1H, kf1=\EOc, kf10=\ENp, kf11=\ENq, -- kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD, -- kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH, -- kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ, -- kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe, -- kf30=\EOQ, kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx, -- kf35=\EOy, kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv, -- kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs, -- kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh, -- kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, kich1=\E[@, -- kil1=\E[L, kind=\E[S, knp=\E[U, kpp=\E[V, ll=\E[24H, -- mc4=\E[?4i, mc5=\E[?5i, nel=\EE, -- pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, -- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m, -- rmacs=^O, rmir=\E[4l, rmln=\E[2p, rmso=\E[m, rmul=\E[m, -- rs2=\Ec\E[?3l, sc=\E7, sgr0=\E[m\017, smacs=\E)0\016, -- smir=\E[4h, smln=\E[p, smso=\E[7m, smul=\E[4m, -- tsl=\E7\E[25;%i%p1%dx, --att605-pc|ATT 605 in pc term mode, -- acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -- cbt=\E[Z, cub1=\E[D, cud1=\E[B, cuf1=\E[C, cuu1=\E[A, -- dch1=\E[P, dl1=\E[M, ich1=\E[@, il1=\E[L, kcbt=\E[Z, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, -- kdl1=\E[M, kend=\E[F, kf1=\E[M, kf10=\E[V, kf2=\E[N, -- kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, -- kf9=\E[U, khome=\E[H, kich1=\E[@, knp=\E[G, kpp=\E[I, -- rmsc=400\E[50;0|, smsc=250\E[?11l\E[50;1|, xoffc=g, -- xonc=e, use=att605, --att605-w|AT&T 605-w 132 column 102 key keyboard, -- cols#132, wsl#132, -- is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0, -- use=att605, --# (att610: I added <rmam>/<smam> based on the init string. I also --# added <indn> and <rin> because the BSD file says the att615s have them, --# and the 615 is like a 610 with a big keyboard, and most of their other --# smart terminals support the same sequence -- esr) --att610|AT&T 610; 80 column; 98key keyboard, -- am, eslok, hs, mir, msgr, xenl, xon, -- cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -- flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, ht=^I, -- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, -- indn=\E[%p1%dS, invis=\E[8m, -- is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0, -- is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ @, kRIT=\E[ A, kbs=^H, -- kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr, -- kf13=\ENs, kf14=\ENt, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, -- kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, -- kind=\E[S, kri=\E[T, ll=\E[24H, mc4=\E[?4i, mc5=\E[?5i, -- nel=\EE, -- pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, -- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m, -- ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, -- rmln=\E[2p, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -- smln=\E[p, smso=\E[7m, smul=\E[4m, tsl=\E7\E[25;%i%p1%dx, --att610-w|AT&T 610; 132 column; 98key keyboard, -- cols#132, wsl#132, -- is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, -- use=att610, -- --att610-103k|AT&T 610; 80 column; 103key keyboard, -- kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON, -- kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK, -- kFND=\EOX, kHLP=\EOM, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, -- kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, -- kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, -- kcan=\EOw, kclo=\EOV, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn, -- kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=^M, -- kext=\EOk, kf10@, kf11@, kf12@, kf13@, kf14@, kf9@, kfnd=\EOx, -- khlp=\EOm, kich1=\ENj, kmov=\ENc, kmrk=\ENi, kmsg=\EOl, -- knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, kpp=\E[V, -- kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, kres=\EOq, -- krfr=\ENa, krmir=\ENj, krpl=\EOy, krst=\EOB, ksav=\EOo, -- kslt=\ENI, kspd=\EOp, kund=\EOs, use=att610, --att610-103k-w|AT&T 610; 132 column; 103key keyboard, -- cols#132, wsl#132, -- is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, -- use=att610-103k, --att615|AT&T 615; 80 column; 98key keyboard, -- kLFT=\E[ A, kRIT=\E[ @, kf15=\EOC, kf16=\EOD, kf17=\EOE, -- kf18=\EOF, kf19=\EOG, kf20=\EOH, kf21=\EOI, kf22=\EOJ, -- kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, kf27=\ENS, -- kf28=\ENT, kf29=\EOP, kf30=\EOQ, kf31=\EOR, kf32=\EOS, -- kf33=\EOw, kf34=\EOx, kf35=\EOy, kf36=\EOm, kf37=\EOt, -- kf38=\EOu, kf39=\EOv, kf40=\EOl, kf41=\EOq, kf42=\EOr, -- kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, use=att610, --att615-w|AT&T 615; 132 column; 98key keyboard, -- kLFT=\E[ A, kRIT=\E[ @, kf15=\EOC, kf16=\EOD, kf17=\EOE, -- kf18=\EOF, kf19=\EOG, kf20=\EOH, kf21=\EOI, kf22=\EOJ, -- kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, kf27=\ENS, -- kf28=\ENT, kf29=\EOP, kf30=\EOQ, kf31=\EOR, kf32=\EOS, -- kf33=\EOw, kf34=\EOx, kf35=\EOy, kf36=\EOm, kf37=\EOt, -- kf38=\EOu, kf39=\EOv, kf40=\EOl, kf41=\EOq, kf42=\EOr, -- kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, use=att610-w, --att615-103k|AT&T 615; 80 column; 103key keyboard, -- kLFT=\E[ A, kRIT=\E[ @, use=att610-103k, --att615-103k-w|AT&T 615; 132 column; 103key keyboard, -- kLFT=\E[ A, kRIT=\E[ @, use=att610-103k-w, --# (att620: I added <rmam>/<smam> based on the init string and --# <rin>/<indn> from a BSD termcap -- esr) --att620|AT&T 620; 80 column; 98key keyboard, -- am, eslok, hs, mir, msgr, xenl, xon, -- cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -- flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, ht=^I, -- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, -- indn=\E[%p1%dS, invis=\E[8m, -- is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h, -- is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ A, kRIT=\E[ @, kbs=^H, -- kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr, -- kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD, kf17=\EOE, -- kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH, kf21=\EOI, -- kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, -- kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe, kf30=\EOQ, -- kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx, kf35=\EOy, -- kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv, kf4=\EOf, -- kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs, kf44=\EOp, -- kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, -- kf9=\ENo, khome=\E[H, kind=\E[S, kri=\E[T, ll=\E[24H, -- mc4=\E[?4i, mc5=\E[?5i, nel=\EE, -- pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, -- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m, -- ri=\EM, rin=\E[%p1%dT, rmacs=\E(B\017, rmam=\E[?7l, -- rmir=\E[4l, rmln=\E[2p, rmso=\E[m, rmul=\E[m, -- rs2=\Ec\E[?3l, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\E(B\017, smacs=\E)0\016, smam=\E[?7h, -- smir=\E[4h, smln=\E[p, smso=\E[7m, smul=\E[4m, -- tsl=\E7\E[25;%i%p1%dx, --att620-w|AT&T 620; 132 column; 98key keyboard, -- cols#132, wsl#132, -- is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, -- use=att620, --att620-103k|AT&T 620; 80 column; 103key keyboard, -- kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON, -- kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK, -- kFND=\EOX, kHLP=\EOM, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, -- kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, -- kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, -- kcan=\EOw, kclo=\EOV, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn, -- kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=^M, -- kext=\EOk, kf10@, kf11@, kf12@, kf13@, kf14@, kf15@, kf16@, kf17@, -- kf18@, kf19@, kf20@, kf21@, kf22@, kf23@, kf24@, kf25@, kf26@, kf27@, -- kf28@, kf29@, kf30@, kf31@, kf32@, kf33@, kf34@, kf35@, kf36@, kf37@, -- kf38@, kf39@, kf40@, kf41@, kf42@, kf43@, kf44@, kf45@, kf46@, kf9@, -- kfnd=\EOx, khlp=\EOm, kich1=\ENj, kmov=\ENc, kmrk=\ENi, -- kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, -- kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, -- kres=\EOq, krfr=\ENa, krmir=\ENj, krpl=\EOy, krst=\EOB, -- ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, use=att620, -- --att620-103k-w|AT&T 620; 132 column; 103key keyboard, -- cols#132, wsl#132, -- is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, -- use=att620-103k, -- --# AT&T (formerly Teletype) 630 Multi-Tasking Graphics terminal --# The following SETUP modes are assumed for normal operation: --# Local_Echo=Off Gen_Flow=On Return=CR Received_Newline=LF --# Font_Size=Large Non-Layers_Window_Cols=80 --# Non-Layers_Window_Rows=60 --# Other SETUP modes may be set for operator convenience or communication --# requirements. Some capabilities assume a printer attached to the Aux EIA --# port. This termcap description is for the Fixed Non-Layers Window. No --# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! --# (att630: added <ich1>, <blink> and <dim> from a BSD termcap file -- esr) --att630|AT&T 630 windowing terminal, -- OTbs, am, da, db, mir, msgr, npc, xon, -- cols#80, it#8, lines#60, lm#0, -- bel=^G, blink=\E[5m, cbt=\E[Z, clear=\E[H\E[J, cr=^M, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -- dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, -- el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, -- il=\E[%p1%dL, il1=\E[L, ind=\ED, indn=\E[%p1%dS, is2=\E[m, -- kbs=^H, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, kent=^M, -- kf10=\ENp, kf11=\ENq, kf12=\ENr, kf13=\ENs, kf14=\ENt, -- kf15=\ENu, kf16=\ENv, kf17=\ENw, kf18=\ENx, kf19=\ENy, -- kf20=\ENz, kf21=\EN{, kf22=\EN|, kf23=\EN}, kf24=\EN~, -- kf9=\ENo, khome=\E[H, kich1=\E[@, kil1=\E[L, mc4=\E[?4i, -- mc5=\E[?5i, nel=^M^J, pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8, -- rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmir=\E[4l, rmso=\E[m, -- rmul=\E[m, rs2=\Ec, sc=\E7, -- sgr=\E[0%?%p2%t;4%;%?%p1%p3%|%p4%|%p5%|%t;7%;m, -- sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, --att630-24|5630-24|5630DMD-24|630MTG-24|AT&T 630 windowing terminal 24 lines, -- lines#24, use=att630, -- --# This is the att700 entry for 700 native emulation of the AT&T 700 --# terminal. Comments are relative to changes from the 605V2 entry and --# att730 on which the entry is based. Comments show the terminfo --# capability name, termcap name, and description. -+# TVI925 DIP switches. In each of these, D = Down and U = Up, - # --# Here is what's going onm in the init string: --# ESC [ 50;4| set 700 native mode (really is 605) --# x ESC [ 56;ps| set lines to 24: ps=0; 40: ps=1 (plus status line) --# ESC [ 53;0| set GenFlow to Xon/Xoff --# ESC [ 8 ;0| set CR on NL --# x ESC [ ? 3 l/h set workspace: 80 col(l); 132 col(h) --# ESC [ ? 4 l jump scroll --# ESC [ ? 5 l/h video: normal (l); reverse (h) --# ESC [ ?13 l Labels on --# ESC [ ?15 l parity check = no --# ESC [ 13 l monitor mode off --# ESC [ 20 l LF on NL (not CRLF on NL) --# ESC [ ? 7 h autowrap on --# ESC [ 12 h local echo off --# ESC ( B GO = ASCII --# ESC ) 0 G1 = Special Char & Line Drawing --# ESC [ ? 31 l Set 7 bit controls -+# Here are the settings for the external (baud) switches (S1): - # --# Note: Most terminals, especially the 600 family use Reverse Video for --# standout mode. DEC also uses reverse video. The VT100 uses bold in addition --# Assume we should stay with reverse video for 70.. However, the 605V2 exits --# standout mode with \E[m (all normal attributes). The 730 entry simply --# exits reverse video which would leave other current attributes intact. It --# was assumed the 730 entry to be more correct so rmso has changed. The --# 605V2 has no sequences to turn individual attributes off, thus its setting --# and the rmso/smso settings from the 730. -+# Position Baud -+# 7 8 9 10 [Printer] -+# 1 2 3 4 [Main RS232] -+# ----------------------------------------------------- -+# D D D D 9600 -+# D D D U 50 -+# D D U D 75 -+# D D U U 110 -+# D U D D 135 -+# D U D U 150 -+# D U U D 300 -+# D U U U 600 -+# U D D D 1200 -+# U D D U 1800 -+# U D U D 2400 -+# U D U U 3600 -+# U U D D 4800 -+# U U D U 7200 -+# U U U D 9600 -+# U U U U 19200 - # --# Note: For the same reason as above in rmso I changed exit under-score mode --# to specifically turn off underscore, rather than return to all normal --# attributes - # --# Note: The following pkey_xmit is taken from the 605V2 which contained the --# capability as pfxl. It was changed here to pfx since pfxl --# will only compile successfully with Unix 4.0 tic. Also note that pfx only --# allows strings to be parameters and label values must be programmed as --# constant strings. Supposedly the pfxl of Version 4.0 allows both labels --# and strings to be parameters. The 605V2 pfx entry should be examined later --# in this regard. For reference the 730 pfxl entry is shown here for comparison --# 730 pfx entry: --# pfxl=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq\s\s\s --# SYS\s\s\s\s\sF%p1%:-2d\s\s%e;0;3q%;%p2%s, -+# Settings for word length and stop-bits (S1) - # --# (for 4.0 tic) --# pfxl=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, -+# Position Description -+# 5 6 -+# --------------------------- -+# U - 7-bit word -+# D - 8-bit word -+# - U 2 stop bits -+# - D 1 stop bit - # --# (for <4.0 tic) --# pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, - # --# From the AT&T 705 Multi-tasking terminal user's guide Page 8-8,8-9 -+# S2 (external) settings - # --# Port1 Interface -+# Position Up Dn Description -+# -------------------------------------------- -+# 1 X Local edit -+# X Duplex edit (transmit editing keys) -+# -------------------------------------------- -+# 2 X 912/920 emulation -+# X 925 -+# -------------------------------------------- -+# 3 X -+# 4 X No parity -+# 5 X -+# -------------------------------------------- -+# 3 X -+# 4 X Odd parity -+# 5 X -+# -------------------------------------------- -+# 3 X -+# 4 X Even parity -+# 5 X -+# -------------------------------------------- -+# 3 X -+# 4 X Mark parity -+# 5 X -+# -------------------------------------------- -+# 3 X -+# 4 X Space parity -+# 5 X -+# -------------------------------------------- -+# 6 X White on black display -+# X Black on white display -+# -------------------------------------------- -+# 7 X Half Duplex -+# 8 X -+# -------------------------------------------- -+# 7 X Full Duplex -+# 8 X -+# -------------------------------------------- -+# 7 X Block mode -+# 8 X -+# -------------------------------------------- -+# 9 X 50 Hz -+# X 60 Hz -+# -------------------------------------------- -+# 10 X CR/LF (Auto LF) -+# X CR only - # --# modular 10 pin Connector --# Left side Right side --# Pin 1 2 3 4 5 6 7 8 9 10 -+# S3 (internal switch) settings: - # --# Key (notch) at bottom -+# Position Up Dn Description -+# -------------------------------------------- -+# 1 X Keyclick off -+# X Keyclick on -+# -------------------------------------------- -+# 2 X English -+# 3 X -+# -------------------------------------------- -+# 2 X German -+# 3 X -+# -------------------------------------------- -+# 2 X French -+# 3 X -+# -------------------------------------------- -+# 2 X Spanish -+# 3 X -+# -------------------------------------------- -+# 4 X Blinking block cursor -+# 5 X -+# -------------------------------------------- -+# 4 X Blinking underline cursor -+# 5 X -+# -------------------------------------------- -+# 4 X Steady block cursor -+# 5 X -+# -------------------------------------------- -+# 4 X Steady underline cursor -+# 5 X -+# -------------------------------------------- -+# 6 X Screen blanking timer (ON) -+# X Screen blanking timer (OFF) -+# -------------------------------------------- -+# 7 X Page attributes -+# X Line attributes -+# -------------------------------------------- -+# 8 X DCD disconnected -+# X DCD connected -+# -------------------------------------------- -+# 9 X DSR disconnected -+# X DSR connected -+# -------------------------------------------- -+# 10 X DTR Disconnected -+# X DTR connected -+# -------------------------------------------- - # --# Pin 1 DSR --# 3 DCD --# 4 DTR --# 5 Sig Ground --# 6 RD --# 7 SD --# 8 CTS --# 9 RTS --# 10 Frame Ground -+# (tvi925: BSD has <clear=\E*>. I got <is2> and <ri> from there -- esr) -+tvi925|televideo 925, -+ OTbs, am, bw, hs, ul, -+ cols#80, lines#24, xmc#1, -+ bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=^M, cub1=^H, cud1=^V, -+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ cvvis=\E.2, dch1=\EW, dl1=\ER, dsl=\Eh, ed=\EY, el=\ET, -+ flash=\Eb$<200>\Ed, fsl=^M\Eg, home=^^, ht=^I, hts=\E1, -+ ich1=\EQ, il1=\EE, ind=^J, invis@, is2=\El\E", kbs=^H, kclr=^Z, -+ kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, -+ ked=\EY, kel=\ET, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, -+ kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, -+ kf9=^AH\r, khome=^^, kich1=\EQ, kil1=\EE, ri=\Ej, tbc=\E3, -+ tsl=\Eh\Ef, use=adm+sgr, -+# TeleVideo 925 from Mitch Bradley <sun!wmb> via BRL -+# to avoid "magic cookie" standout glitch: -+tvi925-hi|TeleVideo Model 925 with half intensity standout mode, -+ xmc@, -+ kbs=^H, kcub1=^H, kcud1=^J, rmso=\E(, smso=\E), use=tvi925, -+ -+# From: Todd Litwin <litwin@litwin.jpl.nasa.gov> 28 May 1993 -+# Originally Tim Curry, Univ. of Central Fla., <duke!ucf-cs!tim> 5/21/82 -+# for additional capabilities, -+# The following tvi descriptions from B:pjphar and virus!mike -+# is for all 950s. It sets the following attributes: -+# full duplex (\EDF) write protect off (\E() -+# conversation mode (\EC) graphics mode off (\E%) -+# white on black (\Ed) auto page flip off (\Ew) -+# turn off status line (\Eg) clear status line (\Ef\r) -+# normal video (\E0) monitor mode off (\EX or \Eu) -+# edit mode (\Er) load blank char to space (\Ee\040) -+# line edit mode (\EO) enable buffer control (^O) -+# protect mode off (\E\047) duplex edit keys (\El) -+# program unshifted send key to send line all (\E016) -+# program shifted send key to send line unprotected (\E004) -+# set the following to nulls: -+# field delimiter (\Ex0\200\200) -+# line delimiter (\Ex1\200\200) -+# start-protected field delimiter (\Ex2\200\200) -+# end-protected field delimiter (\Ex3\200\200) -+# set end of text delimiter to carriage return/null (\Ex4\r\200) - # --# The manual is 189 pages and is loaded with details about the escape codes, --# etc..... Available from AT&T CIC 800-432-6600... --# ask for Document number 999-300-660.. -+# TVI 950 Switch Setting Reference Charts - # --att700|AT&T 700 24x80 column display w/102key keyboard, -- am, eslok, hs, mir, msgr, xenl, xon, -- cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -- enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fln=4\,4, -- fsl=\E8, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -- il=\E[%p1%dL, il1=\E[L, ind=\ED, invis=\E[8m, -- is2=\E[50;4|\E[53;0|\E[8;0|\E[?4;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0\E[?31l\E[0m\017, -- is3=\E(B\E)0, kLFT=\E[ A, kRIT=\E[ @, kbs=^H, kcbt=\E[Z, -- kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[P, kdl1=\E[M, kend=\E[24;1H, kf1=\EOc, kf10=\ENp, -- kf11=\ENq, kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC, -- kf16=\EOD, kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd, -- kf20=\EOH, kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP, -- kf25=\ENQ, kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOq, -- kf3=\EOe, kf30=\EOr, kf31=\EOs, kf32=\EOt, kf33=\EOu, -- kf34=\EOv, kf35=\EOw, kf36=\EOx, kf37=\EOy, kf38=\EOu, -- kf39=\EOv, kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr, -- kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg, -- kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, -- kich1=\E[@, kil1=\E[L, knp=\E[U, kpp=\E[V, ll=\E[24H, -- mc0=\E[i, mc4=\E[?4i, mc5=\E[?5i, nel=\EE, -- pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, -- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, -- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O, -- rmir=\E[4l, rmln=\E[2p, rmso=\E[27m, rmul=\E[24m, -- rmxon=\E[53;3|, rs1=\Ec\E[?3;5l\E[56;0|, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smir=\E[4h, smln=\E[p, smso=\E[7m, -- smul=\E[4m, smxon=\E[53;0|, tbc=\E[3g, -- tsl=\E7\E[99;%i%p1%dx, -- --# This entry was modified 3/13/90 by JWE. --# fixes include additions of <enacs>, correcting <rep>, and modification --# of <kHOM>. (See comments below) --# att730 has status line of 80 chars --# These were commented out: <indn=\E[%p1%dS>, <rin=\E[%p1%dT>, --# the <kf25> and up keys are used for shifted system Fkeys --# NOTE: JWE 3/13/90 The 98 key keyboard translation for shift/HOME is --# currently the same as <khome> (unshifted HOME or \E[H). On the 102, 102+1 --# and 122 key keyboards, the 730's translation is \E[2J. For consistency --# <kHOM> has been commented out. The user can uncomment <kHOM> if using the --# 102, 102+1, or 122 key keyboards --# kHOM=\E[2J, --# (att730: I added <rmam>/<smam> based on the init string -- esr) --att730|AT&T 730 windowing terminal, -- am, da, db, eslok, hs, mir, msgr, npc, xenl, xon, -- cols#80, it#8, lh#2, lines#60, lm#0, lw#8, nlab#24, wsl#80, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -- clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -- enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fsl=\E8, -- home=\E[H, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, -- ind=\ED, invis=\E[8m, -- is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B, -- is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ @, kRIT=\E[ A, kbs=^H, -- kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr, -- kf13=\ENs, kf14=\ENt, kf15=\ENu, kf16=\ENv, kf17=\ENw, -- kf18=\ENx, kf19=\ENy, kf2=\EOd, kf20=\ENz, kf21=\EN{, -- kf22=\EN|, kf23=\EN}, kf24=\EN~, kf25=\EOC, kf26=\EOD, -- kf27=\EOE, kf28=\EOF, kf29=\EOG, kf3=\EOe, kf30=\EOH, -- kf31=\EOI, kf32=\EOJ, kf33=\ENO, kf34=\ENP, kf35=\ENQ, -- kf36=\ENR, kf37=\ENS, kf38=\ENT, kf39=\EOU, kf4=\EOf, -- kf40=\EOV, kf41=\EOW, kf42=\EOX, kf43=\EOY, kf44=\EOZ, -- kf45=\EO[, kf46=\EO\s, kf47=\EO], kf48=\EO\^, kf5=\EOg, -- kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, -- kich1=\E[@, kil1=\E[L, kind=\E[S, kri=\E[T, -- mc0=\E[?19h\E[0i, mc4=\E[?4i, mc5=\E[?5i, nel=\EE, -- pfx=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%:-2d %e;0;3q%;%p2%s, -- pfxl=\E[%p1%d;%p2%l%02d;0;0q%p3%:-16.16s%p2%s, -- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, -- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O, -- rmam=\E[?7l, rmir=\E[4l, rmln=\E[?13h, rmso=\E[27m, -- rmul=\E[24m, rmxon=\E[?21l, rs2=\Ec\E[?3l, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -- smln=\E[?13l, smso=\E[7m, smul=\E[4m, smxon=\E[?21h, -- swidm=\E#6, tsl=\E7\E[;%i%p1%dx, --att730-41|730MTG-41|AT&T 730-41 windowing terminal Version, -- lines#41, use=att730, --att730-24|730MTG-24|AT&T 730-24 windowing terminal Version, -- lines#24, use=att730, --att730r|730MTGr|AT&T 730 rev video windowing terminal Version, -- flash=\E[?5l$<200>\E[?5h, -- is1=\E[8;0|\E[?3;4;13;15l\E[?5h\E[13;20l\E[?7h\E[12h\E(B\E)B, -- use=att730, --att730r-41|730MTG-41r|AT&T 730r-41 rev video windowing terminal Version, -- lines#41, use=att730r, --att730r-24|730MTGr-24|AT&T 730r-24 rev video windowing terminal Version, -- lines#24, use=att730r, -- --# The following represents the screen layout along with the associated --# bezel buttons for the 5430/pt505 terminal. The "kf" designations do --# not appear on the screen but are shown to reference the bezel buttons. --# The "CMD", "MAIL", and "REDRAW" buttons are shown in their approximate --# position relative to the screen. --# --# --# --# +----------------------------------------------------------------+ --# | | --# XXXX | kf0 kf24 | XXXX --# | | --# | | --# XXXX | kf1 kf23 | XXXX --# | | --# | | --# XXXX | kf2 kf22 | XXXX --# | | --# | | --# XXXX | kf3 kf21 | XXXX --# | | --# | | --# XXXX | kf4 kf20 | XXXX --# | | --# | | --# XXXX | kf5 kf19 | XXXX --# | | --# | | --# XXXX | kf6 kf18 | XXXX --# | | --# | | --# XXXX | | XXXX --# | | --# | | --# +----------------------------------------------------------------+ --# --# XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX --# --# Note: XXXX represents the screen buttons --# CMD REDRAW -+# TABLE 1: - # --# MAIL -+# S1 1 2 3 4 5 6 7 8 9 10 -+# +-----------------------+-----+-----+-----------------------+ -+# | Computer Baud Rate |Data |Stop | Printer Baud Rate | -+# | |Bits |Bits | | -+# +------+-----------------------+-----+-----+-----------------------+ -+# | Up | See | 7 | 2 | See | -+# +------+-----------------------+-----+-----+-----------------------+ -+# | Down | TABLE 2 | 8 | 1 | TABLE 2 | -+# +------+-----------------------+-----+-----+-----------------------+ - # --# version 1 note: --# The character string sent by key 'kf26' may be user programmable --# to send either \E[16s, or \E[26s. --# The character string sent by key 'krfr' may be user programmable --# to send either \E[17s, or \E[27s. - # --# Depression of the "CMD" key sends \E! (kcmd) --# Depression of the "MAIL" key sends \E[26s (kf26) --# "REDRAW" same as "REFRESH" (krfr) -+# S2 1 2 3 4 5 6 7 8 9 10 -+# +-----+-----+-----------------+-----+-----------+-----+-----+ -+# |Edit |Cursr| Parity |Video|Transmiss'n| Hz |Click| -+# +------+-----+-----+-----------------+-----+-----------+-----+-----+ -+# | Up | Dplx|Blink| See |GonBk| See | 60 | Off | -+# +------+-----+-----+-----------------+-----+-----------+-----+-----+ -+# | Down |Local|St'dy| TABLE 3 |BkonG| CHART | 50 | On | -+# +------+-----+-----+-----------------+-----+-----------+-----+-----+ - # --# "kf" functions adds carriage return to output string if terminal is in --# 'new line' mode. -+# TABLE 2: - # --# The following are functions not covered in the table above: -+# +-----------+-----+-----+-----+-----+-----------+ -+# | Display | 1 | 2 | 3 | 4 | Baud | -+# +-----------+-----+-----+-----+-----+ | -+# | Printer | 7 | 8 | 9 | 10 | Rate | -+# +-----------+-----+-----+-----+-----+-----------+ -+# | D | D | D | D | 9600 | -+# | U | D | D | D | 50 | -+# | D | U | D | D | 75 | -+# | U | U | D | D | 110 | -+# | D | D | U | D | 135 | -+# | U | D | U | D | 150 | -+# | D | U | U | D | 300 | -+# | U | U | U | D | 600 | -+# | D | D | D | U | 1200 | -+# | U | D | D | U | 1800 | -+# | D | U | D | U | 2400 | -+# | U | U | D | U | 3600 | -+# | D | D | U | U | 4800 | -+# | U | D | U | U | 7200 | -+# | D | U | U | U | 9600 | -+# | U | U | U | U | 19200 | -+# +-----+-----+-----+-----+-----------+ - # --# Set keyboard character (SKC): \EPn1;Pn2w --# Pn1= 0 Back Space key --# Pn1= 1 Break key --# Pn2= Program char (hex) -+# TABLE 3: -+# +-----+-----+-----+-----------+ -+# | 3 | 4 | 5 | Parity | -+# +-----+-----+-----+-----------+ -+# | X | X | D | None | -+# | D | D | U | Odd | -+# | D | U | U | Even | -+# | U | D | U | Mark | -+# | U | U | U | Space | -+# +-----+-----+-----+-----------+ -+# X = don't care - # --# Screen Definition (SDF): \E[Pn1;Pn2;Pn3;Pn4;Pn5t --# Pn1= Window number (1-39) --# Pn2-Pn5= Y;X;Y;X coordinates -+# CHART: -+# +-----+-----+-----------------+ -+# | 7 | 8 | Communication | -+# +-----+-----+-----------------+ -+# | D | D | Half Duplex | -+# | D | U | Full Duplex | -+# | U | D | Block | -+# | U | U | Local | -+# +-----+-----+-----------------+ - # --# Screen Selection (SSL): \E[Pnu --# Pn= Window number -+# (tvi950: early versions had obsolete ":ma=^Vj^Kk^Hh^Ll^^H:". -+# I also inserted <ich1> and <kich1>; the :ko: string indicated that <ich> -+# should be present and all tvi native modes use the same string for this. -+# Finally, note that BSD has cud1=^V. -- esr) -+tvi950|televideo 950, -+ OTbs, am, hs, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, xmc#1, -+ acsc=b\011c\014d\re\ni\013, bel=^G, cbt=\EI, clear=\E*, -+ cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey, el=\Et, flash=\Eb$<200/>\Ed, -+ fsl=^M, home=^^, ht=^I, hts=\E1, ich1=\EQ, il1=\EE, ind=^J, -+ invis@, -+ is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\Ef\r, -+ kbs=^H, kcbt=\EI, kclr=\E*, kcub1=^H, kcud1=^V, kcuf1=^L, -+ kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\Ey, kel=\Et, kf0=^A0\r, -+ kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -+ kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -+ kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`, ri=\Ej, rmacs=^X, -+ rmir=\Er, smacs=^U, smir=\Eq, tbc=\E3, tsl=\Eg\Ef, -+ use=adm+sgr, - # --# Set Terminal Modes (SM): \E[Pnh --# Pn= 3 Graphics mode --# Pn= > Cursor blink --# Pn= < Enter new line mode --# Pn= = Enter reverse insert/replace mode --# Pn= ? Enter no scroll mode -+# is for 950 with two pages adds the following: -+# set 48 line page (\E\\2) -+# place cursor at page 0, line 24, column 1 (\E-07 ) -+# set local (no send) edit keys (\Ek) - # --# Reset Terminal Mode (RM): \E[Pnl --# Pn= 3 Exit graphics mode --# Pn= > Exit cursor blink --# Pn= < Exit new line mode --# Pn= = Exit reverse insert/replace mode --# Pn= ? Exit no scroll mode -+# two page 950 adds the following: -+# when entering ex, set 24 line page (\E\\1) -+# when exiting ex, reset 48 line page (\E\\2) -+# place cursor at 0,24,1 (\E-07 ) -+# set duplex (send) edit keys (\El) when entering vi -+# set local (no send) edit keys (\Ek) when exiting vi - # --# Screen Status Report (SSR): \E[Pnp --# Pn= 0 Request current window number --# Pn= 1 Request current window dimensions -+tvi950-2p|televideo950 w/2 pages, -+ is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\2\E-07 \011, -+ rmcup=\E\\2\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, -+ smkx=\El, use=tvi950, - # --# Device Status Report (DSR): \E[6n Request cursor position -+# is for 950 with four pages adds the following: -+# set 96 line page (\E\\3) -+# place cursor at page 0, line 24, column 1 (\E-07 ) - # --# Call Status Report (CSR): \E[Pnv --# Pn= 0 Call failed --# Pn= 1 Call successful -+# four page 950 adds the following: -+# when entering ex, set 24 line page (\E\\1) -+# when exiting ex, reset 96 line page (\E\\3) -+# place cursor at 0,24,1 (\E-07 ) - # --# Transparent Button String (TBS): \E[Pn1;Pn2;Pn3;{string --# Pn1= Button number to be loaded --# Pn2= Character count of "string" --# Pn3= Key mode being loaded: --# 0= Unshifted --# 1= Shifted --# 2= Control --# String= Text string (15 chars max) -+tvi950-4p|televideo950 w/4 pages, -+ is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\3\E-07 \011, -+ rmcup=\E\\3\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, -+ smkx=\El, use=tvi950, - # --# Screen Number Report (SNR): \E[Pnp --# Pn= Screen number -+# <is2> for reverse video 950 changes the following: -+# set reverse video (\Ed) - # --# Screen Dimension Report (SDR): \E[Pn1;Pn2r --# Pn1= Number of rows available in window --# Pn2= Number of columns available in window --# --# Cursor Position Report (CPR): \E[Pn1;Pn2R --# Pn1= "Y" Position of cursor --# Pn2= "X" Position of cursor --# --# Request Answer Back (RAB): \E[c --# --# Answer Back Response (ABR): \E[?;*;30;VSV --# *= 0 No printer available --# *= 2 Printer available --# V= Software version number --# SV= Software sub version number --# (printer-available field not documented in v1) --# --# Screen Alignment Aid: \En --# --# Bell (lower pitch): \E[x --# --# Dial Phone Number: \EPdstring\ --# string= Phone number to be dialed --# --# Set Phone Labels: \EPpstring\ --# string= Label for phone buttons --# --# Set Clock: \EPchour;minute;second\ --# --# Position Clock: \EPsY;X\ --# Y= "Y" coordinate --# X= "X" coordinate --# --# Delete Clock: \Epr\ --# --# Programming The Function Buttons: \EPfPn;string\ --# Pn= Button number (00-06, 18-24) --# (kf00-kf06, kf18-kf24) --# string= Text to sent on button depression --# --# The following in version 2 only: --# --# Request For Local Directory Data: \EPp12;\ --# --# Local Directory Data to host: \EPp11;LOCAL...DIRECTORY...DATA\ --# --# Request for Local Directory Data in print format: \EPp13;\ --# --# Enable 'Prt on Line' mode: \022 (DC2) --# --# Disable 'Prt on Line' mode: \024 (DC4) -+# set vb accordingly (\Ed ...delay... \Eb) - # -+tvi950-rv|televideo950 rev video, -+ flash=\Ed$<200/>\Eb, -+ is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0, -+ use=tvi950, - --# 05-Aug-86: --# The following Terminfo entry describes functions which are supported by --# the AT&T 5430/pt505 terminal software version 2 and later. --att505|pt505|att5430|gs5430|AT&T Personal Terminal 505 or 5430 GETSET terminal, -- am, xon, -+# tvi950-rv-2p uses the appropriate entries from 950-2p and 950-rv -+tvi950-rv-2p|televideo950 rev video w/2 pages, -+ flash=\Ed$<200/>\Eb, -+ is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\2\E-07\s, -+ rmcup=\E\\2\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, -+ smkx=\El, use=tvi950, -+ -+# tvi950-rv uses the appropriate entries from 950-4p and 950-rv -+tvi950-rv-4p|televideo950 rev video w/4 pages, -+ flash=\Ed$<200/>\Eb, -+ is2=\EDF\EC\Eb\EG0\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\Ek\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\E\\3\E-07\s, -+ rmcup=\E\\3\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s, -+ smkx=\El, use=tvi950, -+# From: Andreas Stolcke <stolcke@icsi.berkeley.edu> -+# (tvi955: removed obsolete ":ma:=^Vj^Kk^Hh^Ll^^H"; -+# removed incorrect (and overridden) ":do=^J:"; fixed broken continuations in -+# the :rs: string, inserted the <ich> implied by the termcap :ko: string. Note -+# the :ko: string had :cl: in it, which means that one of the original -+# <clear=\E*>, <kclr=\EY> had to be wrong; set <kclr=\E*> because that's what -+# the 950 has. Finally, corrected the <kel> string to match the 950 and what -+# ko implies -- esr) -+# If the BSD termcap file was right, <cup=\E=%p1%{32}%+%c%p2%{32}%+%c> would -+# also work. -+tvi955|televideo 955, -+ OTbs, mc5i, msgr@, -+ it#8, xmc@, -+ acsc=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ, blink=\EG2, -+ civis=\E.0, cnorm=\E.2, cud1=^V, cup=\E[%i%p1%d;%p2%dH, -+ cvvis=\E.1, dim=\E[=5h, ind@, invis=\EG1, -+ is2=\E[=3l\EF1\Ed\EG0\E[=5l\E%\El, kctab=\E2, khts=\E1, -+ knp=\EK, kpp=\EJ, krmir=\EQ, ktbc=\E3, mc0=\EP, rmacs=\E%%, -+ rmam=\E[=7l, rmxon=^N, -+ rs1=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee \017\E0P\E6\0\E0p\E4\0\Ef\r, -+ sgr0=\EG0\E[=5l, smacs=\E$, smam=\E[=7h, smxon=^O, -+ use=tvi950, -+tvi955-w|955-w|televideo955 w/132 cols, -+ cols#132, -+ is2=\E[=3h\EF1\Ed\EG0\E[=5l\E%\El, use=tvi955, -+# use half-intensity as normal mode, full intensity as <bold> -+tvi955-hb|955-hb|televideo955 half-bright, -+ bold=\E[=5l, dim@, is2=\E[=3l\EF1\Ed\EG0\E[=5h\E%\El, -+ sgr0=\EG0\E[=5h, use=tvi955, -+# From: Humberto Appleton <beto@cs.utexas.edu>, 880521 UT Austin -+# (tvi970: removed ":sg#0:"; removed <rmso>=\E[m, <rmul>=\E[m; -+# added <am>/<csr>/<home>/<hpa>/<vpa>/<smcup>/<rmcup> from BRL. -+# According to BRL we could have <rmkx>=\E>, <smkx>=\E= but I'm not sure what -+# it does to the function keys. I deduced <rmam>/<smam>. -+# also added empty <acsc> to suppress tic warning, -- esr) -+tvi970|televideo 970, -+ OTbs, OTpt, am, da, db, mir, msgr, - cols#80, it#8, lines#24, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H, -- cnorm=\E[>l, cr=^M, cub=\E[%p1%dD, cub1=\E[D, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[>h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ed=\E[0J, el=\E[0K, el1=\E[2K, home=\E[H, ht=^I, -- il=\E[%p1%dL, il1=\E[L, ind=^J, -- is1=\EPr\\E[0u\E[2J\E[0;0H\E[m\E[3l\E[<l\E[4l\E[>l\E[=l\E[?l, -- kbs=^H, kcmd=\E!, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kf0=\E[00s, kf1=\E[01s, kf18=\E[18s, -- kf19=\E[19s, kf2=\E[02s, kf20=\E[20s, kf21=\E[21s, -- kf22=\E[22s, kf23=\E[23s, kf24=\E[24s, kf26=\E[26s, -- kf3=\E[03s, kf4=\E[04s, kf5=\E[05s, kf6=\E[06s, -- krfr=\E[27s, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, -- rmacs=\E[10m, rmam=\E[11;1j, rmir=\E[4l, rmso=\E[m, -- rmul=\E[m, rs1=\Ec, sc=\E7, sgr0=\E[m, smacs=\E[11m, -- smam=\E[11;0j, smir=\E[4h, smso=\E[1m, smul=\E[4m, -+ acsc=, cbt=\E[Z, clear=\E[H\E[2J, csr=\E[%i%p1%d;%p2%dr, -+ cub1=^H, cud1=\ED, cuf1=\E[C, cup=\E[%i%p1%d;%p2%df, -+ cuu1=\EM, cvvis=\E[1Q, dch1=\E[P, dl1=\E[M, dsl=\Eg\Ef\r, -+ ed=\E[J, el=\E[K, flash=\E[5m$<200/>\E[m, home=\E[H, -+ hpa=\E[%i%p1%dG, ht=^I, il1=\E[L, -+ is2=\E<\E[?21l\E[19h\E[1Q\E[10l\E[7l\E[H\E[2J, -+ kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kf1=\E?a, kf2=\E?b, kf3=\E?c, kf4=\E?d, kf5=\E?e, kf6=\E?f, -+ kf7=\E?g, kf8=\E?h, kf9=\E?i, khome=\E[H, ri=\EM, rmacs=\E(B, -+ rmam=\E[?7h, rmcup=, rmir=\E[4l, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, smacs=\E(B, smam=\E[?7l, -+ smcup=\E[?20l\E[?7h\E[1Q, smir=\E[4h, smso=\E[7m, -+ smul=\E[4m, vpa=\E[%i%p1%dd, -+tvi970-vb|televideo 970 with visual bell, -+ flash=\E[?5h\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l, -+ use=tvi970, -+tvi970-2p|televideo 970 with using 2 pages of memory, -+ rmcup=\E[H\E[J\E[V, smcup=\E[U\E[?20l\E[?7h\E[1Q, -+ use=tvi970, -+# Works with vi and rogue. NOTE: Esc v sets autowrap on, Esc u sets 80 chars -+# per line (rather than 40), Esc K chooses the normal character set. Not sure -+# padding is needed, but adapted from the tvi920c termcap. The <smso> and -+# <smul> strings are klutzy, but at least use no screen space. -+# (tvipt: removed obsolete ":ma=^Kk^Ll^R^L:". I wish we knew <rmam>, -+# its absence means <smam>=\Ev isn't safe to use. -- esr) -+# From: Gene Rochlin <armsis@amber.berkeley.edu> 9/19/84. -+# The <ed>/<kf0>/<kf1>/<khome>/<mc4>, and <mc5> caps are from BRL, which says: -+# F1 and F2 should be programmed as ^A and ^B; required for UNIFY. -+tvipt|televideo personal terminal, -+ OTbs, am, -+ cols#80, lines#24, -+ cbt=\EI, clear=^Z, cub1=^H, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\ER$<5*>, -+ ed=\EY, el=\ET, home=^^, if=/usr/share/tabset/stdcrt, -+ il1=\EE$<5*>, is2=\Ev\Eu\EK, kbs=^H, kcub1=^H, kcud1=^J, -+ kcuf1=^L, kcuu1=^K, kf0=^A, kf1=^B, khome=^^, mc4=^T, mc5=^R, -+ rmso=\EF, rmul=\EF, smso=\EG1@A\EH, smul=\EG1B@\EH, -+# From: Nathan Peterson <nathan@sco.com>, 03 Sep 1996 -+tvi9065|televideo 9065, -+ am, bw, chts, hs, mc5i, mir, msgr, xenl, xon, -+ cols#80, it#8, lh#1, lines#25, lm#0, lw#9, ma#4, nlab#8, vt#0, -+ wnum#0, wsl#30, -+ acsc='r0_jhkglfmeniopqksqtmulvownxj, bel=^G, -+ blink=\EG2, bold=\EG\,, cbt=\EI, civis=\E.0, clear=^Z, -+ cnorm=\E.3, cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, -+ cub1=^H, cud=\E[%p1%dB, cud1=^V, cuf=\E[%p1%dC, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu=\E[%p1%dA, -+ cuu1=^K, cvvis=\E.2, dch=\E[%p1%dP, dch1=\EW, dim=\EGp, -+ dl=\E[%p1%dM, dl1=\ER, dsl=\E_30\r, ech=\E[%p1%d@, ed=\EY, -+ el=\ET, flash=\Eb$<15>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1, -+ ich=\E[%p1%d@, if=/usr/share/tabset/stdcrt, -+ il=\E[%p1%dL, il1=\EE, ind=^J, indn=\E[%p1%dS, invis=\EG1, -+ 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, -+ kdch1=\EW, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^AK\r, -+ kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -+ kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, ll=\E[25;1H, -+ mc0=\E[0;0i, mc4=\Ea, mc5=\E`, nel=^M^J, -+ pfkey=\E|%p1%{48}%+%c3%p2%s\031, -+ 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, rin=\E[%p1%dT, -+ 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, 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[=13.h\E[=14.h\E[=15l\E[=20h\E[=60l\E[=61h\E[=9l\E[=10l\E[=21l\E[=23l\E[=3l\E_40\E_50\En\Ew\Ee \Ex0\0\0\Ex1\0\0\Ex2\0\0\Ex3\0\0\Ex4\0\0\E1, -+ rs3=\E[=19h\E.3\E9\E0O\0\0\0\0\0\E0o\0\0\0\0\0\E0J\177\0\0\0\0, -+ sgr=\EG0%?%p1%t\EGt%;%?%p2%t\EG8%;%?%p3%t\EG4%;%?%p4%t\EG2%;%?%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, - --# The following Terminfo entry describes functions which are supported by --# the AT&T 5430/pt505 terminal software version 1. --att505-24|pt505-24|gs5430-24|AT&T PT505 or 5430 GETSET version 1 24 lines, -- lines#24, -- mc4@, mc5@, rc@, rmam@, sc@, smam@, use=att505, --tt505-22|pt505-22|gs5430-22|AT&T PT505 or 5430 GETSET version 1 22 lines, -- lines#22, use=att505, --# --#### ------------------ TERMINFO FILE CAN BE SPLIT HERE --------------------- --# This cut mark helps make life less painful for people running ncurses tic --# on machines with relatively little RAM. The file can be broken in half here --# cleanly and compiled in sections -- no `use' references cross this cut --# going forward. -+#### Visual (vi) - # -- --#### Ampex (Dialogue) -+# In September 1993, Visual Technology of Westboro, Massachusetts, -+# merged with White Pine Software of Nashua, New Hampshire. - # --# Yes, these are the same people who are better-known for making audio- and --# videotape. I'm told they are located in Redwood City, CA. -+# White Pine Software may be contacted at +1 603/886-9050. -+# Or visit White Pine on the World Wide Web at URL http://www.wpine.com. - # - --# From: <cbosg!ucbvax!SRC:george> Fri Sep 11 22:38:32 1981 --# (ampex80: some capabilities merged in from SCO's entry -- esr) --ampex80|a80|d80|dialogue|dialogue80|ampex dialogue 80, -- OTbs, am, bw, ul, -+# Visual 50 from Beau Shekita, BTL-Whippany <whuxlb!ejs> -+# Recently I hacked together the following termcap for Visual -+# Technology's Visual 50 terminal. It's a slight modification of -+# the vt52 termcap. -+# It's intended to run when the Visual 50 is in vt52 emulation mode -+# (I know what you're thinking; if it's emulating a vt52, then why -+# another termcap? Well, it turns out that the Visual 50 can handle -+# <dl1> and db(?) among other things, which the vt52 can't) -+# The termcap works OK for the most part. The only problem is on -+# character inserts. The whole line gets painfully redrawn for each -+# character typed. Any suggestions? -+# Beau's entry is combined with the vi50 entry from University of Wisconsin. -+# Note especially the <il1> function. <kf4>-<kf6> are really l4-l6 in -+# disguise; <kf7>-<kf9> are really l1-l3. -+vi50|visual 50, -+ OTbs, OTpt, am, da, db, msgr, - cols#80, it#8, lines#24, -- bel=^G, cbt=\EI, clear=\E*$<75>, cr=^M, cub1=^H, cud1=^J, -- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- dch1=\EW, dl1=\ER$<5*>, ed=\Ey, el=\Et, ht=^I, hts=\E1, -- ich1=\EQ, il1=\EE$<5*>, ind=^J, is2=\EA, rmso=\Ek, rmul=\Em, -- smso=\Ej, smul=\El, tbc=\E3, --# This entry was from somebody anonymous, Tue Aug 9 20:11:37 1983, who wrote: --ampex175|ampex d175, -- am, -- cols#80, lines#24, -- bel=^G, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\Ey, el=\Et, home=^^, ich1=\EQ, il1=\EE, ind=^J, -- is2=\EX\EA\EF, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, -- kdch1=\EW, kdl1=\ER, khome=^^, kich1=\EQ, kil1=\EE, ll=^^^K, -- rmcup=\EF, rmso=\Ek, rmul=\Em, smcup=\EN, smso=\Ej, smul=\El, --# No backspace key in the main QWERTY cluster. Fortunately, it has a --# NEWLINE/PAGE key just above RETURN that sends a strange single-character --# code. Given a suitable Unix (one that lets you set an echo-erase-as-BS-SP-BS --# mode), this key can be used as the erase key; I find I like this. Because --# some people and some systems may not, there is another termcap ("ampex175") --# that suppresses this little eccentricity by omitting the relevant capability. --ampex175-b|ampex d175 using left arrow for erase, -- kbs=^_, use=ampex175, --# From: Richard Bascove <atd!dsd!rcb@ucbvax.berkeley.edu> --# (ampex210: removed obsolete ":kn#10:" -- esr) --ampex210|a210|ampex a210, -- OTbs, am, hs, xenl, -- cols#80, it#8, lines#24, xmc#1, -- cbt=\EI, clear=\E*, cub1=^H, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\Ey, el=\Et, flash=\EU\EX\EU\EX\EU\EX\EU\EX, -- fsl=\E.2, home=^^, ht=^I, ich1=\EQ, -- if=/usr/share/tabset/std, il1=\EE, invis@, -- is2=\EC\Eu\E'\E(\El\EA\E%\E{\E.2\EG0\Ed\En, kcub1=^H, -- kcud1=^V, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r, -- kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r, -- kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, khome=^^, -- tsl=\E.0\Eg\E}\Ef, use=adm+sgr, --# (ampex219: I added <rmam>/<smam> based on the init string, added <cvvis> --# from ampex219w, added <cnorm>=\E[?3l, irresistibly suggested by <cvvis>, --# and moved the padding to be *after* the caps -- esr) --ampex219|ampex-219|amp219|Ampex with Automargins, -- hs, xenl, -+ OTnl=^J, bel=^G, cbt=\Ez$<4/>, clear=\EH\EJ, cr=^M, cub1=^H, -+ cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -+ cuu1=\EA, dl1=\EM$<3*/>, ed=\EJ, el=\EK$<16/>, home=\EH, -+ ht=^I, il1=\EL, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, -+ kcuf1=\EC, kcuu1=\EA, kf1=\EP, kf2=\EQ, kf3=\ER, kf4=\EV, -+ kf5=\EE, kf6=\E], kf7=\EL, kf8=\Ev, kf9=\EM, khome=\EH, -+ nel=^M^J, ri=\EI, rmso=\ET, rmul=\EW, smso=\EU, smul=\ES, -+# this one was BSD & SCO's vi50 -+vi50adm|visual 50 in adm3a mode, -+ am, msgr, - cols#80, it#8, lines#24, -- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, cbt=\E[Z, -- clear=\E[H\E[2J$<50>, cnorm=\E[?3l, cr=^M, -- csr=%i\E[%p1%2d;%p2%2dr, cub1=^H, cud1=\E[B, -- cuf1=\E[C$<2>, cup=\E[%i%p1%d;%p2%dH$<5>, -- cuu1=\E[A$<2>, cvvis=\E[?3h, dim=\E[1m, ed=\E[J$<50>, -- el=\E[K$<3>, home=\E[H, ht=^I, ind=^J, -- is2=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\E[21~, -- kf1=\E[7~, kf2=\E[8~, kf3=\E[9~, kf4=\E[10~, kf5=\E[11~, -- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H, -- rev=\E[7m, ri=\EM$<5>, rmam=\E[?7l, rmkx=\E>, -- rmso=\E[m$<2>, rmul=\E[m$<2>, sgr0=\E[m$<2>, smam=\E[?7h, -- smkx=\E=, smso=\E[7m$<2>, smul=\E[4m$<2>, --ampex219w|ampex-219w|amp219w|Ampex 132 cols, -- cols#132, lines#24, -- bel=^G, cr=^M, cud1=^J, ind=^J, -- is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, use=ampex219, --# (ampex232: removed <if=/usr/share/tabset/ampex>, no file and no <hts> --esr) --ampex232|ampex-232|Ampex Model 232, -- am, -- cols#80, lines#24, xmc#1, -- cbt=\EI, civis=\E.0, clear=\E+, cnorm=\E.4, cub1=^H, cud1=^V, -- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- dch1=\EW, dl1=\ER$<5*/>, ed=\EY, el=\ET, -- flash=\Eb$<200/>\Ed, ht=^I, ich1=\EQ, il1=\EE$<5*/>, -- invis@, is2=\Eg\El, kbs=^H, kcub1=^H, kcud1=^V, kcuf1=^L, -- kcuu1=^K, kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, -- kf4=^AD\r, kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, -- kf9=^AI\r, khome=^^, use=adm+sgr, --# (ampex: removed <if=/usr/share/tabset/amp-132>, no file and no <hts> -- esr) --ampex232w|Ampex Model 232 / 132 columns, -- cols#132, lines#24, -- is2=\E\034Eg\El, use=ampex232, -+ bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\EM, -+ ed=\Ek, el=\EK, home=\EH, ht=^I, il1=\EL, ind=^J, kbs=^H, -+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\EH, -+ rmso=\ET, smso=\EU, -+# From: Jeff Siegal <jbs@quiotix.com> -+vi55|Visual 55, -+ OTbs, am, mir, msgr, -+ cols#80, it#8, lines#24, -+ clear=\Ev, csr=\E_%p1%{65}%+%c%p2%{65}%+%c, cub1=^H, -+ cud1=^J, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -+ cuu1=\EA, dch1=\Ew, dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I, -+ il1=\EL, is2=\Ev\E_AX\Eb\EW\E9P\ET, kbs=^H, kcub1=\ED, -+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, ri=\EI, rmir=\Eb, rmso=\ET, -+ smir=\Ea, smso=\EU, - --#### Ann Arbor (aa) --# --# Ann Arbor made dream terminals for hackers -- large screen sizes and huge --# numbers of function keys. At least some used monitors in portrait mode, --# allowing up to 76-character screen heights! They were reachable at: --# --# Ann Arbor Terminals --# 6175 Jackson Road --# Ann Arbor, MI 48103 --# (313)-663-8000 --# --# But in 1996 the phone number reaches some kitschy retail shop, and Ann Arbor --# can't be found on the Web; I fear they're long dead. R.I.P. --# -+# Visual 200 from BRL -+# The following switch settings are assumed for normal operation: -+# FULL_DUPLEX SCROLL CR -+# AUTO_NEW_LINE_ON VISUAL_200_EMULATION_MODE -+# Other switches may be set for operator convenience or communication -+# requirements. -+# Character insertion is kludged in order to get around the "beep" misfeature. -+# (This cap is commented out because <smir>/<rmir> is more efficient -- esr) -+# Supposedly "4*" delays should be used for <il1>, <ed>, <clear>, <dch1>, -+# and <dl1> strings, but we seem to get along fine without them. -+vi200|visual 200, -+ OTbs, OTpt, am, mir, msgr, -+ OTkn#10, cols#80, it#8, lines#24, -+ acsc=, bel=^G, cbt=\Ez, clear=\Ev, cnorm=\Ec, cr=^M, cub1=^H, -+ cud1=^J, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -+ cuu1=\EA, cvvis=\Ed, dch1=\EO, dim=\E4, dl1=\EM, ed=\Ey, -+ el=\Ex, home=\EH, ht=^I, hts=\E1, il1=\EL, ind=^J, invis=\Ea, -+ kbs=^H, kclr=\Ev, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -+ kcuu1=\EA, kdch1=\EO, kdl1=\EM, ked=\EJ, kel=\Et, kf0=\E?p, -+ kf1=\E?q, kf2=\E?r, kf3=\E?s, kf4=\E?t, kf5=\E?u, kf6=\E?v, -+ kf7=\E?w, kf8=\E?x, kf9=\E?y, khome=\EH, khts=\E1, kich1=\Ei, -+ kil1=\EL, krmir=\Ej, mc0=\EH\E], mc4=\EX, mc5=\EW, ri=\EI, -+ rmacs=\EG, rmkx=\E>, rmso=\E3, -+ rs1=\E3\Eb\Ej\E\El\EG\Ec\Ek\EX, sgr0=\E3\Eb, smacs=\EF, -+ smkx=\E=, smso=\E4, tbc=\Eg, -+# The older Visuals didn't come with function keys. This entry uses -+# <smkx> and <rmkx> so that the keypad keys can be used as function keys. -+# If your version of vi doesn't support function keys you may want -+# to use vi200-f. -+vi200-f|visual 200 no function keys, -+ is2=\E3\Eb\Ej\E\\\El\EG\Ed\Ek, kf0=\E?p, kf1=\E?q, -+ kf2=\E?r, kf3=\E?s, kf4=\E?t, kf5=\E?u, kf6=\E?v, kf7=\E?w, -+ kf8=\E?x, kf9=\E?y, rmkx=\E>, rmso@, smkx=\E=, smso@, -+ use=vi200, -+vi200-rv|visual 200 reverse video, -+ cnorm@, cvvis@, ri@, rmso=\E3, smso=\E4, use=vi200, - -+# the function keys are programmable but we don't reprogram them to their -+# default values with <is2> because programming them is very verbose. maybe -+# an initialization file should be made for the 300 and they could be stuck -+# in it. -+# (vi300: added <rmam>/<smam> based on init string -- esr) -+vi300|visual 300 ansi x3.64, -+ am, bw, mir, xenl, -+ cols#80, lines#24, -+ bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -+ dch1=\E[P$<40>, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, -+ il1=\E[L, ind=^J, -+ is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[1Q\E[0;1(D\E[8s, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kf1=\E_A\E\\, kf2=\E_B\E\\, kf3=\E_C\E\\, kf4=\E_D\E\\, -+ kf5=\E_E\E\\, kf6=\E_F\E\\, kf7=\E_G\E\\, kf8=\E_H\E\\, -+ kf9=\E_I\E\\, khome=\E[H, ri=\EM, rmam=\E[?7l, rmir=\E[4l, -+ rmso=\E[m, rmul=\E[m, sgr0=\E[m, smam=\E[?7h, smir=\E[4h, -+ smso=\E[1m, smul=\E[4m, -+# some of the vi300s have older firmware that has the command -+# sequence for setting editing extent reversed. -+vi300-old|visual 300 with old firmware (set edit extent reversed), -+ is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[2Q\E[0;1(D\E[8s, -+ use=vi300, - --# Originally from Mike O'Brien@Rand and Howard Katseff at Bell Labs. --# Highly modified 6/22 by Mike O'Brien. --# split out into several for the various screen sizes by dave-yost@rand --# Modifications made 3/82 by Mark Horton --# Modified by Tom Quarles at UCB for greater efficiency and more diversity --# status line moved to top of screen, <flash> removed 5/82 --# Some unknown person at SCO then hacked the init strings to make them more --# efficient. --# --# assumes the following setup: --# A menu: 0000 1010 0001 0000 --# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19 --# C menu: 56 66 0 0 9600 0110 1100 --# D menu: 0110 1001 1 0 --# --# Briefly, the settings are for the following modes: --# (values are for bit set/clear with * indicating our preference --# and the value used to test these termcaps) --# Note that many of these settings are irrelevent to the terminfo --# and are just set to the default mode of the terminal as shipped --# by the factory. -+# Visual 500 prototype entry from University of Wisconsin. -+# The best place to look for the escape sequences is page A1-1 of the -+# Visual 500 manual. The initialization sequence given here may be -+# overkill, but it does leave out some of the initializations which can -+# be done with the menus in set-up mode. -+# The :xp: line below is so that emacs can understand the padding requirements -+# of this slow terminal. :xp: is 10 time the padding factor. -+# (vi500: removed unknown :xp#4: termcap; -+# also added empty <acsc> to suppress tic warning -- esr) -+vi500|visual 500, -+ am, mir, msgr, -+ cols#80, it#8, lines#33, -+ acsc=, cbt=\Ez$<4/>, clear=\Ev$<6*/>, cr=^M, -+ csr=\E(%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=\EB, -+ cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, -+ dch1=\EO$<3*/>, dl1=\EM$<3*/>, ed=\Ey$<3*/>, -+ el=\Ex$<16/>, home=\EH, ht=\011$<8/>, il1=\EL\Ex$<3*/>, -+ ind=^J, -+ is2=\E3\E\001\E\007\E\003\Ek\EG\Ed\EX\El\E>\Eb\E\\, -+ kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -+ khome=\EH, nel=^M^J, rmacs=^O, rmir=\Ej, rmso=\E^G, -+ rmul=\E^C, smacs=^N, smir=\Ei, smso=\E^H, smul=\E^D, -+ -+# The visual 550 is a visual 300 with tektronix graphics, -+# and with 33 lines. clear screen is modified here to -+# also clear the graphics. -+vi550|visual 550 ansi x3.64, -+ lines#33, -+ clear=\030\E[H\E[2J, use=vi300, -+ -+vi603|visual603|visual 603, -+ hs, mir, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, -+ csr=\E[%i%p1%d;%p2%dr, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -+ dsl=\EP2;1~\E\\, ed=\E[J, el=\E[K, fsl=\E\\, il1=\E[L, -+ ind=\ED, is1=\E>\E[?3l\E[?4l\E[?7h\E[?8h\E[1;24r, -+ rev=\E[7m, ri=\EM, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, -+ sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, tsl=\EP2~, -+ use=vt100, -+ -+#### Wyse (wy) - # --# A menu: 0000 1010 0001 0000 --# Block/underline cursor* --# blinking/nonblinking cursor* --# key click/no key click* --# bell/no bell at column 72* -+# Wyse Technology -+# 3471 North First Street -+# San Jose, CA 95134 -+# Vox: (408)-473-1200 -+# Fax: (408) 473-1222 -+# Web: http://www.wyse.com - # --# key pad is cursor control*/key pad is numeric --# return and line feed/return for <cr> key * --# repeat after .5 sec*/no repeat --# repeat at 25/15 chars per sec. * -+# Wyse sales can be reached by phone at 1-800-GET-WYSE. Tech support is at -+# (800)-800-WYSE (option 5 gets you a human). There's a Web page at the -+# obvious address, <http://www.wyse.com>. They keep terminfo entries at -+# <http://www.wyse.co.uk/support/appnotes/idxappnt.htm>. - # --# hold data until pause pressed/process data unless pause pressed* --# slow scroll/no slow scroll* --# Hold in area/don't hold in area* --# functions keys have default*/function keys disabled on powerup -+# Wyse bought out Link Technology, Inc. in 1990 and closed it down in 1995. -+# They now own the Qume and Amdek brands, too. So these are the people to -+# talk with about all Link, Qume, and Amdek terminals. - # --# show/don't show position of cursor during page transmit* --# unused --# unused --# unused -+# These entries include a few small fixes. -+# I canceled the bel capacities in the vb entries. -+# I made two trivial syntax fixes in the wyse30 entry. -+# I made some entries relative to adm+sgr. - # --# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19 --# Baud rate (9600*) - # --# 2 bits of parity - 00=odd,01=even*,10=space,11=mark --# 1 stop bit*/2 stop bits --# parity error detection off*/on --# --# keyboard local/on line* --# half/full duplex* --# disable/do not disable keyboard after data transmission* -+# Note: The wyse75, wyse85, and wyse99 have been discontinued. -+ -+# Although the Wyse 30 can support more than one attribute -+# it requires magic cookies to do so. Many applications do not -+# function well with magic cookies. The following terminfo uses -+# the protect mode to support one attribute (dim) without cookies. -+# If more than one attribute is needed then the wy30-mc terminfo -+# should be used. - # --# transmit entire page/stop transmission at cursor* --# transfer/do not transfer protected characters* --# transmit all characters/transmit only selected characters* --# transmit all selected areas/transmit only 1 selected area* -+wy30|wyse30|Wyse 30, -+ am, bw, hs, mc5i, mir, msgr, xon, -+ cols#80, lh#1, lines#24, lw#8, ma#1, nlab#8, wsl#45, -+ acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, cbt=\EI, -+ civis=\E`0, clear=\E+$<80>, cnorm=\E`1, cr=^M, cub1=^H, -+ cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, -+ cuu1=^K, dch1=\EW$<10>, dim=\E`7\E), dl1=\ER$<1>, -+ dsl=\EF\r, ed=\EY$<80>, el=\ET, flash=\E`8$<100/>\E`9, -+ fsl=^M, home=^^, ht=\011$<1>, hts=\E1, il1=\EE$<2>, -+ ind=\n$<2>, ip=$<2>, is2=\E'\E(\E\^3\E`9\016\024, -+ kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, -+ kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kent=\E7, -+ kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -+ kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, khome=^^, kich1=\EQ, -+ kil1=\EE, knp=\EK, kpp=\EJ, krpl=\Er, ll=^^^K, mc0=\EP, mc4=^T, -+ mc5=^X, nel=^M^J, pfx=\Ez%p1%{63}%+%c%p2%s\177, -+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E`7\E), ri=\Ej$<3>, -+ rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(, -+ sgr=%?%p1%p5%p8%|%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, -+ sgr0=\E(\EH\003, smacs=\EH^B, smir=\Eq, smln=\EA10, -+ smso=\E`7\E), tbc=\E0, tsl=\EF, - # --# transmit/do not transmit line separators to host* --# transmit/do not transmit page tab stops tabs to host* --# transmit/do not transmit column tab stop tabs to host* --# transmit/do not transmit graphics control (underline,inverse..)* -+# This terminal description uses the non-hidden attribute mode -+# (with magic cookie). - # --# enable*/disable auto XON/XOFF control --# require/do not require receipt of a DC1 from host after each LF* --# pause key acts as a meta key/pause key is pause* --# unused -+# (wy30-mc: added <smcup> to suppress tic warning --esr) -+wy30-mc|wyse30-mc|wyse 30 with magic cookies, -+ msgr@, -+ ma@, xmc#1, -+ blink=\EG2, dim=\EGp, prot=\EG0\E), rmacs=\EG0\EH\003, -+ rmcup=\EG0, rmso=\EG0, -+ sgr=\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, -+ sgr0=\EG0\E(\EH\003, smacs=\EG0\EH\002, smcup=, -+ smso=\EG4, use=wy30, use=adm+sgr, -+# The mandatory pause used by <flash> does not work with -+# older versions of terminfo. If you see this effect then -+# unset xon and delete the / from the delay. -+# i.e. change $<100/> to $<100> -+wy30-vb|wyse30-vb|wyse 30 visible bell, -+ bel@, use=wy30, - # --# unused --# unused --# unused --# unused -+# The Wyse 50 can support one attribute (e.g. Dim, Inverse, -+# Normal) without magic cookies by using the protect mode. -+# The following description uses this feature, but when more -+# than one attribute is put on the screen at once, all attributes -+# will be changed to be the same as the last attribute given. -+# The Wyse 50 can support more attributes when used with magic -+# cookies. The wy50-mc terminal description uses magic cookies -+# to correctly handle multiple attributes on a screen. - # --# XON character (17*) --# XOFF character (19*) -+wy50|wyse50|Wyse 50, -+ am, bw, hs, mc5i, mir, msgr, xon, -+ cols#80, lh#1, lines#24, lw#8, ma#1, nlab#8, wsl#45, -+ acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, cbt=\EI, -+ civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, cub1=^H, -+ cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, -+ cuu1=^K, dch1=\EW$<1>, dim=\E`7\E), dl1=\ER, dsl=\EF\r, -+ ed=\EY$<20>, el=\ET, flash=\E`8$<100/>\E`9, fsl=^M, -+ home=^^, ht=^I, hts=\E1, il1=\EE, ind=\n$<2>, ip=$<1>, -+ is1=\E`\:\E`9$<30>, is2=\016\024\E'\E(, kHOM=\E{, kbs=^H, -+ kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, -+ kdl1=\ER, ked=\EY, kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, -+ kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, -+ kf16=^AO\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -+ kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -+ kich1=\EQ, kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, -+ ll=^^^K, mc0=\EP, mc4=^T, mc5=^X, nel=^M^J, -+ pfx=\Ez%p1%{63}%+%c%p2%s\177, -+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E`7\E), rev=\E`6\E), -+ ri=\Ej, rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(, -+ sgr=%?%p1%p3%|%t\E`6\E)%e%p5%p8%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, -+ sgr0=\E(\EH\003, smacs=\EH^B, smir=\Eq, smln=\EA10, -+ smso=\E`6\E), tbc=\E0, tsl=\EF, - # --# C menu: 56 66 0 0 9600 0110 1100 --# number of lines to print data on (printer) (56*) -+# This terminal description uses the non-hidden attribute mode -+# (with magic cookie). - # --# number of lines on a sheet of paper (printer) (66*) -+# The mandatory pause used by flash does not work with some -+# older versions of terminfo. If you see this effect then -+# unset <xon> and delete the / from the delay. -+# i.e. change $<100/> to $<100> -+# (wy50-mc: added <smcup> to suppress tic warning --esr) -+wy50-mc|wyse50-mc|wyse 50 with magic cookies, -+ msgr@, -+ ma@, xmc#1, -+ blink=\EG2, dim=\EGp, prot=\EG0\E), rev=\EG4, -+ rmacs=\EG0\EH\003, rmcup=\EG0, rmso=\EG0, -+ sgr=\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, -+ sgr0=\EG0\E(\EH\003, smacs=\EG0\EH\002, smcup=, -+ smso=\EGt, use=wy50, use=adm+sgr, -+wy50-vb|wyse50-vb|wyse 50 visible bell, -+ bel@, use=wy50, -+wy50-w|wyse50-w|wyse 50 132-column, -+ cols#132, lw#7, nlab#16, wsl#97, -+ cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<2>, is1=\E`;\E`9$<30>, -+ use=wy50, -+wy50-wvb|wyse50-wvb|wyse 50 132-column visible bell, -+ bel@, use=wy50-w, -+ - # --# left margin (printer) (0*) -+# The Wyse 350 is a Wyse 50 with color. -+# Unfortunately this means that it has magic cookies. -+# The color attributes are designed to overlap the reverse, dim and -+# underline attributes. This is nice for monochrome applications -+# because you can make underline stuff green (or any other color) -+# but for true color applications it's not so hot because you cannot -+# mix color with reverse, dim or underline. -+# To further complicate things one of the attributes must be -+# black (either the foreground or the background). In reverse video -+# the background changes color with black letters. In normal video -+# the foreground changes colors on a black background. -+# This terminfo uses some of the more advanced features of curses -+# to display both color and blink. In the final analysis I am not -+# sure that the wy350 runs better with this terminfo than it does -+# with the wy50 terminfo (with user adjusted colors). - # --# number of pad chars on new line to printer (0*) -+# The mandatory pause used by flash does not work with -+# older versions of terminfo. If you see this effect then -+# unset xon and delete the / from the delay. -+# i.e. change $<100/> to $<100> - # --# printer baud rate (9600*) -+# Bug: The <op> capability resets attributes. -+wy350|wyse350|Wyse 350, -+ am, bw, hs, mc5i, mir, xon, -+ colors#8, cols#80, lh#1, lines#24, lw#8, ncv#55, nlab#8, pairs#8, -+ wsl#45, xmc#1, -+ acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, blink=\EG2, -+ cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, -+ cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<1>, -+ dim=\EGp, dl1=\ER, dsl=\EF\r, ed=\EY$<20>, el=\ET, -+ flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=^I, hts=\E1, -+ il1=\EE, ind=\n$<2>, ip=$<1>, is1=\E`\:\E`9$<30>, -+ is2=\016\024\E'\E(, is3=\E%?, kHOM=\E{, kbs=^H, kcbt=\EI, -+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, -+ ked=\EY, kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, -+ kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, -+ kf16=^AO\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -+ kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -+ kich1=\EQ, kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, -+ ll=^^^K, mc0=\EP, mc4=^T, mc5=^X, nel=^M^J, oc=\E%?, op=\EG0, -+ pfx=\Ez%p1%{63}%+%c%p2%s\177, -+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\EG0\E), ri=\Ej, -+ rmacs=\EG0\EH\003, rmir=\Er, rmln=\EA11, setb=, -+ setf=%?%p1%{0}%=%t%{76}%e%p1%{1}%=%t%{64}%e%p1%{2}%=%t%{8}%e%p1%{3}%=%t%{72}%e%p1%{4}%=%t%{4}%e%p1%{5}%=%t%{68}%e%p1%{6}%=%t%{12}%e%p1%{7}%=%t%{0}%;%PC\EG%gC%gA%+%{48}%+%c, -+ sgr=%{0}%?%p4%t%{2}%|%;%?%p7%t%{1}%|%;%PA\EG%?%gC%t%gC%e%{0}%?%p1%t%{4}%|%;%?%p2%t%{8}%|%;%?%p3%t%{4}%|%;%?%p5%t%{64}%|%;%;%gA%+%{48}%+%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;, -+ sgr0=\EG0\E(\EH\003%{0}%PA%{0}%PC, smacs=\EG0\EH\002, -+ smir=\Eq, smln=\EA10, tbc=\E0, tsl=\EF, use=adm+sgr, -+wy350-vb|wyse350-vb|wyse 350 visible bell, -+ bel@, use=wy350, -+wy350-w|wyse350-w|wyse 350 132-column, -+ cols#132, lw#7, nlab#16, wsl#97, -+ cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<2>, is1=\E`;\E`9$<30>, -+ use=wy350, -+wy350-wvb|wyse350-wvb|wyse 350 132-column visible bell, -+ bel@, use=wy350-w, - # --# printer parity: 00=odd,01=even*,10=space,11=mark --# printer stop bits: 2*/1 --# print/do not print guarded areas* -+# This terminfo description is untested. -+# The wyse100 emulates an adm31, so the adm31 entry should work. - # --# new line is: 01=LF,10=CR,11=CRLF* --# unused --# unused -+wy100|wyse 100, -+ hs, mir, -+ cols#80, lines#24, xmc#1, -+ bel=^G, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, dsl=\EA31, ed=\EY, el=\ET, fsl=^M, il1=\EE, ind=^J, -+ invis@, is2=\Eu\E0, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, -+ kcuu1=^K, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, -+ kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, khome=\E{, -+ rmir=\Er, smir=\Eq, tsl=\EF, use=adm+sgr, - # --# D menu: 0110 1001 1 0 --# LF is newline/LF is down one line, same column* --# wrap to preceding line if move left from col 1*/don't wrap --# wrap to next line if move right from col 80*/don't wrap --# backspace is/is not destructive* -+# The Wyse 120/150 has most of the features of the Wyse 60. -+# This terminal does not need padding up to 9600 baud! -+# <msgr> should be set but the clear screen fails when in -+# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear -+# then set <msgr>. - # --# display*/ignore DEL character --# display will not/will scroll* --# page/column tab stops* --# erase everything*/erase unprotected only -+wy120|wyse120|wy150|wyse150|Wyse 120/150, -+ am, bw, hs, km, mc5i, mir, msgr, xon, -+ cols#80, it#8, lh#1, lines#24, lw#8, nlab#8, pb#9601, wsl#45, -+ acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, -+ bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<50>, -+ cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<7>, -+ dim=\EGp, dl1=\ER$<3>, dsl=\EF\r, ed=\EY$<50>, el=\ET$<4>, -+ flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=\011$<1>, -+ hts=\E1, il1=\EE$<3>, ind=\n$<3>, ip=$<2>, is1=\EcB0\EcC1, -+ is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, -+ is3=\EwJ\Ew1$<150>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, -+ kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, -+ kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -+ kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, -+ kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -+ kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, -+ kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=^^^K, -+ mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<3>, -+ pfloc=\EZ2%p1%{63}%+%c%p2%s\177, -+ pfx=\EZ1%p1%{63}%+%c%p2%s\177, -+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<2>, -+ rmacs=\EcD, rmam=\Ed., rmcup=\Ew1, rmir=\Er, rmln=\EA11, -+ rmxon=\Ec20, rs1=\E~!\E~4$<30>, rs2=\EeF\E`\:$<70>, -+ rs3=\EwG\Ee($<100>, -+ sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, -+ sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, -+ smcup=\Ew0, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21, -+ tbc=\E0, tsl=\EF, use=adm+sgr, - # --# editing extent: 0=display,1=line*,2=field,3=area -+wy120-w|wyse120-w|wy150-w|wyse150-w|wyse 120/150 132-column, -+ cols#132, lw#7, nlab#16, wsl#97, -+ cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<12>, ip=$<4>, -+ rs2=\E`;$<70>, use=wy120, - # --# unused -+wy120-25|wyse120-25|wy150-25|wyse150-25|wyse 120/150 80-column 25-lines, -+ lh@, lines#25, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<100>, use=wy120, - # -+wy120-25-w|wyse120-25-w|wy150-25-w|wyse150-25-w|wyse 120/150 132-column 25-lines, -+ lh@, lines#25, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<100>, use=wy120-w, -+# -+wy120-vb|wyse120-vb|wy150-vb|wyse150-vb|Wyse 120/150 visible bell, -+ bel@, use=wy120, -+# -+wy120-w-vb|wy120-wvb|wyse120-wvb|wy150-w-vb|wyse150-w-vb|Wyse 120/150 132-column visible bell, -+ bel@, use=wy120-w, -+# -+# The Wyse 60 is like the Wyse 50 but with more padding. -+# The reset strings are slow and the pad times very depending -+# on other parameters such as font loading. I have tried -+# to follow the following outline: -+# -+# <rs1> -> set personality -+# <rs2> -> set number of columns -+# <rs3> -> set number of lines -+# <is1> -> select the proper font -+# <is2> -> do the initialization -+# <is3> -> set up display memory (2 pages) -+# -+# The Wyse 60's that have vt100 emulation are slower than the -+# older Wyse 60's. This change happened mid-1987. -+# The capabilities effected are <dch1> <dl1> <il1> <ind> <ri> -+# -+# The meta key is only half right. This terminal will return the -+# high order bit set when you hit CTRL-function_key -+# -+# It may be useful to assign two function keys with the -+# values \E=(\s look at old data in page 1 -+# \E=W, look at bottom of page 1 -+# where \s is a space ( ). -+# -+# Note: -+# The Wyse 60 runs faster when the XON/XOFF -+# handshake is turned off. -+# -+# (wy60: we use \E{ rather than ^^ for home (both are documented) to avoid -+# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr) -+wy60|wyse60|Wyse 60, -+ am, bw, hs, km, mc5i, mir, msgr, -+ cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#45, -+ acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, -+ bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<100>, -+ cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ dch1=\EW$<11>, dclk=\E`b, dim=\EGp, dl1=\ER$<5>, dsl=\EF\r, -+ ed=\EY$<100>, el=\ET, flash=\E`8$<100/>\E`9, fsl=^M, -+ home=\E{, ht=\011$<1>, hts=\E1, il1=\EE$<4>, ind=\n$<5>, -+ ip=$<3>, is1=\EcB0\EcC1, -+ is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, -+ is3=\EwJ\Ew1$<150>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, -+ kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, -+ kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -+ kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, -+ kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -+ kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, -+ kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=\E{^K, -+ mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<3>, -+ pfloc=\EZ2%p1%{63}%+%c%p2%s\177, -+ pfx=\EZ1%p1%{63}%+%c%p2%s\177, -+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<7>, -+ rmacs=\EcD, rmam=\Ed., rmclk=\E`c, rmcup=\Ew1, rmir=\Er, -+ rmln=\EA11, rmxon=\Ec20, rs1=\E~!\E~4$<150>, -+ rs2=\EeG$<150>, rs3=\EwG\Ee($<200>, -+ sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, -+ sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, -+ smcup=\Ew0, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21, -+ tbc=\E0, tsl=\EF, use=adm+sgr, -+# -+wy60-w|wyse60-w|wyse 60 132-column, -+ cols#132, lw#7, nlab#16, wsl#97, -+ cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<16>, ip=$<5>, -+ rs2=\EeF$<150>\E`;$<150>, use=wy60, -+# -+wy60-25|wyse60-25|wyse 60 80-column 25-lines, -+ lh@, lines#25, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<200>, use=wy60, -+wy60-25-w|wyse60-25-w|wyse 60 132-column 25-lines, -+ lh@, lines#25, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<200>, use=wy60-w, -+# -+wy60-42|wyse60-42|wyse 60 80-column 42-lines, -+ lines#42, -+ clear=\E+$<260>, cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<2>, -+ dch1=\EW$<16>, dl1=\ER$<11>, ed=\Ey$<260>, il1=\EE$<11>, -+ ind=\n$<9>, ip=$<5>, is1=\EcB2\EcC3, nel=\r\n$<6>, -+ ri=\Ej$<10>, rs3=\Ee*$<150>, use=wy60, -+wy60-42-w|wyse60-42-w|wyse 60 132-column 42-lines, -+ cols#132, lw#7, nlab#16, wsl#97, -+ clear=\E+$<260>, cup=\Ea%i%p1%dR%p2%dC$<2>, -+ dch1=\EW$<19>, ed=\Ey$<260>, home=\036$<2>, ip=$<6>, -+ nel=\r\n$<11>, rs2=\EeF$<150>\E`;$<150>, use=wy60-42, -+# -+wy60-43|wyse60-43|wyse 60 80-column 43-lines, -+ lh@, lines#43, lw@, nlab@, -+ pln@, rs3=\Ee+$<150>, use=wy60-42, -+wy60-43-w|wyse60-43-w|wyse 60 132-column 43-lines, -+ lh@, lines#43, lw@, nlab@, -+ pln@, rs3=\Ee+$<150>, use=wy60-42-w, -+# -+wy60-vb|wyse60-vb|Wyse 60 visible bell, -+ bel@, use=wy60, -+wy60-w-vb|wy60-wvb|wyse60-wvb|Wyse 60 132-column visible bell, -+ bel@, use=wy60-w, - --annarbor4080|aa4080|ann arbor 4080, -- OTbs, am, -- cols#80, lines#40, -- bel=^G, clear=\014$<2>, cr=^M, cub1=^H, cud1=^J, cuf1=^_, -- cup=\017%p2%{10}%/%{16}%*%p2%{10}%m%+%c%p1%?%p1%{19}%>%t%{12}%+%;%{64}%+%c, -- cuu1=^N, home=^K, ht=^I, hts=^]^P1, ind=^J, kbs=^^, kcub1=^H, -- kcud1=^J, kcuf1=^_, kcuu1=^N, khome=^K, tbc=^\^P^P, -+# The Wyse-99GT looks at lot like the Wyse 60 except that it -+# does not have the 42/43 line mode. In the Wyse-60 the "lines" -+# setup parameter controls the number of lines on the screen. -+# For the Wyse 99GT the "lines" setup parameter controls the -+# number of lines in a page. The screen can display 25 lines max. -+# The Wyse-99GT also has personalities for the VT220 and -+# Tektronix 4014. But this has no bearing on the native mode. -+# -+# (msgr) should be set but the clear screen fails when in -+# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear -+# then set msgr, else use msgr@. -+# -+# u0 -> enter Tektronix mode -+# u1 -> exit Tektronix mode -+# -+wy99gt|wyse99gt|Wyse 99gt, -+ msgr@, -+ clear=\E+$<130>, dch1=\EW$<7>, dl1=\ER$<4>, ed=\Ey$<130>, -+ el=\Et$<5>, flash=\E`8$<100/>\E`9, ht=\011$<1>, -+ il1=\EE$<4>, ind=\n$<4>, ip=$<2>, is3=\Ew0$<20>, nel@, -+ ri=\Ej$<3>, rmcup=\Ew0, rs2=\E`\:$<150>, smcup=\Ew1, -+ u0=\E~>\E8, u1=\E[42h, use=wy60, -+# -+wy99gt-w|wyse99gt-w|wyse 99gt 132-column, -+ cols#132, lw#7, nlab#16, wsl#97, -+ clear=\E+$<160>, cup=\Ea%i%p1%dR%p2%dC$<2>, -+ dch1=\EW$<9>, ed=\Ey$<160>, ip=$<4>, rs2=\E`;$<150>, -+ use=wy99gt, -+# -+wy99gt-25|wyse99gt-25|wyse 99gt 80-column 25-lines, -+ lh@, lines#25, lw@, nlab@, -+ pln@, rs2=\E`\:$<150>, rs3=\EwG\Ee)$<200>, use=wy99gt, -+# -+wy99gt-25-w|wyse99gt-25-w|wyse 99gt 132-column 25-lines, -+ lh@, lines#25, lw@, nlab@, -+ pln@, rs2=\E`;$<150>, use=wy99gt-w, -+# -+wy99gt-vb|wyse99gt-vb|Wyse 99gt visible bell, -+ bel@, use=wy99gt, -+# -+wy99gt-w-vb|wy99gt-wvb|wyse99gt-wvb|Wyse 99gt 132-column visible bell, -+ bel@, use=wy99gt-w, - --# Strange Ann Arbor terminal from BRL --aas1901|Ann Arbor K4080 w/S1901 mod, -- am, -- cols#80, lines#40, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^_, cuu1=^N, -- home=^K, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, ll=^O\0c, -- nel=^M^J, -+# Can't set tabs! Other bugs (ANSI mode only): -+# - can't redefine function keys (anyway, key redefinition in ANSI mode -+# is too much complex to be described); -+# - meta key can't be described (the terminal forgets it when reset); -+# The xon-xoff handshaking can't be disabled while in ansi personality, so -+# emacs can't work at speed greater than 9600 baud. No padding is needed at -+# this speed. -+# dch1 has been commented out because it causes annoying glittering when -+# vi deletes one character at the beginning of a line with tabs in it. -+# dch makes sysgen(1M) have a horrible behaviour when deleting -+# a screen and makes screen(1) behave badly, so it is disabled too. The nice -+# thing is that vi goes crazy if smir-rmir are present and both dch-dch1 are -+# not, so smir and rmir are commented out as well. -+# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 -+wy99-ansi|Wyse WY-99GT in ansi mode (int'l PC keyboard), -+ am, km, mc5i, mir, msgr, xenl, -+ cols#80, it#8, lines#25, vt#3, -+ acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J$<200>, cnorm=\E[34h\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD$<1>, -+ cub1=\010$<1>, cud=\E[%p1%dB, cud1=\ED, -+ cuf=\E[%p1%dC$<1>, cuf1=\E[C$<1>, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM, -+ cvvis=\E[34l\E[?25h, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J$<8*>, el=\E[K$<1>, el1=\E[1K$<1>, -+ enacs=\E)0, flash=\E[?5h$<30/>\E[?5l, home=\E[H, -+ hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, -+ il1=\E[L, ind=\n$<1>, invis=\E[8m, -+ is2=\E7\E[1r\E8\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[4i, -+ kbs=^H, kcbt=\E[z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -+ kcuu1=\EOA, kf1=\EOP, kf10=\E[21~, kf11=\E[23~, -+ kf12=\E[24~, kf17=\E[K, kf18=\E[31~, kf19=\E[32~, kf2=\EOQ, -+ kf20=\E[33~, kf21=\E[34~, kf22=\E[35~, kf23=\E[1~, -+ kf24=\E[2~, kf3=\EOR, kf4=\EOS, kf5=\E[M, kf6=\E[17~, -+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, ll=\E[24E, mc0=\E[?19h, -+ mc4=\E[4i, mc5=\E[5i, nel=\EE, prot=\E[1"q, rc=\E8, -+ rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, -+ rmkx=\E[?1l, rmso=\E[27m, rmul=\E[24m, -+ rs2=\E[61"p\E[40h\E[?6l\E[1r\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[24E\E[4i, -+ sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%O%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m\E[%?%p8%t1%;"q%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017\E["q, smacs=^N, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[?1h, smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, - --# If you're using the GNU termcap library, add --# :cS=\E[%p1%d;%p2%d;%p3%d;%p4%dp: --# to these capabilities. This is the nonstandard GNU termcap scrolling --# capability, arguments are: --# 1. Total number of lines on the screen. --# 2. Number of lines above desired scroll region. --# 3. Number of lines below (outside of) desired scroll region. --# 4. Total number of lines on the screen, the same as the first parameter. --# The generic Ann Arbor entry is the only one that uses this. --aaa+unk|aaa-unk|ann arbor ambassador (internal - don't use this directly), -- OTbs, am, km, mc5i, mir, xon, -- cols#80, it#8, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -- clear=\E[H\E[J$<156>, cr=^M, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^K, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -- el=\E[K$<5>, home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, -- hts=\EH, ich=\E[%p1%d@$<4*>, ich1=\E[@$<4>, il=\E[%p1%dL, -- il1=\E[L$<3>, ind=^K, invis=\E[8m, is1=\E[m\E7\E[H\E9\E8, -- is3=\E[1Q\E[>20;30l\EP`+x~M\E\\, kbs=^H, kcbt=\E[Z, -- kclr=\E[J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E[P, kdl1=\E[M, kf1=\EOA, kf10=\EOJ, kf11=\EOK, -- kf12=\EOL, kf13=\EOM, kf14=\EON, kf15=\EOO, kf16=\EOP, -- kf17=\EOQ, kf18=\EOR, kf19=\EOS, kf2=\EOB, kf20=\EOT, -- kf21=\EOU, kf22=\EOV, kf23=\EOW, kf24=\EOX, kf3=\EOC, -- kf4=\EOD, kf5=\EOE, kf6=\EOF, kf7=\EOG, kf8=\EOH, kf9=\EOI, -- khome=\E[H, kich1=\E[@, kil1=\E[L, krmir=\E6, mc0=\E[0i, -- mc4=^C, mc5=\E[v, mc5p=\E[%p1%dv, rc=\E8, -- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, -- rmkx=\EP`>y~[[J`8xy~[[A`4xy~[[D`6xy~[[C`2xy~[[B\E\\, -- rmm=\E[>52l, rmso=\E[m, rmul=\E[m, sc=\E7, -- sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, -- sgr0=\E[m, -- smkx=\EP`>z~[[J`8xz~[[A`4xz~[[D`6xz~[[C`2xz~[[B\E\\, -- smm=\E[>52h, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- vpa=\E[%p1%{1}%+%dd, -+# This is the american terminal. Here tabs work fine. -+# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 -+wy99a-ansi|Wyse WY-99GT in ansi mode (US PC keyboard), -+ hts=\EH, is3=\E[?5l, rs3=\E[?5l, tbc=\E[3g, use=wy99-ansi, - --aaa+rv|ann arbor ambassador in reverse video, -- blink=\E[5;7m, bold=\E[1;7m, invis=\E[7;8m, -- is1=\E[7m\E7\E[H\E9\E8, rev=\E[m, rmso=\E[7m, rmul=\E[7m, -- rs1=\E[H\E[7m\E[J$<156>, -- sgr=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, -- sgr0=\E[7m\016, smso=\E[m, smul=\E[4;7m, --# Ambassador with the DEC option, for partial vt100 compatibility. --aaa+dec|ann arbor ambassador in dec vt100 mode, -- acsc=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}, -- csr=\E[%i%p1%d;%p2%dr, enacs=\E(0, rmacs=^N, -- sgr=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m%?%p9%t\017%e\016%;, -- smacs=^O, --aaa-18|ann arbor ambassador/18 lines, -- lines#18, -- is2=\E7\E[60;0;0;18p\E8, -- rmcup=\E[60;0;0;18p\E[60;1H\E[K, smcup=\E[18;0;0;18p, -- use=aaa+unk, --aaa-18-rv|ann arbor ambassador/18 lines+reverse video, -- use=aaa+rv, use=aaa-18, --aaa-20|ann arbor ambassador/20 lines, -- lines#20, -- is2=\E7\E[60;0;0;20p\E8, -- rmcup=\E[60;0;0;20p\E[60;1H\E[K, smcup=\E[20;0;0;20p, -- use=aaa+unk, --aaa-22|ann arbor ambassador/22 lines, -- lines#22, -- is2=\E7\E[60;0;0;22p\E8, -- rmcup=\E[60;0;0;22p\E[60;1H\E[K, smcup=\E[22;0;0;22p, -- use=aaa+unk, --aaa-24|ann arbor ambassador/24 lines, -- lines#24, -- is2=\E7\E[60;0;0;24p\E8, -- rmcup=\E[60;0;0;24p\E[60;1H\E[K, smcup=\E[24;0;0;24p, -- use=aaa+unk, --aaa-24-rv|ann arbor ambassador/24 lines+reverse video, -- use=aaa+rv, use=aaa-24, --aaa-26|ann arbor ambassador/26 lines, -- lines#26, -- is2=\E7\E[60;0;0;26p\E8, -- rmcup=\E[60;0;0;26p\E[26;1H\E[K, -- smcup=\E[H\E[J$<156>\E[26;0;0;26p, use=aaa+unk, --aaa-28|ann arbor ambassador/28 lines, -- lines#28, -- is2=\E7\E[60;0;0;28p\E8, -- rmcup=\E[60;0;0;28p\E[28;1H\E[K, -- smcup=\E[H\E[J$<156>\E[28;0;0;28p, use=aaa+unk, --aaa-30-s|aaa-s|ann arbor ambassador/30 lines w/status, -- eslok, hs, -- lines#29, -- dsl=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K, -- fsl=\E[>51l, is2=\r\n\E[A\E7\E[60;1;0;30p\E8, -- rmcup=\E[60;1;0;30p\E[29;1H\E[K, -- smcup=\E[H\E[J$<156>\E[30;1;0;30p\E[30;1H\E[K, -- tsl=\E[>51h\E[1;%p1%dH\E[2K, use=aaa+unk, --aaa-30-s-rv|aaa-s-rv|ann arbor ambassador/30 lines+status+reverse video, -- use=aaa+rv, use=aaa-30-s, --aaa-s-ctxt|aaa-30-s-ctxt|ann arbor ambassador/30 lines+status+save context, -- rmcup=\E[60;1;0;30p\E[59;1H\E[K, -- smcup=\E[30;1H\E[K\E[30;1;0;30p, use=aaa-30-s, --aaa-s-rv-ctxt|aaa-30-s-rv-ct|ann arbor ambassador/30 lines+status+save context+reverse video, -- rmcup=\E[60;1;0;30p\E[59;1H\E[K, -- smcup=\E[30;1H\E[K\E[30;1;0;30p, use=aaa-30-s-rv, --aaa|aaa-30|ambas|ambassador|ann arbor ambassador/30 lines, -- lines#30, -- is2=\E7\E[60;0;0;30p\E8, -- rmcup=\E[60;0;0;30p\E[30;1H\E[K, -- smcup=\E[H\E[J$<156>\E[30;0;0;30p, use=aaa+unk, --aaa-30-rv|aaa-rv|ann arbor ambassador/30 lines in reverse video, -- use=aaa+rv, use=aaa-30, --aaa-30-ctxt|aaa-ctxt|ann arbor ambassador/30 lines; saving context, -- rmcup=\E[60;0;0;30p\E[60;1H\E[K, smcup=\E[30;0;0;30p, -- use=aaa-30, --aaa-30-rv-ctxt|aaa-rv-ctxt|ann arbor ambassador/30 lines reverse video; saving context, -- rmcup=\E[60;0;0;30p\E[60;1H\E[K, smcup=\E[30;0;0;30p, -- use=aaa+rv, use=aaa-30, --aaa-36|ann arbor ambassador/36 lines, -- lines#36, -- is2=\E7\E[60;0;0;36p\E8, -- rmcup=\E[60;0;0;36p\E[36;1H\E[K, -- smcup=\E[H\E[J$<156>\E[36;0;0;36p, use=aaa+unk, --aaa-36-rv|ann arbor ambassador/36 lines+reverse video, -- use=aaa+rv, use=aaa-36, --aaa-40|ann arbor ambassador/40 lines, -- lines#40, -- is2=\E7\E[60;0;0;40p\E8, -- rmcup=\E[60;0;0;40p\E[40;1H\E[K, -- smcup=\E[H\E[J$<156>\E[40;0;0;40p, use=aaa+unk, --aaa-40-rv|ann arbor ambassador/40 lines+reverse video, -- use=aaa+rv, use=aaa-40, --aaa-48|ann arbor ambassador/48 lines, -- lines#48, -- is2=\E7\E[60;0;0;48p\E8, -- rmcup=\E[60;0;0;48p\E[48;1H\E[K, -- smcup=\E[H\E[J$<156>\E[48;0;0;48p, use=aaa+unk, --aaa-48-rv|ann arbor ambassador/48 lines+reverse video, -- use=aaa+rv, use=aaa-48, --aaa-60-s|ann arbor ambassador/59 lines+status, -- eslok, hs, -- lines#59, -- dsl=\E7\E[60;0;0;60p\E[1;1H\E[K\E[H\E8\r\n\E[K, -- fsl=\E[>51l, is2=\r\n\E[A\E7\E[60;1;0;60p\E8, -- tsl=\E[>51h\E[1;%p1%dH\E[2K, use=aaa+unk, --aaa-60-s-rv|ann arbor ambassador/59 lines+status+reverse video, -- use=aaa+rv, use=aaa-60-s, --aaa-60-dec-rv|ann arbor ambassador/dec mode+59 lines+status+rev video, -- use=aaa+dec, use=aaa+rv, use=aaa-60-s, --aaa-60|ann arbor ambassador/60 lines, -- lines#60, -- is2=\E7\E[60;0;0;60p\E[1Q\E[m\E[>20;30l\E8, -- use=aaa+unk, --aaa-60-rv|ann arbor ambassador/60 lines+reverse video, -- use=aaa+rv, use=aaa-60, --aaa-db|ann arbor ambassador 30/destructive backspace, -- OTbs@, -- cub1=\E[D, is3=\E[1Q\E[m\E[>20l\E[>30h, use=aaa-30, -+# This terminal (firmware version 02) has a lot of bugs: -+# - can't set tabs; -+# - other bugs in ANSI modes (see above). -+# This description disables handshaking when using cup. This is because -+# GNU emacs doesn't like Xon-Xoff handshaking. This means the terminal -+# cannot be used at speeds greater than 9600 baud, because at greater -+# speeds handshaking is needed even for character sending. If you use -+# DTR handshaking, you can use even greater speeds. -+# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 -+wy99f|wy99fgt|wy-99fgt|Wyse WY-99GT (int'l PC keyboard), -+ am, bw, hs, km, mc5i, mir, msgr, xon, -+ cols#80, it#8, lines#25, wsl#46, -+ acsc='x+y.w_vi~j(k'l&m%n)o9q*s8t-u.v\,w+x=, bel=^G, -+ blink=\EG2, cbt=\EI, civis=\E`0, clear=\E'\E(\032, -+ cnorm=\E`4\E`1, cr=^M, cub1=^H, cud1=\Ej, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ cvvis=\E`2\E`1, dch1=\EW, dim=\EGp, dl1=\ER, dsl=\EF\r, -+ ed=\EY$<8*>, el=\ET$<8>, enacs=\Ec@1J$<2000>, -+ flash=\E\^1$<30/>\E\^0, fsl=^M, home=^^, ht=^I, il1=\EE, -+ ind=^J, invis=\EG3, -+ is2=\Eu\Ee6\EC\EDF\Ec21\Ec31\Ec62\Ec72\Ee;\016\E'\EeL\E`9\E\^0\E`1\E`4\Ee.\E`\:\Ee1\EG0\E(\Ed/\Ee4\Ed*\EO\E`I\Er\Ee"\EcD\024, -+ ka1=^^, ka3=\EJ, kbs=^H, kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, -+ kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r, kf10=^AI\r, -+ kf11=^AJ\r, kf12=^AK\r, kf13=^A`\r, kf14=^Aa\r, kf15=^Ab\r, -+ kf16=^Ac\r, kf17=^Ad\r, kf18=^Ae\r, kf19=^Af\r, kf2=^AA\r, -+ kf20=^Ag\r, kf21=^Ah\r, kf22=^Ai\r, kf23=^Aj\r, kf24=^Ak\r, -+ kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -+ kf8=^AG\r, kf9=^AH\r, kprt=\EP, mc0=\EP, mc4=^T, mc5=\Ed#, -+ nel=^_, prot=\E), rev=\EG4, ri=\Ej, rmacs=\EcD, rmam=\Ed., -+ rmcup=\Ec21\Ec31, rmir=\Er, rmso=\EG0, rmxon=\Ec20\Ec30, -+ rs2=\Eu\E~4\Ee6\EC\EDF\Ec21\Ec31\Ec62\Ec72\Ee;\016\E'\EeL\E`9\E\^0\E`1\E`4\Ee.\E`\:\Ee)\Ew\EwG\Ew0\Ee1\EG0\E(\Ed/\Ee4\Ed*\EO\E`I\Er\Ee"\Ec@0B\EcD\024, -+ sgr=\E(\EG%{48}%?%p1%p3%O%t%{4}%+%;%?%p2%t%{8}%+%;%?%p4%t%{2}%+%;%?%p5%t%{64}%+%;%?%p7%t%{1}%+%;%c%?%p8%t\E)%;%?%p9%t\EcE%e\EcD%;, -+ sgr0=\E(\EG0, smacs=\EcE, smam=\Ed/, smcup=\Ec20\Ec30, -+ smir=\Eq, smso=\EG4, smxon=\Ec21\Ec31, tsl=\EF, - --guru|guru-33|guru+unk|ann arbor guru/33 lines 80 cols, -- lines#33, -- flash=\E[>59h$<100>\E[>59l, -- is2=\E7\E[255;0;0;33;80;80p\E8\E[J, is3=\E[>59l, -- rmcup=\E[255p\E[255;1H\E[K, smcup=\E[33p, use=aaa+unk, --guru+rv|guru changes for reverse video, -- flash=\E[>59l$<100>\E[>59h, is3=\E[>59h, --guru-rv|guru-33-rv|ann arbor guru/33 lines+reverse video, -- use=guru+rv, use=guru-33, --guru+s|guru status line, -- eslok, hs, -- dsl=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K, fsl=\E[>51l, -- rmcup=\E[255;1p\E[255;1H\E[K, smcup=, -- tsl=\E[>51h\E[1;%p1%dH\E[2K, --guru-nctxt|guru with no saved context, -- smcup=\E[H\E[J$<156>\E[33p\E[255;1H\E[K, use=guru, --guru-s|guru-33-s|ann arbor guru/33 lines+status, -- lines#32, -- is2=\r\n\E[A\E7\E[255;1;0;33;80;80p\E8\E[J, -- smcup=\E[33;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, --guru-24|ann arbor guru 24 lines, -- cols#80, lines#24, -- is2=\E7\E[255;0;0;24;80;80p\E8\E[J, smcup=\E[24p, -- use=guru+unk, --guru-44|ann arbor guru 44 lines, -- cols#97, lines#44, -- is2=\E7\E[255;0;0;44;97;100p\E8\E[J, smcup=\E[44p, -- use=guru+unk, --guru-44-s|ann arbor guru/44 lines+status, -- lines#43, -- is2=\r\n\E[A\E7\E[255;1;0;44;80;80p\E8\E[J, -- smcup=\E[44;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, --guru-76|guru with 76 lines by 89 cols, -- cols#89, lines#76, -- is2=\E7\E[255;0;0;76;89;100p\E8\E[J, smcup=\E[76p, -- use=guru+unk, --guru-76-s|ann arbor guru/76 lines+status, -- cols#89, lines#75, -- is2=\r\n\E[A\E7\E[255;1;0;76;89;100p\E8\E[J, -- smcup=\E[76;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, --guru-76-lp|guru-lp|guru with page bigger than line printer, -- cols#134, lines#76, -- is2=\E7\E[255;0;0;76;134;134p\E8\E[J, smcup=\E[76p, -- use=guru+unk, --guru-76-w|guru 76 lines by 178 cols, -- cols#178, lines#76, -- is2=\E7\E[255;0;0;76;178;178p\E8\E[J, smcup=\E[76p, -- use=guru+unk, --guru-76-w-s|ann arbor guru/76 lines+status+wide, -- cols#178, lines#75, -- is2=\r\n\E[A\E7\E[255;1;0;76;178;178p\E8\E[J, -- smcup=\E[76;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, --guru-76-wm|guru 76 lines by 178 cols with 255 cols memory, -- cols#178, lines#76, -- is2=\E7\E[255;0;0;76;178;255p\E8\E[J, smcup=\E[76p, -- use=guru+unk, --aaa-rv-unk|ann arbor unknown type, -- lh#0, lw#0, nlab#0, -- blink=\E[5;7m, bold=\E[1;7m, home=\E[H, invis=\E[7;8m, -- is1=\E[7m\E7\E[H\E9\E8, rev=\E[m, rmso=\E[7m, rmul=\E[7m, -- rs1=\E[H\E[7m\E[J, -- sgr=\E[%?%p1%!%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, -- sgr0=\E[7m, smso=\E[m, smul=\E[4;7m, -+# This is the american terminal. Here tabs work. -+# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998 -+wy99fa|wy99fgta|wy-99fgta|Wyse WY-99GT (US PC keyboard), -+ hts=\E1, tbc=\E0, use=wy99f, - --#### Applied Digital Data Systems (adds) - # --# ADDS itself is long gone. ADDS was bought by NCR, and the same group made --# ADDS and NCR terminals. When AT&T and NCR merged, the engineering for --# terminals was merged again. Then AT&T sold the terminal business to --# SunRiver, which later changed its name to Boundless Technologies. The --# engineers from Teletype, AT&T terminals, ADDS, and NCR (who are still there --# as of early 1995) are at: -+# The Wyse 160 is combination of the WY-60 and the WY-99gt. -+# The reset strings are slow and the pad times very depending -+# on other parameters such as font loading. I have tried -+# to follow the following outline: - # --# Boundless Technologies --# 100 Marcus Boulevard --# Hauppauge, NY 11788-3762 --# Vox: (800)-231-5445 --# Fax: (516)-342-7378 --# Web: http://boundless.com -+# <rs1> -> set personality -+# <rs2> -> set number of columns -+# <rs3> -> set number of lines -+# <is1> -> select the proper font -+# <is2> -> do the initialization -+# <is3> -> set up display memory (2 pages) - # --# Their voice mail used to describe the place as "SunRiver (formerly ADDS)". --# In 1995 Boundless acquired DEC's terminals business. -+# The display memory may be used for either text or graphics. -+# When "Display Memory = Shared" the terminal will have more pages -+# but garbage may be left on the screen when you switch from -+# graphics to text. If "Display Memory = Unshared" then the -+# text area will be only one page long. - # -- --# Regent: lowest common denominator, works on all regents. --# (regent: renamed ":bc:" to ":le:" -- esr) --regent|Adds Regent Series, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=^L, cr=^M, cub1=^U, cud1=^J, cuf1=^F, cuu1=^Z, -- home=\EY\s\s, ind=^J, ll=^A, --# Regent 100 has a bug where if computer sends escape when user is holding --# down shift key it gets confused, so we avoid escape. --regent100|Adds Regent 100, -- xmc#1, -- bel=^G, -- cup=\013%p1%' '%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%c, -- kf0=^B1\r, kf1=^B2\r, kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, -- kf5=^B6\r, kf6=^B7\r, kf7=^B8\r, lf0=F1, lf1=F2, lf2=F3, -- lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, rmso=\E0@, rmul=\E0@, -- sgr0=\E0@, smso=\E0P, smul=\E0`, use=regent, --regent20|Adds Regent 20, -- bel=^G, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, ed=\Ek, el=\EK, -- use=regent, --regent25|Adds Regent 25, -- bel=^G, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, khome=^A, -- use=regent20, --regent40|Adds Regent 40, -- xmc#1, -- bel=^G, dl1=\El$<2*>, il1=\EM$<2*>, kf0=^B1\r, kf1=^B2\r, -- kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, kf5=^B6\r, kf6=^B7\r, -- kf7=^B8\r, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, lf5=F6, -- lf6=F7, lf7=F8, rmso=\E0@, rmul=\E0@, sgr0=\E0@, smso=\E0P, -- smul=\E0`, use=regent25, --regent40+|Adds Regent 40+, -- is2=\EB, use=regent40, --regent60|regent200|Adds Regent 60, -- dch1=\EE, is2=\EV\EB, kdch1=\EE, kich1=\EF, krmir=\EF, -- rmir=\EF, rmso=\ER\E0@\EV, smir=\EF, smso=\ER\E0P\EV, -- use=regent40+, --# From: <edward@onyx.berkeley.edu> Thu Jul 9 09:27:33 1981 --# (viewpoint: added <kcuf1>, function key, and <dl1> capabilities -- esr) --viewpoint|addsviewpoint|adds viewpoint, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=^L, cnorm=\017\E0`, cr=^M, cub1=^H, cud1=^J, -- cuf1=^F, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, -- cvvis=\017\E0P, dl1=\El, ed=\Ek$<16.1*>, el=\EK$<16>, -- ind=^J, is2=\017\E0`, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, -- kf0=^B1, kf2=^B2, kf3=^B!, kf4=^B", kf5=^B#, khome=^A, ll=^A, -- rmso=^O, rmul=^O, sgr0=^O, smso=^N, smul=^N, --# Some viewpoints have bad ROMs that foo up on ^O --screwpoint|adds viewpoint with ^O bug, -- cvvis@, rmso@, rmul@, smso@, smul@, use=viewpoint, -- --# From: Jay S. Rouman <jsr@dexter.mi.org> 5 Jul 92 --# The <civis>/<cnorm>/<sgr>/<sgr0> strings were added by ESR from specs. --# Theory; the vp3a+ wants \E0%c to set highlights, where normal=01000000, --# underline=01100000, rev=01010000, blink=01000010,dim=01000001, --# invis=01000100 and %c is the logical or of desired attributes. --# There is also a `tag bit' enabling attributes, set by \E) and unset by \E(. -+# (wy160: we use \E{ rather than ^^ for home (both are documented) to avoid -+# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr) -+wy160|wyse160|Wyse 160, -+ am, bw, hs, km, mc5i, mir, msgr, -+ cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#38, -+ acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, -+ bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<30>, -+ cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<5>, -+ dclk=\E`b, dim=\EGp, dl1=\ER$<1>, dsl=\EF\r, ed=\EY$<30>, -+ el=\ET$<5>, flash=\E`8$<100/>\E`9, fsl=^M, home=\E{, ht=^I, -+ hts=\E1, il1=\EE$<1>, ind=\n$<1>, ip=$<2>, is1=\EcB0\EcC1, -+ is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, -+ is3=\Ew0$<100>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, -+ kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, -+ kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -+ kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, -+ kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -+ kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, -+ kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=\E{^K, -+ mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<1>, -+ pfloc=\EZ2%p1%{63}%+%c%p2%s\177, -+ pfx=\EZ1%p1%{63}%+%c%p2%s\177, -+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<1>, -+ rmacs=\EcD, rmam=\Ed., rmclk=\E`c, rmcup=\Ew0, rmir=\Er, -+ rmln=\EA11, rmxon=\Ec20, rs1=\E~!\E~4$<70>, -+ rs2=\E`\:$<100>, rs3=\EwG\Ee($<140>, -+ sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, -+ sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, -+ smcup=\Ew1, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21, -+ tbc=\E0, tsl=\EF, use=adm+sgr, - # --# Update by TD - 2004: --# Adapted from --# http://www.cs.utk.edu/~shuford/terminal/adds_viewpoint_news.txt -+wy160-w|wyse160-w|wyse 160 132-column, -+ cols#132, lw#7, nlab#16, wsl#90, -+ cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<9>, -+ rs2=\EeF$<150>\E`;$<150>, use=wy160, - # --# COMMANDS ASCII CODE -+wy160-25|wyse160-25|wyse 160 80-column 25-lines, -+ lh@, lines#25, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<200>, use=wy160, -+wy160-25-w|wyse160-25-w|wyse 160 132-column 25-lines, -+ lh@, lines#25, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<200>, use=wy160-w, - # --# Address, Absolute ESC,=,row,column --# Beep BEL --# Aux Port Enable ESC,@ --# Aux Port Disable ESC,A --# Backspace BS --# Cursor back BS --# Cursor down LF --# Cursor forward FF --# Cursor home RS --# Cursor up VT --# Cursor supress ETB --# Cursor enable CAN --# Erase to end of line ESC,T --# Erase to end of page ESC,Y --# Erase screen SUB --# Keyboard lock SI --# Keyboard unlock SO --# Read current cursor position ESC,? --# Set Attribute ESC,0,x (see below for values of x) --# Tag bit reset ESC,( --# Tag bit set ESC,) --# Transparent Print on ESC,3 --# Transparent Print off ESC,4 -+wy160-42|wyse160-42|wyse 160 80-column 42-lines, -+ lines#42, -+ clear=\E+$<50>, dl1=\ER$<2>, ed=\Ey$<50>, il1=\EE$<2>, -+ ind=\n$<2>, is1=\EcB2\EcC3, nel=\r\n$<2>, ri=\Ej$<2>, -+ rs3=\Ee*$<150>, use=wy160, -+wy160-42-w|wyse160-42-w|wyse 160 132-column 42-lines, -+ cols#132, lw#7, nlab#16, wsl#90, -+ cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<8>, ip=$<3>, -+ rs2=\EeF$<150>\E`;$<150>, use=wy160-42, - # -+wy160-43|wyse160-43|wyse 160 80-column 43-lines, -+ lh@, lines#43, lw@, nlab@, -+ pln@, rs3=\Ee+$<150>, use=wy160-42, -+wy160-43-w|wyse160-43-w|wyse 160 132-column 43-lines, -+ lh@, lines#43, lw@, nlab@, -+ pln@, rs3=\Ee+$<150>, use=wy160-42-w, - # --# ATTRIBUTES -+wy160-vb|wyse160-vb|Wyse 160 visible bell, -+ bel@, use=wy160, -+wy160-w-vb|wy160-wvb|wyse160-wvb|Wyse 160 132-column visible bell, -+ bel@, use=wy160-w, - # --# Normal @ 0100 --# Half Intensity A 0101 --# Blinking B 0102 --# Half Intensity Blinking C 0103 --# Reverse Video P 0120 --# Reverse Video Half Intensity Q 0121 --# Reverse Video Blinking R 0122 --# Reverse Video Half Intensity --# Blinking S 0123 --# Underlined ` 0140 --# Underlined Half Intensity a 0141 --# Underlined Blinking b 0142 --# Underlined Half Intensity --# Blinking c 0143 --# Video suppress D 0104 --vp3a+|viewpoint3a+|adds viewpoint 3a+, -- am, bw, -- cols#80, it#8, lines#24, -- blink=\E0B\E), civis=^W, clear=\E*$<80>, cnorm=^X, cr=^M, -- cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dim=\E0A\E), -- ed=\EY$<80>, el=\ET, home=^^, ht=^I, ind=^J, invis=\E0D\E), -- kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, -- nel=^M^J, rev=\E0P\E), rmso=\E(, -- sgr=%?%p1%p2%|%p3%|%p4%|%p5%|%p7%|%t\E0%{64}%?%p1%t%{17}%|%;%?%p2%t%{32}%|%;%?%p3%t%{16}%|%;%?%p4%t%{2}%|%;%?%p5%t%{1}%|%;%c%?%p7%tD%;\E)%e\E(%;, -- sgr0=\E(, smso=\E0Q\E), smul=\E0`\E), --vp60|viewpoint60|addsvp60|adds viewpoint60, -- use=regent40, -+# The Wyse 75 is a vt100 lookalike without advanced video. - # --# adds viewpoint 90 - from cornell --# Note: emacs sends ei occasionally to insure the terminal is out of --# insert mode. This unfortunately puts the viewpoint90 IN insert --# mode. A hack to get around this is <ich1=\EF\s\EF^U>. (Also, --# - :ei=:im=: must be present in the termcap translation.) --# - <xhp> indicates glitch that attributes stick to location --# - <msgr> means it's safe to move in standout mode --# - <clear=\EG\Ek>: clears screen and visual attributes without affecting --# the status line --# Function key and label capabilities merged in from SCO. --vp90|viewpoint90|adds viewpoint 90, -- OTbs, bw, msgr, xhp, -- cols#80, lines#24, -- clear=\EG\Ek, cub1=^H, cud1=^J, cuf1=^F, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dch1=\EE, -- dl1=\El, ed=\Ek, el=\EK, home=\EY\s\s, ht=^I, -- ich1=\EF \EF\025, ind=^J, kbs=^H, kcub1=^U, kcud1=^J, -- kcuf1=^F, kcuu1=^Z, kf0=^B1\r, kf1=^B2\r, kf10=^B;\r, -- kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, kf5=^B6\r, kf6=^B7\r, -- kf7=^B8\r, kf8=^B9\r, kf9=^B\:\r, khome=^A, lf0=F1, lf1=F2, -- lf10=F11, lf2=F3, lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, -- lf9=F10, ll=^A, rmso=\ER\E0@\EV, rmul=\ER\E0@\EV, -- sgr0=\ER\E0@\EV, smso=\ER\E0Q\EV, smul=\ER\E0`\EV, --# Note: if return acts weird on a980, check internal switch #2 --# on the top chip on the CONTROL pc board. --adds980|a980|adds consul 980, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=\014$<1>\013@, cr=^M, cub1=^H, cud1=^J, -- cuf1=\E^E01, cup=\013%p1%{64}%+%c\E\005%p2%2d, -- dl1=\E\017$<13>, il1=\E\016$<13>, ind=^J, kf0=\E0, kf1=\E1, -- kf2=\E2, kf3=\E3, kf4=\E4, kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8, -- kf9=\E9, rmso=^O, sgr0=^O, smso=^Y^^^N, -- --#### C. Itoh Electronics -+# The Wyse 75 can support one attribute (e.g. Dim, Inverse, -+# Underline) without magic cookies. The following description -+# uses this capability, but when more than one attribute is -+# put on the screen at once, all attributes will be changed -+# to be the same as the last attribute given. -+# The Wyse 75 can support more attributes when used with magic -+# cookies. The wy75-mc terminal description uses magic cookies -+# to correctly handle multiple attributes on a screen. - # --# As of 1995 these people no longer make terminals (they're still in the --# printer business). Their terminals were all clones of the DEC VT series. --# They're located in Orange County, CA. -+wy75|wyse75|wyse 75, -+ am, hs, mc5i, mir, msgr, xenl, xon, -+ cols#80, lines#24, ma#1, pb#1201, wsl#78, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, cbt=\E[Z, civis=\E[?25l, clear=\E[H\E[J$<30>, -+ cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr$<2>, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP$<3*>, -+ dch1=\E[P$<3>, dim=\E[0t\E[2m, dl=\E[%p1%dM$<1*>, -+ dl1=\E[M, dsl=\E[>\,\001\001\E[>-\001\001, -+ ech=\E[%p1%dX, ed=\E[J$<30>, el=\E[K$<3>, el1=\E[1K$<3>, -+ enacs=\E)0, flash=\E[30h\E\,\E[30l$<250>, fsl=^A, -+ home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, -+ ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>, -+ ind=\n$<2>, ip=$<1>, -+ is1=\E[2;4;20;30l\E[?1;10l\E[12h\E[?7;8;25h, -+ is2=\E>\E(B\E)0\017, is3=\E[m, kbs=^H, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\E[M, kel=\E[K, -+ kf1=\E[?5i, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, -+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf2=\E[?3i, -+ kf20=\E[34~, kf21=\E[35~, kf3=\E[2i, kf4=\E[@, kf5=\E[M, -+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, -+ khlp=\E[28~, khome=\E[H, kich1=\E[@, kil1=\E[L, knp=\E[6~, -+ kpp=\E[5~, kprt=\E[?5i, kslt=\E[4~, mc0=\E[0i, mc4=\E[4i, -+ mc5=\E[5i, rc=\E8, rev=\E[1t\E[7m, ri=\EM$<2>, rmacs=^O, -+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m, rmul=\E[m, -+ rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<80>, rs3=\E[?5l, -+ sc=\E7, -+ sgr=%?%p5%t\E[0t%;%?%p3%p1%|%t\E[1t%;%?%p2%t\E[2t%;%?%p4%t\E[3t%;%?%p1%p2%p3%p4%p5%|%|%|%|%t\E[7m%e\E[m%;%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[?1l\E[?7h\E=, smso=\E[1t\E[7m, smul=\E[2t\E[4m, -+ tbc=\E[3g, tsl=\E[>\,\001, use=vt220+keypad, - # -- --# CIT 80 - vt-52 emulator, the termcap has been modified to remove --# the delay times and do an auto tab set rather than the indirect --# file used in vt100. --cit80|cit-80|citoh 80, -- OTbs, am, -- cols#80, lines#24, -- clear=\E[H\EJ, cr=^M, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\EJ, el=\EK, ff=^L, -- ind=^J, is2=\E>, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -- kcuu1=\EOA, rmkx=\E[?1l\E>, smkx=\E[?1h\E=, --# From: Tim Wood <mtxinu!sybase!tim> Fri Sep 27 09:39:12 PDT 1985 --# (cit101: added <rmam>/<smam> based on init string, merged this with c101 -- esr) --cit101|citc|C.itoh fast vt100, -- OTbs, am, xenl, -- cols#80, lines#24, -- bel=^G, clear=\E[H\E[2J, cnorm=\E[V\E8, cub1=^H, cud1=\E[B, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -- cvvis=\E7\E[U, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, -- flash=\E[?5h$<200/>\E[?5l, ich1=\E[@, il1=\E[L, -- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[3g\E[>5g, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, -- smul=\E[4m, --# CIE Terminals CIT-101e from Geoff Kuenning <callan!geoff> via BRL --# The following termcap entry was created from the Callan cd100 entry. The --# last two lines (with the capabilities in caps) are used by RM-cobol to allow --# full selection of combinations of reverse video, underline, and blink. --# (cit101e: removed unknown :f0=\EOp:f1=\EOq:f2=\EOr:f3=\EOs:f4=\EOt:f5=\EOu:\ --# f6=\EOv:f7=\EOw:f8=\EOx:f9=\EOy:AB=\E[0;5m:AL=\E[m:AR=\E[0;7m:AS=\E[0;5;7m:\ --# :NB=\E[0;1;5m:NM=\E[0;1m:NR=\E[0;1;7m:NS=\E[0;1;5;7m: -- esr) --cit101e|C. Itoh CIT-101e, -- OTbs, OTpt, am, mir, msgr, -- cols#80, it#8, lines#24, -- acsc=, clear=\E[H\E[J, cnorm=, csr=\E[%i%p1%2d;%p2%2dr, -- cub1=\E[D, cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, -- cuu1=\E[A, cvvis=\E[?1l\E[?4l\E[?7h, dch1=\E[P, dl1=\E[M, -- ed=\E[J, el=\E[K, if=/usr/share/tabset/vt100, il1=\E[L, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\EOT, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOm, kf6=\EOl, -- kf7=\EOM, kf8=\EOn, rc=\E8, ri=\EM, rmacs=^O, rmir=\E[4l, -- rmkx=\E>, rmso=\E[m, rmul=\E[m, sc=\E7, smacs=^N, smir=\E[4h, -- smkx=\E=, smso=\E[7m, smul=\E[4m, --# From: David S. Lawyer, June 1997: --# The CIT 101-e was made in Japan in 1983-4 and imported by CIE --# Terminals in Irvine, CA. It was part of CITOH Electronics. In the --# late 1980's CIT Terminals went out of business. --# There is no need to use the initialization string is=... (by invoking --# tset or setterm etc.) provided that the terminal has been manually set --# up (and the setup saved with ^S) to be compatible with this termcap. To be --# compatible it should be in ANSI mode (not VT52). A set-up that --# works is to set all the manually setable stuff to factory defaults --# by pressing ^D in set-up mode. Then increse the brighness with the --# up-arrow key since the factory default will likely be dim on an old --# terminal. Then change any options you want (provided that they are --# compatible with the termcap). For my terminal I set: Screen --# Background: light; Keyclicks: silent; Auto wraparound: on; CRT saver: --# on. I also set up mine for parity (but you may not need it). Then --# save the setup with ^S. --# (cit101e-rv: added empty <rmcup> to suppress a tic warning. --esr) --cit101e-rv|Citoh CIT-101e (sets reverse video), -- am, eo, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, -- OTnl=\EM, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -- civis=\E[1v, clear=\E[H\E[J, cnorm=\E[0;3;4v, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[3;5v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5l\E[?5h$<200/>, -- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, -- is2=\E<\E>\E[?1l\E[?3l\E[?4l\E[?5h\E[?7h\E[?8h\E[3g\E[>5g\E(B\E[m\E[20l\E[1;24r\E[24;1H, -- kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=\EE, rc=\E8, -- rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmcup=, rmir=\E[4l, -- rmso=\E[m, rmul=\E[m, rs1=\Ec\E[?7h\E[>5g, sc=\E7, -- sgr0=\E[m, smcup=\E[>5g\E[?7h\E[?5h, smir=\E[4h, -- smso=\E[7m, smul=\E[4m, tbc=\E[3g, u6=\E[%i%p1%d;%p2%dR, -- u7=\E[6n, u8=\E[?6c, u9=\E[c, --cit101e-n|CIT-101e w/o am, -- am@, -- cvvis=\E[?1l\E[?4l\E[?7l, kbs=^H, kcub1=^H, kcud1=^J, -- use=cit101e, --cit101e-132|CIT-101e with 132 cols, -- cols#132, -- kbs=^H, kcub1=^H, kcud1=^J, use=cit101e, --cit101e-n132|CIT-101e with 132 cols w/o am, -- am@, -- cols#132, -- cvvis=\E[?1l\E[?4l\E[?7l, kbs=^H, kcub1=^H, kcud1=^J, -- use=cit101e, --# CIE Terminals CIT-500 from BRL --# The following SET-UP modes are assumed for normal operation: --# GENERATE_XON/XOFF:YES DUPLEX:FULL NEWLINE:OFF --# AUTOWRAP:ON MODE:ANSI SCREEN_LENGTH:64_LINES --# DSPLY_CNTRL_CODES?NO PAGE_WIDTH:80 EDIT_MODE:OFF --# Other SET-UP modes may be set for operator convenience or communication --# requirements. --# Hardware tabs are assumed to be set every 8 columns; they can be set up --# by the "reset", "tset", or "tabs" utilities. No delays are specified; use --# "stty ixon -ixany" to enable DC3/DC1 flow control! --# (cit500: I added <rmam>/<smam> based on the init string -- esr) --cit500|CIE Terminals CIT-500, -- OTbs, OTpt, mir, msgr, xon, -- OTkn#10, cols#80, it#8, lines#64, vt#3, -- acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -- clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\EM, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- ed=\EJ, el=\EK, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, -- il1=\E[L, ind=^J, is2=\E<\E)0, kbs=^H, kcbt=\E[Z, kcub1=\EOD, -- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[P, kdl1=\E[M, -- ked=\EJ, kel=\EK, kf0=\EOP, kf1=\EOQ, kf2=\EOR, kf3=\EOS, -- kf4=\EOU, kf5=\EOV, kf6=\EOW, kf7=\EOX, kf8=\EOY, kf9=\EOZ, -- khome=\E[H, kich1=\E[4h, kil1=\E[L, krmir=\E[4l, lf0=PF1, -- lf1=PF2, lf2=PF3, lf3=PF4, lf4=F15, lf5=F16, lf6=F17, lf7=F18, -- lf8=F19, lf9=F20, ll=\E[64H, nel=\EE, rc=\E8, rev=\E[7m, -- ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, -- rmso=\E[m, rmul=\E[m, -- rs1=\E<\E2\E[20l\E[?6l\E[r\E[m\E[q\E(B\017\E)0\E>, -- sc=\E7, sgr0=\E[m, smacs=^N, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- --# C. Itoh printers begin here --citoh|ci8510|8510|c.itoh 8510a, -- cols#80, it#8, -- bold=\E!, cub1@, -- is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073., -- rep=\ER%p2%03d%p1%c, ri=\Er, rmul=\EY, sgr0=\E"\EY, -- smul=\EX, use=lpr, --citoh-pica|citoh in pica, -- is1=\EN, use=citoh, --citoh-elite|citoh in elite, -- cols#96, -- is1=\EE, -- is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073\,081\,089., -- use=citoh, --citoh-comp|citoh in compressed, -- cols#136, -- is1=\EQ, -- is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073\,081\,089\,097\,105\,113\,121\,129., -- use=citoh, --# citoh has infinite cols because we don't want lp ever inserting \n\t**. --citoh-prop|citoh-ps|ips|citoh in proportional spacing mode, -- cols#32767, -- is1=\EP, use=citoh, --citoh-6lpi|citoh in 6 lines per inch mode, -- is3=\EA, use=citoh, --citoh-8lpi|citoh in 8 lines per inch mode, -- lines#88, -- is3=\EB, use=citoh, -- --#### Control Data (cdc) -+# This terminal description uses the non-hidden attribute mode -+# (with magic cookie). - # -- --cdc456|cdc 456 terminal, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=^Y^X, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E1%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dl1=\EJ, ed=^X, -- el=^V, home=^Y, il1=\EL, ind=^J, -- --# Assorted CDC terminals from BRL (improvements by DAG & Ferd Brundick) --cdc721|CDC Viking, -- OTbs, am, -- cols#80, lines#24, -- clear=^L, cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, -- cuu1=^W, el=^K, home=^Y, kcub1=^H, kcud1=^J, kcuf1=^I, -- kcuu1=^W, khome=^Y, --cdc721ll|CDC Vikingll, -- OTbs, am, -- cols#132, lines#24, -- clear=^L, cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, -- cuu1=^W, el=^K, home=^Y, kcub1=^H, kcud1=^J, kcuf1=^I, -- kcuu1=^W, khome=^Y, --# (cdc752: the BRL entry had :ll=\E1 ^Z: commented out --cdc752|CDC 752, -- OTbs, am, bw, xhp, -- cols#80, lines#24, -- bel=^G, clear=\030\E1\s\s, cr=^M, cub1=^H, cud1=^J, cuf1=^U, -- cup=\E1%p2%{32}%+%c%p1%{32}%+%c, cuu1=^Z, el=^V, -- home=\E1\s\s, ind=^J, ll=^Y, rs1=\E1 \030\002\003\017, --# CDC 756 --# The following switch/key settings are assumed for normal operation: --# 96 chars SCROLL FULL duplex not BLOCK --# Other switches may be set according to communication requirements. --# Insert/delete-character cannot be used, as the whole display is affected. --# "so" & "se" are commented out until jove handles "sg" correctly. --cdc756|CDC 756, -- OTbs, am, bw, -- OTkn#10, cols#80, lines#24, -- bel=^G, clear=^Y^X, cr=^M, cub1=^H, cud1=^J, cuf1=^U, -- cup=\E1%p2%{32}%+%c%p1%{32}%+%c, cuu1=^Z, -- dl1=\EJ$<6*/>, ed=^X, el=^V, home=^Y, il1=\EL$<6*/>, ind=^J, -- kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^Z, kdch1=\EI, -- kdl1=\EL, ked=^X, kel=^V, kf0=\EA, kf1=\EB, kf2=\EC, kf3=\ED, -- kf4=\EE, kf5=\EF, kf6=\EG, kf7=\EH, kf8=\Ea, kf9=\Eb, khome=^Y, -- khts=^O, kich1=\EK, kil1=\EL, lf0=F1, lf1=F2, lf2=F3, lf3=F4, -- lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, lf9=F10, ll=^Y^Z, -- rs1=\031\030\002\003\017, -+wy75-mc|wyse75-mc|wyse 75 with magic cookies, -+ msgr@, -+ ma@, xmc#1, -+ blink=\E[2p, dim=\E[1p, invis=\E[4p, is3=\E[m\E[p, -+ rev=\E[16p, rmacs=\E[0p\017, rmso=\E[0p, rmul=\E[0p, -+ sgr=\E[%{0}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{16}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{1}%|%;%?%p7%t%{4}%|%;%dp%?%p9%t\016%e\017%;, -+ sgr0=\E[0p\017, smacs=\E[0p\016, smso=\E[17p, smul=\E[8p, -+ use=wy75, -+wy75-vb|wyse75-vb|wyse 75 with visible bell, -+ pb@, -+ bel@, use=wy75, -+wy75-w|wyse75-w|wyse 75 in 132 column mode, -+ cols#132, wsl#130, -+ rs2=\E[35h\E[?3h$<80>, use=wy75, -+wy75-wvb|wyse75-wvb|wyse 75 with visible bell 132 columns, -+ pb@, -+ bel@, use=wy75-w, - # --# CDC 721 from Robert Viduya, Ga. Tech. <ihnp4!gatech!gitpyr!robert> via BRL. -+# Wyse 85 emulating a vt220 7 bit mode. -+# 24 line screen with status line. - # --# Part of the long initialization string defines the "DOWN" key to the left --# of the tab key to send an ESC. The real ESC key is positioned way out --# in right field. -+# The vt220 mode permits more function keys but it wipes out -+# the escape key. I strongly recommend that <f11> be set to -+# escape (esc). -+# The terminal may have to be set for 8 data bits and 2 stop -+# bits for the arrow keys to work. -+# The Wyse 85 runs faster with XON/XOFF enabled. Also the -+# <dch> and <ich> work best when XON/XOFF is set. <ich> and -+# <dch> leave trash on the screen when used without XON/XOFF. - # --# The termcap won't work in 132 column mode due to the way it it moves the --# cursor. Termcap doesn't have the capability (as far as I could tell) to --# handle the 721 in 132 column mode. -+wy85|wyse85|wyse 85, -+ am, hs, mc5i, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, wsl#80, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J$<110>, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP$<3*>, dch1=\E[P$<3>, dim=\E[2m, -+ dl=\E[%p1%dM$<3*>, dl1=\E[M$<3>, dsl=\E[40l, -+ ech=\E[%p1%dX, ed=\E[J$<110>, el=\E[K$<1>, el1=\E[1K, -+ enacs=\E)0, flash=\E[30h\E\,\E[30l$<300>, -+ fsl=\E[1;24r\E8, home=\E[H, ht=\011$<1>, hts=\EH, -+ ich=\E[%p1%d@$<4*>, il=\E[%p1%dL$<5*>, il1=\E[L$<5>, -+ ind=\n$<3>, invis=\E[8m, ip=$<3>, is1=\E[62;1"p\E[?5W, -+ is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h$<16>, -+ is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, -+ kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, -+ kf19=\E[33~, kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, -+ khome=\E[26~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -+ kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, -+ mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM$<3>, -+ rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m, -+ rmul=\E[m, rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<70>, -+ rs3=\E[?5l, sc=\E7, -+ sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ tsl=\E[40h\E7\E[25;%i%p1%dH, use=vt220+keypad, - # --# (cdc721: changed :ri: to :sr: -- esr) --cdc721-esc|Control Data 721, -- OTbs, OTpt, am, bw, msgr, xon, -- OTkn#10, cols#80, it#8, lines#30, -- bel=^G, blink=^N, cbt=^^^K, clear=^L, cub1=^H, cud1=^Z, -- cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, cuu1=^W, -- dch1=^^N, dim=^\, dl1=^^Q, ed=^^P, el=^K, home=^Y, hts=^^^RW, -- ich1=^^O, il1=^^R, ind=\036W =\036U, invis=^^^R[, -- is2=\036\022B\003\036\035\017\022\025\035\036E\036\022H\036\022J\036\022L\036\022N\036\022P\036\022Q\036\022\036\022\^\036\022b\036\022i\036W =\036\022Z\036\011C1-` `!k/o, -- kbs=^H, kcub1=^H, kcud1=^Z, kcuf1=^X, kcuu1=^W, kf0=^^q, -- kf1=^^r, kf2=^^s, kf3=^^t, kf4=^^u, kf5=^^v, kf6=^^w, kf7=^^x, -- kf8=^^y, kf9=^^z, khome=^Y, ll=^B =, rev=^^D, -- ri=\036W =\036V, rmir=, rmkx=^^^Rl, rmso=^^E, rmul=^], -- sgr0=\017\025\035\036E\036\022\\, smir=, smkx=^^^Rk, -- smso=^^D, smul=^\, tbc=^^^RY, -- --#### Getronics -+# Wyse 85 with visual bell. -+wy85-vb|wyse85-vb|wyse 85 with visible bell, -+ bel@, flash=\E[30h\E\,\E[30l$<300>, use=wy85, - # --# Getronics is a Dutch electronics company that at one time was called --# `Geveke' and made async terminals; but (according to the company itself!) --# they've lost all their documentation on the command set. The hardware --# documentation suggests the terminals were actually manufactured by a --# Taiwanese electronics company named Cal-Comp. There are known --# to have been at least two models, the 33 and the 50. -+# Wyse 85 in 132-column mode. -+wy85-w|wyse85-w|wyse 85 in 132-column mode, -+ cols#132, wsl#132, -+ rs2=\E[35h\E[?3h$<70>, use=wy85, - # -+# Wyse 85 in 132-column mode with visual bell. -+wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns, -+ bel@, use=wy85-w, - --# The 50 seems to be a top end vt220 clone, with the addition of a higher --# screen resolution, a larger screen, at least 1 page of memory above and --# below the screen, apparently pages of memory right and left of the screen --# which can be panned, and about 75 function keys (15 function keys x normal, --# shift, control, func A, func B). It also has more setup possibilities than --# the vt220. The monitor case is dated November 1978 and the keyboard case is --# May 1982. -+# From: Kevin Turner <kevint@aracnet.com>, 12 Jul 1998 -+# This copes with an apparent firmware bug in the wy85. He writes: -+# "What I did was change leave the terminal cursor keys set to Normal -+# (instead of application), and change \E[ to \233 for all the keys in -+# terminfo. At one point, I found some reference indicating that this -+# terminal bug (not sending \E[) was acknowledged by Wyse (so it's not just -+# me), but I can't find that and the server under my bookmark to "Wyse -+# Technical" isn't responding. So there's the question of wether the wy85 -+# terminfo should reflect the manufactuer's intended behaviour of the terminal -+# or the actual." -+wy85-8bit|wyse85-8bit|wyse 85 in 8-bit mode, -+ am, hs, mc5i, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, wsl#80, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J$<110>, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP$<3*>, dch1=\E[P$<3>, dim=\E[2m, -+ dl=\E[%p1%dM$<3*>, dl1=\E[M$<3>, dsl=\E[40l, -+ ech=\E[%p1%dX, ed=\E[J$<110>, el=\E[K$<1>, el1=\E[1K, -+ enacs=\E)0, flash=\E[30h\E\,\E[30l$<300>, -+ fsl=\E[1;24r\E8, home=\E[H, ht=\011$<1>, hts=\EH, -+ ich=\E[%p1%d@$<4*>, il=\E[%p1%dL$<5*>, il1=\E[L$<5>, -+ ind=\n$<3>, invis=\E[8m, ip=$<3>, is1=\E[62;1"p\E[?5W, -+ is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h$<16>, -+ is3=\E>\E(B\E)0\017\E[m, ka1=\EOw, ka3=\EOy, kb2=\EOu, -+ kbs=^H, kc1=\EOq, kc3=\EOs, kcub1=\233D, kcud1=\233B, -+ kcuf1=\233C, kcuu1=\233A, kdch1=\2333~, kent=\EOM, -+ kf1=\EOP, kf10=\23321~, kf11=\23323~, kf12=\23324~, -+ kf13=\23325~, kf14=\23326~, kf15=\23328~, kf16=\23329~, -+ kf17=\23331~, kf18=\23332~, kf19=\23333~, kf2=\EOQ, -+ kf20=\23334~, kf3=\EOR, kf4=\EOS, kf6=\23317~, kf7=\23318~, -+ kf8=\23319~, kf9=\23320~, kfnd=\2331~, khlp=\23328~, -+ khome=\23326~, kich1=\2332~, knp=\2336~, kpp=\2335~, -+ kslt=\2334~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, -+ mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM$<3>, -+ rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[m, -+ rmul=\E[m, rs1=\E[13l\E[3l\E!p, rs2=\E[35h\E[?3l$<70>, -+ rs3=\E[?5l, sc=\E7, -+ sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;+m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ tsl=\E[40h\E7\E[25;%i%p1%dH, - # --# The vt100 emulation works as is. The entry below describes the rather --# non-conformant (but more featureful) ANSI mode. -+# Wyse 185 emulating a vt320 7 bit mode. - # --# From: Stephen Peterson <stv@utrecht.ow.nl>, 27 May 1995 --visa50|geveke visa 50 terminal in ansi 80 character mode, -- bw, mir, msgr, -- cols#80, lines#25, -- acsc=0_aaffggh jjkkllmmnnooqqssttuuvvwwxx, bel=^G, -- blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+# This terminal always displays 25 lines. These lines may be used -+# as 24 data lines and a terminal status line (top or bottom) or -+# 25 data lines. The 48 and 50 line modes change the page size -+# and not the number of lines on the screen. -+# -+# The Compose Character key can be used as a meta key if changed -+# by set-up. -+# -+wy185|wyse185|wyse 185, -+ am, hs, km, mc5i, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, wsl#80, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr$<20>, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dX, dch1=\E[X, dim=\E[2m, dl=\E[%p1%dM, -- dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, home=\E[H, -- hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@, -- il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, -- is2=\E0;2m\E[1;25r\E[25;1H\E[?3l\E[?7h\E[?8h, -- ka1=\E[f, ka3=\EOQ, kb2=\EOP, kbs=^H, kc1=\EOR, kc3=\EOS, -- kcub1=\E[D, kcud1=\E[A, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, -- kdl1=\EOS, kf0=\E010, kf1=\E001, kf10=\E011, kf2=\E002, -- kf3=\E003, kf4=\E004, kf5=\E005, kf6=\E006, kf7=\E007, -- kf8=\E008, kf9=\E009, khome=\E[f, lf2=A delete char, -- lf3=A insert line, lf4=A delete line, lf5=A clear, -- lf6=A ce of/cf gn, lf7=A print, lf8=A on-line, -- lf9=A funcl0=A send, nel=^M^J, rev=\E[7m, rmacs=\E[3l, -- rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[0;2m, -- rmul=\E[0m, sgr0=\E[0;2m, smacs=\E3h, smam=\E?7h, -- smir=\E[4h, smkx=\E=, smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, -- vpa=\E[%i%p1%dd, -- --#### Human Designed Systems (Concept) -+ cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<3>, dch1=\E[P$<3>, -+ dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, -+ dsl=\E7\E[99;0H\E[K\E8, ech=\E[%p1%dX, ed=\E[J$<40>, -+ el=\E[K, el1=\E[1K, enacs=\E)0, -+ flash=\E[30h\E\,\E[30l$<100>, fsl=\E[1;24r\E8, -+ home=\E[H, hpa=\E[%i%p1%d`, ht=^I, hts=\EH, -+ ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>, il1=\E[L$<3>, -+ ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W, -+ is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25h, -+ is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kf1=\EOP, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -+ kf18=\E[32~, kf19=\E[33~, kf2=\EOQ, kf20=\E[34~, kf3=\EOR, -+ kf4=\EOS, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, kich1=\E[2~, -+ knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, -+ lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, -+ ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, rmcup=\E[ R, rmir=\E[4l, -+ rmkx=\E>, rmso=\E[27m, rmul=\E[24m, -+ rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p, rs2=\E[35h\E[?3l, -+ rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7, -+ sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[ Q, -+ smir=\E[4h, smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, tsl=\E7\E[99;%i%p1%dH, vpa=\E[%i%p1%dd, -+ use=vt220+keypad, - # --# Human Designed Systems --# 400 Fehley Drive --# King of Prussia, PA 19406 --# Vox: (610)-277-8300 --# Fax: (610)-275-5739 --# Net: support@hds.com -+# Wyse 185 with 24 data lines and top status (terminal status) -+wy185-24|wyse185-24|wyse 185 with 24 data lines, -+ hs@, -+ dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@, -+ use=wy185, - # --# John Martin <john@hds.com> is their termcap expert. They're mostly out of --# the character-terminal business now (1995) and making X terminals. In --# particular, the whole `Concept' line described here was discontinued long --# ago. -+# Wyse 185 with visual bell. -+wy185-vb|wyse185-vb|wyse 185+flash, -+ bel@, use=wy185, - # -+# Wyse 185 in 132-column mode. -+wy185-w|wyse185-w|wyse 185 in 132-column mode, -+ cols#132, wsl#132, -+ dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>, -+ ip=$<7>, rs2=\E[35h\E[?3h, use=wy185, -+# -+# Wyse 185 in 132-column mode with visual bell. -+wy185-wvb|wyse185-wvb|wyse 185+flash+132 cols, -+ bel@, use=wy185-w, - --# From: <vax135!hpk> Sat Jun 27 07:41:20 1981 --# Extensive changes to c108 by arpavax:eric Feb 1982 --# Some unknown person at SCO then translated it to terminfo. -+# wy325 terminfo entries -+# Done by Joe H. Davis 3-9-92 -+ -+# lines 25 columns 80 - # --# There seem to be a number of different versions of the C108 PROMS --# (with bug fixes in its Z-80 program). -+wy325|wyse325|Wyse epc, -+ am, bw, hs, mc5i, mir, -+ cols#80, lh#1, lines#24, lw#8, nlab#8, pb#9601, wsl#45, -+ acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~, -+ bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<50>, -+ cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<7>, -+ dim=\EGp, dl1=\ER$<3>, dsl=\EF\r, ed=\EY$<50>, el=\ET$<4>, -+ flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=^I, hts=\E1, -+ il1=\EE$<3>, ind=\n$<3>, ip=$<2>, is1=\EcB0\EcC1, -+ is2=\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El, -+ is3=\Ew0$<16>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, -+ kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, -+ kel=\ET, kent=\E7, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -+ kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, -+ kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, -+ kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\Eq, -+ kil1=\EE, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=^^^K, -+ mc0=\EP, mc4=^T, mc5=\Ed#, -+ pfloc=\EZ2%p1%{63}%+%c%p2%s\177, -+ pfx=\EZ1%p1%{63}%+%c%p2%s\177, -+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<2>, -+ rmacs=\EcD, rmam=\Ed., rmcup=\Ew0, rmir=\Er, rmln=\EA11, -+ rs1=\E~!\E~4$<30>, rs2=\EeF\E`\:$<70>, -+ rs3=\EwG\Ee($<100>, -+ sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EcE%e\EcD%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, -+ sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/, -+ smcup=\Ew1, smir=\Eq, smln=\EA10, smso=\EGt, tbc=\E0, -+ tsl=\EF, use=adm+sgr, -+ - # --# The first one that we had would lock out the keyboard of you --# sent lots of short lines (like /usr/dict/words) at 9600 baud. --# Try that on your C108 and see if it sends a ^S when you type it. --# If so, you have an old version of the PROMs. -+# lines 24 columns 80 vb - # --# You should configure the C108 to send ^S/^Q before running this. --# It is much faster (at 9600 baud) than the c100 because the delays --# are not fixed. --# new status line display entries for c108-8p: --# <is3> - init str #3 - setup term for status display - --# set programmer mode, select window 2, define window at last --# line of memory, set bkgnd stat mesg there, select window 0. -+wy325-vb|wyse325-vb|wyse-325 with visual bell, -+ bel@, use=wy325, -+ - # --# <tsl> - to status line - select window 2, home cursor, erase to --# end-of-window, 1/2 bright on, goto(line#0, col#?) -+# lines 24 columns 132 - # --# <fsl> - from status line - 1/2 bright off, select window 0 -+wy325-w|wyse325-w|wy325w-24|wyse-325 in wide mode, -+ cols#132, lw#7, nlab#16, wsl#97, -+ cup=\Ea%i%p1%dR%p2%dC, dch1=\EW$<12>, ip=$<4>, -+ rs2=\E`;$<70>, use=wy325, - # --# <dsl> - disable status display - set bkgnd status mesg with --# illegal window # -+# lines 25 columns 80 - # --# There are probably more function keys that should be added but --# I don't know what they are. -+wy325-25|wyse325-25|wy325-80|wyse-325|wyse-325 25 lines, -+ lh@, lines#25, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<100>, use=wy325, - # --# No delays needed on c108 because of ^S/^Q handshaking -+# lines 25 columns 132 - # --c108|concept108|c108-8p|concept108-8p|concept 108 w/8 pages, -- is3=\EU\E z"\Ev\001\177 !p\E ;"\E z \Ev \001\177p\Ep\n, -- rmcup=\Ev \001\177p\Ep\r\n, use=c108-4p, --c108-4p|concept108-4p|concept 108 w/4 pages, -- OTbs, eslok, hs, xon, -- pb@, -- acsc=jEkTl\\mMqLxU, cnorm=\Ew, cr=^M, -- cup=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c, -- cvvis=\EW, dch1=\E 1$<16*>, dsl=\E ;\177, fsl=\Ee\E z\s, -- ind=^J, is1=\EK\E!\E F, -- is3=\EU\E z"\Ev\177 !p\E ;"\E z \Ev \001 p\Ep\n, -- rmacs=\Ej\s, rmcup=\Ev \001 p\Ep\r\n, smacs=\Ej!, -- smcup=\EU\Ev 8p\Ep\r\E\025, -- tsl=\E z"\E?\E\005\EE\Ea %+\s, use=c100, --c108-rv|c108-rv-8p|concept 108 w/8 pages in reverse video, -- rmcup=\Ev \002 p\Ep\r\n, smcup=\EU\Ev 8p\Ep\r, -- use=c108-rv-4p, --c108-rv-4p|concept108rv4p|concept 108 w/4 pages in reverse video, -- flash=\EK$<200>\Ek, is1=\Ek, rmso=\Ee, smso=\EE, -- use=c108-4p, --c108-w|c108-w-8p|concept108-w-8|concept108-w8p|concept 108 w/8 pages in wide mode, -- cols#132, -- is1=\E F\E", rmcup=\Ev ^A0\001D\Ep\r\n, -- smcup=\EU\Ev 8\001D\Ep\r, use=c108-8p, -- --# Concept 100: --# These have only window relative cursor addressing, not screen --# relative. To get it to work right here, smcup/rmcup (which --# were invented for the concept) lock you into a one page --# window for screen style programs. -+wy325-25w|wyse325-25w|wy325 132 columns, -+ lh@, lines#25, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<100>, use=wy325-w, - # --# To get out of the one page window, we use a clever trick: --# we set the window size to zero ("\Ev " in rmcup) which the --# terminal recognizes as an error and resets the window to all --# of memory. -+# lines 25 columns 132 vb - # --# This trick works on c100 but does not on c108, sigh. -+wy325-w-vb|wy325-wvb|wyse325-wvb|wyse-325 wide mode reverse video, -+ bel@, use=wy325-w, -+ - # --# Some tty drivers use cr3 for concept, others use nl3, hence --# the delays on cr and ind below. This padding is only needed at --# 9600 baud and up. One or the other is commented out depending on --# local conventions. -+# lines 42 columns 80 - # --# 2 ms padding on <rmcup> isn't always enough. 6 works fine. Maybe --# less than 6 but more than 2 will work. -+wy325-42|wyse325-42|wyse-325 42 lines, -+ lh@, lines#42, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<100>, use=wy325, - # --# Note: can't use function keys f7-f10 because they are --# indistinguishable from arrow keys (!), also, del char and --# clear eol use xon/xoff so they probably won't work very well. -+# lines 42 columns 132 - # --# Also note that we don't define insrt/del char/delline/eop/send --# because they don't transmit unless we reset them - I figured --# it was a bad idea to clobber their definitions. -+wy325-42w|wyse325-42w|wyse-325 42 lines wide mode, -+ lh@, lines#42, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<100>, use=wy325-w, - # --# The <mc5> sequence changes the escape character to ^^ so that --# escapes will be passed through to the printer. Only trouble --# is that ^^ won't be - ^^ was chosen to be unlikely. --# Unfortunately, if you're sending raster bits through to be --# plotted, any character you choose will be likely, so we lose. -+# lines 42 columns 132 vb - # --# \EQ"\EY(^W (send anything from printer to host, for xon/xoff) --# cannot be # in is2 because it will hang a c100 with no printer --# if sent twice. --c100|concept100|concept|c104|c100-4p|hds concept 100, -- OTbs, am, eo, mir, ul, xenl, -- cols#80, lines#24, pb#9600, vt#8, -- bel=^G, blink=\EC, clear=\E?\E\005$<2*>, cr=$<9>\r, -- cub1=^H, cud1=^J, cuf1=\E=, -- cup=\Ea%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E;, -- dch1=\E\021$<16*>, dim=\EE, dl1=\E\002$<3*>, -- ed=\E\005$<16*>, el=\E\025$<16>, flash=\Ek$<200>\EK, -- ht=\011$<8>, il1=\E\022$<3*>, ind=^J, invis=\EH, ip=$<16*>, -- is1=\EK, -- is2=\EU\Ef\E7\E5\E8\El\ENH\E\0\Eo&\0\Eo'\E\Eo!\0\E\007!\E\010A@ \E4#\:"\E\:a\E4#;"\E\:b\E4#<"\E\:c, -- is3=\Ev $<6>\Ep\n, kbs=^H, kcbt=\E', kctab=\E_, -- kcub1=\E>, kcud1=\E<, kcuf1=\E=, kcuu1=\E;, kdch1=\E^Q, -- kdl1=\E^B, ked=\E^C, kel=\E^S, kf1=\E5, kf2=\E6, kf3=\E7, -- kf4=\E8, kf5=\E9, kf6=\E\:a, kf7=\E\:b, kf8=\E\:c, khome=\E?, -- khts=\E], kich1=\E^P, kil1=\E^R, kind=\E[, knp=\E-, kpp=\E., -- kri=\E\\, krmir=\E\0, mc4=\036o \E\EQ!\EYP\027, -- mc5=\EQ"\EY(\027\EYD\Eo \036, prot=\EI, -- rep=\Er%p1%c%p2%{32}%+%c$<.2*>, rev=\ED, -- rmcup=\Ev $<6>\Ep\r\n, rmir=\E\s\s, rmkx=\Ex, -- rmso=\Ed, rmul=\Eg, sgr0=\EN@, -- smcup=\EU\Ev 8p\Ep\r\E\025$<16>, smir=\E^P, smkx=\EX, -- smso=\ED, smul=\EG, --c100-rv|c100-rv-4p|concept100-rv|c100 rev video, -- cnorm@, cvvis@, flash=\EK$<200>\Ek, is1=\Ek, rmso=\Ee, -- smso=\EE, use=c100, --oc100|oconcept|c100-1p|old 1 page concept 100, -- in, -- is3@, use=c100, -- --# From: Walter Skorski <walt@genetics1.JMP.TJU.EDU>, 16-oct-1996. --# Lots of notes, originally inline, but ncurses doesn't grok that. -+wy325-42w-vb|wy325-42wvb|wyse-325 42 lines wide mode visual bell, -+ bel@, use=wy325-w, - # --# am: not available in power on mode, but turned on with \E[=107;207h in --# is2=. Also, \E=124l in is2= could have been used to prevent needing --# to specify xenl:, but that would have rendered the last space on the --# last line useless. --# bw: Not available in power on mode, but turned on with \E[=107;207h in --# is2=. --# clear: Could be done with \E[2J alone, except that vi (and probably most --# other programs) assume that this also homes the cursor. --# dsl: Go to window 2, go to the beginning of the line, use a line feed to --# scroll the window, and go back to window 1. --# is2: the string may cause a warning to be issued by tic that it --# found a very long line and that it suspects that a comma is missing --# somewhere. This warning can be ignored (unless it comes up more than --# once). The initialization string contains the following commands: -+# lines 43 columns 80 - # --# [Setup mode items changed from factory defaults:] --# \E)0 set alternate character set to --# graphics --# ^O set character set to default --# [In case it wasn't] --# \E[m turn off all attributes --# [In case they weren't off] --# \E[=107; cursor wrap and --# 207h character wrap on --# \E[90;3u set Fkey definitions to "transmit" --# defaults --# \E[92;3u set cursor key definitions to --# "transmit" defaults --# \E[43;1u set shift F13 to transmit... --# \177\E$P\177 --# \E[44;1u set shift F14 to transmit... --# \177\E$Q\177 --# \E[45;1u set shift F15 to transmit... --# \177\E$R\177 --# \E[46;1u set shift F16 to transmit... --# \177\E$S\177 --# \E[200;1u set shift up to transmit... --# \177\E$A\177 --# \E[201;1u set shift down to transmit... --# \177\E$B\177 --# \E[202;1u set shift right to transmit... --# \177\E$C\177 --# \E[203;1u set shift left to transmit... --# \177\E$D\177 --# \E[204;1u set shift home to transmit... --# \177\E$H\177 --# \E[212;1u set backtab to transmit... --# \177\E$I\177 --# \E[213;1u set shift backspace to transmit... --# \177\E$^H\177 --# \E[214;1u set shift del to transmit... --# "\E$\177" --# [Necessary items not mentioned in setup mode:] --# \E[2!w move to window 2 --# \E[25;25w define window as line 25 of memory --# \E[!w move to window 1 --# \E[2*w show current line of window 2 as --# status line --# \E[2+x set meta key to use high bit --# \E[;3+} move underline to bottom of character -+wy325-43|wyse325-43|wyse-325 43 lines, -+ lh@, lines#43, lw@, nlab@, -+ pln@, use=wy325, - # --# All Fkeys are set to their default transmit definitions with \E[90;3u --# in is2=. IMPORTANT: to use this terminal definition, the "quit" stty --# setting MUST be redefined or deactivated, because the default is --# contained in almost all of this terminal's Fkey strings! If for some --# reason "quit" cannot be altered, the Fkeys can, but it would be --# necessary to change ^| to ^] in all of these definitions, and add --# \E[2;029!t to is2. --# lines: is set to 24 because this terminal refuses to treat the 25th --# line normally. --# ll: Not available in power on mode, but turned on with \E[=107;207h in --# is2=. --# lm: Pointless, given that this definition locks a single screen of --# memory into view, but what the hey... --# rmso: Could use \E[1;7!{ to turn off only bold and reverse (leaving any --# other attributes alone), but some programs expect this to turn off --# everything. --# rmul: Could use \E[4!{ to turn off only underline (leaving any other --# attributes alone), but some programs expect this to turn off --# everything. --# sgr: Attributes are set on this terminal with the string \E[ followed by --# a list of attribute code numbers (in decimal, separated by --# semicolons), followed by the character m. The attribute code --# numbers are: --# 1 for bold; --# 2 for dim (which is ignored in power on mode); --# 4 for underline; --# 5 for blinking; --# 7 for inverse; --# 8 for not displayable; and --# =99 for protected (except that there are strange side --# effects to protected characters which make them inadvisable). --# The mapping of terminfo parameters to attributes is as follows: --# %p1 (standout) = bold and inverse together; --# %p2 (underline) = underline; --# %p3 (reverse) = inverse; --# %p4 (blink) = blinking; --# %p5 (dim) is ignored; --# %p6 (bold) = bold; --# %p7 (invisible) = not displayable; --# %p8 (protected) is ignored; and --# %p9 (alt char set) = alt char set. --# The code to do this is: --# \E[0 OUTPUT \E[0 --# %?%p1%p6%O IF (standout; bold) OR --# %t;1 THEN OUTPUT ;1 --# %; ENDIF --# %?%p2 IF underline --# %t;4 THEN OUTPUT ;4 --# %; ENDIF --# %?%p4 IF blink --# %t;5 THEN OUTPUT ;5 --# %; ENDIF --# %?%p1%p3%O IF (standout; reverse) OR --# %t;7 THEN OUTPUT ;7 --# %; ENDIF --# %?%p7 IF invisible --# %t;8 THEN OUTPUT ;8 --# %; ENDIF --# m OUTPUT m --# %?%p9 IF altcharset --# %t^N THEN OUTPUT ^N --# %e^O ELSE OUTPUT ^O --# %; ENDIF --# sgr0: Everything is turned off (including alternate character set), since --# there is no way of knowing what it is that the program wants turned --# off. --# smul: The "underline" attribute is reconfigurable to an overline or --# strikethru, or (as done with \E[;3+} in is2=), to a line at the true --# bottom of the character cell. This was done to allow for more readable --# underlined characters, and to be able to distinguish between an --# underlined space, an underscore, and an underlined underscore. --# xenl: Terminal can be configured to not need this, but this "glitch" --# behavior is actually preferable with autowrap terminals. -+# lines 43 columns 132 - # --# Parameters kf31= thru kf53= actually contain the strings sent by the shifted --# Fkeys. There are no parameters for shifted Fkeys in terminfo. The is2 --# string modifies the 'O' in kf43 to kf46 to a '$'. -+wy325-43w|wyse325-43w|wyse-325 43 lines wide mode, -+ lh@, lines#43, lw@, nlab@, -+ pln@, rs3=\EwG\Ee)$<100>, use=wy325-w, - # --# kcbt was originally ^I but redefined in is2=. --# kHOM was \E[H originally but redefined in is2=, as were a number of --# other keys. --# kDC was originally \177 but redefined in is2=. -+# lines 43 columns 132 vb - # --# kbs: Shift was also ^H originally but redefined as \E$^H in is2=. --# tsl: Go to window 2, then do an hpa=. -+wy325-43w-vb|wy325-43wvb|wyse-325 43 lines wide mode visual bell, -+ bel@, use=wy325-w, -+ -+# Wyse 370 -- 24 line screen with status line. - # --#------- flash=\E[8;3!}^G\E[3;3!} --#------- flash=\E[?5h$<100>\E[?5l --# There are two ways to flash the screen, both of which have their drawbacks. --# The first is to set the bell mode to video, transmit a bell character, and --# set the bell mode back - but to what? There is no way of knowing what the --# user's old bell setting was before we messed with it. Worse, the command to --# set the bell mode also sets the key click volume, and there is no way to say --# "leave that alone", or to know what it's set to, either. --# The second way to do a flash is to set the screen to inverse video, pad for a --# tenth of a second, and set it back - but like before, there's no way to know --# that the screen wasn't ALREADY in inverse video, or that the user may prefer --# it that way. The point is moot anyway, since vi (and probably other --# programs) assume that by defining flash=, you want the computer to use it --# INSTEAD of bel=, rather than as a secondary type of signal. -+# The terminal may have to be set for 8 data bits and 2 stop -+# bits for the arrow keys to work. - # --#------- cvvis=\E[+{ --# The is the power on setting, which is also as visible as the cursor --# gets. --#------- wind=\E[%i%p1%d;%p2%d;%p3%{1}%+%d;%p4%{1}%+%dw --# Windowing is possible, but not defined here because it is also used to --# emulate status line functions. Allowing a program to set a window could --# clobber the status line or render it unusable. There is additional memory, --# but screen scroll functions are destructive and do not make use of it. -+# If you change keyboards the terminal will send different -+# escape sequences. -+# The following definition is for the basic terminal without -+# function keys. - # --#------- dim= Not available in power on mode. --# You have a choice of defining low intensity characters as "half bright" and --# high intensity as "normal", or defining low as "normal" and high as "bold". --# No matter which you choose, only one of either "half bright" or "bold" is --# available at any time, so taking the time to override the default is --# pointless. -+# <u0> -> enter Tektronix 4010/4014 mode -+# <u1> -> exit Tektronix 4010/4014 mode -+# <u2> -> enter ASCII mode (from any ANSI mode) -+# <u3> -> exit ASCII mode (goto native ANSI mode) -+# <u4> -> enter Tek 4207 ANSI mode (from any ANSI mode) -+# <u5> -> exit Tek 4207 mode (goto native ANSI mode) - # --#------- prot=\E[=0;99m --# Not defined, because it appears to have some strange side effects. --#------- pfkey=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%; --#------- pfloc=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%; --#------- pfx=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%d;1u\177%p2%s\177%; --# Available, but making them available to programs is inadvisable. --# The code to do this is: --# %?%p1%{24}%< IF ((key; 24) <; --# %p1%{30}%> ((key; 30) >; --# %p1%{54}%< (key; 54) < --# %A ) AND --# %O ) OR --# [that is, "IF key < 24 OR (key > 30 AND key < 54)",] --# %t\E[ THEN OUTPUT \E[ --# %p1%d OUTPUT (key) as decimal --# [next line applies to pfx only] --# ;1 OUTPUT ;1 --# u OUTPUT u --# \177 OUTPUT \177 --# %p2%s OUTPUT (string) as string --# \177 OUTPUT \177 --# [DEL chosen as delimiter, but could be any character] --# [implied: ELSE do nothing] --# %; ENDIF -+# Bug: The <op> capability resets attributes. -+wy370-nk|wyse 370 without function keys, -+ am, ccc, hs, mc5i, mir, msgr, xenl, xon, -+ colors#64, cols#80, it#8, lines#24, ncv#48, pairs#64, wsl#80, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<1*>, dch1=\E[P$<1>, -+ dclk=\E[31h, dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, -+ dsl=\E[40l, ech=\E[%p1%dX$<.1*>, ed=\E[J$<40>, -+ el=\E[K$<10>, el1=\E[1K$<12>, enacs=\E)0, -+ flash=\E[30h\E\,\E[30l$<300>, fsl=\E[1;24r\E8, -+ home=\E[H, hpa=\E[%i%p1%d`, ht=\011$<1>, hts=\EH, -+ ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>, -+ ind=\n$<2>, -+ initc=\E[66;%p1%d;%?%p2%{250}%<%t%{0}%e%p2%{500}%<%t%{16}%e%p2%{750}%<%t%{32}%e%{48}%;%?%p3%{250}%<%t%{0}%e%p3%{500}%<%t%{4}%e%p3%{750}%<%t%{8}%e%{12}%;%?%p4%{250}%<%t%{0}%e%p4%{500}%<%t%{1}%e%p4%{750}%<%t%{2}%e%{3}%;%{1}%+%+%+%dw, -+ invis=\E[8m, ip=$<1>, is1=\E[90;1"p\E[?5W$<6>, -+ is2=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h, -+ is3=\E>\017\E)0\E(B\E[63;0w\E[m, mc0=\E[0i, mc4=\E[4i, -+ mc5=\E[5i, -+ oc=\E[60w\E[63;0w\E[66;1;4w\E[66;2;13w\E[66;3;16w\E[66;4;49w\E[66;5;51w\E[66;6;61w\E[66;7;64w, -+ op=\E[m, rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O, -+ rmam=\E[?7l, rmclk=\E[31l, rmcup=\E[ R, rmir=\E[4l, -+ rmkx=\E>, rmso=\E[27m, rmul=\E[24m, -+ rs1=\E[13l\E[3l\E!p\E[?4i, rs2=\E[35h\E[?3l$<8>, -+ rs3=\E[?5l, sc=\E7, setb=\E[62;%p1%dw, setf=\E[61;%p1%dw, -+ sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[ Q, -+ smir=\E[4h, smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, tsl=\E[40l\E[40h\E7\E[99;%i%p1%dH, -+ u0=\E[?38h\E8, u1=\E[?38l\E)0, u2=\E[92;52"p, u3=\E~B, -+ u4=\E[92;76"p, u5=\E%!1\E[90;1"p, vpa=\E[%i%p1%dd, - # --#------- rs2= --# Not defined since anything it might do could be done faster and easier with --# either Meta-Shift-Reset or the main power switch. -+# Function key set for the ASCII (wy-50 compatible) keyboard -+# This is the default 370. - # --#------- smkx=\E[1!z --#------- rmkx=\E[!z --# These sequences apply to the cursor and setup keys only, not to the --# numeric keypad. But it doesn't matter anyway, since making these --# available to programs is inadvisable. --# For the key definitions below, all sequences beginning with \E$ are --# custom and programmed into the terminal via is2. \E$ also has no --# meaning to any other terminal. -+wy370|wyse370|wy370-101k|Wyse 370 with 101 key keyboard, -+ kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kdch1=\EOQ, kdl1=\EOQ, kent=\EOM, kf1=\E[?4i, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf2=\E[?3i, -+ kf3=\E[2i, kf4=\E[@, kf5=\E[M, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, khome=\E[H, kich1=\EOP, kil1=\EOP, -+ knp=\E[U, kpp=\E[V, use=wy370-nk, - # --#------- cmdch=\E[;%p1%d!t --# Available, but making it available to programs is inadvisable. --#------- smxon=\E[1*q --# Available, but making it available to programs is inadvisable. --# Terminal will send XON/XOFF on buffer overflow. --#------- rmxon=\E[*q --# Available, but making it available to programs is inadvisable. --# Terminal will not notify on buffer overflow. --#------- smm=\E[2+x --#------- rmm=\E[+x --# Available, but making them available to programs is inadvisable. -+# Function key set for the VT-320 (and wy85) compatible keyboard - # --# Printing: --# It's not made clear in the manuals, but based on other ansi/vt type --# terminals, it's a good guess that this terminal is capable of both --# "transparent print" (which doesn't copy data to the screen, and --# therefore needs mc5i: specified to say so) and "auxilliary print" --# (which does duplicate printed data on the screen, in which case mc4= --# and mc5= should use the \E[?4i and \E[?5i strings instead). -- --hds200|Human Designed Systems HDS200, -- am, bw, eslok, hs, km, mc5i, mir, msgr, xenl, xon, -- cols#80, it#8, lines#24, lm#0, -- acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, -- blink=\E[0;5m, bold=\E[0;1m, cbt=\E[Z, civis=\E[6+{, -- clear=\E[H\E[J, cnorm=\E[+{, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- dsl=\E[2!w\r\n\E[!w, ed=\E[J, el=\E[K, el1=\E[1K, -- fsl=\E[!w, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, -- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, -- invis=\E[0;8m, -- is2=\E)0\017\E[m\E[=107;207h\E[90;3u\E[92;3u\E[43;1u\177\E$P\177\E[44;1u\177\E$Q\177\E[45;1u\177\E$R\177\E[46;1u\177\E$S\177\E[200;1u\177\E$A\177\E[201;1u\177\E$B\177\E[202;1u\177\E$C\177\E[203;1u\177\E$D\177\E[204;1u\177\E$H\177\E[212;1u\177\E$I\177\E[213;1u\177\E$\010\177\E[214;1u"\E$\177"\E[2!w\E[25;25w\E[!w\E[2*w\E[2+x\E[;3+}, -- kDC=\E$\177, kHOM=\E$H, kLFT=\E$D, kRIT=\E$C, kbs=^H, -- kcbt=\E$I, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\177, kent=^M, kf1=^\001\r, kf10=^\010\r, -- kf11=^\011\r, kf12=^\012\r, kf13=\EOP, kf14=\EOQ, -- kf15=\EOR, kf16=\EOS, kf17=^\017\r, kf18=^\018\r, -- kf19=^\019\r, kf2=^\002\r, kf20=^\020\r, kf21=^\021\r, -- kf22=^\022\r, kf23=^\023\r, kf3=^\003\r, kf31=^\031\r, -- kf32=^\032\r, kf33=^\033\r, kf34=^\034\r, kf35=^\035\r, -- kf36=^\036\r, kf37=^\037\r, kf38=^\038\r, kf39=^\039\r, -- kf4=^\004\r, kf40=^\040\r, kf41=^\041\r, kf42=^\042\r, -- kf43=\E$P, kf44=\E$Q, kf45=\E$R, kf46=\E$S, kf47=^\047\r, -- kf48=^\048\r, kf49=^\049\r, kf5=^\005\r, kf50=^\050\r, -- kf51=^\051\r, kf52=^\052\r, kf53=^\053\r, kf6=^\006\r, -- kf7=^\007\r, kf8=^\008\r, kf9=^\009\r, khome=\E[H, -- kind=\E[T, knp=\E[U, kpp=\E[V, kri=\E[S, ll=\E[H\E[A, -- mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\E[E, rc=\E8, -- rev=\E[0;7m, ri=\EM, rmacs=^O, rmir=\E[4l, rmso=\E[m\017, -- rmul=\E[m\017, sc=\E7, -- sgr=\E[0%?%p1%p6%O%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%O%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, smir=\E[4h, smso=\E[0;1;7m, -- smul=\E[0;4m, tbc=\E[3g, tsl=\E[2!w\E[%i%p1%dG, -- vpa=\E[%i%p1%dd, -- --# <ht> through <el> included to specify padding needed in raw mode. --# (avt-ns: added empty <acsc> to suppress a tic warning --esr) --avt-ns|concept avt no status line, -- OTbs, am, eo, mir, ul, xenl, xon, -- cols#80, it#8, lines#24, lm#192, -- acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -- clear=\E[H\E[J$<38>, cnorm=\E[=119l, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E[=119h, dch1=\E[P, dim=\E[1!{, dl=\E[%p1%dM$<4*>, -- dl1=\E[M$<4>, ed=\E[J$<96>, el=\E[K$<6>, home=\E[H, -- hpa=\E[%p1%{1}%+%dG, ht=\011$<4>, hts=\EH, ich=\E[%p1%d@, -- ich1=\E[@, il=\E[%p1%dL$<4*>, il1=\E[L$<4>, ind=\n$<8>, -- invis=\E[8m, ip=$<4>, is1=\E[=103l\E[=205l, -- is2=\E[1*q\E[2!t\E[7!t\E[=4;101;119;122l\E[=107;118;207h\E)1\E[1Q\EW\E[!y\E[!z\E>\E[0\:0\:32!r\E[0*w\E[w\E2\r\n\E[2;27!t, -+wy370-105k|Wyse 370 with 105 key keyboard, - kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\E^B\r, ked=\E^D\r, kf1=\EOP, kf2=\EOQ, kf3=\EOR, -- kf4=\EOS, khome=\E[H, kich1=\E^A\r, kil1=\E^C\r, ll=\E[24H, -- mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, -- pfloc=\E[%p1%d;0u#%p2%s#, pfx=\E[%p1%d;1u#%p2%s#, -- prot=\E[99m, rc=\E8, rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, -- ri=\EM$<4>, rmacs=\016$<1>, rmcup=\E[w\E2\r\n, -- rmir=\E[4l, rmkx=\E[!z\E[0;2u, rmso=\E[7!{, rmul=\E[4!{, -- sc=\E7, -- sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m, -- sgr0=\E[m, smacs=\017$<1>, smcup=\E[=4l\E[1;24w\E2\r, -- smir=\E[4h, smkx=\E[1!z\E[0;3u, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, vpa=\E[%p1%{1}%+%dd, --avt-rv-ns|concept avt in reverse video mode/no status line, -- flash=\E[=205l$<200>\E[=205h, is1=\E[=103l\E[=205h, -- use=avt-ns, --avt-w-ns|concept avt in 132 column mode/no status line, -- is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w, -- use=avt-ns, --avt-w-rv-ns|concept avt in 132 column mode/no status line/reverse video, -- flash=\E[=205l$<200>\E[=205h, is1=\E[=103h\E[=205h, -- smcup=\E[H\E[1;24;1;132w, use=avt-ns, -- --# Concept AVT with status line. We get the status line using the --# "Background status line" feature of the terminal. We swipe the --# first line of memory in window 2 for the status line, keeping --# 191 lines of memory and 24 screen lines for regular use. --# The first line is used instead of the last so that this works --# on both 4 and 8 page AVTs. (Note the lm#191 or 192 - this --# assumes an 8 page AVT but lm isn't currently used anywhere.) -+ kdch1=\E[3~, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, -+ kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, -+ kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, kf20=\E[34~, -+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, -+ khlp=\E[28~, khome=\E[26~, kich1=\E[2~, knp=\E[6~, -+ kpp=\E[5~, kslt=\E[4~, lf1=PF1, lf2=PF2, lf3=PF3, lf4=PF4, -+ use=wy370-nk, use=vt220+keypad, - # --avt+s|concept avt status line changes, -- eslok, hs, -- lm#191, -- dsl=\E[0*w, fsl=\E[1;1!w, -- is3=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n, -- rmcup=\E[2w\E2\r\n, smcup=\E[2;25w\E2\r, -- tsl=\E[2;1!w\E[;%p1%dH\E[2K, --avt|avt-s|concept-avt|avt w/80 columns, -- use=avt+s, use=avt-ns, --avt-rv|avt-rv-s|avt reverse video w/sl, -- flash=\E[=205l$<200>\E[=205h, is1=\E[=103l\E[=205h, -- use=avt+s, use=avt-ns, --avt-w|avt-w-s|concept avt 132 cols+status, -- is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w, -- use=avt+s, use=avt-ns, --avt-w-rv|avt-w-rv-s|avt wide+status+rv, -- flash=\E[=205l$<200>\E[=205h, is1=\E[=103h\E[=205h, -- smcup=\E[H\E[1;24;1;132w, use=avt+s, use=avt-ns, -- --#### Contel Business Systems. -+# Function key set for the PC compatible keyboard - # -- --# Contel c300 and c320 terminals. --contel300|contel320|c300|Contel Business Systems C-300 or C-320, -- am, in, xon, -- cols#80, lines#24, xmc#1, -- bel=^G, clear=\EK, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, -- dch1=\EO$<5.5*>, dl1=\EM$<5.5*>, ed=\EJ$<5.5*>, -- el=\EI$<5.5>, flash=\020\002$<200/>\020\003, home=\EH, -- hts=\E1, ich1=\EN, il1=\EL$<5.5*>, ind=^J, ip=$<5.5*>, -- kbs=^H, kf0=\ERJ, kf1=\ERA, kf2=\ERB, kf3=\ERC, kf4=\ERD, -- kf5=\ERE, kf6=\ERF, kf7=\ERG, kf8=\ERH, kf9=\ERI, ll=\EH\EA, -- rmso=\E!\0, sgr0=\E!\0, smso=\E!\r, tbc=\E3, --# Contel c301 and c321 terminals. --contel301|contel321|c301|c321|Contel Business Systems C-301 or C-321, -- flash@, ich1@, ip@, rmso=\E!\0$<20>, smso=\E!\r$<20>, -- use=contel300, -- --#### Data General (dg) -+wy370-EPC|Wyse 370 with 102 key keyboard, -+ kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kend=\E[1~, kent=\EOM, kf1=\EOP, kf10=\E[21~, -+ kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -+ kf5=\E[M, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[H, kich1=\E[2~, knp=\E[U, kpp=\E[V, use=wy370-nk, - # --# According to James Carlson <carlson@xylogics.com> writing in January 1995, --# the terminals group at Data General was shut down in 1991; all these --# terminals have thus been discontinued. -+# Wyse 370 with visual bell. -+wy370-vb|Wyse 370 with visible bell, -+ bel@, use=wy370, - # --# DG terminals have function keys that respond to the SHIFT and CTRL keys, --# e.g., SHIFT-F1 generates a different code from F1. To number the keys --# sequentially, first the unmodified key codes are listed as F1 through F15. --# Then their SHIFT versions are listed as F16 through F30, their CTRL versions --# are listed as F31 through F45, and their CTRL-SHIFT versions are listed as --# F46 through F60. This is done in the private "includes" below whose names --# start with "dgkeys+". -+# Wyse 370 in 132-column mode. -+wy370-w|Wyse 370 in 132-column mode, -+ cols#132, wsl#132, -+ rs2=\E[35h\E[?3h$<70>, use=wy370, - # --# DG terminals generally support 8 bit characters. For each of these terminals --# two descriptions are supplied: --# 1) A default description for 8 bits/character communications, which --# uses the default DG international character set and keyboard codes. --# 2) A description with suffix "-7b" for 7 bits/character communications. --# This description must use the NON-DEFAULT native keyboard language. -- --# Unmodified fkeys (kf1-kf11), Shift fkeys (kf12-kf22), Ctrl fkeys (kf23-kf33), --# Ctrl/Shift fdkeys (kf34-kf44). -- --dgkeys+8b|Private entry describing DG terminal 8-bit ANSI mode special keys, -- ka1=\233020z, ka3=\233021z, kc1=\233022z, kc3=\233023z, -- kclr=\2332J, kcub1=\233D, kcud1=\233B, kcuf1=\233C, -- kcuu1=\233A, kel=\233K, kf1=\233001z, kf10=\233010z, -- kf11=\233011z, kf12=\233012z, kf13=\233013z, -- kf14=\233014z, kf15=\233000z, kf16=\233101z, -- kf17=\233102z, kf18=\233103z, kf19=\233104z, -- kf2=\233002z, kf20=\233105z, kf21=\233106z, -- kf22=\233107z, kf23=\233108z, kf24=\233109z, -- kf25=\233110z, kf26=\233111z, kf27=\233112z, -- kf28=\233113z, kf29=\233114z, kf3=\233003z, -- kf30=\233100z, kf31=\233201z, kf32=\233202z, -- kf33=\233203z, kf34=\233204z, kf35=\233205z, -- kf36=\233206z, kf37=\233207z, kf38=\233208z, -- kf39=\233209z, kf4=\233004z, kf40=\233210z, -- kf41=\233211z, kf42=\233212z, kf43=\233213z, -- kf44=\233214z, kf45=\233200z, kf46=\233301z, -- kf47=\233302z, kf48=\233303z, kf49=\233304z, -- kf5=\233005z, kf50=\233305z, kf51=\233306z, -- kf52=\233307z, kf53=\233308z, kf54=\233309z, -- kf55=\233310z, kf56=\233311z, kf57=\233312z, -- kf58=\233313z, kf59=\233314z, kf6=\233006z, -- kf60=\233300z, kf7=\233007z, kf8=\233008z, kf9=\233009z, -- khome=\233H, kprt=\233i, -- --dgkeys+7b|Private entry describing DG terminal 7-bit ANSI mode special keys, -- ka1=\E[020z, ka3=\E[021z, kc1=\E[022z, kc3=\E[023z, -- kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kel=\E[K, kf1=\E[001z, kf10=\E[010z, kf11=\E[011z, -- kf12=\E[012z, kf13=\E[013z, kf14=\E[014z, kf15=\E[000z, -- kf16=\E[101z, kf17=\E[102z, kf18=\E[103z, kf19=\E[104z, -- kf2=\E[002z, kf20=\E[105z, kf21=\E[106z, kf22=\E[107z, -- kf23=\E[108z, kf24=\E[109z, kf25=\E[110z, kf26=\E[111z, -- kf27=\E[112z, kf28=\E[113z, kf29=\E[114z, kf3=\E[003z, -- kf30=\E[100z, kf31=\E[201z, kf32=\E[202z, kf33=\E[203z, -- kf34=\E[204z, kf35=\E[205z, kf36=\E[206z, kf37=\E[207z, -- kf38=\E[208z, kf39=\E[209z, kf4=\E[004z, kf40=\E[210z, -- kf41=\E[211z, kf42=\E[212z, kf43=\E[213z, kf44=\E[214z, -- kf45=\E[200z, kf46=\E[301z, kf47=\E[302z, kf48=\E[303z, -- kf49=\E[304z, kf5=\E[005z, kf50=\E[305z, kf51=\E[306z, -- kf52=\E[307z, kf53=\E[308z, kf54=\E[309z, kf55=\E[310z, -- kf56=\E[311z, kf57=\E[312z, kf58=\E[313z, kf59=\E[314z, -- kf6=\E[006z, kf60=\E[300z, kf7=\E[007z, kf8=\E[008z, -- kf9=\E[009z, khome=\E[H, kprt=\E[i, -- --dgkeys+11|Private entry describing 11 minimal-subset DG mode special keys, -- kclr=^L, kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, kel=^K, -- kf1=^^q, kf10=^^z, kf11=^^{, kf12=^^a, kf13=^^b, kf14=^^c, -- kf15=^^d, kf16=^^e, kf17=^^f, kf18=^^g, kf19=^^h, kf2=^^r, -- kf20=^^i, kf21=^^j, kf22=^^k, kf23=^^1, kf24=^^2, kf25=^^3, -- kf26=^^4, kf27=^^5, kf28=^^6, kf29=^^7, kf3=^^s, kf30=^^8, -- kf31=^^9, kf32=^^\:, kf33=^^;, kf34=^^!, kf35=^^", kf36=^^#, -- kf37=^^$, kf38=^^%%, kf39=^^&, kf4=^^t, kf40=^^', kf41=^^(, -- kf42=^^), kf43=^^*, kf44=^^+, kf5=^^u, kf6=^^v, kf7=^^w, -- kf8=^^x, kf9=^^y, khome=^H, -- --dgkeys+15|Private entry describing 15 DG mode special keys, -- kHOM=^^^H, kLFT=^^^Y, kRIT=^^^X, ka1=^^\\, ka3=^^], kc1=^^\^, -- kc3=^^_, kf1=^^q, kf10=^^z, kf11=^^{, kf12=^^|, kf13=^^}, -- kf14=^^~, kf15=^^p, kf16=^^a, kf17=^^b, kf18=^^c, kf19=^^d, -- kf2=^^r, kf20=^^e, kf21=^^f, kf22=^^g, kf23=^^h, kf24=^^i, -- kf25=^^j, kf26=^^k, kf27=^^l, kf28=^^m, kf29=^^n, kf3=^^s, -- kf30=^^`, kf31=^^1, kf32=^^2, kf33=^^3, kf34=^^4, kf35=^^5, -- kf36=^^6, kf37=^^7, kf38=^^8, kf39=^^9, kf4=^^t, kf40=^^\:, -- kf41=^^;, kf42=^^<, kf43=^^=, kf44=^^>, kf45=^^0, kf46=^^!, -- kf47=^^", kf48=^^#, kf49=^^$, kf5=^^u, kf50=^^%%, kf51=^^&, -- kf52=^^', kf53=^^(, kf54=^^), kf55=^^*, kf56=^^+, kf57=^^\,, -- kf58=^^-, kf59=^^., kf6=^^v, kf60=^^\s, kf7=^^w, kf8=^^x, -- kf9=^^y, -- --# Data General color terminals use the "Tektronix" color model. The total --# number of colors varies with the terminal model, as does support for --# attributes used in conjunction with color. -- --# Removed u7, u8 definitions since they conflict with tack: --# Preserve user-defined colors in at least some cases. --# u7=^^Fh, --# Default is ACM mode. --# u8=^^F}20^^Fi^^F}21, -+# Wyse 370 in 132-column mode with visual bell. -+wy370-wvb|Wyse 370 with visible bell 132-columns, -+ flash=\E[30h\E\,\E[30l$<300>, use=wy370-w, -+wy370-rv|Wyse 370 reverse video, -+ rs3=\E[32h\E[?5h, use=wy370, - # --dgunix+fixed|Fixed color info for DG D430C terminals in DG-UNIX mode, -- bce, -- colors#16, ncv#53, pairs#256, -- op=\036Ad\036Bd, -- setab=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, -- setaf=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, -- setb=\036B%p1%{48}%+%c, setf=\036A%p1%{48}%+%c, -- --dg+fixed|Fixed color info for DG D430C terminals in DG mode, -- use=dgunix+fixed, -- --# Video attributes are coordinated using static variables set by "sgr", then --# checked by "op", "seta[bf]", and "set[bf]" to refresh the attribute settings. --# (D=dim, U=underline, B=blink, R=reverse.) --dg+color8|Color info for Data General D220 and D230C terminals in ANSI mode, -- bce, -- colors#8, ncv#16, pairs#64, -- op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m, -- setab=\E[4%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -- setaf=\E[3%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -- setb=\E[4%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -- setf=\E[3%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -- --dg+color|Color info for Data General D470C terminals in ANSI mode, -- colors#16, ncv#53, pairs#256, -- setab=\E[%?%p1%{8}%<%t4%p1%e=%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -- setaf=\E[%?%p1%{8}%<%t3%p1%e<%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -- setb=\E[%?%p1%{8}%<%t4%e=%;%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -- setf=\E[%?%p1%{8}%<%t3%e<%;%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -- use=dg+color8, -- --dgmode+color8|Color info for Data General D220/D230C terminals in DG mode, -- bce, -- colors#8, ncv#16, pairs#64, -- op=\036Ad\036Bd, -- setab=\036B%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%{48}%+%c, -- setaf=\036A%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%{48}%+%c, -- setb=\036B%p1%{48}%+%c, setf=\036A%p1%{48}%+%c, -- --dgmode+color|Color info for Data General D470C terminals in DG mode, -- colors#16, pairs#256, -- setab=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, -- setaf=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, -- use=dgmode+color8, -- --dgunix+ccc|Configurable color info for DG D430C terminals in DG-UNIX mode, -- bce, ccc, -- colors#52, ncv#53, pairs#26, -- initp=\036RG0%p1%02X%p2%{255}%*%{1000}%/%02X%p3%{255}%*%{1000}%/%02X%p4%{255}%*%{1000}%/%02X%p5%{255}%*%{1000}%/%02X%p6%{255}%*%{1000}%/%02X%p7%{255}%*%{1000}%/%02X, -- oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00, -- op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D, -- scp=\036RG2%p1%02X, -- --# Colors are in the order: normal, reverse, dim, dim + reverse. --dg+ccc|Configurable color info for DG D430C terminals in DG mode, -- bce, ccc, -- colors#52, ncv#53, pairs#26, -- initp=\036RG0%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c%p2%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p3%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p4%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p5%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p6%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p7%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c, -- oc=\036RG01\:00??00000000\036RG01;00000000??00\036RG01<007?00000000\036RG01=000000007?00, -- op=\036RF4831\:\036RF2>31;\036RF1=31<\036RF3?31=, -- scp=\036RG2%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c, -- --# The generic DG terminal type (an 8-bit-clean subset of the 6053) --# Initialization string 1 sets: --# ^R - vertical scrolling enabled --# ^C - blinking enabled --dg-generic|Generic Data General terminal in DG mode, -- am, bw, msgr, xon, -- cols#80, lines#24, -- bel=^G, blink=^N, clear=^L, cr=^M, cub1=^Y, cud1=^Z, cuf1=^X, -- cup=\020%p2%c%p1%c, cuu1=^W, dim=^\, el=^K, ind=^J, is1=^R^C, -- mc0=^Q, nel=^J, rmso=^], rmul=^U, sgr0=^O^U^], smso=^\, -- smul=^T, use=dgkeys+11, -- --# According to the 4.4BSD termcap file, the dg200 <cup> should be the --# termcap equivalent of \020%p2%{128}%+%c%p1%{128}%+%c (in termcap --# notation that's "^P%r%+\200%+\200"). Those \200s are suspicious, --# maybe they were originally nuls (which would fit). -+# Wyse 99gt Tektronix 4010/4014 emulator, -+# -+wy99gt-tek|Wyse 99gt Tektronix 4010/4014 emulator, -+ am, os, -+ cols#74, lines#35, -+ bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, -+ cup=\035%{3040}%{89}%p1%*%-%Py%p2%{55}%*%Px%gy%{128}%/%{31}%&%{32}%+%c%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c%gy%{004}%/%{31}%&%{96}%+%c%gx%{128}%/%{31}%&%{32}%+%c%gx%{004}%/%{31}%&%{64}%+%c\037, -+ cuu1=^K, ff=^L, -+ hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037, -+ home=^]7`x @\037, -+ hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037, -+ is2=\E8, nel=^M^J, u0=\E~>\E8, u1=\E[42h, -+# -+# Wyse 160 Tektronix 4010/4014 emulator, -+# -+wy160-tek|Wyse 160 Tektronix 4010/4014 emulator, -+ cup=\035%{3103}%{91}%p1%*%-%Py%p2%{55}%*%Px%gy%{128}%/%{31}%&%{32}%+%c%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c%gy%{004}%/%{31}%&%{96}%+%c%gx%{128}%/%{31}%&%{32}%+%c%gx%{004}%/%{31}%&%{64}%+%c\037, -+ home=^]8`g @\037, use=wy99gt-tek, -+# -+# Wyse 370 Tektronix 4010/4014 emulator, -+# -+wy370-tek|Wyse 370 Tektronix 4010/4014 emulator, -+ am, os, -+ cols#80, lines#36, -+ bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, -+ cup=\035%{775}%{108}%p1%*%{5}%/%-%Py%p2%{64}%*%{4}%+%{5}%/%Px%gy%{32}%/%{31}%&%{32}%+%c%gy%{31}%&%{96}%+%c%gx%{32}%/%{31}%&%{32}%+%c%gx%{31}%&%{64}%+%c\037, -+ cuu1=^K, ff=^L, -+ hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037, -+ home=^]8g @\037, -+ hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037, -+ is2=\E8, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^I, kcuu1=^K, -+ nel=^M^J, u0=\E[?38h\E8, u1=\E[?38l\E)0, - --dg200|data general dasher 200, -- OTbs, am, bw, -- cols#80, lines#24, -- bel=^G, clear=^L, cr=^M, cub1=^Y, cud1=^Z, cuf1=^X, -- cup=\020%p2%c%p1%c, cuu1=^W, el=^K, home=^H, ind=^J, -- kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, kf0=^^z, kf1=^^q, -- kf2=^^r, kf3=^^s, kf4=^^t, kf5=^^u, kf6=^^v, kf7=^^w, kf8=^^x, -- kf9=^^y, khome=^H, lf0=f10, nel=^J, rmso=^^E, rmul=^U, -- smso=^^D, smul=^T, -+# Vendor-supplied Wyse entries end here. - --# Data General 210/211 (and 410?) from Lee Pearson (umich!lp) via BRL --dg210|dg-ansi|Data General 210/211, -- am, -- cols#80, lines#24, -- OTnl=\E[B, clear=\E[2J, cub1=\E[D, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, -- home=\E[H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- khome=\E[H, nel=\r\E[H\E[A\n, rmso=\E[0;m, rmul=\E[0;m, -- smso=\E[7;m, smul=\E[4;m, --# From: Peter N. Wan <ihnp4!gatech!gacsr!wan> --# courtesy of Carlos Rucalde of Vantage Software, Inc. --# (dg211: this had <cup=\020%r%.%>., which was an ancient termcap hangover. --# I suspect the d200 function keys actually work on the dg211, check it out.) --dg211|Data General d211, -- cnorm=^L, cvvis=^L^R, ht=^I, ind@, kbs=^Y, kf0@, kf1@, kf2@, kf3@, -- kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, lf0@, nel=^M^Z, rmcup=^L, -- rmso=\036E$<\0/>, smcup=^L^R, smso=\036D$<5/>, use=dg200, -- --# dg450 from Cornell (not official) --dg450|dg6134|data general 6134, -- cub1@, cuf1=^X, use=dg200, -- --# Not official... --# Note: lesser Dasher terminals will not work with vi because vi insists upon --# having a command to move straight down from any position on the bottom line --# and scroll the screen up, or a direct vertical scroll command. The 460 and --# above have both, the D210/211, for instance, has neither. We must use ANSI --# mode rather than DG mode because standard UNIX tty drivers assume that ^H is --# backspace on all terminals. This is not so in DG mode. --# (dg460-ansi: removed obsolete ":kn#6:"; also removed ":mu=\EW:", on the --# grounds that there is no matching ":ml:" --# fixed garbled ":k9=\E[00\:z:" capability -- esr) --dg460-ansi|Data General Dasher 460 in ANSI-mode, -- OTbs, am, msgr, ul, -- cols#80, it#8, lines#24, -- OTnl=\ED, blink=\E[5m, clear=\E[2J, cub1=^H, cud1=\E[B, -- cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, dch1=\E[P, -- dim=\E[2m, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, -- ich1=\E[@, il1=\E[L, ind=\E[S, is2=^^F@, kbs=\E[D, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kf0=\E[001z, kf1=\E[002z, kf2=\E[003z, kf3=\E[004z, -- kf4=\E[005z, kf5=\E[006z, kf6=\E[007z, kf7=\E[008z, -- kf8=\E[009z, kf9=\E[010z, khome=\E[H, lf0=f1, lf1=f2, lf2=f3, -- lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, lf9=f10, rev=\E[7m, -- ri=\E[T, rmso=\E[m, rmul=\E[05, sgr0=\E[m, smso=\E[7m, -- smul=\E[4m, --# From: Wayne Throop <mcnc!rti-sel!rtp47!throopw> (not official) --# Data General 605x --# Ought to work for a Model 6242, Type D210 as well as a 605x. --# Note that the cursor-down key transmits ^Z. Job control users, beware! --# This also matches a posted description of something called a `Dasher 100' --# so there's a dg100 alias here. --# (dg6053: the 4.4BSD file had <cub1=^H>, <cud1=^J>, <cuf1=^S>. -- esr) --dg6053-old|dg100|data general 6053, -- OTbs, am, bw, ul, -- cols#80, lines#24, -- OTbc=^Y, bel=^G, clear=^L, cnorm=^L, cr=^M, cub1=^Y, cud1=^Z, -- cuf1=^X, cup=\020%p2%c%p1%c, cuu1=^W, cvvis=^L^R, el=^K, -- home=^H, ht=^I, is2=^R, kbs=^Y, kcub1=^Y, kcud1=^Z, kcuf1=^X, -- kcuu1=^W, kf0=^^q, kf1=^^r, kf2=^^s, kf3=^^t, kf4=^^u, kf5=^^v, -- kf6=^^w, kf7=^^x, kf8=^^y, kf9=^^z, khome=^H, rmcup=^L, -- rmso=\0^^E, rmul=^U, smcup=^L^R, smso=\0\0\0\0\0\036D, -- smul=^T, -- --# (Some performance can be gained over the generic DG terminal type) --dg6053|6053|6053-dg|dg605x|605x|605x-dg|d2|d2-dg|Data General DASHER 6053, -- xon@, -- home=^P\0\0, ll=^P\0^W, use=dg-generic, -- --# Like 6053, but adds reverse video and more keypad and function keys. --d200|d200-dg|Data General DASHER D200, -- bold=^^D^T, home@, ll@, rev=^^D, rmso=^^E^], -- sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;, -- sgr0=\017\025\035\036E, smso=^^D^\, use=dgkeys+15, -- use=dg6053, -- --# DASHER D210 series terminals in ANSI mode. --# Reverse video, no insert/delete character/line, 7 bits/character only. - # --# Initialization string 1 sets: --# <0 - scrolling enabled --# <1 - blink enabled --# <4 - print characters regardless of attributes --d210|d214|Data General DASHER D210 series, -- am, bw, msgr, xon, -- cols#80, lines#24, -- bel=^G, blink=\E[5m, bold=\E[4;7m, clear=\E[2J, cr=^M, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dim=\E[2m, ed=\E[J, el=\E[K, -- el1=\E[1K, home=\E[H, ind=^J, is1=\E[<0;<1;<4l, -- ll=\E[H\E[A, nel=^J, rev=\E[7m, rmso=\E[m, rmul=\E[m, -- sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m, -- sgr0=\E[m, smso=\E[2;7m, smul=\E[4m, use=dgkeys+7b, -- --# DASHER D210 series terminals in DG mode. --# Like D200, but adds clear to end-of-screen and needs XON/XOFF. --d210-dg|d214-dg|Data General DASHER D210 series in DG mode, -- xon, -- ed=^^FF, use=d200-dg, -- --# DASHER D211 series terminals in ANSI mode. --# Like the D210, but with 8-bit characters and local printer support. -+#TITLE: TERMINFO ENTRY WY520 -+#DATE: 8/5/93 -+# The WY520 terminfo is based on the WY285 entry published on the WYSE -+# BBS with the addition of more function keys and special keys. - # --# Initialization string 2 sets: --# \E[2;1;1;1v --# 2;1 - 8 bit operations --# 1;1 - 8 bit (international) keyboard language --# \E(B - default primary character set (U.S. ASCII) --# \E)4 - default secondary character set (international) --# ^O - primary character set -+# rs1 -> set personality -+# rs2 -> set number of columns -+# rs3 -> set number of lines -+# is1 -> select the proper font -+# is2 -> do the initialization -+# is3 -> If this string is empty then rs3 gets sent. - # --d211|d215|Data General DASHER D211 series, -- km, -- is2=\E[2;1;1;1v\E(B\E)4\017, mc0=\E[i, use=dgkeys+8b, -- use=d210, -- --# Initialization string 2 sets: --# \E[2;0;1;0v --# 2;0 - 7 bit operations --# 1;0 - 7 bit (native) keyboard language --# \E(0 - default character set (the keyboard native language) --# ^O - primary character set --d211-7b|d215-7b|Data General DASHER D211 series in 7 bit mode, -- km@, -- is2=\E[2;0;1;0v\E(0\017, use=dgkeys+7b, use=d211, -- --# Like the D210 series, but adds support for 8-bit characters. -+# Wyse 520 emulating a vt420 7 bit mode with default ANSI keyboard -+# - The BS key is programmed to generate BS in smcup since -+# is2 doesn't seem to work. -+# - Remove and shift/Remove: delete a character -+# - Insert : enter insert mode -+# - Find : delete to end of file -+# - Select : clear a line -+# - F11, F12, F13: send default sequences (not ESC, BS, LF) -+# - F14 : Home key -+# - Bottom status line (host writable line) is used. -+# - smkx,rmkx are removed because this would put the numeric -+# keypad in Dec application mode which doesn't seem to work -+# with SCO applications. - # --# Reset string 2 sets: --# ^^N - secondary character set --# ^^FS0> - 8 bit international character set --# ^^O - primary character set --# ^^FS00 - default character set (matching the native keyboard language) -+wy520|wyse520|wyse 520, -+ am, hs, km, mc5i, mir, xenl, xon, -+ cols#80, it#8, lines#24, wsl#80, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr$<20>, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<3>, dch1=\E[P$<30>, -+ dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, dsl=\E[0$~, -+ ech=\E[%p1%dX, ed=\E[J$<40>, el=\E[K, el1=\E[1K, -+ enacs=\E)0, fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%d`, ht=^I, -+ hts=\EH, ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>, -+ il1=\E[L$<3>, ind=\n$<2>, invis=\E[8m, ip=$<4>, is1=\E[?5W, -+ is2=\E[2;4;20;30l\E[?1;4;10;16l\E[12h\E[?7;8;25;67h, -+ is3=\E>\E(B\E)0\017\E[m, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, ked=\E[1~, -+ kel=\E[4~, kent=\EOM, kf10=\E[21~, kf11=\E[23~, -+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -+ kf20=\E[34~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, -+ kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, khome=\E[26~, -+ kich1=\E[2~, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, lf1=PF1, -+ lf2=PF2, lf3=PF3, lf4=PF4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, -+ rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O, rmam=\E[?7l, -+ rmcup=\E[ R, rmir=\E[4l, rmso=\E[m, rmul=\E[24m, -+ rs1=\E[13l\E[3l\E\\\E[63;1"p\E[!p, rs2=\E[35h\E[?3l, -+ rs3=\E[?5l\E[47h\E[40l\E[r, sc=\E7, -+ sgr=\E[0%?%p2%t;4%;%?%p3%p1%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, -+ smcup=\E[ Q\E[?67;8h, smir=\E[4h, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, tsl=\E[2$~\E[1$}\E[%i%p1%d`, -+ vpa=\E[%i%p1%dd, use=vt220+keypad, - # --d211-dg|d215-dg|Data General DASHER D211 series in DG mode, -- km, -- rs2=\036N\036FS0>\036O\036FS00, use=d210-dg, -- --d216-dg|d216e-dg|d216+dg|d216e+dg|d217-dg|Data General DASHER D216 series in DG mode, -- use=d211-dg, -- --# Enhanced DG mode with changes to be more UNIX compatible. --d216-unix|d216e-unix|d216+|d216e+|Data General DASHER D216+ in DG-UNIX mode, -- mc5i, -- it#8, -- acsc=a\177j$k"l!m#n)q+t'u&v(w%x*, blink=^^PI, -- clear=^^PH, cub1=^^PD, cud1=^^PB, cuf1=^^PC, cuu1=^^PA, -- el=^^PE, home=^^PF, hpa=\020%p1%c\177, ht=^I, ind=^J, -- is1=\022\003\036P@1, is3=\036Fz0, kHOM=^^Pf, kLFT=^^Pd, -- kPRT=^^P1, kRIT=^^Pc, kclr=^^PH, kcub1=^^PD, kcud1=^^PB, -- kcuf1=^^PC, kcuu1=^^PA, kel=^^PE, khome=^^PF, kprt=^^P0, -- mc0=\036F?9, mc4=^^Fa, mc5=^^F`, rmacs=\036FS00, -- rs2=\036N\036FS0E\036O\036FS00, -- sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;\036P%?%p4%tI%eJ%;%?%p1%p5%|%t\034%e\035%;\036FS%?%p9%t11%e00%;, -- sgr0=\036PJ\025\035\036E\036FS00, smacs=\036FS11, -- vpa=\020\177%p1%c, use=dgkeys+15, use=d216-dg, --d216-unix-25|d216+25|Data General DASHER D216+ in DG-UNIX mode with 25 lines, -- lines#25, -- is3=\036Fz2, use=d216+, -- --d217-unix|Data General DASHER D217 in DG-UNIX mode, -- use=d216-unix, --d217-unix-25|Data General DASHER D217 in DG-UNIX mode with 25 lines, -- use=d216-unix-25, -- --# DASHER D220 color terminal in ANSI mode. --# Like the D470C but with fewer colors and screen editing features. -+# Wyse 520 with 24 data lines and status (terminal status) -+wy520-24|wyse520-24|wyse 520 with 24 data lines, -+ hs@, -+ dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@, -+ use=wy520, - # --# Initialization string 1 sets: --# \E[<0;<1;<4l --# <0 - scrolling enabled --# <1 - blink enabled --# <4 - print characters regardless of attributes --# \E[m - all attributes off --# Reset string 1 sets: --# \Ec - initial mode defaults (RIS) -+# Wyse 520 with visual bell. -+wy520-vb|wyse520-vb|wyse 520 with visible bell, -+ flash=\E[30h\E\,\E[30l$<100>, use=wy520, - # --d220|Data General DASHER D220, -- mc5i@, -- dl@, dl1@, il@, il1@, is1=\E[<0;<1;<4l\E[m, mc4@, mc5@, rs1=\Ec, -- use=dg+color8, use=d470c, -- --d220-7b|Data General DASHER D220 in 7 bit mode, -- mc5i@, -- dl@, dl1@, il@, il1@, is1=\E[<0;<1;<4l\E[m, mc4@, mc5@, rs1=\Ec, -- use=dg+color8, use=d470c-7b, -- --# Initialization string 3 sets: --# - default cursor (solid rectangle) --# Reset string 2 sets: --# ^^N - secondary character set --# ^^FS0> - 8 bit international character set --# ^^O - primary character set --# ^^FS00 - default character set (matching the native keyboard language) -+# Wyse 520 in 132-column mode. -+wy520-w|wyse520-w|wyse 520 in 132-column mode, -+ cols#132, wsl#132, -+ dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>, -+ ip=$<7>, rs2=\E[35h\E[?3h, use=wy520, - # --d220-dg|Data General DASHER D220 color terminal in DG mode, -- mc5i@, -- dl1@, home@, il1@, is2@, is3=\036FQ2, ll@, mc4@, mc5@, rs1@, -- rs2=\036N\036FS0>\036O\036FS00, use=dgmode+color8, -- use=d470c-dg, -- --# DASHER D230C color terminal in ANSI mode. --# Like the D220 but with minor ANSI compatibility improvements. -+# Wyse 520 in 132-column mode with visual bell. -+wy520-wvb|wyse520-wvb|wyse 520 with visible bell 132-columns, -+ flash=\E[30h\E\,\E[30l$<100>, use=wy520-w, - # --d230c|d230|Data General DASHER D230C, -- blink=\E[5;50m, bold=\E[4;7;50m, dim=\E[2;50m, nel=^M^J, -- rev=\E[7;50m, rmkx=\E[2;1v, rmso=\E[50m, rmul=\E[50m, -- sgr=\E[50%?%p1%p3%|%p6%|%t;7%{1}%e%{0}%;%PR%?%p4%t;5%{1}%e%{0}%;%PB%?%p2%p6%|%t;4%{1}%e%{0}%;%PU%?%p1%p5%|%t;2%{1}%e%{0}%;%PDm\E)%?%p9%t6\016%e4\017%;, -- sgr0=\E[50m\E)4\017, smkx=\E[2;0v, smso=\E[2;7;50m, -- smul=\E[4;50m, use=dgkeys+7b, use=d220, -- --d230c-dg|d230-dg|Data General DASHER D230C in DG mode, -- use=d220-dg, -- --# DASHER D400/D450 series terminals. --# These add intelligent features like insert/delete to the D200 series. - # --# Initialization string 2 sets: --# ^^FQ2 - default cursor (solid rectangle) --# ^^FW - character protection disabled --# ^^FJ - normal (80 column) mode --# ^^F\^ - horizontal scrolling enabled (for alignment) --# ^^FX004? - margins at columns 0 and 79 --# ^^F] - horizontal scrolling disabled --# ^^O - primary character set --# ^^FS00 - default character set (the keyboard native language) --# - (should reset scrolling regions, but that glitches the screen) --# Reset string 1 sets: --# ^^FA - all terminal defaults except scroll rate --# Reset string 2 sets: --# ^^F] - horizontal scrolling disabled --# ^^FT0 - jump scrolling -+# Wyse 520 emulating a vt420 7 bit mode. -+# The DEL key is programmed to generate BS in is2. -+# With EPC keyboard. -+# - 'End' key will clear till end of line on EPC keyboard -+# - Shift/End : ignored. -+# - Insert : enter insert mode. -+# - Delete : delete a character (have to change interrupt character -+# to CTRL-C: stty intr '^c') for it to work since the -+# Delete key sends 7FH. -+wy520-epc|wyse520-epc|wyse 520 with EPC keyboard, -+ kdch1=\177, kel=\E[4~, kend=\E[4~, kf0=\E[21~, kf1=\E[11~, -+ kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, kf5=\E[15~, khome=\E[H, -+ use=wy520, - # --d400|d400-dg|d450|d450-dg|Data General DASHER D400/D450 series, -- mc5i, -- acsc=j$k"l!m#n)q+t'u&v(w%x*, civis=\036FQ0, -- cnorm=\036FQ2, dch1=^^K, dl1=^^FI, -- enacs=\036N\036FS11\036O, home=^^FG, hpa=\020%p1%c\177, -- ich1=^^J, il1=^^FH, -- is2=\036FQ2\036FW\036FJ\036F\^\036FX004?\036F]\036O\036FS00, -- ll=\036FG\027, mc4=^^Fa, mc5=^^F`, ri=^^I, rmacs=^^O, -- rs1=^^FA, rs2=\036F]\036FT0, -- sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;\036%?%p9%tN%eO%;, -- sgr0=\017\025\035\036E\036O, smacs=^^N, -- vpa=\020\177%p1%c, use=d210-dg, -- --# DASHER D410/D460 series terminals in ANSI mode. --# These add a large number of intelligent terminal features. -+# Wyse 520 with 24 data lines and status (terminal status) -+# with EPC keyboard. -+wy520-epc-24|wyse520-pc-24|wyse 520 with 24 data lines and EPC keyboard, -+ hs@, -+ dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@, -+ use=wy520-epc, - # --# Initialization string 1 sets: --# \E[<0;<1;<2;<4l --# <0 - scrolling enabled --# <1 - blink enabled --# <2 - horizontal scrolling enabled (for alignment) --# <4 - print characters regardless of attributes --# \E[5;0v - normal (80 column) mode --# \E[1;1;80w - margins at columns 1 and 80 --# \E[1;6;<2h --# 1 - print all characters even if protected --# 6 - character protection disabled --# <2 - horizontal scrolling disabled --# - (should reset scrolling regions, but that glitches the screen) -+# Wyse 520 with visual bell. -+wy520-epc-vb|wyse520-pc-vb|wyse 520 with visible bell and EPC keyboard, -+ flash=\E[30h\E\,\E[30l$<100>, use=wy520-epc, - # --# Initialization string 2 sets: --# \E[3;2;2;1;1;1v --# 3;2 - default cursor (solid rectangle) --# 2;1 - 8 bit operations --# 1;1 - international keyboard language --# \E(B - default primary character set (U.S. ASCII) --# \E)4 - default secondary character set (international) --# ^O - primary character set -+# Wyse 520 in 132-column mode. -+wy520-epc-w|wyse520-epc-w|wyse 520 in 132-column mode with EPC keyboard, -+ cols#132, wsl#132, -+ dch=\E[%p1%dP$<7>, dch1=\E[P$<7>, ich=\E[%p1%d@$<7>, -+ ip=$<7>, rs2=\E[35h\E[?3h, use=wy520-epc, - # --# Reset string 1 sets: --# \Ec - initial mode defaults (RIS) --# \E[<2h - horizontal scrolling disabled -+# Wyse 520 in 132-column mode with visual bell. -+wy520-epc-wvb|wyse520-p-wvb|wyse 520 with visible bell 132-columns and EPC keyboard, -+ flash=\E[30h\E\,\E[30l$<100>, use=wy520-epc-w, - # --# Reset string 2 sets: --# \E[4;0;2;1;1;1v --# 4;0 - jump scrolling --# 2;1 - 8 bit operations --# 1;1 - 8 bit (international) keyboard language --# \E(B - default primary character set (U.S. ASCII) --# \E)4 - default secondary character set (international) -+# Wyse 520 in 80-column, 36 lines -+wy520-36|wyse520-36|wyse 520 with 36 data lines, -+ hs@, -+ lines#36, -+ dsl@, fsl@, rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r, tsl@, -+ use=wy520, - # --d410|d411|d460|d461|Data General DASHER D410/D460 series, -- mc5i, -- acsc=j$k"l!m#n)q+t'u&v(w%x*, civis=\E[3;0v, -- cnorm=\E[3;2v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, -- is1=\E[<0;<1;<2;<4l\E[5;0v\E[1;1;80w\E[1;6;<2h, -- is2=\E[3;2;2;1;1;1v\E(B\E)4\017, mc4=\E[4i, mc5=\E[5i, -- ri=\EM, rmacs=\E)4\017, rs1=\Ec\E[<2h, -- rs2=\E[4;0;2;1;1;1v\E(B\E)4, -- sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m\E)%?%p9%t6\016%e4\017%;, -- sgr0=\E[m\E)4\017, smacs=\E)6\016, use=d211, -- --# Initialization string 2 sets: --# \E[3;2;2;0;1;0v --# 3;2 - default cursor (solid rectangle) --# 2;0 - 7 bit operations --# 1;0 - 7 bit (native) keyboard language --# \E(0 - default character set (the keyboard native language) --# ^O - primary character set -+# Wyse 520 in 80-column, 48 lines -+wy520-48|wyse520-48|wyse 520 with 48 data lines, -+ hs@, -+ lines#48, -+ dsl@, fsl@, rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r, tsl@, -+ use=wy520, - # --# Reset string 2 sets: --# \E[4;0;2;0;1;0v --# 4;0 - jump scrolling --# 2;0 - 7 bit operations --# 1;0 - 7 bit (native) keyboard language --# \E(0 - default character set (the keyboard native language) -+# Wyse 520 in 132-column, 36 lines -+wy520-36w|wyse520-36w|wyse 520 with 132 columns and 36 data lines, -+ cols#132, wsl#132, -+ rs2=\E[?3h, -+ rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|, -+ use=wy520-36, - # --d410-7b|d411-7b|d460-7b|d461-7b|Data General DASHER D410/D460 series in 7 bit mode, -- km@, -- enacs=\E)6, is2=\E[3;2;2;0;1;0v\E(0\017, rmacs=^O, -- rs2=\E[4;0;2;0;1;0v\E(0, -- sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, use=dgkeys+7b, use=d410, -- --d410-dg|d460-dg|d411-dg|d461-dg|Data General DASHER D410/D460 series in DG mode, -- km, -- enacs@, rmacs=\036FS00, -- sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;\036FS%?%p9%t11%e00%;, -- sgr0=\017\025\035\036E\036FS00, smacs=\036FS11, -- use=d400-dg, -- --# DASHER D410/D460 series terminals in wide (126 columns) ANSI mode. -+# Wyse 520 in 132-column, 48 lines -+wy520-48w|wyse520-48w|wyse 520 with 48 data lines, -+ cols#132, wsl#132, -+ rs2=\E[?3h, -+ rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|, -+ use=wy520-48, - # --# Initialization string 1 sets: --# \E[<0;<1;<2;<4l --# <0 - scrolling enabled --# <1 - blink enabled --# <2 - horizontal scrolling enabled (for alignment) --# <4 - print characters regardless of attributes --# \E[5;1v - compressed (135 column) mode --# \E[1;1;126 - margins at columns 1 and 126 --# \E[1;6;<2h --# 1 - print all characters even if protected --# 6 - character protection disabled --# <2 - horizontal scrolling disabled --# - (should reset scrolling regions, but that glitches the screen) - # --# Reset string 1 sets: --# \Ec - initial mode defaults (RIS) --# \E[5;1v - compressed (135 column) mode --# \E[1;1;126w - margins at columns 1 and 126 --# \E[<2h - horizontal scrolling disabled -+# Wyse 520 in 80-column, 36 lines with EPC keyboard -+wy520-36pc|wyse520-36pc|wyse 520 with 36 data lines and EPC keyboard, -+ hs@, -+ lines#36, -+ dsl@, fsl@, rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r, tsl@, -+ use=wy520-epc, - # --d410-w|d411-w|d460-w|d461-w|Data General DASHER D410/D460 series in wide mode, -- cols#126, -- is1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h, -- rs1=\Ec\E[5;1v\E[1;1;126w\E[<2h, use=d410, -+# Wyse 520 in 80-column, 48 lines with EPC keyboard -+wy520-48pc|wyse520-48pc|wyse 520 with 48 data lines and EPC keyboard, -+ hs@, -+ lines#48, -+ dsl@, fsl@, rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r, tsl@, -+ use=wy520-epc, -+# -+# Wyse 520 in 132-column, 36 lines with EPC keyboard -+wy520-36wpc|wyse520-36wpc|wyse 520 with 36 data lines and EPC keyboard, -+ cols#132, wsl#132, -+ rs2=\E[?3h, -+ rs3=\E[?5l\E[36*|\E[36t\E[40l\E[1;36r\E[132$|, -+ use=wy520-36pc, -+# -+# Wyse 520 in 132-column, 48 lines with EPC keyboard -+wy520-48wpc|wyse520-48wpc|wyse 520 with 48 data lines and EPC keyboard, -+ cols#132, wsl#132, -+ rs2=\E[?3h, -+ rs3=\E[?5l\E[48*|\E[48t\E[40l\E[1;48r\E[132$|, -+ use=wy520-48pc, - --d410-7b-w|d411-7b-w|d460-7b-w|d461-7b-w|Data General DASHER D410/D460 series in wide 7 bit mode, -- cols#126, -- is1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h, -- rs1=\Ec\E[5;1v\E[1;1;126w\E[<2h, use=d410-7b, -+# From: John Gilmore <hoptoad!gnu@lll-crg.arpa> -+# (wyse-vp: removed <if=/usr/share/tabset/wyse-adds>, there's no such -+# file and we don't know what <hts> is -- esr) -+wyse-vp|Wyse 50 in ADDS Viewpoint emulation mode with "enhance" on, -+ OTbs, am, -+ cols#80, it#8, lines#24, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^F, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dch1=\EW, -+ dl1=\El, ed=\Ek, el=\EK, home=^A, ht=^I, il1=\EM, ind=^J, -+ is2=\E`\:\E`9\017\Er, kbs=^H, kcub1=^U, kcud1=^J, kcuf1=^F, -+ kcuu1=^Z, khome=^A, ll=^A^Z, nel=^M^J, rmir=\Er, rmso=^O, -+ rmul=^O, rs1=\E`\:\E`9\017\Er, sgr0=^O, smir=\Eq, smso=^N, -+ smul=^N, - --d412-dg|d462-dg|d462e-dg|d412+dg|d462+dg|d413-dg|d463-dg|Data General DASHER D412/D462 series in DG mode, -- use=d410-dg, -+wy75ap|wyse75ap|wy-75ap|wyse-75ap|Wyse WY-75 Applications and Cursor keypad, -+ is2=\E[1;24r\E[?10;3l\E[?1;25h\E[4l\E[m\E(B\E=, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ khome=\EOH, rmkx=\E[?1l\E>$<10/>, smkx=\E[?1h\E=$<10/>, -+ use=wy75, - --# These add intelligent features like scrolling regions. --d412-unix|d462-unix|d412+|d462+|Data General DASHER D412+/D462+ series in Unix mode, -- civis=\036FQ0, clear=^^FE, cnorm=\036FQ5, -- cup=\036FP%p2%2.2X%p1%2.2X, dch1=^^K, dl1=^^FI, -- home=^^FG, hpa=\036FP%p1%2.2XFF, ich1=^^J, il1=^^FH, -- is2=\036FQ5\036FW\036FJ\036F\^\036FX004F\036O\036FS00, -- ll=\036FG\036PA, mc0=^A, rc=\036F}11, ri=^^I, -- rs1=\036FA\036FT0, rs2=\036P@1, sc=\036F}10, -- vpa=\036FPFF%p1%2.2X, -- wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X, -- use=d216+, --d412-unix-w|d462-unix-w|d412+w|d462+w|Data General DASHER D412+/D462+ series in wide Unix mode, -- cols#132, -- is2=\036FQ5\036FW\036FK\036F\^\036FX0083\036O\036FS00, -- rs2=\036P@1\036FK\036FX0083, -- wind=\036FB%?%p1%t%p1%2.2X1%;%p2%p1%-%{1}%+%2.2X1%?%{23}%p2%>%t001%;\036FX%p3%2.2X%p4%2.2X, -- use=d412-unix, --d412-unix-25|d462-unix-25|d412+25|d462+25|Data General DASHER D412+/D462+ series in Unix mode with 25 lines, -- lines#25, -- is3=\036Fz2, -- wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{24}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X, -- use=d462+, --d412-unix-s|d462-unix-s|d412+s|d462+s|Data General DASHER D412+/D462+ in Unix mode with status line, -- eslok, hs, -- clear=\036FG\036PH, fsl=\036F}01\022, -- is3=\036Fz2\036F}00\036FB180000\036F}01, ll@, -- tsl=\036F}00\036FP%p1%2.2X18\036PG, -- wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t%{23}%p2%-%2.2X0%;000\036FX%p3%2.2X%p4%2.2X, -- use=d462+, -- --# Relative cursor motions are confined to the current window, --# which is not what the scrolling region specification expects. --# Thus, relative vertical cursor positioning must be deleted. --d412-unix-sr|d462-unix-sr|d412+sr|d462+sr|Data General DASHER D412+/D462+ in Unix mode with scrolling region, -- csr=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;, -- cud1@, cuu1@, ll@, use=d462+, -- --d413-unix|d463-unix|Data General DASHER D413/D463 series in DG-UNIX mode, -- use=d412-unix, --d413-unix-w|d463-unix-w|Data General DASHER D413/D463 series in wide DG-UNIX mode, -- use=d412-unix-w, --d413-unix-25|d463-unix-25|Data General DASHER D413/D463 series in DG-UNIX mode with 25 lines, -- use=d412-unix-25, --d413-unix-s|d463-unix-s|Data General DASHER D413/D463 in DG-UNIX mode with status line, -- use=d412-unix-s, --d413-unix-sr|d463-unix-sr|Data General DASHER D413/D463 in DG-UNIX mode with scrolling region, -- use=d412-unix-sr, -- --d414-unix|d464-unix|Data General D414/D464 in DG-UNIX mode, -- use=d413-unix, --d414-unix-w|d464-unix-w|Data General D414/D464 in wide DG-UNIX mode, -- use=d413-unix-w, --d414-unix-25|d464-unix-25|Data General D414/D464 in DG-UNIX mode with 25 lines, -- use=d413-unix-25, --d414-unix-s|d464-unix-s|Data General D414/D464 in DG-UNIX mode with status line, -- use=d413-unix-s, --d414-unix-sr|d464-unix-sr|Data General D414/D464 in DG-UNIX mode with scrolling region, -- use=d413-unix-sr, -- --d430c-dg|d430-dg|Data General D430C in DG mode, -- use=d413-dg, use=dg+fixed, --d430c-dg-ccc|d430-dg-ccc|Data General D430C in DG mode with configurable colors, -- use=d413-dg, use=dg+ccc, -- --d430c-unix|d430-unix|Data General D430C in DG-UNIX mode, -- use=d413-unix, use=dgunix+fixed, --d430c-unix-w|d430-unix-w|Data General D430C in wide DG-UNIX mode, -- use=d413-unix-w, use=dgunix+fixed, --d430c-unix-25|d430-unix-25|Data General D430C in DG-UNIX mode with 25 lines, -- use=d413-unix-25, use=dgunix+fixed, --d430c-unix-s|d430-unix-s|Data General D430C in DG-UNIX mode with status line, -- use=d413-unix-s, use=dgunix+fixed, --d430c-unix-sr|d430-unix-sr|Data General D430C in DG-UNIX mode with scrolling region, -- use=d413-unix-sr, use=dgunix+fixed, --d430c-unix-ccc|d430-unix-ccc|Data General D430C in DG-UNIX mode with configurable colors, -- use=d413-unix, use=dgunix+ccc, --d430c-unix-w-ccc|d430-unix-w-ccc|Data General D430C in wide DG-UNIX mode with configurable colors, -- use=d413-unix-w, use=dgunix+ccc, --d430c-unix-25-ccc|d430-unix-25-ccc|Data General D430C in DG-UNIX mode with 25 lines and configurable colors, -- use=d413-unix-25, use=dgunix+ccc, --d430c-unix-s-ccc|d430-unix-s-ccc|Data General D430C in DG-UNIX mode with status line and configurable colors, -- use=d413-unix-s, use=dgunix+ccc, --d430c-unix-sr-ccc|d430-unix-sr-ccc|Data General D430C in DG-UNIX mode with scrolling region and configurable colors, -- use=d413-unix-sr, use=dgunix+ccc, -+# From: Eric Freudenthal <freudent@eric.ultra.nyu.edu> -+wy100q|Wyse 100 for Quotron, -+ OTbs, -+ cols#80, lines#24, xmc#1, -+ cbt=\EI, clear=^Z, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\EY, el=\ET, home=^^, il1=\EE, invis@, -+ is2=\E`\:\0\EC\EDF\E0\E'\E(\EA21, kcub1=^H, kcud1=^J, -+ kcuf1=^L, kcuu1=^K, ri=\Ej, rmir=\Er, smir=\Eq, use=adm+sgr, - --# DASHER D470C color terminal in ANSI mode. --# Like the D460 but with 16 colors and without a compressed mode. -+#### Kermit terminal emulations - # --# Initialization string 1 sets: --# \E[<0;<1;<2;<4l --# <0 - scrolling enabled --# <1 - blink enabled --# <2 - horizontal scrolling enabled (for alignment) --# <4 - print characters regardless of attributes --# \E[1;1;80w - margins at columns 1 and 80 --# \E[1;6;<2h --# 1 - print all characters even if protected --# 6 - character protection disabled --# <2 - horizontal scrolling disabled --# - (should reset scrolling regions, but that glitches the screen) -+# Obsolete Kermit versions may be listed in the section describing obsolete -+# non-ANSI terminal emulators later in the file. - # --d470c|d470|Data General DASHER D470C, -- is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, -- sgr=\E[%?%p1%p3%|%p6%|%t7;%{1}%e%{0}%;%PR%?%p4%t5;%{1}%e%{0}%;%PB%?%p2%p6%|%t4;%{1}%e%{0}%;%PU%?%p1%p5%|%t2;%{1}%e%{0}%;%PDm\E)%?%p9%t6\016%e4\017%;, -- use=dg+color, use=d460, - --d470c-7b|d470-7b|Data General DASHER D470C in 7 bit mode, -- is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, -- sgr=\E[%?%p1%p3%|%p6%|%t7;%{1}%e%{0}%;%PR%?%p4%t5;%{1}%e%{0}%;%PB%?%p2%p6%|%t4;%{1}%e%{0}%;%PU%?%p1%p5%|%t2;%{1}%e%{0}%;%PDm%?%p9%t\016%e\017%;, -- use=dg+color, use=d460-7b, -+# KERMIT standard all versions. -+# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi. -+# (kermit: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr) -+# From: greg small <gts@populi.berkeley.edu> 9-25-84 -+kermit|standard kermit, -+ OTbs, -+ cols#80, lines#24, -+ clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, -+ el=\EK, home=\EH, is2=K0 Standard Kermit 9-25-84\n, -+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, -+kermit-am|standard kermit plus auto-margin, -+ am, -+ is2=K1 Standard Kermit plus Automatic Margins\n, -+ use=kermit, -+# IBMPC Kermit 1.2. -+# Bugs: <ed>, <el>: do not work except at beginning of line! <clear> does -+# not work, but fake with :cl=\EH\EJ (since :cd=\EJ: works at beginning of -+# line). -+# From: greg small <gts@populi.berkeley.edu> 8-30-84 -+pckermit|pckermit12|UCB IBMPC Kermit 1.2, -+ am, -+ lines#25, -+ clear=\EH\EJ, ed@, el@, -+ is2=K2 UCB IBMPC Kermit 1.2 8-30-84\n, use=kermit, -+# IBMPC Kermit 1.20 -+# Cannot use line 25, now acts funny like ansi special scrolling region. -+# Initialization must escape from that region by cursor position to line 24. -+# Cannot use character insert because 1.20 goes crazy if insert at col 80. -+# Does not use :am: because autowrap is lost when kermit dropped and restarted. -+# From: greg small <gts@populi.berkeley.edu> 12-19-84 -+pckermit120|UCB IBMPC Kermit 1.20, -+ it#8, lines#24, -+ cud1=\EB, cvvis=\EO\Eq\EEK3, dch1=\EN, dl1=\EM, ht=^I, -+ il1=\EL, -+ is2=\EO\Eq\EJ\EY7 K3 UCB IBMPC Kermit 1.20 12-19-84\n, -+ rmir@, rmso=\Eq, smir@, smso=\Ep, use=kermit, -+# MS-DOS Kermit 2.27 for the IBMPC -+# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi. -+# Cannot use line 25, now acts funny like ansi special scrolling region. -+# Initialization must escape from that region by cursor position to line 24. -+# Does not use am: because autowrap is lost when kermit dropped and restarted. -+# Reverse video for standout like H19. -+# (msk227: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr) -+# From: greg small <gts@populi.berkeley.edu> 3-17-85 -+msk227|mskermit227|MS-DOS Kermit 2.27 for the IBMPC, -+ OTbs, am@, -+ cols#80, it#8, lines#24, -+ clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, -+ cvvis=\EO\Eq\EG\EwK4, dch1=\EN, dl1=\EM, ed=\EJ, el=\EK, -+ home=\EH, ht=^I, il1=\EL, -+ is2=\EO\Eq\EG\Ew\EJ\EY7 K4 MS Kermit 2.27 for the IBMPC 3-17-85\n, -+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, rc=\Ek, -+ rmir=\EO, rmso=\Eq, sc=\Ej, smir=\E@, smso=\Ep, -+# MS-DOS Kermit 2.27 with automatic margins -+# From: greg small <gts@populi.berkeley.edu> 3-17-85 -+msk227am|mskermit227am|UCB MS-DOS Kermit 2.27 with automatic margins, -+ am, -+ cvvis=\EO\Eq\EG\EvK5, -+ is2=\EO\Eq\EG\Ev\EJ\EY7 K5 MS Kermit 2.27 +automatic margins 3-17-85\n, -+ use=msk227, -+# MS-DOS Kermit 2.27 UCB 227.14 for the IBM PC -+# Automatic margins now default. Use ansi <sgr> for highlights. -+# Define function keys. -+# (msk22714: removed obsolete ":kn#10:" -- esr) -+# From: greg small <gts@populi.berkeley.edu> 3-17-85 -+msk22714|mskermit22714|UCB MS-DOS Kermit 2.27 UCB 227.14 IBM PC, -+ am, -+ bold=\E[1m, cvvis=\EO\Eq\EG\EvK6, -+ is2=\EO\Eq\EG\Ev\EJ\EY7 K6 MS Kermit 2.27 UCB 227.14 IBM PC 3-17-85\n, -+ kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3, kf4=\E4, kf5=\E5, kf6=\E6, -+ kf7=\E7, kf8=\E8, kf9=\E9, rev=\E[7m, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, smso=\E[1m, smul=\E[4m, use=mskermit227, -+# This was designed for a VT320 emulator, but it is probably a good start -+# at support for the VT320 itself. -+# Please send changes with explanations to bug-gnu-emacs@prep.ai.mit.edu. -+# (vt320-k3: I added <rmam>/<smam> based on the init string -- esr) -+vt320-k3|MS-Kermit 3.00's vt320 emulation, -+ am, eslok, hs, km, mir, msgr, xenl, -+ cols#80, it#8, lines#49, pb#9600, vt#3, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[H\E[J, cmdch=\E, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ dsl=\E[0$~, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -+ flash=\E[?5h\E[?5l\E[?5h\E[?5l\E[?5h\E[?5l, -+ fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, -+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ is2=\E>\E F\E[?1h\E[?7h\E[r\E[2$~, kbs=^H, kcub1=\EOD, -+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdl1=\E[3~, kf0=\E[21~, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, -+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kich1=\E[2~, knp=\E[6~, -+ kpp=\E[5~, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, nel=^M^J, rc=\E8, -+ rev=\E[7m, ri=\EM, rin=\E[%p1%dL, rmacs=\E(B, rmam=\E[?7l, -+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, -+ rs1=\E(B\E)B\E>\E F\E[4;20l\E[12h\E[?1;5;6;38;42l\E[?7;25h\E[4i\E[?4i\E[m\E[r\E[2$~, -+ sc=\E7, sgr0=\E[m, smacs=\E(0, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ tsl=\E[1$}\r\E[K, vpa=\E[%i%p1%dd, -+# From: Joseph Gil <yogi@cs.ubc.ca> 13 Dec 1991 -+# ACS capabilities from Philippe De Muyter <phdm@info.ucl.ac.be> 30 May 1996 -+# (I removed a bogus boolean :mo: and added <msgr>, <smam>, <rmam> -- esr) -+vt320-k311|dec vt320 series as defined by kermit 3.11, -+ am, eslok, hs, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, vt#3, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[;H\E[2J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ dsl=\E[2$~\r\E[1$}\E[K\E[$}, ed=\E[J, el=\E[K, -+ flash=\E[?5h\E[?5l, fsl=\E[$}, home=\E[H, ht=^I, hts=\EH, -+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L$<3/>, ind=\ED, -+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~, -+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2, -+ lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m, -+ rf=/usr/share/tabset/vt100, ri=\EM, rmacs=^O, -+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, -+ rmul=\E[24m, rs1=\E[?3l, sc=\E7, sgr0=\E[m, smacs=^N, -+ smam=\E[?7h, smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, tsl=\E[2$~\E[1$}\E[1;%dH, - --# Initialization string 2 sets: --# ^^FQ2 - default cursor (solid rectangle) --# ^^FW - character protection disabled --# ^^F\^ - horizontal scrolling enabled (for alignment) --# ^^FX004? - margins at columns 0 and 79 --# ^^F] - horizontal scrolling disabled --# ^^O - primary character set --# ^^FS00 - default character set (the keyboard native language) --# - (should reset scrolling regions, but that glitches the screen) -+######## NON-ANSI TERMINAL EMULATIONS - # --d470c-dg|d470-dg|Data General DASHER D470C in DG mode, -- is2=\036FQ2\036FW\036F\^\036FX004?\036F]\036O\036FS00, -- use=dgmode+color, use=d460-dg, -- --# DASHER D555 terminal in ANSI mode. --# Like a D411, but has an integrated phone. --d555|Data General DASHER D555, -- use=d411, --d555-7b|Data General DASHER D555 in 7-bit mode, -- use=d411-7b, --d555-w|Data General DASHER D555 in wide mode, -- use=d411-w, --d555-7b-w|Data General DASHER D555 in wide 7-bit mode, -- use=d411-7b-w, --d555-dg|Data General DASHER D555 series in DG mode, -- use=d411-dg, -- --# DASHER D577 terminal in ANSI mode. --# Like a D411, but acts as a keyboard for serial printers ("KSR" modes). --d577|Data General DASHER D577, -- use=d411, --d577-7b|Data General DASHER D577 in 7-bit mode, -- use=d411-7b, --d577-w|Data General DASHER D577 in wide mode, -- use=d411-w, --d577-7b-w|Data General DASHER D577 in wide 7-bit mode, -- use=d411-7b-w, - --d577-dg|d578-dg|Data General DASHER D577/D578 series in DG mode, -- use=d411-dg, -- --# DASHER D578 terminal. --# Like a D577, but without compressed mode; like a D470C in this respect. -+#### Avatar - # --# Initialization string 1 sets: --# \E[<0;<1;<2;<4l --# <0 - scrolling enabled --# <1 - blink enabled --# <2 - horizontal scrolling enabled (for alignment) --# <4 - print characters regardless of attributes --# \E[1;1;80w - margins at columns 1 and 80 --# \E[1;6;<2h --# 1 - print all characters even if protected --# 6 - character protection disabled --# <2 - horizontal scrolling disabled --# - (should reset scrolling regions, but that glitches the screen) -+# These entries attempt to describe Avatar, a terminal emulation used with -+# MS-DOS bulletin-board systems. It was designed to give ANSI-like -+# capabilities, but with cheaper (shorter) control sequences. Messy design, -+# excessively dependent on PC idiosyncracies, but apparently rather popular -+# in the BBS world. - # --d578|Data General DASHER D578, -- is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, use=d577, --d578-7b|Data General DASHER D578 in 7-bit mode, -- is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, use=d577-7b, -- --#### Datamedia (dm) -+# No color support. Avatar doesn't fit either of the Tektronix or HP color -+# models that terminfo knows about. An Avatar color attribute is the -+# low 7 bits of the IBM-PC display-memory attribute. Bletch. - # --# Datamedia was headquartered in Nashua, New Hampshire until it went --# out of business in 1993, but the ID plates on the terminals referred --# to the factory in Pennsauken, NJ. The factory was sold to a PCB board --# manufacturer which threw out all information about the terminals. -+# I wrote these entries while looking at the Avatar spec. I don't have -+# the facilities to test them. Let me know if they work, or don't. -+# -+# Avatar escapes not used by these entries (because maybe you're smarter -+# and more motivated than I am and can figure out how to wrap terminfo -+# around some of them, and because they are weird enough to be funny): -+# level 0: -+# ^L -- clear window/reset current attribute to default -+# ^V^A%p1%c -- set current color attribute, parameter decodes as follows: -+# -+# bit: 6 5 4 3 2 1 0 -+# | | | | | -+# +---+---+ | +---+---+ -+# | | | -+# | | foreground color -+# | foreground intensity -+# background color -+# level 0+: -+# ^V^J%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) up by p1 lines -+# ^V^K%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) down by p1 lines -+# ^V^L%p1%c%p2%c%p3%c -- clear p2 lines and p3 cols w/attr %p1 -+# ^V^M%p1%c%p2%c%p3%c%p4%c -- fill p3 lines & p4 cols w/char p2+attr %p1 -+# (^V^L and ^V^M set the current attribute as a side-effect.) -+# ^V ^Y <a> [...] <c> -- repeat pattern. <a> specifies the number of bytes -+# in the pattern, <c> the number of times the pattern -+# should be repeated. If either value is 0, no-op. -+# The pattern can contain Avatar console codes, -+# including other ^V ^Y patterns. -+# level 1: -+# ^V^O -- clockwise mode on; turn print direction right each time you -+# hit a window edge (yes, really). Turned off by CR -+# ^V^P -- no-op -+# ^V^Q%c -- query the driver -+# ^V^R -- driver reset -+# ^V^S -- Sound tone (PC-specific) -+# ^V^T -- change highlight at current cursor poition to %c -+# ^V^U%p1%c%p2%c -- highlight window <a> with attribute <b> -+# ^V^V%p1%c%p2%c%p3%c%p4%c%p5%c -+# -- define window -+# -+# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 -+# (The <blink>/<bold>/<rev>/<smacs>/<smul>/<smso> capabilities exist only to -+# tell ncurses that the corresponding highlights exist; it should use <sgr>, -+# which is the only method that will actually work for multiple highlights.) - # -+# Update by TD - 2004: half of this was inconsistent. Found documentation -+# and repaired most of the damage. sgr0 is probably incorrect, but the -+# available documentation gives no clues for a workable string. -+avatar0|avatar terminal emulator level 0, -+ am, bce, msgr, -+ cols#80, it#8, lines#25, -+ blink=^V^B, bold=^V^A^P, cr=^M, cub1=^V^E, cud1=^V^D, -+ cuf1=^V^F, cup=\026\010%p1%c%p2%c, cuu1=^V^C, el=^V^G, -+ ind=^J, invis=^V^A\0, rep=\031%p1%c%p2%c, rev=^V^Ap, -+ rmacs@, rs2=^L, -+ sgr=%?%p1%p2%|%p3%|%p6%|%p7%|%t\026\001%?%p7%t%{128}%e%{0}%?%p1%t%{112}%|%;%?%p2%t%{1}%|%;%?%p3%t%{112}%|%;%?%p6%t%{16}%|%;%;%c%;%?%p4%t\026\002%;, -+ sgr0=^V^A^G, smacs@, smso=^V^Ap, smul=^V^A^A, -+ use=klone+acs, -+# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 -+avatar0+|avatar terminal emulator level 0+, -+ dch1=^V^N, rmir=\026\n\0\0\0\0, smir=^V^I, use=avatar0, -+# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995 -+avatar|avatar1|avatar terminal emulator level 1, -+ civis=^V'^B, cnorm=^V'^A, cvvis=^V^C, dl1=^V-, il1=^V+, -+ rmam=^V", rmir=^V^P, smam=^V$, use=avatar0+, - --cs10|colorscan|Datamedia Color Scan 10, -- msgr, -- cols#80, lines#24, -- bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%02d;%p2%02dH, cuu1=\E[A, ed=\E[J, el=\E[K, -- ind=^J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, smso=\E[7m, smul=\E[4m, --cs10-w|Datamedia Color Scan 10 with 132 columns, -+#### RBcomm -+# -+# RBComm is a lean and mean terminal emulator written by the Interrupt List -+# maintainer, Ralf Brown. It was fairly popular in the late DOS years (early -+# '90s), especially in the BBS world, and still has some loyal users due to -+# its very small memory footprint and to a cute macro language. -+rbcomm|IBM PC with RBcomm and EMACS keybindings, -+ am, bw, mir, msgr, xenl, -+ cols#80, it#8, lines#25, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=^L, cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub1=^H, cud1=^C, cuf1=^B, -+ cup=\037%p2%{32}%+%c%p1%{32}%+%c, cuu1=^^, dch1=^W, -+ dl=\E[%p1%dM, dl1=^Z, ech=\E[%p1%dX, ed=^F5, el=^P^P, ht=^I, -+ il=\E[%p1%dL, il1=^K, ind=\ED, invis=\E[8m, -+ is2=\017\035\E(B\E)0\E[?7h\E[?3l\E[>8g, kbs=^H, -+ kcub1=^B, kcud1=^N, kcuf1=^F, kcuu1=^P, khome=^A, nel=^M\ED, -+ rc=\E8, rep=\030%p1%c%p2%c, rev=^R, ri=\EM, rmcup=, rmdc=, -+ rmir=^], rmkx=\E>, rmso=^U, rmul=^U, -+ rs1=\017\E(B\E)0\025\E[?3l\E[>8g, sc=\E7, sgr0=\E[m, -+ smcup=, smdc=, smir=^\, smkx=\E=, smso=^R, smul=^T, -+rbcomm-nam|IBM PC with RBcomm without autowrap, -+ am@, -+ bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J, -+ is2=\017\035\E(B\E)0\E[?7l\E[?3l\E[>8g, kbs=^H, -+ kcub1=^H, kcud1=^J, nel=^M^J, use=rbcomm, -+rbcomm-w|IBM PC with RBcomm in 132 column mode, - cols#132, -- cup=\E[%i%p1%02d;%p2%03dH, use=cs10, -+ bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J, -+ is2=\017\035\E(B\E)0\E[?7h\E[?3h\E[>8g, kbs=^H, -+ kcub1=^H, kcud1=^J, nel=^M^J, use=rbcomm, - --# (dm1520: removed obsolete ":ma=^\ ^_^P^YH:" -- esr) --dm1520|dm1521|datamedia 1520, -- OTbs, am, xenl, -- cols#80, it#8, lines#24, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^\, -- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -- home=^Y, ht=^I, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^\, kcuu1=^_, -- khome=^Y, --# dm2500: this terminal has both <ich> and <smir>. Applications using --# termcap/terminfo directly (rather than through ncurses) might be confused. --dm2500|datamedia2500|datamedia 2500, -- OTbs, OTnc, -- cols#80, lines#24, -- bel=^G, clear=^^^^\177, cub1=^H, cud1=^J, cuf1=^\, -- cup=\014%p2%{96}%^%c%p1%{96}%^%c, cuu1=^Z, -- dch1=\020\010\030\035$<10*>, -- dl1=\020\032\030\035$<10*>, el=^W, home=^B, -- ich1=\020\034\030\035$<10*>, -- il1=\020\n\030\035\030\035$<15>, ind=^J, pad=\377, -- rmdc=^X^], rmir=\377\377\030\035$<10>, rmso=^X^], -- smdc=^P, smir=^P, smso=^N, --# dmchat is like DM2500, but DOES need "all that padding" (jcm 1/31/82) --# also, has a meta-key. --# From: <goldberger@su-csli.arpa> --# (dmchat: ":MT:" changed to ":km:" -- esr) --dmchat|dmchat version of datamedia 2500, -- km, -- dl1=\020\032\030\035$<2/>, -- il1=\020\n\030\035\030\035$<1*/>, use=dm2500, --# (dm3025: ":MT:" changed to ":km:" -- esr) --dm3025|datamedia 3025a, -- OTbs, km, -- cols#80, it#8, lines#24, -- bel=^G, clear=\EM$<2>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA, -- dch1=\010$<6>, dl1=\EP\EA\EQ$<130>, ed=\EJ$<2>, el=\EK, -- home=\EH, ht=^I, il1=\EP\n\EQ$<130>, ind=^J, ip=$<6>, -- is2=\EQ\EU\EV, rmdc=\EQ, rmir=\EQ, rmso=\EO0, smdc=\EP, -- smir=\EP, smso=\EO1, --dm3045|datamedia 3045a, -- OTbs, am, eo, km@, ul, xenl, -- dch1=\EB$<6>, dl1@, il1@, is2=\EU\EV, kcuf1=\EC, kcuu1=\EA, -- kf0=\Ey\r, kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, -- kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, kf9=\Ex\r, -- khome=\EH, pad=\177, rmdc@, rmir=\EP, rmso@, smdc@, smso@, -- use=dm3025, --# Datamedia DT80 soft switches: --# 1 0=Jump 1=Smooth --# Autorepeat 0=off 1=on --# Screen 0=Dark 1=light --# Cursor 0=u/l 1=block -+######## LCD DISPLAYS - # --# 2 Margin Bell 0=off 1=on --# Keyclick 0=off 1=on --# Ansi/VT52 0=VT52 1=Ansi --# Xon/Xoff 0=Off 1=On -+ -+#### Matrix Orbital -+# from: Eric Z. Ayers (eric@ale.org) - # --# 3 Shift3 0=Hash 1=UK Pound --# Wrap 0=Off 1=On --# Newline 0=Off 1=On --# Interlace 0=Off 1=On -+# Matrix Orbital 20x4 LCD display -+# Command Character is 0xFE (decimal 254, octal 376) - # --# 4 Parity 0=Odd 1=Even --# Parity 0=Off 1=On --# Bits/Char 0=7 1=8 --# Power 0=60Hz 1=50Hz -+# On this device, cursor addressability isn't possible. The LCD expects: -+# 0xfe G <col> <row> -+# for cup: %p1 == row and %p2 is column - # --# 5 Line Interface 0=EIA 1=Loop --# Aux Interface 0=EIA 1=Loop --# Local Copy 0=Off 1=On --# Spare -+# This line: -+# cup=\376G%p2%c%p1%c -+# LOOKS like it will work, but sometimes only one of the two numbers is sent. -+# See the terminfo (5) manpage commented regarding 'Terminals which use "%c"'. - # --# 6 Aux Parity 0=Odd 1=Even --# Aux Parity 0=Off 1=On --# Aux Bits/Char 0=7 1=8 --# CRT Saver 0=Off 1=On --# dm80/1 is a vt100 lookalike, but it doesn't seem to need any padding. --dm80|dmdt80|dt80|datamedia dt80/1, -- clear=\E[2J\E[H, cud1=^J, cuf1=\E[C, -- cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, -- home=\E[H, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, ri=\EM, -- rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, -- use=vt100, --# except in 132 column mode, where it needs a little padding. --# This is still less padding than the vt100, and you can always turn on --# the ^S/^Q handshaking, so you can use vt100 flavors for things like --# reverse video. --dm80w|dmdt80w|dt80w|datamedia dt80/1 in 132 char mode, -- cols#132, -- clear=\E[H\E[2J$<50/>, cud1=^J, -- cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<5/>, -- ed=\E[0J$<20/>, el=\E[0K$<20/>, use=dm80, --# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 --dt80-sas|Datamedia DT803/DTX for SAS usage, -- am, bw, -- cols#80, lines#24, -- acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~, -- bel=^G, clear=^L, cr=^M, -- csr=\E=%p1%{32}%+%c%{32}%c\E#1\E=%p2%{32}%+%c%{32}%c\E#2, -- cub1=^H, cud1=\EB, cuf1=^\, -- cup=\E=%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, dl1=\EM, ed=^K, -- el=^], ff=^L, home=^Y, ht=^I, hts=\E'1, il1=\EL, ind=\EB, -- is2=\E)0\E<\EP\E'0\E$2, kclr=^L, kcub1=^H, kcud1=^J, -- kcuf1=^\, kcuu1=^_, ked=^K, kel=^], khome=^Y, mc4=^O, mc5=^N, -- rev=\E$2\004, ri=\EI, rmacs=\EG, rmso=^X, sgr0=^X, smacs=\EF, -- smso=\E$2\004, tbc=\E'0, -- --# Datamedia Excel 62, 64 from Gould/SEL UTX/32 via BRL --# These aren't end-all Excel termcaps; but do insert/delete char/line --# and name some of the extra function keys. (Mike Feldman ccvaxa!feldman) --# The naming convention has been bent somewhat, with the use of E? (where --# E is for 'Excel') as # a name. This was done to distinguish the entries --# from the other Datamedias in use here, and yet to associate a model of --# the Excel terminals with the regular datamedia terminals that share --# major characteristics. --excel62|excel64|datamedia Excel 62, -- dch1=\E[P, kbs=^H, kcub1=^H, kcud1=^J, kf5=\EOu, kf6=\EOv, -- kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, smir=\E[4h, -- use=dt80, --excel62-w|excel64-w|datamedia Excel 62 in 132 char mode, -- dch1=\E[P, kbs=^H, kcub1=^H, kcud1=^J, kf5=\EOu, kf6=\EOv, -- kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, smir=\E[4h, -- use=dt80w, --excel62-rv|excel64-rv|datamedia Excel 62 in reverse video mode, -- dch1=\E[P, flash=\E[?5l\E[?5h, kbs=^H, kcub1=^H, kcud1=^J, -- kf5=\EOu, kf6=\EOv, kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, -- smir=\E[4h, use=dt80, -- --#### Falco -+# Alas, there is no cursor upline capability on this display. - # --# Falco Data Products --# 440 Potrero Avenue --# Sunnyvale, CA 940864-196 --# Vox: (800)-325-2648 --# Fax: (408)-745-7860 --# Net: techsup@charm.sys.falco.com -+# These entries add some 'sanity stuff' to the clear function. That is, it -+# does a 'clear' and also turns OFF auto scroll, turns ON Auto Line Wrapping, -+# and turns off the cursor blinking and stuff like that. - # --# Current Falco models as of 1995 are generally ANSI-compatible and support --# emulations of DEC VT-series, Wyse, and Televideo types. -+# NOTE: calling 'beep' turns on the backlight (bell) -+# NOTE: calling 'flash' turns it on and back off (visual bell) - # -+MtxOrb|Generic Matrix Orbital LCD display, -+ bel=\376B^A, clear=\376X\376C\376R\376K\376T, -+ cnorm=\376K\376T, cub1=\376L, cuf1=\376M, -+ flash=\376B\001$<200>\376F, home=\376H, -+MtxOrb204|20x4 Matrix Orbital LCD display, -+ cols#20, lines#4, use=MtxOrb, -+MtxOrb162|16x2 Matrix Orbital LCD display, -+ cols#16, lines#2, use=MtxOrb, -+# The end - --# Test version for Falco ts-1. See <arpavax.hickman@ucb> for info --# This terminal was released around 1983 and was discontinued long ago. --# The standout and underline highlights are the same. --falco|ts1|ts-1|falco ts-1, -- OTbs, am, -- cols#80, it#8, lines#24, -- bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\EY, el=\ET\EG0\010, home=^^, ht=^I, il1=\EE, -- ind=^J, is2=\Eu\E3, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, -- kf0=^A0\r, rmir=\Er, rmso=\Eg0, rmul=\Eg0, sgr0=\Eg0, -- smir=\Eq, smso=\Eg1, smul=\Eg1, --falco-p|ts1p|ts-1p|falco ts-1 with paging option, -- OTbs, am, da, db, mir, msgr, ul, -+######## OLDER TERMINAL TYPES -+# -+# This section is devoted to older commercial terminal brands that are now -+# discontinued, but known to be still in use or represented by emulations. -+# -+ -+#### AT&T (att, tty) -+# -+# This section also includes Teletype-branded VDTs. -+# -+# The AT&T/Teletype terminals group was sold to SunRiver Data Systems (now -+# Boundless Technologies); for details, see the header comment on the ADDS -+# section. -+# -+# These are AT&T's official terminfo entries. All-caps aliases have been -+# removed. -+# -+att2300|sv80|AT&T 2300 Video Information Terminal 80 column mode, -+ am, eo, mir, msgr, xon, - cols#80, it#8, lines#24, -- bel=^G, cbt=\EI, clear=\E*, cr=^M, cub1=^H, cud1=\E[B, -- cuf1=\E[C, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E[A, -- dch1=\EW, dl1=\ER, ed=\EY, el=\ET\EG0\010\Eg0, ht=^I, -- il1=\EE, ind=^J, is2=\EZ\E3\E_c, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, rmcup=\E_b, rmir=\Er, -- rmso=\Eg0, rmul=\Eg0, sgr0=\Eg0, smcup=\E_d, smir=\Eq, -- smso=\Eg4, smul=\Eg1, --# (ts100: I added <rmam>/<smam> based on the init string -- esr) --ts100|ts100-sp|falco ts100-sp, -- am, mir, msgr, xenl, xon, -+ bel=^G, clear=\E[H\E[J, cr=^M, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcbt=\E[Z, kclr=\E[J, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, -+ kdl1=\E[M, kf1=\E[1r, kf10=\E[10r, kf11=\E[11r, -+ kf12=\E[12r, kf13=\E[13r, kf14=\E[14r, kf15=\E[15r, -+ kf16=\E[16r, kf2=\E[2r, kf3=\E[3r, kf4=\E[4r, kf5=\E[5r, -+ kf6=\E[6r, kf7=\E[7r, kf8=\E[8r, kf9=\E[9r, khome=\E[H, -+ kich1=\E[@, kil1=\E[L, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, -+ rev=\E[7m, rmir=\E[4l, rmso=\E[m, sgr0=\E[m, smir=\E[4h, -+ smso=\E[7m, -+att2350|AT&T 2350 Video Information Terminal 80 column mode, -+ mc0@, mc4@, mc5@, use=att2300, -+ -+# Must setup RETURN KEY - CR, REC'VD LF - INDEX. -+# Seems upward compatible with vt100, plus ins/del line/char. -+# On sgr, the protection parameter is ignored. -+# No check is made to make sure that only 3 parameters are output. -+# standout= reverse + half-intensity = 3 | 5. -+# bold= reverse + underline = 2 | 3. -+# note that half-bright blinking doesn't look different from normal blinking. -+# NOTE:you must program the function keys first, label second! -+# (att4410: a BSD entry has been seen with the following capabilities: -+# <is2=\E[?6l>, <kf1=\EOc>, <kf2=\EOd>, <kf3=\EOe>, <kf4=\EOg>, -+# <kf6=\EOh>, <kf7=\EOi>, <kf8=\EOj>, -- esr) -+att5410v1|att4410v1|tty5410v1|AT&T 4410/5410 80 columns - version 1, -+ am, hs, mir, msgr, xon, -+ cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, -+ acsc=++\,\,--..00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[2;7m, clear=\E[H\E[J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dim=\E[2m, -+ dl1=\E[M, ed=\E[J, el=\E[K, fsl=\E8, home=\E[H, ht=^I, -+ ich1=\E[@, il1=\E[L, ind=^J, invis=\E[8m, is1=\E[?3l\E)0, -+ is3=\E[1;03q f1 \EOP\E[2;03q f2 \EOQ\E[3;03q f3 \EOR\E[4;03q f4 \EOS\E[5;03q f5 \EOT\E[6;03q f6 \EOU\E[7;03q f7 \EOV\E[8;03q f8 \EOW, -+ kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, -+ kf6=\EOU, kf7=\EOV, kf8=\EOW, khome=\E[H, kll=\E[24;1H, -+ ll=\E[24H, nel=^M^J, -+ pfx=\E[%p1%1d;%p2%l%2.2dq f%p1%1d %p2%s, -+ pln=\E[%p1%d;00q%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM, -+ rmacs=^O, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, -+ sc=\E7, -+ sgr=\E[0%?%p1%p5%|%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smso=\E[7m, smul=\E[4m, -+ tsl=\E7\E[25;%p1%{1}%+%dH, -+ -+att4410v1-w|att5410v1-w|tty5410v1-w|AT&T 4410/5410 132 columns - version 1, -+ cols#132, wsl#132, -+ is1=\E[?3h\E)0, rs2=\Ec\E[?3h\E[2;0y, use=att5410v1, -+ -+att4410|att5410|tty5410|AT&T 4410/5410 80 columns - version 2, -+ OTbs, -+ pfx=\E[%p1%d;%p2%l%02dq f%p1%d %p2%s, -+ use=att5410v1, -+ -+att5410-w|att4410-w|4410-w|tty5410-w|5410-w|AT&T 4410/5410 in 132 column mode, -+ cols#132, wsl#132, -+ is1=\E[?3h\E)0, rs2=\Ec\E[?3h\E[2;0y, use=att4410, -+ -+# 5410 in terms of a vt100 -+# (v5410: added <rmam>/<smam> based on init string -- esr) -+v5410|att5410 in terms of a vt100, -+ am, mir, msgr, xon, - cols#80, it#8, lines#24, vt#3, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, - clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C$<2>, -- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, -- cuu1=\E[A$<2>, dch1=\E~W, dl1=\E~R, ed=\E[J$<50>, -- el=\E[K$<3>, el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, -- ht=^I, hts=\EH, ich1=\E~Q, il1=\E~E, ind=^J, is1=\E~)\E~ea, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, -- rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ cub1=^H, cud1=^J, cuf1=\E[C$<2>, -+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu1=\E[A$<2>, dch1=\E[P, -+ dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, -+ enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ich1=\E[@, -+ il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -+ kcuu1=\EOA, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, -+ rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>, -+ rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -+ sc=\E7, - sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, - 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=vt100+fnkeys, --ts100-ctxt|falco ts-100 saving context, -- rmcup=\E~_b, smcup=\E~_d\E[2J, use=ts100, - --#### Florida Computer Graphics - # -+# Teletype Model 5420 -- A souped up 5410, with multiple windows, -+# even! the 5420 has three modes: scroll, window or page mode -+# this terminfo should work in scroll or window mode, but doesn't -+# take advantage of any of the differences between them. -+# -+# Has memory below (2 lines!) -+# 3 pages of memory (plus some spare) -+# The 5410 sequences for <cup>, <cvvis>, <dch>, <dl>, <ech>, <flash>, <home>, -+# <hpa>, <hts> would work for these, but these work in both scroll and window -+# mode... Unset insert character so insert mode works -+# <is1> sets 80 column mode, -+# <is2> escape sequence: -+# 1) turn off all fonts -+# 2) function keys off, keyboard lock off, control display off, -+# insert mode off, erasure mode off, -+# 3) full duplex, monitor mode off, send graphics off, nl on lf off -+# 4) reset origin mode -+# 5) set line wraparound -+# 6) exit erasure mode, positional attribute mode, and erasure extent mode -+# 7) clear margins -+# 8) program ENTER to transmit ^J, -+# We use \212 to program the ^J because a bare ^J will get translated by -+# UNIX into a CR/LF. The enter key is needed for AT&T uOMS. -+# 1 2 3 4 5 6 7 8 -+# <is3> set screen color to black, -+# No representation in terminfo for the delete word key: kdw1=\Ed -+# Key capabilities assume the power-up send sequence... -+# This <rmcup> is not strictly necessary, but it helps maximize -+# memory usefulness: <rmcup=\Ez>, -+# Alternate sgr0: <sgr0=\E[m\EW^O>, -+# Alternate sgr: <sgr=\E[%?%p1%t2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t^N%e^O%;>, -+# smkx programs the SYS PF keys to send a set sequence. -+# It also sets up labels f1, f2, ..., f8, and sends edit keys. -+# This string causes them to send the strings <kf1>-<kf8> -+# when pressed in SYS PF mode. -+# (att4415: I added <rmam>/<smam> based on the init string -- esr) -+att4415|tty5420|att5420|AT&T 4415/5420 80 cols, -+ OTbs, db, mir, xon, -+ lh#2, lm#78, lw#8, nlab#8, wsl#55, -+ cbt=\E[Z, clear=\E[x\E[J, cnorm=\E[11;0j, cub=\E[%p1%dD, -+ cud=\E[%p1%dB, cuf=\E[%p1%dC, cup=\E[%i%p1%d;%p2%dx, -+ cuu=\E[%p1%dA, cvvis=\E[11;1j, dch=\E[%p1%dP, -+ dl=\E[%p1%dM, ech=\E[%p1%ds\E[%p1%dD, -+ flash=\E[?5h$<200>\E[?5l, home=\E[x, -+ hpa=\E[%p1%{1}%+%dG, hts=\EH, ich=\E[%p1%d@, ich1@, -+ il=\E[%p1%dL, indn=\E[%p1%dE, is1=\E[?3l$<100>, -+ is2=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[21;1j\212, -+ is3=\E[?5l, kbeg=\Et, kcbt=\E[Z, kdch1=\E[P, kdl1=\E[M, -+ kel=\E[2K, kend=\Ez, kent=\Eent, kf1=\EOc, kf2=\EOd, -+ kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, -+ kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U, -+ kpp=\E[V, kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, -+ lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?2i, mc4=\E[?9i, -+ mc5=\E[?4i, mrcup=\E[%i%p1%d;%p2%dt, -+ pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s, -+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV, -+ rin=\E[%p1%dF, rmam=\E[?7l, rmir=\E[4l, -+ rmkx=\E[19;0j\E[21;1j\212, rmln=\E|, -+ sgr=\E[0%?%p1%p5%|%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[19;1j\E[21;4j\Eent, smln=\E~, tbc=\E[3g, -+ tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd, -+ use=att4410, - --# Florida Computer Graphics Beacon System, using terminal emulator program --# "host.com", as provided by FCG. This description is for an early release --# of the "host" program. Known bug: <ed> clears the whole screen, so it's --# commented out. -+att4415-w|tty5420-w|att5420-w|AT&T 4415/5420 132 cols, -+ cols#132, lm#54, wsl#97, -+ is1=\E[?3h$<100>, use=att4415, - --# From: David Bryant <cbosg!djb> 1/7/83 --beacon|FCG Beacon System, -- am, da, db, -- cols#80, lines#32, -- bel=\ESTART\r\E37\r\EEND\r$<1>, -- blink=\ESTART\r\E61\,1\r\EEND\r, clear=\EZ$<10>, cr=^M, -- cub1=^H, cud1=^J, cuf1=\EV, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<20>, cuu1=\EU, -- dch1=\EW, dl1=\ER, el=\ET, home=\EH$<10>, ich1=\EQ, il1=\EE, -- ind=^J, rev=\ESTART\r\E59\,1\r\EEND\r, rmcup=, -- rmso=\ESTART\r\E70\,0\r\EEND\r$<20>, -- rmul=\ESTART\r\E60\,0\r\EEND\r, -- sgr0=\ESTART\r\E78\r\E70\,0\r\EEND\r$<20>, -- smcup=\ESTART\r\E2\,0\r\E12\r\EEND\r$<10>, -- smso=\ESTART\r\E70\,6\r\EEND\r$<20>, -- smul=\ESTART\r\E60\,1\r\EEND\r, -+att4415-rv|tty5420-rv|att5420-rv|AT&T 4415/5420 80 cols/rv, -+ flash=\E[?5l$<200>\E[?5h, is3=\E[?5h, use=att4415, - --#### Fluke --# -+att4415-w-rv|tty5420-w-rv|att5420-w-rv|AT&T 4415/5420 132 cols/rv, -+ cols#132, lm#54, wsl#97, -+ flash=\E[?5l$<200>\E[?5h, is1=\E[?3h$<100>, is3=\E[?5h, -+ use=att4415, - --# The f1720a differences from ANSI: no auto margin, destructive --# tabs, # of lines, funny highlighting and underlining --f1720|f1720a|fluke 1720A, -- xt, -- cols#80, lines#16, xmc#1, -- bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, -- el=\E[K, ind=\ED, is2=\E[H\E[2J, kcub1=^_, kcud1=^], -- kcuf1=^^, kcuu1=^\, ri=\EM, rmso=\E[m, rmul=\E[m, sgr0=\E[m, -- smso=\E[7m, smul=\E[4m, -+# Note that this mode permits programming USER PF KEYS and labels -+# However, when you program user pf labels you have to reselect -+# user pf keys to make them appear! -+att4415+nl|tty5420+nl|att5420+nl|generic AT&T 4415/5420 changes for not changing labels, -+ kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, -+ pfx=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s, -+ pln=\E[%p1%d;0;0;1q%p2%:-16.16s, - --#### Liberty Electronics (Freedom) --# --# Liberty Electronics --# 48089 Fremont Blvd --# Fremont CA 94538 --# Vox: (510)-623-6000 --# Fax: (510)-623-7021 -+att4415-nl|tty5420-nl|att5420-nl|AT&T 4415/5420 without changing labels, -+ kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, -+ use=att4415, - --# From: <faletti@berkeley.edu> --# (f100: added empty <acsc> to suppress a tic warning; --# made this relative to adm+sgr -- note that <invis> isn't --# known to work for f100 but does on the f110. --esr) --f100|freedom|freedom100|freedom model 100, -- OTbs, am, bw, hs, mir, msgr, xon, -- cols#80, lines#24, -- acsc=, bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^J, -- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- dch1=\EW, dl1=\ER$<11.5*>, dsl=\Eg\Ef\r, ed=\EY, el=\ET, -- flash=\Eb$<200>\Ed, fsl=^M, home=^^, hpa=\E]%p1%{32}%+%c, -- ht=^I, hts=\E1, il1=\EE$<8.5*>, ind=^J, ip=$<6>, -- is2=\Eg\Ef\r\Ed, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^V, -- kcuf1=^L, kcuu1=^K, kf1=^A@\r, kf10=^AI\r, kf2=^AA\r, -- kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -- kf8=^AG\r, kf9=^AH\r, khome=^^, ri=\Ej, rmacs=\E$, rmir=\Er, -- smacs=\E%%, smir=\Eq, tbc=\E3, tsl=\Eg\Ef, -- vpa=\E[%p1%{32}%+%c, use=adm+sgr, --f100-rv|freedom-rv|freedom 100 in reverse video, -- flash=\Ed$<200>\Eb, is2=\Eg\Ef\r\Eb, use=f100, --# The f110 and f200 have problems with vi(1). They use the ^V --# code for the down cursor key. When kcud1 is defined in terminfo --# as ^V, the Control Character Quoting capability (^V in insert mode) --# is lost! It cannot be remapped in vi because it is necessary to enter --# a ^V to to quote the ^V that is being remapped!!! --# --# f110/f200 users will have to decide whether --# to lose the down cursor key or the quoting capability. We will opt --# initially for leaving the quoting capability out, since use of VI --# is not generally applicable to most interactive applications --# (f110: added <ht>, <khome> & <kcbt> from f100 -- esr) --f110|freedom110|Liberty Freedom 110, -- bw@, eslok, -- it#8, wsl#80, -- blink=\EG2, bold=\EG0, civis=\E.1, cnorm=\E.2, cud1=^V, -- dim=\EG@, dl1=\ER, dsl=\Ef\r, flash=\Eb$<200/>\Ed, il1=\EE, -- ip@, is2@, kclr=^^, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, -- kf0=^AI\r, kf10@, kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`, -- ri=\EJ, rmacs=\E%%, rmir=\Er\EO, smacs=\E$, smir=\EO\Eq, -- smso=\EG<, tsl=\Ef, use=f100, --f110-14|Liberty Freedom 110 14inch, -- dch1@, use=f110, --f110-w|Liberty Freedom 110 - 132 cols, -- cols#132, use=f110, --f110-14w|Liberty Freedom 110 14in/132 cols, -+att4415-rv-nl|tty5420-rv-nl|att5420-rv-nl|AT&T 4415/5420 reverse video without changing labels, -+ kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, -+ use=att4415-rv, -+ -+att4415-w-nl|tty5420-w-nl|att5420-w-nl|AT&T 4415/5420 132 cols without changing labels, -+ kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, -+ use=att4415-w, -+ -+att4415-w-rv-n|tty5420-w-rv-n|att5420-w-rv-n|AT&T 4415/5420 132 cols reverse without changing labels, -+ kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl, -+ use=att4415-w-rv, -+ -+att5420_2|AT&T 5420 model 2 80 cols, -+ am, db, hs, mir, msgr, xon, -+ cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, wsl#55, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ blink=\E[5m, cbt=\E[1Z, clear=\EH\EJ, cnorm=\E[11;0j, -+ cr=\EG, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\E[1B, cuf=\E[%p1%dC, cuf1=\E[1C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[1A, -+ cvvis=\E[11;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[0J, -+ el=\E[0K, el1=\E[1K, flash=\E[?5h$<200>\E[?5l, fsl=\E8, -+ home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, -+ ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ indn=\E[%p1%dE, invis=\E[8m, -+ is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;0j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r, -+ kbeg=\Et, kbs=^H, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, -+ kel=\E[2K, kend=\Ez, kent=^J, kf1=\EOc, kf2=\EOd, kf3=\EOe, -+ kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, khome=\E[H, -+ kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U, -+ kpp=\E[V, kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5, -+ lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?;2i, mc4=\E[4i, -+ mc5=\E[5i, mrcup=\E[%i%p1%d;%p2%dt, nel=^M^J, -+ pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s\E~, -+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s\E~, prot=\EV, rc=\E8, -+ rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, rmkx=\E[19;0j, -+ rmln=\E|, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, -+ sc=\E7, -+ sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smkx=\E[19;1j, smln=\E~, -+ smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd, -+att5420_2-w|AT&T 5420 model 2 in 132 column mode, - cols#132, -- dch1@, use=f110, --# (f200: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) --f200|freedom200|Liberty Freedom 200, -- OTbs, am, eslok, hs, mir, msgr, xon, -- cols#80, it#8, lines#24, wsl#80, -- acsc=, bel=^G, blink=\EG2, bold=\EG0, cbt=\EI, civis=\E.0, -- clear=^Z, cnorm=\E.1, cr=^M, -- csr=\Em0%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=^V, -- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- dch1=\EW, dim=\EG@, dl1=\ER, dsl=\Ef\r, ed=\EY, el=\ET, -- flash=\Eo$<200/>\En, fsl=^M, home=^^, -- hpa=\E]%p1%{32}%+%c, hts=\E1, il1=\EE, ind=^J, kbs=^H, -- kclr=^^, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, -- kdl1=\ER, ked=\EY, kel=\ET, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, -- kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -- kf8=^AG\r, kf9=^AH\r, kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`, -- ri=\EJ, rmacs=\E%%, rmir=\Er, smacs=\E$, smir=\Eq, smso=\EG<, -- tbc=\E3, tsl=\Ef, vpa=\E[%p1%{32}%+%c, use=adm+sgr, --f200-w|Liberty Freedom 200 - 132 cols, -- cols#132, use=f200, --# The f200 has the ability to reprogram the down cursor key. The key is --# reprogrammed to ^J (linefeed). This value is remembered in non-volatile RAM, --# so powering the terminal off and on will not cause the change to be lost. --f200vi|Liberty Freedom 200 for vi, -- flash=\Eb$<200/>\Ed, kcud1=^J, use=f200, --f200vi-w|Liberty Freedom 200 - 132 cols for vi, -- cols#132, use=f200vi, -+ is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;1j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r, -+ use=att5420_2, - --#### GraphOn (go) --# --# Graphon Corporation --# 544 Division Street --# Campbell, CA 95008 --# Vox: (408)-370-4080 --# Fax: (408)-370-5047 --# Net: troy@graphon.com (Troy Morrison) --# --# --# The go140 and go225 have been discontinued. GraphOn now makes X terminals, --# including one odd hybrid that starts out life on power-up as a character --# terminal, than can be switched to X graphics mode (driven over the serial --# line) by an escape sequence. No info on this beast yet. --# (go140: I added <rmam>/<smam> based on the init string -- esr) --go140|graphon go-140, -- OTbs, -- cols#80, it#8, lines#24, -- clear=\E[H\E[2J$<10/>, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -- ed=\E[J$<10/>, el=\E[K, ht=^I, -- if=/usr/share/tabset/vt100, il1=\E[L, -- is2=\E<\E=\E[?3l\E[?7l\E(B\E[J\E7\E[;r\E8\E[m\E[q, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, -- kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, ri=\EM, -- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, -- rmul=\E[m, sgr0=\E[m, smam=\E[?7h, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, --go140w|graphon go-140 in 132 column mode, -- am, -+att4418|att5418|AT&T 5418 80 cols, -+ am, xon, -+ cols#80, lines#24, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, clear=\E[H\E[2J, cr=^M, cub=\E[%p1%dD, -+ cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -+ cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[1P, dim=\E[2m, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K, home=\E[H, -+ ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, ind=^J, -+ is1=\E[?3l, is2=\E)0\E?6l\E?5l, kclr=\E[%%, kcub1=\E@, -+ kcud1=\EU, kcuf1=\EA, kcuu1=\ES, kent=\E[, kf1=\E[h, -+ kf10=\E[m, kf11=\E[n, kf12=\E[o, kf13=\E[H, kf14=\E[I, -+ kf15=\E[J, kf18=\E[K, kf19=\E[L, kf2=\E[i, kf20=\E[E, -+ kf21=\E[_, kf22=\E[M, kf23=\E[N, kf24=\E[O, kf3=\E[j, -+ kf6=\E[k, kf7=\E[l, kf8=\E[f, kf9=\E[w, khome=\Ec, rc=\E8, -+ rev=\E[7m, rmacs=^O, rmso=\E[m, rmul=\E[m, sc=\E7, -+ sgr0=\E[m\017, smacs=^N, smso=\E[7m, smul=\E[4m, -+att4418-w|att5418-w|AT&T 5418 132 cols, - cols#132, -- is2=\E<\E=\E[?3h\E[?7h\E(B\E[J\E7\E[;r\E8\E[m\E[q, -- use=go140, --# Hacked up vt200 termcap to handle GO-225/VT220 --# From: <edm@nwnexus.WA.COM> --# (go225: I added <rmam>/<smam> based on the init string -- esr) --go225|go-225|Graphon 225, -- OTbs, am, mir, xenl, -- cols#80, it#8, lines#25, vt#3, -- blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, -- csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -- ed=\E[J, el=\E[K, home=\E[H, ht=^I, il1=\E[L, ind=\ED, -- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kbs=^H, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, -- kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, rc=\E8, rev=\E[7m, -- rf=/usr/share/tabset/vt100, ri=\EM, rmam=\E[?7l, -- rmcup=\E[!p\E[?7h\E[2;1;1#w, rmir=\E[4l, rmkx=\E>, -- rmso=\E[27m, rmul=\E[24m, rs1=\E[!p\E[?7h\E[2;1;1#w, -- sc=\E7, sgr0=\E[m, smam=\E[?7h, smcup=\E[2;0#w\E[1;25r, -- smir=\E[4h, smkx=\E=, smso=\E[7m, smul=\E[4m, -+ is1=\E[?3h, use=att5418, - --#### Harris (Beehive) -+att4420|tty4420|teletype 4420, -+ OTbs, da, db, eo, msgr, ul, xon, -+ cols#80, lines#24, lm#72, -+ bel=^G, clear=\EH\EJ, cr=\EG, cub1=\ED, cud1=\EB, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP, -+ dl1=\EM, ed=\EJ, el=\Ez, home=\EH, il1=\EL, ind=\EH\EM\EY7\s, -+ kcbt=\EO, kclr=\EJ, kcub1=^H, kcud1=\EB, kcuf1=\EC, -+ kcuu1=\EA, kdch1=\EP, kdl1=\EM, kf0=\EU, kf3=\E@, khome=\EH, -+ kich1=\E\^, kil1=\EL, kind=\ES, kri=\ET, -+ lf0=segment advance, lf3=cursor tab, rmdc@, rmso=\E~, -+ rmul=\EZ, smdc@, smso=\E}, smul=\E\\, -+ -+# The following is a terminfo entry for the Teletype 4424 -+# asynchronous keyboard-display terminal. It supports -+# the vi editor. The terminal must be set up as follows, - # --# Bletch. These guys shared the Terminal Brain Damage laurels with Hazeltine. --# Their terminal group is ancient history now (1995) though the parent --# company is still in business. -+# HIGHLIGHT DEFINITION 3-TONE -+# DISPLAY FUNCTION GROUP III - # -- --# Beehive documentation is undated and marked Preliminary and has no figures --# so we must have early Superbee2 (Model 600, according to phone conversation --# with mfr.). It has proved reliable except for some missing padding --# (notably after \EK and <nl> at bottom of screen). -+# The second entry below provides limited (a la adm3a) -+# operation under GROUP II. - # --# The key idea is that AEP mode is poison for <cup> & that US's in --# the local memory should be avoided like the plague. That means --# that the 2048 character local buffer is used as 25 lines of 80 --# characters, period. No scrolling local memory, folks. It also --# appears that we cannot use naked INS LINE feature since it uses --# US. The sbi fakes <il1> with an 80-space insert that may be too --# slow at low speeds; also spaces get converted to \040 which is --# too long for some programs (not vi). DEL LINE is ok but slow. --# --# The <nl> string is designed for last line of screen ONLY; cup to --# 25th line corrects the motion inherent in scrolling to Page 1. --# --# There is one understood bug. It is that the screen appears to --# pop to a new (blank) page after a <nel>, or leave a half-line --# ellipsis to a quad that is the extra 48 memory locations. The --# data received is dumped into memory but not displayed. Not to --# worry if <cup> is being used; the lines not displayed will be, --# whenever the cursor is moved up there. Since <cup> is addressed --# relative to MEMORY of window, nothing is lost; but beware of --# relative cursor motion (<cuu1>,<cud1>,<cuf1>,<cub1>). Recommended, --# therefore, is setenv MORE -c . --# --# WARNING: Not all features tested. --# --# Timings are assembled from 3 sources. Some timings may reflect --# SB2/Model 300 that were used if more conservative. --# Tested on a Model 600 at 1200 and 9600 bd. --# --# The BACKSPACEkb option is cute. The NEWLINE key, so cleverly --# placed on the keyboard and useless because of AEP, is made --# into a backspace key. In use ESC must be pressed twice (to send) --# and sending ^C must be prefixed by ESC to avoid that weird --# transmit mode associated with ENTER key. --# --# IF TERMINAL EVER GOES CATATONIC with the cursor buzzing across --# the screen, then it has dropped into ENTER mode; hit --# RESET--ONLINE--!tset. --# --# As delivered this machine has a FATAL feature that will throw --# it into that strange transmit state (SPOW) if the space bar is --# hit after a CR is received, but before receiving a LF (or a --# few others). --# --# The circuits MUST be modified to eliminate the SPOW latch. --# This is done by strapping on chip A46 of the I/O board; cut --# the p.c. connection to Pin 5 and strap Pin 5 to Pin 8 of that --# chip. This mod has been checked out on a Mod 600 of Superbee II. --# With this modification absurdly high timings on cr are --# unnecessary. --# --# NOTE WELL that the rear panel switch should be set to CR/LF, --# not AEP! -+# This must be used with DISPLAY FUNCTION GROUP I or III -+# and HIGHLIGHT DEFINITION 3-TONE -+# The terminal has either bold or blink, depending on options - # --sb1|beehive superbee, -- OTbs, am, bw, da, db, mir, ul, xsb, -- cols#80, lines#25, xmc#1, -- bel=^G, cbt=\E`$<650>, clear=\EH$<1>\EJ$<3>, cr=$<1>\r, -- cub1=^H, cud1=^J, cuf1=\EC$<3>, cup=\EF%p2%03d%p1%03d, -- cuu1=\EA$<3>, dch1=\EP$<3>, dl1=\EM$<100>, ed=\EJ$<3>, -- el=\EK$<3>, home=\EH$<1>, ht=^I, hts=\E1, -- il1=\EN\EL$<3>\EQ \EP$<3> \EO\ER\EA$<3>, -- ind=^J, is2=\EE$<3>\EX\EZ\EO\Eb\Eg\ER, kbs=^_, kcub1=\ED, -- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdl1=\EM, ked=\EJ, kel=\EK, -- kf0=\E2, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, -- kf7=\Ev, kf8=\Ew, kf9=\E1, khome=\EH, kich1=\EQ\EO, -- krmir=\ER, lf0=TAB CLEAR, lf9=TAB SET, rmcup=, rmir=\ER, -- rmso=\E_3, rmul=\E_3, sgr0=\E_3, smcup=\EO, smir=\EQ\EO, -- smso=\E_1, smul=\E_0, tbc=\E3, --sbi|superbee|beehive superbee at Indiana U., -- xsb, -- cr=\r$<1>, il1=1\EN\EL$<9>\EQ \EP$<9> \EO\ER\EA, -- use=sb1, --# Alternate (older) description of Superbee - f1=escape, f2=^C. --# Note: there are at least 3 kinds of superbees in the world. The sb1 --# holds onto escapes and botches ^C's. The sb2 is the best of the 3. --# The sb3 puts garbage on the bottom of the screen when you scroll with --# the switch in the back set to CRLF instead of AEP. This description --# is tested on the sb2 but should work on all with either switch setting. --# The f1/f2 business is for the sb1 and the <xsb> can be taken out for --# the other two if you want to try to hit that tiny escape key. --# This description is tricky: being able to use cup depends on there being --# 2048 bytes of memory and the hairy <nl> string. --superbee-xsb|beehive super bee, -- am, da, db, xsb, -- cols#80, it#8, lines#25, -- clear=\EH\EJ$<3>, cnorm=^J, cr=\r$<1000>, cub1=^H, cud1=^J, -- cuf1=\EC, cup=\EF%p2%3d%p1%3d, cuu1=\EA$<3>, -- dch1=\EP$<3>, dl1=\EM$<100>, ed=\EJ$<3>, el=\EK$<3>, -- home=\EH, ht=^I, hts=\E1, -- ind=\n\0\0\0\n\0\0\0\EA\EK\0\0\0\ET\ET, is2=\EH\EJ, -- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf1=\Ep, kf2=\Eq, -- kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, -- khome=\EH, rmso=\E_3, sgr0=\E_3, smso=\E_1, tbc=\E3, --# This loses on lines > 80 chars long, use at your own risk --superbeeic|super bee with insert char, -- ich1=, rmir=\ER, smir=\EQ, use=superbee-xsb, --sb2|sb3|fixed superbee, -- xsb@, use=superbee, -+# (att4424: commented out <smcup>=\E[1m, we don't need bright locked on -- esr) -+att4424|tty4424|teletype 4424, -+ OTbs, am, xon, -+ cols#80, lines#24, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E3, bold=\E3, cbt=\EO, clear=\E[H\E[2J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\EB, cuf=\E[%p1%dC, cuf1=\EC, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EA, -+ dch=\E[%p1%dP, dch1=\EP, dim=\EW, dl=\E[%p1%dM, dl1=\EM, -+ ed=\EJ, el=\Ez, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ ich1=\E\^, il=\E[%p1%dL, il1=\EL, ind=^J, is2=\E[20l\E[?7h, -+ kbs=^H, kclr=\EJ, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -+ khome=\E[H, nel=\EE, rev=\E}, ri=\ET, rmacs=\E(B, rmso=\E~, -+ rmul=\EZ, -+ sgr=\E[%?%p1%t7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p6%p4%|%t;5%;%?%p5%t;0%;m, -+ sgr0=\EX\E~\EZ\E4\E(B, smacs=\E(0, smso=\E}, smul=\E\\, -+ tbc=\EF, - --#### Beehive Medical Electronics --# --# Steve Seymour <srseymour@mindspring.com> writes (Wed, 03 Feb 1999): --# Regarding your question though; Beehive terminals weren't made by Harris. --# They were made by Beehive Medical Electronics in Utah. They went out of --# business in the early '80s. -+att4424-1|tty4424-1|teletype 4424 in display function group I, -+ kclr@, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome@, -+ use=att4424, -+ -+# This entry is not one of AT&T's official ones, it was translated from the -+# 4.4BSD termcap file. The highlight strings are different from att4424. -+# I have no idea why this is -- older firmware version, maybe? -+# The following two lines are the comment originally attached to the entry: -+# This entry appears to avoid the top line - I have no idea why. -+# From: jwb Wed Mar 31 13:25:09 1982 remote from ihuxp -+att4424m|tty4424m|teletype 4424M, -+ am, da, db, mir, -+ cols#80, it#8, lines#23, -+ bel=^G, clear=\E[2;H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%2d;%p2%2dH\E[B, cuu1=\E[A, dch1=\EP, -+ dl1=\EM, el=\E[K, ht=^I, ich1=\E\^, il1=\EL, ind=^J, ip=$<2/>, -+ is2=\E[m\E[2;24r, kbs=^H, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, -+ kf4=\EOS, khome=\E[H, nel=^M^J, ri=\ET, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, smso=\E[7m, smul=\E[4m, -+ -+# The Teletype 5425 is really version 2 of the Teletype 5420. It -+# is quite similar, except for some minor differences. No page -+# mode, for example, so all of the <cup> sequences used above have -+# to change back to what's being used for the 5410. Many of the -+# option settings have changed their numbering as well. - # --# (OK, then, I don't know why a couple of these say "harris beehive".) -+# This has been tested on a preliminary model. - # -+# (att5425: added <rmam>/<smam> based on the init string -- esr) -+att5425|tty5425|att4425|AT&T 4425/5425, -+ am, da, db, hs, mir, msgr, xenl, xon, -+ cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, wsl#55, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, -+ clear=\E[H\E[J, cnorm=\E[12;0j, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[12;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[J, -+ el=\E[K, el1=\E[1K, enacs=\E(B\E)0, -+ flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, -+ hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dE, -+ invis=\E[8m, is1=\E<\E[?3l$<100>, -+ is2=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[25;1j\212, -+ is3=\E[?5l, kbeg=\Et, kbs=^H, kcbt=\E[Z, kclr=\E[J, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, -+ kdl1=\E[M, kel=\E[2K, kend=\Ez, kent=\Eent, kf1=\EOc, -+ kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, -+ kf8=\EOj, khome=\E[H, kich1=\E[4h, kil1=\E[L, kind=\E[T, -+ kri=\E[S, ll=\E[24H, mc0=\E[?2i, mc4=\E[?9i, mc5=\E[?4i, -+ nel=^M^J, -+ pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, -+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV, rc=\E8, -+ rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, rmam=\E[?7l, -+ rmir=\E[4l, rmkx=\E[21;0j\E[25;1j\212, rmln=\E|, -+ rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, sc=\E7, -+ sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[21;1j\E[25;4j\Eent\E~, smln=\E~, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, tsl=\E7\E[25;%p1%{8}%+%dH, -+ vpa=\E[%p1%{1}%+%dd, - --# Reports are that most of these Beehive entries (except superbee) have not --# been tested and do not work right. <rmso> is a trouble spot. Be warned. -- --# (bee: <ich1> was empty, which is obviously bogus -- esr) --beehive|bee|harris beehive, -- OTbs, am, mir, -- cols#80, lines#24, -- cbt=\E>, clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC, -- cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP, -- dl1=\EM, ed=\EJ, el=\EK, home=\EH, il1=\EL, kbs=^H, kcbt=\E>, -- kclr=\EE, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -- kdch1=\EP, kdl1=\EM, kel=\EK, khome=\EH, kich1=\EQ, kil1=\EL, -- krmir=\E@, rmir=\E@, rmso=\Ed@, rmul=\Ed@, sgr0=\Ed@, -- smir=\EQ, smso=\EdP, smul=\Ed`, --# set tab is ^F, clear (one) tab is ^V, no way to clear all tabs. --# good grief - does this entry make :sg:/:ug: when it doesn't have to? --# look at those spaces in <rmso>/<smso>. Seems strange to me... --# (beehive: <if=/usr/share/tabset/beehive> removed, no such file. If you --# really care, cook up one using ^F -- esr) --beehive3|bh3m|beehiveIIIm|harris beehive 3m, -- OTbs, am, -- cols#80, it#8, lines#20, -- bel=^G, clear=^E^R, cr=^M, cub1=^H, cud1=^J, cuf1=^L, cuu1=^K, -- dl1=\021$<350>, ed=^R, el=^P, home=^E, ht=^I, hts=^F, -- il1=\023$<160>, ind=^J, ll=^E^K, rmso=\s^_, smso=^]\s, --beehive4|bh4|beehive 4, -- am, -- cols#80, lines#24, -- bel=^G, clear=\EE, cr=^M, cub1=\ED, cud1=^J, cuf1=\EC, -- cuu1=\EA, ed=\EJ, el=\EK, home=\EH, ind=^J, --# There was an early Australian kit-built computer called a "Microbee". --# It's not clear whether this is for one of those or for a relative --# of the Beehive. --microb|microbee|micro bee series, -- OTbs, am, -- cols#80, it#8, lines#24, -- bel=^G, clear=\EE, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, -- el=\EK, ht=^I, ind=^J, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -- kcuu1=\EA, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, -- kf6=\Eu, kf7=\Ev, kf8=\Ew, kf9=\Ex, khome=\EH, rmso=\Ed@, -- rmul=\Ed@, sgr0=\Ed@, smso=\s\EdP, smul=\Ed`, -+att5425-nl|tty5425-nl|att4425-nl|AT&T 4425/5425 80 columns no labels, -+ smkx=\E[21;1j\E[25;4j\Eent, use=att4425, - --# 8675, 8686, and bee from Cyrus Rahman --# (8675: changed k10, k11...k16 to k;, F1...F6 -- esr) --ha8675|harris 8675, -- is2=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU, kf1=^F, -- kf10=\Ed, kf11=^W, kf12=\ER, kf13=\EE, kf14=\EI, kf15=\Ei, -- kf16=\Eg, kf2=^P, kf3=^N, kf4=^V, kf5=^J, kf6=^T, kf7=^H, -- kf8=\177, kf9=\Ee, use=bee, --# (8686: changed k10, k11...k16 to k;, F1...F6; fixed broken continuation --# in :is: -- esr) --ha8686|harris 8686, -- is2=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU\E"*Z01\E"8F35021B7C83#\E"8F45021B7D83#\E"8F55021B7E83#\E"8F65021B7F83#\E"8F75021B7383#\E"8F851BD7#\E"8F95021B7083#\E"8FA5021B7183#\E"8FB5021B7283#, -- kf1=\002\Ep\003, kf10=\Ej, kf11=\EW, kf12=\002\E{\003, -- kf13=\002\E|\003, kf14=\002\E}\003, kf15=\002\E~\003, -- kf16=\002\E\177\003, kf2=\002\Eq\003, kf3=\002\Er\003, -- kf4=\002\Es\003, kf5=\E3, kf6=\EI, kf7=\ER, kf8=\EJ, kf9=\E(, -- use=bee, -+att5425-w|att4425-w|tty5425-w|teletype 4425/5425 in 132 column mode, -+ cols#132, lm#54, wsl#97, -+ is1=\E[?3h$<100>, use=tty5425, - --#### Hazeltine --# --# Hazeltine appears to be out of the terminal business as of 1995. These --# guys were co-owners of the Terminal Brain Damage Hall Of Fame along with --# Harris. They have a hazeltine.com domain (but no web page there ) and can --# be reached at: --# --# Hazeltine --# 450 East Pulaski Road --# Greenlawn, New York 11740 --# --# As late as 1993, manuals for the terminal product line could still be --# purchased from: --# --# TRW Customer Service Division --# 15 Law Drive --# P.O. Box 2076 --# Fairfield, NJ 07007-2078 --# --# They're now (1998) a subsidiary of General Electric, operating under the --# marque "GEC-Marconi Hazeltine" and doing military avionics. Web page --# at <http://www.gec.com/cpd/1ncpd.htm#1.55>. --# -+# (att4426: his had bogus capabilities: :ri=\EM:, :ri=\E[1U:. -+# I also added <rmam>/<smam> -- esr) -+att4426|tty4426|teletype 4426S, -+ am, da, db, xon, -+ cols#80, lines#24, lm#48, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, bold=\E[5m, clear=\E[H\E[2J\E[1U\E[H\E[2J\E[1V, -+ cr=^M, cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\EP, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[0K, home=\E[H, -+ hpa=\E[%p1%dG, ht=^I, hts=\E1, ich=\E[%p1%d@, ich1=\E\^, -+ il=\E[%p1%dL, il1=\EL, ind=^J, indn=\E[%p1%dS, -+ is1=\Ec\E[?7h, is2=\E[m\E[1;24r, kbs=^H, kcbt=\EO, -+ kclr=\E[2J, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, -+ kf7=\EOV, kf8=\EOW, khome=\E[H, kll=\E[24;1H, ll=\E[24H, -+ nel=^M^J, rc=\E8, rev=\E[7m, ri=\ET, rin=\E[%p1%dT, -+ rmacs=\E(B, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, -+ rs2=\Ec\E[?3l\E[2;0y, sc=\E7, sgr0=\E[m\E(B, smacs=\E(0, -+ smam=\E[?7h, smso=\E[5m, smul=\E[4m, tbc=\E[3g, -+ vpa=\E[%p1%dd, - --# Since <cuf1> is blank, when you want to erase something you --# are out of luck. You will have to do ^L's a lot to --# redraw the screen. h1000 is untested. It doesn't work in --# vi - this terminal is too dumb for even vi. (The code is --# there but it isn't debugged for this case.) --hz1000|hazeltine 1000, -- OTbs, -- cols#80, lines#12, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, home=^K, -- ind=^J, --# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981 --hz1420|hazeltine 1420, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=\E^\, cr=^M, cub1=^H, cud1=^J, cuf1=^P, -- cup=\E\021%p2%c%p1%{32}%+%c, cuu1=\E^L, dl1=\E^S, -- ed=\E^X, el=\E^O, ht=^N, il1=\E^Z, ind=^J, rmso=\E^Y, -- smso=\E^_, --# New "safe" cursor movement (11/87) from <cgs@umd5.umd.edu>. Prevents --# freakout with out-of-range args and tn3270. No hz since it needs to --# receive tildes. --hz1500|hazeltine 1500, -- OTbs, am, hz, -- cols#80, lines#24, -- bel=^G, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P, -- cup=~\021%p2%p2%?%{30}%>%t%{32}%+%;%{96}%+%c%p1%{96}%+%c, -- cuu1=~^L, dl1=~\023$<40>, ed=~\030$<10>, el=~^O, home=~^R, -- il1=~\032$<40>, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^P, -- kcuu1=~^L, khome=~^R, rmso=~^Y, smso=~^_, --# h1510 assumed to be in sane escape mode. Else use h1500. --# (h1510: early versions of this entry apparently had "<rmso=\E^_>, --# <smso=\E^Y>, but these caps were commented out in 8.3; also, --# removed incorrect and overridden ":do=^J:" -- esr) --hz1510|hazeltine 1510, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=\E^\, cr=^M, cub1=^H, cud1=\E^K, cuf1=^P, -- cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, ed=\E^X, -- el=\E^O, il1=\E^Z, ind=^J, --# Hazeltine 1520 --# The following switch settings are assumed for normal operation: --# FULL CR U/L_CASE ESCAPE --# FORMAT_OFF EOM_A_OFF EOM_B_OFF WRAPAROUND_ON --# Other switches may be set for operator convenience or communication --# requirements. --hz1520|Hazeltine 1520, -- OTbs, am, bw, msgr, -- cols#80, lines#24, -- bel=^G, bold=\E^_, clear=\E^\, cr=^M, cub1=^H, cud1=^J, -- cuf1=^P, cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, -- ed=\E^X, el=\E^O, home=\E^R, il1=\E^Z, ind=^J, kbs=^H, -- kclr=\E^\, kcub1=^H, kcud1=\E^K, kcuf1=^P, kcuu1=\E^L, -- kdl1=\E^S, ked=\E^X, kel=\E^O, khome=\E^R, kil1=\E^Z, -- rmso=\E^Y, rs1=\E$\E\005\E?\E\031, sgr0=\E^Y, smso=\E^_, --# This version works with the escape switch off --# (h1520: removed incorrect and overridden ":do=^J:" -- esr) --hz1520-noesc|hazeltine 1520, -- am, hz, -- cols#80, lines#24, -- bel=^G, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P, -- cup=~\021%p2%c%p1%c$<1>, cuu1=~^L, dl1=~^S, ed=~^X, el=~^O, -- home=~^R, il1=~^Z, ind=^J, rmso=~^Y, smso=~^_, --# Note: the h1552 appears to be the first Hazeltine terminal which --# is not braindamaged. It has tildes and backprimes and everything! --# Be sure the auto lf/cr switch is set to cr. --hz1552|hazeltine 1552, -- OTbs, -- cud1=^J, dl1=\EO, il1=\EE, kf1=\EP, kf2=\EQ, kf3=\ER, lf1=blue, -- lf2=red, lf3=green, use=vt52, --hz1552-rv|hazeltine 1552 reverse video, -- cud1=^J, rmso=\ET, smso=\ES, use=hz1552, --# Note: h2000 won't work well because of a clash between upper case and ~'s. --hz2000|hazeltine 2000, -- OTbs, OTnc, am, -- cols#74, lines#27, -- bel=^G, clear=~\034$<6>, cub1=^H, cud1=^J, -- cup=~\021%p2%c%p1%c, dl1=~\023$<6>, home=~^R, -- il1=~\032$<6>, ind=^J, pad=\177, --# Date: Fri Jul 23 10:27:53 1982. Some unknown person wrote: --# I tested this termcap entry for the Hazeltine Esprit with vi. It seems --# to work ok. There is one problem though if one types a lot of garbage --# characters very fast vi seems not able to keep up and hangs while trying --# to insert. That's in insert mode while trying to insert in the middle of --# a line. It might be because the Esprit doesn't have insert char and delete --# char as a built in function. Vi has to delete to end of line and then --# redraw the rest of the line. --esprit|Hazeltine Esprit I, -- OTbs, am, bw, -- cols#80, lines#24, -- bel=^G, cbt=\E^T, clear=\E^\, cr=^M, cub1=^H, cud1=\E^K, -- cuf1=^P, cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, -- ed=\E^W, el=\E^O, home=\E^R, il1=\E^Z, ind=^J, is2=\E?, kbs=^H, -- kcub1=^H, kcud1=\E^K, kcuf1=^P, kcuu1=\E^L, kf0=^B0^J, -- kf1=^B1^J, kf2=^B2^J, kf3=^B3^J, kf4=^B4^J, kf5=^B5^J, -- kf6=^B6^J, kf7=^B7^J, kf8=^B8^J, kf9=^B9^J, khome=\E^R, -- lf0=0, lf1=1, lf2=2, lf3=3, lf4=4, lf5=5, lf6=6, lf7=7, lf8=8, lf9=9, -- rmkx=\E>, rmso=\E^Y, smkx=\E<, smso=\E^_, --esprit-am|hazeltine esprit auto-margin, -- am, use=esprit, --# Hazeltine Modular-1 from Cliff Shackelton <ittvax!ittral!shackelt> via BRL --# Vi it seems always wants to send a control J for "do" and it turned out --# that the terminal would work somewhat if the auto LF/CR was turned off. --# (hmod1: removed :dn=~^K: -- esr) --hmod1|Hazeltine Modular 1, -- OTbs, am, hz, -- cols#80, lines#24, -- bel=^G, cbt=~^T, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P, -- cup=~\021%p2%c%p1%c, cuu1=~^L, dl1=~^S, home=~^R, il1=~^Z, -- ind=^J, kcub1=^H, kcud1=~^K, kcuf1=^P, kcuu1=~^L, khome=~^R, -- rc=~^Q, rmso=~^Y, sc=~^E, sgr0=~^Y, smso=~^_, -+# Terminfo entry for the AT&T 510 A Personal Terminal -+# Function keys 9 - 16 are available only after the -+# screen labeled (soft keys/action blocks) are labeled. Function key -+# 9 corresponds to the leftmost touch target on the screen, -+# function key 16 corresponds to the rightmost. - # --# Hazeltine Executive 80 Model 30 (1554?) --# from Will Martin <control@ALMSA-1.ARPA> via BRL --# Like VT100, except for different "am" behavior. --hazel|exec80|h80|he80|Hazeltine Executive 80, -- OTbs, OTpt, am, -- cols#80, it#8, lines#24, vt#3, -- OTnl=^J, bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>, -- clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub1=^H, cud1=^J, cuf1=\E[C$<2/>, -- cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>, -- ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, ht=^I, -- is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, kcud1=\EOB, -- kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, -- kf4=\EOS, rc=\E8, rev=\E[7m$<2/>, -- rf=/usr/share/tabset/vt100, ri=\EM$<5/>, -- rmkx=\E[?1l\E>, rmso=\E[m$<2/>, rmul=\E[m$<2/>, -- rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr0=\E[m$<2/>, smkx=\E[?1h\E=, smso=\E[7m$<2/>, -- smul=\E[4m$<2/>, -+# This entry is based on one done by Ernie Rice at Summit, NJ and -+# changed by Anne Gallup, Skokie, IL, ttrdc!anne -+att510a|bct510a|AT&T 510A Personal Terminal, -+ am, mir, msgr, xenl, xon, -+ cols#80, lh#2, lines#24, lw#7, nlab#8, -+ acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, -+ civis=\E[11;0|, clear=\E[H\E[J, cnorm=\E[11;3|, cr=^M, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[11;2|, dch=\E[%p1%dP, -+ dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, -+ el=\E[0K, el1=\E[1K, enacs=\E(B\E)1, ff=^L, home=\E[H, ht=^I, -+ hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, is1=\E(B\E)1\E[2l, -+ is3=\E[21;1|\212, kLFT=\E[u, kRIT=\E[v, kbs=^H, kcbt=\E[Z, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOm, -+ kf10=\EOd, kf11=\EOe, kf12=\EOf, kf13=\EOg, kf14=\EOh, -+ kf15=\EOi, kf16=\EOj, kf2=\EOV, kf3=\EOu, kf4=\ENj, kf5=\ENe, -+ kf6=\ENf, kf7=\ENh, kf8=\E[H, kf9=\EOc, kind=\E[S, kri=\E[T, -+ mc0=\E[0i, mc4=\E[?8i, mc5=\E[?4i, nel=\EE, -+ pln=\E[%p1%dp%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM, -+ rmacs=^O, rmkx=\E[19;0|, rmso=\E[m, rmul=\E[m, sc=\E7, -+ sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smkx=\E[19;1|, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, - --#### IBM -+# Terminfo entry for the AT&T 510 D Personal Terminal -+# Function keys 9 through 16 are accessed by bringing up the -+# system blocks. -+# Function key 9 corresponds to the leftmost touch target on the screen, -+# function key 16 corresponds to the rightmost. - # -+# There are problems with soft key labeling. These are due to -+# strangenesses in the native terminal that are impossible to -+# describe in a terminfo. -+att510d|bct510d|AT&T 510D Personal Terminal, -+ am, da, db, mir, msgr, xenl, xon, -+ cols#80, lh#2, lines#24, lm#48, lw#7, nlab#8, -+ acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, -+ clear=\E[H\E[J, cnorm=\E[11;3|, cr=^M, cub=\E[%p1%dD, -+ cub1=^H, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -+ cuu1=\E[A, cvvis=\E[11;2|, dch=\E[%p1%dP, dch1=\E[P, -+ dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K, -+ el1=\E[1K, enacs=\E(B\E)1, ff=^L, home=\E[H, -+ hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, -+ invis=\E[8m, is1=\E(B\E)1\E[5;0|, is3=\E[21;1|\212, -+ kLFT=\E[u, kRIT=\E[v, kbs=^H, kcbt=\E[Z, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOm, kf10=\EOd, -+ kf11=\EOe, kf12=\EOf, kf13=\EOg, kf14=\EOh, kf15=\EOi, -+ kf16=\EOj, kf2=\EOV, kf3=\EOu, kf4=\ENj, kf5=\ENe, kf6=\ENf, -+ kf7=\ENh, kf8=\E[H, kf9=\EOc, kind=\E[S, kri=\E[T, ll=\E#2, -+ mc0=\E[0i, mc4=\E[?8i, mc5=\E[?4i, mgc=\E\:, nel=\EE, -+ pln=\E[%p1%dp%p2%:-16s, rc=\E8, -+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, -+ rin=\E[%p1%dT, rmacs=^O, rmir=\E[4l, rmkx=\E[19;0|, -+ rmln=\E<, rmso=\E[m, rmul=\E[m, rmxon=\E[29;1|, -+ rs2=\E[5;0|, sc=\E7, -+ sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smgl=\E4, smgr=\E5, smir=\E[4h, -+ smkx=\E[19;1|, smln=\E?, smso=\E[7m, smul=\E[4m, -+ smxon=\E[29;0|, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd, - --ibm327x|line mode IBM 3270 style, -- gn, -- clear=^M^J, el=^M, home=^M, -- --ibm3101|i3101|IBM 3101-10, -- OTbs, am, xon, -- cols#80, lines#24, -- bel=^G, clear=\EK, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, -- el=\EI, home=\EH, hts=\E0, ind=^J, kcub1=\ED, kcud1=\EB, -- kcuf1=\EC, kcuu1=\EA, nel=^M^J, tbc=\EH, --ibm3151|IBM 3151 display, -- is2=\E S, rmacs=\E>B, rmcup=\E>B, rs2=\E S, s0ds=\E>B, -- sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E>B%;, -- sgr0=\E4@\E>B, smacs=\E>A, smcup=\E>B, use=ibm3162, --# From: Mark Easter <marke@fsi-ssd.csg.ssd.fsi.com> 29 Oct 1992 --# removed kend, knp, kpp -TD --ibm3161|ibm3163|wy60-316X|wyse60-316X|IBM 3161/3163 display, -- OTbs, am, mir, msgr, -- cols#80, it#8, lines#24, -- acsc=j\352k\353l\354m\355n\356q\361t\364u\365v\366w\367x\370, -- bel=^G, blink=\E4D, bold=\E4H, clear=\EH\EJ, cr=^M, cub1=\ED, -- cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=\EA, dch1=\EQ, dl1=\EO, ed=\EJ, el=\EI, home=\EH, ind=^J, -- invis=\E4P, kbs=^H, kcbt=\E2, kclr=\EL\r, kctab=\E1, -- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EQ, -- kdl1=\EO, ked=\EJ, kel=\EI, kf1=\Ea\r, kf10=\Ej\r, -- kf11=\Ek\r, kf12=\El\r, kf13=\E!a\r, kf14=\E!b\r, -- kf15=\E!c\r, kf16=\E!d\r, kf17=\E!e\r, kf18=\E!f\r, -- kf19=\E!g\r, kf2=\Eb\r, kf20=\E!h\r, kf21=\E!i\r, -- kf22=\E!j\r, kf23=\E!k\r, kf24=\E!l\r, kf3=\Ec\r, -- kf4=\Ed\r, kf5=\Ee\r, kf6=\Ef\r, kf7=\Eg\r, kf8=\Eh\r, -- kf9=\Ei\r, khome=\EH, khts=\E0, kich1=\EP \010, kil1=\EN, -- ktbc=\E 1, mc4=^P^T, mc5=^P^R, rev=\E4A, rmcup=\E>A, -- rmso=\E4@, rmul=\E4@, -- sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E<@%;, -- sgr0=\E4@\E<@, smcup=\E>A, smso=\E4A, smul=\E4B, -+# (att500: I merged this with the att513 entry, att500 just used att513 -- esr) -+att500|att513|AT&T 513 using page mode, -+ am, chts, mir, msgr, xenl, xon, -+ cols#80, lh#2, lines#24, lw#8, nlab#8, -+ acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z, -+ clear=\E[H\E[J, cnorm=\E[11;0|, cr=^M, -+ csr=%i\E[%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[11;1|, dch=\E[%p1%dP, dch1=\E[P$<1>, dim=\E[2m, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -+ enacs=\E(B\E)1, home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, -+ hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ indn=\E[%p1%dE, invis=\E[8m, -+ is1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l, -+ kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON, -+ kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK, -+ kFND=\EOX, kHLP=\EOM, kHOM=\ENM, kIC=\ENJ, kLFT=\ENK, -+ kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, kOPT=\EOR, kPRT=\EOZ, -+ kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, kRIT=\ENL, kRPL=\EOY, -+ kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, kbs=^H, kcan=\EOw, -+ kcbt=\E[Z, kclo=\EOV, kclr=\E[J, kcmd=\EOu, kcpy=\ENd, -+ kcrt=\EOn, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=\Eent, -+ kext=\EOk, kf1=\EOc, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, -+ kf6=\EOh, kf7=\EOi, kf8=\EOj, kfnd=\EOx, khlp=\EOm, -+ khome=\E[H, kich1=\ENj, kind=\E[S, kmov=\ENc, kmrk=\ENi, -+ kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, -+ kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, -+ kres=\EOq, krfr=\ENa, kri=\E[T, krpl=\EOy, krst=\EOB, -+ ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, ll=\E#2, -+ mc0=\E[?98l\E[0i, mc4=\E[?98l\E[?8i, mc5=\E[?98l\E[?4i, -+ nel=\EE, -+ pfkey=\E[%p1%d;%p2%l%d;3;0p F%p1%d %p2%s, -+ pfloc=\E[%p1%d;%p2%l%d;2;0p F%p1%d %p2%s, -+ pfx=\E[%p1%d;%p2%l%d;1;0p F%p1%d %p2%s, -+ pln=\E[%p1%dp%p2%:-16s, rc=\E8, -+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, -+ rin=\E[%p1%dF, rmacs=^O, rmir=\E[4l, -+ rmkx=\E[19;0|\E[21;1|\212, rmln=\E<, rmso=\E[m, -+ rmul=\E[m, -+ rs1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l\E[2;0|\E[6;1|\E[8;0|\E[19;0|\E[1{\E[?99l, -+ rs2=\E[5;0|, sc=\E7, -+ sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smir=\E[4h, -+ smkx=\E[19;1|\E[21;4|\Eent, smln=\E?, smso=\E[7m, -+ smul=\E[4m, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd, - --ibm3161-C|IBM 3161-C NLS terminal using cartridge, -- rmcup=\E>B, s0ds=\E>B, s1ds=\E>A, smcup=\E>B, use=ibm3161, --ibm3162|IBM 3162 display, -- blink=\E4$a, bold=\E4(a, il1=\EN, invis=\E40a, rev=\E4!a, -- rmso=\E4>b, rmul=\E4=b, sgr0=\E4@, smso=\E4!a, smul=\E4"a, -- use=ibm3161-C, -+# 01-07-88 -+# printer must be set to EMUL ANSI to accept ESC codes -+# <cuu1> stops at top margin -+# <is1> sets cpi 10,lpi 6,form 66,left 1,right 132,top 1,bottom 66,font -+# and alt font ascii,wrap on,tabs cleared -+# <is2> disables newline on LF,Emphasized off -+# The <u0> capability sets form length -+att5310|att5320|AT&T Model 53210 or 5320 matrix printer, -+ xhpa, xvpa, -+ bufsz#8192, cols#132, cps#120, it#8, lines#66, orc#10, -+ orhi#100, orl#12, orvi#72, -+ cpi=%?%p1%{10}%=%t\E[w%e%p1%{12}%=%t\E[2w%e%p1%{5}%=%t\E[5w%e%p1%{13}%=%p1%{14}%=%O%t\E[3w%e%p1%{16}%=%p1%{17}%=%O%t\E[4w%e%p1%{6}%=%t\E[6w%e%p1%{7}%=%t\E[7w%e%p1%{8}%=%t\E[8w%;, -+ cr=^M, -+ csnm=%?%p1%{0}%=%tusascii%e%p1%{1}%=%tenglish%e%p1%{2}%=%tfinnish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgermanic%e%p1%{7}%=%tfrench%e%p1%{8}%=%tcanadian_french%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tline%e%p1%{12}%=%tsecurity%e%p1%{13}%=%tebcdic%e%p1%{14}%=%tapl%e%p1%{15}%=%tmosaic%;, -+ cud=\E[%p1%de, cud1=^J, cuf=\E[%p1%da, cuf1=\s, cuu1=\EM, -+ ff=^L, hpa=\E[%p1%d`, ht=^I, is1=\Ec, is2=\E[20l\r, -+ lpi=%?%p1%{2}%=%t\E[4z%e%p1%{3}%=%t\E[5z%e%p1%{4}%=%t\E[6z%e%p1%{6}%=%t\E[z%e%p1%{8}%=%t\E[2z%e%p1%{12}%=%t\E[3z%;, -+ rshm=\E[m, -+ scs=%?%p1%{0}%=%t\E(B%e%p1%{1}%=%t\E(A%e%p1%{2}%=%t\E(C%e%p1%{3}%=%t\E(D%e%p1%{4}%=%t\E(E%e%p1%{5}%=%t\E(H%e%p1%{6}%=%t\E(K%e%p1%{7}%=%t\E(R%e%p1%{8}%=%t\E(Q%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(Z%e%p1%{11}%=%t\E(0%e%p1%{12}%=%t\E(1%e%p1%{13}%=%t\E(3%e%p1%{14}%=%t\E(8%e%p1%{15}%=%t\E(}%;, -+ smgbp=\E[;%p1%dr, smglp=\E[%{1}%p1%+%ds, -+ smgrp=\E[;%{1}%p1%+%ds, smgtp=\E[%p1%dr, sshm=\E[5m, -+ u0=\E[%p1%dt, vpa=\E[%p1%dd, - --# This really should not use setab/setaf, but it is clear that the --# original terminfo does not toggle red/blue colors as in setb/setf. --ibm3164|i3164|IBM 3164, -- msgr, -- colors#8, pairs#64, -- op=\E4 "@, rmcup=\E!9(N\E>B, s0ds=\E>B, s1ds=\E>A, -- setab=\E4 %p1%{64}%+%c, -- setaf=\E4%?%p1%t %p1%{32}%+%c%e!'%;@, -- smcup=\E!9/N\E>B, use=ibm3161, -+# Teletype 5620, firmware version 1.1 (8;7;3) or earlier from BRL -+# The following SET-UP modes are assumed for normal operation: -+# CR_DEF=CR NL_DEF=INDEX DUPLEX=FULL -+# Other SET-UP modes may be set for operator convenience or communication -+# requirements. This termcap description is for the Resident Terminal Mode. -+# No delays specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! -+# The BRL entry also said: UNSAFE :ll=\E[70H: -+att5620-1|tty5620-1|dmd1|Teletype 5620 with old ROMs, -+ am, xon, -+ cols#88, it#8, lines#70, vt#3, -+ bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, -+ dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, -+ home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, -+ il1=\E[L, ind=^J, indn=\E[%p1%dS, kbs=^H, kclr=\E[2J, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, -+ kll=\E[70;1H, nel=^M^J, rc=\E8, ri=\E[T, rin=\E[%p1%dT, -+ rs1=\Ec, sc=\E7, - --ibm5151|wy60-AT|wyse60-AT|IBM 5151 Monochrome display, -- am, bw, msgr, xon, -- cols#80, it#8, lines#25, -- acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, -- hpa=\E[%i%p1%dG, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -- indn=\E[%p1%dS, invis=\E[8m, is2=\Ec, kbs=^H, kcbt=\E[Z, -- kclr=\E[144q, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -- kcuu1=\E[A, kdch1=\E[P, ked=\E[148q, kel=\E[142q, -- kend=\E[146q, kf1=\E[001q, kf10=\E[010q, kf11=\E[011q, -- kf12=\E[012q, kf13=\E[013q, kf14=\E[014q, kf15=\E[015q, -- kf16=\E[016q, kf17=\E[017q, kf18=\E[018q, kf19=\E[019q, -- kf2=\E[002q, kf20=\E[020q, kf21=\E[021q, kf22=\E[022q, -- kf23=\E[023q, kf24=\E[024q, kf25=\E[025q, kf26=\E[026q, -- kf27=\E[027q, kf28=\E[028q, kf29=\E[029q, kf3=\E[003q, -- kf30=\E[030q, kf31=\E[031q, kf32=\E[032q, kf33=\E[033q, -- kf34=\E[034q, kf35=\E[035q, kf36=\E[036q, kf4=\E[004q, -- kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q, -- kf9=\E[009q, khome=\E[H, kich1=\E[139q, kil1=\E[140q, -- kind=\E[151q, knp=\E[154q, kpp=\E[150q, kri=\E[155q, -- krmir=\E[4l, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmir=\E[4l, -- rmso=\E[m, rmul=\E[m, rs2=\Ec, -- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m, -- sgr0=\E[0m, smir=\E[4h, smso=\E[7m, smul=\E[4m, -+# 5620 terminfo (2.0 or later ROMS with char attributes) -+# The following SET-UP modes are assumed for normal operation: -+# DUPLEX=FULL GEN_FLOW=ON NEWLINE=INDEX RETURN=CR -+# Other SET-UP modes may be set for operator convenience or communication -+# requirements. This termcap description is for Resident Terminal Mode. No -+# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! -+# assumptions: <ind> (scroll forward one line) is only done at screen bottom -+# Be aware that older versions of the dmd have a firmware bug that affects -+# parameter defaulting; for this terminal, the 0 in \E[0m is not optional. -+# <msgr> is from an otherwise inferior BRL for this terminal. That entry -+# also has <ll>=\E[70H commented out and marked unsafe. -+# For more, see the 5620 FAQ maintained by David Breneman <daveb@dgtl.com>. -+att5620|dmd|tty5620|ttydmd|5620|5620 terminal 88 columns, -+ OTbs, am, msgr, npc, xon, -+ cols#88, it#8, lines#70, -+ bel=^G, bold=\E[2m, clear=\E[H\E[J, cr=^M, cub1=^H, -+ cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, -+ dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich=\E[%p1%d@, -+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -+ indn=\E[%p1%dS, kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kll=\E[70;1H, nel=^J, -+ pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8, rev=\E[7m, ri=\E[T, -+ rin=\E[%p1%dT, rmso=\E[0m, rmul=\E[0m, rs1=\Ec, sc=\E7, -+ sgr0=\E[0m, smso=\E[7m, smul=\E[4m, -+att5620-24|tty5620-24|dmd-24|teletype dmd 5620 in a 24x80 layer, -+ lines#24, use=att5620, -+att5620-34|tty5620-34|dmd-34|teletype dmd 5620 in a 34x80 layer, -+ lines#34, use=att5620, -+# 5620 layer running the "S" system's downloaded graphics handler: -+att5620-s|tty5620-s|layer|vitty|5620 S layer, -+ OTbs, OTpt, am, -+ cols#80, it#8, lines#72, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, -+ cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=^K, dl1=\ED, -+ el=\EK, flash=\E^G, ht=^I, il1=\EI, ind=^J, kbs=^H, kclr=\E[2J, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, -+ kll=\E[70;1H, - --ibmaed|IBM Experimental display, -- OTbs, am, eo, msgr, -- cols#80, it#8, lines#52, -- clear=\EH\EK, cub1=^H, cud1=\EB, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EQ, -- dl1=\EO, ed=\EJ, el=\EI, flash=\EG, home=\EH, ht=^I, ich1=\EP, -- il1=\EN, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -- rmso=\E0, sgr0=\E0, smso=\E0, --ibm-apl|apl|IBM apl terminal simulator, -- lines#25, use=dm1520, --# (ibmmono: this had an unknown `sb' boolean, I changed it to `bs'. --# Also it had ":I0=f10:" which pretty obviously should be "l0=f10" -- esr) --ibmmono|IBM workstation monochrome, -- eslok, hs, -- bold=\EZ, dl1=\EM, dsl=\Ej\EY8 \EI\Ek, fsl=\Ek, il1=\EL, -- invis=\EF\Ef0;\Eb0;, kbs=^H, kf0=\E<, kf1=\ES, kf2=\ET, -- kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\EY, -- khome=\EH, kich1=\0, kind=\EE, knp=\EE, kpp=\Eg, kri=\EG, -- lf0=f10, rev=\Ep, ri=\EA, rmso=\Ez, rmul=\Ew, -- sgr0=\Ew\Eq\Ez\EB, smso=\EZ, smul=\EW, tsl=\Ej\EY8%+ \Eo, -- use=ibm3101, --ibmega|IBM Enhanced Color Display, -- cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, -- nel=^M^J, use=ibmmono, --# This color scheme is assumed in some recent IBM terminal descriptions --# (green on black, emulated on a 16-color terminal). --ibm+color|IBM color definitions, -- colors#8, ncv#3, pairs#64, -- op=\E[32m\E[40m, -- setb=\E[%?%p1%{0}%=%t40m%e%p1%{1}%=%t41m%e%p1%{2}%=%t42m%e%p1%{3}%=%t43m%e%p1%{4}%=%t44m%e%p1%{5}%=%t45m%e%p1%{6}%=%t46m%e%p1%{7}%=%t107m%;, -- setf=\E[%?%p1%{0}%=%t30m%e%p1%{1}%=%t31m%e%p1%{2}%=%t32m%e%p1%{3}%=%t33m%e%p1%{4}%=%t34m%e%p1%{5}%=%t35m%e%p1%{6}%=%t36m%e%p1%{7}%=%t97m%;, --ibm+16color|IBM aixterm color definitions, -- colors#16, pairs#256, -- setab=\E[%?%p1%{8}%<%t%p1%{40}%+%e%p1%{92}%+%;%dm, -- setaf=\E[%?%p1%{8}%<%t%p1%{30}%+%e%p1%{82}%+%;%dm, -- setb=%p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m, -- setf=%p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m, --ibm5154|IBM 5154 Color display, -- colors#8, ncv@, pairs#64, -- bold@, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=ibm5151, -- use=ibm+color, --ibmega-c|ibm5154-c|IBM Enhanced Color Display with standout and underline, -- rmso=\EB, rmul=\EB, smso=\EF\Ef3;, smul=\EF\Ef2;, -- use=ibmmono, --ibmvga-c|IBM VGA display color termcap, -- cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, -- nel=^M^J, use=ibmega-c, --ibmvga|IBM VGA display, -- cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, -- nel=^M^J, use=ibmega, --# ibmapa* and ibmmono entries come from ACIS 4.3 distribution --rtpc|ibmapa16|IBM 6155 Extended Monochrome Graphics Display, -- lines#32, -- dsl=\Ej\EY@ \EI\Ek, tsl=\Ej\EY@%+ \Eo, use=ibmmono, --ibm6155|IBM 6155 Black & White display, -- blink@, bold@, use=ibm5151, --# Advanced Monochrome (6153) and Color (6154) Graphics Display: --ibmapa8c|ibmapa8|IBM 6154 Advanced Graphics Display, -- lines#31, -- dsl=\Ej\EY? \EI\Ek, tsl=\Ej\EY?%+ \Eo, use=ibmmono, --ibmapa8c-c|ibm6154-c|IBM 6154 Advanced Color Graphics Display, -- lines#31, -- dim=\EF\Ef7;, dsl=\Ej\EY? \EI\Ek, tsl=\Ej\EY?%+ \Eo, -- use=ibmega-c, --ibm6154|IBM 6154 Color displays, -- blink@, bold=\E[12m, s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, -- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;12%;m, -- sgr0=\E[0;10m, use=ibm5154, --ibm6153|IBM 6153 Black & White display, -- blink@, bold=\E[12m, s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, -- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;12%;m, -- sgr0=\E[0;10m, use=ibm5151, --ibm6153-90|IBM 6153 Black & White display, -- cols#90, lines#36, -- blink@, bold@, use=ibm5151, --ibm6153-40|IBM 6153 Black & White display, -- cols#40, lines#12, use=ibm6153-90, --ibm8512|ibm8513|IBM color VGA Terminal, -- am, mir, msgr, -- cols#80, it#8, lines#25, -- acsc=jjkkllmmnnqqttuuvvwwxx, blink=\E[5m, bold=\E[1m, -- clear=\E[H\E[J, cub1=\E[D, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, -- ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, il=\E[%p1%dL, -- il1=\E[L, is2=\Eb\E[m\017\E[?7h, kcud1=\E[B, kcuu1=\E[A, -- kf0=\E[010q, kf1=\E[001q, kf2=\E[002q, kf3=\E[003q, -- kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, -- kf8=\E[008q, kf9=\E[009q, khome=\E[H, rc=\E[u, rev=\E[7m, -- rmacs=^O, rmam=\E[?7l, rmcup=\E[20h, rmdc=\E[4l, -- rmir=\E[4l, rmso=\E[m, rmul=\E[m, -- rs1=\Eb\E[m\017\E[?7h\E[H\E[J, sc=\E[s, sgr0=\E[m, -- smacs=^N, smam=\E[?7h, smcup=\E[20;4l\E[?7h\Eb, -- smdc=\E[4h, smir=\E[4h, smso=\E[7m, smul=\E[4m, -- use=ibm8503, --hft-c|HFT with Color, -- colors#8, pairs#64, -- acsc=jjkkllmmnnqqttuuvvwwxx, s0ds=\E(B, s1ds=\E(0, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0m\E(B, -- use=ibm5151, use=ibm+color, --hft-c-old|HFT with Color PC850, -- colors#8, pairs#64, -- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=ibm5151, -- use=ibm+color, --hft-old|AIWS High Function Terminal, -- am, xon, -- cols#80, lines#25, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -- cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu1=\E[A, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, -- ht=^I, ich1=\E[@, il1=\E[L, ind=^J, invis=\E[8m, kbs=^H, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kf1=\E[001q, kf2=\E[002q, kf3=\E[003q, kf4=\E[004q, -- kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q, -- kf9=\E[009q, khome=\E[H, knp=\E[153q, kpp=\E[159q, -- ktbc=\E[010q, rev=\E[7m, rmir=\E6, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, smir=\E6, smso=\E[7m, smul=\E[4m, use=ibm+color, --ibm-system1|system1|ibm system/1 computer, -- am, xt, -- cols#80, lines#24, -- bel=^G, clear=^Z, cub1=^H, cuf1=^\, -- cup=\005%p1%{32}%+%c%p2%{32}%+%c, cuu1=^^, home=^K, -- ind=^J, --# lft-pc850 : IBM Low Function Terminal Device --# lft "supports" underline, bold, and blink in the sense that the lft code --# sets all the right bits. HOWEVER, depending upon the adapter, these --# attributes may or may not be supported by the device driver. --lft|lft-pc850|LFT-PC850|IBM LFT PC850 Device, -- am, bw, msgr, xon, -- cols#80, it#8, lines#25, -- acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -- cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -- dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[2J, el=\E[0K, -- home=\E[H, hpa=\E[%i%p1%dG, ich=\E[%p1%d@, il=\E[%p1%dL, -- il1=\E[L, ind=\ED, indn=\E[%p1%dS, invis=\E[8m, is2=\Ec, -- kbs=^H, kcbt=\E[Z, kclr=\E[144q, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, ked=\E[148q, -- kel=\E[142q, kend=\E[146q, kf1=\E[001q, kf10=\E[010q, -- kf11=\E[011q, kf12=\E[012q, kf13=\E[013q, kf14=\E[014q, -- kf15=\E[015q, kf16=\E[016q, kf17=\E[017q, kf18=\E[018q, -- kf19=\E[019q, kf2=\E[002q, kf20=\E[020q, kf21=\E[021q, -- kf22=\E[022q, kf23=\E[023q, kf24=\E[024q, kf25=\E[025q, -- kf26=\E[026q, kf27=\E[027q, kf28=\E[028q, kf29=\E[029q, -- kf3=\E[003q, kf30=\E[030q, kf31=\E[031q, kf32=\E[032q, -- kf33=\E[033q, kf34=\E[034q, kf35=\E[035q, kf36=\E[036q, -- kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, -- kf8=\E[008q, kf9=\E[009q, khome=\E[H, kich1=\E[139q, -- kil1=\E[140q, kind=\E[151q, knp=\E[154q, kpp=\E[150q, -- kri=\E[155q, krmir=\E[4l, rev=\E[7m, ri=\EL, rin=\E[%p1%dT, -- rmacs=\E(B, rmir=\E[4l, rmso=\E[0m, rmul=\E[0m, rs2=\Ec, -- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;, -- sgr0=\E[0m, smacs=\E(0, smir=\E[4h, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, --ibm5081|hft|IBM Megapel Color display, -- acsc=jjkkllmmnnqqttuuvvwwxx, blink@, bold@, s0ds=\E(B, -- s1ds=\E(0, sgr0=\E[0m\E(B, use=ibm5154, --ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 Megapel enhanced color display, -- eslok, hs, -- lines#33, -- dsl=\Ej\EYA \EI\Ek, fsl=\Ek, tsl=\Ej\EYA%+ \Eo, -- use=ibmega-c, --ibm8503|ibm8507|ibm8604|IBM 8503 B & W VGA display, -- use=hft-c, --ibm8514|IBM 8514/a color VGA display, -- eslok, hs, -- dsl=\Ej\EYI \EI\Ek, fsl=\Ek, tsl=\Ej\EYI%+ \Eo, use=hft, --ibm8514-c|IBM 8514 color display with standout and underline, -- eslok, hs, -- lines#41, -- cr=^M, cud1=^J, dsl=\Ej\EYI \EI\Ek, fsl=\Ek, ht=^I, ind=^J, -- kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, tsl=\Ej\EYI%+ \Eo, -- use=ibmega-c, -- --# --# AIX entries. IBM ships these with AIX 3.2.5. --# -- added rc, sc based on manpage -TD --# Note that we could use ibm+16color, but that is not how IBM defines this one. --aixterm|IBM Aixterm Terminal Emulator, -- eslok, hs, -- acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E, -- fsl=\E[?F, rc=\E8, ri@, s0ds=\E(B, s1ds=\E(0, sc=\E7, -- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;, -- sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6154, --aixterm-m|IBM AIXterm Monochrome Terminal Emulator, -- eslok, hs, -- acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E, -- fsl=\E[?F, ri@, s0ds=\E(B, s1ds=\E(0, -- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, -- sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6153, --aixterm-m-old|old IBM AIXterm Monochrome Terminal Emulator, -- eslok, hs, -- bold=\E[1m, dsl=\E[?E, fsl=\E[?F, ri@, -- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, -- tsl=\E[?%p1%dT, use=ibm6153, --jaixterm|IBM Kanji Aixterm Terminal Eemulator, -- acsc@, use=aixterm, --jaixterm-m|IBM Kanji AIXterm Monochrome Terminal Emulator, -- acsc@, use=aixterm-m, -- --# This flavor is adapted from xterm, in turn from aixterm documentation -TD --aixterm-16color|IBM Aixterm Terminal Emulator with 16 colors, -- use=ibm+16color, use=aixterm, -- --#### Infoton/General Terminal Corp. -+# Entries for <kf15> thru <kf28> refer to the shifted system pf keys. - # -+# Entries for <kf29> thru <kf46> refer to the alternate keypad mode -+# keys: = * / + 7 8 9 - 4 5 6 , 1 2 3 0 . ENTER -+att605|AT&T 605 80 column 102key keyboard, -+ am, eo, xon, -+ cols#80, lines#24, lw#8, nlab#8, wsl#80, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -+ cr=^M, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch=\E[%p1%dP, -+ dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K, el1=\E[1K, fsl=\E8, ht=^I, ich=\E[%p1%d@, ich1=\E[@, -+ il1=\E[L, ind=^J, invis=\E[8m, -+ is1=\E[8;0|\E[?\E[13;20l\E[?\E[12h, is2=\E[m\017, -+ kLFT=\E[ A, kRIT=\E[ @, kbs=^H, kcbt=\E[Z, kclr=\E[2J, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, -+ kdl1=\E[M, kend=\E[24;1H, kf1=\EOc, kf10=\ENp, kf11=\ENq, -+ kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD, -+ kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH, -+ kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ, -+ kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe, -+ kf30=\EOQ, kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx, -+ kf35=\EOy, kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv, -+ kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs, -+ kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh, -+ kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, kich1=\E[@, -+ kil1=\E[L, kind=\E[S, knp=\E[U, kpp=\E[V, ll=\E[24H, -+ mc4=\E[?4i, mc5=\E[?5i, nel=\EE, -+ pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, -+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m, -+ rmacs=^O, rmir=\E[4l, rmln=\E[2p, rmso=\E[m, rmul=\E[m, -+ rs2=\Ec\E[?3l, sc=\E7, sgr0=\E[m\017, smacs=\E)0\016, -+ smir=\E[4h, smln=\E[p, smso=\E[7m, smul=\E[4m, -+ tsl=\E7\E[25;%i%p1%dx, -+att605-pc|ATT 605 in pc term mode, -+ acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -+ cbt=\E[Z, cub1=\E[D, cud1=\E[B, cuf1=\E[C, cuu1=\E[A, -+ dch1=\E[P, dl1=\E[M, ich1=\E[@, il1=\E[L, kcbt=\E[Z, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, -+ kdl1=\E[M, kend=\E[F, kf1=\E[M, kf10=\E[V, kf2=\E[N, -+ kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, -+ kf9=\E[U, khome=\E[H, kich1=\E[@, knp=\E[G, kpp=\E[I, -+ rmsc=400\E[50;0|, smsc=250\E[?11l\E[50;1|, xoffc=g, -+ xonc=e, use=att605, -+att605-w|AT&T 605-w 132 column 102 key keyboard, -+ cols#132, wsl#132, -+ is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0, -+ use=att605, -+# (att610: I added <rmam>/<smam> based on the init string. I also -+# added <indn> and <rin> because the BSD file says the att615s have them, -+# and the 615 is like a 610 with a big keyboard, and most of their other -+# smart terminals support the same sequence -- esr) -+att610|AT&T 610; 80 column; 98key keyboard, -+ am, eslok, hs, mir, msgr, xenl, xon, -+ cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -+ flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, ht=^I, -+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, -+ indn=\E[%p1%dS, invis=\E[8m, -+ is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0, -+ is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ @, kRIT=\E[ A, kbs=^H, -+ kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr, -+ kf13=\ENs, kf14=\ENt, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, -+ kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, -+ kind=\E[S, kri=\E[T, ll=\E[24H, mc4=\E[?4i, mc5=\E[?5i, -+ nel=\EE, -+ pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, -+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m, -+ ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, -+ rmln=\E[2p, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -+ smln=\E[p, smso=\E[7m, smul=\E[4m, tsl=\E7\E[25;%i%p1%dx, -+att610-w|AT&T 610; 132 column; 98key keyboard, -+ cols#132, wsl#132, -+ is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, -+ use=att610, - --# gt100 sounds like something DEC would come out with. Let's hope they don't. --i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100), -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\Ef%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA, dl1=\EM, -- ed=\EJ, el=\EK, flash=\Eb$<200/>\Ea, home=\EH, il1=\EL, -- ind=^J, rmso=\Ea, smso=\Eb, --i400|infoton 400, -- OTbs, am, -- cols#80, lines#25, -- bel=^G, clear=\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%3d;%p2%3dH, cuu1=\E[A, -- dch1=\E[4h\E[2Q\E[P\E[4l\E[0Q, dl1=\E[M, el=\E[N, -- il1=\E[L, ind=^J, rmir=\E[4l\E[0Q, smir=\E[4h\E[2Q, --# (addrinfo: removed obsolete ":bc=^Z:" -- esr) --addrinfo, -- am, -- cols#80, lines#24, -- bel=^G, clear=^L, cr=^M, cub1=^Z, cud1=^J, cuf1=^Y, -- cup=\037%p1%c%p2%c, cuu1=^\, ed=^K, home=^H, ind=^J, ll=^H^\, --# (infoton: used to have the no-ops <lh#0>, <lw#0>, <nlab#0> -- esr) --infoton, -- am, -- cols#80, lines#24, -- bel=^G, clear=^L, cr=^M, cub1=^Z, cud1=^J, cuf1=^Y, cuu1=^\, -- ed=^K, ind=^J, ll=^H^\, -- --# The ICL6402 was actually the Kokusai Display System 6402. --# The 6404 was the KDS7372 (color version of the 6402). --# --# ICL6404 control codes follow: --# --#code function --#~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --#ctrl-A set SOM position at cursor position --#ctrl-G Bell --#ctrl-H Backspace --#ctrl-I Horiz tab --#ctrl-J Linefeed --#ctrl-K Cursor up --#ctrl-L Cursor right --#ctrl-M Carriage return --#ctrl-N Disable xon/xoff to host --#ctrl-O Enable xon/xoff to host --#ctrl-R Enable bidirectional mode --#ctrl-T Disable bidirectional mode --#ctrl-V Cursor down --#ctrl-Z Clear unprotected data to insert char --#ctrl-^ Cursor home --#ctrl-_ Newline -+att610-103k|AT&T 610; 80 column; 103key keyboard, -+ kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON, -+ kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK, -+ kFND=\EOX, kHLP=\EOM, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, -+ kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, -+ kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, -+ kcan=\EOw, kclo=\EOV, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn, -+ kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=^M, -+ kext=\EOk, kf10@, kf11@, kf12@, kf13@, kf14@, kf9@, kfnd=\EOx, -+ khlp=\EOm, kich1=\ENj, kmov=\ENc, kmrk=\ENi, kmsg=\EOl, -+ knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, kpp=\E[V, -+ kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, kres=\EOq, -+ krfr=\ENa, krmir=\ENj, krpl=\EOy, krst=\EOB, ksav=\EOo, -+ kslt=\ENI, kspd=\EOp, kund=\EOs, use=att610, -+att610-103k-w|AT&T 610; 132 column; 103key keyboard, -+ cols#132, wsl#132, -+ is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, -+ use=att610-103k, -+att615|AT&T 615; 80 column; 98key keyboard, -+ kLFT=\E[ A, kRIT=\E[ @, kf15=\EOC, kf16=\EOD, kf17=\EOE, -+ kf18=\EOF, kf19=\EOG, kf20=\EOH, kf21=\EOI, kf22=\EOJ, -+ kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, kf27=\ENS, -+ kf28=\ENT, kf29=\EOP, kf30=\EOQ, kf31=\EOR, kf32=\EOS, -+ kf33=\EOw, kf34=\EOx, kf35=\EOy, kf36=\EOm, kf37=\EOt, -+ kf38=\EOu, kf39=\EOv, kf40=\EOl, kf41=\EOq, kf42=\EOr, -+ kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, use=att610, -+att615-w|AT&T 615; 132 column; 98key keyboard, -+ kLFT=\E[ A, kRIT=\E[ @, kf15=\EOC, kf16=\EOD, kf17=\EOE, -+ kf18=\EOF, kf19=\EOG, kf20=\EOH, kf21=\EOI, kf22=\EOJ, -+ kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, kf27=\ENS, -+ kf28=\ENT, kf29=\EOP, kf30=\EOQ, kf31=\EOR, kf32=\EOS, -+ kf33=\EOw, kf34=\EOx, kf35=\EOy, kf36=\EOm, kf37=\EOt, -+ kf38=\EOu, kf39=\EOv, kf40=\EOl, kf41=\EOq, kf42=\EOr, -+ kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, use=att610-w, -+att615-103k|AT&T 615; 80 column; 103key keyboard, -+ kLFT=\E[ A, kRIT=\E[ @, use=att610-103k, -+att615-103k-w|AT&T 615; 132 column; 103key keyboard, -+ kLFT=\E[ A, kRIT=\E[ @, use=att610-103k-w, -+# (att620: I added <rmam>/<smam> based on the init string and -+# <rin>/<indn> from a BSD termcap -- esr) -+att620|AT&T 620; 80 column; 98key keyboard, -+ am, eslok, hs, mir, msgr, xenl, xon, -+ cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -+ flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, ht=^I, -+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, -+ indn=\E[%p1%dS, invis=\E[8m, -+ is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h, -+ is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ A, kRIT=\E[ @, kbs=^H, -+ kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr, -+ kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD, kf17=\EOE, -+ kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH, kf21=\EOI, -+ kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, -+ kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe, kf30=\EOQ, -+ kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx, kf35=\EOy, -+ kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv, kf4=\EOf, -+ kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs, kf44=\EOp, -+ kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, -+ kf9=\ENo, khome=\E[H, kind=\E[S, kri=\E[T, ll=\E[24H, -+ mc4=\E[?4i, mc5=\E[?5i, nel=\EE, -+ pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s, -+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m, -+ ri=\EM, rin=\E[%p1%dT, rmacs=\E(B\017, rmam=\E[?7l, -+ rmir=\E[4l, rmln=\E[2p, rmso=\E[m, rmul=\E[m, -+ rs2=\Ec\E[?3l, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\E)0\016%e\E(B\017%;, -+ sgr0=\E[m\E(B\017, smacs=\E)0\016, smam=\E[?7h, -+ smir=\E[4h, smln=\E[p, smso=\E[7m, smul=\E[4m, -+ tsl=\E7\E[25;%i%p1%dx, -+att620-w|AT&T 620; 132 column; 98key keyboard, -+ cols#132, wsl#132, -+ is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, -+ use=att620, -+att620-103k|AT&T 620; 80 column; 103key keyboard, -+ kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON, -+ kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK, -+ kFND=\EOX, kHLP=\EOM, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, -+ kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, -+ kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, -+ kcan=\EOw, kclo=\EOV, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn, -+ kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=^M, -+ kext=\EOk, kf10@, kf11@, kf12@, kf13@, kf14@, kf15@, kf16@, kf17@, -+ kf18@, kf19@, kf20@, kf21@, kf22@, kf23@, kf24@, kf25@, kf26@, kf27@, -+ kf28@, kf29@, kf30@, kf31@, kf32@, kf33@, kf34@, kf35@, kf36@, kf37@, -+ kf38@, kf39@, kf40@, kf41@, kf42@, kf43@, kf44@, kf45@, kf46@, kf9@, -+ kfnd=\EOx, khlp=\EOm, kich1=\ENj, kmov=\ENc, kmrk=\ENi, -+ kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, -+ kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, -+ kres=\EOq, krfr=\ENa, krmir=\ENj, krpl=\EOy, krst=\EOB, -+ ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, use=att620, -+ -+att620-103k-w|AT&T 620; 132 column; 103key keyboard, -+ cols#132, wsl#132, -+ is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h, -+ use=att620-103k, -+ -+# AT&T (formerly Teletype) 630 Multi-Tasking Graphics terminal -+# The following SETUP modes are assumed for normal operation: -+# Local_Echo=Off Gen_Flow=On Return=CR Received_Newline=LF -+# Font_Size=Large Non-Layers_Window_Cols=80 -+# Non-Layers_Window_Rows=60 -+# Other SETUP modes may be set for operator convenience or communication -+# requirements. Some capabilities assume a printer attached to the Aux EIA -+# port. This termcap description is for the Fixed Non-Layers Window. No -+# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! -+# (att630: added <ich1>, <blink> and <dim> from a BSD termcap file -- esr) -+att630|AT&T 630 windowing terminal, -+ OTbs, am, da, db, mir, msgr, npc, xon, -+ cols#80, it#8, lines#60, lm#0, -+ bel=^G, blink=\E[5m, cbt=\E[Z, clear=\E[H\E[J, cr=^M, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -+ dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, -+ el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@, -+ il=\E[%p1%dL, il1=\E[L, ind=\ED, indn=\E[%p1%dS, is2=\E[m, -+ kbs=^H, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, kent=^M, -+ kf10=\ENp, kf11=\ENq, kf12=\ENr, kf13=\ENs, kf14=\ENt, -+ kf15=\ENu, kf16=\ENv, kf17=\ENw, kf18=\ENx, kf19=\ENy, -+ kf20=\ENz, kf21=\EN{, kf22=\EN|, kf23=\EN}, kf24=\EN~, -+ kf9=\ENo, khome=\E[H, kich1=\E[@, kil1=\E[L, mc4=\E[?4i, -+ mc5=\E[?5i, nel=^M^J, pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8, -+ rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmir=\E[4l, rmso=\E[m, -+ rmul=\E[m, rs2=\Ec, sc=\E7, -+ sgr=\E[0%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%p4%|%t;7%;m, -+ sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, -+att630-24|5630-24|5630DMD-24|630MTG-24|AT&T 630 windowing terminal 24 lines, -+ lines#24, use=att630, -+ -+# This is the att700 entry for 700 native emulation of the AT&T 700 -+# terminal. Comments are relative to changes from the 605V2 entry and -+# att730 on which the entry is based. Comments show the terminfo -+# capability name, termcap name, and description. - # --#ESC lead-in char for multiple character command -+# Here is what's going onm in the init string: -+# ESC [ 50;4| set 700 native mode (really is 605) -+# x ESC [ 56;ps| set lines to 24: ps=0; 40: ps=1 (plus status line) -+# ESC [ 53;0| set GenFlow to Xon/Xoff -+# ESC [ 8 ;0| set CR on NL -+# x ESC [ ? 3 l/h set workspace: 80 col(l); 132 col(h) -+# ESC [ ? 4 l jump scroll -+# ESC [ ? 5 l/h video: normal (l); reverse (h) -+# ESC [ ?13 l Labels on -+# ESC [ ?15 l parity check = no -+# ESC [ 13 l monitor mode off -+# ESC [ 20 l LF on NL (not CRLF on NL) -+# ESC [ ? 7 h autowrap on -+# ESC [ 12 h local echo off -+# ESC ( B GO = ASCII -+# ESC ) 0 G1 = Special Char & Line Drawing -+# ESC [ ? 31 l Set 7 bit controls - # --#ESC space R execute power on sequence --#ESC ! p1 p2 define scroll region: --# p1 = scroll top line: 20h - 37h --# p1 = scroll bottom line: 20h - 37h --#ESC " unlock keyboard --#ESC # lock keyboard --#ESC $ Semi-graphics mode on --#ESC % Semi-graphics mode off --#ESC & protect mode on --#ESC ' protect mode off --#ESC ( write protect mode off (full intensity) --#ESC ) write protect mode on (half intensity) -+# Note: Most terminals, especially the 600 family use Reverse Video for -+# standout mode. DEC also uses reverse video. The VT100 uses bold in addition -+# Assume we should stay with reverse video for 70.. However, the 605V2 exits -+# standout mode with \E[m (all normal attributes). The 730 entry simply -+# exits reverse video which would leave other current attributes intact. It -+# was assumed the 730 entry to be more correct so rmso has changed. The -+# 605V2 has no sequences to turn individual attributes off, thus its setting -+# and the rmso/smso settings from the 730. - # --#ESC * clear screen --#ESC + clear unprotected data to insert char --#ESC , clear unprotected data to half intensity spaces --#ESC - p1 p2 p3 p4 address cursor to page, row, column: --# p1 = page number 0 - 3 --# p2 = row 20h - 7fh --# p3 = column (lo) 20h - 7fh --# p4 = column (hi) 20h - 21h (only 132 col) --#ESC . p1 set cursor style: --# p1 = 0 invisible cursor --# p1 = 1 block blinking cursor --# p1 = 2 block steady cursor --# p1 = 3 underline blinking cursor --# p1 = 4 underline steady cursor --#ESC / transmit cursor location (page, row, column) --#ESC 0 p1 p2 p3 p4 program edit key: --# p1 = edit key code: '@'-'S', '`'-'s' --# p2 p3 p4 = program data (3 bytes) -+# Note: For the same reason as above in rmso I changed exit under-score mode -+# to specifically turn off underscore, rather than return to all normal -+# attributes - # --#ESC 1 set tab --#ESC 2 clear tab at cursor --#ESC 3 clear all tabs --#ESC 4 send unprotect line to cursor --#ESC 5 send unprotect page to cursor --#ESC 6 send line to cursor --#ESC 7 send page to cursor --#ESC 8 n set scroll mode: --# n = 0 set jump scroll --# n = 1 set smooth scroll --#ESC 9 n control display: --# n = 0 display off --# n = 1 display on --#ESC : clear unprotected data to null --#ESC ; clear unprotected data to insert char -+# Note: The following pkey_xmit is taken from the 605V2 which contained the -+# capability as pfxl. It was changed here to pfx since pfxl -+# will only compile successfully with Unix 4.0 tic. Also note that pfx only -+# allows strings to be parameters and label values must be programmed as -+# constant strings. Supposedly the pfxl of Version 4.0 allows both labels -+# and strings to be parameters. The 605V2 pfx entry should be examined later -+# in this regard. For reference the 730 pfxl entry is shown here for comparison -+# 730 pfx entry: -+# pfxl=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq\s\s\s -+# SYS\s\s\s\s\sF%p1%:-2d\s\s%e;0;3q%;%p2%s, - # --#ESC < keyclick on --#ESC = p1 p2 address cursor to row, column --# p1 = row 20h - 7fh --# p2 = column (lo) 20h - 7fh --# p3 = column (hi) 20h - 21h (only 132 col) --#ESC > keyclick off --#ESC ? transmit cursor location (row, column) -+# (for 4.0 tic) -+# pfxl=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, - # --#ESC @ copy print mode on --#ESC A copy print mode off --#ESC B block mode on --#ESC C block mode off (conversation mode) --#ESC D F set full duplex --#ESC D H set half duplex --#ESC E line insert --#ESC F p1 p2 set page colour (p1 = f/grnd, p2 = b/grnd) --# 0 = black, 1 = red, 2 = green, 3 = yellow --# 4 = blue, 5 = magenta, 6 = cyan, 7 = white --#ESC G n set serial field attribute (n = 30h - 3Fh) --#ESC H n full graphics mode: --# n = 0 exit full graphics mode --# n = 1 enter full graphics mode --#ESC I back tab --#ESC J back page --#ESC K forward page --# --#ESC L unformatted page print --#ESC M L move window left (132 col mode only) --#ESC M R move window right (132 col mode only) --#ESC N set page edit (clear line edit) --#ESC O set line edit (clear page edit) --#ESC P formatted page print --#ESC Q character insert --#ESC R line delete --#ESC S send message unprotected only --#ESC T erase line to insert char --#ESC U set monitor mode (see ESC X, ESC u) -+# (for <4.0 tic) -+# pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, - # --#ESC V n select video attribute mode: --# n = 0 serial field attribute mode --# n = 1 parallel character attribute mode --#ESC V 2 n define line attribute: --# n = 0 single width single height --# n = 1 single width double height --# n = 2 double width single height --# n = 3 double width double height --#ESC V 3 n select character font: --# n = 0 system font --# n = 1 user defined font --#ESC V 4 n select screen mode: --# n = 0 page screen mode --# n = 1 virtual screen mode --#ESC V 5 n control mouse mode: --# n = 0 disable mouse --# n = 1 enable sample mode --# n = 2 send mouse information --# n = 3 enable request mode --#ESC W character delete --#ESC X clear monitor mode (see ESC U, ESC u) --#ESC Y erase page to insert char -+# From the AT&T 705 Multi-tasking terminal user's guide Page 8-8,8-9 - # --#ESC Z n send user/status line: --# n = 0 send user line --# n = 1 send status line --# n = 2 send terminal ID --#ESC [ p1 p2 p3 set character attribute (parallel char mode): --# p1: 0 = normal --# 1 = blank --# 2 = blink --# 3 = blink blank (= blank) --# 4 = reverse --# 5 = reverse blank --# 6 = reverse blink --# 7 = reverse blink blank (= reverse blank) --# 8 = underline --# 9 = underline blank --# : = underline blink --# ; = underline blink blank --# < = reverse underline --# = = reverse underline blank --# > = reverse underline blink --# ? = reverse underline blink blank --# p2, p3: f/grnd, b/grnd colour --# (see ESC F for colours) --# use ZZ for mono, eg. --# ESC [ 0 Z Z for normal --# ESC [ 4 Z Z for inverse etc. -+# Port1 Interface - # --#ESC \ n set page size: --# n = 1 24 lines/page --# n = 2 48 lines/page --# n = 3 72 lines/page --# n = 4 96 lines/page --#ESC ] n set Wordstar mode: --# n = 0 normal (KDS7372) mode --# n = 1 Wordstar mode -+# modular 10 pin Connector -+# Left side Right side -+# Pin 1 2 3 4 5 6 7 8 9 10 - # --#ESC b set foreground colour screen -+# Key (notch) at bottom - # --#ESC c n enter self-test mode: --# n = 0 exit self test mode --# n = 1 ROM test --# n = 2 RAM test --# n = 3 NVRAM test --# n = 4 screen display test --# n = 5 main/printer port test --# n = 6 mouse port test --# n = 7 graphics board test --# n = 8 graphics memory test --# n = 9 display all 'E' --# n = : display all 'H' --#ESC d set background colour screen -+# Pin 1 DSR -+# 3 DCD -+# 4 DTR -+# 5 Sig Ground -+# 6 RD -+# 7 SD -+# 8 CTS -+# 9 RTS -+# 10 Frame Ground - # --#ESC e n program insert char (n = insert char) --#ESC f text CR load user status line with 'text' -+# The manual is 189 pages and is loaded with details about the escape codes, -+# etc..... Available from AT&T CIC 800-432-6600... -+# ask for Document number 999-300-660.. - # --#ESC g display user status line on 25th line --#ESC h display system status line on 25th line --#ESC i tab --#ESC j reverse linefeed --#ESC k n duplex/local edit mode: --# n = 0 duplex edit mode --# n = 1 local edit mode --#ESC l n select virtual screen: --# n = 0 screen 1 --# n = 1 screen 2 --#ESC m save current config to NVRAM --#ESC n p1 select display screen: --# p1 = 0 screen 1 --# p1 = 1 screen 2 --# p1 = 2 screen 3 --# p1 = 3 screen 4 --#ESC o p1 p2 set characters/line and attribute: --# p1 = 0 80 chars/line -+att700|AT&T 700 24x80 column display w/102key keyboard, -+ am, eslok, hs, mir, msgr, xenl, xon, -+ cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -+ enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fln=4\,4, -+ fsl=\E8, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ il=\E[%p1%dL, il1=\E[L, ind=\ED, invis=\E[8m, -+ is2=\E[50;4|\E[53;0|\E[8;0|\E[?4;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0\E[?31l\E[0m\017, -+ is3=\E(B\E)0, kLFT=\E[ A, kRIT=\E[ @, kbs=^H, kcbt=\E[Z, -+ kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[P, kdl1=\E[M, kend=\E[24;1H, kf1=\EOc, kf10=\ENp, -+ kf11=\ENq, kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC, -+ kf16=\EOD, kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd, -+ kf20=\EOH, kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP, -+ kf25=\ENQ, kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOq, -+ kf3=\EOe, kf30=\EOr, kf31=\EOs, kf32=\EOt, kf33=\EOu, -+ kf34=\EOv, kf35=\EOw, kf36=\EOx, kf37=\EOy, kf38=\EOu, -+ kf39=\EOv, kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr, -+ kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg, -+ kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, -+ kich1=\E[@, kil1=\E[L, knp=\E[U, kpp=\E[V, ll=\E[24H, -+ mc0=\E[i, mc4=\E[?4i, mc5=\E[?5i, nel=\EE, -+ pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s, -+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, -+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O, -+ rmir=\E[4l, rmln=\E[2p, rmso=\E[27m, rmul=\E[24m, -+ rmxon=\E[53;3|, rs1=\Ec\E[?3;5l\E[56;0|, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smir=\E[4h, smln=\E[p, smso=\E[7m, -+ smul=\E[4m, smxon=\E[53;0|, tbc=\E[3g, -+ tsl=\E7\E[99;%i%p1%dx, -+ -+# This entry was modified 3/13/90 by JWE. -+# fixes include additions of <enacs>, correcting <rep>, and modification -+# of <kHOM>. (See comments below) -+# att730 has status line of 80 chars -+# These were commented out: <indn=\E[%p1%dS>, <rin=\E[%p1%dT>, -+# the <kf25> and up keys are used for shifted system Fkeys -+# NOTE: JWE 3/13/90 The 98 key keyboard translation for shift/HOME is -+# currently the same as <khome> (unshifted HOME or \E[H). On the 102, 102+1 -+# and 122 key keyboards, the 730's translation is \E[2J. For consistency -+# <kHOM> has been commented out. The user can uncomment <kHOM> if using the -+# 102, 102+1, or 122 key keyboards -+# kHOM=\E[2J, -+# (att730: I added <rmam>/<smam> based on the init string -- esr) -+att730|AT&T 730 windowing terminal, -+ am, da, db, eslok, hs, mir, msgr, npc, xenl, xon, -+ cols#80, it#8, lh#2, lines#60, lm#0, lw#8, nlab#24, wsl#80, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l, -+ clear=\E[H\E[J, cnorm=\E[?25h\E[?12l, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -+ enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fsl=\E8, -+ home=\E[H, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, -+ ind=\ED, invis=\E[8m, -+ is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B, -+ is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ @, kRIT=\E[ A, kbs=^H, -+ kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr, -+ kf13=\ENs, kf14=\ENt, kf15=\ENu, kf16=\ENv, kf17=\ENw, -+ kf18=\ENx, kf19=\ENy, kf2=\EOd, kf20=\ENz, kf21=\EN{, -+ kf22=\EN|, kf23=\EN}, kf24=\EN~, kf25=\EOC, kf26=\EOD, -+ kf27=\EOE, kf28=\EOF, kf29=\EOG, kf3=\EOe, kf30=\EOH, -+ kf31=\EOI, kf32=\EOJ, kf33=\ENO, kf34=\ENP, kf35=\ENQ, -+ kf36=\ENR, kf37=\ENS, kf38=\ENT, kf39=\EOU, kf4=\EOf, -+ kf40=\EOV, kf41=\EOW, kf42=\EOX, kf43=\EOY, kf44=\EOZ, -+ kf45=\EO[, kf46=\EO\s, kf47=\EO], kf48=\EO\^, kf5=\EOg, -+ kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, -+ kich1=\E[@, kil1=\E[L, kind=\E[S, kri=\E[T, -+ mc0=\E[?19h\E[0i, mc4=\E[?4i, mc5=\E[?5i, nel=\EE, -+ pfx=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%:-2d %e;0;3q%;%p2%s, -+ pfxl=\E[%p1%d;%p2%l%02d;0;0q%p3%:-16.16s%p2%s, -+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, -+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O, -+ rmam=\E[?7l, rmir=\E[4l, rmln=\E[?13h, rmso=\E[27m, -+ rmul=\E[24m, rmxon=\E[?21l, rs2=\Ec\E[?3l, sc=\E7, -+ sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h, -+ smln=\E[?13l, smso=\E[7m, smul=\E[4m, smxon=\E[?21h, -+ swidm=\E#6, tsl=\E7\E[;%i%p1%dx, -+att730-41|730MTG-41|AT&T 730-41 windowing terminal Version, -+ lines#41, use=att730, -+att730-24|730MTG-24|AT&T 730-24 windowing terminal Version, -+ lines#24, use=att730, -+att730r|730MTGr|AT&T 730 rev video windowing terminal Version, -+ flash=\E[?5l$<200>\E[?5h, -+ is1=\E[8;0|\E[?3;4;13;15l\E[?5h\E[13;20l\E[?7h\E[12h\E(B\E)B, -+ use=att730, -+att730r-41|730MTG-41r|AT&T 730r-41 rev video windowing terminal Version, -+ lines#41, use=att730r, -+att730r-24|730MTGr-24|AT&T 730r-24 rev video windowing terminal Version, -+ lines#24, use=att730r, -+ -+# The following represents the screen layout along with the associated -+# bezel buttons for the 5430/pt505 terminal. The "kf" designations do -+# not appear on the screen but are shown to reference the bezel buttons. -+# The "CMD", "MAIL", and "REDRAW" buttons are shown in their approximate -+# position relative to the screen. - # --#ESC o p1 p2 set characters/line and attribute: --# p1 = 0 80 chars/line --# p1 = 1 132 chars/line --# p2 = 0 single width single height --# p2 = 1 single width double height --# p2 = 2 double width single height --# p2 = 3 double width double height - # --#ESC q insert mode on --#ESC r edit mode on --#ESC s send message all --#ESC t erase line to null --#ESC u clear monitor mode (see ESC U, ESC X) --#ESC v autopage mode on --#ESC w autopage mode off --#ESC x p1 p2 p3 define delimiter code... --#ESC y erase page to null - # --#ESC z 2 p1 p2 p3 p4 draw quadrangle: --# p1 = starting row --# p2 = starting column --# p3 = end row --# p4 = end column -+# +----------------------------------------------------------------+ -+# | | -+# XXXX | kf0 kf24 | XXXX -+# | | -+# | | -+# XXXX | kf1 kf23 | XXXX -+# | | -+# | | -+# XXXX | kf2 kf22 | XXXX -+# | | -+# | | -+# XXXX | kf3 kf21 | XXXX -+# | | -+# | | -+# XXXX | kf4 kf20 | XXXX -+# | | -+# | | -+# XXXX | kf5 kf19 | XXXX -+# | | -+# | | -+# XXXX | kf6 kf18 | XXXX -+# | | -+# | | -+# XXXX | | XXXX -+# | | -+# | | -+# +----------------------------------------------------------------+ - # --#ESC { p1 p2 p3 p4 configure main port --# (baud, stop bits, parity, word length) -+# XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX - # --#ESC | p1 p2 text Ctrl-Y program function key with 'text': --# p1 = function key code: --# '1' - ';' normal f1- f11 --# '<' - 'F' shifted f1 - f11 --# p2 = program mode: --# 1 = FDX --# 2 = LOC --# 3 = HDX --# Ctrl-Y = terminator --# (use Ctrl-P to escape ^P, ^Y ) -+# Note: XXXX represents the screen buttons -+# CMD REDRAW - # --#ESC } p1 p2 p3 p4 configure printer port --# (baud, stop bits, parity, word length) --#ESC ~ send system status -+# MAIL - # --# Codes and info from Peter Disdale <pete@pdlmail.demon.co.uk> 12 May 1997 -+# version 1 note: -+# The character string sent by key 'kf26' may be user programmable -+# to send either \E[16s, or \E[26s. -+# The character string sent by key 'krfr' may be user programmable -+# to send either \E[17s, or \E[27s. - # --# Entry is by esr going solely on above information and is UNTESTED. --# This actually looks a lot like a Televideo 9xx. --# This entry uses page 0 and is monochrome; I'm not brave enough to try --# to make color work without a test terminal. The <am> capability is a guess. --# The initialization string sets conversation mode, blinking underline cursor, --# full duplex, parallel attribute mode, display user status line, white --# foreground, black background, normal highlight. -+# Depression of the "CMD" key sends \E! (kcmd) -+# Depression of the "MAIL" key sends \E[26s (kf26) -+# "REDRAW" same as "REFRESH" (krfr) - # --icl6404|kds7372|icl6402|kds6402|ICL 6404 aka Kokusai Display Systems 7372, -- OTbs, am, hs, -- cols#80, lines#24, -- bel=^G, blink=\E[2ZZ, cbt=\EI, civis=\E.0, clear=\E*, -- cnorm=\E.3, cr=^M, -- csr=\E!%+%p1%{32}%+%p2%{32} cud1=\026, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{80}%m%{32}%+%c%p2%{80}%>%{32}%+%c, -- cuu1=^K, cvvis=\E.1, dch1=\EW, dl1=\ER, home=^^, ht=^I, -- hts=\E1, il1=\EE, invis=\E[1ZZ, -- is1=\EC\E.3\EDF\EV1\Eg\E[0ZZ, nel=^_, rev=\E[4ZZ, -- rmir=\Er, rmso=\E[%gh%{4}%^%Ph%gh%dZZ, -- rmul=\E[%gh%{8}%^%Ph%gh%dZZ, rs2=\Eo1, -- sgr=\E[%{0}%?%p1%t%{4}%|%;%?%p2%t%{8}%|%;%?%p3%t%{4}%|%;%?%p4%t%{2}%|%;%?%p7%t%{1}%|%;ZZ, -- sgr0=\E[0ZZ, smir=\Eq, smso=\E[8ZZ, smul=\E[8ZZ, tbc=\E3, --icl6404-w|kds7372-w|ICL 6404 aka Kokusai Display Systems 7372 132 cols, -- rs2=\Eo1, use=icl6404, -- --#### Interactive Systems Corp -+# "kf" functions adds carriage return to output string if terminal is in -+# 'new line' mode. - # --# ISC used to sell OEMed and customized hardware to support ISC UNIX. --# ISC UNIX still exists in 1995, but ISC itself is no more; they got --# bought out by Sun. -+# The following are functions not covered in the table above: - # -- --# From: <cithep!eric> Wed Sep 16 08:06:44 1981 --# (intext: removed obsolete ":ma=^K^P^R^L^L ::bc=^_:", also the --# ":le=^_:" later overridden -- esr) --intext|Interactive Systems Corporation modified owl 1200, -- OTbs, am, -- cols#80, it#8, lines#24, xmc#1, -- bel=^G, cbt=^Y, clear=\014$<132>, cr=^M, cub1=^H, cud1=^J, -- cuf1=^^, cup=\017%p1%{32}%+%c%p2%{32}%+%c, cuu1=^\, -- dch1=\022$<5.5*>, dl1=\021$<5.5*>, ed=\026J$<5.5*>, -- el=^Kp^R, ht=^I, il1=\020$<5.5*>, ind=^J, ip=$<5.5*>, kbs=^H, -- kcub1=^_, kcud1=^J, kcuf1=^^, kcuu1=^\, kf0=^VJ\r, kf1=^VA\r, -- kf2=^VB\r, kf3=^VC\r, kf4=^VD\r, kf5=^VE\r, kf6=^VF\r, -- kf7=^VG\r, kf8=^VH\r, kf9=^VI\r, khome=^Z, rmir=^V<, -- rmkx=^V9, rmso=^V#\s, smir=^V;, smkx=\036\:\264\026%%, -- smso=^V$\,, --intext2|intextii|INTERACTIVE modified owl 1251, -- am, bw, ul, -- cols#80, lines#24, xmc#0, -- bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, cub1=\E[D, -- cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -- dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, -- flash=\E[;;;;;;;;;2;;u$<200/>\E[;;;;;;;;;1;;u, -- hpa=\E[%p1%{1}%+%dG, ht=^I, ich1=\E[@, il1=\E[L, ind=\E[S, -- kbs=^H, kcub1=\ED\r, kcud1=\EB\r, kcuf1=\EC\r, kcuu1=\EA\r, -- kf0=\E@\r, kf1=\EP\r, kf2=\EQ\r, kf3=\ES\r, kf4=\ET\r, -- kf5=\EU\r, kf6=\EV\r, kf7=\EW\r, kf8=\EX\r, kf9=\EY\r, -- khome=\ER\r, lf0=REFRSH, lf1=DEL CH, lf2=TABSET, lf3=GOTO, -- lf4=+PAGE, lf5=+SRCH, lf6=-PAGE, lf7=-SRCH, lf8=LEFT, -- lf9=RIGHT, ri=\E[T, rmso=\E[2 D, rmul=\E[2 D, smso=\E[6 D, -- smul=\E[18 D, -- --#### Kimtron (abm, kt) -+# Set keyboard character (SKC): \EPn1;Pn2w -+# Pn1= 0 Back Space key -+# Pn1= 1 Break key -+# Pn2= Program char (hex) - # --# Kimtron seems to be history, but as March 1998 these people are still --# offering repair services for Kimtron equipment: -+# Screen Definition (SDF): \E[Pn1;Pn2;Pn3;Pn4;Pn5t -+# Pn1= Window number (1-39) -+# Pn2-Pn5= Y;X;Y;X coordinates - # --# Com/Pair Monitor Service --# 1105 N. Cliff Ave. --# Sioux Falls, South Dakota 57103 -+# Screen Selection (SSL): \E[Pnu -+# Pn= Window number - # --# WATS voice: 1-800/398-4946 --# POTS fax: +1 605/338-8709 --# POTS voice: +1 605/338-9650 --# Email: <compair@sd.cybernex.net> --# Internet/Web: <http://www.com-pair.com> -+# Set Terminal Modes (SM): \E[Pnh -+# Pn= 3 Graphics mode -+# Pn= > Cursor blink -+# Pn= < Enter new line mode -+# Pn= = Enter reverse insert/replace mode -+# Pn= ? Enter no scroll mode - # --# Kimtron entries include (undocumented) codes for: enter dim mode, --# enter bold mode, enter reverse mode, turn off all attributes. -+# Reset Terminal Mode (RM): \E[Pnl -+# Pn= 3 Exit graphics mode -+# Pn= > Exit cursor blink -+# Pn= < Exit new line mode -+# Pn= = Exit reverse insert/replace mode -+# Pn= ? Exit no scroll mode - # -- --# Kimtron ABM 85 added by Dual Systems --# (abm85: removed duplicated ":kd=^J:" -- esr) --abm85|Kimtron ABM 85, -- OTbs, am, bw, msgr, -- cols#80, it#8, lines#24, xmc#1, -- cbt=\EI, clear=\E*, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\Ey, el=\Et, ht=^I, -- if=/usr/share/tabset/stdcrt, il1=\EE, -- is2=\EC\EX\Eg\En\E%\Er\E(\Ek\Em\Eq, kbs=^H, kcub1=^H, -- kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, rmir=\Er, rmso=\Ek, -- rmul=\Em, smir=\EQ, smso=\Ej, smul=\El, --# Kimtron ABM 85H added by Dual Systems. --# Some notes about the abm85h entries: --# 1) there are several firmware revs of 85H in the world. Use abm85h-old for --# firmware revs prior to SP51 --# 2) Make sure to use abm85h entry if the terminal is in 85h mode and the --# abm85e entry if it is in tvi920 emulation mode. They are incompatible --# in some places and NOT software settable i.e., <is2> can't fix it) --# 3) In 85h mode, the arrow keys and special functions transmit when --# the terminal is in dup-edit, and work only locally in local-edit. --# Vi won't swallow `del char' for instance, but <smcup> turns on --# dup-edit anyway so that the arrow keys will work right. If the --# arrow keys don't work the way you like, change <smcup>, <rmcup>, and --# <is2>. Note that 920E mode does not have software commands to toggle --# between dup and local edit, so you get whatever was set last on the --# terminal. --# 4) <flash> attribute is nice, but seems too slow to work correctly --# (\Eb<pad>\Ed) --# 5) Make sure `hidden' attributes are selected. If `embedded' attributes --# are selected, the <xmc@> entry should be removed. --# 6) auto new-line should be on (selectable from setup mode only) -+# Screen Status Report (SSR): \E[Pnp -+# Pn= 0 Request current window number -+# Pn= 1 Request current window dimensions - # --# From: Erik Fair <fair@ucbarpa> Sun Oct 27 07:21:05 1985 --abm85h|Kimtron ABM 85H native mode, -- hs, -- xmc@, -- bel=^G, cnorm=\E.4, cvvis=\E.2, dim=\E), dsl=\Ee, flash@, -- fsl=^M, invis@, -- is2=\EC\EN\EX\024\016\EA\Ea\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\EG0\Ed\E.4\El, -- kcud1=^V, sgr0=\E(\EG0, smir=\EZ, tsl=\Eg\Ef, use=adm+sgr, -- use=abm85, --abm85e|Kimtron ABM 85H in 920E mode, -- xmc@, -- bel=^G, dim=\E), flash@, -- is2=\EC\EX\EA\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\Ek\Eq\Em, -- rev=\Ej, sgr0=\E(\Ek, smir=\EZ, use=abm85, --abm85h-old|oabm85h|o85h|Kimtron ABM 85H with old firmware rev., -- xmc@, -- bel=^G, dim=\E), -- is2=\E}\EC\EX\Ee\En\E%\Er\E(\Ek\Em\Eq\Ed\ET\EC\E9\EF, -- rev=\Ej, sgr0=\E(\Ek, smir=\EZ, use=abm85, --# From: <malman@bbn-vax.arpa> --# (kt7: removed obsolete :ma=^V^J^L :" -- esr) --kt7|kimtron model kt-7, -- OTbs, am, -- cols#80, it#8, lines#24, -- cbt=\EI, clear=^Z, cub1=^H, cud1=^V, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dl1=\ER, ed=\EY, el=\ET, fsl=\Eg, home=^^, ht=^I, ich1=\EQ, -- if=/usr/share/tabset/stdcrt, il1=\EE, invis@, is2=\El\E", -- kbs=^H, kcbt=\EI, kclr=^Z, kcub1=^H, kcud1=^V, kcuf1=^L, -- kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kf0=^AI\r, -- kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -- kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -- kich1=\EQ, kil1=\EE, tsl=\Ef, use=adm+sgr, --# Renamed TB=^I to :ta:, BE=^G to :bl:, BS=^H to :kb:, N to :kS: (based on the --# other kt7 entry and the adjacent key capabilities). Removed EE which is --# identical to :mh:. Removed :ES=\EGD: which is some kind of highlight --# but we can't figure out what. --kt7ix|kimtron model kt-7 or 70 in IX mode, -- am, bw, -- cols#80, it#8, lines#25, -- acsc=jYk?lZm@nEqDt4uCvAwBx3, bel=^G, blink=\EG2, cbt=\EI, -- civis=\E.0, clear=\E*, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, -- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- dch1=\EW, dim=\EG@, dl1=\ER, dsl=\Ef\r, ed=\EY, el=\ET, fsl=^M, -- home=^^, ht=^I, ich1=\EQ, il1=\EE, ind=^J, -- is2=\EG0\E s\017\E~, kbs=^H, kcbt=\EI, kclr=\E*, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\ER, -- ked=\EY, kel=\ET, kend=\EY, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, -- kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -- kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, kil1=\EE, knp=\EJ, -- nel=^M^J, pulse=\EK, rmacs=\E%%, rmir=, rmso=\EG0, rmul=\EG0, -- sgr0=\EG0, smacs=\E$, smir=, smso=\EG4, smul=\EG8, tsl=\Ef, -- --#### Microdata/MDIS -+# Device Status Report (DSR): \E[6n Request cursor position - # --# This was a line of terminals made by McDonnell-Douglas Information Systems. --# These entries come direct from MDIS documentation. I have edited them only --# to move primary names of the form p[0-9] * to aliases, and to comment out --# <rmacs>/<smacs> in a couple of entries without <acsc> strings. I have --# also removed the change history; the last version indicates this is --# version 4.3 by A.Barkus, September 1990 (earliest entry is October 1989). -+# Call Status Report (CSR): \E[Pnv -+# Pn= 0 Call failed -+# Pn= 1 Call successful - # -- --# McDonnell Information Systems Terminal Family History --# ========================================= --# --# Prism-1, Prism-2 and P99: --# Ancient Microdata and CMC terminals, vaguely like Adds Regent 25. --# --# Prism-4 and Prism-5: --# Slightly less ancient range of Microdata terminals. Follow-on from --# Prism-2, but with many enhancements. P5 has eight display pages. --# --# Prism-6: --# A special terminal for use with library systems, primarily in Germany. --# Limited numbers. Similar functionality to P5 (except attributes?). -+# Transparent Button String (TBS): \E[Pn1;Pn2;Pn3;{string -+# Pn1= Button number to be loaded -+# Pn2= Character count of "string" -+# Pn3= Key mode being loaded: -+# 0= Unshifted -+# 1= Shifted -+# 2= Control -+# String= Text string (15 chars max) - # --# Prism-7, Prism-8 and Prism-9: --# More recent range of MDIS terminals, in which P7 and P8 --# replace the P4 & P5, with added functionality, and P9 is the flagship. --# The P9 has two emulation modes - P8 and ANSI - and includes a --# large number of the DEC VT220 control sequences. Both --# P8 and P9 support 80c/24ln/8pg and 132cl/24li/4pg formats. -+# Screen Number Report (SNR): \E[Pnp -+# Pn= Screen number - # --# Prism-12 and Prism-14: --# Latest range, functionally very similar to the P9. The P14 has a --# black-on-white overscanning screen. -+# Screen Dimension Report (SDR): \E[Pn1;Pn2r -+# Pn1= Number of rows available in window -+# Pn2= Number of columns available in window - # --# The terminfo definitions given here are: -+# Cursor Position Report (CPR): \E[Pn1;Pn2R -+# Pn1= "Y" Position of cursor -+# Pn2= "X" Position of cursor - # --# p2 - Prism-2 (or Prism-1 or P99). -+# Request Answer Back (RAB): \E[c - # --# p4 - Prism-4 (and older P7s & P8s). --# p5 - Prism-5 (or Prism-6). -+# Answer Back Response (ABR): \E[?;*;30;VSV -+# *= 0 No printer available -+# *= 2 Printer available -+# V= Software version number -+# SV= Software sub version number -+# (printer-available field not documented in v1) - # --# p7 - Prism-7. --# p8 - Prism-8 (in national or multinational mode). --# p8-w - 132 column version of p8. --# p9 - Prism-9 in ANSI mode. --# p9-w - 132 column version of p9. --# p9-8 - Prism-9 in Prism-8 emulation mode. --# p9-8-w - As p9-8, but with 132 columns. -+# Screen Alignment Aid: \En - # --# p12 - Prism-12 in ANSI mode. --# p12-w - 132 column version of p12. --# p12-m - Prism-12 in MDC emulation mode. --# p12-m-w - As p12-m, but with 132 columns. --# p14 - Prism-14 in ANSI mode. --# p14-w - 132 column version of p14. --# p14-m - Prism-14 in MDC emulation mode. --# p14-m-w - As p14-m, but with 132 columns. -+# Bell (lower pitch): \E[x - # --# p2: Prism-2 --# ----------- -+# Dial Phone Number: \EPdstring\ -+# string= Phone number to be dialed - # --# Includes Prism-1 and basic P99 without SP or MP loaded. --# The simplest form of Prism-type terminal. --# Basic cursor movement and clearing operations only. --# No video attributes. --# Notes: --# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next --# value up, followed by backspace. -+# Set Phone Labels: \EPpstring\ -+# string= Label for phone buttons - # --prism2|MDC Prism-2, -- am, bw, msgr, -- cols#80, lines#24, -- bel=^G, clear=\014$<20>, cr=^M, cub1=^H, cud1=^J, cuf1=^F, -- cup=\013%p1%{32}%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, -- cuu1=^Z, ed=\EJ, el=\EK, home=^A, -- hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, -- ind=^J, kbs=^H, khome=^A, vpa=\013%p1%{32}%+%c, -- --# p4: Prism-4 --# ----------- -+# Set Clock: \EPchour;minute;second\ - # --# Includes early versions of P7 & P8. --# Basic family definition for most Prisms (except P2 and P9 ANSI). --# Notes: --# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next --# value up, followed by backspace. --# Cursor key definitions removed because they interfere with vi and csh keys. -+# Position Clock: \EPsY;X\ -+# Y= "Y" coordinate -+# X= "X" coordinate - # --prism4|p4|P4|MDC Prism-4, -- am, bw, hs, mc5i, msgr, -- cols#80, lines#24, wsl#72, xmc#1, -- bel=^G, blink=^CB, civis=^]\344, clear=\014$<20>, -- cnorm=^]\342, cr=^M, cub1=^H, cud1=^J, cuf1=^F, -- cup=\013%p1%{32}%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, -- cuu1=^Z, dim=^CA, dsl=\035\343\035\345, ed=\EJ, el=\EK, -- fsl=^]\345, home=^A, -- hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, -- ind=^J, invis=^CH, kbs=^H, khome=^A, mc0=\EU, mc4=\ET, mc5=\ER, -- rev=^CD, rmso=^C\s, rmul=^C\s, -- sgr=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;, -- sgr0=^C\s, smso=^CD, smul=^CP, tsl=^]\343, -- vpa=\013%p1%{32}%+%c, -- --# p5: Prism-5 --# ----------- -+# Delete Clock: \Epr\ - # --# Same definition as p4. Includes Prism-6 (not tested!). --# Does not use any multi-page features. -+# Programming The Function Buttons: \EPfPn;string\ -+# Pn= Button number (00-06, 18-24) -+# (kf00-kf06, kf18-kf24) -+# string= Text to sent on button depression - # --prism5|p5|P5|MDC Prism-5, -- use=p4, -- --# p7: Prism-7 --# ----------- -+# The following in version 2 only: - # --# Similar definition to p4. Uses ANSI cursor motion to avoid network problems. --# Notes: --# Use p4 for very early models of P7. --# Rev-index removed; can't send nulls to terminal in 8-bit modes. -+# Request For Local Directory Data: \EPp12;\ - # --prism7|p7|P7|MDC Prism-7, -- cup=\E[%i%p1%d;%p2%dH, hpa@, vpa@, use=p4, -- --# p8: Prism-8 --# ----------- -+# Local Directory Data to host: \EPp11;LOCAL...DIRECTORY...DATA\ - # --# Similar definition to p7. Uses ANSI cursor motion to avoid network problems. --# Supports national and multinational character sets. --# Notes: --# Alternate char set operations only work in multinational mode. --# Use p4 for very early models of P8. --# Rev-index removed; can't send nulls to terminal in 8-bit modes. --# (esr: commented out <smacs>/<rmacs> because there's no <acsc>) -+# Request for Local Directory Data in print format: \EPp13;\ - # --prism8|p8|P8|MDC Prism-8, -- cup=\E[%i%p1%d;%p2%dH, hpa=\E[%i%p1%d`, is2=\E[<12h, -- vpa=\E[%i%p1%dd, use=p4, -- --# p8-w: Prism-8 in 132 column mode --# -------------------------------- -+# Enable 'Prt on Line' mode: \022 (DC2) - # --# 'Wide' version of p8. --# Notes: --# Rev-index removed; can't send nulls to terminal in 8-bit modes. -+# Disable 'Prt on Line' mode: \024 (DC4) - # --prism8-w|p8-w|P8-W|MDC Prism-8 in 132 column mode, -- cols#132, -- is2=\E[<12h\E[<14h, use=p8, - --# p9: Prism-9 in ANSI mode --# ------------------------- --# --# The "flagship" model of this generation of terminals. --# ANSI X3.64 (ISO 6429) standard sequences, plus many DEC VT220 ones. --# Notes: --# Tabs only reset by "reset". Otherwise assumes default (8 cols). --# Fixes to deal with terminal firmware bugs: --# . 'ri' uses insert-line since rev index doesn't always --# . 'sgr0' has extra '0' since esc[m fails --# . 'fsl' & 'dsl' use illegal char since cr is actioned wrong on line 25 --# Not covered in the current definition: --# . Labels --# . Programming Fn keys --# . Graphic characters (defaults correctly to vt100) --# . Padding values (sets xon) --# (esr: commented out <smacs>/<rmacs> because there's no <acsc>) --# --prism9|p9|P9|MDC Prism-9 in ANSII mode, -- am, bw, hs, mc5i, msgr, xenl, xon, -- cols#80, it#8, lines#24, vt#3, wsl#72, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[<4l, -- clear=^L, cnorm=\E[<4h, cr=^M, csr=\E[%i%p1%d;%p2%d%%v, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -- dl=\E[%p1%dM, dl1=\E[M, dsl=\E[%}\024, ech=\E[%p1%dX, -- ed=\E[J$<10>, el=\E[K, fsl=^T, home=\E[H, hpa=\E[%i%p1%d`, -- ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, -- is2=\E[&p\E[<12l\E F, kbs=^H, kclr=^L, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[11~, -- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -- kf18=\E[32~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, -- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -- khome=\E[H, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=^M^J, -- prot=\E[32%{, rc=\E[%z, rep=\E[%p2%db%p1%c, rev=\E[7m, -- ri=\E[L, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m, -- rs2=\E[&p\E[<12l\E F\E[3g\E[9;17;25;33;41;49;57;65;73 N, -- sc=\E[%y, -- sgr=\E[%{0}%?%p1%p3%|%t%{7}%+%;%?%p2%t%{2}%+%;%?%p4%t%{5}%+%;%?%p6%t%{1}%+%;m%?%p8%t\E[%{32}%+%d%%{%;%?%p9%t\016%e\017%;, -- sgr0=\E[0m\017, smir=\E[4h, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, tsl=\E[%i%p1%d%%}, vpa=\E[%i%p1%dd, -+# 05-Aug-86: -+# The following Terminfo entry describes functions which are supported by -+# the AT&T 5430/pt505 terminal software version 2 and later. -+att505|pt505|att5430|gs5430|AT&T Personal Terminal 505 or 5430 GETSET terminal, -+ am, xon, -+ cols#80, it#8, lines#24, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H, -+ cnorm=\E[>l, cr=^M, cub=\E[%p1%dD, cub1=\E[D, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[>h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ed=\E[0J, el=\E[0K, el1=\E[2K, home=\E[H, ht=^I, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, -+ is1=\EPr\\E[0u\E[2J\E[0;0H\E[m\E[3l\E[<l\E[4l\E[>l\E[=l\E[?l, -+ kbs=^H, kcmd=\E!, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kf0=\E[00s, kf1=\E[01s, kf18=\E[18s, -+ kf19=\E[19s, kf2=\E[02s, kf20=\E[20s, kf21=\E[21s, -+ kf22=\E[22s, kf23=\E[23s, kf24=\E[24s, kf26=\E[26s, -+ kf3=\E[03s, kf4=\E[04s, kf5=\E[05s, kf6=\E[06s, -+ krfr=\E[27s, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, -+ rmacs=\E[10m, rmam=\E[11;1j, rmir=\E[4l, rmso=\E[m, -+ rmul=\E[m, rs1=\Ec, sc=\E7, sgr0=\E[m, smacs=\E[11m, -+ smam=\E[11;0j, smir=\E[4h, smso=\E[1m, smul=\E[4m, - --# p9-w: Prism-9 in 132 column mode --# -------------------------------- -+# The following Terminfo entry describes functions which are supported by -+# the AT&T 5430/pt505 terminal software version 1. -+att505-24|pt505-24|gs5430-24|AT&T PT505 or 5430 GETSET version 1 24 lines, -+ lines#24, -+ mc4@, mc5@, rc@, rmam@, sc@, smam@, use=att505, -+tt505-22|pt505-22|gs5430-22|AT&T PT505 or 5430 GETSET version 1 22 lines, -+ lines#22, use=att505, - # --# 'Wide' version of p9. -+#### ------------------ TERMINFO FILE CAN BE SPLIT HERE --------------------- -+# This cut mark helps make life less painful for people running ncurses tic -+# on machines with relatively little RAM. The file can be broken in half here -+# cleanly and compiled in sections -- no `use' references cross this cut -+# going forward. - # --prism9-w|p9-w|P9-W|MDC Prism-9 in 132 column mode, -- cols#132, -- is2=\E[&p\E[<12l\E F\E[<14h, -- rs2=\E[&p\E[<12l\E F\E[<14h, use=p9, - --# p9-8: Prism-9 in P8 mode --# ------------------------ -+#### Ampex (Dialogue) - # --# P9 terminal in P8 emulation mode. --# Similar to p8 definition. --# Insertion and deletion operations possible. -+# Yes, these are the same people who are better-known for making audio- and -+# videotape. I'm told they are located in Redwood City, CA. - # --prism9-8|p9-8|P9-8|MDC Prism-9 in P8 mode, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, use=p8, - --# p9-8-w: Prism-9 in P8 and 132 column modes --# ------------------------------------------ -+# From: <cbosg!ucbvax!SRC:george> Fri Sep 11 22:38:32 1981 -+# (ampex80: some capabilities merged in from SCO's entry -- esr) -+ampex80|a80|d80|dialogue|dialogue80|ampex dialogue 80, -+ OTbs, am, bw, ul, -+ cols#80, it#8, lines#24, -+ bel=^G, cbt=\EI, clear=\E*$<75>, cr=^M, cub1=^H, cud1=^J, -+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ dch1=\EW, dl1=\ER$<5*>, ed=\Ey, el=\Et, ht=^I, hts=\E1, -+ ich1=\EQ, il1=\EE$<5*>, ind=^J, is2=\EA, rmso=\Ek, rmul=\Em, -+ smso=\Ej, smul=\El, tbc=\E3, -+# This entry was from somebody anonymous, Tue Aug 9 20:11:37 1983, who wrote: -+ampex175|ampex d175, -+ am, -+ cols#80, lines#24, -+ bel=^G, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\Ey, el=\Et, home=^^, ich1=\EQ, il1=\EE, ind=^J, -+ is2=\EX\EA\EF, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, -+ kdch1=\EW, kdl1=\ER, khome=^^, kich1=\EQ, kil1=\EE, ll=^^^K, -+ rmcup=\EF, rmso=\Ek, rmul=\Em, smcup=\EN, smso=\Ej, smul=\El, -+# No backspace key in the main QWERTY cluster. Fortunately, it has a -+# NEWLINE/PAGE key just above RETURN that sends a strange single-character -+# code. Given a suitable Unix (one that lets you set an echo-erase-as-BS-SP-BS -+# mode), this key can be used as the erase key; I find I like this. Because -+# some people and some systems may not, there is another termcap ("ampex175") -+# that suppresses this little eccentricity by omitting the relevant capability. -+ampex175-b|ampex d175 using left arrow for erase, -+ kbs=^_, use=ampex175, -+# From: Richard Bascove <atd!dsd!rcb@ucbvax.berkeley.edu> -+# (ampex210: removed obsolete ":kn#10:" -- esr) -+ampex210|a210|ampex a210, -+ OTbs, am, hs, xenl, -+ cols#80, it#8, lines#24, xmc#1, -+ cbt=\EI, clear=\E*, cub1=^H, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\Ey, el=\Et, flash=\EU\EX\EU\EX\EU\EX\EU\EX, -+ fsl=\E.2, home=^^, ht=^I, ich1=\EQ, -+ if=/usr/share/tabset/std, il1=\EE, invis@, -+ is2=\EC\Eu\E'\E(\El\EA\E%\E{\E.2\EG0\Ed\En, kcub1=^H, -+ kcud1=^V, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r, -+ kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r, -+ kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, khome=^^, -+ tsl=\E.0\Eg\E}\Ef, use=adm+sgr, -+# (ampex219: I added <rmam>/<smam> based on the init string, added <cvvis> -+# from ampex219w, added <cnorm>=\E[?3l, irresistibly suggested by <cvvis>, -+# and moved the padding to be *after* the caps -- esr) -+ampex219|ampex-219|amp219|Ampex with Automargins, -+ hs, xenl, -+ cols#80, it#8, lines#24, -+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, cbt=\E[Z, -+ clear=\E[H\E[2J$<50>, cnorm=\E[?3l, cr=^M, -+ csr=%i\E[%p1%2d;%p2%2dr, cub1=^H, cud1=\E[B, -+ cuf1=\E[C$<2>, cup=\E[%i%p1%d;%p2%dH$<5>, -+ cuu1=\E[A$<2>, cvvis=\E[?3h, dim=\E[1m, ed=\E[J$<50>, -+ el=\E[K$<3>, home=\E[H, ht=^I, ind=^J, -+ is2=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\E[21~, -+ kf1=\E[7~, kf2=\E[8~, kf3=\E[9~, kf4=\E[10~, kf5=\E[11~, -+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H, -+ rev=\E[7m, ri=\EM$<5>, rmam=\E[?7l, rmkx=\E>, -+ rmso=\E[m$<2>, rmul=\E[m$<2>, sgr0=\E[m$<2>, smam=\E[?7h, -+ smkx=\E=, smso=\E[7m$<2>, smul=\E[4m$<2>, -+ampex219w|ampex-219w|amp219w|Ampex 132 cols, -+ cols#132, lines#24, -+ bel=^G, cr=^M, cud1=^J, ind=^J, -+ is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, use=ampex219, -+# (ampex232: removed <if=/usr/share/tabset/ampex>, no file and no <hts> --esr) -+ampex232|ampex-232|Ampex Model 232, -+ am, -+ cols#80, lines#24, xmc#1, -+ cbt=\EI, civis=\E.0, clear=\E+, cnorm=\E.4, cub1=^H, cud1=^V, -+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ dch1=\EW, dl1=\ER$<5*/>, ed=\EY, el=\ET, -+ flash=\Eb$<200/>\Ed, ht=^I, ich1=\EQ, il1=\EE$<5*/>, -+ invis@, is2=\Eg\El, kbs=^H, kcub1=^H, kcud1=^V, kcuf1=^L, -+ kcuu1=^K, kf0=^A@\r, kf1=^AA\r, kf2=^AB\r, kf3=^AC\r, -+ kf4=^AD\r, kf5=^AE\r, kf6=^AF\r, kf7=^AG\r, kf8=^AH\r, -+ kf9=^AI\r, khome=^^, use=adm+sgr, -+# (ampex: removed <if=/usr/share/tabset/amp-132>, no file and no <hts> -- esr) -+ampex232w|Ampex Model 232 / 132 columns, -+ cols#132, lines#24, -+ is2=\E\034Eg\El, use=ampex232, -+ -+#### Ann Arbor (aa) - # --# P9 terminal in P8 emulation mode and 132 column mode. -+# Ann Arbor made dream terminals for hackers -- large screen sizes and huge -+# numbers of function keys. At least some used monitors in portrait mode, -+# allowing up to 76-character screen heights! They were reachable at: - # --prism9-8-w|p9-8-w|P9-8-W|MDC Prism-9 in Prism 8 emulation and 132 column mode, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, use=p8-w, -- --# p12: Prism-12 in ANSI mode --# --------------------------- -+# Ann Arbor Terminals -+# 6175 Jackson Road -+# Ann Arbor, MI 48103 -+# (313)-663-8000 - # --# See p9 definition. -+# But in 1996 the phone number reaches some kitschy retail shop, and Ann Arbor -+# can't be found on the Web; I fear they're long dead. R.I.P. - # --prism12|p12|P12|MDC Prism-12 in ANSI mode, -- use=p9, - --# p12-w: Prism-12 in 132 column mode --# ---------------------------------- -+ -+# Originally from Mike O'Brien@Rand and Howard Katseff at Bell Labs. -+# Highly modified 6/22 by Mike O'Brien. -+# split out into several for the various screen sizes by dave-yost@rand -+# Modifications made 3/82 by Mark Horton -+# Modified by Tom Quarles at UCB for greater efficiency and more diversity -+# status line moved to top of screen, <flash> removed 5/82 -+# Some unknown person at SCO then hacked the init strings to make them more -+# efficient. - # --# 'Wide' version of p12. -+# assumes the following setup: -+# A menu: 0000 1010 0001 0000 -+# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19 -+# C menu: 56 66 0 0 9600 0110 1100 -+# D menu: 0110 1001 1 0 - # --prism12-w|p12-w|P12-W|MDC Prism-12 in 132 column mode, -- use=p9-w, -- --# p12-m: Prism-12 in MDC emulation mode --# ------------------------------------- -+# Briefly, the settings are for the following modes: -+# (values are for bit set/clear with * indicating our preference -+# and the value used to test these termcaps) -+# Note that many of these settings are irrelevent to the terminfo -+# and are just set to the default mode of the terminal as shipped -+# by the factory. - # --# P12 terminal in MDC emulation mode. --# Similar to p8 definition. --# Insertion and deletion operations possible. -+# A menu: 0000 1010 0001 0000 -+# Block/underline cursor* -+# blinking/nonblinking cursor* -+# key click/no key click* -+# bell/no bell at column 72* - # --prism12-m|p12-m|P12-M|MDC Prism-12 in MDC emulation mode, -- use=p9-8, -- --# p12-m-w: Prism-12 in MDC emulation and 132 column modes --# ------------------------------------------------------- -+# key pad is cursor control*/key pad is numeric -+# return and line feed/return for <cr> key * -+# repeat after .5 sec*/no repeat -+# repeat at 25/15 chars per sec. * - # --# P12 terminal in MDC emulation mode and 132 column mode. -+# hold data until pause pressed/process data unless pause pressed* -+# slow scroll/no slow scroll* -+# Hold in area/don't hold in area* -+# functions keys have default*/function keys disabled on powerup - # --prism12-m-w|p12-m-w|P12-M-W|MDC Prism-12 in MDC emulation and 132 column mode, -- use=p9-8-w, -- --# p14: Prism-14 in ANSII mode --# --------------------------- -+# show/don't show position of cursor during page transmit* -+# unused -+# unused -+# unused - # --# See p9 definition. -+# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19 -+# Baud rate (9600*) - # --prism14|p14|P14|MDC Prism-14 in ANSII mode, -- use=p9, -- --# p14-w: Prism-14 in 132 column mode --# ---------------------------------- -+# 2 bits of parity - 00=odd,01=even*,10=space,11=mark -+# 1 stop bit*/2 stop bits -+# parity error detection off*/on - # --# 'Wide' version of p14. -+# keyboard local/on line* -+# half/full duplex* -+# disable/do not disable keyboard after data transmission* - # --prism14-w|p14-w|P14-W|MDC Prism-14 in 132 column mode, -- use=p9-w, -- --# p14-m: Prism-14 in MDC emulation mode --# ------------------------------------- -+# transmit entire page/stop transmission at cursor* -+# transfer/do not transfer protected characters* -+# transmit all characters/transmit only selected characters* -+# transmit all selected areas/transmit only 1 selected area* - # --# P14 terminal in MDC emulation mode. --# Similar to p8 definition. --# Insertion and deletion operations possible. -+# transmit/do not transmit line separators to host* -+# transmit/do not transmit page tab stops tabs to host* -+# transmit/do not transmit column tab stop tabs to host* -+# transmit/do not transmit graphics control (underline,inverse..)* - # --prism14-m|p14-m|P14-M|MDC Prism-14 in MDC emulation mode, -- use=p9-8, -- --# p14-m-w: Prism-14 in MDC emulation and 132 column modes --# ------------------------------------------------------- -+# enable*/disable auto XON/XOFF control -+# require/do not require receipt of a DC1 from host after each LF* -+# pause key acts as a meta key/pause key is pause* -+# unused - # --# P14 terminal in MDC emulation mode and 132 column mode. -+# unused -+# unused -+# unused -+# unused - # --prism14-m-w|p14-m-w|P14-M-W|MDC Prism-14 in MDC emulation and 132 column mode, -- use=p9-8-w, -- --# End of McDonnell Information Systems Prism definitions -- --# These things were popular in the Pick database community at one time --# From: George Land <georgeland@aol.com> 24 Sep 1996 --p8gl|prism8gl|McDonnell-Douglas Prism-8 alternate definition, -- am, bw, hs, mir, -- cols#80, lines#24, ma#1, wsl#78, xmc#1, -- bel=^G, blink=^CB, clear=^L, cr=^M, cub1=^U, cud1=^J, cuf1=^F, -- cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, dch1=\s^H, dim=^CA, dl1=^P, -- ed=\EJ, el=\EK, home=^A, ind=^J, invis=^CH, kbs=^H, kcub1=^U, -- kcud1=^J, kcuf1=^F, kcuu1=^Z, kdch1=\s^H, kdl1=^P, ked=\EJ, -- kel=\EK, kf1=^A@\r, kf10=^AI\r, kf12=^AJ\r, kf13=^AK\r, -- kf14=^AL\r, kf15=^AM\r, kf16=^AN\r, kf17=^AO\r, kf2=^AA\r, -- kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -- kf8=^AG\r, kf9=^AH\r, khome=^A, lf1=F1, lf10=F10, lf2=F2, -- lf3=F3, lf4=F4, lf5=F5, lf6=F6, lf7=F7, lf8=F8, lf9=F9, nel=^J^M, -- pad=\0, rev=^CD, rmso=^C\s, rmul=^C\s, sgr0=^C\s, smso=^CE, -- smul=^C0, -- --#### Microterm (act, mime) -+# XON character (17*) -+# XOFF character (19*) - # --# The mime1 entries refer to the Microterm Mime I or Mime II. --# The default mime is assumed to be in enhanced act iv mode. -+# C menu: 56 66 0 0 9600 0110 1100 -+# number of lines to print data on (printer) (56*) - # -- --# New "safe" cursor movement (5/87) from <reuss@umd5.umd.edu>. Prevents --# freakout with out-of-range args on Sytek multiplexors. No <smso=^N> and --# <rmso=^N> since it gets confused and it's too dim anyway. No <ich1> --# since Sytek insists ^S means xoff. --# (act4: found ":ic=2^S:ei=:im=:ip=.1*^V:" commented out in 8.3 -- esr) --act4|microterm|microterm act iv, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=\014$<12/>, cr=^M, cub1=^H, cud1=^K, cuf1=^X, -- cup=\024%p1%{24}%+%c%p2%p2%?%{47}%>%t%{48}%+%;%{80}%+%c, -- cuu1=^Z, dch1=\004$<.1*/>, dl1=\027$<2.3*/>, -- ed=\037$<2.2*/>, el=\036$<.1*/>, home=^], -- il1=\001<2.3*/>, ind=^J, kcub1=^H, kcud1=^K, kcuf1=^X, -- kcuu1=^Z, --# The padding on :sr: and :ta: for act5 and mime is a guess and not final. --# The act 5 has hardware tabs, but they are in columns 8, 16, 24, 32, 41 (!)... --# (microterm5: removed obsolete ":ma==^Z^P^Xl^Kj:" -- esr) --act5|microterm5|microterm act v, -- kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, ri=\EH$<3>, uc=^H\EA, -- use=act4, --# Mimes using brightness for standout. Half bright is really dim unless --# you turn up the brightness so far that lines show up on the screen. --mime-fb|full bright mime1, -- is2=^S\E, rmso=^S, smso=^Y, use=mime, --mime-hb|half bright mime1, -- is2=^Y\E, rmso=^Y, smso=^S, use=mime, --# (mime: removed obsolete ":ma=^X ^K^J^Z^P:"; removed ":do=^K:" that overrode --# the more plausible ":do=^J:" -- esr) --# uc was at one time disabled to get around a curses bug, be wary of it --mime|mime1|mime2|mimei|mimeii|microterm mime1, -- OTbs, am, -- cols#80, it#8, lines#24, vt#9, -- bel=^G, clear=^]^C, cr=^M, cub1=^H, cud1=^J, cuf1=^X, -- cup=\024%p1%{24}%+%c%p2%p2%?%{32}%>%t%{48}%+%;%{80}%+%c, -- cuu1=^Z, dl1=\027$<80>, ed=^_, el=^^, home=^], ht=\011$<2>, -- il1=\001$<80>, ind=^J, is2=^S\E^Q, kcub1=^H, kcud1=^K, -- kcuf1=^X, kcuu1=^Z, ri=\022$<3>, uc=^U, --# These termcaps (for mime2a) put the terminal in low intensity mode --# since high intensity mode is so obnoxious. --mime2a-s|microterm mime2a (emulating an enhanced soroc iq120), -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EI, dch1=\ED, -- dl1=\027$<20*>, ed=\EJ$<20*>, el=\EK, home=^^, -- il1=\001$<20*>, ind=^J, ip=$<2>, is2=\E), kcub1=^H, kcud1=^J, -- kcuf1=^L, kcuu1=^K, ri=\EI, rmir=^Z, rmso=\E;, rmul=\E7, -- smir=\EE, smso=\E\:, smul=\E6, --# This is the preferred mode (but ^X can't be used as a kill character) --mime2a|mime2a-v|microterm mime2a (emulating an enhanced vt52), -- OTbs, -- cols#80, it#8, lines#24, -- bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=^N, -- dl1=\027$<20*>, ed=\EQ$<20*>, el=\EP, home=\EH, ht=^I, -- il1=\001$<20*>, ind=^J, ip=$<2>, is2=^Y, kcub1=\ED, -- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, ri=\EA, rmir=^Z, rmso=\E9, -- rmul=\E5, smir=^O, smso=\E8, smul=\E4, --# (mime3a: removed obsolete ":ma=^X ^K^J^Z^P:" -- esr) --mime3a|mime1 emulating 3a, -- am@, -- kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, use=adm3a, --mime3ax|mime-3ax|mime1 emulating enhanced 3a, -- it#8, -- dl1=\027$<80>, ed=^_, el=^X, ht=\011$<3>, il1=\001$<80>, -- use=mime3a, --# Wed Mar 9 18:53:21 1983 --# We run our terminals at 2400 baud, so there might be some timing problems at --# higher speeds. The major improvements in this model are the terminal now --# scrolls down and insert mode works without redrawing the rest of the line --# to the right of the cursor. This is done with a bit of a kludge using the --# exit graphics mode to get out of insert, but it does not appear to hurt --# anything when using vi at least. If you have some users using act4s with --# programs that use curses and graphics mode this could be a problem. --mime314|mm314|mime 314, -- am, -- cols#80, lines#24, -- clear=^L, cub1=^H, cuf1=^X, cup=\024%p1%c%p2%c, cuu1=^Z, -- dch1=^D, dl1=^W, ed=^_, el=^^, home=^], ht=^I, il1=^A, kcub1=^H, -- kcud1=^K, kcuf1=^X, kcuu1=^Z, rmir=^V, smir=^S, --# Microterm mime 340 from University of Wisconsin --mm340|mime340|mime 340, -- cols#80, lines#24, -- clear=\032$<12/>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -- dch1=\E#$<2.1*/>, dl1=\EV$<49.6/>, ed=\037$<2*/>, -- el=\EL$<2.1/>, ht=^I, il1=\EU$<46/>, ind=^J, is2=\E\,, -- kbs=^H, kcub1=^H, kcud1=^J, kcuu1=^K, nel=^M^J, --# This came from University of Wisconsin marked "astro termcap for jooss". --# (mt4520-rv: removed obsolete ":kn#4:" and incorrect ":ri=\E[C:"; --# also added <rmam>/<smam> based on the init string -- esr) --mt4520-rv|micro-term 4520 reverse video, -- am, hs, msgr, xenl, xon, -- cols#80, it#8, lines#24, wsl#80, -- bel=^G, clear=\E[H\E[J, cnorm=\E[0V\E8, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- cvvis=\E7\E[0U, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5l$<200/>\E[?5h, -- fsl=\E[?5l\E[?5h, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\ED, -- is2=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[1;24r\E[24;1H\E[H\E[J, -- kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, -- ll=\E[24;1H, nel=\EE, rc=\E8, rf=/usr/share/tabset/vt100, -- ri=\EM, rmam=\E[?7l, rmso=\E[0m, rmul=\E[24m, -- rs1=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[H\E[J, -- sc=\E7, sgr0=\E[m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, -- tbc=\E[g, tsl=\E[25;1H, -- --# Fri Aug 5 08:11:57 1983 --# This entry works for the ergo 4000 with the following setups: --# ansi,wraparound,newline disabled, xon/xoff disabled in both --# setup a & c. -+# number of lines on a sheet of paper (printer) (66*) - # --# WARNING!!! There are multiple versions of ERGO 4000 microcode --# Be advised that very early versions DO NOT WORK RIGHT !! --# Microterm does have a ROM exchange program- use it or lose big --# (ergo400: added <rmam>/<smam> based on the init string -- esr) --ergo4000|microterm ergo 4000, -- da, db, msgr, -- cols#80, lines#66, -- bel=^G, clear=\E[H\E[2J$<80>, cr=^M, cub1=^H, cud1=\E[B, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -- dch1=\E[1P$<80>, dl1=\E[1M$<5*>, ed=\E[0J$<15>, -- el=\E[0K$<13>, ht=^I, il1=\E[1L$<5*>, ind=\ED$<20*>, -- is2=\E<\E=\E[?1l\E[?4l\E[?5l\E[?7h\E[?8h$<300>, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, -- kf2=\EOQ, kf3=\EOR, kf4=\EOS, lf1=pf1, lf2=pf2, lf3=pf3, -- lf4=pf4, ri=\EM$<20*>, rmam=\E[?7l, rmir=\E[4l, -- rmkx=\E=$<4>, rmso=\E[m$<20>, sgr0=\E[m$<20>, -- smam=\E[?7m, smir=\E[4h$<6>, smkx=\E=$<4>, -- smso=\E[7m$<20>, -- --#### NCR -+# left margin (printer) (0*) - # --# NCR's terminal group was merged with AT&T's when AT&T bought the company. --# For what happened to that group, see the ADDS section. -+# number of pad chars on new line to printer (0*) - # --# There is an NCR4103 terminal that's just a re-badged Wyse-50. -+# printer baud rate (9600*) - # -- --# The following vendor-supplied termcaps were captured from the Boundless --# Technologies site, 8 March 1998. I removed all-upper-case names that were --# identical, except for case, to lower-case ones. I also uncommented the acsc --# capabilities.X -+# printer parity: 00=odd,01=even*,10=space,11=mark -+# printer stop bits: 2*/1 -+# print/do not print guarded areas* - # --# The Intecolor emulation of the NCR 2900/260C color terminal is basically a --# DEC vt200/300 with color capabilities added. --ncr260intan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard, -- colors#8, pairs#64, -- op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- use=ncr260vt300an, --# The Intecolor emulation of the NCR 2900/260C color terminal is basically a --# DEC vt200/300 with color capabilities added. --ncr260intwan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard, -- colors#8, pairs#64, -- op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- use=ncr260vt300wan, --# The Intecolor emulation of the NCR 2900/260C color terminal is basically a --# DEC vt200/300 with color capabilities added. --ncr260intpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard, -- colors#8, pairs#64, -- op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- use=ncr260vt300pp, --# The Intecolor emulation of the NCR 2900/260C color terminal is basicly a --# DEC vt200/300 with color capabilities added. --ncr260intwpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard in 132 column mode, -- colors#8, pairs#64, -- op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- use=ncr260vt300wpp, --# This definition for ViewPoint supports several attributes. This means --# that it has magic cookies (extra spaces where the attributes begin). --# Some applications do not function well with magic cookies. The System --# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. --# If supporting various attributes is not vital, 'xmc#1' and the extra --# attributes can be removed. --# Mapping to ASCII character set ('acsc' capability) can also be --# restored if needed. --ncr260vppp|NCR 2900_260 viewpoint, -- am, bw, hs, km, mc5i, mir, msgr, xon, -- cols#80, lines#24, nlab#32, xmc#1, -- acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, -- cbt=\EI, civis=\E`0, clear=\014$<40>, cnorm=\E`5, -- cr=\r$<2>, cub1=\010$<2>, cud1=\n$<2>, cuf1=\006$<2>, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<5>, cuu1=\032$<2>, -- dch1=\EW$<2>, dim=\EGp, dl1=\El$<2>, dsl=\E`c, ed=\Ek$<2>, -- el=\EK$<2>, fsl=^M, home=\036$<2>, ht=^I, hts=\E1, -- il1=\EM$<2>, ind=\n$<2>, invis=\EG1, -- 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, -- kbs=^H, kc1=\ET, kc3=\EJ, kcub1=^U, kcud1=^J, kcuf1=^F, -- kcuu1=^Z, kdch1=\EW, kend=\EK, kf1=^B1\r, kf10=^B\:\r, -- kf11=^B;\r, kf12=^B<\r, kf13=^B=\r, kf14=^B>\r, kf15=^B?\r, -- kf16=^B@\r, kf17=^B!\r, kf18=^B"\r, kf19=^B#\r, kf2=^B2\r, -- kf20=^B$\r, kf21=\002%^M, kf22=^B&\r, kf23=^B'\r, -- kf24=^B(\r, kf25=^B)\r, kf26=^B*\r, kf27=^B+\r, -- kf28=^B\,\r, kf29=^B-\r, kf3=^B3\r, kf30=^B.\r, kf31=^B/\r, -- kf32=^B0\r, kf4=^B4\r, kf5=^B5\r, kf6=^B6\r, kf7=^B7\r, -- kf8=^B8\r, 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, -- 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, tsl=\EF, --ncr260vpwpp|NCR 2900_260 viewpoint wide mode, -- cols#132, -- cup=\Ea%i%p1%dR%p2%dC$<30>, -- is2=\Ee6\E~%$<100>\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>, -- rs2=\Ee6\E~%$<100>\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>, -- use=ncr260vppp, --ncr260vt100an|NCR 2900_260 vt100 with ansi kybd, -- am, hs, mir, msgr, xenl, xon, -- cols#80, lines#24, nlab#32, -- acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, -- blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD$<5>, -- cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>, -- cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>, -- cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>, -- cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>, -- dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~, -- ech=\E[%p1%dX, ed=\E[0J$<5>, el=\E[0K$<3>, el1=\E[1K$<3>, -- fsl=\E[0$}, home=\E[H$<1>, hpa=\E[%p1%dG$<40>, ht=^I, -- hts=\EH, ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, -- il1=\E[L$<5>, ind=\ED$<5>, indn=\E[%p1%dE$<5>, -- invis=\E[8m, -- is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kdch1=\E[3~, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, -- knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, nel=\EE$<5>, -- rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=^O, rmir=\E[4l, -- rmkx=\E[?1l\E>, rmso=\E[0m, rmul=\E[0m, -- rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>, -- sgr0=\E[0m\017$<20>, smacs=^N, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[1;7m, smul=\E[4m, tbc=\E[3g, -- tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, use=vt220+keypad, --ncr260vt100wan|NCR 2900_260 vt100 wide mode ansi kybd, -- cols#132, -- cup=\E[%i%p1%d;%p2%dH$<30>, -- is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- use=ncr260vt100an, --ncr260vt100pp|NCR 2900_260 vt100 with PC+ kybd, -- is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~, -- kend=\E[5~, khome=\E[2~, kich1=\E[1~, knp=\E[6~, kpp=\E[3~, -- lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, -- rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- smkx=\E=, use=ncr260vt100an, --ncr260vt100wpp|NCR 2900_260 vt100 wide mode pc+ kybd, -- cols#132, -- cup=\E[%i%p1%d;%p2%dH$<30>, -- is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- use=ncr260vt100pp, --ncr260vt200an|NCR 2900_260 vt200 with ansi kybd, -- am, hs, mir, msgr, xenl, xon, -- cols#80, lines#24, nlab#32, -- acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, -- blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>, -- csr=\E[%i%p1%d;%p2%dr$<5>, cub=\E[%p1%dD$<5>, -- cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>, -- cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>, -- cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>, -- cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>, -- dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~, -- ech=\E[%p1%dX$<5>, ed=\E[0J, el=\E[0K$<5>, el1=\E[1K$<5>, -- fsl=\E[0$}, home=\E[H, hpa=\E[%p1%dG$<40>, ht=^I, hts=\EH, -- ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>, -- ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m, -- is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kdch1=\E[3~, kf0=\EOy, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -- kf2=\EOQ, kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, -- kf23=\E[33~, kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, -- kf27=\E[2~, kf28=\E[3~, kf29=\E[4~, kf3=\EOR, kf30=\E[5~, -- kf31=\E[6~, kf32=\E[7~, kf33=\E[8~, kf34=\E[9~, -- kf35=\E[10~, kf4=\EOS, kf5=\E[M, kf6=\E[17~, kf7=\E[18~, -- kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, -- kich1=\E[2~, knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, -- mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, -- ri=\EM$<5>, rmacs=\017$<20>, rmam=\E[?7l, rmir=\E[4l, -- rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, -- rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>, -- sgr0=\E[0m\017$<20>, smacs=\016$<20>, smam=\E[?7h, -- smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, -- use=vt220+keypad, --ncr260vt200wan|NCR 2900_260 vt200 wide mode ansi kybd, -- cols#132, -- cup=\E[%i%p1%d;%p2%dH$<30>, -- is2=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H$<200>, -- rs2=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H$<200>, -- use=ncr260vt200an, --ncr260vt200pp|NCR 2900_260 vt200 with pc+ kybd, -- ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~, -- kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -- lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=, -- use=ncr260vt200an, --ncr260vt200wpp|NCR 2900_260 vt200 wide mode pc+ kybd, -- cols#132, -- cup=\E[%i%p1%d;%p2%dH$<30>, -- is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- use=ncr260vt200pp, --ncr260vt300an|NCR 2900_260 vt300 with ansi kybd, -- am, hs, mir, msgr, xenl, xon, -- cols#80, lines#24, nlab#32, -- acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, -- blink=\E[5m, bold=\E[1m, civis=\E[?25l, -- clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>, -- csr=\E[%i%p1%d;%p2%dr$<5>, cub=\E[%p1%dD$<5>, -- cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>, -- cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>, -- cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>, -- cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>, -- dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~, -- ech=\E[%p1%dX$<5>, ed=\E[0J, el=\E[0K$<5>, el1=\E[1K$<5>, -- fsl=\E[0$}, home=\E[H, hpa=\E[%p1%dG$<40>, ht=^I, hts=\EH, -- ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>, -- ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m, -- is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kdch1=\E[3~, kf0=\EOy, kf10=\E[21~, kf11=\E[23~, -- kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -- kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, kf23=\E[33~, -- kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, kf27=\E[2~, -- kf28=\E[3~, kf29=\E[4~, kf30=\E[5~, kf31=\E[6~, kf32=\E[7~, -- kf33=\E[8~, kf34=\E[9~, kf35=\E[10~, kf5=\E[M, kf6=\E[17~, -- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, -- khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -- krdo=\E[29~, kslt=\E[4~, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, -- nel=\EE, rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=\017$<20>, -- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, -- rmul=\E[24m, -- rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>, -- sgr0=\E[0m\017$<20>, smacs=\016$<20>, smam=\E[?7h, -- smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, -- use=vt220+keypad, --ncr260vt300wan|NCR 2900_260 vt300 wide mode ansi kybd, -- cols#132, -- cup=\E[%i%p1%d;%p2%dH$<30>, -- is2=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H$<200>, -- rs2=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H$<200>, -- use=ncr260vt300an, --ncr260vt300pp|NCR 2900_260 vt300 with pc+ kybd, -- ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~, -- kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -- lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=, -- use=ncr260vt300an, --NCR260VT300WPP|ncr260vt300wpp|NCR 2900_260 vt300 wide mode pc+ kybd, -- cols#132, -- cup=\E[%i%p1%d;%p2%dH$<30>, -- is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -- use=ncr260vt300pp, --# This terminfo file contains color capabilities for the Wyse325 emulation of --# the NCR 2900/260C color terminal. Because of the structure of the command --# (escape sequence) used to set color attributes, one of the fore/background --# colors must be preset to a given value. I have set the background color to --# black. The user can change this setup by altering the last section of the --# 'setf' definition. The escape sequence to set color attributes is --# ESC d y <foreground_color> <background_color> 1 --# In addition, the background color can be changed through the desk accessories. --# The capablitiy 'op' sets colors to green on black (default combination). -+# new line is: 01=LF,10=CR,11=CRLF* -+# unused -+# unused - # --# NOTE: The NCR Unix System Administrator's Shell will not function properly --# if the 'pairs' capability is defined. Un-Comment the 'pairs' --# capability and recompile if you wish to have it included. -+# D menu: 0110 1001 1 0 -+# LF is newline/LF is down one line, same column* -+# wrap to preceding line if move left from col 1*/don't wrap -+# wrap to next line if move right from col 80*/don't wrap -+# backspace is/is not destructive* - # --ncr260wy325pp|NCR 2900_260 wyse 325, -- am, bw, hs, km, mc5i, mir, msgr, xon, -- colors#16, cols#80, lines#24, ncv#33, nlab#32, -- acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, -- cbt=\EI, civis=\E`0, clear=\E*$<10>, cnorm=\E`1, cr=^M, -- cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<10>, cuu1=\013$<5>, -- cvvis=\E`5, dch1=\EW$<50>, dl1=\ER$<5>, dsl=\E`c, -- ed=\Ey$<5>, el=\Et$<5>, fsl=^M, home=\036$<5>, ht=^I, -- hts=\E1, il1=\EE$<5>, ind=\n$<5>, invis=\EG1, -- 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, -- kRIT=^L, ka1=^^, kb2=\EJ, kbs=^H, kc1=\ET, kc3=\EK, kcbt=\EI, -- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kend=\ET, -- kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, -- kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, -- kf19=^Ab\r, kf2=^AA\r, kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, -- kf23=^Af\r, kf24=^Ag\r, kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, -- kf28=^Ak\r, kf29=^Al\r, kf3=^AB\r, kf30=^Am\r, kf31=^An\r, -- kf32=^Ao\r, kf4=^AC\r, kf5=^AD\r, 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$<10>, -- nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH\003\EcB0, -- rmam=\Ed., rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20, -- rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -- setb=\s, -- setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}%e%p1%{3}%=%t%{52}%e%p1%{4}%=%t%{53}%e%p1%{5}%=%t%{54}%e%p1%{6}%=%t%{55}%e%p1%{7}%=%t%{64}%e%p1%{8}%=%t%{57}%e%p1%{9}%=%t%{58}%e%p1%{10}%=%t%{59}%e%p1%{11}%=%t%{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, -- tsl=\EF, --ncr260wy325wpp|NCR 2900_260 wyse 325 wide mode, -- cols#132, -- cup=\Ea%i%p1%dR%p2%dC$<30>, -- is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -- rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -- use=ncr260wy325pp, --# This definition for Wyse 350 supports several attributes. This means --# that it has magic cookies (extra spaces where the attributes begin). --# Some applications do not function well with magic cookies. The System --# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. --# If supporting various attributes is not vital, 'xmc#1' and the extra --# attributes can be removed. --# Mapping to ASCII character set ('acsc' capability) can also be --# restored if needed. --# In addition, color capabilities have been added to this file. The drawback, --# however, is that the background color has to be black. The foreground colors --# are numbered 0 through 15. -+# display*/ignore DEL character -+# display will not/will scroll* -+# page/column tab stops* -+# erase everything*/erase unprotected only - # --# NOTE: The NCR Unix System Administrator's Shell does not function properly --# with the 'pairs' capability defined as below. If you wish to --# have it included, Un-comment it and recompile (using 'tic'). -+# editing extent: 0=display,1=line*,2=field,3=area - # --ncr260wy350pp|NCR 2900_260 wyse 350, -- am, bw, hs, km, mc5i, mir, msgr, xon, -- colors#16, cols#80, lines#24, ncv#33, nlab#32, pairs#16, xmc#1, -- acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, -- cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, -- cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<40>, cuu1=\013$<5>, -- cvvis=\E`5, dch1=\EW$<50>, dim=\EGp, dl1=\ER$<5>, dsl=\E`c, -- ed=\Ey$<5>, el=\Et$<5>, fsl=^M, home=\036$<10>, ht=^I, -- hts=\E1, il1=\EE$<5>, ind=\n$<5>, invis=\EG1, -- 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{, kPRT=\E7, kRIT=^L, ka1=^^, kbs=^H, -- kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, -- kcuu1=^K, kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, -- kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, -- kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, -- kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, -- kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, -- kf3=^AB\r, kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, -- kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, -- 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$<20>, -- nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH\003\EcB0, -- rmam=\Ed., rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20, -- rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -- setb=\s, -- setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}%e%p1%{3}%=%t%{52}%e%p1%{4}%=%t%{53}%e%p1%{5}%=%t%{54}%e%p1%{6}%=%t%{55}%e%p1%{7}%=%t%{102}%e%p1%{8}%=%t%{97}%e%p1%{9}%=%t%{98}%e%p1%{10}%=%t%{99}%e%p1%{11}%=%t%{101}%e%p1%{12}%=%t%{106}%e%p1%{13}%=%t%{110}%e%p1%{14}%=%t%{111}%e%p1%{15}%=%t%{56}%;\Em0%c$<100>, -- sgr0=\EG0\EH\003\EcD, smacs=\EH\002\EcB1, smam=\Ed/, -- smir=\Eq, smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0, -- tsl=\EF, --ncr260wy350wpp|NCR 2900_260 wyse 350 wide mode, -- cols#132, -- cup=\Ea%i%p1%dR%p2%dC$<30>, -- is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, -- rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, -- use=ncr260wy350pp, --# This definition for Wyse 50+ supports several attributes. This means --# that it has magic cookies (extra spaces where the attributes begin). --# Some applications do not function well with magic cookies. The System --# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. --# If supporting various attributes is not vital, 'xmc#1' and the extra --# attributes can be removed. --# Mapping to ASCII character set ('acsc' capability) can also be --# restored if needed. --# (ncr260wy50+pp: originally contained commented-out --# <acsc=j5k3l2m1n8q:t4u9v=w0x6>, as well as the commented-out one there -- esr) --ncr260wy50+pp|NCR 2900_260 wyse 50+, -- am, bw, hs, km, mc5i, mir, msgr, xon, -- cols#80, lines#24, nlab#32, xmc#1, -- acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, blink=\EG2, -- cbt=\EI$<5>, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, -- cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<30>, cuu1=\013$<5>, -- cvvis=\E`5, dch1=\EW$<50>, dim=\EGp, dl1=\ER$<5>, dsl=\E`c, -- ed=\EY$<5>, el=\ET$<5>, fsl=^M, home=\036$<10>, -- ht=\011$<5>, hts=\E1$<5>, il1=\EE$<5>, ind=\n$<5>, -- invis=\EG1, -- 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, -- kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, -- kcuu1=^K, kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, -- kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, -- kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, -- kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, -- kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, -- kf3=^AB\r, kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, -- kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, -- 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, -- 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>, tsl=\EF, --ncr260wy50+wpp|NCR 2900_260 wyse 50+ wide mode, -- cols#132, -- cup=\Ea%i%p1%dR%p2%dC$<30>, -- is2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, -- rs2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, -- use=ncr260wy50+pp, --ncr260wy60pp|NCR 2900_260 wyse 60, -- am, bw, hs, km, mc5i, mir, msgr, xon, -- cols#80, lines#24, nlab#32, -- acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, -- cbt=\EI$<15>, civis=\E`0, clear=\E*$<100>, cnorm=\E`1, -- cr=^M, cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<10>, cuu1=\013$<5>, -- cvvis=\E`5, dch1=\EW$<50>, dl1=\ER$<5>, dsl=\E`c, -- ed=\Ey$<5>, el=\Et$<5>, fsl=^M, home=\036$<25>, -- ht=\011$<15>, hts=\E1$<15>, il1=\EE$<5>, ind=\n$<5>, -- invis=\EG1, -- 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, -- kRIT=^L, ka1=^^, kb2=\EJ, kbs=^H, kc1=\ET, kc3=\EK, -- kcbt=\EI$<15>, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, -- kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -- kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, -- kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, kf20=^Ac\r, -- kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, kf25=^Ah\r, -- kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, kf3=^AB\r, -- kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, kf5=^AD\r, -- 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, -- 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>, -- tsl=\EF, --ncr260wy60wpp|NCR 2900_260 wyse 60 wide mode, -- cols#132, -- cup=\Ea%i%p1%dR%p2%dC$<30>, -- is2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -- rs2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -- use=ncr260wy60pp, --ncr160vppp|NCR 2900_160 viewpoint, -- use=ncr260vppp, --ncr160vpwpp|NCR 2900_160 viewpoint wide mode, -- use=ncr260vpwpp, --ncr160vt100an|NCR 2900_160 vt100 with ansi kybd, -- use=ncr260vt100an, --ncr160vt100pp|NCR 2900_160 vt100 with PC+ kybd, -- use=ncr260vt100pp, --ncr160vt100wan|NCR 2900_160 vt100 wide mode ansi kybd, -- use=ncr260vt100wan, --ncr160vt100wpp|NCR 2900_160 vt100 wide mode pc+ kybd, -- use=ncr260vt100wpp, --ncr160vt200an|NCR 2900_160 vt200 with ansi kybd, -- use=ncr260vt200an, --ncr160vt200pp|NCR 2900_160 vt200 with pc+ kybd, -- use=ncr260vt200pp, --ncr160vt200wan|NCR 2900_160 vt200 wide mode ansi kybd, -- use=ncr260vt200wan, --ncr160vt200wpp|NCR 2900_160 vt200 wide mode pc+ kybd, -- use=ncr260vt200wpp, --ncr160vt300an|NCR 2900_160 vt300 with ansi kybd, -- use=ncr260vt300an, --ncr160vt300pp|NCR 2900_160 vt300 with pc+ kybd, -- use=ncr260vt300pp, --ncr160vt300wan|NCR 2900_160 vt300 wide mode ansi kybd, -- use=ncr260vt300wan, --ncr160vt300wpp|NCR 2900_160 vt300 wide mode pc+ kybd, -- use=ncr260vt300wpp, --ncr160wy50+pp|NCR 2900_160 wyse 50+, -- use=ncr260wy50+pp, --ncr160wy50+wpp|NCR 2900_160 wyse 50+ wide mode, -- use=ncr260wy50+wpp, --ncr160wy60pp|NCR 2900_160 wyse 60, -- use=ncr260wy60pp, --ncr160wy60wpp|NCR 2900_160 wyse 60 wide mode, -- use=ncr260wy60wpp, --ncrvt100an|ncrvt100pp|NCR vt100 for the 2900 terminal, -- am, hs, mc5i, mir, msgr, xon, -- cols#80, it#8, lines#24, nlab#32, -- acsc=``aaffgghhiijjkkllmmnnqqttuuvvwwxxyyzz~~, -- bel=^G, blink=\E[5m$<30>, bold=\E[1m$<30>, -- clear=\E[2J\E[1;1H$<300>, cr=^M, -- csr=\E[%i%p1%d;%p2%dr$<100>, cub=\E[%p1%dD$<30>, -- cub1=\E[D$<2>, cud=\E[%p1%dB$<30>, cud1=\E[B$<2>, -- cuf=\E[%p1%dC$<30>, cuf1=\E[C$<2>, -- cup=\E[%i%p1%d;%p2%dH$<100>, cuu=\E[%p1%dA$<30>, -- cuu1=\E[A$<2>, dch=\E[%p1%dP$<40>, dch1=\E[1P$<10>, -- dl=\E[%p1%dM$<70>, dl1=\E[M$<40>, dsl=\E[31l$<25>, -- ed=\E[0J$<300>, el=\E[0K$<30>, el1=\E[1K$<30>, -- enacs=\E(B\E)0$<40>, fsl=1$<10>, home=\E[H$<2>$<80>, -- ht=^I, hts=\EH, il=\E[%p1%dL$<80>, il1=\E[B\E[L$<80>, -- ind=\ED, -- is2=\E[12h\E[?10l\E%/0n\E[P\031\E[?3l\E(B\E)0$<200>, -- kLFT=\E[D, kRIT=\E[C, ka1=\E[H, kbs=^H, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kent=^M, kf1=\EOP, -- kf2=\EOQ, kf3=\EOR, kf4=\EOS, mc0=\E[i$<100>, nel=\EE, -- rc=\E8, rev=\E[7m$<30>, ri=\EM$<50>, rmacs=\017$<90>, -- rmir=\E[4l$<80>, rmso=\E[0m$<30>, rmul=\E[0m$<30>, -- rs2=\Ec\E[12;31h\E[?3;4;5;10l\E[?6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031$<200>, -- sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<100>, -- sgr0=\017\E[0m$<120>, smacs=\016$<90>, smir=\E[4h$<80>, -- smso=\E[7m$<30>, smul=\E[4m$<30>, tbc=\E[3g$<40>, -- tsl=\E[>+1$<70>, --ncrvt100wan|NCRVT100WPP|ncrvt100wpp|NCR VT100 emulation of the 2900 terminal, -- cols#132, -- is2=\E[12h\E[?10l\E%/0n\E[P\031\E[?3h\E(B\E)0$<200>, -- rs2=\Ec\E[12;31h\E[?4;5;10l\E?3;6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031$<200>, -- use=ncrvt100an, -+# unused - # --# Vendor-supplied NCR termcaps end here - --# NCR7900 DIP switches: --# --# Switch A: --# 1-4 - Baud Rate --# 5 - Parity (Odd/Even) --# 6 - Don't Send or Do Send Spaces --# 7 - Parity Enable --# 8 - Stop Bits (One/Two) --# --# Switch B: --# 1 - Upper/Lower Shift --# 2 - Typewriter Shift --# 3 - Half Duplex / Full Duplex --# 4 - Light/Dark Background --# 5-6 - Carriage Return Without / With Line Feed --# 7 - Extended Mode --# 8 - Suppress Keyboard Display --# --# Switch C: --# 1 - End of line entry disabled/enabled --# 2 - Conversational mode / (Local?) Mode --# 3 - Control characters displayed / not displayed --# 4 - (2-wire?) / 4-wire communications --# 5 - RTS on and off for each character --# 6 - (50Hz?) / 60 Hz --# 7 - Exit after level zero diagnostics --# 8 - RS-232 interface --# --# Switch D: --# 1 - Reverse Channel (yes / no) --# 2 - Manual answer (no / yes) --# 3-4 - Cursor appearance --# 5 - Communication Rate --# 6 - Enable / Disable EXT turnoff --# 7 - Enable / Disable CR turnoff --# 8 - Enable / Disable backspace --# --# Since each attribute parameter is 0 or 1, we shift each attribute (standout, --# reverse, blink, dim, and underline) the appropriate number of bits (by --# multiplying the 0 or 1 by a correct factor to shift) so the bias character, --# '@' is (effectively) "or"ed with each attribute to generate the proper third --# character in the <ESC>0 sequence. The <sgr> string implements the following --# equation: -+annarbor4080|aa4080|ann arbor 4080, -+ OTbs, am, -+ cols#80, lines#40, -+ bel=^G, clear=\014$<2>, cr=^M, cub1=^H, cud1=^J, cuf1=^_, -+ cup=\017%p2%{10}%/%{16}%*%p2%{10}%m%+%c%p1%?%p1%{19}%>%t%{12}%+%;%{64}%+%c, -+ cuu1=^N, home=^K, ht=^I, hts=^]^P1, ind=^J, kbs=^^, kcub1=^H, -+ kcud1=^J, kcuf1=^_, kcuu1=^N, khome=^K, tbc=^\^P^P, -+ -+# Strange Ann Arbor terminal from BRL -+aas1901|Ann Arbor K4080 w/S1901 mod, -+ am, -+ cols#80, lines#40, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^_, cuu1=^N, -+ home=^K, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, ll=^O\0c, -+ nel=^M^J, -+ -+# If you're using the GNU termcap library, add -+# :cS=\E[%p1%d;%p2%d;%p3%d;%p4%dp: -+# to these capabilities. This is the nonstandard GNU termcap scrolling -+# capability, arguments are: -+# 1. Total number of lines on the screen. -+# 2. Number of lines above desired scroll region. -+# 3. Number of lines below (outside of) desired scroll region. -+# 4. Total number of lines on the screen, the same as the first parameter. -+# The generic Ann Arbor entry is the only one that uses this. -+aaa+unk|aaa-unk|ann arbor ambassador (internal - don't use this directly), -+ OTbs, am, km, mc5i, mir, xon, -+ cols#80, it#8, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -+ clear=\E[H\E[J$<156>, cr=^M, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^K, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, -+ el=\E[K$<5>, home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, -+ hts=\EH, ich=\E[%p1%d@$<4*>, ich1=\E[@$<4>, il=\E[%p1%dL, -+ il1=\E[L$<3>, ind=^K, invis=\E[8m, is1=\E[m\E7\E[H\E9\E8, -+ is3=\E[1Q\E[>20;30l\EP`+x~M\E\\, kbs=^H, kcbt=\E[Z, -+ kclr=\E[J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[P, kdl1=\E[M, kf1=\EOA, kf10=\EOJ, kf11=\EOK, -+ kf12=\EOL, kf13=\EOM, kf14=\EON, kf15=\EOO, kf16=\EOP, -+ kf17=\EOQ, kf18=\EOR, kf19=\EOS, kf2=\EOB, kf20=\EOT, -+ kf21=\EOU, kf22=\EOV, kf23=\EOW, kf24=\EOX, kf3=\EOC, -+ kf4=\EOD, kf5=\EOE, kf6=\EOF, kf7=\EOG, kf8=\EOH, kf9=\EOI, -+ khome=\E[H, kich1=\E[@, kil1=\E[L, krmir=\E6, mc0=\E[0i, -+ mc4=^C, mc5=\E[v, mc5p=\E[%p1%dv, rc=\E8, -+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, -+ rmkx=\EP`>y~[[J`8xy~[[A`4xy~[[D`6xy~[[C`2xy~[[B\E\\, -+ rmm=\E[>52l, rmso=\E[m, rmul=\E[m, sc=\E7, -+ sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, -+ sgr0=\E[m, -+ smkx=\EP`>z~[[J`8xz~[[A`4xz~[[D`6xz~[[C`2xz~[[B\E\\, -+ smm=\E[>52h, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ vpa=\E[%p1%{1}%+%dd, -+ -+aaa+rv|ann arbor ambassador in reverse video, -+ blink=\E[5;7m, bold=\E[1;7m, invis=\E[7;8m, -+ is1=\E[7m\E7\E[H\E9\E8, rev=\E[m, rmso=\E[7m, rmul=\E[7m, -+ rs1=\E[H\E[7m\E[J$<156>, -+ sgr=\E[%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p1%p2%|%p3%!%t7;%;%?%p7%t8;%;m\016, -+ sgr0=\E[7m\016, smso=\E[m, smul=\E[4;7m, -+# Ambassador with the DEC option, for partial vt100 compatibility. -+aaa+dec|ann arbor ambassador in dec vt100 mode, -+ acsc=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}, -+ csr=\E[%i%p1%d;%p2%dr, enacs=\E(0, rmacs=^N, -+ sgr=\E[%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p1%p3%|%!%t7;%;%?%p7%t8;%;m%?%p9%t\017%e\016%;, -+ smacs=^O, -+aaa-18|ann arbor ambassador/18 lines, -+ lines#18, -+ is2=\E7\E[60;0;0;18p\E8, -+ rmcup=\E[60;0;0;18p\E[60;1H\E[K, smcup=\E[18;0;0;18p, -+ use=aaa+unk, -+aaa-18-rv|ann arbor ambassador/18 lines+reverse video, -+ use=aaa+rv, use=aaa-18, -+aaa-20|ann arbor ambassador/20 lines, -+ lines#20, -+ is2=\E7\E[60;0;0;20p\E8, -+ rmcup=\E[60;0;0;20p\E[60;1H\E[K, smcup=\E[20;0;0;20p, -+ use=aaa+unk, -+aaa-22|ann arbor ambassador/22 lines, -+ lines#22, -+ is2=\E7\E[60;0;0;22p\E8, -+ rmcup=\E[60;0;0;22p\E[60;1H\E[K, smcup=\E[22;0;0;22p, -+ use=aaa+unk, -+aaa-24|ann arbor ambassador/24 lines, -+ lines#24, -+ is2=\E7\E[60;0;0;24p\E8, -+ rmcup=\E[60;0;0;24p\E[60;1H\E[K, smcup=\E[24;0;0;24p, -+ use=aaa+unk, -+aaa-24-rv|ann arbor ambassador/24 lines+reverse video, -+ use=aaa+rv, use=aaa-24, -+aaa-26|ann arbor ambassador/26 lines, -+ lines#26, -+ is2=\E7\E[60;0;0;26p\E8, -+ rmcup=\E[60;0;0;26p\E[26;1H\E[K, -+ smcup=\E[H\E[J$<156>\E[26;0;0;26p, use=aaa+unk, -+aaa-28|ann arbor ambassador/28 lines, -+ lines#28, -+ is2=\E7\E[60;0;0;28p\E8, -+ rmcup=\E[60;0;0;28p\E[28;1H\E[K, -+ smcup=\E[H\E[J$<156>\E[28;0;0;28p, use=aaa+unk, -+aaa-30-s|aaa-s|ann arbor ambassador/30 lines w/status, -+ eslok, hs, -+ lines#29, -+ dsl=\E7\E[60;0;0;30p\E[1;1H\E[K\E[H\E8\r\n\E[K, -+ fsl=\E[>51l, is2=\r\n\E[A\E7\E[60;1;0;30p\E8, -+ rmcup=\E[60;1;0;30p\E[29;1H\E[K, -+ smcup=\E[H\E[J$<156>\E[30;1;0;30p\E[30;1H\E[K, -+ tsl=\E[>51h\E[1;%p1%dH\E[2K, use=aaa+unk, -+aaa-30-s-rv|aaa-s-rv|ann arbor ambassador/30 lines+status+reverse video, -+ use=aaa+rv, use=aaa-30-s, -+aaa-s-ctxt|aaa-30-s-ctxt|ann arbor ambassador/30 lines+status+save context, -+ rmcup=\E[60;1;0;30p\E[59;1H\E[K, -+ smcup=\E[30;1H\E[K\E[30;1;0;30p, use=aaa-30-s, -+aaa-s-rv-ctxt|aaa-30-s-rv-ct|ann arbor ambassador/30 lines+status+save context+reverse video, -+ rmcup=\E[60;1;0;30p\E[59;1H\E[K, -+ smcup=\E[30;1H\E[K\E[30;1;0;30p, use=aaa-30-s-rv, -+aaa|aaa-30|ambas|ambassador|ann arbor ambassador/30 lines, -+ lines#30, -+ is2=\E7\E[60;0;0;30p\E8, -+ rmcup=\E[60;0;0;30p\E[30;1H\E[K, -+ smcup=\E[H\E[J$<156>\E[30;0;0;30p, use=aaa+unk, -+aaa-30-rv|aaa-rv|ann arbor ambassador/30 lines in reverse video, -+ use=aaa+rv, use=aaa-30, -+aaa-30-ctxt|aaa-ctxt|ann arbor ambassador/30 lines; saving context, -+ rmcup=\E[60;0;0;30p\E[60;1H\E[K, smcup=\E[30;0;0;30p, -+ use=aaa-30, -+aaa-30-rv-ctxt|aaa-rv-ctxt|ann arbor ambassador/30 lines reverse video; saving context, -+ rmcup=\E[60;0;0;30p\E[60;1H\E[K, smcup=\E[30;0;0;30p, -+ use=aaa+rv, use=aaa-30, -+aaa-36|ann arbor ambassador/36 lines, -+ lines#36, -+ is2=\E7\E[60;0;0;36p\E8, -+ rmcup=\E[60;0;0;36p\E[36;1H\E[K, -+ smcup=\E[H\E[J$<156>\E[36;0;0;36p, use=aaa+unk, -+aaa-36-rv|ann arbor ambassador/36 lines+reverse video, -+ use=aaa+rv, use=aaa-36, -+aaa-40|ann arbor ambassador/40 lines, -+ lines#40, -+ is2=\E7\E[60;0;0;40p\E8, -+ rmcup=\E[60;0;0;40p\E[40;1H\E[K, -+ smcup=\E[H\E[J$<156>\E[40;0;0;40p, use=aaa+unk, -+aaa-40-rv|ann arbor ambassador/40 lines+reverse video, -+ use=aaa+rv, use=aaa-40, -+aaa-48|ann arbor ambassador/48 lines, -+ lines#48, -+ is2=\E7\E[60;0;0;48p\E8, -+ rmcup=\E[60;0;0;48p\E[48;1H\E[K, -+ smcup=\E[H\E[J$<156>\E[48;0;0;48p, use=aaa+unk, -+aaa-48-rv|ann arbor ambassador/48 lines+reverse video, -+ use=aaa+rv, use=aaa-48, -+aaa-60-s|ann arbor ambassador/59 lines+status, -+ eslok, hs, -+ lines#59, -+ dsl=\E7\E[60;0;0;60p\E[1;1H\E[K\E[H\E8\r\n\E[K, -+ fsl=\E[>51l, is2=\r\n\E[A\E7\E[60;1;0;60p\E8, -+ tsl=\E[>51h\E[1;%p1%dH\E[2K, use=aaa+unk, -+aaa-60-s-rv|ann arbor ambassador/59 lines+status+reverse video, -+ use=aaa+rv, use=aaa-60-s, -+aaa-60-dec-rv|ann arbor ambassador/dec mode+59 lines+status+rev video, -+ use=aaa+dec, use=aaa+rv, use=aaa-60-s, -+aaa-60|ann arbor ambassador/60 lines, -+ lines#60, -+ is2=\E7\E[60;0;0;60p\E[1Q\E[m\E[>20;30l\E8, -+ use=aaa+unk, -+aaa-60-rv|ann arbor ambassador/60 lines+reverse video, -+ use=aaa+rv, use=aaa-60, -+aaa-db|ann arbor ambassador 30/destructive backspace, -+ OTbs@, -+ cub1=\E[D, is3=\E[1Q\E[m\E[>20l\E[>30h, use=aaa-30, -+ -+guru|guru-33|guru+unk|ann arbor guru/33 lines 80 cols, -+ lines#33, -+ flash=\E[>59h$<100>\E[>59l, -+ is2=\E7\E[255;0;0;33;80;80p\E8\E[J, is3=\E[>59l, -+ rmcup=\E[255p\E[255;1H\E[K, smcup=\E[33p, use=aaa+unk, -+guru+rv|guru changes for reverse video, -+ flash=\E[>59l$<100>\E[>59h, is3=\E[>59h, -+guru-rv|guru-33-rv|ann arbor guru/33 lines+reverse video, -+ use=guru+rv, use=guru-33, -+guru+s|guru status line, -+ eslok, hs, -+ dsl=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K, fsl=\E[>51l, -+ rmcup=\E[255;1p\E[255;1H\E[K, smcup=, -+ tsl=\E[>51h\E[1;%p1%dH\E[2K, -+guru-nctxt|guru with no saved context, -+ smcup=\E[H\E[J$<156>\E[33p\E[255;1H\E[K, use=guru, -+guru-s|guru-33-s|ann arbor guru/33 lines+status, -+ lines#32, -+ is2=\r\n\E[A\E7\E[255;1;0;33;80;80p\E8\E[J, -+ smcup=\E[33;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, -+guru-24|ann arbor guru 24 lines, -+ cols#80, lines#24, -+ is2=\E7\E[255;0;0;24;80;80p\E8\E[J, smcup=\E[24p, -+ use=guru+unk, -+guru-44|ann arbor guru 44 lines, -+ cols#97, lines#44, -+ is2=\E7\E[255;0;0;44;97;100p\E8\E[J, smcup=\E[44p, -+ use=guru+unk, -+guru-44-s|ann arbor guru/44 lines+status, -+ lines#43, -+ is2=\r\n\E[A\E7\E[255;1;0;44;80;80p\E8\E[J, -+ smcup=\E[44;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, -+guru-76|guru with 76 lines by 89 cols, -+ cols#89, lines#76, -+ is2=\E7\E[255;0;0;76;89;100p\E8\E[J, smcup=\E[76p, -+ use=guru+unk, -+guru-76-s|ann arbor guru/76 lines+status, -+ cols#89, lines#75, -+ is2=\r\n\E[A\E7\E[255;1;0;76;89;100p\E8\E[J, -+ smcup=\E[76;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, -+guru-76-lp|guru-lp|guru with page bigger than line printer, -+ cols#134, lines#76, -+ is2=\E7\E[255;0;0;76;134;134p\E8\E[J, smcup=\E[76p, -+ use=guru+unk, -+guru-76-w|guru 76 lines by 178 cols, -+ cols#178, lines#76, -+ is2=\E7\E[255;0;0;76;178;178p\E8\E[J, smcup=\E[76p, -+ use=guru+unk, -+guru-76-w-s|ann arbor guru/76 lines+status+wide, -+ cols#178, lines#75, -+ is2=\r\n\E[A\E7\E[255;1;0;76;178;178p\E8\E[J, -+ smcup=\E[76;1p\E[255;1H\E[K, use=guru+s, use=guru+unk, -+guru-76-wm|guru 76 lines by 178 cols with 255 cols memory, -+ cols#178, lines#76, -+ is2=\E7\E[255;0;0;76;178;255p\E8\E[J, smcup=\E[76p, -+ use=guru+unk, -+aaa-rv-unk|ann arbor unknown type, -+ lh#0, lw#0, nlab#0, -+ blink=\E[5;7m, bold=\E[1;7m, home=\E[H, invis=\E[7;8m, -+ is1=\E[7m\E7\E[H\E9\E8, rev=\E[m, rmso=\E[7m, rmul=\E[7m, -+ rs1=\E[H\E[7m\E[J, -+ sgr=\E[%?%p6%t1;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p1%!%t7;%;%?%p7%t8;%;m, -+ sgr0=\E[7m, smso=\E[m, smul=\E[4;7m, -+ -+#### Applied Digital Data Systems (adds) -+# -+# ADDS itself is long gone. ADDS was bought by NCR, and the same group made -+# ADDS and NCR terminals. When AT&T and NCR merged, the engineering for -+# terminals was merged again. Then AT&T sold the terminal business to -+# SunRiver, which later changed its name to Boundless Technologies. The -+# engineers from Teletype, AT&T terminals, ADDS, and NCR (who are still there -+# as of early 1995) are at: -+# -+# Boundless Technologies -+# 100 Marcus Boulevard -+# Hauppauge, NY 11788-3762 -+# Vox: (800)-231-5445 -+# Fax: (516)-342-7378 -+# Web: http://boundless.com -+# -+# Their voice mail used to describe the place as "SunRiver (formerly ADDS)". -+# In 1995 Boundless acquired DEC's terminals business. -+# -+ -+# Regent: lowest common denominator, works on all regents. -+# (regent: renamed ":bc:" to ":le:" -- esr) -+regent|Adds Regent Series, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=^L, cr=^M, cub1=^U, cud1=^J, cuf1=^F, cuu1=^Z, -+ home=\EY\s\s, ind=^J, ll=^A, -+# Regent 100 has a bug where if computer sends escape when user is holding -+# down shift key it gets confused, so we avoid escape. -+regent100|Adds Regent 100, -+ xmc#1, -+ bel=^G, -+ cup=\013%p1%' '%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%c, -+ kf0=^B1\r, kf1=^B2\r, kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, -+ kf5=^B6\r, kf6=^B7\r, kf7=^B8\r, lf0=F1, lf1=F2, lf2=F3, -+ lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, rmso=\E0@, rmul=\E0@, -+ sgr0=\E0@, smso=\E0P, smul=\E0`, use=regent, -+regent20|Adds Regent 20, -+ bel=^G, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, ed=\Ek, el=\EK, -+ use=regent, -+regent25|Adds Regent 25, -+ bel=^G, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, khome=^A, -+ use=regent20, -+regent40|Adds Regent 40, -+ xmc#1, -+ bel=^G, dl1=\El$<2*>, il1=\EM$<2*>, kf0=^B1\r, kf1=^B2\r, -+ kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, kf5=^B6\r, kf6=^B7\r, -+ kf7=^B8\r, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, lf5=F6, -+ lf6=F7, lf7=F8, rmso=\E0@, rmul=\E0@, sgr0=\E0@, smso=\E0P, -+ smul=\E0`, use=regent25, -+regent40+|Adds Regent 40+, -+ is2=\EB, use=regent40, -+regent60|regent200|Adds Regent 60, -+ dch1=\EE, is2=\EV\EB, kdch1=\EE, kich1=\EF, krmir=\EF, -+ rmir=\EF, rmso=\ER\E0@\EV, smir=\EF, smso=\ER\E0P\EV, -+ use=regent40+, -+# From: <edward@onyx.berkeley.edu> Thu Jul 9 09:27:33 1981 -+# (viewpoint: added <kcuf1>, function key, and <dl1> capabilities -- esr) -+viewpoint|addsviewpoint|adds viewpoint, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=^L, cnorm=\017\E0`, cr=^M, cub1=^H, cud1=^J, -+ cuf1=^F, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, -+ cvvis=\017\E0P, dl1=\El, ed=\Ek$<16.1*>, el=\EK$<16>, -+ ind=^J, is2=\017\E0`, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, -+ kf0=^B1, kf2=^B2, kf3=^B!, kf4=^B", kf5=^B#, khome=^A, ll=^A, -+ rmso=^O, rmul=^O, sgr0=^O, smso=^N, smul=^N, -+# Some viewpoints have bad ROMs that foo up on ^O -+screwpoint|adds viewpoint with ^O bug, -+ cvvis@, rmso@, rmul@, smso@, smul@, use=viewpoint, -+ -+# From: Jay S. Rouman <jsr@dexter.mi.org> 5 Jul 92 -+# The <civis>/<cnorm>/<sgr>/<sgr0> strings were added by ESR from specs. -+# Theory; the vp3a+ wants \E0%c to set highlights, where normal=01000000, -+# underline=01100000, rev=01010000, blink=01000010,dim=01000001, -+# invis=01000100 and %c is the logical or of desired attributes. -+# There is also a `tag bit' enabling attributes, set by \E) and unset by \E(. -+# -+# Update by TD - 2004: -+# Adapted from -+# http://www.cs.utk.edu/~shuford/terminal/adds_viewpoint_news.txt -+# -+# COMMANDS ASCII CODE -+# -+# Address, Absolute ESC,=,row,column -+# Beep BEL -+# Aux Port Enable ESC,@ -+# Aux Port Disable ESC,A -+# Backspace BS -+# Cursor back BS -+# Cursor down LF -+# Cursor forward FF -+# Cursor home RS -+# Cursor up VT -+# Cursor supress ETB -+# Cursor enable CAN -+# Erase to end of line ESC,T -+# Erase to end of page ESC,Y -+# Erase screen SUB -+# Keyboard lock SI -+# Keyboard unlock SO -+# Read current cursor position ESC,? -+# Set Attribute ESC,0,x (see below for values of x) -+# Tag bit reset ESC,( -+# Tag bit set ESC,) -+# Transparent Print on ESC,3 -+# Transparent Print off ESC,4 -+# -+# -+# ATTRIBUTES -+# -+# Normal @ 0100 -+# Half Intensity A 0101 -+# Blinking B 0102 -+# Half Intensity Blinking C 0103 -+# Reverse Video P 0120 -+# Reverse Video Half Intensity Q 0121 -+# Reverse Video Blinking R 0122 -+# Reverse Video Half Intensity -+# Blinking S 0123 -+# Underlined ` 0140 -+# Underlined Half Intensity a 0141 -+# Underlined Blinking b 0142 -+# Underlined Half Intensity -+# Blinking c 0143 -+# Video suppress D 0104 -+vp3a+|viewpoint3a+|adds viewpoint 3a+, -+ am, bw, -+ cols#80, it#8, lines#24, -+ blink=\E0B\E), civis=^W, clear=\E*$<80>, cnorm=^X, cr=^M, -+ cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dim=\E0A\E), -+ ed=\EY$<80>, el=\ET, home=^^, ht=^I, ind=^J, invis=\E0D\E), -+ kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, -+ nel=^M^J, rev=\E0P\E), rmso=\E(, -+ sgr=%?%p1%p2%|%p3%|%p4%|%p5%|%p7%|%t\E0%{64}%?%p1%t%{17}%|%;%?%p2%t%{32}%|%;%?%p3%t%{16}%|%;%?%p4%t%{2}%|%;%?%p5%t%{1}%|%;%c%?%p7%tD%;\E)%e\E(%;, -+ sgr0=\E(, smso=\E0Q\E), smul=\E0`\E), -+vp60|viewpoint60|addsvp60|adds viewpoint60, -+ use=regent40, -+# -+# adds viewpoint 90 - from cornell -+# Note: emacs sends ei occasionally to insure the terminal is out of -+# insert mode. This unfortunately puts the viewpoint90 IN insert -+# mode. A hack to get around this is <ich1=\EF\s\EF^U>. (Also, -+# - :ei=:im=: must be present in the termcap translation.) -+# - <xhp> indicates glitch that attributes stick to location -+# - <msgr> means it's safe to move in standout mode -+# - <clear=\EG\Ek>: clears screen and visual attributes without affecting -+# the status line -+# Function key and label capabilities merged in from SCO. -+vp90|viewpoint90|adds viewpoint 90, -+ OTbs, bw, msgr, xhp, -+ cols#80, lines#24, -+ clear=\EG\Ek, cub1=^H, cud1=^J, cuf1=^F, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dch1=\EE, -+ dl1=\El, ed=\Ek, el=\EK, home=\EY\s\s, ht=^I, -+ ich1=\EF \EF\025, ind=^J, kbs=^H, kcub1=^U, kcud1=^J, -+ kcuf1=^F, kcuu1=^Z, kf0=^B1\r, kf1=^B2\r, kf10=^B;\r, -+ kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, kf5=^B6\r, kf6=^B7\r, -+ kf7=^B8\r, kf8=^B9\r, kf9=^B\:\r, khome=^A, lf0=F1, lf1=F2, -+ lf10=F11, lf2=F3, lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, -+ lf9=F10, ll=^A, rmso=\ER\E0@\EV, rmul=\ER\E0@\EV, -+ sgr0=\ER\E0@\EV, smso=\ER\E0Q\EV, smul=\ER\E0`\EV, -+# Note: if return acts weird on a980, check internal switch #2 -+# on the top chip on the CONTROL pc board. -+adds980|a980|adds consul 980, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=\014$<1>\013@, cr=^M, cub1=^H, cud1=^J, -+ cuf1=\E^E01, cup=\013%p1%{64}%+%c\E\005%p2%2d, -+ dl1=\E\017$<13>, il1=\E\016$<13>, ind=^J, kf0=\E0, kf1=\E1, -+ kf2=\E2, kf3=\E3, kf4=\E4, kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8, -+ kf9=\E9, rmso=^O, sgr0=^O, smso=^Y^^^N, -+ -+#### C. Itoh Electronics -+# -+# As of 1995 these people no longer make terminals (they're still in the -+# printer business). Their terminals were all clones of the DEC VT series. -+# They're located in Orange County, CA. -+# -+ -+# CIT 80 - vt-52 emulator, the termcap has been modified to remove -+# the delay times and do an auto tab set rather than the indirect -+# file used in vt100. -+cit80|cit-80|citoh 80, -+ OTbs, am, -+ cols#80, lines#24, -+ clear=\E[H\EJ, cr=^M, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\EJ, el=\EK, ff=^L, -+ ind=^J, is2=\E>, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -+ kcuu1=\EOA, rmkx=\E[?1l\E>, smkx=\E[?1h\E=, -+# From: Tim Wood <mtxinu!sybase!tim> Fri Sep 27 09:39:12 PDT 1985 -+# (cit101: added <rmam>/<smam> based on init string, merged this with c101 -- esr) -+cit101|citc|C.itoh fast vt100, -+ OTbs, am, xenl, -+ cols#80, lines#24, -+ bel=^G, clear=\E[H\E[2J, cnorm=\E[V\E8, cub1=^H, cud1=\E[B, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -+ cvvis=\E7\E[U, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, -+ flash=\E[?5h$<200/>\E[?5l, ich1=\E[@, il1=\E[L, -+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[3g\E[>5g, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, -+ smul=\E[4m, -+# CIE Terminals CIT-101e from Geoff Kuenning <callan!geoff> via BRL -+# The following termcap entry was created from the Callan cd100 entry. The -+# last two lines (with the capabilities in caps) are used by RM-cobol to allow -+# full selection of combinations of reverse video, underline, and blink. -+# (cit101e: removed unknown :f0=\EOp:f1=\EOq:f2=\EOr:f3=\EOs:f4=\EOt:f5=\EOu:\ -+# f6=\EOv:f7=\EOw:f8=\EOx:f9=\EOy:AB=\E[0;5m:AL=\E[m:AR=\E[0;7m:AS=\E[0;5;7m:\ -+# :NB=\E[0;1;5m:NM=\E[0;1m:NR=\E[0;1;7m:NS=\E[0;1;5;7m: -- esr) -+cit101e|C. Itoh CIT-101e, -+ OTbs, OTpt, am, mir, msgr, -+ cols#80, it#8, lines#24, -+ acsc=, clear=\E[H\E[J, cnorm=, csr=\E[%i%p1%2d;%p2%2dr, -+ cub1=\E[D, cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, -+ cuu1=\E[A, cvvis=\E[?1l\E[?4l\E[?7h, dch1=\E[P, dl1=\E[M, -+ ed=\E[J, el=\E[K, if=/usr/share/tabset/vt100, il1=\E[L, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\EOT, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOm, kf6=\EOl, -+ kf7=\EOM, kf8=\EOn, rc=\E8, ri=\EM, rmacs=^O, rmir=\E[4l, -+ rmkx=\E>, rmso=\E[m, rmul=\E[m, sc=\E7, smacs=^N, smir=\E[4h, -+ smkx=\E=, smso=\E[7m, smul=\E[4m, -+# From: David S. Lawyer, June 1997: -+# The CIT 101-e was made in Japan in 1983-4 and imported by CIE -+# Terminals in Irvine, CA. It was part of CITOH Electronics. In the -+# late 1980's CIT Terminals went out of business. -+# There is no need to use the initialization string is=... (by invoking -+# tset or setterm etc.) provided that the terminal has been manually set -+# up (and the setup saved with ^S) to be compatible with this termcap. To be -+# compatible it should be in ANSI mode (not VT52). A set-up that -+# works is to set all the manually setable stuff to factory defaults -+# by pressing ^D in set-up mode. Then increse the brighness with the -+# up-arrow key since the factory default will likely be dim on an old -+# terminal. Then change any options you want (provided that they are -+# compatible with the termcap). For my terminal I set: Screen -+# Background: light; Keyclicks: silent; Auto wraparound: on; CRT saver: -+# on. I also set up mine for parity (but you may not need it). Then -+# save the setup with ^S. -+# (cit101e-rv: added empty <rmcup> to suppress a tic warning. --esr) -+cit101e-rv|Citoh CIT-101e (sets reverse video), -+ am, eo, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, -+ OTnl=\EM, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -+ civis=\E[1v, clear=\E[H\E[J, cnorm=\E[0;3;4v, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[3;5v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5l\E[?5h$<200/>, -+ home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, -+ is2=\E<\E>\E[?1l\E[?3l\E[?4l\E[?5h\E[?7h\E[?8h\E[3g\E[>5g\E(B\E[m\E[20l\E[1;24r\E[24;1H, -+ kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=\EE, rc=\E8, -+ rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmcup=, rmir=\E[4l, -+ rmso=\E[m, rmul=\E[m, rs1=\Ec\E[?7h\E[>5g, sc=\E7, -+ sgr0=\E[m, smcup=\E[>5g\E[?7h\E[?5h, smir=\E[4h, -+ smso=\E[7m, smul=\E[4m, tbc=\E[3g, u6=\E[%i%p1%d;%p2%dR, -+ u7=\E[6n, u8=\E[?6c, u9=\E[c, -+cit101e-n|CIT-101e w/o am, -+ am@, -+ cvvis=\E[?1l\E[?4l\E[?7l, kbs=^H, kcub1=^H, kcud1=^J, -+ use=cit101e, -+cit101e-132|CIT-101e with 132 cols, -+ cols#132, -+ kbs=^H, kcub1=^H, kcud1=^J, use=cit101e, -+cit101e-n132|CIT-101e with 132 cols w/o am, -+ am@, -+ cols#132, -+ cvvis=\E[?1l\E[?4l\E[?7l, kbs=^H, kcub1=^H, kcud1=^J, -+ use=cit101e, -+# CIE Terminals CIT-500 from BRL -+# The following SET-UP modes are assumed for normal operation: -+# GENERATE_XON/XOFF:YES DUPLEX:FULL NEWLINE:OFF -+# AUTOWRAP:ON MODE:ANSI SCREEN_LENGTH:64_LINES -+# DSPLY_CNTRL_CODES?NO PAGE_WIDTH:80 EDIT_MODE:OFF -+# Other SET-UP modes may be set for operator convenience or communication -+# requirements. -+# Hardware tabs are assumed to be set every 8 columns; they can be set up -+# by the "reset", "tset", or "tabs" utilities. No delays are specified; use -+# "stty ixon -ixany" to enable DC3/DC1 flow control! -+# (cit500: I added <rmam>/<smam> based on the init string -- esr) -+cit500|CIE Terminals CIT-500, -+ OTbs, OTpt, mir, msgr, xon, -+ OTkn#10, cols#80, it#8, lines#64, vt#3, -+ acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -+ clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\EM, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ed=\EJ, el=\EK, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, -+ il1=\E[L, ind=^J, is2=\E<\E)0, kbs=^H, kcbt=\E[Z, kcub1=\EOD, -+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[P, kdl1=\E[M, -+ ked=\EJ, kel=\EK, kf0=\EOP, kf1=\EOQ, kf2=\EOR, kf3=\EOS, -+ kf4=\EOU, kf5=\EOV, kf6=\EOW, kf7=\EOX, kf8=\EOY, kf9=\EOZ, -+ khome=\E[H, kich1=\E[4h, kil1=\E[L, krmir=\E[4l, lf0=PF1, -+ lf1=PF2, lf2=PF3, lf3=PF4, lf4=F15, lf5=F16, lf6=F17, lf7=F18, -+ lf8=F19, lf9=F20, ll=\E[64H, nel=\EE, rc=\E8, rev=\E[7m, -+ ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, -+ rmso=\E[m, rmul=\E[m, -+ rs1=\E<\E2\E[20l\E[?6l\E[r\E[m\E[q\E(B\017\E)0\E>, -+ sc=\E7, sgr0=\E[m, smacs=^N, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ -+# C. Itoh printers begin here -+citoh|ci8510|8510|c.itoh 8510a, -+ cols#80, it#8, -+ bold=\E!, cub1@, -+ is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073., -+ rep=\ER%p2%03d%p1%c, ri=\Er, rmul=\EY, sgr0=\E"\EY, -+ smul=\EX, use=lpr, -+citoh-pica|citoh in pica, -+ is1=\EN, use=citoh, -+citoh-elite|citoh in elite, -+ cols#96, -+ is1=\EE, -+ is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073\,081\,089., -+ use=citoh, -+citoh-comp|citoh in compressed, -+ cols#136, -+ is1=\EQ, -+ is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073\,081\,089\,097\,105\,113\,121\,129., -+ use=citoh, -+# citoh has infinite cols because we don't want lp ever inserting \n\t**. -+citoh-prop|citoh-ps|ips|citoh in proportional spacing mode, -+ cols#32767, -+ is1=\EP, use=citoh, -+citoh-6lpi|citoh in 6 lines per inch mode, -+ is3=\EA, use=citoh, -+citoh-8lpi|citoh in 8 lines per inch mode, -+ lines#88, -+ is3=\EB, use=citoh, -+ -+#### Control Data (cdc) -+# -+ -+cdc456|cdc 456 terminal, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=^Y^X, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E1%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dl1=\EJ, ed=^X, -+ el=^V, home=^Y, il1=\EL, ind=^J, -+ -+# Assorted CDC terminals from BRL (improvements by DAG & Ferd Brundick) -+cdc721|CDC Viking, -+ OTbs, am, -+ cols#80, lines#24, -+ clear=^L, cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, -+ cuu1=^W, el=^K, home=^Y, kcub1=^H, kcud1=^J, kcuf1=^I, -+ kcuu1=^W, khome=^Y, -+cdc721ll|CDC Vikingll, -+ OTbs, am, -+ cols#132, lines#24, -+ clear=^L, cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, -+ cuu1=^W, el=^K, home=^Y, kcub1=^H, kcud1=^J, kcuf1=^I, -+ kcuu1=^W, khome=^Y, -+# (cdc752: the BRL entry had :ll=\E1 ^Z: commented out -+cdc752|CDC 752, -+ OTbs, am, bw, xhp, -+ cols#80, lines#24, -+ bel=^G, clear=\030\E1\s\s, cr=^M, cub1=^H, cud1=^J, cuf1=^U, -+ cup=\E1%p2%{32}%+%c%p1%{32}%+%c, cuu1=^Z, el=^V, -+ home=\E1\s\s, ind=^J, ll=^Y, rs1=\E1 \030\002\003\017, -+# CDC 756 -+# The following switch/key settings are assumed for normal operation: -+# 96 chars SCROLL FULL duplex not BLOCK -+# Other switches may be set according to communication requirements. -+# Insert/delete-character cannot be used, as the whole display is affected. -+# "so" & "se" are commented out until jove handles "sg" correctly. -+cdc756|CDC 756, -+ OTbs, am, bw, -+ OTkn#10, cols#80, lines#24, -+ bel=^G, clear=^Y^X, cr=^M, cub1=^H, cud1=^J, cuf1=^U, -+ cup=\E1%p2%{32}%+%c%p1%{32}%+%c, cuu1=^Z, -+ dl1=\EJ$<6*/>, ed=^X, el=^V, home=^Y, il1=\EL$<6*/>, ind=^J, -+ kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^Z, kdch1=\EI, -+ kdl1=\EL, ked=^X, kel=^V, kf0=\EA, kf1=\EB, kf2=\EC, kf3=\ED, -+ kf4=\EE, kf5=\EF, kf6=\EG, kf7=\EH, kf8=\Ea, kf9=\Eb, khome=^Y, -+ khts=^O, kich1=\EK, kil1=\EL, lf0=F1, lf1=F2, lf2=F3, lf3=F4, -+ lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, lf9=F10, ll=^Y^Z, -+ rs1=\031\030\002\003\017, -+# -+# CDC 721 from Robert Viduya, Ga. Tech. <ihnp4!gatech!gitpyr!robert> via BRL. -+# -+# Part of the long initialization string defines the "DOWN" key to the left -+# of the tab key to send an ESC. The real ESC key is positioned way out -+# in right field. -+# -+# The termcap won't work in 132 column mode due to the way it it moves the -+# cursor. Termcap doesn't have the capability (as far as I could tell) to -+# handle the 721 in 132 column mode. -+# -+# (cdc721: changed :ri: to :sr: -- esr) -+cdc721-esc|Control Data 721, -+ OTbs, OTpt, am, bw, msgr, xon, -+ OTkn#10, cols#80, it#8, lines#30, -+ bel=^G, blink=^N, cbt=^^^K, clear=^L, cub1=^H, cud1=^Z, -+ cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, cuu1=^W, -+ dch1=^^N, dim=^\, dl1=^^Q, ed=^^P, el=^K, home=^Y, hts=^^^RW, -+ ich1=^^O, il1=^^R, ind=\036W =\036U, invis=^^^R[, -+ is2=\036\022B\003\036\035\017\022\025\035\036E\036\022H\036\022J\036\022L\036\022N\036\022P\036\022Q\036\022\036\022\^\036\022b\036\022i\036W =\036\022Z\036\011C1-` `!k/o, -+ kbs=^H, kcub1=^H, kcud1=^Z, kcuf1=^X, kcuu1=^W, kf0=^^q, -+ kf1=^^r, kf2=^^s, kf3=^^t, kf4=^^u, kf5=^^v, kf6=^^w, kf7=^^x, -+ kf8=^^y, kf9=^^z, khome=^Y, ll=^B =, rev=^^D, -+ ri=\036W =\036V, rmir=, rmkx=^^^Rl, rmso=^^E, rmul=^], -+ sgr0=\017\025\035\036E\036\022\\, smir=, smkx=^^^Rk, -+ smso=^^D, smul=^\, tbc=^^^RY, -+ -+#### Getronics -+# -+# Getronics is a Dutch electronics company that at one time was called -+# `Geveke' and made async terminals; but (according to the company itself!) -+# they've lost all their documentation on the command set. The hardware -+# documentation suggests the terminals were actually manufactured by a -+# Taiwanese electronics company named Cal-Comp. There are known -+# to have been at least two models, the 33 and the 50. -+# -+ -+# The 50 seems to be a top end vt220 clone, with the addition of a higher -+# screen resolution, a larger screen, at least 1 page of memory above and -+# below the screen, apparently pages of memory right and left of the screen -+# which can be panned, and about 75 function keys (15 function keys x normal, -+# shift, control, func A, func B). It also has more setup possibilities than -+# the vt220. The monitor case is dated November 1978 and the keyboard case is -+# May 1982. -+# -+# The vt100 emulation works as is. The entry below describes the rather -+# non-conformant (but more featureful) ANSI mode. -+# -+# From: Stephen Peterson <stv@utrecht.ow.nl>, 27 May 1995 -+visa50|geveke visa 50 terminal in ansi 80 character mode, -+ bw, mir, msgr, -+ cols#80, lines#25, -+ acsc=0_aaffggh jjkkllmmnnooqqssttuuvvwwxx, bel=^G, -+ blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dX, dch1=\E[X, dim=\E[2m, dl=\E[%p1%dM, -+ dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, home=\E[H, -+ hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, -+ is2=\E0;2m\E[1;25r\E[25;1H\E[?3l\E[?7h\E[?8h, -+ ka1=\E[f, ka3=\EOQ, kb2=\EOP, kbs=^H, kc1=\EOR, kc3=\EOS, -+ kcub1=\E[D, kcud1=\E[A, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, -+ kdl1=\EOS, kf0=\E010, kf1=\E001, kf10=\E011, kf2=\E002, -+ kf3=\E003, kf4=\E004, kf5=\E005, kf6=\E006, kf7=\E007, -+ kf8=\E008, kf9=\E009, khome=\E[f, lf2=A delete char, -+ lf3=A insert line, lf4=A delete line, lf5=A clear, -+ lf6=A ce of/cf gn, lf7=A print, lf8=A on-line, -+ lf9=A funcl0=A send, nel=^M^J, rev=\E[7m, rmacs=\E[3l, -+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[0;2m, -+ rmul=\E[0m, sgr0=\E[0;2m, smacs=\E3h, smam=\E?7h, -+ smir=\E[4h, smkx=\E=, smso=\E[2;7m, smul=\E[4m, tbc=\E[3g, -+ vpa=\E[%i%p1%dd, -+ -+#### Human Designed Systems (Concept) -+# -+# Human Designed Systems -+# 400 Fehley Drive -+# King of Prussia, PA 19406 -+# Vox: (610)-277-8300 -+# Fax: (610)-275-5739 -+# Net: support@hds.com -+# -+# John Martin <john@hds.com> is their termcap expert. They're mostly out of -+# the character-terminal business now (1995) and making X terminals. In -+# particular, the whole `Concept' line described here was discontinued long -+# ago. -+# -+ -+# From: <vax135!hpk> Sat Jun 27 07:41:20 1981 -+# Extensive changes to c108 by arpavax:eric Feb 1982 -+# Some unknown person at SCO then translated it to terminfo. -+# -+# There seem to be a number of different versions of the C108 PROMS -+# (with bug fixes in its Z-80 program). -+# -+# The first one that we had would lock out the keyboard of you -+# sent lots of short lines (like /usr/dict/words) at 9600 baud. -+# Try that on your C108 and see if it sends a ^S when you type it. -+# If so, you have an old version of the PROMs. -+# -+# You should configure the C108 to send ^S/^Q before running this. -+# It is much faster (at 9600 baud) than the c100 because the delays -+# are not fixed. -+# new status line display entries for c108-8p: -+# <is3> - init str #3 - setup term for status display - -+# set programmer mode, select window 2, define window at last -+# line of memory, set bkgnd stat mesg there, select window 0. -+# -+# <tsl> - to status line - select window 2, home cursor, erase to -+# end-of-window, 1/2 bright on, goto(line#0, col#?) -+# -+# <fsl> - from status line - 1/2 bright off, select window 0 -+# -+# <dsl> - disable status display - set bkgnd status mesg with -+# illegal window # -+# -+# There are probably more function keys that should be added but -+# I don't know what they are. -+# -+# No delays needed on c108 because of ^S/^Q handshaking -+# -+c108|concept108|c108-8p|concept108-8p|concept 108 w/8 pages, -+ is3=\EU\E z"\Ev\001\177 !p\E ;"\E z \Ev \001\177p\Ep\n, -+ rmcup=\Ev \001\177p\Ep\r\n, use=c108-4p, -+c108-4p|concept108-4p|concept 108 w/4 pages, -+ OTbs, eslok, hs, xon, -+ pb@, -+ acsc=jEkTl\\mMqLxU, cnorm=\Ew, cr=^M, -+ cup=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c, -+ cvvis=\EW, dch1=\E 1$<16*>, dsl=\E ;\177, fsl=\Ee\E z\s, -+ ind=^J, is1=\EK\E!\E F, -+ is3=\EU\E z"\Ev\177 !p\E ;"\E z \Ev \001 p\Ep\n, -+ rmacs=\Ej\s, rmcup=\Ev \001 p\Ep\r\n, smacs=\Ej!, -+ smcup=\EU\Ev 8p\Ep\r\E\025, -+ tsl=\E z"\E?\E\005\EE\Ea %+\s, use=c100, -+c108-rv|c108-rv-8p|concept 108 w/8 pages in reverse video, -+ rmcup=\Ev \002 p\Ep\r\n, smcup=\EU\Ev 8p\Ep\r, -+ use=c108-rv-4p, -+c108-rv-4p|concept108rv4p|concept 108 w/4 pages in reverse video, -+ flash=\EK$<200>\Ek, is1=\Ek, rmso=\Ee, smso=\EE, -+ use=c108-4p, -+c108-w|c108-w-8p|concept108-w-8|concept108-w8p|concept 108 w/8 pages in wide mode, -+ cols#132, -+ is1=\E F\E", rmcup=\Ev ^A0\001D\Ep\r\n, -+ smcup=\EU\Ev 8\001D\Ep\r, use=c108-8p, -+ -+# Concept 100: -+# These have only window relative cursor addressing, not screen -+# relative. To get it to work right here, smcup/rmcup (which -+# were invented for the concept) lock you into a one page -+# window for screen style programs. -+# -+# To get out of the one page window, we use a clever trick: -+# we set the window size to zero ("\Ev " in rmcup) which the -+# terminal recognizes as an error and resets the window to all -+# of memory. -+# -+# This trick works on c100 but does not on c108, sigh. -+# -+# Some tty drivers use cr3 for concept, others use nl3, hence -+# the delays on cr and ind below. This padding is only needed at -+# 9600 baud and up. One or the other is commented out depending on -+# local conventions. -+# -+# 2 ms padding on <rmcup> isn't always enough. 6 works fine. Maybe -+# less than 6 but more than 2 will work. -+# -+# Note: can't use function keys f7-f10 because they are -+# indistinguishable from arrow keys (!), also, del char and -+# clear eol use xon/xoff so they probably won't work very well. -+# -+# Also note that we don't define insrt/del char/delline/eop/send -+# because they don't transmit unless we reset them - I figured -+# it was a bad idea to clobber their definitions. -+# -+# The <mc5> sequence changes the escape character to ^^ so that -+# escapes will be passed through to the printer. Only trouble -+# is that ^^ won't be - ^^ was chosen to be unlikely. -+# Unfortunately, if you're sending raster bits through to be -+# plotted, any character you choose will be likely, so we lose. -+# -+# \EQ"\EY(^W (send anything from printer to host, for xon/xoff) -+# cannot be # in is2 because it will hang a c100 with no printer -+# if sent twice. -+c100|concept100|concept|c104|c100-4p|hds concept 100, -+ OTbs, am, eo, mir, ul, xenl, -+ cols#80, lines#24, pb#9600, vt#8, -+ bel=^G, blink=\EC, clear=\E?\E\005$<2*>, cr=$<9>\r, -+ cub1=^H, cud1=^J, cuf1=\E=, -+ cup=\Ea%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E;, -+ dch1=\E\021$<16*>, dim=\EE, dl1=\E\002$<3*>, -+ ed=\E\005$<16*>, el=\E\025$<16>, flash=\Ek$<200>\EK, -+ ht=\011$<8>, il1=\E\022$<3*>, ind=^J, invis=\EH, ip=$<16*>, -+ is1=\EK, -+ is2=\EU\Ef\E7\E5\E8\El\ENH\E\0\Eo&\0\Eo'\E\Eo!\0\E\007!\E\010A@ \E4#\:"\E\:a\E4#;"\E\:b\E4#<"\E\:c, -+ is3=\Ev $<6>\Ep\n, kbs=^H, kcbt=\E', kctab=\E_, -+ kcub1=\E>, kcud1=\E<, kcuf1=\E=, kcuu1=\E;, kdch1=\E^Q, -+ kdl1=\E^B, ked=\E^C, kel=\E^S, kf1=\E5, kf2=\E6, kf3=\E7, -+ kf4=\E8, kf5=\E9, kf6=\E\:a, kf7=\E\:b, kf8=\E\:c, khome=\E?, -+ khts=\E], kich1=\E^P, kil1=\E^R, kind=\E[, knp=\E-, kpp=\E., -+ kri=\E\\, krmir=\E\0, mc4=\036o \E\EQ!\EYP\027, -+ mc5=\EQ"\EY(\027\EYD\Eo \036, prot=\EI, -+ rep=\Er%p1%c%p2%{32}%+%c$<.2*>, rev=\ED, -+ rmcup=\Ev $<6>\Ep\r\n, rmir=\E\s\s, rmkx=\Ex, -+ rmso=\Ed, rmul=\Eg, sgr0=\EN@, -+ smcup=\EU\Ev 8p\Ep\r\E\025$<16>, smir=\E^P, smkx=\EX, -+ smso=\ED, smul=\EG, -+c100-rv|c100-rv-4p|concept100-rv|c100 rev video, -+ cnorm@, cvvis@, flash=\EK$<200>\Ek, is1=\Ek, rmso=\Ee, -+ smso=\EE, use=c100, -+oc100|oconcept|c100-1p|old 1 page concept 100, -+ in, -+ is3@, use=c100, -+ -+# From: Walter Skorski <walt@genetics1.JMP.TJU.EDU>, 16-oct-1996. -+# Lots of notes, originally inline, but ncurses doesn't grok that. -+# -+# am: not available in power on mode, but turned on with \E[=107;207h in -+# is2=. Also, \E=124l in is2= could have been used to prevent needing -+# to specify xenl:, but that would have rendered the last space on the -+# last line useless. -+# bw: Not available in power on mode, but turned on with \E[=107;207h in -+# is2=. -+# clear: Could be done with \E[2J alone, except that vi (and probably most -+# other programs) assume that this also homes the cursor. -+# dsl: Go to window 2, go to the beginning of the line, use a line feed to -+# scroll the window, and go back to window 1. -+# is2: the string may cause a warning to be issued by tic that it -+# found a very long line and that it suspects that a comma is missing -+# somewhere. This warning can be ignored (unless it comes up more than -+# once). The initialization string contains the following commands: -+# -+# [Setup mode items changed from factory defaults:] -+# \E)0 set alternate character set to -+# graphics -+# ^O set character set to default -+# [In case it wasn't] -+# \E[m turn off all attributes -+# [In case they weren't off] -+# \E[=107; cursor wrap and -+# 207h character wrap on -+# \E[90;3u set Fkey definitions to "transmit" -+# defaults -+# \E[92;3u set cursor key definitions to -+# "transmit" defaults -+# \E[43;1u set shift F13 to transmit... -+# \177\E$P\177 -+# \E[44;1u set shift F14 to transmit... -+# \177\E$Q\177 -+# \E[45;1u set shift F15 to transmit... -+# \177\E$R\177 -+# \E[46;1u set shift F16 to transmit... -+# \177\E$S\177 -+# \E[200;1u set shift up to transmit... -+# \177\E$A\177 -+# \E[201;1u set shift down to transmit... -+# \177\E$B\177 -+# \E[202;1u set shift right to transmit... -+# \177\E$C\177 -+# \E[203;1u set shift left to transmit... -+# \177\E$D\177 -+# \E[204;1u set shift home to transmit... -+# \177\E$H\177 -+# \E[212;1u set backtab to transmit... -+# \177\E$I\177 -+# \E[213;1u set shift backspace to transmit... -+# \177\E$^H\177 -+# \E[214;1u set shift del to transmit... -+# "\E$\177" -+# [Necessary items not mentioned in setup mode:] -+# \E[2!w move to window 2 -+# \E[25;25w define window as line 25 of memory -+# \E[!w move to window 1 -+# \E[2*w show current line of window 2 as -+# status line -+# \E[2+x set meta key to use high bit -+# \E[;3+} move underline to bottom of character -+# -+# All Fkeys are set to their default transmit definitions with \E[90;3u -+# in is2=. IMPORTANT: to use this terminal definition, the "quit" stty -+# setting MUST be redefined or deactivated, because the default is -+# contained in almost all of this terminal's Fkey strings! If for some -+# reason "quit" cannot be altered, the Fkeys can, but it would be -+# necessary to change ^| to ^] in all of these definitions, and add -+# \E[2;029!t to is2. -+# lines: is set to 24 because this terminal refuses to treat the 25th -+# line normally. -+# ll: Not available in power on mode, but turned on with \E[=107;207h in -+# is2=. -+# lm: Pointless, given that this definition locks a single screen of -+# memory into view, but what the hey... -+# rmso: Could use \E[1;7!{ to turn off only bold and reverse (leaving any -+# other attributes alone), but some programs expect this to turn off -+# everything. -+# rmul: Could use \E[4!{ to turn off only underline (leaving any other -+# attributes alone), but some programs expect this to turn off -+# everything. -+# sgr: Attributes are set on this terminal with the string \E[ followed by -+# a list of attribute code numbers (in decimal, separated by -+# semicolons), followed by the character m. The attribute code -+# numbers are: -+# 1 for bold; -+# 2 for dim (which is ignored in power on mode); -+# 4 for underline; -+# 5 for blinking; -+# 7 for inverse; -+# 8 for not displayable; and -+# =99 for protected (except that there are strange side -+# effects to protected characters which make them inadvisable). -+# The mapping of terminfo parameters to attributes is as follows: -+# %p1 (standout) = bold and inverse together; -+# %p2 (underline) = underline; -+# %p3 (reverse) = inverse; -+# %p4 (blink) = blinking; -+# %p5 (dim) is ignored; -+# %p6 (bold) = bold; -+# %p7 (invisible) = not displayable; -+# %p8 (protected) is ignored; and -+# %p9 (alt char set) = alt char set. -+# The code to do this is: -+# \E[0 OUTPUT \E[0 -+# %?%p1%p6%O IF (standout; bold) OR -+# %t;1 THEN OUTPUT ;1 -+# %; ENDIF -+# %?%p2 IF underline -+# %t;4 THEN OUTPUT ;4 -+# %; ENDIF -+# %?%p4 IF blink -+# %t;5 THEN OUTPUT ;5 -+# %; ENDIF -+# %?%p1%p3%O IF (standout; reverse) OR -+# %t;7 THEN OUTPUT ;7 -+# %; ENDIF -+# %?%p7 IF invisible -+# %t;8 THEN OUTPUT ;8 -+# %; ENDIF -+# m OUTPUT m -+# %?%p9 IF altcharset -+# %t^N THEN OUTPUT ^N -+# %e^O ELSE OUTPUT ^O -+# %; ENDIF -+# sgr0: Everything is turned off (including alternate character set), since -+# there is no way of knowing what it is that the program wants turned -+# off. -+# smul: The "underline" attribute is reconfigurable to an overline or -+# strikethru, or (as done with \E[;3+} in is2=), to a line at the true -+# bottom of the character cell. This was done to allow for more readable -+# underlined characters, and to be able to distinguish between an -+# underlined space, an underscore, and an underlined underscore. -+# xenl: Terminal can be configured to not need this, but this "glitch" -+# behavior is actually preferable with autowrap terminals. -+# -+# Parameters kf31= thru kf53= actually contain the strings sent by the shifted -+# Fkeys. There are no parameters for shifted Fkeys in terminfo. The is2 -+# string modifies the 'O' in kf43 to kf46 to a '$'. -+# -+# kcbt was originally ^I but redefined in is2=. -+# kHOM was \E[H originally but redefined in is2=, as were a number of -+# other keys. -+# kDC was originally \177 but redefined in is2=. -+# -+# kbs: Shift was also ^H originally but redefined as \E$^H in is2=. -+# tsl: Go to window 2, then do an hpa=. -+# -+#------- flash=\E[8;3!}^G\E[3;3!} -+#------- flash=\E[?5h$<100>\E[?5l -+# There are two ways to flash the screen, both of which have their drawbacks. -+# The first is to set the bell mode to video, transmit a bell character, and -+# set the bell mode back - but to what? There is no way of knowing what the -+# user's old bell setting was before we messed with it. Worse, the command to -+# set the bell mode also sets the key click volume, and there is no way to say -+# "leave that alone", or to know what it's set to, either. -+# The second way to do a flash is to set the screen to inverse video, pad for a -+# tenth of a second, and set it back - but like before, there's no way to know -+# that the screen wasn't ALREADY in inverse video, or that the user may prefer -+# it that way. The point is moot anyway, since vi (and probably other -+# programs) assume that by defining flash=, you want the computer to use it -+# INSTEAD of bel=, rather than as a secondary type of signal. -+# -+#------- cvvis=\E[+{ -+# The is the power on setting, which is also as visible as the cursor -+# gets. -+#------- wind=\E[%i%p1%d;%p2%d;%p3%{1}%+%d;%p4%{1}%+%dw -+# Windowing is possible, but not defined here because it is also used to -+# emulate status line functions. Allowing a program to set a window could -+# clobber the status line or render it unusable. There is additional memory, -+# but screen scroll functions are destructive and do not make use of it. -+# -+#------- dim= Not available in power on mode. -+# You have a choice of defining low intensity characters as "half bright" and -+# high intensity as "normal", or defining low as "normal" and high as "bold". -+# No matter which you choose, only one of either "half bright" or "bold" is -+# available at any time, so taking the time to override the default is -+# pointless. -+# -+#------- prot=\E[=0;99m -+# Not defined, because it appears to have some strange side effects. -+#------- pfkey=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%; -+#------- pfloc=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%; -+#------- pfx=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%d;1u\177%p2%s\177%; -+# Available, but making them available to programs is inadvisable. -+# The code to do this is: -+# %?%p1%{24}%< IF ((key; 24) <; -+# %p1%{30}%> ((key; 30) >; -+# %p1%{54}%< (key; 54) < -+# %A ) AND -+# %O ) OR -+# [that is, "IF key < 24 OR (key > 30 AND key < 54)",] -+# %t\E[ THEN OUTPUT \E[ -+# %p1%d OUTPUT (key) as decimal -+# [next line applies to pfx only] -+# ;1 OUTPUT ;1 -+# u OUTPUT u -+# \177 OUTPUT \177 -+# %p2%s OUTPUT (string) as string -+# \177 OUTPUT \177 -+# [DEL chosen as delimiter, but could be any character] -+# [implied: ELSE do nothing] -+# %; ENDIF -+# -+#------- rs2= -+# Not defined since anything it might do could be done faster and easier with -+# either Meta-Shift-Reset or the main power switch. -+# -+#------- smkx=\E[1!z -+#------- rmkx=\E[!z -+# These sequences apply to the cursor and setup keys only, not to the -+# numeric keypad. But it doesn't matter anyway, since making these -+# available to programs is inadvisable. -+# For the key definitions below, all sequences beginning with \E$ are -+# custom and programmed into the terminal via is2. \E$ also has no -+# meaning to any other terminal. -+# -+#------- cmdch=\E[;%p1%d!t -+# Available, but making it available to programs is inadvisable. -+#------- smxon=\E[1*q -+# Available, but making it available to programs is inadvisable. -+# Terminal will send XON/XOFF on buffer overflow. -+#------- rmxon=\E[*q -+# Available, but making it available to programs is inadvisable. -+# Terminal will not notify on buffer overflow. -+#------- smm=\E[2+x -+#------- rmm=\E[+x -+# Available, but making them available to programs is inadvisable. -+# -+# Printing: -+# It's not made clear in the manuals, but based on other ansi/vt type -+# terminals, it's a good guess that this terminal is capable of both -+# "transparent print" (which doesn't copy data to the screen, and -+# therefore needs mc5i: specified to say so) and "auxilliary print" -+# (which does duplicate printed data on the screen, in which case mc4= -+# and mc5= should use the \E[?4i and \E[?5i strings instead). -+ -+hds200|Human Designed Systems HDS200, -+ am, bw, eslok, hs, km, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, lm#0, -+ acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, -+ blink=\E[0;5m, bold=\E[0;1m, cbt=\E[Z, civis=\E[6+{, -+ clear=\E[H\E[J, cnorm=\E[+{, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ dsl=\E[2!w\r\n\E[!w, ed=\E[J, el=\E[K, el1=\E[1K, -+ fsl=\E[!w, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, -+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED, -+ invis=\E[0;8m, -+ is2=\E)0\017\E[m\E[=107;207h\E[90;3u\E[92;3u\E[43;1u\177\E$P\177\E[44;1u\177\E$Q\177\E[45;1u\177\E$R\177\E[46;1u\177\E$S\177\E[200;1u\177\E$A\177\E[201;1u\177\E$B\177\E[202;1u\177\E$C\177\E[203;1u\177\E$D\177\E[204;1u\177\E$H\177\E[212;1u\177\E$I\177\E[213;1u\177\E$\010\177\E[214;1u"\E$\177"\E[2!w\E[25;25w\E[!w\E[2*w\E[2+x\E[;3+}, -+ kDC=\E$\177, kHOM=\E$H, kLFT=\E$D, kRIT=\E$C, kbs=^H, -+ kcbt=\E$I, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\177, kent=^M, kf1=^\001\r, kf10=^\010\r, -+ kf11=^\011\r, kf12=^\012\r, kf13=\EOP, kf14=\EOQ, -+ kf15=\EOR, kf16=\EOS, kf17=^\017\r, kf18=^\018\r, -+ kf19=^\019\r, kf2=^\002\r, kf20=^\020\r, kf21=^\021\r, -+ kf22=^\022\r, kf23=^\023\r, kf3=^\003\r, kf31=^\031\r, -+ kf32=^\032\r, kf33=^\033\r, kf34=^\034\r, kf35=^\035\r, -+ kf36=^\036\r, kf37=^\037\r, kf38=^\038\r, kf39=^\039\r, -+ kf4=^\004\r, kf40=^\040\r, kf41=^\041\r, kf42=^\042\r, -+ kf43=\E$P, kf44=\E$Q, kf45=\E$R, kf46=\E$S, kf47=^\047\r, -+ kf48=^\048\r, kf49=^\049\r, kf5=^\005\r, kf50=^\050\r, -+ kf51=^\051\r, kf52=^\052\r, kf53=^\053\r, kf6=^\006\r, -+ kf7=^\007\r, kf8=^\008\r, kf9=^\009\r, khome=\E[H, -+ kind=\E[T, knp=\E[U, kpp=\E[V, kri=\E[S, ll=\E[H\E[A, -+ nel=\E[E, rc=\E8, rev=\E[0;7m, ri=\EM, rmacs=^O, rmir=\E[4l, -+ rmso=\E[m\017, rmul=\E[m\017, sc=\E7, -+ sgr=\E[0%?%p1%p6%O%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%O%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, smir=\E[4h, smso=\E[0;1;7m, -+ smul=\E[0;4m, tbc=\E[3g, tsl=\E[2!w\E[%i%p1%dG, -+ vpa=\E[%i%p1%dd, use=ansi+pp, -+ -+# <ht> through <el> included to specify padding needed in raw mode. -+# (avt-ns: added empty <acsc> to suppress a tic warning --esr) -+avt-ns|concept avt no status line, -+ OTbs, am, eo, mir, ul, xenl, xon, -+ cols#80, it#8, lines#24, lm#192, -+ acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -+ clear=\E[H\E[J$<38>, cnorm=\E[=119l, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E[=119h, dch1=\E[P, dim=\E[1!{, dl=\E[%p1%dM$<4*>, -+ dl1=\E[M$<4>, ed=\E[J$<96>, el=\E[K$<6>, home=\E[H, -+ hpa=\E[%p1%{1}%+%dG, ht=\011$<4>, hts=\EH, ich=\E[%p1%d@, -+ ich1=\E[@, il=\E[%p1%dL$<4*>, il1=\E[L$<4>, ind=\n$<8>, -+ invis=\E[8m, ip=$<4>, is1=\E[=103l\E[=205l, -+ is2=\E[1*q\E[2!t\E[7!t\E[=4;101;119;122l\E[=107;118;207h\E)1\E[1Q\EW\E[!y\E[!z\E>\E[0\:0\:32!r\E[0*w\E[w\E2\r\n\E[2;27!t, -+ kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E^B\r, ked=\E^D\r, kf1=\EOP, kf2=\EOQ, kf3=\EOR, -+ kf4=\EOS, khome=\E[H, kich1=\E^A\r, kil1=\E^C\r, ll=\E[24H, -+ mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, -+ pfloc=\E[%p1%d;0u#%p2%s#, pfx=\E[%p1%d;1u#%p2%s#, -+ prot=\E[99m, rc=\E8, rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, -+ ri=\EM$<4>, rmacs=\016$<1>, rmcup=\E[w\E2\r\n, -+ rmir=\E[4l, rmkx=\E[!z\E[0;2u, rmso=\E[7!{, rmul=\E[4!{, -+ sc=\E7, -+ sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;%?%p8%t99;%;m%?%p5%t\E[1!{%;%?%p9%t\017%e\016%;$<1>, -+ sgr0=\E[m\016$<1>, smacs=\017$<1>, -+ smcup=\E[=4l\E[1;24w\E2\r, smir=\E[4h, -+ smkx=\E[1!z\E[0;3u, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ vpa=\E[%p1%{1}%+%dd, -+avt-rv-ns|concept avt in reverse video mode/no status line, -+ flash=\E[=205l$<200>\E[=205h, is1=\E[=103l\E[=205h, -+ use=avt-ns, -+avt-w-ns|concept avt in 132 column mode/no status line, -+ is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w, -+ use=avt-ns, -+avt-w-rv-ns|concept avt in 132 column mode/no status line/reverse video, -+ flash=\E[=205l$<200>\E[=205h, is1=\E[=103h\E[=205h, -+ smcup=\E[H\E[1;24;1;132w, use=avt-ns, -+ -+# Concept AVT with status line. We get the status line using the -+# "Background status line" feature of the terminal. We swipe the -+# first line of memory in window 2 for the status line, keeping -+# 191 lines of memory and 24 screen lines for regular use. -+# The first line is used instead of the last so that this works -+# on both 4 and 8 page AVTs. (Note the lm#191 or 192 - this -+# assumes an 8 page AVT but lm isn't currently used anywhere.) -+# -+avt+s|concept avt status line changes, -+ eslok, hs, -+ lm#191, -+ dsl=\E[0*w, fsl=\E[1;1!w, -+ is3=\E[2w\E[2!w\E[1;1;1;80w\E[H\E[2*w\E[1!w\E2\r\n, -+ rmcup=\E[2w\E2\r\n, smcup=\E[2;25w\E2\r, -+ tsl=\E[2;1!w\E[;%p1%dH\E[2K, -+avt|avt-s|concept-avt|avt w/80 columns, -+ use=avt+s, use=avt-ns, -+avt-rv|avt-rv-s|avt reverse video w/sl, -+ flash=\E[=205l$<200>\E[=205h, is1=\E[=103l\E[=205h, -+ use=avt+s, use=avt-ns, -+avt-w|avt-w-s|concept avt 132 cols+status, -+ is1=\E[=103h\E[=205l, smcup=\E[H\E[1;24;1;132w, -+ use=avt+s, use=avt-ns, -+avt-w-rv|avt-w-rv-s|avt wide+status+rv, -+ flash=\E[=205l$<200>\E[=205h, is1=\E[=103h\E[=205h, -+ smcup=\E[H\E[1;24;1;132w, use=avt+s, use=avt-ns, -+ -+#### Contel Business Systems. -+# -+ -+# Contel c300 and c320 terminals. -+contel300|contel320|c300|Contel Business Systems C-300 or C-320, -+ am, in, xon, -+ cols#80, lines#24, xmc#1, -+ bel=^G, clear=\EK, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, -+ dch1=\EO$<5.5*>, dl1=\EM$<5.5*>, ed=\EJ$<5.5*>, -+ el=\EI$<5.5>, flash=\020\002$<200/>\020\003, home=\EH, -+ hts=\E1, ich1=\EN, il1=\EL$<5.5*>, ind=^J, ip=$<5.5*>, -+ kbs=^H, kf0=\ERJ, kf1=\ERA, kf2=\ERB, kf3=\ERC, kf4=\ERD, -+ kf5=\ERE, kf6=\ERF, kf7=\ERG, kf8=\ERH, kf9=\ERI, ll=\EH\EA, -+ rmso=\E!\0, sgr0=\E!\0, smso=\E!\r, tbc=\E3, -+# Contel c301 and c321 terminals. -+contel301|contel321|c301|c321|Contel Business Systems C-301 or C-321, -+ flash@, ich1@, ip@, rmso=\E!\0$<20>, smso=\E!\r$<20>, -+ use=contel300, -+ -+#### Data General (dg) -+# -+# According to James Carlson <carlson@xylogics.com> writing in January 1995, -+# the terminals group at Data General was shut down in 1991; all these -+# terminals have thus been discontinued. -+# -+# DG terminals have function keys that respond to the SHIFT and CTRL keys, -+# e.g., SHIFT-F1 generates a different code from F1. To number the keys -+# sequentially, first the unmodified key codes are listed as F1 through F15. -+# Then their SHIFT versions are listed as F16 through F30, their CTRL versions -+# are listed as F31 through F45, and their CTRL-SHIFT versions are listed as -+# F46 through F60. This is done in the private "includes" below whose names -+# start with "dgkeys+". -+# -+# DG terminals generally support 8 bit characters. For each of these terminals -+# two descriptions are supplied: -+# 1) A default description for 8 bits/character communications, which -+# uses the default DG international character set and keyboard codes. -+# 2) A description with suffix "-7b" for 7 bits/character communications. -+# This description must use the NON-DEFAULT native keyboard language. -+ -+# Unmodified fkeys (kf1-kf11), Shift fkeys (kf12-kf22), Ctrl fkeys (kf23-kf33), -+# Ctrl/Shift fdkeys (kf34-kf44). -+ -+dgkeys+8b|Private entry describing DG terminal 8-bit ANSI mode special keys, -+ ka1=\233020z, ka3=\233021z, kc1=\233022z, kc3=\233023z, -+ kclr=\2332J, kcub1=\233D, kcud1=\233B, kcuf1=\233C, -+ kcuu1=\233A, kel=\233K, kf1=\233001z, kf10=\233010z, -+ kf11=\233011z, kf12=\233012z, kf13=\233013z, -+ kf14=\233014z, kf15=\233000z, kf16=\233101z, -+ kf17=\233102z, kf18=\233103z, kf19=\233104z, -+ kf2=\233002z, kf20=\233105z, kf21=\233106z, -+ kf22=\233107z, kf23=\233108z, kf24=\233109z, -+ kf25=\233110z, kf26=\233111z, kf27=\233112z, -+ kf28=\233113z, kf29=\233114z, kf3=\233003z, -+ kf30=\233100z, kf31=\233201z, kf32=\233202z, -+ kf33=\233203z, kf34=\233204z, kf35=\233205z, -+ kf36=\233206z, kf37=\233207z, kf38=\233208z, -+ kf39=\233209z, kf4=\233004z, kf40=\233210z, -+ kf41=\233211z, kf42=\233212z, kf43=\233213z, -+ kf44=\233214z, kf45=\233200z, kf46=\233301z, -+ kf47=\233302z, kf48=\233303z, kf49=\233304z, -+ kf5=\233005z, kf50=\233305z, kf51=\233306z, -+ kf52=\233307z, kf53=\233308z, kf54=\233309z, -+ kf55=\233310z, kf56=\233311z, kf57=\233312z, -+ kf58=\233313z, kf59=\233314z, kf6=\233006z, -+ kf60=\233300z, kf7=\233007z, kf8=\233008z, kf9=\233009z, -+ khome=\233H, kprt=\233i, -+ -+dgkeys+7b|Private entry describing DG terminal 7-bit ANSI mode special keys, -+ ka1=\E[020z, ka3=\E[021z, kc1=\E[022z, kc3=\E[023z, -+ kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kel=\E[K, kf1=\E[001z, kf10=\E[010z, kf11=\E[011z, -+ kf12=\E[012z, kf13=\E[013z, kf14=\E[014z, kf15=\E[000z, -+ kf16=\E[101z, kf17=\E[102z, kf18=\E[103z, kf19=\E[104z, -+ kf2=\E[002z, kf20=\E[105z, kf21=\E[106z, kf22=\E[107z, -+ kf23=\E[108z, kf24=\E[109z, kf25=\E[110z, kf26=\E[111z, -+ kf27=\E[112z, kf28=\E[113z, kf29=\E[114z, kf3=\E[003z, -+ kf30=\E[100z, kf31=\E[201z, kf32=\E[202z, kf33=\E[203z, -+ kf34=\E[204z, kf35=\E[205z, kf36=\E[206z, kf37=\E[207z, -+ kf38=\E[208z, kf39=\E[209z, kf4=\E[004z, kf40=\E[210z, -+ kf41=\E[211z, kf42=\E[212z, kf43=\E[213z, kf44=\E[214z, -+ kf45=\E[200z, kf46=\E[301z, kf47=\E[302z, kf48=\E[303z, -+ kf49=\E[304z, kf5=\E[005z, kf50=\E[305z, kf51=\E[306z, -+ kf52=\E[307z, kf53=\E[308z, kf54=\E[309z, kf55=\E[310z, -+ kf56=\E[311z, kf57=\E[312z, kf58=\E[313z, kf59=\E[314z, -+ kf6=\E[006z, kf60=\E[300z, kf7=\E[007z, kf8=\E[008z, -+ kf9=\E[009z, khome=\E[H, kprt=\E[i, -+ -+dgkeys+11|Private entry describing 11 minimal-subset DG mode special keys, -+ kclr=^L, kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, kel=^K, -+ kf1=^^q, kf10=^^z, kf11=^^{, kf12=^^a, kf13=^^b, kf14=^^c, -+ kf15=^^d, kf16=^^e, kf17=^^f, kf18=^^g, kf19=^^h, kf2=^^r, -+ kf20=^^i, kf21=^^j, kf22=^^k, kf23=^^1, kf24=^^2, kf25=^^3, -+ kf26=^^4, kf27=^^5, kf28=^^6, kf29=^^7, kf3=^^s, kf30=^^8, -+ kf31=^^9, kf32=^^\:, kf33=^^;, kf34=^^!, kf35=^^", kf36=^^#, -+ kf37=^^$, kf38=^^%%, kf39=^^&, kf4=^^t, kf40=^^', kf41=^^(, -+ kf42=^^), kf43=^^*, kf44=^^+, kf5=^^u, kf6=^^v, kf7=^^w, -+ kf8=^^x, kf9=^^y, khome=^H, -+ -+dgkeys+15|Private entry describing 15 DG mode special keys, -+ kHOM=^^^H, kLFT=^^^Y, kRIT=^^^X, ka1=^^\\, ka3=^^], kc1=^^\^, -+ kc3=^^_, kf1=^^q, kf10=^^z, kf11=^^{, kf12=^^|, kf13=^^}, -+ kf14=^^~, kf15=^^p, kf16=^^a, kf17=^^b, kf18=^^c, kf19=^^d, -+ kf2=^^r, kf20=^^e, kf21=^^f, kf22=^^g, kf23=^^h, kf24=^^i, -+ kf25=^^j, kf26=^^k, kf27=^^l, kf28=^^m, kf29=^^n, kf3=^^s, -+ kf30=^^`, kf31=^^1, kf32=^^2, kf33=^^3, kf34=^^4, kf35=^^5, -+ kf36=^^6, kf37=^^7, kf38=^^8, kf39=^^9, kf4=^^t, kf40=^^\:, -+ kf41=^^;, kf42=^^<, kf43=^^=, kf44=^^>, kf45=^^0, kf46=^^!, -+ kf47=^^", kf48=^^#, kf49=^^$, kf5=^^u, kf50=^^%%, kf51=^^&, -+ kf52=^^', kf53=^^(, kf54=^^), kf55=^^*, kf56=^^+, kf57=^^\,, -+ kf58=^^-, kf59=^^., kf6=^^v, kf60=^^\s, kf7=^^w, kf8=^^x, -+ kf9=^^y, -+ -+# Data General color terminals use the "Tektronix" color model. The total -+# number of colors varies with the terminal model, as does support for -+# attributes used in conjunction with color. -+ -+# Removed u7, u8 definitions since they conflict with tack: -+# Preserve user-defined colors in at least some cases. -+# u7=^^Fh, -+# Default is ACM mode. -+# u8=^^F}20^^Fi^^F}21, -+# -+dgunix+fixed|Fixed color info for DG D430C terminals in DG-UNIX mode, -+ bce, -+ colors#16, ncv#53, pairs#256, -+ op=\036Ad\036Bd, -+ setab=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, -+ setaf=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, -+ setb=\036B%p1%{48}%+%c, setf=\036A%p1%{48}%+%c, -+ -+dg+fixed|Fixed color info for DG D430C terminals in DG mode, -+ use=dgunix+fixed, -+ -+# Video attributes are coordinated using static variables set by "sgr", then -+# checked by "op", "seta[bf]", and "set[bf]" to refresh the attribute settings. -+# (D=dim, U=underline, B=blink, R=reverse.) -+dg+color8|Color info for Data General D220 and D230C terminals in ANSI mode, -+ bce, -+ colors#8, ncv#16, pairs#64, -+ op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m, -+ setab=\E[4%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -+ setaf=\E[3%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -+ setb=\E[4%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -+ setf=\E[3%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -+ -+dg+color|Color info for Data General D470C terminals in ANSI mode, -+ colors#16, ncv#53, pairs#256, -+ setab=\E[%?%p1%{8}%<%t4%p1%e=%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -+ setaf=\E[%?%p1%{8}%<%t3%p1%e<%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -+ setb=\E[%?%p1%{8}%<%t4%e=%;%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -+ setf=\E[%?%p1%{8}%<%t3%e<%;%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m, -+ use=dg+color8, -+ -+dgmode+color8|Color info for Data General D220/D230C terminals in DG mode, -+ bce, -+ colors#8, ncv#16, pairs#64, -+ op=\036Ad\036Bd, -+ setab=\036B%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%{48}%+%c, -+ setaf=\036A%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%{48}%+%c, -+ setb=\036B%p1%{48}%+%c, setf=\036A%p1%{48}%+%c, -+ -+dgmode+color|Color info for Data General D470C terminals in DG mode, -+ colors#16, pairs#256, -+ setab=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, -+ setaf=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c, -+ use=dgmode+color8, -+ -+dgunix+ccc|Configurable color info for DG D430C terminals in DG-UNIX mode, -+ bce, ccc, -+ colors#52, ncv#53, pairs#26, -+ initp=\036RG0%p1%02X%p2%{255}%*%{1000}%/%02X%p3%{255}%*%{1000}%/%02X%p4%{255}%*%{1000}%/%02X%p5%{255}%*%{1000}%/%02X%p6%{255}%*%{1000}%/%02X%p7%{255}%*%{1000}%/%02X, -+ oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00, -+ op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D, -+ scp=\036RG2%p1%02X, -+ -+# Colors are in the order: normal, reverse, dim, dim + reverse. -+dg+ccc|Configurable color info for DG D430C terminals in DG mode, -+ bce, ccc, -+ colors#52, ncv#53, pairs#26, -+ initp=\036RG0%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c%p2%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p3%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p4%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p5%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p6%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p7%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c, -+ oc=\036RG01\:00??00000000\036RG01;00000000??00\036RG01<007?00000000\036RG01=000000007?00, -+ op=\036RF4831\:\036RF2>31;\036RF1=31<\036RF3?31=, -+ scp=\036RG2%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c, -+ -+# The generic DG terminal type (an 8-bit-clean subset of the 6053) -+# Initialization string 1 sets: -+# ^R - vertical scrolling enabled -+# ^C - blinking enabled -+dg-generic|Generic Data General terminal in DG mode, -+ am, bw, msgr, xon, -+ cols#80, lines#24, -+ bel=^G, blink=^N, clear=^L, cr=^M, cub1=^Y, cud1=^Z, cuf1=^X, -+ cup=\020%p2%c%p1%c, cuu1=^W, dim=^\, el=^K, ind=^J, is1=^R^C, -+ mc0=^Q, nel=^J, rmso=^], rmul=^U, sgr0=^O^U^], smso=^\, -+ smul=^T, use=dgkeys+11, -+ -+# According to the 4.4BSD termcap file, the dg200 <cup> should be the -+# termcap equivalent of \020%p2%{128}%+%c%p1%{128}%+%c (in termcap -+# notation that's "^P%r%+\200%+\200"). Those \200s are suspicious, -+# maybe they were originally nuls (which would fit). -+ -+dg200|data general dasher 200, -+ OTbs, am, bw, -+ cols#80, lines#24, -+ bel=^G, clear=^L, cr=^M, cub1=^Y, cud1=^Z, cuf1=^X, -+ cup=\020%p2%c%p1%c, cuu1=^W, el=^K, home=^H, ind=^J, -+ kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, kf0=^^z, kf1=^^q, -+ kf2=^^r, kf3=^^s, kf4=^^t, kf5=^^u, kf6=^^v, kf7=^^w, kf8=^^x, -+ kf9=^^y, khome=^H, lf0=f10, nel=^J, rmso=^^E, rmul=^U, -+ smso=^^D, smul=^T, -+ -+# Data General 210/211 (and 410?) from Lee Pearson (umich!lp) via BRL -+dg210|dg-ansi|Data General 210/211, -+ am, -+ cols#80, lines#24, -+ OTnl=\E[B, clear=\E[2J, cub1=\E[D, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, -+ home=\E[H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ khome=\E[H, nel=\r\E[H\E[A\n, rmso=\E[0;m, rmul=\E[0;m, -+ smso=\E[7;m, smul=\E[4;m, -+# From: Peter N. Wan <ihnp4!gatech!gacsr!wan> -+# courtesy of Carlos Rucalde of Vantage Software, Inc. -+# (dg211: this had <cup=\020%r%.%>., which was an ancient termcap hangover. -+# I suspect the d200 function keys actually work on the dg211, check it out.) -+dg211|Data General d211, -+ cnorm=^L, cvvis=^L^R, ht=^I, ind@, kbs=^Y, kf0@, kf1@, kf2@, kf3@, -+ kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, lf0@, nel=^M^Z, rmcup=^L, -+ rmso=\036E$<\0/>, smcup=^L^R, smso=\036D$<5/>, use=dg200, -+ -+# dg450 from Cornell (not official) -+dg450|dg6134|data general 6134, -+ cub1@, cuf1=^X, use=dg200, -+ -+# Not official... -+# Note: lesser Dasher terminals will not work with vi because vi insists upon -+# having a command to move straight down from any position on the bottom line -+# and scroll the screen up, or a direct vertical scroll command. The 460 and -+# above have both, the D210/211, for instance, has neither. We must use ANSI -+# mode rather than DG mode because standard UNIX tty drivers assume that ^H is -+# backspace on all terminals. This is not so in DG mode. -+# (dg460-ansi: removed obsolete ":kn#6:"; also removed ":mu=\EW:", on the -+# grounds that there is no matching ":ml:" -+dg460-ansi|Data General Dasher 460 in ANSI-mode, -+ OTbs, am, msgr, ul, -+ cols#80, it#8, lines#24, -+ OTnl=\ED, blink=\E[5m, clear=\E[2J, cub1=^H, cud1=\E[B, -+ cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, dch1=\E[P, -+ dim=\E[2m, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, -+ ich1=\E[@, il1=\E[L, ind=\E[S, is2=^^F@, kbs=\E[D, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kf0=\E[001z, kf1=\E[002z, kf2=\E[003z, kf3=\E[004z, -+ kf4=\E[005z, kf5=\E[006z, kf6=\E[007z, kf7=\E[008z, -+ kf8=\E[009z, kf9=\E[00\:z, khome=\E[H, lf0=f1, lf1=f2, -+ lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, lf9=f10, -+ mc0=\E[i, rev=\E[7m, ri=\E[T, rmso=\E[m, rmul=\E[05, -+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%t;7%;m, -+ sgr0=\E(B\E[m, smso=\E[7m, smul=\E[4m, u6=\E[%d;%dR, -+ u7=\E[6n, u8=\E[5n, u9=\E[0n, -+# From: Wayne Throop <mcnc!rti-sel!rtp47!throopw> (not official) -+# Data General 605x -+# Ought to work for a Model 6242, Type D210 as well as a 605x. -+# Note that the cursor-down key transmits ^Z. Job control users, beware! -+# This also matches a posted description of something called a `Dasher 100' -+# so there's a dg100 alias here. -+# (dg6053: the 4.4BSD file had <cub1=^H>, <cud1=^J>, <cuf1=^S>. -- esr) -+dg6053-old|dg100|data general 6053, -+ OTbs, am, bw, ul, -+ cols#80, lines#24, -+ OTbc=^Y, bel=^G, clear=^L, cnorm=^L, cr=^M, cub1=^Y, cud1=^Z, -+ cuf1=^X, cup=\020%p2%c%p1%c, cuu1=^W, cvvis=^L^R, el=^K, -+ home=^H, ht=^I, is2=^R, kbs=^Y, kcub1=^Y, kcud1=^Z, kcuf1=^X, -+ kcuu1=^W, kf0=^^q, kf1=^^r, kf2=^^s, kf3=^^t, kf4=^^u, kf5=^^v, -+ kf6=^^w, kf7=^^x, kf8=^^y, kf9=^^z, khome=^H, rmcup=^L, -+ rmso=\0^^E, rmul=^U, smcup=^L^R, smso=\0\0\0\0\0\036D, -+ smul=^T, -+ -+# (Some performance can be gained over the generic DG terminal type) -+dg6053|6053|6053-dg|dg605x|605x|605x-dg|d2|d2-dg|Data General DASHER 6053, -+ xon@, -+ home=^P\0\0, ll=^P\0^W, use=dg-generic, -+ -+# Like 6053, but adds reverse video and more keypad and function keys. -+d200|d200-dg|Data General DASHER D200, -+ bold=^^D^T, home@, ll@, rev=^^D, rmso=^^E^], -+ sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;, -+ sgr0=\017\025\035\036E, smso=^^D^\, use=dgkeys+15, -+ use=dg6053, -+ -+# DASHER D210 series terminals in ANSI mode. -+# Reverse video, no insert/delete character/line, 7 bits/character only. -+# -+# Initialization string 1 sets: -+# <0 - scrolling enabled -+# <1 - blink enabled -+# <4 - print characters regardless of attributes -+d210|d214|Data General DASHER D210 series, -+ am, bw, msgr, xon, -+ cols#80, lines#24, -+ bel=^G, blink=\E[5m, bold=\E[4;7m, clear=\E[2J, cr=^M, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dim=\E[2m, ed=\E[J, el=\E[K, -+ el1=\E[1K, home=\E[H, ind=^J, is1=\E[<0;<1;<4l, -+ ll=\E[H\E[A, nel=^J, rev=\E[7m, rmso=\E[m, rmul=\E[m, -+ sgr=\E[%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;%?%p1%p3%|%p6%|%t7;%;m, -+ sgr0=\E[m, smso=\E[2;7m, smul=\E[4m, use=dgkeys+7b, -+ -+# DASHER D210 series terminals in DG mode. -+# Like D200, but adds clear to end-of-screen and needs XON/XOFF. -+d210-dg|d214-dg|Data General DASHER D210 series in DG mode, -+ xon, -+ ed=^^FF, use=d200-dg, -+ -+# DASHER D211 series terminals in ANSI mode. -+# Like the D210, but with 8-bit characters and local printer support. -+# -+# Initialization string 2 sets: -+# \E[2;1;1;1v -+# 2;1 - 8 bit operations -+# 1;1 - 8 bit (international) keyboard language -+# \E(B - default primary character set (U.S. ASCII) -+# \E)4 - default secondary character set (international) -+# ^O - primary character set -+# -+d211|d215|Data General DASHER D211 series, -+ km, -+ is2=\E[2;1;1;1v\E(B\E)4\017, mc0=\E[i, use=dgkeys+8b, -+ use=d210, -+ -+# Initialization string 2 sets: -+# \E[2;0;1;0v -+# 2;0 - 7 bit operations -+# 1;0 - 7 bit (native) keyboard language -+# \E(0 - default character set (the keyboard native language) -+# ^O - primary character set -+d211-7b|d215-7b|Data General DASHER D211 series in 7 bit mode, -+ km@, -+ is2=\E[2;0;1;0v\E(0\017, use=dgkeys+7b, use=d211, -+ -+# Like the D210 series, but adds support for 8-bit characters. -+# -+# Reset string 2 sets: -+# ^^N - secondary character set -+# ^^FS0> - 8 bit international character set -+# ^^O - primary character set -+# ^^FS00 - default character set (matching the native keyboard language) -+# -+d211-dg|d215-dg|Data General DASHER D211 series in DG mode, -+ km, -+ rs2=\036N\036FS0>\036O\036FS00, use=d210-dg, -+ -+d216-dg|d216e-dg|d216+dg|d216e+dg|d217-dg|Data General DASHER D216 series in DG mode, -+ use=d211-dg, -+ -+# Enhanced DG mode with changes to be more UNIX compatible. -+d216-unix|d216e-unix|d216+|d216e+|Data General DASHER D216+ in DG-UNIX mode, -+ mc5i, -+ it#8, -+ acsc=a\177j$k"l!m#n)q+t'u&v(w%x*, blink=^^PI, -+ clear=^^PH, cub1=^^PD, cud1=^^PB, cuf1=^^PC, cuu1=^^PA, -+ el=^^PE, home=^^PF, hpa=\020%p1%c\177, ht=^I, ind=^J, -+ is1=\022\003\036P@1, is3=\036Fz0, kHOM=^^Pf, kLFT=^^Pd, -+ kPRT=^^P1, kRIT=^^Pc, kclr=^^PH, kcub1=^^PD, kcud1=^^PB, -+ kcuf1=^^PC, kcuu1=^^PA, kel=^^PE, khome=^^PF, kprt=^^P0, -+ mc0=\036F?9, mc4=^^Fa, mc5=^^F`, rmacs=\036FS00, -+ rs2=\036N\036FS0E\036O\036FS00, -+ sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;\036P%?%p4%tI%eJ%;%?%p1%p5%|%t\034%e\035%;\036FS%?%p9%t11%e00%;, -+ sgr0=\036PJ\025\035\036E\036FS00, smacs=\036FS11, -+ vpa=\020\177%p1%c, use=dgkeys+15, use=d216-dg, -+d216-unix-25|d216+25|Data General DASHER D216+ in DG-UNIX mode with 25 lines, -+ lines#25, -+ is3=\036Fz2, use=d216+, -+ -+d217-unix|Data General DASHER D217 in DG-UNIX mode, -+ use=d216-unix, -+d217-unix-25|Data General DASHER D217 in DG-UNIX mode with 25 lines, -+ use=d216-unix-25, -+ -+# DASHER D220 color terminal in ANSI mode. -+# Like the D470C but with fewer colors and screen editing features. -+# -+# Initialization string 1 sets: -+# \E[<0;<1;<4l -+# <0 - scrolling enabled -+# <1 - blink enabled -+# <4 - print characters regardless of attributes -+# \E[m - all attributes off -+# Reset string 1 sets: -+# \Ec - initial mode defaults (RIS) -+# -+d220|Data General DASHER D220, -+ mc5i@, -+ dl@, dl1@, il@, il1@, is1=\E[<0;<1;<4l\E[m, mc4@, mc5@, rs1=\Ec, -+ use=dg+color8, use=d470c, -+ -+d220-7b|Data General DASHER D220 in 7 bit mode, -+ mc5i@, -+ dl@, dl1@, il@, il1@, is1=\E[<0;<1;<4l\E[m, mc4@, mc5@, rs1=\Ec, -+ use=dg+color8, use=d470c-7b, -+ -+# Initialization string 3 sets: -+# - default cursor (solid rectangle) -+# Reset string 2 sets: -+# ^^N - secondary character set -+# ^^FS0> - 8 bit international character set -+# ^^O - primary character set -+# ^^FS00 - default character set (matching the native keyboard language) -+# -+d220-dg|Data General DASHER D220 color terminal in DG mode, -+ mc5i@, -+ dl1@, home@, il1@, is2@, is3=\036FQ2, ll@, mc4@, mc5@, rs1@, -+ rs2=\036N\036FS0>\036O\036FS00, use=dgmode+color8, -+ use=d470c-dg, -+ -+# DASHER D230C color terminal in ANSI mode. -+# Like the D220 but with minor ANSI compatibility improvements. -+# -+d230c|d230|Data General DASHER D230C, -+ blink=\E[5;50m, bold=\E[4;7;50m, dim=\E[2;50m, nel=^M^J, -+ rev=\E[7;50m, rmkx=\E[2;1v, rmso=\E[50m, rmul=\E[50m, -+ sgr=\E[50%?%p1%p3%|%p6%|%t;7%{1}%e%{0}%;%PR%?%p4%t;5%{1}%e%{0}%;%PB%?%p2%p6%|%t;4%{1}%e%{0}%;%PU%?%p1%p5%|%t;2%{1}%e%{0}%;%PDm\E)%?%p9%t6\016%e4\017%;, -+ sgr0=\E[50m\E)4\017, smkx=\E[2;0v, smso=\E[2;7;50m, -+ smul=\E[4;50m, use=dgkeys+7b, use=d220, -+ -+d230c-dg|d230-dg|Data General DASHER D230C in DG mode, -+ use=d220-dg, -+ -+# DASHER D400/D450 series terminals. -+# These add intelligent features like insert/delete to the D200 series. -+# -+# Initialization string 2 sets: -+# ^^FQ2 - default cursor (solid rectangle) -+# ^^FW - character protection disabled -+# ^^FJ - normal (80 column) mode -+# ^^F\^ - horizontal scrolling enabled (for alignment) -+# ^^FX004? - margins at columns 0 and 79 -+# ^^F] - horizontal scrolling disabled -+# ^^O - primary character set -+# ^^FS00 - default character set (the keyboard native language) -+# - (should reset scrolling regions, but that glitches the screen) -+# Reset string 1 sets: -+# ^^FA - all terminal defaults except scroll rate -+# Reset string 2 sets: -+# ^^F] - horizontal scrolling disabled -+# ^^FT0 - jump scrolling -+# -+d400|d400-dg|d450|d450-dg|Data General DASHER D400/D450 series, -+ mc5i, -+ acsc=j$k"l!m#n)q+t'u&v(w%x*, civis=\036FQ0, -+ cnorm=\036FQ2, dch1=^^K, dl1=^^FI, -+ enacs=\036N\036FS11\036O, home=^^FG, hpa=\020%p1%c\177, -+ ich1=^^J, il1=^^FH, -+ is2=\036FQ2\036FW\036FJ\036F\^\036FX004?\036F]\036O\036FS00, -+ ll=\036FG\027, mc4=^^Fa, mc5=^^F`, ri=^^I, rmacs=^^O, -+ rs1=^^FA, rs2=\036F]\036FT0, -+ sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;\036%?%p9%tN%eO%;, -+ sgr0=\017\025\035\036E\036O, smacs=^^N, -+ vpa=\020\177%p1%c, use=d210-dg, -+ -+# DASHER D410/D460 series terminals in ANSI mode. -+# These add a large number of intelligent terminal features. -+# -+# Initialization string 1 sets: -+# \E[<0;<1;<2;<4l -+# <0 - scrolling enabled -+# <1 - blink enabled -+# <2 - horizontal scrolling enabled (for alignment) -+# <4 - print characters regardless of attributes -+# \E[5;0v - normal (80 column) mode -+# \E[1;1;80w - margins at columns 1 and 80 -+# \E[1;6;<2h -+# 1 - print all characters even if protected -+# 6 - character protection disabled -+# <2 - horizontal scrolling disabled -+# - (should reset scrolling regions, but that glitches the screen) -+# -+# Initialization string 2 sets: -+# \E[3;2;2;1;1;1v -+# 3;2 - default cursor (solid rectangle) -+# 2;1 - 8 bit operations -+# 1;1 - international keyboard language -+# \E(B - default primary character set (U.S. ASCII) -+# \E)4 - default secondary character set (international) -+# ^O - primary character set -+# -+# Reset string 1 sets: -+# \Ec - initial mode defaults (RIS) -+# \E[<2h - horizontal scrolling disabled -+# -+# Reset string 2 sets: -+# \E[4;0;2;1;1;1v -+# 4;0 - jump scrolling -+# 2;1 - 8 bit operations -+# 1;1 - 8 bit (international) keyboard language -+# \E(B - default primary character set (U.S. ASCII) -+# \E)4 - default secondary character set (international) -+# -+d410|d411|d460|d461|Data General DASHER D410/D460 series, -+ mc5i, -+ acsc=j$k"l!m#n)q+t'u&v(w%x*, civis=\E[3;0v, -+ cnorm=\E[3;2v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, -+ is1=\E[<0;<1;<2;<4l\E[5;0v\E[1;1;80w\E[1;6;<2h, -+ is2=\E[3;2;2;1;1;1v\E(B\E)4\017, mc4=\E[4i, mc5=\E[5i, -+ ri=\EM, rmacs=\E)4\017, rs1=\Ec\E[<2h, -+ rs2=\E[4;0;2;1;1;1v\E(B\E)4, -+ sgr=\E[%?%p1%t2;7%;%?%p3%t7;%;%?%p4%t5;%;%?%p2%t4;%;%?%p1%p5%|%t2;%;%?%p6%t4;7;%;m\E)%?%p9%t6\016%e4\017%;, -+ sgr0=\E[m\E)4\017, smacs=\E)6\016, use=d211, -+ -+# Initialization string 2 sets: -+# \E[3;2;2;0;1;0v -+# 3;2 - default cursor (solid rectangle) -+# 2;0 - 7 bit operations -+# 1;0 - 7 bit (native) keyboard language -+# \E(0 - default character set (the keyboard native language) -+# ^O - primary character set -+# -+# Reset string 2 sets: -+# \E[4;0;2;0;1;0v -+# 4;0 - jump scrolling -+# 2;0 - 7 bit operations -+# 1;0 - 7 bit (native) keyboard language -+# \E(0 - default character set (the keyboard native language) -+# -+d410-7b|d411-7b|d460-7b|d461-7b|Data General DASHER D410/D460 series in 7 bit mode, -+ km@, -+ enacs=\E)6, is2=\E[3;2;2;0;1;0v\E(0\017, rmacs=^O, -+ rs2=\E[4;0;2;0;1;0v\E(0, -+ sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;, -+ sgr0=\E[m\017, smacs=^N, use=dgkeys+7b, use=d410, -+ -+d410-dg|d460-dg|d411-dg|d461-dg|Data General DASHER D410/D460 series in DG mode, -+ km, -+ enacs@, rmacs=\036FS00, -+ sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;\036FS%?%p9%t11%e00%;, -+ sgr0=\017\025\035\036E\036FS00, smacs=\036FS11, -+ use=d400-dg, -+ -+# DASHER D410/D460 series terminals in wide (126 columns) ANSI mode. -+# -+# Initialization string 1 sets: -+# \E[<0;<1;<2;<4l -+# <0 - scrolling enabled -+# <1 - blink enabled -+# <2 - horizontal scrolling enabled (for alignment) -+# <4 - print characters regardless of attributes -+# \E[5;1v - compressed (135 column) mode -+# \E[1;1;126 - margins at columns 1 and 126 -+# \E[1;6;<2h -+# 1 - print all characters even if protected -+# 6 - character protection disabled -+# <2 - horizontal scrolling disabled -+# - (should reset scrolling regions, but that glitches the screen) -+# -+# Reset string 1 sets: -+# \Ec - initial mode defaults (RIS) -+# \E[5;1v - compressed (135 column) mode -+# \E[1;1;126w - margins at columns 1 and 126 -+# \E[<2h - horizontal scrolling disabled -+# -+d410-w|d411-w|d460-w|d461-w|Data General DASHER D410/D460 series in wide mode, -+ cols#126, -+ is1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h, -+ rs1=\Ec\E[5;1v\E[1;1;126w\E[<2h, use=d410, -+ -+d410-7b-w|d411-7b-w|d460-7b-w|d461-7b-w|Data General DASHER D410/D460 series in wide 7 bit mode, -+ cols#126, -+ is1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h, -+ rs1=\Ec\E[5;1v\E[1;1;126w\E[<2h, use=d410-7b, -+ -+d412-dg|d462-dg|d462e-dg|d412+dg|d462+dg|d413-dg|d463-dg|Data General DASHER D412/D462 series in DG mode, -+ use=d410-dg, -+ -+# These add intelligent features like scrolling regions. -+d412-unix|d462-unix|d412+|d462+|Data General DASHER D412+/D462+ series in Unix mode, -+ civis=\036FQ0, clear=^^FE, cnorm=\036FQ5, -+ cup=\036FP%p2%2.2X%p1%2.2X, dch1=^^K, dl1=^^FI, -+ home=^^FG, hpa=\036FP%p1%2.2XFF, ich1=^^J, il1=^^FH, -+ is2=\036FQ5\036FW\036FJ\036F\^\036FX004F\036O\036FS00, -+ ll=\036FG\036PA, mc0=^A, rc=\036F}11, ri=^^I, -+ rs1=\036FA\036FT0, rs2=\036P@1, sc=\036F}10, -+ vpa=\036FPFF%p1%2.2X, -+ wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X, -+ use=d216+, -+d412-unix-w|d462-unix-w|d412+w|d462+w|Data General DASHER D412+/D462+ series in wide Unix mode, -+ cols#132, -+ is2=\036FQ5\036FW\036FK\036F\^\036FX0083\036O\036FS00, -+ rs2=\036P@1\036FK\036FX0083, -+ wind=\036FB%?%p1%t%p1%2.2X1%;%p2%p1%-%{1}%+%2.2X1%?%{23}%p2%>%t001%;\036FX%p3%2.2X%p4%2.2X, -+ use=d412-unix, -+d412-unix-25|d462-unix-25|d412+25|d462+25|Data General DASHER D412+/D462+ series in Unix mode with 25 lines, -+ lines#25, -+ is3=\036Fz2, -+ wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{24}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X, -+ use=d462+, -+d412-unix-s|d462-unix-s|d412+s|d462+s|Data General DASHER D412+/D462+ in Unix mode with status line, -+ eslok, hs, -+ clear=\036FG\036PH, fsl=\036F}01\022, -+ is3=\036Fz2\036F}00\036FB180000\036F}01, ll@, -+ tsl=\036F}00\036FP%p1%2.2X18\036PG, -+ wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t%{23}%p2%-%2.2X0%;000\036FX%p3%2.2X%p4%2.2X, -+ use=d462+, -+ -+# Relative cursor motions are confined to the current window, -+# which is not what the scrolling region specification expects. -+# Thus, relative vertical cursor positioning must be deleted. -+d412-unix-sr|d462-unix-sr|d412+sr|d462+sr|Data General DASHER D412+/D462+ in Unix mode with scrolling region, -+ csr=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;, -+ cud1@, cuu1@, ll@, use=d462+, -+ -+d413-unix|d463-unix|Data General DASHER D413/D463 series in DG-UNIX mode, -+ use=d412-unix, -+d413-unix-w|d463-unix-w|Data General DASHER D413/D463 series in wide DG-UNIX mode, -+ use=d412-unix-w, -+d413-unix-25|d463-unix-25|Data General DASHER D413/D463 series in DG-UNIX mode with 25 lines, -+ use=d412-unix-25, -+d413-unix-s|d463-unix-s|Data General DASHER D413/D463 in DG-UNIX mode with status line, -+ use=d412-unix-s, -+d413-unix-sr|d463-unix-sr|Data General DASHER D413/D463 in DG-UNIX mode with scrolling region, -+ use=d412-unix-sr, -+ -+d414-unix|d464-unix|Data General D414/D464 in DG-UNIX mode, -+ use=d413-unix, -+d414-unix-w|d464-unix-w|Data General D414/D464 in wide DG-UNIX mode, -+ use=d413-unix-w, -+d414-unix-25|d464-unix-25|Data General D414/D464 in DG-UNIX mode with 25 lines, -+ use=d413-unix-25, -+d414-unix-s|d464-unix-s|Data General D414/D464 in DG-UNIX mode with status line, -+ use=d413-unix-s, -+d414-unix-sr|d464-unix-sr|Data General D414/D464 in DG-UNIX mode with scrolling region, -+ use=d413-unix-sr, -+ -+d430c-dg|d430-dg|Data General D430C in DG mode, -+ use=d413-dg, use=dg+fixed, -+d430c-dg-ccc|d430-dg-ccc|Data General D430C in DG mode with configurable colors, -+ use=d413-dg, use=dg+ccc, -+ -+d430c-unix|d430-unix|Data General D430C in DG-UNIX mode, -+ use=d413-unix, use=dgunix+fixed, -+d430c-unix-w|d430-unix-w|Data General D430C in wide DG-UNIX mode, -+ use=d413-unix-w, use=dgunix+fixed, -+d430c-unix-25|d430-unix-25|Data General D430C in DG-UNIX mode with 25 lines, -+ use=d413-unix-25, use=dgunix+fixed, -+d430c-unix-s|d430-unix-s|Data General D430C in DG-UNIX mode with status line, -+ use=d413-unix-s, use=dgunix+fixed, -+d430c-unix-sr|d430-unix-sr|Data General D430C in DG-UNIX mode with scrolling region, -+ use=d413-unix-sr, use=dgunix+fixed, -+d430c-unix-ccc|d430-unix-ccc|Data General D430C in DG-UNIX mode with configurable colors, -+ use=d413-unix, use=dgunix+ccc, -+d430c-unix-w-ccc|d430-unix-w-ccc|Data General D430C in wide DG-UNIX mode with configurable colors, -+ use=d413-unix-w, use=dgunix+ccc, -+d430c-unix-25-ccc|d430-unix-25-ccc|Data General D430C in DG-UNIX mode with 25 lines and configurable colors, -+ use=d413-unix-25, use=dgunix+ccc, -+d430c-unix-s-ccc|d430-unix-s-ccc|Data General D430C in DG-UNIX mode with status line and configurable colors, -+ use=d413-unix-s, use=dgunix+ccc, -+d430c-unix-sr-ccc|d430-unix-sr-ccc|Data General D430C in DG-UNIX mode with scrolling region and configurable colors, -+ use=d413-unix-sr, use=dgunix+ccc, -+ -+# DASHER D470C color terminal in ANSI mode. -+# Like the D460 but with 16 colors and without a compressed mode. -+# -+# Initialization string 1 sets: -+# \E[<0;<1;<2;<4l -+# <0 - scrolling enabled -+# <1 - blink enabled -+# <2 - horizontal scrolling enabled (for alignment) -+# <4 - print characters regardless of attributes -+# \E[1;1;80w - margins at columns 1 and 80 -+# \E[1;6;<2h -+# 1 - print all characters even if protected -+# 6 - character protection disabled -+# <2 - horizontal scrolling disabled -+# - (should reset scrolling regions, but that glitches the screen) -+# -+d470c|d470|Data General DASHER D470C, -+ is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, -+ sgr=\E[%?%p3%t7;%;%?%p4%t5;%;%?%p2%t4;%;%?%p6%t4;7;%;%?%p1%t2;7;%;%?%p5%t2;%;m\E)%?%p9%t6\016%e4\017%;, -+ use=dg+color, use=d460, -+ -+d470c-7b|d470-7b|Data General DASHER D470C in 7 bit mode, -+ is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, -+ sgr=\E[%?%p3%t7;%;%?%p4%t5;%;%?%p2%t4;%;%?%p6%t4;7;%;%?%p1%t2;7;%;%?%p5%t2;%;m%?%p9%t\016%e\017%;, -+ use=dg+color, use=d460-7b, -+ -+# Initialization string 2 sets: -+# ^^FQ2 - default cursor (solid rectangle) -+# ^^FW - character protection disabled -+# ^^F\^ - horizontal scrolling enabled (for alignment) -+# ^^FX004? - margins at columns 0 and 79 -+# ^^F] - horizontal scrolling disabled -+# ^^O - primary character set -+# ^^FS00 - default character set (the keyboard native language) -+# - (should reset scrolling regions, but that glitches the screen) -+# -+d470c-dg|d470-dg|Data General DASHER D470C in DG mode, -+ is2=\036FQ2\036FW\036F\^\036FX004?\036F]\036O\036FS00, -+ use=dgmode+color, use=d460-dg, -+ -+# DASHER D555 terminal in ANSI mode. -+# Like a D411, but has an integrated phone. -+d555|Data General DASHER D555, -+ use=d411, -+d555-7b|Data General DASHER D555 in 7-bit mode, -+ use=d411-7b, -+d555-w|Data General DASHER D555 in wide mode, -+ use=d411-w, -+d555-7b-w|Data General DASHER D555 in wide 7-bit mode, -+ use=d411-7b-w, -+d555-dg|Data General DASHER D555 series in DG mode, -+ use=d411-dg, -+ -+# DASHER D577 terminal in ANSI mode. -+# Like a D411, but acts as a keyboard for serial printers ("KSR" modes). -+d577|Data General DASHER D577, -+ use=d411, -+d577-7b|Data General DASHER D577 in 7-bit mode, -+ use=d411-7b, -+d577-w|Data General DASHER D577 in wide mode, -+ use=d411-w, -+d577-7b-w|Data General DASHER D577 in wide 7-bit mode, -+ use=d411-7b-w, -+ -+d577-dg|d578-dg|Data General DASHER D577/D578 series in DG mode, -+ use=d411-dg, -+ -+# DASHER D578 terminal. -+# Like a D577, but without compressed mode; like a D470C in this respect. -+# -+# Initialization string 1 sets: -+# \E[<0;<1;<2;<4l -+# <0 - scrolling enabled -+# <1 - blink enabled -+# <2 - horizontal scrolling enabled (for alignment) -+# <4 - print characters regardless of attributes -+# \E[1;1;80w - margins at columns 1 and 80 -+# \E[1;6;<2h -+# 1 - print all characters even if protected -+# 6 - character protection disabled -+# <2 - horizontal scrolling disabled -+# - (should reset scrolling regions, but that glitches the screen) -+# -+d578|Data General DASHER D578, -+ is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, use=d577, -+d578-7b|Data General DASHER D578 in 7-bit mode, -+ is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, use=d577-7b, -+ -+#### Datamedia (dm) -+# -+# Datamedia was headquartered in Nashua, New Hampshire until it went -+# out of business in 1993, but the ID plates on the terminals referred -+# to the factory in Pennsauken, NJ. The factory was sold to a PCB board -+# manufacturer which threw out all information about the terminals. -+# -+ -+cs10|colorscan|Datamedia Color Scan 10, -+ msgr, -+ cols#80, lines#24, -+ bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%02d;%p2%02dH, cuu1=\E[A, ed=\E[J, el=\E[K, -+ ind=^J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, smso=\E[7m, smul=\E[4m, -+cs10-w|Datamedia Color Scan 10 with 132 columns, -+ cols#132, -+ cup=\E[%i%p1%02d;%p2%03dH, use=cs10, -+ -+# (dm1520: removed obsolete ":ma=^\ ^_^P^YH:" -- esr) -+dm1520|dm1521|datamedia 1520, -+ OTbs, am, xenl, -+ cols#80, it#8, lines#24, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^\, -+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -+ home=^Y, ht=^I, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^\, kcuu1=^_, -+ khome=^Y, -+# dm2500: this terminal has both <ich> and <smir>. Applications using -+# termcap/terminfo directly (rather than through ncurses) might be confused. -+dm2500|datamedia2500|datamedia 2500, -+ OTbs, OTnc, -+ cols#80, lines#24, -+ bel=^G, clear=^^^^\177, cub1=^H, cud1=^J, cuf1=^\, -+ cup=\014%p2%{96}%^%c%p1%{96}%^%c, cuu1=^Z, -+ dch1=\020\010\030\035$<10*>, -+ dl1=\020\032\030\035$<10*>, el=^W, home=^B, -+ ich1=\020\034\030\035$<10*>, -+ il1=\020\n\030\035\030\035$<15>, ind=^J, pad=\377, -+ rmdc=^X^], rmir=\377\377\030\035$<10>, rmso=^X^], -+ smdc=^P, smir=^P, smso=^N, -+# dmchat is like DM2500, but DOES need "all that padding" (jcm 1/31/82) -+# also, has a meta-key. -+# From: <goldberger@su-csli.arpa> -+# (dmchat: ":MT:" changed to ":km:" -- esr) -+dmchat|dmchat version of datamedia 2500, -+ km, -+ dl1=\020\032\030\035$<2/>, -+ il1=\020\n\030\035\030\035$<1*/>, use=dm2500, -+# (dm3025: ":MT:" changed to ":km:" -- esr) -+dm3025|datamedia 3025a, -+ OTbs, km, -+ cols#80, it#8, lines#24, -+ bel=^G, clear=\EM$<2>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA, -+ dch1=\010$<6>, dl1=\EP\EA\EQ$<130>, ed=\EJ$<2>, el=\EK, -+ home=\EH, ht=^I, il1=\EP\n\EQ$<130>, ind=^J, ip=$<6>, -+ is2=\EQ\EU\EV, rmdc=\EQ, rmir=\EQ, rmso=\EO0, smdc=\EP, -+ smir=\EP, smso=\EO1, -+dm3045|datamedia 3045a, -+ OTbs, am, eo, km@, ul, xenl, -+ dch1=\EB$<6>, dl1@, il1@, is2=\EU\EV, kcuf1=\EC, kcuu1=\EA, -+ kf0=\Ey\r, kf1=\Ep\r, kf2=\Eq\r, kf3=\Er\r, kf4=\Es\r, -+ kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, kf9=\Ex\r, -+ khome=\EH, pad=\177, rmdc@, rmir=\EP, rmso@, smdc@, smso@, -+ use=dm3025, -+# Datamedia DT80 soft switches: -+# 1 0=Jump 1=Smooth -+# Autorepeat 0=off 1=on -+# Screen 0=Dark 1=light -+# Cursor 0=u/l 1=block -+# -+# 2 Margin Bell 0=off 1=on -+# Keyclick 0=off 1=on -+# Ansi/VT52 0=VT52 1=Ansi -+# Xon/Xoff 0=Off 1=On -+# -+# 3 Shift3 0=Hash 1=UK Pound -+# Wrap 0=Off 1=On -+# Newline 0=Off 1=On -+# Interlace 0=Off 1=On -+# -+# 4 Parity 0=Odd 1=Even -+# Parity 0=Off 1=On -+# Bits/Char 0=7 1=8 -+# Power 0=60Hz 1=50Hz -+# -+# 5 Line Interface 0=EIA 1=Loop -+# Aux Interface 0=EIA 1=Loop -+# Local Copy 0=Off 1=On -+# Spare -+# -+# 6 Aux Parity 0=Odd 1=Even -+# Aux Parity 0=Off 1=On -+# Aux Bits/Char 0=7 1=8 -+# CRT Saver 0=Off 1=On -+# dm80/1 is a vt100 lookalike, but it doesn't seem to need any padding. -+dm80|dmdt80|dt80|datamedia dt80/1, -+ clear=\E[2J\E[H, cud1=^J, cuf1=\E[C, -+ cup=%i\E[%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K, -+ home=\E[H, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, ri=\EM, -+ rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, -+ use=vt100, -+# except in 132 column mode, where it needs a little padding. -+# This is still less padding than the vt100, and you can always turn on -+# the ^S/^Q handshaking, so you can use vt100 flavors for things like -+# reverse video. -+dm80w|dmdt80w|dt80w|datamedia dt80/1 in 132 char mode, -+ cols#132, -+ clear=\E[H\E[2J$<50/>, cud1=^J, -+ cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<5/>, -+ ed=\E[0J$<20/>, el=\E[0K$<20/>, use=dm80, -+# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995 -+dt80-sas|Datamedia DT803/DTX for SAS usage, -+ am, bw, -+ cols#80, lines#24, -+ acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~, -+ bel=^G, clear=^L, cr=^M, -+ csr=\E=%p1%{32}%+%c%{32}%c\E#1\E=%p2%{32}%+%c%{32}%c\E#2, -+ cub1=^H, cud1=\EB, cuf1=^\, -+ cup=\E=%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, dl1=\EM, ed=^K, -+ el=^], ff=^L, home=^Y, ht=^I, hts=\E'1, il1=\EL, ind=\EB, -+ is2=\E)0\E<\EP\E'0\E$2, kclr=^L, kcub1=^H, kcud1=^J, -+ kcuf1=^\, kcuu1=^_, ked=^K, kel=^], khome=^Y, mc4=^O, mc5=^N, -+ rev=\E$2\004, ri=\EI, rmacs=\EG, rmso=^X, sgr0=^X, smacs=\EF, -+ smso=\E$2\004, tbc=\E'0, -+ -+# Datamedia Excel 62, 64 from Gould/SEL UTX/32 via BRL -+# These aren't end-all Excel termcaps; but do insert/delete char/line -+# and name some of the extra function keys. (Mike Feldman ccvaxa!feldman) -+# The naming convention has been bent somewhat, with the use of E? (where -+# E is for 'Excel') as # a name. This was done to distinguish the entries -+# from the other Datamedias in use here, and yet to associate a model of -+# the Excel terminals with the regular datamedia terminals that share -+# major characteristics. -+excel62|excel64|datamedia Excel 62, -+ dch1=\E[P, kbs=^H, kcub1=^H, kcud1=^J, kf5=\EOu, kf6=\EOv, -+ kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, smir=\E[4h, -+ use=dt80, -+excel62-w|excel64-w|datamedia Excel 62 in 132 char mode, -+ dch1=\E[P, kbs=^H, kcub1=^H, kcud1=^J, kf5=\EOu, kf6=\EOv, -+ kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, smir=\E[4h, -+ use=dt80w, -+excel62-rv|excel64-rv|datamedia Excel 62 in reverse video mode, -+ dch1=\E[P, flash=\E[?5l\E[?5h, kbs=^H, kcub1=^H, kcud1=^J, -+ kf5=\EOu, kf6=\EOv, kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l, -+ smir=\E[4h, use=dt80, -+ -+#### Falco -+# -+# Falco Data Products -+# 440 Potrero Avenue -+# Sunnyvale, CA 940864-196 -+# Vox: (800)-325-2648 -+# Fax: (408)-745-7860 -+# Net: techsup@charm.sys.falco.com -+# -+# Current Falco models as of 1995 are generally ANSI-compatible and support -+# emulations of DEC VT-series, Wyse, and Televideo types. -+# -+ -+# Test version for Falco ts-1. See <arpavax.hickman@ucb> for info -+# This terminal was released around 1983 and was discontinued long ago. -+# The standout and underline highlights are the same. -+falco|ts1|ts-1|falco ts-1, -+ OTbs, am, -+ cols#80, it#8, lines#24, -+ bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\EY, el=\ET\EG0\010, home=^^, ht=^I, il1=\EE, -+ ind=^J, is2=\Eu\E3, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, -+ kf0=^A0\r, rmir=\Er, rmso=\Eg0, rmul=\Eg0, sgr0=\Eg0, -+ smir=\Eq, smso=\Eg1, smul=\Eg1, -+falco-p|ts1p|ts-1p|falco ts-1 with paging option, -+ OTbs, am, da, db, mir, msgr, ul, -+ cols#80, it#8, lines#24, -+ bel=^G, cbt=\EI, clear=\E*, cr=^M, cub1=^H, cud1=\E[B, -+ cuf1=\E[C, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E[A, -+ dch1=\EW, dl1=\ER, ed=\EY, el=\ET\EG0\010\Eg0, ht=^I, -+ il1=\EE, ind=^J, is2=\EZ\E3\E_c, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, rmcup=\E_b, rmir=\Er, -+ rmso=\Eg0, rmul=\Eg0, sgr0=\Eg0, smcup=\E_d, smir=\Eq, -+ smso=\Eg4, smul=\Eg1, -+# (ts100: I added <rmam>/<smam> based on the init string -- esr) -+ts100|ts100-sp|falco ts100-sp, -+ am, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#24, vt#3, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -+ clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C$<2>, -+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, -+ cuu1=\E[A$<2>, dch1=\E~W, dl1=\E~R, ed=\E[J$<50>, -+ el=\E[K$<3>, el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H, -+ ht=^I, hts=\EH, ich1=\E~Q, il1=\E~E, ind=^J, is1=\E~)\E~ea, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, -+ rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, -+ 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=vt100+fnkeys, -+ts100-ctxt|falco ts-100 saving context, -+ rmcup=\E~_b, smcup=\E~_d\E[2J, use=ts100, -+ -+#### Florida Computer Graphics -+# -+ -+# Florida Computer Graphics Beacon System, using terminal emulator program -+# "host.com", as provided by FCG. This description is for an early release -+# of the "host" program. Known bug: <ed> clears the whole screen, so it's -+# commented out. -+ -+# From: David Bryant <cbosg!djb> 1/7/83 -+beacon|FCG Beacon System, -+ am, da, db, -+ cols#80, lines#32, -+ bel=\ESTART\r\E37\r\EEND\r$<1>, -+ blink=\ESTART\r\E61\,1\r\EEND\r, clear=\EZ$<10>, cr=^M, -+ cub1=^H, cud1=^J, cuf1=\EV, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<20>, cuu1=\EU, -+ dch1=\EW, dl1=\ER, el=\ET, home=\EH$<10>, ich1=\EQ, il1=\EE, -+ ind=^J, rev=\ESTART\r\E59\,1\r\EEND\r, rmcup=, -+ rmso=\ESTART\r\E70\,0\r\EEND\r$<20>, -+ rmul=\ESTART\r\E60\,0\r\EEND\r, -+ sgr0=\ESTART\r\E78\r\E70\,0\r\EEND\r$<20>, -+ smcup=\ESTART\r\E2\,0\r\E12\r\EEND\r$<10>, -+ smso=\ESTART\r\E70\,6\r\EEND\r$<20>, -+ smul=\ESTART\r\E60\,1\r\EEND\r, -+ -+#### Fluke -+# -+ -+# The f1720a differences from ANSI: no auto margin, destructive -+# tabs, # of lines, funny highlighting and underlining -+f1720|f1720a|fluke 1720A, -+ xt, -+ cols#80, lines#16, xmc#1, -+ bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, -+ el=\E[K, ind=\ED, is2=\E[H\E[2J, kcub1=^_, kcud1=^], -+ kcuf1=^^, kcuu1=^\, ri=\EM, rmso=\E[m, rmul=\E[m, sgr0=\E[m, -+ smso=\E[7m, smul=\E[4m, -+ -+#### Liberty Electronics (Freedom) -+# -+# Liberty Electronics -+# 48089 Fremont Blvd -+# Fremont CA 94538 -+# Vox: (510)-623-6000 -+# Fax: (510)-623-7021 -+ -+# From: <faletti@berkeley.edu> -+# (f100: added empty <acsc> to suppress a tic warning; -+# made this relative to adm+sgr -- note that <invis> isn't -+# known to work for f100 but does on the f110. --esr) -+f100|freedom|freedom100|freedom model 100, -+ OTbs, am, bw, hs, mir, msgr, xon, -+ cols#80, lines#24, -+ acsc=, bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^J, -+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ dch1=\EW, dl1=\ER$<11.5*>, dsl=\Eg\Ef\r, ed=\EY, el=\ET, -+ flash=\Eb$<200>\Ed, fsl=^M, home=^^, hpa=\E]%p1%{32}%+%c, -+ ht=^I, hts=\E1, il1=\EE$<8.5*>, ind=^J, ip=$<6>, -+ is2=\Eg\Ef\r\Ed, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^V, -+ kcuf1=^L, kcuu1=^K, kf1=^A@\r, kf10=^AI\r, kf2=^AA\r, -+ kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -+ kf8=^AG\r, kf9=^AH\r, khome=^^, ri=\Ej, rmacs=\E$, rmir=\Er, -+ smacs=\E%%, smir=\Eq, tbc=\E3, tsl=\Eg\Ef, -+ vpa=\E[%p1%{32}%+%c, use=adm+sgr, -+f100-rv|freedom-rv|freedom 100 in reverse video, -+ flash=\Ed$<200>\Eb, is2=\Eg\Ef\r\Eb, use=f100, -+# The f110 and f200 have problems with vi(1). They use the ^V -+# code for the down cursor key. When kcud1 is defined in terminfo -+# as ^V, the Control Character Quoting capability (^V in insert mode) -+# is lost! It cannot be remapped in vi because it is necessary to enter -+# a ^V to to quote the ^V that is being remapped!!! -+# -+# f110/f200 users will have to decide whether -+# to lose the down cursor key or the quoting capability. We will opt -+# initially for leaving the quoting capability out, since use of VI -+# is not generally applicable to most interactive applications -+# (f110: added <ht>, <khome> & <kcbt> from f100 -- esr) -+f110|freedom110|Liberty Freedom 110, -+ bw@, eslok, -+ it#8, wsl#80, -+ blink=\EG2, bold=\EG0, civis=\E.1, cnorm=\E.2, cud1=^V, -+ dim=\EG@, dl1=\ER, dsl=\Ef\r, flash=\Eb$<200/>\Ed, il1=\EE, -+ ip@, is2@, kclr=^^, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, -+ kf0=^AI\r, kf10@, kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`, -+ ri=\EJ, rmacs=\E%%, rmir=\Er\EO, smacs=\E$, smir=\EO\Eq, -+ smso=\EG<, tsl=\Ef, use=f100, -+f110-14|Liberty Freedom 110 14inch, -+ dch1@, use=f110, -+f110-w|Liberty Freedom 110 - 132 cols, -+ cols#132, use=f110, -+f110-14w|Liberty Freedom 110 14in/132 cols, -+ cols#132, -+ dch1@, use=f110, -+# (f200: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) -+f200|freedom200|Liberty Freedom 200, -+ OTbs, am, eslok, hs, mir, msgr, xon, -+ cols#80, it#8, lines#24, wsl#80, -+ acsc=, bel=^G, blink=\EG2, bold=\EG0, cbt=\EI, civis=\E.0, -+ clear=^Z, cnorm=\E.1, cr=^M, -+ csr=\Em0%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=^V, -+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ dch1=\EW, dim=\EG@, dl1=\ER, dsl=\Ef\r, ed=\EY, el=\ET, -+ flash=\Eo$<200/>\En, fsl=^M, home=^^, -+ hpa=\E]%p1%{32}%+%c, hts=\E1, il1=\EE, ind=^J, kbs=^H, -+ kclr=^^, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, -+ kdl1=\ER, ked=\EY, kel=\ET, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, -+ kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -+ kf8=^AG\r, kf9=^AH\r, kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`, -+ ri=\EJ, rmacs=\E%%, rmir=\Er, smacs=\E$, smir=\Eq, smso=\EG<, -+ tbc=\E3, tsl=\Ef, vpa=\E[%p1%{32}%+%c, use=adm+sgr, -+f200-w|Liberty Freedom 200 - 132 cols, -+ cols#132, use=f200, -+# The f200 has the ability to reprogram the down cursor key. The key is -+# reprogrammed to ^J (linefeed). This value is remembered in non-volatile RAM, -+# so powering the terminal off and on will not cause the change to be lost. -+f200vi|Liberty Freedom 200 for vi, -+ flash=\Eb$<200/>\Ed, kcud1=^J, use=f200, -+f200vi-w|Liberty Freedom 200 - 132 cols for vi, -+ cols#132, use=f200vi, -+ -+#### GraphOn (go) -+# -+# Graphon Corporation -+# 544 Division Street -+# Campbell, CA 95008 -+# Vox: (408)-370-4080 -+# Fax: (408)-370-5047 -+# Net: troy@graphon.com (Troy Morrison) -+# -+# -+# The go140 and go225 have been discontinued. GraphOn now makes X terminals, -+# including one odd hybrid that starts out life on power-up as a character -+# terminal, than can be switched to X graphics mode (driven over the serial -+# line) by an escape sequence. No info on this beast yet. -+# (go140: I added <rmam>/<smam> based on the init string -- esr) -+go140|graphon go-140, -+ OTbs, -+ cols#80, it#8, lines#24, -+ clear=\E[H\E[2J$<10/>, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -+ ed=\E[J$<10/>, el=\E[K, ht=^I, -+ if=/usr/share/tabset/vt100, il1=\E[L, -+ is2=\E<\E=\E[?3l\E[?7l\E(B\E[J\E7\E[;r\E8\E[m\E[q, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, -+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, ri=\EM, -+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, -+ rmul=\E[m, sgr0=\E[m, smam=\E[?7h, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -+go140w|graphon go-140 in 132 column mode, -+ am, -+ cols#132, -+ is2=\E<\E=\E[?3h\E[?7h\E(B\E[J\E7\E[;r\E8\E[m\E[q, -+ use=go140, -+# Hacked up vt200 termcap to handle GO-225/VT220 -+# From: <edm@nwnexus.WA.COM> -+# (go225: I added <rmam>/<smam> based on the init string -- esr) -+go225|go-225|Graphon 225, -+ OTbs, am, mir, xenl, -+ cols#80, it#8, lines#25, vt#3, -+ blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, -+ csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -+ ed=\E[J, el=\E[K, home=\E[H, ht=^I, il1=\E[L, ind=\ED, -+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kbs=^H, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, -+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, rc=\E8, rev=\E[7m, -+ rf=/usr/share/tabset/vt100, ri=\EM, rmam=\E[?7l, -+ rmcup=\E[!p\E[?7h\E[2;1;1#w, rmir=\E[4l, rmkx=\E>, -+ rmso=\E[27m, rmul=\E[24m, rs1=\E[!p\E[?7h\E[2;1;1#w, -+ sc=\E7, sgr0=\E[m, smam=\E[?7h, smcup=\E[2;0#w\E[1;25r, -+ smir=\E[4h, smkx=\E=, smso=\E[7m, smul=\E[4m, -+ -+#### Harris (Beehive) -+# -+# Bletch. These guys shared the Terminal Brain Damage laurels with Hazeltine. -+# Their terminal group is ancient history now (1995) though the parent -+# company is still in business. -+# -+ -+# Beehive documentation is undated and marked Preliminary and has no figures -+# so we must have early Superbee2 (Model 600, according to phone conversation -+# with mfr.). It has proved reliable except for some missing padding -+# (notably after \EK and <nl> at bottom of screen). -+# -+# The key idea is that AEP mode is poison for <cup> & that US's in -+# the local memory should be avoided like the plague. That means -+# that the 2048 character local buffer is used as 25 lines of 80 -+# characters, period. No scrolling local memory, folks. It also -+# appears that we cannot use naked INS LINE feature since it uses -+# US. The sbi fakes <il1> with an 80-space insert that may be too -+# slow at low speeds; also spaces get converted to \040 which is -+# too long for some programs (not vi). DEL LINE is ok but slow. -+# -+# The <nl> string is designed for last line of screen ONLY; cup to -+# 25th line corrects the motion inherent in scrolling to Page 1. -+# -+# There is one understood bug. It is that the screen appears to -+# pop to a new (blank) page after a <nel>, or leave a half-line -+# ellipsis to a quad that is the extra 48 memory locations. The -+# data received is dumped into memory but not displayed. Not to -+# worry if <cup> is being used; the lines not displayed will be, -+# whenever the cursor is moved up there. Since <cup> is addressed -+# relative to MEMORY of window, nothing is lost; but beware of -+# relative cursor motion (<cuu1>,<cud1>,<cuf1>,<cub1>). Recommended, -+# therefore, is setenv MORE -c . -+# -+# WARNING: Not all features tested. -+# -+# Timings are assembled from 3 sources. Some timings may reflect -+# SB2/Model 300 that were used if more conservative. -+# Tested on a Model 600 at 1200 and 9600 bd. -+# -+# The BACKSPACEkb option is cute. The NEWLINE key, so cleverly -+# placed on the keyboard and useless because of AEP, is made -+# into a backspace key. In use ESC must be pressed twice (to send) -+# and sending ^C must be prefixed by ESC to avoid that weird -+# transmit mode associated with ENTER key. -+# -+# IF TERMINAL EVER GOES CATATONIC with the cursor buzzing across -+# the screen, then it has dropped into ENTER mode; hit -+# RESET--ONLINE--!tset. -+# -+# As delivered this machine has a FATAL feature that will throw -+# it into that strange transmit state (SPOW) if the space bar is -+# hit after a CR is received, but before receiving a LF (or a -+# few others). -+# -+# The circuits MUST be modified to eliminate the SPOW latch. -+# This is done by strapping on chip A46 of the I/O board; cut -+# the p.c. connection to Pin 5 and strap Pin 5 to Pin 8 of that -+# chip. This mod has been checked out on a Mod 600 of Superbee II. -+# With this modification absurdly high timings on cr are -+# unnecessary. -+# -+# NOTE WELL that the rear panel switch should be set to CR/LF, -+# not AEP! -+# -+sb1|beehive superbee, -+ OTbs, am, bw, da, db, mir, ul, xsb, -+ cols#80, lines#25, xmc#1, -+ bel=^G, cbt=\E`$<650>, clear=\EH$<1>\EJ$<3>, cr=$<1>\r, -+ cub1=^H, cud1=^J, cuf1=\EC$<3>, cup=\EF%p2%03d%p1%03d, -+ cuu1=\EA$<3>, dch1=\EP$<3>, dl1=\EM$<100>, ed=\EJ$<3>, -+ el=\EK$<3>, home=\EH$<1>, ht=^I, hts=\E1, -+ il1=\EN\EL$<3>\EQ \EP$<3> \EO\ER\EA$<3>, -+ ind=^J, is2=\EE$<3>\EX\EZ\EO\Eb\Eg\ER, kbs=^_, kcub1=\ED, -+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdl1=\EM, ked=\EJ, kel=\EK, -+ kf0=\E2, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, -+ kf7=\Ev, kf8=\Ew, kf9=\E1, khome=\EH, kich1=\EQ\EO, -+ krmir=\ER, lf0=TAB CLEAR, lf9=TAB SET, rmcup=, rmir=\ER, -+ rmso=\E_3, rmul=\E_3, sgr0=\E_3, smcup=\EO, smir=\EQ\EO, -+ smso=\E_1, smul=\E_0, tbc=\E3, -+sbi|superbee|beehive superbee at Indiana U., -+ xsb, -+ cr=\r$<1>, il1=1\EN\EL$<9>\EQ \EP$<9> \EO\ER\EA, -+ use=sb1, -+# Alternate (older) description of Superbee - f1=escape, f2=^C. -+# Note: there are at least 3 kinds of superbees in the world. The sb1 -+# holds onto escapes and botches ^C's. The sb2 is the best of the 3. -+# The sb3 puts garbage on the bottom of the screen when you scroll with -+# the switch in the back set to CRLF instead of AEP. This description -+# is tested on the sb2 but should work on all with either switch setting. -+# The f1/f2 business is for the sb1 and the <xsb> can be taken out for -+# the other two if you want to try to hit that tiny escape key. -+# This description is tricky: being able to use cup depends on there being -+# 2048 bytes of memory and the hairy <nl> string. -+superbee-xsb|beehive super bee, -+ am, da, db, xsb, -+ cols#80, it#8, lines#25, -+ clear=\EH\EJ$<3>, cnorm=^J, cr=\r$<1000>, cub1=^H, cud1=^J, -+ cuf1=\EC, cup=\EF%p2%3d%p1%3d, cuu1=\EA$<3>, -+ dch1=\EP$<3>, dl1=\EM$<100>, ed=\EJ$<3>, el=\EK$<3>, -+ home=\EH, ht=^I, hts=\E1, -+ ind=\n\0\0\0\n\0\0\0\EA\EK\0\0\0\ET\ET, is2=\EH\EJ, -+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf1=\Ep, kf2=\Eq, -+ kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev, kf8=\Ew, -+ khome=\EH, rmso=\E_3, sgr0=\E_3, smso=\E_1, tbc=\E3, -+# This loses on lines > 80 chars long, use at your own risk -+superbeeic|super bee with insert char, -+ ich1=, rmir=\ER, smir=\EQ, use=superbee-xsb, -+sb2|sb3|fixed superbee, -+ xsb@, use=superbee, -+ -+#### Beehive Medical Electronics -+# -+# Steve Seymour <srseymour@mindspring.com> writes (Wed, 03 Feb 1999): -+# Regarding your question though; Beehive terminals weren't made by Harris. -+# They were made by Beehive Medical Electronics in Utah. They went out of -+# business in the early '80s. -+# -+# (OK, then, I don't know why a couple of these say "harris beehive".) -+# -+ -+# Reports are that most of these Beehive entries (except superbee) have not -+# been tested and do not work right. <rmso> is a trouble spot. Be warned. -+ -+# (bee: <ich1> was empty, which is obviously bogus -- esr) -+beehive|bee|harris beehive, -+ OTbs, am, mir, -+ cols#80, lines#24, -+ cbt=\E>, clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC, -+ cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP, -+ dl1=\EM, ed=\EJ, el=\EK, home=\EH, il1=\EL, kbs=^H, kcbt=\E>, -+ kclr=\EE, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -+ kdch1=\EP, kdl1=\EM, kel=\EK, khome=\EH, kich1=\EQ, kil1=\EL, -+ krmir=\E@, rmir=\E@, rmso=\Ed@, rmul=\Ed@, sgr0=\Ed@, -+ smir=\EQ, smso=\EdP, smul=\Ed`, -+# set tab is ^F, clear (one) tab is ^V, no way to clear all tabs. -+# good grief - does this entry make :sg:/:ug: when it doesn't have to? -+# look at those spaces in <rmso>/<smso>. Seems strange to me... -+# (beehive: <if=/usr/share/tabset/beehive> removed, no such file. If you -+# really care, cook up one using ^F -- esr) -+beehive3|bh3m|beehiveIIIm|harris beehive 3m, -+ OTbs, am, -+ cols#80, it#8, lines#20, -+ bel=^G, clear=^E^R, cr=^M, cub1=^H, cud1=^J, cuf1=^L, cuu1=^K, -+ dl1=\021$<350>, ed=^R, el=^P, home=^E, ht=^I, hts=^F, -+ il1=\023$<160>, ind=^J, ll=^E^K, rmso=\s^_, smso=^]\s, -+beehive4|bh4|beehive 4, -+ am, -+ cols#80, lines#24, -+ bel=^G, clear=\EE, cr=^M, cub1=\ED, cud1=^J, cuf1=\EC, -+ cuu1=\EA, ed=\EJ, el=\EK, home=\EH, ind=^J, -+# There was an early Australian kit-built computer called a "Microbee". -+# It's not clear whether this is for one of those or for a relative -+# of the Beehive. -+microb|microbee|micro bee series, -+ OTbs, am, -+ cols#80, it#8, lines#24, -+ bel=^G, clear=\EE, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, -+ el=\EK, ht=^I, ind=^J, kcub1=\ED, kcud1=\EB, kcuf1=\EC, -+ kcuu1=\EA, kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, -+ kf6=\Eu, kf7=\Ev, kf8=\Ew, kf9=\Ex, khome=\EH, rmso=\Ed@, -+ rmul=\Ed@, sgr0=\Ed@, smso=\s\EdP, smul=\Ed`, -+ -+# 8675, 8686, and bee from Cyrus Rahman -+# (8675: changed k10, k11...k16 to k;, F1...F6 -- esr) -+ha8675|harris 8675, -+ is2=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU, kf1=^F, -+ kf10=\Ed, kf11=^W, kf12=\ER, kf13=\EE, kf14=\EI, kf15=\Ei, -+ kf16=\Eg, kf2=^P, kf3=^N, kf4=^V, kf5=^J, kf6=^T, kf7=^H, -+ kf8=\177, kf9=\Ee, use=bee, -+# (8686: changed k10, k11...k16 to k;, F1...F6; fixed broken continuation -+# in :is: -- esr) -+ha8686|harris 8686, -+ is2=\ES\E#\E*\Eh\Em\E?\E1\E9\E@\EX\EU\E"*Z01\E"8F35021B7C83#\E"8F45021B7D83#\E"8F55021B7E83#\E"8F65021B7F83#\E"8F75021B7383#\E"8F851BD7#\E"8F95021B7083#\E"8FA5021B7183#\E"8FB5021B7283#, -+ kf1=\002\Ep\003, kf10=\Ej, kf11=\EW, kf12=\002\E{\003, -+ kf13=\002\E|\003, kf14=\002\E}\003, kf15=\002\E~\003, -+ kf16=\002\E\177\003, kf2=\002\Eq\003, kf3=\002\Er\003, -+ kf4=\002\Es\003, kf5=\E3, kf6=\EI, kf7=\ER, kf8=\EJ, kf9=\E(, -+ use=bee, -+ -+#### Hazeltine -+# -+# Hazeltine appears to be out of the terminal business as of 1995. These -+# guys were co-owners of the Terminal Brain Damage Hall Of Fame along with -+# Harris. They have a hazeltine.com domain (but no web page there ) and can -+# be reached at: -+# -+# Hazeltine -+# 450 East Pulaski Road -+# Greenlawn, New York 11740 -+# -+# As late as 1993, manuals for the terminal product line could still be -+# purchased from: -+# -+# TRW Customer Service Division -+# 15 Law Drive -+# P.O. Box 2076 -+# Fairfield, NJ 07007-2078 -+# -+# They're now (1998) a subsidiary of General Electric, operating under the -+# marque "GEC-Marconi Hazeltine" and doing military avionics. Web page -+# at <http://www.gec.com/cpd/1ncpd.htm#1.55>. -+# -+ -+# Since <cuf1> is blank, when you want to erase something you -+# are out of luck. You will have to do ^L's a lot to -+# redraw the screen. h1000 is untested. It doesn't work in -+# vi - this terminal is too dumb for even vi. (The code is -+# there but it isn't debugged for this case.) -+hz1000|hazeltine 1000, -+ OTbs, -+ cols#80, lines#12, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, home=^K, -+ ind=^J, -+# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981 -+hz1420|hazeltine 1420, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=\E^\, cr=^M, cub1=^H, cud1=^J, cuf1=^P, -+ cup=\E\021%p2%c%p1%{32}%+%c, cuu1=\E^L, dl1=\E^S, -+ ed=\E^X, el=\E^O, ht=^N, il1=\E^Z, ind=^J, rmso=\E^Y, -+ smso=\E^_, -+# New "safe" cursor movement (11/87) from <cgs@umd5.umd.edu>. Prevents -+# freakout with out-of-range args and tn3270. No hz since it needs to -+# receive tildes. -+hz1500|hazeltine 1500, -+ OTbs, am, hz, -+ cols#80, lines#24, -+ bel=^G, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P, -+ cup=~\021%p2%p2%?%{30}%>%t%{32}%+%;%{96}%+%c%p1%{96}%+%c, -+ cuu1=~^L, dl1=~\023$<40>, ed=~\030$<10>, el=~^O, home=~^R, -+ il1=~\032$<40>, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^P, -+ kcuu1=~^L, khome=~^R, rmso=~^Y, smso=~^_, -+# h1510 assumed to be in sane escape mode. Else use h1500. -+# (h1510: early versions of this entry apparently had "<rmso=\E^_>, -+# <smso=\E^Y>, but these caps were commented out in 8.3; also, -+# removed incorrect and overridden ":do=^J:" -- esr) -+hz1510|hazeltine 1510, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=\E^\, cr=^M, cub1=^H, cud1=\E^K, cuf1=^P, -+ cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, ed=\E^X, -+ el=\E^O, il1=\E^Z, ind=^J, -+# Hazeltine 1520 -+# The following switch settings are assumed for normal operation: -+# FULL CR U/L_CASE ESCAPE -+# FORMAT_OFF EOM_A_OFF EOM_B_OFF WRAPAROUND_ON -+# Other switches may be set for operator convenience or communication -+# requirements. -+hz1520|Hazeltine 1520, -+ OTbs, am, bw, msgr, -+ cols#80, lines#24, -+ bel=^G, bold=\E^_, clear=\E^\, cr=^M, cub1=^H, cud1=^J, -+ cuf1=^P, cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, -+ ed=\E^X, el=\E^O, home=\E^R, il1=\E^Z, ind=^J, kbs=^H, -+ kclr=\E^\, kcub1=^H, kcud1=\E^K, kcuf1=^P, kcuu1=\E^L, -+ kdl1=\E^S, ked=\E^X, kel=\E^O, khome=\E^R, kil1=\E^Z, -+ rmso=\E^Y, rs1=\E$\E\005\E?\E\031, sgr0=\E^Y, smso=\E^_, -+# This version works with the escape switch off -+# (h1520: removed incorrect and overridden ":do=^J:" -- esr) -+hz1520-noesc|hazeltine 1520, -+ am, hz, -+ cols#80, lines#24, -+ bel=^G, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P, -+ cup=~\021%p2%c%p1%c$<1>, cuu1=~^L, dl1=~^S, ed=~^X, el=~^O, -+ home=~^R, il1=~^Z, ind=^J, rmso=~^Y, smso=~^_, -+# Note: the h1552 appears to be the first Hazeltine terminal which -+# is not braindamaged. It has tildes and backprimes and everything! -+# Be sure the auto lf/cr switch is set to cr. -+hz1552|hazeltine 1552, -+ OTbs, -+ cud1=^J, dl1=\EO, il1=\EE, kf1=\EP, kf2=\EQ, kf3=\ER, lf1=blue, -+ lf2=red, lf3=green, use=vt52, -+hz1552-rv|hazeltine 1552 reverse video, -+ cud1=^J, rmso=\ET, smso=\ES, use=hz1552, -+# Note: h2000 won't work well because of a clash between upper case and ~'s. -+hz2000|hazeltine 2000, -+ OTbs, OTnc, am, -+ cols#74, lines#27, -+ bel=^G, clear=~\034$<6>, cub1=^H, cud1=^J, -+ cup=~\021%p2%c%p1%c, dl1=~\023$<6>, home=~^R, -+ il1=~\032$<6>, ind=^J, pad=\177, -+# Date: Fri Jul 23 10:27:53 1982. Some unknown person wrote: -+# I tested this termcap entry for the Hazeltine Esprit with vi. It seems -+# to work ok. There is one problem though if one types a lot of garbage -+# characters very fast vi seems not able to keep up and hangs while trying -+# to insert. That's in insert mode while trying to insert in the middle of -+# a line. It might be because the Esprit doesn't have insert char and delete -+# char as a built in function. Vi has to delete to end of line and then -+# redraw the rest of the line. -+esprit|Hazeltine Esprit I, -+ OTbs, am, bw, -+ cols#80, lines#24, -+ bel=^G, cbt=\E^T, clear=\E^\, cr=^M, cub1=^H, cud1=\E^K, -+ cuf1=^P, cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, -+ ed=\E^W, el=\E^O, home=\E^R, il1=\E^Z, ind=^J, is2=\E?, kbs=^H, -+ kcub1=^H, kcud1=\E^K, kcuf1=^P, kcuu1=\E^L, kf0=^B0^J, -+ kf1=^B1^J, kf2=^B2^J, kf3=^B3^J, kf4=^B4^J, kf5=^B5^J, -+ kf6=^B6^J, kf7=^B7^J, kf8=^B8^J, kf9=^B9^J, khome=\E^R, -+ lf0=0, lf1=1, lf2=2, lf3=3, lf4=4, lf5=5, lf6=6, lf7=7, lf8=8, lf9=9, -+ rmkx=\E>, rmso=\E^Y, smkx=\E<, smso=\E^_, -+esprit-am|hazeltine esprit auto-margin, -+ am, use=esprit, -+# Hazeltine Modular-1 from Cliff Shackelton <ittvax!ittral!shackelt> via BRL -+# Vi it seems always wants to send a control J for "do" and it turned out -+# that the terminal would work somewhat if the auto LF/CR was turned off. -+# (hmod1: removed :dn=~^K: -- esr) -+hmod1|Hazeltine Modular 1, -+ OTbs, am, hz, -+ cols#80, lines#24, -+ bel=^G, cbt=~^T, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P, -+ cup=~\021%p2%c%p1%c, cuu1=~^L, dl1=~^S, home=~^R, il1=~^Z, -+ ind=^J, kcub1=^H, kcud1=~^K, kcuf1=^P, kcuu1=~^L, khome=~^R, -+ rc=~^Q, rmso=~^Y, sc=~^E, sgr0=~^Y, smso=~^_, -+# -+# Hazeltine Executive 80 Model 30 (1554?) -+# from Will Martin <control@ALMSA-1.ARPA> via BRL -+# Like VT100, except for different "am" behavior. -+hazel|exec80|h80|he80|Hazeltine Executive 80, -+ OTbs, OTpt, am, -+ cols#80, it#8, lines#24, vt#3, -+ OTnl=^J, bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>, -+ clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub1=^H, cud1=^J, cuf1=\E[C$<2/>, -+ cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>, -+ ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, ht=^I, -+ is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, kcud1=\EOB, -+ kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, -+ kf4=\EOS, rc=\E8, rev=\E[7m$<2/>, -+ rf=/usr/share/tabset/vt100, ri=\EM$<5/>, -+ rmkx=\E[?1l\E>, rmso=\E[m$<2/>, rmul=\E[m$<2/>, -+ rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sgr0=\E[m$<2/>, smkx=\E[?1h\E=, smso=\E[7m$<2/>, -+ smul=\E[4m$<2/>, -+ -+#### IBM -+# -+ -+ibm327x|line mode IBM 3270 style, -+ gn, -+ clear=^M^J, el=^M, home=^M, -+ -+ibm3101|i3101|IBM 3101-10, -+ OTbs, am, xon, -+ cols#80, lines#24, -+ bel=^G, clear=\EK, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, -+ el=\EI, home=\EH, hts=\E0, ind=^J, kcub1=\ED, kcud1=\EB, -+ kcuf1=\EC, kcuu1=\EA, nel=^M^J, tbc=\EH, -+ibm3151|IBM 3151 display, -+ is2=\E S, rmacs=\E>B, rmcup=\E>B, rs2=\E S, s0ds=\E>B, -+ sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E>B%;, -+ sgr0=\E4@\E>B, smacs=\E>A, smcup=\E>B, use=ibm3162, -+# From: Mark Easter <marke@fsi-ssd.csg.ssd.fsi.com> 29 Oct 1992 -+# removed kend, knp, kpp -TD -+ibm3161|ibm3163|wy60-316X|wyse60-316X|IBM 3161/3163 display, -+ OTbs, am, mir, msgr, -+ cols#80, it#8, lines#24, -+ acsc=j\352k\353l\354m\355n\356q\361t\364u\365v\366w\367x\370, -+ bel=^G, blink=\E4D, bold=\E4H, clear=\EH\EJ, cr=^M, cub1=\ED, -+ cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -+ cuu1=\EA, dch1=\EQ, dl1=\EO, ed=\EJ, el=\EI, home=\EH, ind=^J, -+ invis=\E4P, kbs=^H, kcbt=\E2, kclr=\EL\r, kctab=\E1, -+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EQ, -+ kdl1=\EO, ked=\EJ, kel=\EI, kf1=\Ea\r, kf10=\Ej\r, -+ kf11=\Ek\r, kf12=\El\r, kf13=\E!a\r, kf14=\E!b\r, -+ kf15=\E!c\r, kf16=\E!d\r, kf17=\E!e\r, kf18=\E!f\r, -+ kf19=\E!g\r, kf2=\Eb\r, kf20=\E!h\r, kf21=\E!i\r, -+ kf22=\E!j\r, kf23=\E!k\r, kf24=\E!l\r, kf3=\Ec\r, -+ kf4=\Ed\r, kf5=\Ee\r, kf6=\Ef\r, kf7=\Eg\r, kf8=\Eh\r, -+ kf9=\Ei\r, khome=\EH, khts=\E0, kich1=\EP \010, kil1=\EN, -+ ktbc=\E 1, mc4=^P^T, mc5=^P^R, rev=\E4A, rmcup=\E>A, -+ rmso=\E4@, rmul=\E4@, -+ sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E<@%;, -+ sgr0=\E4@\E<@, smcup=\E>A, smso=\E4A, smul=\E4B, -+ -+ibm3161-C|IBM 3161-C NLS terminal using cartridge, -+ rmcup=\E>B, s0ds=\E>B, s1ds=\E>A, smcup=\E>B, use=ibm3161, -+ibm3162|IBM 3162 display, -+ blink=\E4$a, bold=\E4(a, il1=\EN, invis=\E40a, rev=\E4!a, -+ rmso=\E4>b, rmul=\E4=b, sgr0=\E4@, smso=\E4!a, smul=\E4"a, -+ use=ibm3161-C, -+ -+# This really should not use setab/setaf, but it is clear that the -+# original terminfo does not toggle red/blue colors as in setb/setf. -+ibm3164|i3164|IBM 3164, -+ msgr, -+ colors#8, pairs#64, -+ op=\E4 "@, rmcup=\E!9(N\E>B, s0ds=\E>B, s1ds=\E>A, -+ setab=\E4 %p1%{64}%+%c, -+ setaf=\E4%?%p1%t %p1%{32}%+%c%e!'%;@, -+ smcup=\E!9/N\E>B, use=ibm3161, -+ -+ibm5151|wy60-AT|wyse60-AT|IBM 5151 Monochrome display, -+ am, bw, msgr, xon, -+ cols#80, it#8, lines#25, -+ acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, -+ hpa=\E[%i%p1%dG, il=\E[%p1%dL, il1=\E[L, ind=\E[S, -+ indn=\E[%p1%dS, invis=\E[8m, is2=\Ec, kbs=^H, kcbt=\E[Z, -+ kclr=\E[144q, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kdch1=\E[P, ked=\E[148q, kel=\E[142q, -+ kend=\E[146q, kf1=\E[001q, kf10=\E[010q, kf11=\E[011q, -+ kf12=\E[012q, kf13=\E[013q, kf14=\E[014q, kf15=\E[015q, -+ kf16=\E[016q, kf17=\E[017q, kf18=\E[018q, kf19=\E[019q, -+ kf2=\E[002q, kf20=\E[020q, kf21=\E[021q, kf22=\E[022q, -+ kf23=\E[023q, kf24=\E[024q, kf25=\E[025q, kf26=\E[026q, -+ kf27=\E[027q, kf28=\E[028q, kf29=\E[029q, kf3=\E[003q, -+ kf30=\E[030q, kf31=\E[031q, kf32=\E[032q, kf33=\E[033q, -+ kf34=\E[034q, kf35=\E[035q, kf36=\E[036q, kf4=\E[004q, -+ kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q, -+ kf9=\E[009q, khome=\E[H, kich1=\E[139q, kil1=\E[140q, -+ kind=\E[151q, knp=\E[154q, kpp=\E[150q, kri=\E[155q, -+ krmir=\E[4l, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmir=\E[4l, -+ rmso=\E[m, rmul=\E[m, rs2=\Ec, -+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m, -+ sgr0=\E[0m, smir=\E[4h, smso=\E[7m, smul=\E[4m, -+ -+ibmaed|IBM Experimental display, -+ OTbs, am, eo, msgr, -+ cols#80, it#8, lines#52, -+ clear=\EH\EK, cub1=^H, cud1=\EB, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EQ, -+ dl1=\EO, ed=\EJ, el=\EI, flash=\EG, home=\EH, ht=^I, ich1=\EP, -+ il1=\EN, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -+ rmso=\E0, sgr0=\E0, smso=\E0, -+ibm-apl|apl|IBM apl terminal simulator, -+ lines#25, use=dm1520, -+# (ibmmono: this had an unknown `sb' boolean, I changed it to `bs'. -+# Also it had ":I0=f10:" which pretty obviously should be "l0=f10" -- esr) -+ibmmono|IBM workstation monochrome, -+ eslok, hs, -+ bold=\EZ, dl1=\EM, dsl=\Ej\EY8 \EI\Ek, fsl=\Ek, il1=\EL, -+ invis=\EF\Ef0;\Eb0;, kbs=^H, kf0=\E<, kf1=\ES, kf2=\ET, -+ kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\EY, -+ khome=\EH, kich1=\0, kind=\EE, knp=\EE, kpp=\Eg, kri=\EG, -+ lf0=f10, rev=\Ep, ri=\EA, rmso=\Ez, rmul=\Ew, -+ sgr0=\Ew\Eq\Ez\EB, smso=\EZ, smul=\EW, tsl=\Ej\EY8%+ \Eo, -+ use=ibm3101, -+ibmega|IBM Enhanced Color Display, -+ cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, -+ nel=^M^J, use=ibmmono, -+# This color scheme is assumed in some recent IBM terminal descriptions -+# (green on black, emulated on a 16-color terminal). -+ibm+color|IBM color definitions, -+ colors#8, ncv#3, pairs#64, -+ op=\E[32m\E[40m, -+ setb=\E[%?%p1%{0}%=%t40m%e%p1%{1}%=%t41m%e%p1%{2}%=%t42m%e%p1%{3}%=%t43m%e%p1%{4}%=%t44m%e%p1%{5}%=%t45m%e%p1%{6}%=%t46m%e%p1%{7}%=%t107m%;, -+ setf=\E[%?%p1%{0}%=%t30m%e%p1%{1}%=%t31m%e%p1%{2}%=%t32m%e%p1%{3}%=%t33m%e%p1%{4}%=%t34m%e%p1%{5}%=%t35m%e%p1%{6}%=%t36m%e%p1%{7}%=%t97m%;, -+ibm+16color|IBM aixterm color definitions, -+ colors#16, pairs#256, -+ setab=\E[%?%p1%{8}%<%t%p1%{40}%+%e%p1%{92}%+%;%dm, -+ setaf=\E[%?%p1%{8}%<%t%p1%{30}%+%e%p1%{82}%+%;%dm, -+ setb=%p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m, -+ setf=%p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m, -+ibm5154|IBM 5154 Color display, -+ colors#8, ncv@, pairs#64, -+ bold@, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=ibm5151, -+ use=ibm+color, -+ibmega-c|ibm5154-c|IBM Enhanced Color Display with standout and underline, -+ rmso=\EB, rmul=\EB, smso=\EF\Ef3;, smul=\EF\Ef2;, -+ use=ibmmono, -+ibmvga-c|IBM VGA display color termcap, -+ cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, -+ nel=^M^J, use=ibmega-c, -+ibmvga|IBM VGA display, -+ cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, -+ nel=^M^J, use=ibmega, -+# ibmapa* and ibmmono entries come from ACIS 4.3 distribution -+rtpc|ibmapa16|IBM 6155 Extended Monochrome Graphics Display, -+ lines#32, -+ dsl=\Ej\EY@ \EI\Ek, tsl=\Ej\EY@%+ \Eo, use=ibmmono, -+ibm6155|IBM 6155 Black & White display, -+ blink@, bold@, use=ibm5151, -+# Advanced Monochrome (6153) and Color (6154) Graphics Display: -+ibmapa8c|ibmapa8|IBM 6154 Advanced Graphics Display, -+ lines#31, -+ dsl=\Ej\EY? \EI\Ek, tsl=\Ej\EY?%+ \Eo, use=ibmmono, -+ibmapa8c-c|ibm6154-c|IBM 6154 Advanced Color Graphics Display, -+ lines#31, -+ dim=\EF\Ef7;, dsl=\Ej\EY? \EI\Ek, tsl=\Ej\EY?%+ \Eo, -+ use=ibmega-c, -+ibm6154|IBM 6154 Color displays, -+ blink@, bold=\E[12m, s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, -+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;12%;m, -+ sgr0=\E[0;10m, use=ibm5154, -+ibm6153|IBM 6153 Black & White display, -+ blink@, bold=\E[12m, s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, -+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;12%;m, -+ sgr0=\E[0;10m, use=ibm5151, -+ibm6153-90|IBM 6153 Black & White display, -+ cols#90, lines#36, -+ blink@, bold@, use=ibm5151, -+ibm6153-40|IBM 6153 Black & White display, -+ cols#40, lines#12, use=ibm6153-90, -+ibm8512|ibm8513|IBM color VGA Terminal, -+ am, mir, msgr, -+ cols#80, it#8, lines#25, -+ acsc=jjkkllmmnnqqttuuvvwwxx, blink=\E[5m, bold=\E[1m, -+ clear=\E[H\E[J, cub1=\E[D, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, il=\E[%p1%dL, -+ il1=\E[L, is2=\Eb\E[m\017\E[?7h, kcud1=\E[B, kcuu1=\E[A, -+ kf0=\E[010q, kf1=\E[001q, kf2=\E[002q, kf3=\E[003q, -+ kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, -+ kf8=\E[008q, kf9=\E[009q, khome=\E[H, rc=\E[u, rev=\E[7m, -+ rmacs=^O, rmam=\E[?7l, rmcup=\E[20h, rmdc=\E[4l, -+ rmir=\E[4l, rmso=\E[m, rmul=\E[m, -+ rs1=\Eb\E[m\017\E[?7h\E[H\E[J, sc=\E[s, sgr0=\E[m, -+ smacs=^N, smam=\E[?7h, smcup=\E[20;4l\E[?7h\Eb, -+ smdc=\E[4h, smir=\E[4h, smso=\E[7m, smul=\E[4m, -+ use=ibm8503, -+hft-c|HFT with Color, -+ colors#8, pairs#64, -+ acsc=jjkkllmmnnqqttuuvvwwxx, s0ds=\E(B, s1ds=\E(0, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0m\E(B, -+ use=ibm5151, use=ibm+color, -+hft-c-old|HFT with Color PC850, -+ colors#8, pairs#64, -+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=ibm5151, -+ use=ibm+color, -+hft-old|AIWS High Function Terminal, -+ am, xon, -+ cols#80, lines#25, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -+ cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu1=\E[A, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, -+ ht=^I, ich1=\E[@, il1=\E[L, ind=^J, invis=\E[8m, kbs=^H, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kf1=\E[001q, kf2=\E[002q, kf3=\E[003q, kf4=\E[004q, -+ kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q, -+ kf9=\E[009q, khome=\E[H, knp=\E[153q, kpp=\E[159q, -+ ktbc=\E[010q, rev=\E[7m, rmir=\E6, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, smir=\E6, smso=\E[7m, smul=\E[4m, use=ibm+color, -+ibm-system1|system1|ibm system/1 computer, -+ am, xt, -+ cols#80, lines#24, -+ bel=^G, clear=^Z, cub1=^H, cuf1=^\, -+ cup=\005%p1%{32}%+%c%p2%{32}%+%c, cuu1=^^, home=^K, -+ ind=^J, -+# lft-pc850 : IBM Low Function Terminal Device -+# lft "supports" underline, bold, and blink in the sense that the lft code -+# sets all the right bits. HOWEVER, depending upon the adapter, these -+# attributes may or may not be supported by the device driver. -+lft|lft-pc850|LFT-PC850|IBM LFT PC850 Device, -+ am, bw, msgr, xon, -+ cols#80, it#8, lines#25, -+ acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -+ cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[2J, el=\E[0K, -+ home=\E[H, hpa=\E[%i%p1%dG, ich=\E[%p1%d@, il=\E[%p1%dL, -+ il1=\E[L, ind=\ED, indn=\E[%p1%dS, invis=\E[8m, is2=\Ec, -+ kbs=^H, kcbt=\E[Z, kclr=\E[144q, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, ked=\E[148q, -+ kel=\E[142q, kend=\E[146q, kf1=\E[001q, kf10=\E[010q, -+ kf11=\E[011q, kf12=\E[012q, kf13=\E[013q, kf14=\E[014q, -+ kf15=\E[015q, kf16=\E[016q, kf17=\E[017q, kf18=\E[018q, -+ kf19=\E[019q, kf2=\E[002q, kf20=\E[020q, kf21=\E[021q, -+ kf22=\E[022q, kf23=\E[023q, kf24=\E[024q, kf25=\E[025q, -+ kf26=\E[026q, kf27=\E[027q, kf28=\E[028q, kf29=\E[029q, -+ kf3=\E[003q, kf30=\E[030q, kf31=\E[031q, kf32=\E[032q, -+ kf33=\E[033q, kf34=\E[034q, kf35=\E[035q, kf36=\E[036q, -+ kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, -+ kf8=\E[008q, kf9=\E[009q, khome=\E[H, kich1=\E[139q, -+ kil1=\E[140q, kind=\E[151q, knp=\E[154q, kpp=\E[150q, -+ kri=\E[155q, krmir=\E[4l, rev=\E[7m, ri=\EL, rin=\E[%p1%dT, -+ rmacs=\E(B, rmir=\E[4l, rmso=\E[0m, rmul=\E[0m, rs2=\Ec, -+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;, -+ sgr0=\E[0m, smacs=\E(0, smir=\E[4h, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, -+# "Megapel" refers to the display adapter, which was used with the IBM RT -+# aka IBM 6150. -+ibm5081|hft|IBM Megapel Color display, -+ acsc=jjkkllmmnnqqttuuvvwwxx, blink@, bold@, s0ds=\E(B, -+ s1ds=\E(0, sgr0=\E[0m\E(B, use=ibm5154, -+ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 Megapel enhanced color display, -+ eslok, hs, -+ lines#33, -+ dsl=\Ej\EYA \EI\Ek, fsl=\Ek, tsl=\Ej\EYA%+ \Eo, -+ use=ibmega-c, -+ibm8503|ibm8507|ibm8604|IBM 8503 B & W VGA display, -+ use=hft-c, -+ibm8514|IBM 8514/a color VGA display, -+ eslok, hs, -+ dsl=\Ej\EYI \EI\Ek, fsl=\Ek, tsl=\Ej\EYI%+ \Eo, use=hft, -+ibm8514-c|IBM 8514 color display with standout and underline, -+ eslok, hs, -+ lines#41, -+ cr=^M, cud1=^J, dsl=\Ej\EYI \EI\Ek, fsl=\Ek, ht=^I, ind=^J, -+ kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, tsl=\Ej\EYI%+ \Eo, -+ use=ibmega-c, -+ - # --# ((((('@' + P5) | (P4 << 1)) | (P3 << 3)) | (P2 << 4)) | (p1 * 17)) => --# ((((('@' + P5) + (P4 << 1)) + (P3 << 3)) + (P2 << 4)) + (p1 * 17)) -+# AIX entries. IBM ships these with AIX 3.2.5. -+# -- added rc, sc based on manpage -TD -+# Note that we could use ibm+16color, but that is not how IBM defines this one. -+aixterm|IBM Aixterm Terminal Emulator, -+ eslok, hs, -+ acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E, -+ fsl=\E[?F, rc=\E8, ri@, s0ds=\E(B, s1ds=\E(0, sc=\E7, -+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;, -+ sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6154, -+aixterm-m|IBM AIXterm Monochrome Terminal Emulator, -+ eslok, hs, -+ acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E, -+ fsl=\E[?F, ri@, s0ds=\E(B, s1ds=\E(0, -+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, -+ sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6153, -+aixterm-m-old|old IBM AIXterm Monochrome Terminal Emulator, -+ eslok, hs, -+ bold=\E[1m, dsl=\E[?E, fsl=\E[?F, ri@, -+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, -+ tsl=\E[?%p1%dT, use=ibm6153, -+jaixterm|IBM Kanji Aixterm Terminal Eemulator, -+ acsc@, use=aixterm, -+jaixterm-m|IBM Kanji AIXterm Monochrome Terminal Emulator, -+ acsc@, use=aixterm-m, -+ -+# This flavor is adapted from xterm, in turn from aixterm documentation -TD -+aixterm-16color|IBM Aixterm Terminal Emulator with 16 colors, -+ use=ibm+16color, use=aixterm, -+ -+#### Infoton/General Terminal Corp. - # --# Where: P1 <==> Standout attribute parameter --# P2 <==> Underline attribute parameter --# P3 <==> Reverse attribute parameter --# P4 <==> Blink attribute parameter --# P5 <==> Dim attribute parameter --# From <root@goliath.un.atlantaga.NCR.COM>, init string hacked by SCO. --ncr7900i|ncr7900|ncr 7900 model 1, -- am, bw, ul, -- cols#80, lines#24, xmc#1, -- bel=^G, blink=\E0B, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^F, -- cup=\E1%p2%c%p1%c, cuu1=^Z, dim=\E0A, ed=\Ek, el=\EK, ind=^J, -- is2=\E0@\010\E3\E4\E7, kcub1=^U, kcud1=^J, kcuf1=^F, -- kcuu1=^Z, khome=^A, ll=^A, mc4=^T, mc5=^R, rev=\E0P, rmso=\E0@, -- rmul=\E0@, -- sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c, -- sgr0=\E0@, smso=\E0Q, smul=\E0`, --ncr7900iv|ncr 7900 model 4, -- am, bw, eslok, hs, -+ -+# gt100 sounds like something DEC would come out with. Let's hope they don't. -+i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100), -+ OTbs, am, - cols#80, lines#24, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, -- cup=\013%p1%{64}%+%c\E\005%p2%02d, dl1=\E^O, dsl=\Ey1, -- fsl=\Ek\Ey5, home=\013@\E^E00, il1=\E^N, ind=^J, kbs=^H, -- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf1=\ES, kf2=\ET, -- kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, -- khome=\EH, lf6=blue, lf7=red, lf8=white, nel=^M^J, -- tsl=\Ej\Ex5\Ex1\EY8%p1%{32}%+%c\Eo, --# Warning: This terminal will lock out the keyboard when it receives a CTRL-D. --# The user can enter a CTRL-B to get out of this locked state. --# In <hpa>, we want to output the character given by the formula: --# ((col / 10) * 16) + (col % 10) where "col" is "p1" --ncr7901|ncr 7901 model, -- am, bw, ul, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\Ef%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA, dl1=\EM, -+ ed=\EJ, el=\EK, flash=\Eb$<200/>\Ea, home=\EH, il1=\EL, -+ ind=^J, rmso=\Ea, smso=\Eb, -+i400|infoton 400, -+ OTbs, am, -+ cols#80, lines#25, -+ bel=^G, clear=\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%3d;%p2%3dH, cuu1=\E[A, -+ dch1=\E[4h\E[2Q\E[P\E[4l\E[0Q, dl1=\E[M, el=\E[N, -+ il1=\E[L, ind=^J, rmir=\E[4l\E[0Q, smir=\E[4h\E[2Q, -+# (addrinfo: removed obsolete ":bc=^Z:" -- esr) -+addrinfo, -+ am, - cols#80, lines#24, -- bel=^G, blink=\E0B, civis=^W, clear=^L, cnorm=^X, cr=^M, -- cub1=^H, cud1=^J, cuf1=^F, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dim=\E0A, -- ed=\Ek, el=\EK, -- hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%c, ind=^J, -- is2=\E4^O, kclr=^L, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, -- khome=^H, ll=^A, mc4=^T, mc5=^R, rev=\E0P, rmso=^O, rmul=^O, -- sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c\016, -- sgr0=^O, smso=\E0Q\016, smul=\E0`\016, -- vpa=\013%p1%{64}%+%c, -+ bel=^G, clear=^L, cr=^M, cub1=^Z, cud1=^J, cuf1=^Y, -+ cup=\037%p1%c%p2%c, cuu1=^\, ed=^K, home=^H, ind=^J, ll=^H^\, -+# (infoton: used to have the no-ops <lh#0>, <lw#0>, <nlab#0> -- esr) -+infoton, -+ am, -+ cols#80, lines#24, -+ bel=^G, clear=^L, cr=^M, cub1=^Z, cud1=^J, cuf1=^Y, cuu1=^\, -+ ed=^K, ind=^J, ll=^H^\, - --# Newbury Data Recording Limited (Newbury Data) -+# The ICL6402 was actually the Kokusai Display System 6402. -+# The 6404 was the KDS7372 (color version of the 6402). - # --# Have been manufacturing and reselling various peripherals for a long time --# They don't make terminals anymore, but are still in business (in 2007). --# Their e-mail address is at ndsales@newburydata.co.uk --# and their post address is: -+# ICL6404 control codes follow: - # --# Newbury Data Recording Ltd, --# Premier Park, Road One, --# Winsford, Cheshire, CW7 3PT -+#code function -+#~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -+#ctrl-A set SOM position at cursor position -+#ctrl-G Bell -+#ctrl-H Backspace -+#ctrl-I Horiz tab -+#ctrl-J Linefeed -+#ctrl-K Cursor up -+#ctrl-L Cursor right -+#ctrl-M Carriage return -+#ctrl-N Disable xon/xoff to host -+#ctrl-O Enable xon/xoff to host -+#ctrl-R Enable bidirectional mode -+#ctrl-T Disable bidirectional mode -+#ctrl-V Cursor down -+#ctrl-Z Clear unprotected data to insert char -+#ctrl-^ Cursor home -+#ctrl-_ Newline - # --# Their technical support is still good, they sent me for free a printed copy --# of the 9500 user manual and I got it just 1 week after I first contacted them --# (in 2005)! -- --# NDR 9500 --# Manufactured in the early/mid eighties, behaves almost the same as a --# Televideo 950. Take a 950, change its cabinet for a more 80s-ish one (but --# keep the same keyboard layout), add an optional 25-line mode, replace the DIP --# switches with a menu and remove the "lock line" feature (ESC ! 1 and ESC ! --# 2), here is the NDR 9500. Even the line-lock, albeit disabled, is --# recognized: if you type in "ESC !", the next (third) character is not --# echoed, showing that the terminal was actually waiting for a parameter! --ndr9500|nd9500|Newbury Data 9500, -- am, bw, hs, mc5i, mir, msgr, ul, xon, -- cols#80, lines#24, wsl#79, -- acsc=jDkClBmAnIqKtMuLvOwNxJ, bel=^G, cbt=\EI, civis=\E.0, -- clear=\E;, cnorm=\E.1, cr=^M, cub1=^H, cud1=^V, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -- dim=\E), dl1=\ER, dsl=\Eh, ed=\EY, el=\ET, -- flash=\Eb$<50/>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1, -- ich1=\EQ, il1=\EE, ind=^J, is2=\Ew\E'\EDF\El\Er\EO, -- kDC=\Er, kDL=\EO, kEOL=\Et, kIC=\Eq, kcbt=\EI, kclr=^Z, -- kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, -- ked=\EY, kel=\ET, kent=^M, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -- kf12=^A`\r, kf13=^Aa\r, kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r, -- kf17=^Ae\r, kf18=^Af\r, kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r, -- kf21=^Ai\r, kf22=^Aj\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -- kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -- kich1=\EQ, kil1=\EE, kprt=\EP, mc4=\Ea, mc5=\E`, nel=^_, -- pfloc=\E|%{48}%p1%+%c2%p2\031, -- pfx=\E|%{48}%p1%+%c1%p2\031, prot=\E), ri=\Ej, -- rmacs=\E%%, rmir=\Er, rmso=\E(, rmxon=^N, -- sgr=\E%%\E(%?%p1%p5%p8%|%|%t\E)%;%?%p9%t\E$%;, -- sgr0=\EG0\E%%\E(, smacs=\E$, smir=\Eq, smso=\E), smxon=^O, -- tbc=\E3, tsl=\Eg\Ef\011%p1%{32}%+%c, .kbs=^H, -- --ndr9500-nl|NDR 9500 with no status line, -- hs@, -- wsl@, -- dsl@, fsl@, tsl@, use=ndr9500, -- --ndr9500-25|NDR 9500 with 25th line enabled, -- lines#25, use=ndr9500, -- --ndr9500-25-nl|NDR 9500 with 25 lines and no status line, -- lines#25, use=ndr9500-nl, -- --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, -- 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, -- sgr0=\EG0\E%%\E(, smso=\EG4, smul=\EG8, use=ndr9500, -- --ndr9500-25-mc|NDR 500 with 25 lines and magic cookies, -- lines#25, use=ndr9500-mc, -- --ndr9500-mc-nl|NDR 9500 with magic cookies and no status line, -- hs@, -- wsl@, -- dsl@, fsl@, tsl@, use=ndr9500-mc, -- --ndr9500-25-mc-nl|NDR 9500 with 25 lines and magic cookies and no status line, -- lines#25, use=ndr9500-mc-nl, -- --#### Perkin-Elmer (Owl) -+#ESC lead-in char for multiple character command -+# -+#ESC space R execute power on sequence -+#ESC ! p1 p2 define scroll region: -+# p1 = scroll top line: 20h - 37h -+# p1 = scroll bottom line: 20h - 37h -+#ESC " unlock keyboard -+#ESC # lock keyboard -+#ESC $ Semi-graphics mode on -+#ESC % Semi-graphics mode off -+#ESC & protect mode on -+#ESC ' protect mode off -+#ESC ( write protect mode off (full intensity) -+#ESC ) write protect mode on (half intensity) -+# -+#ESC * clear screen -+#ESC + clear unprotected data to insert char -+#ESC , clear unprotected data to half intensity spaces -+#ESC - p1 p2 p3 p4 address cursor to page, row, column: -+# p1 = page number 0 - 3 -+# p2 = row 20h - 7fh -+# p3 = column (lo) 20h - 7fh -+# p4 = column (hi) 20h - 21h (only 132 col) -+#ESC . p1 set cursor style: -+# p1 = 0 invisible cursor -+# p1 = 1 block blinking cursor -+# p1 = 2 block steady cursor -+# p1 = 3 underline blinking cursor -+# p1 = 4 underline steady cursor -+#ESC / transmit cursor location (page, row, column) -+#ESC 0 p1 p2 p3 p4 program edit key: -+# p1 = edit key code: '@'-'S', '`'-'s' -+# p2 p3 p4 = program data (3 bytes) -+# -+#ESC 1 set tab -+#ESC 2 clear tab at cursor -+#ESC 3 clear all tabs -+#ESC 4 send unprotect line to cursor -+#ESC 5 send unprotect page to cursor -+#ESC 6 send line to cursor -+#ESC 7 send page to cursor -+#ESC 8 n set scroll mode: -+# n = 0 set jump scroll -+# n = 1 set smooth scroll -+#ESC 9 n control display: -+# n = 0 display off -+# n = 1 display on -+#ESC : clear unprotected data to null -+#ESC ; clear unprotected data to insert char -+# -+#ESC < keyclick on -+#ESC = p1 p2 address cursor to row, column -+# p1 = row 20h - 7fh -+# p2 = column (lo) 20h - 7fh -+# p3 = column (hi) 20h - 21h (only 132 col) -+#ESC > keyclick off -+#ESC ? transmit cursor location (row, column) - # --# These are official terminfo entries from within Perkin-Elmer. -+#ESC @ copy print mode on -+#ESC A copy print mode off -+#ESC B block mode on -+#ESC C block mode off (conversation mode) -+#ESC D F set full duplex -+#ESC D H set half duplex -+#ESC E line insert -+#ESC F p1 p2 set page colour (p1 = f/grnd, p2 = b/grnd) -+# 0 = black, 1 = red, 2 = green, 3 = yellow -+# 4 = blue, 5 = magenta, 6 = cyan, 7 = white -+#ESC G n set serial field attribute (n = 30h - 3Fh) -+#ESC H n full graphics mode: -+# n = 0 exit full graphics mode -+# n = 1 enter full graphics mode -+#ESC I back tab -+#ESC J back page -+#ESC K forward page - # -- --bantam|pe550|pe6100|perkin elmer 550, -- OTbs, -- cols#80, lines#24, -- bel=^G, clear=\EK$<20>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, -- el=\EI$<20>, home=\EH, ind=^J, ll=\EH\EA, --fox|pe1100|perkin elmer 1100, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=\EH\EJ$<132>, cr=^M, cub1=^H, cud1=^J, -- cuf1=\EC, cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, -- ed=\EJ$<5.5*>, el=\EI, flash=\020\002$<200/>\020\003, -- home=\EH, hts=\E1, ind=^J, ll=\EH\EA, tbc=\E3, --owl|pe1200|perkin elmer 1200, -- OTbs, am, in, -- cols#80, lines#24, -- bel=^G, clear=\EH\EJ$<132>, cr=^M, cub1=^H, cud1=^J, -- cuf1=\EC, cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, -- dch1=\EO$<5.5*>, dl1=\EM$<5.5*>, ed=\EJ$<5.5*>, -- el=\EI$<5.5>, flash=\020\002$<200/>\020\003, home=\EH, -- hts=\E1, ich1=\EN, il1=\EL$<5.5*>, ind=^J, ip=$<5.5*>, -- kbs=^H, kf0=\ERJ, kf1=\ERA, kf2=\ERB, kf3=\ERC, kf4=\ERD, -- kf5=\ERE, kf6=\ERF, kf7=\ERG, kf8=\ERH, kf9=\ERI, ll=\EH\EA, -- rmso=\E!\0, sgr0=\E!\0, smso=\E!^H, tbc=\E3, --pe1251|pe6300|pe6312|perkin elmer 1251, -- am, -- cols#80, it#8, lines#24, pb#300, vt#8, xmc#1, -- bel=^G, clear=\EK$<332>, cr=^M, cub1=\ED, cud1=\EB, cuf1=\EC, -- cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, -- ed=\EJ$<20*>, el=\EI$<10*>, home=\EH, hts=\E1, ind=^J, -- kf0=\ERA, kf1=\ERB, kf10=\ERK, kf2=\ERC, kf3=\ERD, kf4=\ERE, -- kf5=\ERF, kf6=\ERG, kf7=\ERH, kf8=\ERI, kf9=\ERJ, tbc=\E3, --# (pe7000m: this had --# rmul=\E!\0, smul=\E!\040, --# which is probably wrong, it collides with kf0 --pe7000m|perkin elmer 7000 series monochrome monitor, -- am, -- cols#80, lines#24, -- bel=^G, cbt=\E!Y, clear=\EK, cr=^M, cub1=\ED, cud1=\EB, -- cuf1=\EC, cup=\ES%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, -- ed=\EJ, el=\EI, home=\EH, ind=^J, -- is1=\E!\0\EW 7o\Egf\ES7\s, kbs=^H, kcub1=\E!V, -- kcud1=\E!U, kcuf1=\E!W, kcuu1=\E!T, kf0=\E!\0, kf1=\E!^A, -- kf10=\E!^J, kf2=\E!^B, kf3=\E!^C, kf4=\E!^D, kf5=\E!^E, -- kf6=\E!^F, kf7=\E!^G, kf8=\E!^H, kf9=\E!^I, khome=\E!S, -- ll=\ES7\s, ri=\ER, --pe7000c|perkin elmer 7000 series colour monitor, -- is1=\E!\0\EW 7o\Egf\Eb0\Ec7\ES7\s, rmso=\Eb0, -- rmul=\E!\0, smso=\Eb2, smul=\E!\s, use=pe7000m, -- --#### Sperry Univac -+#ESC L unformatted page print -+#ESC M L move window left (132 col mode only) -+#ESC M R move window right (132 col mode only) -+#ESC N set page edit (clear line edit) -+#ESC O set line edit (clear page edit) -+#ESC P formatted page print -+#ESC Q character insert -+#ESC R line delete -+#ESC S send message unprotected only -+#ESC T erase line to insert char -+#ESC U set monitor mode (see ESC X, ESC u) - # --# Sperry Univac has merged with Burroughs to form Unisys. -+#ESC V n select video attribute mode: -+# n = 0 serial field attribute mode -+# n = 1 parallel character attribute mode -+#ESC V 2 n define line attribute: -+# n = 0 single width single height -+# n = 1 single width double height -+# n = 2 double width single height -+# n = 3 double width double height -+#ESC V 3 n select character font: -+# n = 0 system font -+# n = 1 user defined font -+#ESC V 4 n select screen mode: -+# n = 0 page screen mode -+# n = 1 virtual screen mode -+#ESC V 5 n control mouse mode: -+# n = 0 disable mouse -+# n = 1 enable sample mode -+# n = 2 send mouse information -+# n = 3 enable request mode -+#ESC W character delete -+#ESC X clear monitor mode (see ESC U, ESC u) -+#ESC Y erase page to insert char - # -- --# This entry is for the Sperry UTS30 terminal running the TTY --# utility under control of CP/M Plus 1R1. The functionality --# provided is comparable to the DEC vt100. --# (uts30: I added <rmam>/<smam> based on the init string -- esr) --uts30|sperry uts30 with cp/m@1R1, -- am, bw, hs, -- cols#80, lines#24, wsl#40, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[1m, civis=\ER, clear=^L, -- cnorm=\ES, cr=^M, csr=\EU%p1%{32}%+%c%p2%{32}%+%c, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\EM, -- dl=\E[%p1%dM, dl1=\EL, ed=\E[J, el=\E[K, fsl=^M, home=\E[H, -- ht=^I, ich=\E[%p1%d@, ich1=\EO, il=\E[%p1%dL, il1=\EN, -- ind=^J, indn=\E[%p1%dB, is2=\E[U 7\E[24;1H, kbs=^H, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, khome=\E[H, -- rc=\EX, rev=\E[7m, rf=/usr/share/tabset/vt100, ri=\EI, -- rin=\E[%p1%dA, rmacs=\Ed, rmam=\E[?7l, rmso=\E[m, -- rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- sc=\EW, sgr0=\E[m, smacs=\EF, smam=\E[?7m, smso=\E[7m, -- smul=\E[4m, tsl=\E], uc=\EPB, -- --#### Tandem -+#ESC Z n send user/status line: -+# n = 0 send user line -+# n = 1 send status line -+# n = 2 send terminal ID -+#ESC [ p1 p2 p3 set character attribute (parallel char mode): -+# p1: 0 = normal -+# 1 = blank -+# 2 = blink -+# 3 = blink blank (= blank) -+# 4 = reverse -+# 5 = reverse blank -+# 6 = reverse blink -+# 7 = reverse blink blank (= reverse blank) -+# 8 = underline -+# 9 = underline blank -+# : = underline blink -+# ; = underline blink blank -+# < = reverse underline -+# = = reverse underline blank -+# > = reverse underline blink -+# ? = reverse underline blink blank -+# p2, p3: f/grnd, b/grnd colour -+# (see ESC F for colours) -+# use ZZ for mono, eg. -+# ESC [ 0 Z Z for normal -+# ESC [ 4 Z Z for inverse etc. - # --# Tandem builds these things for use with its line of fault-tolerant --# transaction-processing computers. They aren't generally available --# on the merchant market, and so are fairly uncommon. -+#ESC \ n set page size: -+# n = 1 24 lines/page -+# n = 2 48 lines/page -+# n = 3 72 lines/page -+# n = 4 96 lines/page -+#ESC ] n set Wordstar mode: -+# n = 0 normal (KDS7372) mode -+# n = 1 Wordstar mode - # -- --tandem6510|adm3a repackaged by Tandem, -- use=adm3a, -- --# A funny series of terminal that TANDEM uses. The actual model numbers --# have a fourth digit after 653 that designates minor variants. These are --# natively block-mode and rather ugly, but they have a character mode which --# this doubtless(?) exploits. There is a 6520 that is slightly dumber. --# (tandem653: had ":sb=\ES:", probably someone's mistake for sf; also, --# removed <if=/usr/share/tabset/tandem653>, no such file -- esr) --tandem653|t653x|Tandem 653x multipage terminal, -- OTbs, am, da, db, hs, -- cols#80, lines#24, wsl#64, xmc#1, -- clear=\EI, cub1=^H, cud1=^J, cuf1=\EC, -- cup=\023%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dsl=\Eo\r, -- ed=\EJ, el=\EK, fsl=^M, home=\EH, ind=\ES, ri=\ET, rmso=\E6\s, -- rmul=\E6\s, sgr0=\E6\s, smso=\E6$, smul=\E60, tsl=\Eo, -- --#### Tandy/Radio Shack -+#ESC b set foreground colour screen - # --# Tandy has a line of VDTs distinct from its microcomputers. -+#ESC c n enter self-test mode: -+# n = 0 exit self test mode -+# n = 1 ROM test -+# n = 2 RAM test -+# n = 3 NVRAM test -+# n = 4 screen display test -+# n = 5 main/printer port test -+# n = 6 mouse port test -+# n = 7 graphics board test -+# n = 8 graphics memory test -+# n = 9 display all 'E' -+# n = : display all 'H' -+#ESC d set background colour screen - # -- --dmterm|deskmate terminal, -- am, bw, -- cols#80, lines#24, -- bel=^G, civis=\EG5, clear=\Ej, cnorm=\EG6, cr=^M, cub1=^H, -- cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=\EA, dch1=\ES, dl1=\ER, ed=\EJ, el=\EK, home=\EH, ht=^I, -- ich1=\EQ, il1=\EP, ind=\EX, invis@, kcub1=\ED, kcud1=\EB, -- kcuf1=\EC, kcuu1=\EA, kf0=\E1, kf1=\E2, kf2=\E3, kf3=\E4, -- kf4=\E5, kf5=\E6, kf6=\E7, kf7=\E8, kf8=\E9, kf9=\E0, -- khome=\EH, lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, -- lf6=f7, lf7=f8, lf8=f9, lf9=f10, ll=\EE, rmul@, smul@, -- use=adm+sgr, --dt100|dt-100|Tandy DT-100 terminal, -- xon, -- cols#80, lines#24, xmc#1, -- acsc=jjkkllmmnnqqttuuvvwwxx, bel=^G, civis=\E[?25l, -- clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -- csr=\E[%p1%2d;%p2%2dr, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\010\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, -- dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@, -- il1=\E[L, ind=^J, is2=\E[?3l\E)0\E(B, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[?3i, -- kf10=\E[?5i, kf2=\E[2i, kf3=\E[@, kf4=\E[M, kf5=\E[17~, -- kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, khome=\E[H, -- knp=\E[29~, kpp=\E[28~, lf1=f1, lf2=f2, lf3=f3, lf4=f4, lf5=f5, -- lf6=f6, lf7=f7, lf8=f8, ri=\EM, rmacs=^O, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, smacs=^N, smso=\E[7m, smul=\E[4m, --dt100w|dt-100w|Tandy DT-100 terminal (wide mode), -- cols#132, use=dt100, --dt110|Tandy DT-110 emulating ansi, -- xon, -- cols#80, lines#24, -- acsc=jjkkllmmnnqqttuuvvwwxx, bel=^G, civis=\E[?25l, -- clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\010\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[0P, -- dl1=\E[0M, ed=\E[0J, el=\E[0K, enacs=\E(B\E)0, home=\E[H, -- ht=^I, ich1=\E[0@, il1=\E[0L, ind=^J, is2=\E[?3l\E)0\E(B, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[K, -- kf1=\E[1~, kf10=\E[10~, kf2=\E[2~, kf3=\E[3~, kf4=\E[4~, -- kf5=\E[5~, kf6=\E[6~, kf7=\E[7~, kf8=\E[8~, kf9=\E[9~, -- khome=\E[G, kich1=\E[@, knp=\E[26~, kpp=\E[25~, lf0=f1, -- lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, lf8=f9, -- lf9=f10, ri=\EM, rmacs=^O, rmso=\E[m, rmul=\E[m, sgr0=\E[m, -- smacs=^N, smso=\E[7m, smul=\E[4m, --pt210|TRS-80 PT-210 printing terminal, -- hc, os, -- cols#80, -- bel=^G, cr=^M, cud1=^J, ind=^J, -- --#### Tektronix (tek) -+#ESC e n program insert char (n = insert char) -+#ESC f text CR load user status line with 'text' -+# -+#ESC g display user status line on 25th line -+#ESC h display system status line on 25th line -+#ESC i tab -+#ESC j reverse linefeed -+#ESC k n duplex/local edit mode: -+# n = 0 duplex edit mode -+# n = 1 local edit mode -+#ESC l n select virtual screen: -+# n = 0 screen 1 -+# n = 1 screen 2 -+#ESC m save current config to NVRAM -+#ESC n p1 select display screen: -+# p1 = 0 screen 1 -+# p1 = 1 screen 2 -+# p1 = 2 screen 3 -+# p1 = 3 screen 4 -+#ESC o p1 p2 set characters/line and attribute: -+# p1 = 0 80 chars/line - # --# Tektronix tubes are graphics terminals. Most of them use modified --# oscilloscope technology incorporating a long-persistence green phosphor, --# and support vector graphics on a main screen with an attached "dialogue --# area" for interactive text. -+#ESC o p1 p2 set characters/line and attribute: -+# p1 = 0 80 chars/line -+# p1 = 1 132 chars/line -+# p2 = 0 single width single height -+# p2 = 1 single width double height -+# p2 = 2 double width single height -+# p2 = 3 double width double height - # -- --tek|tek4012|tektronix 4012, -- OTbs, os, -- cols#75, lines#35, -- bel=^G, clear=\E\014$<1000>, cr=^M, cub1=^H, cud1=^J, -- ff=\014$<1000>, is2=\E^O, --# (tek4013: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) --tek4013|tektronix 4013, -- acsc=, rmacs=\E^O, smacs=\E^N, use=tek4012, --tek4014|tektronix 4014, -- cols#81, lines#38, -- is2=\E\017\E9, use=tek4012, --# (tek4015: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) --tek4015|tektronix 4015, -- acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014, --tek4014-sm|tektronix 4014 in small font, -- cols#121, lines#58, -- is2=\E\017\E\:, use=tek4014, --# (tek4015-sm: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) --tek4015-sm|tektronix 4015 in small font, -- acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014-sm, --# Tektronix 4023 from Andrew Klossner <orca!andrew.tektronix@csnet-relay> -+#ESC q insert mode on -+#ESC r edit mode on -+#ESC s send message all -+#ESC t erase line to null -+#ESC u clear monitor mode (see ESC U, ESC X) -+#ESC v autopage mode on -+#ESC w autopage mode off -+#ESC x p1 p2 p3 define delimiter code... -+#ESC y erase page to null - # --# You need to have "stty nl2" in effect. Some versions of tset(1) know --# how to set it for you. -+#ESC z 2 p1 p2 p3 p4 draw quadrangle: -+# p1 = starting row -+# p2 = starting column -+# p3 = end row -+# p4 = end column - # --# It's got the Magic Cookie problem around stand-out mode. If you can't --# live with Magic Cookie, remove the :so: and :se: fields and do without --# reverse video. If you like reverse video stand-out mode but don't want --# it to flash, change the letter 'H' to 'P' in the :so: field. --tek4023|tektronix 4023, -- OTbs, am, -- OTdN#4, cols#80, lines#24, vt#4, xmc#1, -- OTnl=^J, bel=^G, clear=\E\014$<4/>, cr=^M, cub1=^H, cud1=^J, -- cuf1=^I, cup=\034%p2%{32}%+%c%p1%{32}%+%c, kbs=^H, -- rmso=^_@, smso=^_P, --# It is recommended that you run the 4025 at 4800 baud or less; --# various bugs in the terminal appear at 9600. It wedges at the --# bottom of memory (try "cat /usr/dict/words"); ^S and ^Q typed --# on keyboard don't work. You have to hit BREAK twice to get --# one break at any speed - this is a documented feature. --# Can't use cursor motion because it's memory relative, and --# because it only works in the workspace, not the monitor. --# Same for home. Likewise, standout only works in the workspace. -+#ESC { p1 p2 p3 p4 configure main port -+# (baud, stop bits, parity, word length) - # --# <el> was commented out since vi and rogue seem to work better --# simulating it with lots of spaces! -+#ESC | p1 p2 text Ctrl-Y program function key with 'text': -+# p1 = function key code: -+# '1' - ';' normal f1- f11 -+# '<' - 'F' shifted f1 - f11 -+# p2 = program mode: -+# 1 = FDX -+# 2 = LOC -+# 3 = HDX -+# Ctrl-Y = terminator -+# (use Ctrl-P to escape ^P, ^Y ) - # --# <il1> and <il> had 145ms of padding, but that slowed down vi's ^U --# and didn't seem necessary. -+#ESC } p1 p2 p3 p4 configure printer port -+# (baud, stop bits, parity, word length) -+#ESC ~ send system status - # --tek4024|tek4025|tek4027|tektronix 4024/4025/4027, -- OTbs, am, da, db, -- cols#80, it#8, lines#34, lm#0, -- bel=^G, clear=\037era\r\n\n, cmdch=^_, cr=^M, -- cub=\037lef %p1%d\r, cub1=^H, cud=\037dow %p1%d\r, -- cud1=^F^J, cuf=\037rig %p1%d\r, cuf1=\037rig\r, -- cuu=\037up %p1%d\r, cuu1=^K, dch1=\037dch\r, -- dl=\037dli %p1%d\r\006, dl1=\037dli\r\006, -- ed=\037dli 50\r, ht=^I, ich1=\037ich\r \010, -- il=\037up\r\037ili %p1%d\r, il1=\037up\r\037ili\r, -- ind=^F^J, -- is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r, -- rmkx=\037lea p2\r\037lea p4\r\037lea p6\r\037lea p8\r\037lea f5\r, -- smkx=\037lea p4 /h/\r\037lea p8 /k/\r\037lea p6 / /\r\037lea p2 /j/\r\037lea f5 /H/\r, --tek4025-17|tek 4025 17 line window, -- lines#17, use=tek4025, --tek4025-17-ws|tek 4025 17 line window in workspace, -- is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r\037wor 17\r\037mon 17\r, -- rmcup=\037mon h\r, rmso=\037att s\r, smcup=\037wor h\r, -- smso=\037att e\r, use=tek4025-17, --tek4025-ex|tek4027-ex|tek 4025/4027 w/!, -- is2=\037com 33\r\n!sto 9 17 25 33 41 49 57 65 73\r, -- rmcup=\037com 33\r, smcup=!com 31\r, use=tek4025, --# Tektronix 4025a --# From: Doug Gwyn <gwyn@brl-smoke.ARPA> --# The following status modes are assumed for normal operation (replace the --# initial "!" by whatever the current command character is): --# !COM 29 # NOTE: changes command character to GS (^]) --# ^]DUP --# ^]ECH R --# ^]EOL --# ^]RSS T --# ^]SNO N --# ^]STO 9 17 25 33 41 49 57 65 73 --# Other modes may be set according to communication requirements. --# If the command character is inadvertently changed, termcap can't restore it. --# Insert-character cannot be made to work on both top and bottom rows. --# Clear-to-end-of-display emulation via !DLI 988 is too grotty to use, alas. --# There also seems to be a problem with vertical motion, perhaps involving --# delete/insert-line, following a typed carriage return. This terminal sucks. --# Delays not specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! --# (tek4025a: removed obsolete ":xx:". This may mean the tek4025a entry won't --# work any more. -- esr) --tek4025a|Tektronix 4025A, -- OTbs, OTpt, am, bw, da, db, xon, -- cols#80, it#8, lines#34, -- bel=^G, cbt=\035bac;, clear=\035era;\n\035rup;, cmdch=^], -- cr=^M, cub=\035lef %p1%d;, cub1=^H, cud=\035dow %p1%d;, -- cud1=^J, cuf=\035rig %p1%d;, cuf1=\035rig;, -- cuu=\035up %p1%d;, cuu1=^K, dch=\035dch %p1%d;, -- dch1=\035dch;, dl=\035dli %p1%d;, dl1=\035dli;, -- el=\035dch 80;, hpa=\r\035rig %p1%d;, ht=^I, -- il1=\013\035ili;, ind=^J, indn=\035dow %p1%d;, -- rs2=!com 29\035del 0\035rss t\035buf\035buf n\035cle\035dis\035dup\035ech r\035eol\035era g\035for n\035pad 203\035pad 209\035sno n\035sto 9 17 25 33 41 49 57 65 73\035wor 0;, -- tbc=\035sto;, --# From: cbosg!teklabs!davem Wed Sep 16 21:11:41 1981 --# Here's the command file that I use to get rogue to work on the 4025. --# It should work with any program using the old curses (e.g. it better --# not try to scroll, or cursor addressing won't work. Also, you can't --# see the cursor.) --# (This "learns" the arrow keys for rogue. I have adapted it for termcap - mrh) --tek4025-cr|tek 4025 for curses and rogue, -- OTbs, am, -- cols#80, it#8, lines#33, -- clear=\037era;, cub1=^H, cud1=^F^J, cuf1=\037rig;, -- cup=\037jum%i%p1%d\,%p2%d;, cuu1=^K, ht=^I, ind=^F^J, -- is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r, -- rmcup=\037wor 0, smcup=\037wor 33h, --# next two lines commented out since curses only allows 128 chars, sigh. --# :ti=\037lea p1/b/\037lea p2/j/\037lea p3/n/\037lea p4/h/\037lea p5/ /\037lea p6/l/\037lea p7/y/\037lea p8/k/\037lea p9/u/\037lea p./f/\037lea pt/`era w/13\037lea p0/s/\037wor 33h:\ --# :te=\037lea p1\037lea p2\037lea p3\037lea p4\037lea pt\037lea p5\037lea p6\037lea p7\037lea p8\037lea p9/la/13\037lea p.\037lea p0\037wor 0: --tek4025ex|4025ex|4027ex|tek 4025 w/!, -- is2=\037com 33\r\n!sto 9\,17\,25\,33\,41\,49\,57\,65\,73\r, -- rmcup=\037com 33\r, smcup=!com 31\r, use=tek4025, --tek4105|tektronix 4105, -- OTbs, am, mir, msgr, ul, xenl, xt, -- cols#79, it#8, lines#29, -- acsc=, bel=^G, blink=\E[=3;<7m, bold=\E[=7;<4m, cbt=\E[Z, -- clear=\E[2J\E[H, cr=^M, cub1=\E[1D, cud1=\E[1B, cuf1=\E[1C, -- cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[1A, dch1=\E[1P, -- dim=\E[=1;<6m, dl1=\E[1M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, -- il1=\E[1L, ind=\E[S, invis=\E[=6;<5, is1=\E%!1\E[m, -- is2=\E%!1\E[?6141\E[m, kbs=^H, kcub1=\E[1D, kcud1=\E[1B, -- kcuf1=\E[1C, kcuu1=\E[1A, rev=\E[=1;<3m, ri=\E[T, -- rmacs=\E[m, rmcup=, rmir=\E[4l, rmso=\E[=0;<1m, -- rmul=\E[=0;<1m, sgr0=\E[=0;<1m, smacs=\E[1m, -- smcup=\E%!1\E[?6l\E[2J, smir=\E[4h, smso=\E[=2;<3m, -- smul=\E[=5;<2m, tbc=\E[1g, -+# Codes and info from Peter Disdale <pete@pdlmail.demon.co.uk> 12 May 1997 -+# -+# Entry is by esr going solely on above information and is UNTESTED. -+# This actually looks a lot like a Televideo 9xx. -+# This entry uses page 0 and is monochrome; I'm not brave enough to try -+# to make color work without a test terminal. The <am> capability is a guess. -+# The initialization string sets conversation mode, blinking underline cursor, -+# full duplex, parallel attribute mode, display user status line, white -+# foreground, black background, normal highlight. -+# -+icl6404|kds7372|icl6402|kds6402|ICL 6404 aka Kokusai Display Systems 7372, -+ OTbs, am, hs, -+ cols#80, lines#24, -+ bel=^G, blink=\E[2ZZ, cbt=\EI, civis=\E.0, clear=\E*, -+ cnorm=\E.3, cr=^M, -+ csr=\E!%+%p1%{32}%+%p2%{32} cud1=\026, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{80}%m%{32}%+%c%p2%{80}%>%{32}%+%c, -+ cuu1=^K, cvvis=\E.1, dch1=\EW, dl1=\ER, home=^^, ht=^I, -+ hts=\E1, il1=\EE, invis=\E[1ZZ, -+ is1=\EC\E.3\EDF\EV1\Eg\E[0ZZ, nel=^_, rev=\E[4ZZ, -+ rmir=\Er, rmso=\E[%gh%{4}%^%Ph%gh%dZZ, -+ rmul=\E[%gh%{8}%^%Ph%gh%dZZ, rs2=\Eo1, -+ sgr=\E[%'0'%?%p1%t%'8'%|%;%?%p2%t%'8'%|%;%?%p3%t%'4'%|%;%?%p4%t%'2'%|%;%?%p7%t%'1'%|%;%cZZ, -+ sgr0=\E[0ZZ, smir=\Eq, smso=\E[8ZZ, smul=\E[8ZZ, tbc=\E3, -+icl6404-w|kds7372-w|ICL 6404 aka Kokusai Display Systems 7372 132 cols, -+ rs2=\Eo1, use=icl6404, - --# (tek4105-30: I added <rmam>/<smam> based on the init string -- esr) --tek4105-30|4015 emulating 30 line vt100, -- am, mir, msgr, xenl, xon, -- cols#80, it#8, lines#30, vt#3, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -- clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C$<2>, -- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, -- cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, -- enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8, -- rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, -- rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, -- 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=vt100+fnkeys, -+#### Interactive Systems Corp -+# -+# ISC used to sell OEMed and customized hardware to support ISC UNIX. -+# ISC UNIX still exists in 1995, but ISC itself is no more; they got -+# bought out by Sun. -+# -+ -+# From: <cithep!eric> Wed Sep 16 08:06:44 1981 -+# (intext: removed obsolete ":ma=^K^P^R^L^L ::bc=^_:", also the -+# ":le=^_:" later overridden -- esr) -+intext|Interactive Systems Corporation modified owl 1200, -+ OTbs, am, -+ cols#80, it#8, lines#24, xmc#1, -+ bel=^G, cbt=^Y, clear=\014$<132>, cr=^M, cub1=^H, cud1=^J, -+ cuf1=^^, cup=\017%p1%{32}%+%c%p2%{32}%+%c, cuu1=^\, -+ dch1=\022$<5.5*>, dl1=\021$<5.5*>, ed=\026J$<5.5*>, -+ el=^Kp^R, ht=^I, il1=\020$<5.5*>, ind=^J, ip=$<5.5*>, kbs=^H, -+ kcub1=^_, kcud1=^J, kcuf1=^^, kcuu1=^\, kf0=^VJ\r, kf1=^VA\r, -+ kf2=^VB\r, kf3=^VC\r, kf4=^VD\r, kf5=^VE\r, kf6=^VF\r, -+ kf7=^VG\r, kf8=^VH\r, kf9=^VI\r, khome=^Z, rmir=^V<, -+ rmkx=^V9, rmso=^V#\s, smir=^V;, smkx=\036\:\264\026%%, -+ smso=^V$\,, -+intext2|intextii|INTERACTIVE modified owl 1251, -+ am, bw, ul, -+ cols#80, lines#24, xmc#0, -+ bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, cub1=\E[D, -+ cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -+ dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K, -+ flash=\E[;;;;;;;;;2;;u$<200/>\E[;;;;;;;;;1;;u, -+ hpa=\E[%p1%{1}%+%dG, ht=^I, ich1=\E[@, il1=\E[L, ind=\E[S, -+ kbs=^H, kcub1=\ED\r, kcud1=\EB\r, kcuf1=\EC\r, kcuu1=\EA\r, -+ kf0=\E@\r, kf1=\EP\r, kf2=\EQ\r, kf3=\ES\r, kf4=\ET\r, -+ kf5=\EU\r, kf6=\EV\r, kf7=\EW\r, kf8=\EX\r, kf9=\EY\r, -+ khome=\ER\r, lf0=REFRSH, lf1=DEL CH, lf2=TABSET, lf3=GOTO, -+ lf4=+PAGE, lf5=+SRCH, lf6=-PAGE, lf7=-SRCH, lf8=LEFT, -+ lf9=RIGHT, ri=\E[T, rmso=\E[2 D, rmul=\E[2 D, smso=\E[6 D, -+ smul=\E[18 D, - --# Tektronix 4105 from BRL --# The following setup modes are assumed for normal operation: --# CODE ansi CRLF no DABUFFER 141 --# DAENABLE yes DALINES 30 DAMODE replace --# DAVISIBILITY yes ECHO no EDITMARGINS 1 30 --# FLAGGING input INSERTREPLACE replace LFCR no --# ORIGINMODE relative PROMPTMODE no SELECTCHARSET G0 B --# SELECTCHARSET G1 0 TABS -2 --# Other setup modes may be set for operator convenience or communication --# requirements; I recommend --# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes --# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0 --# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU> --# GAMODE overstrike GCURSOR 0 100 0 GSPEED 10 1 --# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>" --# PROMPTSTRING '' QUEUESIZE 2460 WINDOW 0 0 4095 3132 --# XMTDELAY 0 --# and factory color maps. After setting these modes, save them with NVSAVE. No --# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! --# "IC" cannot be used in combination with "im" & "ei". --# "tek4105a" is just a guess: --tek4105a|Tektronix 4105, -- OTbs, OTpt, msgr, xon, -- OTkn#8, cols#80, it#8, lines#30, vt#3, -- acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -- civis=\E%!0\ETD00\E%!1, clear=\E[H\E[J, -- cnorm=\E%!0\ETD10\E%!1, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\EM, cvvis=\E%!0\ETD70\E%!1, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH, -- il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, is2=\E%!1, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EOP, kf5=\EOQ, -- kf6=\EOR, kf7=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, -- lf5=F6, lf6=F8, ll=\E[30;H, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, -- rin=\E[%p1%dT, rmacs=^O, rmcup=\E%!0\ELBH=\E%!1, -- rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -- rs2=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLA>\ELM0\EKE0\ENF1\EKS0\END0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>, -- sc=\E7, sgr0=\E[m, smacs=^N, smcup=\E[?6l, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+#### Kimtron (abm, kt) -+# -+# Kimtron seems to be history, but as March 1998 these people are still -+# offering repair services for Kimtron equipment: -+# -+# Com/Pair Monitor Service -+# 1105 N. Cliff Ave. -+# Sioux Falls, South Dakota 57103 -+# -+# WATS voice: 1-800/398-4946 -+# POTS fax: +1 605/338-8709 -+# POTS voice: +1 605/338-9650 -+# Email: <compair@sd.cybernex.net> -+# Internet/Web: <http://www.com-pair.com> -+# -+# Kimtron entries include (undocumented) codes for: enter dim mode, -+# enter bold mode, enter reverse mode, turn off all attributes. -+# - -+# Kimtron ABM 85 added by Dual Systems -+# (abm85: removed duplicated ":kd=^J:" -- esr) -+abm85|Kimtron ABM 85, -+ OTbs, am, bw, msgr, -+ cols#80, it#8, lines#24, xmc#1, -+ cbt=\EI, clear=\E*, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\Ey, el=\Et, ht=^I, -+ if=/usr/share/tabset/stdcrt, il1=\EE, -+ is2=\EC\EX\Eg\En\E%\Er\E(\Ek\Em\Eq, kbs=^H, kcub1=^H, -+ kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, rmir=\Er, rmso=\Ek, -+ rmul=\Em, smir=\EQ, smso=\Ej, smul=\El, -+# Kimtron ABM 85H added by Dual Systems. -+# Some notes about the abm85h entries: -+# 1) there are several firmware revs of 85H in the world. Use abm85h-old for -+# firmware revs prior to SP51 -+# 2) Make sure to use abm85h entry if the terminal is in 85h mode and the -+# abm85e entry if it is in tvi920 emulation mode. They are incompatible -+# in some places and NOT software settable i.e., <is2> can't fix it) -+# 3) In 85h mode, the arrow keys and special functions transmit when -+# the terminal is in dup-edit, and work only locally in local-edit. -+# Vi won't swallow `del char' for instance, but <smcup> turns on -+# dup-edit anyway so that the arrow keys will work right. If the -+# arrow keys don't work the way you like, change <smcup>, <rmcup>, and -+# <is2>. Note that 920E mode does not have software commands to toggle -+# between dup and local edit, so you get whatever was set last on the -+# terminal. -+# 4) <flash> attribute is nice, but seems too slow to work correctly -+# (\Eb<pad>\Ed) -+# 5) Make sure `hidden' attributes are selected. If `embedded' attributes -+# are selected, the <xmc@> entry should be removed. -+# 6) auto new-line should be on (selectable from setup mode only) - # --# Tektronix 4106/4107/4109 from BRL --# The following setup modes are assumed for normal operation: --# CODE ansi COLUMNMODE 80 CRLF no --# DABUFFER 141 DAENABLE yes DALINES 32 --# DAMODE replace DAVISIBILITY yes ECHO no --# EDITMARGINS 1 32 FLAGGING input INSERTREPLACE replace --# LFCR no LOCKKEYBOARD no ORIGINMODE relative --# PROMPTMODE no SELECTCHARSET G0 B SELECTCHARSET G1 0 --# TABS -2 --# Other setup modes may be set for operator convenience or communication --# requirements; I recommend --# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes --# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0 --# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU> --# GAMODE overstrike GCURSOR 0 100 0 GSPEED 9 3 --# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>" --# PROMPTSTRING '' QUEUESIZE 2620 WINDOW 0 0 4095 3132 --# XMTDELAY 0 --# and factory color maps. After setting these modes, save them with NVSAVE. No --# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! --# "IC" cannot be used in combination with "im" & "ei". --tek4106brl|tek4107brl|tek4109brl|Tektronix 4106 4107 or 4109, -- msgr, xon, -- cols#80, it#8, lines#32, vt#3, -- acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -- civis=\E%!0\ETD00\E%!1, clear=\E[H\E[J, -- cnorm=\E%!0\ETD10\E%!1, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\EM, cvvis=\E%!0\ETD70\E%!1, -- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -- ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH, -- il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, is2=\E%!1, -- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -- kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EOP, kf5=\EOQ, -- kf6=\EOR, kf7=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, -- lf5=F6, lf6=F8, ll=\E[32;H, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, -- rin=\E[%p1%dT, rmacs=^O, rmcup=\E%!0\ELBH=\E%!1, -- rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -- rs1=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLB0\ELM0\EKE0\ENF1\EKS0\END0\ERE0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>, -- sc=\E7, sgr0=\E[m, smacs=^N, smcup=\E[?6l, smir=\E[4h, -- smkx=\E[?1h\E=, smso=\E[7;42m, smul=\E[4m, tbc=\E[3g, -+# From: Erik Fair <fair@ucbarpa> Sun Oct 27 07:21:05 1985 -+abm85h|Kimtron ABM 85H native mode, -+ hs, -+ xmc@, -+ bel=^G, cnorm=\E.4, cvvis=\E.2, dim=\E), dsl=\Ee, flash@, -+ fsl=^M, invis@, -+ is2=\EC\EN\EX\024\016\EA\Ea\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\EG0\Ed\E.4\El, -+ kcud1=^V, sgr0=\E(\EG0, smir=\EZ, tsl=\Eg\Ef, use=adm+sgr, -+ use=abm85, -+abm85e|Kimtron ABM 85H in 920E mode, -+ xmc@, -+ bel=^G, dim=\E), flash@, -+ is2=\EC\EX\EA\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\Ek\Eq\Em, -+ rev=\Ej, sgr0=\E(\Ek, smir=\EZ, use=abm85, -+abm85h-old|oabm85h|o85h|Kimtron ABM 85H with old firmware rev., -+ xmc@, -+ bel=^G, dim=\E), -+ is2=\E}\EC\EX\Ee\En\E%\Er\E(\Ek\Em\Eq\Ed\ET\EC\E9\EF, -+ rev=\Ej, sgr0=\E(\Ek, smir=\EZ, use=abm85, -+# From: <malman@bbn-vax.arpa> -+# (kt7: removed obsolete :ma=^V^J^L :" -- esr) -+kt7|kimtron model kt-7, -+ OTbs, am, -+ cols#80, it#8, lines#24, -+ cbt=\EI, clear=^Z, cub1=^H, cud1=^V, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dl1=\ER, ed=\EY, el=\ET, fsl=\Eg, home=^^, ht=^I, ich1=\EQ, -+ if=/usr/share/tabset/stdcrt, il1=\EE, invis@, is2=\El\E", -+ kbs=^H, kcbt=\EI, kclr=^Z, kcub1=^H, kcud1=^V, kcuf1=^L, -+ kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kf0=^AI\r, -+ kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -+ kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -+ kich1=\EQ, kil1=\EE, tsl=\Ef, use=adm+sgr, -+# Renamed TB=^I to :ta:, BE=^G to :bl:, BS=^H to :kb:, N to :kS: (based on the -+# other kt7 entry and the adjacent key capabilities). Removed EE which is -+# identical to :mh:. Removed :ES=\EGD: which is some kind of highlight -+# but we can't figure out what. -+kt7ix|kimtron model kt-7 or 70 in IX mode, -+ am, bw, -+ cols#80, it#8, lines#25, -+ acsc=jYk?lZm@nEqDt4uCvAwBx3, bel=^G, blink=\EG2, cbt=\EI, -+ civis=\E.0, clear=\E*, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, -+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ dch1=\EW, dim=\EG@, dl1=\ER, dsl=\Ef\r, ed=\EY, el=\ET, fsl=^M, -+ home=^^, ht=^I, ich1=\EQ, il1=\EE, ind=^J, -+ is2=\EG0\E s\017\E~, kbs=^H, kcbt=\EI, kclr=\E*, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\ER, -+ ked=\EY, kel=\ET, kend=\EY, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, -+ kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -+ kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\EQ, kil1=\EE, knp=\EJ, -+ nel=^M^J, pulse=\EK, rmacs=\E%%, rmir=, rmso=\EG0, rmul=\EG0, -+ sgr0=\EG0, smacs=\E$, smir=, smso=\EG4, smul=\EG8, tsl=\Ef, - --# Tektronix 4107/4109 interpret 4 modes using "\E%!" followed by a code: --# 0 selects Tek mode, i.e., \E%!0 --# 1 selects ANSI mode --# 2 selects ANSI edit-mode --# 3 selects VT52 mode -+#### Microdata/MDIS -+# -+# This was a line of terminals made by McDonnell-Douglas Information Systems. -+# These entries come direct from MDIS documentation. I have edited them only -+# to move primary names of the form p[0-9] * to aliases, and to comment out -+# <rmacs>/<smacs> in a couple of entries without <acsc> strings. I have -+# also removed the change history; the last version indicates this is -+# version 4.3 by A.Barkus, September 1990 (earliest entry is October 1989). - # --# One odd thing about the description (which has been unchanged since the 90s) --# is that the cursor addressing is using VT52 mode, and a few others use the --# VT52's non-CSI versions of ANSI, e.g., \EJ. --tek4107|tek4109|tektronix terminals 4107 4109, -- OTbs, am, mir, msgr, ul, xenl, xt, -- cols#79, it#8, lines#29, -- bel=^G, blink=\E%!1\E[5m$<2>\E%!0, -- bold=\E%!1\E[1m$<2>\E%!0, clear=\ELZ, cnorm=\E%!0, cr=^M, -- cub1=^H, cud1=^J, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\E%!3, -- dim=\E%!1\E[<0m$<2>\E%!0, ed=\EJ, el=\EK, ht=^I, ind=^J, -- kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -- rev=\E%!1\E[7m$<2>\E%!0, ri=\EI, -- rmso=\E%!1\E[m$<2>\E%!0, rmul=\E%!1\E[m$<2>\E%!0, -- sgr=\E%%!1\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>\E%%!0, -- sgr0=\E%!1\E[m$<2>\E%!0, smso=\E%!1\E[7;5m$<2>\E%!0, -- smul=\E%!1\E[4m$<2>\E%!0, --# Tektronix 4207 with sysline. In the ancestral termcap file this was 4107-s; --# see the note attached to tek4207. --tek4207-s|Tektronix 4207 with sysline but no memory, -- eslok, hs, -- dsl=\E7\E[?6l\E[2K\E[?6h\E8, fsl=\E[?6h\E8, -- is1=\E%!1\E[2;32r\E[132D\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J, -- is2=\E7\E[?6l\E[2K\E[?6h\E8, -- tsl=\E7\E[?6l\E[2K\E[;%i%df, use=tek4107, - --# The 4110 series may be a wonderful graphics series, but they make the 4025 --# look good for screen editing. In the dialog area, you can't move the cursor --# off the bottom line. Out of the dialog area, ^K moves it up, but there --# is no way to scroll. -+# McDonnell Information Systems Terminal Family History -+# ========================================= -+# -+# Prism-1, Prism-2 and P99: -+# Ancient Microdata and CMC terminals, vaguely like Adds Regent 25. -+# -+# Prism-4 and Prism-5: -+# Slightly less ancient range of Microdata terminals. Follow-on from -+# Prism-2, but with many enhancements. P5 has eight display pages. -+# -+# Prism-6: -+# A special terminal for use with library systems, primarily in Germany. -+# Limited numbers. Similar functionality to P5 (except attributes?). - # --# Note that there is a floppy for free from Tek that makes the --# 4112 emulate the vt52 (use the vt52 termcap). There is also --# an expected enhancement that will use ANSI standard sequences. -+# Prism-7, Prism-8 and Prism-9: -+# More recent range of MDIS terminals, in which P7 and P8 -+# replace the P4 & P5, with added functionality, and P9 is the flagship. -+# The P9 has two emulation modes - P8 and ANSI - and includes a -+# large number of the DEC VT220 control sequences. Both -+# P8 and P9 support 80c/24ln/8pg and 132cl/24li/4pg formats. - # --# 4112 in non-dialog area pretending to scroll. It really wraps --# but vi is said to work (more or less) in this mode. -+# Prism-12 and Prism-14: -+# Latest range, functionally very similar to the P9. The P14 has a -+# black-on-white overscanning screen. - # --# 'vi' works reasonably well with this entry. -+# The terminfo definitions given here are: - # --otek4112|o4112-nd|otek4113|otek4114|old tektronix 4110 series, -- am, -- cols#80, lines#34, -- bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuu1=^K, ind=^J, -- rmcup=\EKA1\ELV1, smcup=\EKA0\ELV0\EMG0, --# The 4112 with the ANSI compatibility enhancement --tek4112|tek4114|tektronix 4110 series, -- OTbs, am, db, -- cols#80, lines#34, -- cbt=\E[Z, clear=\E[2J\E[0;0H, cub1=^H, cud1=\E[B, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\EM, dch1=\E[P, -- dl1=\E[M, ed=\E[0J, el=\E[0K, ich1=\E[@, il1=\E[L, -- ind=\E7\E[0;0H\E[M\E8, is2=\E3!1, ri=\E7\E[0;0H\E[L\E8, -- rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, --tek4112-nd|4112 not in dialog area, -- OTns, -- cuu1=^K, use=tek4112, --tek4112-5|4112 in 5 line dialog area, -- lines#5, use=tek4112, --# (tek4113: this used to have "<cuf1=\LM1\s\LM0>", someone's mistake; --# removed "<smacs=\E^N>, <rmacs=\E^O>", which had been commented out in 8.3. --# Note, the !0 and !1 sequences in <rmcup>/<smcup>/<cnorm>/<civis> were --# previously \0410 and \0411 sequences...I don't *think* they were supposed --# to be 4-digit octal -- esr) --tek4113|tektronix 4113 color graphics with 5 line dialog area, -- OTbs, am, da, eo, -- cols#80, lines#5, -- clear=\ELZ, cub1=^H, cud1=^J, cuf1=\ELM1 \ELM0, -- flash=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0, -- is2=\EKA1\ELL5\ELV0\ELV1, uc=\010\ELM1_\ELM0, --tek4113-34|tektronix 4113 color graphics with 34 line dialog area, -- lines#34, -- is2=\EKA1\ELLB2\ELV0\ELV1, use=tek4113, --# :ns: left off to allow vi visual mode. APL font (:as=\E^N:/:ae=\E^O:) not --# supported here. :uc: is slow, but looks nice. Suggest setenv MORE -up . --# :vb: needs enough delay to let you see the background color being toggled. --tek4113-nd|tektronix 4113 color graphics with no dialog area, -- OTbs, am, eo, -- cols#80, it#8, lines#34, -- clear=\E^L, cub1=^H, cud1=^J, cuf1=^I, cuu1=^K, -- cvvis=\ELZ\EKA0, -- flash=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0, -- home=\ELF7l\177 @, ht=^I, is2=\ELZ\EKA0\ELF7l\177 @, -- ll=\ELF hl @, rmso=\EMT1, smso=\EMT2, uc=\010\EMG1_\EMG0, --# This entry is from Tek. Inc. (Brian Biehl) --# (tek4115: :bc: renamed to :le:, <rmam>/<smam> added based on init string -- esr) --otek4115|Tektronix 4115, -- OTbs, am, da, db, eo, -- cols#80, it#8, lines#34, -- cbt=\E[Z, clear=\E[H\E[2J, -- cnorm=\E%!0\ELBG8\E%!1\E[34;1H, cub1=\E[D, cud1=\E[B, -- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -- cvvis=\E%!0\ELBB2\E%!1, dch1=\E[P, dl1=\E[M, ed=\E[J, -- el=\E[K, home=\E[H, ht=^I, if=/usr/share/tabset/vt100, -- il1=\E[L, -- is2=\E%!0\E%\014\ELV0\EKA1\ELBB2\ENU@=\ELLB2\ELM0\ELV1\EKYA?\E%!1\E[<1l\E[?7h\E[?8h\E[34;1H\E[34B\E[m, -- kbs=^H, ri=\EM, rmam=\E[?7l, -- rmcup=\E%!0\ELBG8\E%!1\E[34;1H\E[J, rmir=\E[4l, -- rmkx=\E>, rmso=\E[m, rmul=\E[m, sgr0=\E[m, smam=\E[?7h, -- smcup=\E%!0\ELBB2\E%!1, smir=\E[4h, smkx=\E=, smso=\E[7m, -- smul=\E[4m, --tek4115|newer tektronix 4115 entry with more ANSI capabilities, -- am, xon, -- cols#80, lines#34, -- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -- cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dch1=\E[P, dl=\E[%p1%dM, -- dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, hpa=\E[%p1%{1}%+%dG, -- ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, -- il1=\E[L, ind=^J, invis=\E[8m, kbs=^H, kcub1=\E[D, -- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, -- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, rmam=\E[?7l, -- rmso=\E[m, rmul=\E[m, -- sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, -- sgr0=\E[m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -- vpa=\E[%p1%{1}%+%dd, --# The tek4125 emulates a vt100 incorrectly - the scrolling region --# command is ignored. The following entry replaces <csr> with the needed --# <il>, <il>, and <smir>; removes some cursor pad commands that the tek4125 --# chokes on; and adds a lot of initialization for the tek dialog area. --# Note that this entry uses all 34 lines and sets the cursor color to green. --# Steve Jacobson 8/85 --# (tek4125: there were two "\!"s in the is that I replaced with "\E!"; --# commented out, <smir>=\E1 because there's no <rmir> -- esr) --tek4125|tektronix 4125, -- lines#34, -- csr@, dl1=\E[1M, il1=\E[1L, -- is2=\E%\E!0\EQD1\EUX03\EKA\ELBB2\ELCE0\ELI100\ELJ2\ELLB2\ELM0\ELS1\ELX00\ELV1\E%\E!1\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- rc@, sc@, smkx=\E=, use=vt100, -- --# From: <jcoker@ucbic> --# (tek4207: This was the termcap file's entry for the 4107/4207, but SCO --# supplied another, less capable 4107 entry. So we'll use that for 4107 and --# note that if jcoker wasn't confused you may be able to use this one. --# I merged in <msgr>,<ind>,<ri>,<invis>,<tbc> from a BRL entry -- esr) --tek4207|Tektronix 4207 graphics terminal with memory, -- am, bw, mir, msgr, ul, xenl, -- cols#80, it#8, lines#32, -- blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J$<156/>, -- cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu1=\EM, dch1=\E[P$<4/>, dl1=\E[M$<3/>, ed=\E[J, -- el=\E[K$<5/>, home=\E[H, ht=^I, ich1=\E[@$<4/>, -- il1=\E[L$<3/>, ind=\E[S, invis=\E[=6;<5, -- is2=\E%!0\ELBP0\E%!1\E[H\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J, -- kcub1=\E[D, kcud1=\ED, kcuf1=\E[C, kcuu1=\EM, khome=\E[H, -- rev=\E[7m, ri=\E[T, -- rmcup=\E[?6h\E%!0\ELBP0\E%!1\E[32;1f, rmso=\E[m, -- rmul=\E[m, sgr0=\E[m, smcup=\E[?6l\E[H\E[J, smso=\E[7m, -- smul=\E[4m, tbc=\E[1g, -- --# From: <carolyn@dali.berkeley.edu> Thu Oct 31 12:54:27 1985 --# (tek4404: There was a "\!" in <smcup> that I replaced with "\E!". --# Tab had been given as \E2I,that must be the tab-set capability -- esr) --tek4404|tektronix 4404, -- OTbs, -- cols#80, it#8, lines#32, -- blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, -- csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[1M, -- ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\E[2I, il1=\E[1L, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, rc=\E8, -- rmcup=\E[1;1H\E[0J\E[?6h\E[?1l, rmir=\E[4l, -- rmkx=\E[?1h, rmso=\E[27m, rmul=\E[m, sc=\E7, sgr0=\E[m, -- smcup=\E%\E!1\E[1;32r\E[?6l\E>, smir=\E[4h, -- smkx=\E[?1l, smso=\E[7m, smul=\E[4m, --# Some unknown person wrote: --# I added the is string - straight Unix has ESC ; in the login --# string which sets a ct8500 into monitor mode (aka 4025 snoopy --# mode). The is string here cleans up a few things (but not --# everything). --ct8500|tektronix ct8500, -- am, bw, da, db, -- cols#80, lines#25, -- bel=^G, cbt=\E^I, clear=\E^E, cr=^M, cub1=^H, cud1=^J, -- cuf1=\ES, cup=\E|%p1%{32}%+%c%p2%{32}%+%c, cuu1=\ER, -- dch1=\E^], dl1=\E^M, ed=\E^U, el=\E^T, ht=^I, ich1=\E^\, -- il1=\E^L, ind=^J, is2=\037\EZ\Ek, ri=\E^A, rmso=\E\s, -- rmul=\E\s, sgr0=\E\s, smso=\E$, smul=\E!, -+# p2 - Prism-2 (or Prism-1 or P99). -+# -+# p4 - Prism-4 (and older P7s & P8s). -+# p5 - Prism-5 (or Prism-6). -+# -+# p7 - Prism-7. -+# p8 - Prism-8 (in national or multinational mode). -+# p8-w - 132 column version of p8. -+# p9 - Prism-9 in ANSI mode. -+# p9-w - 132 column version of p9. -+# p9-8 - Prism-9 in Prism-8 emulation mode. -+# p9-8-w - As p9-8, but with 132 columns. -+# -+# p12 - Prism-12 in ANSI mode. -+# p12-w - 132 column version of p12. -+# p12-m - Prism-12 in MDC emulation mode. -+# p12-m-w - As p12-m, but with 132 columns. -+# p14 - Prism-14 in ANSI mode. -+# p14-w - 132 column version of p14. -+# p14-m - Prism-14 in MDC emulation mode. -+# p14-m-w - As p14-m, but with 132 columns. -+# -+# p2: Prism-2 -+# ----------- -+# -+# Includes Prism-1 and basic P99 without SP or MP loaded. -+# The simplest form of Prism-type terminal. -+# Basic cursor movement and clearing operations only. -+# No video attributes. -+# Notes: -+# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next -+# value up, followed by backspace. -+# -+prism2|MDC Prism-2, -+ am, bw, msgr, -+ cols#80, lines#24, -+ bel=^G, clear=\014$<20>, cr=^M, cub1=^H, cud1=^J, cuf1=^F, -+ cup=\013%p1%{32}%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, -+ cuu1=^Z, ed=\EJ, el=\EK, home=^A, -+ hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, -+ ind=^J, kbs=^H, khome=^A, vpa=\013%p1%{32}%+%c, - --# Tektronix 4205 terminal. -+# p4: Prism-4 -+# ----------- - # --# am is not defined because the wrap around occurs not when the char. --# is placed in the 80'th column, but when we are attempting to type --# the 81'st character on the line. (esr: hmm, this is like the vt100 --# version of xenl, perhaps am + xenl would work!) -+# Includes early versions of P7 & P8. -+# Basic family definition for most Prisms (except P2 and P9 ANSI). -+# Notes: -+# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next -+# value up, followed by backspace. -+# Cursor key definitions removed because they interfere with vi and csh keys. - # --# Bold, dim, and standout are simulated by colors and thus not allowed --# with colors. The tektronix color table is mapped into the RGB color --# table by setf/setb. All colors are reset to factory specifications by oc. --# The <initc> cap uses RGB notation to define colors. for arguments 1-3 the --# interval (0-1000) is broken into 8 smaller sub-intervals (125). Each sub- --# interval then maps into pre-defined value. --tek4205|tektronix 4205, -- ccc, mir, msgr, -- colors#8, cols#80, it#8, lines#30, ncv#49, pairs#63, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- bel=^G, blink=\E[5m, bold=\E[=7;<4m, cbt=\E[Z, -- clear=\E[2J\E[H, cr=^M, cub=\E[%p1%dD, cub1=\E[D, -- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dch1=\E[1P, dim=\E[=1;<6m, dl1=\E[1M, ech=\E%p1%dX, -- ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, home=\E[H, ht=^I, -- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[1L, ind=\ED, -- initc=\E%%!0\ETF4%?%p1%{0}%=%t0%e%p1%{1}%=%t4%e%p1%{2}%=%t3%e%p1%{3}%=%t5%e%p1%{4}%=%t2%e%p1%{5}%=%t6%e%p1%{6}%=%t7%e1%;%?%p2%{125}%<%t0%e%p2%{250}%<%tA2%e%p2%{375}%<%tA?%e%p2%{500}%<%tC8%e%p2%{625}%<%tD4%e%p2%{750}%<%tE1%e%p2%{875}%<%tE\:%eF4%;%?%p3%{125}%<%t0%e%p3%{250}%<%tA2%e%p3%{375}%<%tA?%e%p3%{500}%<%tC8%e%p3%{625}%<%tD4%e%p3%{750}%<%tE1%e%p3%{875}%<%tE\:%eF4%;%?%p4%{125}%<%t0%e%p4%{250}%<%tA2%e%p4%{375}%<%tA?%e%p4%{500}%<%tC8%e%p4%{625}%<%tD4%e%p4%{750}%<%tE1%e%p4%{875}%<%tE\:%eF4%;\E%%!1, -- invis=\E[=6;<5, is1=\E%!0\ETM1\E%!1\E[m, kbs=^H, -- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\EOA, -- kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EP, kf5=\EQ, kf6=\ER, -- kf7=\ES, -- oc=\E%!0\ETFB000001F4F4F42F40030F404A4C<F450F4F46F40F47F4F40\E%!1, -- op=\E[39;40m, rev=\E[7m, ri=\EM, rmacs=^O, rmcup=, -- rmir=\E[4l, rmso=\E[=0;<1m, rmul=\E[24m, -- setb=\E[=%?%p1%{0}%=%t0m%e%p1%{1}%=%t4m%e%p1%{2}%=%t3m%e%p1%{3}%=%t5m%e%p1%{4}%=%t2m%e%p1%{5}%=%t6m%e%p1%{6}%=%t7m%e1m%;, -- setf=\E[<%?%p1%{0}%=%t0m%e%p1%{1}%=%t4m%e%p1%{2}%=%t3m%e%p1%{3}%=%t5m%e%p1%{4}%=%t2m%e%p1%{5}%=%t6m%e%p1%{6}%=%t7m%e1m%;, -- sgr0=\E[=0;<1m\E[24;25;27m\017, smacs=^N, -- smcup=\E%%!1\E[?6l\E[2J, smir=\E[4h, smso=\E[=2;<3m, -- smul=\E[4m, tbc=\E[1g, -+prism4|p4|P4|MDC Prism-4, -+ am, bw, hs, mc5i, msgr, -+ cols#80, lines#24, wsl#72, xmc#1, -+ bel=^G, blink=^CB, civis=^]\344, clear=\014$<20>, -+ cnorm=^]\342, cr=^M, cub1=^H, cud1=^J, cuf1=^F, -+ cup=\013%p1%{32}%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, -+ cuu1=^Z, dim=^CA, dsl=\035\343\035\345, ed=\EJ, el=\EK, -+ fsl=^]\345, home=^A, -+ hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c, -+ ind=^J, invis=^CH, kbs=^H, khome=^A, mc0=\EU, mc4=\ET, mc5=\ER, -+ rev=^CD, rmso=^C\s, rmul=^C\s, -+ sgr=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;, -+ sgr0=^C\s, smso=^CD, smul=^CP, tsl=^]\343, -+ vpa=\013%p1%{32}%+%c, - --#### Teletype (tty) -+# p5: Prism-5 -+# ----------- -+# -+# Same definition as p4. Includes Prism-6 (not tested!). -+# Does not use any multi-page features. - # --# These are the hardcopy Teletypes from before AT&T bought the company, --# clattering electromechanical dinosaurs in Bakelite cases that printed on --# pulpy yellow roll paper. If you remember these you go back a ways. --# Teletype-branded VDTs are listed in the AT&T section. -+prism5|p5|P5|MDC Prism-5, -+ use=p4, -+ -+# p7: Prism-7 -+# ----------- - # --# The earliest UNIXes were designed to use these clunkers; nroff and a few --# other programs still default to emitting codes for the Model 37. -+# Similar definition to p4. Uses ANSI cursor motion to avoid network problems. -+# Notes: -+# Use p4 for very early models of P7. -+# Rev-index removed; can't send nulls to terminal in 8-bit modes. - # -+prism7|p7|P7|MDC Prism-7, -+ cup=\E[%i%p1%d;%p2%dH, hpa@, vpa@, use=p4, - --tty33|tty35|model 33 or 35 teletype, -- hc, os, xon, -- cols#72, -- bel=^G, cr=^M, cud1=^J, ind=^J, --tty37|model 37 teletype, -- OTbs, hc, os, xon, -- bel=^G, cr=^M, cub1=^H, cud1=^J, cuu1=\E7, hd=\E9, hu=\E8, -- ind=^J, -+# p8: Prism-8 -+# ----------- -+# -+# Similar definition to p7. Uses ANSI cursor motion to avoid network problems. -+# Supports national and multinational character sets. -+# Notes: -+# Alternate char set operations only work in multinational mode. -+# Use p4 for very early models of P8. -+# Rev-index removed; can't send nulls to terminal in 8-bit modes. -+# (esr: commented out <smacs>/<rmacs> because there's no <acsc>) -+# -+prism8|p8|P8|MDC Prism-8, -+ cup=\E[%i%p1%d;%p2%dH, hpa=\E[%i%p1%d`, is2=\E[<12h, -+ vpa=\E[%i%p1%dd, use=p4, - --# There are known to be at least three flavors of the tty40, all seem more --# like IBM half duplex forms fillers than ASCII terminals. They have lots of --# awful braindamage, such as printing a visible newline indicator after each --# newline. The 40-1 is a half duplex terminal and is hopeless. The 40-2 is --# braindamaged but has hope and is described here. The 40-4 is a 3270 --# lookalike and beyond hope. The terminal has visible bell but I don't know --# it - it's null here to prevent it from showing the BL character. --# There is an \EG in <nl> because of a bug in old vi (if stty says you have --# a "newline" style terminal (-crmode) vi figures all it needs is nl --# to get crlf, even if <cr> is not ^M.) --# (tty40: removed obsolete ":nl=\EG\EB:", it's just do+cr -- esr) --tty40|ds40|ds40-2|dataspeed40|teletype dataspeed 40/2, -- OTbs, xon, -- cols#80, lines#24, -- clear=\EH$<20>\EJ$<80>, cr=\EG, cub1=^H, cud1=\EB, -- cuf1=\EC, cuu1=\E7, dch1=\EP$<50>, dl1=\EM$<50>, -- ed=\EJ$<75>, home=\EH$<10>, ht=\E@$<10>, hts=\E1, -- ich1=\E\^$<50>, il1=\EL$<50>, ind=\ES$<20>, kbs=^], -- kcub1=^H, mc4=^T, mc5=\022$<2000>, ri=\ET$<10>, rmso=\E4, -- rs2=\023\ER$<60>, smso=\E3, tbc=\EH\E2$<80>, --tty43|model 43 teletype, -- OTbs, am, hc, os, xon, -+# p8-w: Prism-8 in 132 column mode -+# -------------------------------- -+# -+# 'Wide' version of p8. -+# Notes: -+# Rev-index removed; can't send nulls to terminal in 8-bit modes. -+# -+prism8-w|p8-w|P8-W|MDC Prism-8 in 132 column mode, - cols#132, -- bel=^G, cr=^M, cub1=^H, cud1=^J, ind=^J, kbs=^H, -+ is2=\E[<12h\E[<14h, use=p8, - --#### Tymshare -+# p9: Prism-9 in ANSI mode -+# ------------------------- - # -+# The "flagship" model of this generation of terminals. -+# ANSI X3.64 (ISO 6429) standard sequences, plus many DEC VT220 ones. -+# Notes: -+# Tabs only reset by "reset". Otherwise assumes default (8 cols). -+# Fixes to deal with terminal firmware bugs: -+# . 'ri' uses insert-line since rev index doesn't always -+# . 'sgr0' has extra '0' since esc[m fails -+# . 'fsl' & 'dsl' use illegal char since cr is actioned wrong on line 25 -+# Not covered in the current definition: -+# . Labels -+# . Programming Fn keys -+# . Graphic characters (defaults correctly to vt100) -+# . Padding values (sets xon) -+# (esr: commented out <smacs>/<rmacs> because there's no <acsc>) -+# -+prism9|p9|P9|MDC Prism-9 in ANSII mode, -+ am, bw, hs, msgr, xenl, xon, -+ cols#80, it#8, lines#24, vt#3, wsl#72, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[<4l, -+ clear=^L, cnorm=\E[<4h, cr=^M, csr=\E[%i%p1%d;%p2%d%%v, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, -+ dl=\E[%p1%dM, dl1=\E[M, dsl=\E[%}\024, ech=\E[%p1%dX, -+ ed=\E[J$<10>, el=\E[K, fsl=^T, home=\E[H, hpa=\E[%i%p1%d`, -+ ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, -+ is2=\E[&p\E[<12l\E F, kbs=^H, kclr=^L, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[11~, -+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -+ kf18=\E[32~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ khome=\E[H, nel=^M^J, prot=\E[32%{, rc=\E[%z, -+ rep=\E[%p2%db%p1%c, rev=\E[7m, ri=\E[L, rmir=\E[4l, -+ rmso=\E[27m, rmul=\E[24m, -+ rs2=\E[&p\E[<12l\E F\E[3g\E[9;17;25;33;41;49;57;65;73 N, -+ sc=\E[%y, -+ sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;m%?%p8%t\E[32%%{%;%?%p9%t\016%e\017%;, -+ sgr0=\E[0m\017, smir=\E[4h, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, tsl=\E[%i%p1%d%%}, vpa=\E[%i%p1%dd, -+ use=ansi+pp, - --# You can add <is2=\E<> to put this 40-column mode, though I can't --# for the life of me think why anyone would want to. --scanset|sc410|sc415|Tymshare Scan Set, -- am, bw, msgr, -- cols#80, lines#24, -- acsc=j%k4l<m-q\,x5, bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, -- cud1=^J, cuf1=^I, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -- cuu1=^K, ed=\EJ, el=\EK, home=\EH, ind=^J, kcub1=\ED, -- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, mc0=\E;3, mc4=\E;0, -- mc5=\E;0, rc=^C, rmacs=^O, rs1=\E>, sc=^B, smacs=^N, -- --#### Volker-Craig (vc) -+# p9-w: Prism-9 in 132 column mode -+# -------------------------------- - # --# If you saw a Byte Magazine cover with a terminal on it during the early --# 1980s, it was probably one of these. Carl Helmers liked them because --# they could crank 19.2 and were cheap (that is, he liked them until he tried --# to program one...) -+# 'Wide' version of p9. - # -+prism9-w|p9-w|P9-W|MDC Prism-9 in 132 column mode, -+ cols#132, -+ is2=\E[&p\E[<12l\E F\E[<14h, -+ rs2=\E[&p\E[<12l\E F\E[<14h, use=p9, - --# Missing in vc303a and vc303 descriptions: they scroll 2 lines at a time --# every other linefeed. --vc303|vc103|vc203|volker-craig 303, -- OTbs, OTns, am, -- cols#80, lines#24, -- bel=^G, clear=\014$<40>, cr=^M, cub1=^H, cud1=^J, cuf1=^I, -- cuu1=^N, home=\013$<40>, kcub1=^H, kcud1=^J, kcuf1=^I, -- kcuu1=^N, ll=\017$<1>W, --vc303a|vc403a|volker-craig 303a, -- clear=\030$<40>, cuf1=^U, cuu1=^Z, el=\026$<20>, -- home=\031$<40>, kcuf1=^U, kcuu1=^Z, ll=^P, use=vc303, --# (vc404: removed obsolete ":ma=^Z^P^U :" -- esr) --vc404|volker-craig 404, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=\030$<40>, cr=^M, cub1=^H, cud1=^J, cuf1=^U, -- cup=\020%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, -- ed=\027$<40>, el=\026$<20>, home=\031$<40>, ind=^J, -- kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^Z, --vc404-s|volker-craig 404 w/standout mode, -- cud1=^J, rmso=^O, smso=^N, use=vc404, --# From: <wolfgang@cs.sfu.ca> --# (vc414: merged in cup/dl1/home from an old vc414h-noxon) --vc414|vc414h|Volker-Craig 414H in sane escape mode., -- OTbs, am, -- cols#80, lines#24, -- clear=\E\034$<40>, cud1=\E^K, cuf1=^P, -- cup=\E\021%p2%c%p1%c$<40>, cuu1=\E^L, dch1=\E3, -- dl1=\E\023$<40>, ed=\E^X, el=\E\017$<10/>, home=\E^R, -- ich1=\E\:, il1=\E\032$<40>, kcub1=^H, kcud1=\E^K, kcuf1=^P, -- kcuu1=\E^L, kf0=\EA, kf1=\EB, kf2=\EC, kf3=\ED, kf4=\EE, -- kf5=\EF, kf6=\EG, kf7=\EH, khome=\E^R, lf0=PF1, lf1=PF2, -- lf2=PF3, lf3=PF4, lf4=PF5, lf5=PF6, lf6=PF7, lf7=PF8, -- rmso=\E^_, smso=\E^Y, --vc415|volker-craig 415, -- clear=^L, use=vc404, -- --######## OBSOLETE PERSONAL-MICRO CONSOLES AND EMULATIONS -+# p9-8: Prism-9 in P8 mode -+# ------------------------ -+# -+# P9 terminal in P8 emulation mode. -+# Similar to p8 definition. -+# Insertion and deletion operations possible. - # -+prism9-8|p9-8|P9-8|MDC Prism-9 in P8 mode, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, use=p8, - --#### IBM PC and clones -+# p9-8-w: Prism-9 in P8 and 132 column modes -+# ------------------------------------------ -+# -+# P9 terminal in P8 emulation mode and 132 column mode. - # -+prism9-8-w|p9-8-w|P9-8-W|MDC Prism-9 in Prism 8 emulation and 132 column mode, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, use=p8-w, - --# The pcplot IBM-PC terminal emulation program is really messed up. It is --# supposed to emulate a vt-100, but emulates the wraparound bug incorrectly, --# doesn't support scrolling regions, ignores add line commands, and ignores --# delete line commands. Consequently, the resulting behavior looks like a --# crude adm3a-type terminal. --# Steve Jacobson 8/85 --pcplot|pc-plot terminal emulation program, -- xenl@, -- csr@, dl@, dl1@, il@, il1@, rc@, sc@, use=vt100, --# KayPro II from Richard G Turner <rturner at Darcom-Hq.ARPA> --# I've found that my KayPro II, running MDM730, continues to emulate an --# ADM-3A terminal, just like I was running TERM.COM. On our 4.2 UNIX --# system the following termcap entry works well: --# I have noticed a couple of minor glitches, but nothing I can't work --# around. (I added two capabilities from the BRL entry -- esr) --kaypro|kaypro2|kaypro II, -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=\032$<1/>, cr=^M, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\ER, ed=^W, -- el=^X, home=^^, il1=\EE, ind=^J, kcud1=^J, kcuf1=^L, kcuu1=^K, -+# p12: Prism-12 in ANSI mode -+# --------------------------- -+# -+# See p9 definition. -+# -+prism12|p12|P12|MDC Prism-12 in ANSI mode, -+ use=p9, - --# From IBM, Thu May 5 19:35:27 1983 --# (ibmpc: commented out <smir>=\200R because we don't know <rmir> -- esr) --ibm-pc|ibm5051|5051|IBM Personal Computer (no ANSI.SYS), -- OTbs, am, -- cols#80, lines#24, -- bel=^G, clear=^L^K, cr=^M^^, cub1=^], cud1=^J, cuf1=^\, -- cuu1=^^, home=^K, ind=\n$<10>, kcud1=^_, -+# p12-w: Prism-12 in 132 column mode -+# ---------------------------------- -+# -+# 'Wide' version of p12. -+# -+prism12-w|p12-w|P12-W|MDC Prism-12 in 132 column mode, -+ use=p9-w, - --ibmpc|wy60-PC|wyse60-PC|IBM PC/XT running PC/IX, -- OTbs, am, bw, eo, hs, km, msgr, ul, -- cols#80, it#8, lines#24, -- acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=^M, -- cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, -- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -- home=\E[H, hpa=\E[%i%p1%dG, ind=\E[S\E[B, -- indn=\E[%p1%dS\E[%p1%dB, invis=\E[30;40m, kbs=^H, -- kcbt=^], kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -- kdch1=\177, kend=\E[Y, kf1=\240, kf10=\251, kf2=\241, -- kf3=\242, kf4=\243, kf5=\244, kf6=\245, kf7=\246, kf8=\247, -- kf9=\250, khome=\E[H, kich1=\E[^H, knp=\E[U, kpp=\E[V, -- ll=\E[24;1H, nel=^M, rev=\E[7m, ri=\E[T\E[A, -- rin=\E[%p1%dT\E[%p1%dA, rmso=\E[m, rmul=\E[m, -- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m, -- sgr0=\E[m, smso=\E[7m, smul=\E[4m, -+# p12-m: Prism-12 in MDC emulation mode -+# ------------------------------------- -+# -+# P12 terminal in MDC emulation mode. -+# Similar to p8 definition. -+# Insertion and deletion operations possible. -+# -+prism12-m|p12-m|P12-M|MDC Prism-12 in MDC emulation mode, -+ use=p9-8, - --#### Apple II -+# p12-m-w: Prism-12 in MDC emulation and 132 column modes -+# ------------------------------------------------------- - # --# Apple II firmware console first, then various 80-column cards and --# terminal emulators. For two cents I'd toss all these in the UFO file --# along with the 40-column apple entries. -+# P12 terminal in MDC emulation mode and 132 column mode. - # -+prism12-m-w|p12-m-w|P12-M-W|MDC Prism-12 in MDC emulation and 132 column mode, -+ use=p9-8-w, - --# From: brsmith@umn-cs.cs.umn.edu (Brian R. Smith) via BRL --# 'it#8' tells UNIX that you have tabs every 8 columns. This is a --# function of TIC, not the firmware. --# The clear key on a IIgs will do something like clear-screen, --# depending on what you're in. --appleIIgs|appleIIe|appleIIc|Apple 80 column firmware interface, -- OTbs, am, bw, eo, msgr, -- cols#80, it#8, lines#24, -- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^\, -- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -- home=^Y, ht=^I, ind=^W, kbs=^H, kclr=^X, kcub1=^H, kcud1=^J, -- kcuf1=^U, kcuu1=^K, kdch1=\177, nel=^M^W, ri=^V, rmso=^N, -- smso=^O, --# Apple //e with 80-column card, entry from BRL --# The modem interface is permitted to discard LF (maybe DC1), otherwise --# passing characters to the 80-column firmware via COUT (PR#3 assumed). --# Auto-wrap does not work right due to newline scrolling delay, which also --# requires that you set "stty cr2". --# Note: Cursor addressing is only available via the Pascal V1.1 entry, --# not via the BASIC PR#3 hook. All this nonsense can be avoided only by --# using a terminal emulation program instead of the built-in firmware. --apple2e|Apple //e, -- bw, msgr, -- cols#80, lines#24, -- bel=^G, clear=\014$<100/>, cub1=^H, cud1=^J, cuu1=^_, -- ed=\013$<4*/>, el=\035$<4/>, home=^Y, ht=^I, ind=^W, -- is2=^R^N, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^K, -- nel=\r$<100/>, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N, -- smso=^O, --# mcvax!vu44!vu45!wilcke uses the "ap" entry together with Ascii Express Pro --# 4.20, with incoming and outgoing terminals both on 0, emulation On. --apple2e-p|Apple //e via Pascal, -- cup=\036%p2%{32}%+%c%p1%{32}%+%c, kbs=^H, kcub1=^H, -- kcud1=^J, use=apple2e, --# (ASCII Express) MouseTalk "Standard Apple //" emulation from BRL --# Enable DC3/DC1 flow control with "stty ixon -ixany". --apple-ae|ASCII Express, -- OTbs, am, bw, msgr, nxon, xon, -- cols#80, it#8, lines#24, -- bel=\007$<500/>, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^U, -- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -- home=^Y, ind=^W, is2=^R^N, kclr=^X, kcub1=^H, kcud1=^J, -- kcuf1=^U, kcuu1=^K, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N, -- smso=^O, --appleII|apple ii plus, -- OTbs, am, -- cols#80, it#8, lines#24, -- clear=^L, cnorm=^TC2, cub1=^H, cud1=^J, cuf1=^\, -- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, cvvis=^TC6, -- ed=^K, el=^], flash=\024G1$<200/>\024T1, home=\E^Y, ht=^I, -- is2=\024T1\016, kcud1=^J, kcuf1=^U, rmso=^N, sgr0=^N, -- smso=^O, --# Originally by Gary Ford 21NOV83 --# From: <ee178aci%sdcc7@SDCSVAX.ARPA> Fri Oct 11 21:27:00 1985 --apple-80|apple II with smarterm 80 col, -- OTbs, am, bw, -- cols#80, lines#24, -- cbt=^R, clear=\014$<10*/>, cr=\r$<10*/>, cub1=^H, cud1=^J, -- cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, -- ed=\013$<10*/>, el=\035$<10/>, home=^Y, --apple-soroc|apple emulating soroc 120, -- am, -- cols#80, lines#24, -- bel=^G, clear=\E*$<300>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EY, el=\ET, -- home=^^, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, --# From Peter Harrison, Computer Graphics Lab, San Francisco --# ucbvax!ucsfmis!harrison .....uucp --# ucbvax!ucsfmis!harrison@BERKELEY .......ARPA --# "These two work. If you don't have the inverse video chip for the --# Apple with videx then remove the :so: and :se: fields." --# (apple-videx: this used to be called DaleApple -- esr) --apple-videx|Apple with videx videoterm 80 column board with inverse video, -- OTbs, am, xenl, -- cols#80, it#8, lines#24, -- clear=\014$<300/>, cub1=^H, cud1=^J, cuf1=^\, -- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -- home=^Y, ht=^I, kcub1=^H, kcud1=^J, kcuf1=^U, khome=^Y, -- rmso=^Z2, sgr0=^Z2, smso=^Z3, --# My system [for reference] : Apple ][+, 64K, Ultraterm display card, --# Apple Cat ][ 212 modem, + more all --# controlled by ASCII Express: Pro. --# From Dave Shaver <isucs1!shaver> --apple-uterm-vb|Videx Ultraterm for Apple micros with Visible Bell, -- OTbs, am, eo, xt, -- cols#80, lines#24, -- acsc=, clear=^L, cuf1=^\, -- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -- flash=^W35^W06, home=^Y, -- is2=^V4^W06\017\rVisible Bell Installed.\016\r\n, -- rmso=^N, smso=^O, --apple-uterm|Ultraterm for Apple micros, -- OTbs, am, eo, xt, -- cols#80, lines#24, -- acsc=, clear=^L, cuf1=^\, -- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -- home=^Y, is2=^V4^W06\016, rmso=^N, smso=^O, --# from trwrba!bwong (Bradley W. Wong): -+# p14: Prism-14 in ANSII mode -+# --------------------------- - # --# This entry assumes that you are using an apple with the UCSD Pascal --# language card. SYSTEM.MISCINFO is assumed to be the same as that --# supplied with the standard apple except that screenwidth should be set --# using SETUP to 80 columns. Note that the right arrow is not mapped in --# this termcap entry. This is because that key, on the Apple, transmits --# a ^U and would thus preempt the more useful "up" function of vi. -+# See p9 definition. - # --# HMH 2/23/81 --apple80p|80-column apple with Pascal card, -- am, bw, -- cols#80, lines#24, -- clear=^Y^L, cuf1=^\\:, -- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -- home=^Y, kcub1=^H, -+prism14|p14|P14|MDC Prism-14 in ANSII mode, -+ use=p9, -+ -+# p14-w: Prism-14 in 132 column mode -+# ---------------------------------- - # --# Apple II+ equipped with Videx 80 column card -+# 'Wide' version of p14. - # --# Terminfo from ihnp4!ihu1g!djc1 (Dave Christensen) via BRL; --# manually converted by D A Gwyn -+prism14-w|p14-w|P14-W|MDC Prism-14 in 132 column mode, -+ use=p9-w, -+ -+# p14-m: Prism-14 in MDC emulation mode -+# ------------------------------------- - # --# DO NOT use any terminal emulation with this data base, it works directly --# with the Videx card. This has been tested with vi 1200 baud and works fine. -+# P14 terminal in MDC emulation mode. -+# Similar to p8 definition. -+# Insertion and deletion operations possible. - # --# This works great for vi, except I've noticed in pre-R2, ^U will scroll back --# 1 screen, while in R2 ^U doesn't. --# For inverse alternate character set add: --# <smacs>=^O:<rmacs>=^N: --# (apple-v: added it#8 -- esr) --apple-videx2|Apple II+ w/ Videx card (similar to Datamedia h1520), -- am, xenl, -- cols#80, it#8, lines#24, -- bel=\007$<100/>, clear=\014$<16*/>, cr=^M, cub1=^H, -- cud1=^J, cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c, -- cuu1=^_, ed=\013$<16*/>, el=^], home=^Y, ht=\011$<8/>, -- ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^\, kcuu1=^_, -- khome=^Y, rmso=^Z2, smso=^Z3, --apple-videx3|vapple|Apple II with 80 col card, -+prism14-m|p14-m|P14-M|MDC Prism-14 in MDC emulation mode, -+ use=p9-8, -+ -+# p14-m-w: Prism-14 in MDC emulation and 132 column modes -+# ------------------------------------------------------- -+# -+# P14 terminal in MDC emulation mode and 132 column mode. -+# -+prism14-m-w|p14-m-w|P14-M-W|MDC Prism-14 in MDC emulation and 132 column mode, -+ use=p9-8-w, -+ -+# End of McDonnell Information Systems Prism definitions -+ -+# These things were popular in the Pick database community at one time -+# From: George Land <georgeland@aol.com> 24 Sep 1996 -+p8gl|prism8gl|McDonnell-Douglas Prism-8 alternate definition, -+ am, bw, hs, mir, -+ cols#80, lines#24, ma#1, wsl#78, xmc#1, -+ bel=^G, blink=^CB, clear=^L, cr=^M, cub1=^U, cud1=^J, cuf1=^F, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, dch1=\s^H, dim=^CA, dl1=^P, -+ ed=\EJ, el=\EK, home=^A, ind=^J, invis=^CH, kbs=^H, kcub1=^U, -+ kcud1=^J, kcuf1=^F, kcuu1=^Z, kdch1=\s^H, kdl1=^P, ked=\EJ, -+ kel=\EK, kf1=^A@\r, kf10=^AI\r, kf12=^AJ\r, kf13=^AK\r, -+ kf14=^AL\r, kf15=^AM\r, kf16=^AN\r, kf17=^AO\r, kf2=^AA\r, -+ kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, -+ kf8=^AG\r, kf9=^AH\r, khome=^A, lf1=F1, lf10=F10, lf2=F2, -+ lf3=F3, lf4=F4, lf5=F5, lf6=F6, lf7=F7, lf8=F8, lf9=F9, nel=^J^M, -+ pad=\0, rev=^CD, rmso=^C\s, rmul=^C\s, sgr0=^C\s, smso=^CE, -+ smul=^C0, -+ -+#### Microterm (act, mime) -+# -+# The mime1 entries refer to the Microterm Mime I or Mime II. -+# The default mime is assumed to be in enhanced act iv mode. -+# -+ -+# New "safe" cursor movement (5/87) from <reuss@umd5.umd.edu>. Prevents -+# freakout with out-of-range args on Sytek multiplexors. No <smso=^N> and -+# <rmso=^N> since it gets confused and it's too dim anyway. No <ich1> -+# since Sytek insists ^S means xoff. -+# (act4: found ":ic=2^S:ei=:im=:ip=.1*^V:" commented out in 8.3 -- esr) -+act4|microterm|microterm act iv, - OTbs, am, - cols#80, lines#24, -- clear=\Ev, cub1=\ED, cud1=\EB, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, el=\Ex, -- home=\EH, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -- kf0=\EP, kf1=\EQ, kf2=\ER, kf3=\E\s, kf4=\E!, kf5=\E", kf6=\E#, -- kf7=\E$, kf8=\E%%, kf9=\E&, khome=\EH, --#From: decvax!cbosgd!cbdkc1!mww Mike Warren via BRL --aepro|Apple II+ running ASCII Express Pro--vt52, -+ bel=^G, clear=\014$<12/>, cr=^M, cub1=^H, cud1=^K, cuf1=^X, -+ cup=\024%p1%{24}%+%c%p2%p2%?%{47}%>%t%{48}%+%;%{80}%+%c, -+ cuu1=^Z, dch1=\004$<.1*/>, dl1=\027$<2.3*/>, -+ ed=\037$<2.2*/>, el=\036$<.1*/>, home=^], -+ il1=\001<2.3*/>, ind=^J, kcub1=^H, kcud1=^K, kcuf1=^X, -+ kcuu1=^Z, -+# The padding on :sr: and :ta: for act5 and mime is a guess and not final. -+# The act 5 has hardware tabs, but they are in columns 8, 16, 24, 32, 41 (!)... -+# (microterm5: removed obsolete ":ma==^Z^P^Xl^Kj:" -- esr) -+act5|microterm5|microterm act v, -+ kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, ri=\EH$<3>, uc=^H\EA, -+ use=act4, -+# Mimes using brightness for standout. Half bright is really dim unless -+# you turn up the brightness so far that lines show up on the screen. -+mime-fb|full bright mime1, -+ is2=^S\E, rmso=^S, smso=^Y, use=mime, -+mime-hb|half bright mime1, -+ is2=^Y\E, rmso=^Y, smso=^S, use=mime, -+# (mime: removed obsolete ":ma=^X ^K^J^Z^P:"; removed ":do=^K:" that overrode -+# the more plausible ":do=^J:" -- esr) -+# uc was at one time disabled to get around a curses bug, be wary of it -+mime|mime1|mime2|mimei|mimeii|microterm mime1, -+ OTbs, am, -+ cols#80, it#8, lines#24, vt#9, -+ bel=^G, clear=^]^C, cr=^M, cub1=^H, cud1=^J, cuf1=^X, -+ cup=\024%p1%{24}%+%c%p2%p2%?%{32}%>%t%{48}%+%;%{80}%+%c, -+ cuu1=^Z, dl1=\027$<80>, ed=^_, el=^^, home=^], ht=\011$<2>, -+ il1=\001$<80>, ind=^J, is2=^S\E^Q, kcub1=^H, kcud1=^K, -+ kcuf1=^X, kcuu1=^Z, ri=\022$<3>, uc=^U, -+# These termcaps (for mime2a) put the terminal in low intensity mode -+# since high intensity mode is so obnoxious. -+mime2a-s|microterm mime2a (emulating an enhanced soroc iq120), -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EI, dch1=\ED, -+ dl1=\027$<20*>, ed=\EJ$<20*>, el=\EK, home=^^, -+ il1=\001$<20*>, ind=^J, ip=$<2>, is2=\E), kcub1=^H, kcud1=^J, -+ kcuf1=^L, kcuu1=^K, ri=\EI, rmir=^Z, rmso=\E;, rmul=\E7, -+ smir=\EE, smso=\E\:, smul=\E6, -+# This is the preferred mode (but ^X can't be used as a kill character) -+mime2a|mime2a-v|microterm mime2a (emulating an enhanced vt52), - OTbs, -+ cols#80, it#8, lines#24, -+ bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=^N, -+ dl1=\027$<20*>, ed=\EQ$<20*>, el=\EP, home=\EH, ht=^I, -+ il1=\001$<20*>, ind=^J, ip=$<2>, is2=^Y, kcub1=\ED, -+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, ri=\EA, rmir=^Z, rmso=\E9, -+ rmul=\E5, smir=^O, smso=\E8, smul=\E4, -+# (mime3a: removed obsolete ":ma=^X ^K^J^Z^P:" -- esr) -+mime3a|mime1 emulating 3a, -+ am@, -+ kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, use=adm3a, -+mime3ax|mime-3ax|mime1 emulating enhanced 3a, -+ it#8, -+ dl1=\027$<80>, ed=^_, el=^X, ht=\011$<3>, il1=\001$<80>, -+ use=mime3a, -+# Wed Mar 9 18:53:21 1983 -+# We run our terminals at 2400 baud, so there might be some timing problems at -+# higher speeds. The major improvements in this model are the terminal now -+# scrolls down and insert mode works without redrawing the rest of the line -+# to the right of the cursor. This is done with a bit of a kludge using the -+# exit graphics mode to get out of insert, but it does not appear to hurt -+# anything when using vi at least. If you have some users using act4s with -+# programs that use curses and graphics mode this could be a problem. -+mime314|mm314|mime 314, -+ am, - cols#80, lines#24, -- clear=\014$<300/>, cub1=\ED, cud1=\EB, cuf1=\EC, -- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, -- el=\EK, home=\EH, --# UCSD addition: Yet another termcap from Brian Kantor's Micro Munger Factory --apple-vm80|ap-vm80|apple with viewmax-80, -- OTbs, -+ clear=^L, cub1=^H, cuf1=^X, cup=\024%p1%c%p2%c, cuu1=^Z, -+ dch1=^D, dl1=^W, ed=^_, el=^^, home=^], ht=^I, il1=^A, kcub1=^H, -+ kcud1=^K, kcuf1=^X, kcuu1=^Z, rmir=^V, smir=^S, -+# Microterm mime 340 from University of Wisconsin -+mm340|mime340|mime 340, - cols#80, lines#24, -- clear=\014$<300/>, cuf1=^\\:, -- cup=\036%p1%{32}%+%c%p2%{32}%+%c$<100/>, cuu1=^_, -- ed=\013$<300/>, el=^], home=\031$<200/>, -+ clear=\032$<12/>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, -+ dch1=\E#$<2.1*/>, dl1=\EV$<49.6/>, ed=\037$<2*/>, -+ el=\EL$<2.1/>, ht=^I, il1=\EU$<46/>, ind=^J, is2=\E\,, -+ kbs=^H, kcub1=^H, kcud1=^J, kcuu1=^K, nel=^M^J, -+# This came from University of Wisconsin marked "astro termcap for jooss". -+# (mt4520-rv: removed obsolete ":kn#4:" and incorrect ":ri=\E[C:"; -+# also added <rmam>/<smam> based on the init string -- esr) -+mt4520-rv|micro-term 4520 reverse video, -+ am, hs, msgr, xenl, xon, -+ cols#80, it#8, lines#24, wsl#80, -+ bel=^G, clear=\E[H\E[J, cnorm=\E[0V\E8, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ cvvis=\E7\E[0U, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5l$<200/>\E[?5h, -+ fsl=\E[?5l\E[?5h, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\ED, -+ is2=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[1;24r\E[24;1H\E[H\E[J, -+ kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, -+ ll=\E[24;1H, nel=\EE, rc=\E8, rf=/usr/share/tabset/vt100, -+ ri=\EM, rmam=\E[?7l, rmso=\E[0m, rmul=\E[24m, -+ rs1=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[H\E[J, -+ sc=\E7, sgr0=\E[m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, -+ tbc=\E[g, tsl=\E[25;1H, - --#### Apple Lisa & Macintosh -+# Fri Aug 5 08:11:57 1983 -+# This entry works for the ergo 4000 with the following setups: -+# ansi,wraparound,newline disabled, xon/xoff disabled in both -+# setup a & c. - # -+# WARNING!!! There are multiple versions of ERGO 4000 microcode -+# Be advised that very early versions DO NOT WORK RIGHT !! -+# Microterm does have a ROM exchange program- use it or lose big -+# (ergo400: added <rmam>/<smam> based on the init string -- esr) -+ergo4000|microterm ergo 4000, -+ da, db, msgr, -+ cols#80, lines#66, -+ bel=^G, clear=\E[H\E[2J$<80>, cr=^M, cub1=^H, cud1=\E[B, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -+ dch1=\E[1P$<80>, dl1=\E[1M$<5*>, ed=\E[0J$<15>, -+ el=\E[0K$<13>, ht=^I, il1=\E[1L$<5*>, ind=\ED$<20*>, -+ is2=\E<\E=\E[?1l\E[?4l\E[?5l\E[?7h\E[?8h$<300>, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, -+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, lf1=pf1, lf2=pf2, lf3=pf3, -+ lf4=pf4, ri=\EM$<20*>, rmam=\E[?7l, rmir=\E[4l, -+ rmkx=\E=$<4>, rmso=\E[m$<20>, sgr0=\E[m$<20>, -+ smam=\E[?7m, smir=\E[4h$<6>, smkx=\E=$<4>, -+ smso=\E[7m$<20>, - --# (lisa: changed <cvvis> to <cnorm> -- esr) --lisa|apple lisa console display (black on white), -- OTbs, am, eo, msgr, -- cols#88, it#8, lines#32, -- acsc=jdkclfmenbqattuvvuwsx`, civis=\E[5h, clear=^L, -- cnorm=\E[5l, cub1=^H, cud1=\E[B, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -- ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@, il1=\E[L, -- is2=\E>\E[m\014, kbs=^H, kcub1=\E[D, kcud1=\E[B, -- kcuf1=\E[C, kcuu1=\E[A, rmacs=\E[10m, rmso=\E[m, rmul=\E[m, -- sgr0=\E[m, smacs=\E[11m, smso=\E[7m, smul=\E[4m, --liswb|apple lisa console display (white on black), -- is2=\E>\E[0;7m\014, rmso=\E[0;7m, rmul=\E[0;7m, -- smso=\E[m, smul=\E[4m, use=lisa, -- --# lisaterm from ulysses!gamma!epsilon!mb2c!jed (John E. Duncan III) via BRL; --# <is2> revised by Ferd Brundick <fsbrn@BRL.ARPA> -+#### NCR - # --# These entries assume that the 'Auto Wraparound' is enabled. --# Xon-Xoff flow control should also be enabled. -+# NCR's terminal group was merged with AT&T's when AT&T bought the company. -+# For what happened to that group, see the ADDS section. - # --# The vt100 uses :rs2: and :rf: rather than :is2:/:tbc:/:hts: because the tab --# settings are in non-volatile memory and don't need to be reset upon login. --# Also setting the number of columns glitches the screen annoyingly. --# You can type "reset" to get them set. -+# There is an NCR4103 terminal that's just a re-badged Wyse-50. - # --lisaterm|Apple Lisa or Lisa/2 running LisaTerm vt100 emulation, -- OTbs, OTpt, am, xenl, xon, -- OTkn#4, cols#80, it#8, lines#24, vt#3, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, ed=\E[J, -- el=\E[K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, kcub1=\EOD, -- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOP, kf1=\EOQ, -- kf2=\EOR, kf3=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, rc=\E8, -- rev=\E[7m, ri=\EM, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -- rs1=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r, -- sc=\E7, sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -- tbc=\E[3g, --# Lisaterm in 132 column ("wide") mode. --lisaterm-w|Apple Lisa with Lisaterm in 132 column mode, -+ -+# The following vendor-supplied termcaps were captured from the Boundless -+# Technologies site, 8 March 1998. I removed all-upper-case names that were -+# identical, except for case, to lower-case ones. I also uncommented the acsc -+# capabilities.X -+# -+# The Intecolor emulation of the NCR 2900/260C color terminal is basically a -+# DEC vt200/300 with color capabilities added. -+ncr260intan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard, -+ colors#8, pairs#64, -+ op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ use=ncr260vt300an, -+# The Intecolor emulation of the NCR 2900/260C color terminal is basically a -+# DEC vt200/300 with color capabilities added. -+ncr260intwan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard, -+ colors#8, pairs#64, -+ op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ use=ncr260vt300wan, -+# The Intecolor emulation of the NCR 2900/260C color terminal is basically a -+# DEC vt200/300 with color capabilities added. -+ncr260intpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard, -+ colors#8, pairs#64, -+ op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ use=ncr260vt300pp, -+# The Intecolor emulation of the NCR 2900/260C color terminal is basicly a -+# DEC vt200/300 with color capabilities added. -+ncr260intwpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard in 132 column mode, -+ colors#8, pairs#64, -+ op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -+ use=ncr260vt300wpp, -+# This definition for ViewPoint supports several attributes. This means -+# that it has magic cookies (extra spaces where the attributes begin). -+# Some applications do not function well with magic cookies. The System -+# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. -+# If supporting various attributes is not vital, 'xmc#1' and the extra -+# attributes can be removed. -+# Mapping to ASCII character set ('acsc' capability) can also be -+# restored if needed. -+ncr260vppp|NCR 2900_260 viewpoint, -+ am, bw, hs, km, mc5i, mir, msgr, xon, -+ cols#80, lines#24, nlab#32, xmc#1, -+ acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, -+ cbt=\EI, civis=\E`0, clear=\014$<40>, cnorm=\E`5, -+ cr=\r$<2>, cub1=\010$<2>, cud1=\n$<2>, cuf1=\006$<2>, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c$<5>, cuu1=\032$<2>, -+ dch1=\EW$<2>, dim=\EGp, dl1=\El$<2>, dsl=\E`c, ed=\Ek$<2>, -+ el=\EK$<2>, fsl=^M, home=\036$<2>, ht=^I, hts=\E1, -+ il1=\EM$<2>, ind=\n$<2>, invis=\EG1, -+ 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, -+ kbs=^H, kc1=\ET, kc3=\EJ, kcub1=^U, kcud1=^J, kcuf1=^F, -+ kcuu1=^Z, kdch1=\EW, kend=\EK, kf1=^B1\r, kf10=^B\:\r, -+ kf11=^B;\r, kf12=^B<\r, kf13=^B=\r, kf14=^B>\r, kf15=^B?\r, -+ kf16=^B@\r, kf17=^B!\r, kf18=^B"\r, kf19=^B#\r, kf2=^B2\r, -+ kf20=^B$\r, kf21=\002%^M, kf22=^B&\r, kf23=^B'\r, -+ kf24=^B(\r, kf25=^B)\r, kf26=^B*\r, kf27=^B+\r, -+ kf28=^B\,\r, kf29=^B-\r, kf3=^B3\r, kf30=^B.\r, kf31=^B/\r, -+ kf32=^B0\r, kf4=^B4\r, kf5=^B5\r, kf6=^B6\r, kf7=^B7\r, -+ kf8=^B8\r, 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, -+ 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, tsl=\EF, -+ncr260vpwpp|NCR 2900_260 viewpoint wide mode, -+ cols#132, -+ cup=\Ea%i%p1%dR%p2%dC$<30>, -+ is2=\Ee6\E~%$<100>\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>, -+ rs2=\Ee6\E~%$<100>\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>, -+ use=ncr260vppp, -+ncr260vt100an|NCR 2900_260 vt100 with ansi kybd, -+ am, hs, mir, msgr, xenl, xon, -+ cols#80, lines#24, nlab#32, -+ acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, -+ blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD$<5>, -+ cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>, -+ cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>, -+ cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>, -+ cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>, -+ dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~, -+ ech=\E[%p1%dX, ed=\E[0J$<5>, el=\E[0K$<3>, el1=\E[1K$<3>, -+ fsl=\E[0$}, home=\E[H$<1>, hpa=\E[%p1%dG$<40>, ht=^I, -+ hts=\EH, ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, -+ il1=\E[L$<5>, ind=\ED$<5>, indn=\E[%p1%dE$<5>, -+ invis=\E[8m, -+ is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kdch1=\E[3~, kfnd=\E[1~, khlp=\E[28~, kich1=\E[2~, -+ knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, nel=\EE$<5>, -+ rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=^O, rmir=\E[4l, -+ rmkx=\E[?1l\E>, rmso=\E[0m, rmul=\E[0m, -+ rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ sc=\E7, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<20>, -+ sgr0=\E[0m\017$<20>, smacs=^N, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[1;7m, smul=\E[4m, tbc=\E[3g, -+ tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, use=vt220+keypad, -+ncr260vt100wan|NCR 2900_260 vt100 wide mode ansi kybd, -+ cols#132, -+ cup=\E[%i%p1%d;%p2%dH$<30>, -+ is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ use=ncr260vt100an, -+ncr260vt100pp|NCR 2900_260 vt100 with PC+ kybd, -+ is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~, -+ kend=\E[5~, khome=\E[2~, kich1=\E[1~, knp=\E[6~, kpp=\E[3~, -+ lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, -+ rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ smkx=\E=, use=ncr260vt100an, -+ncr260vt100wpp|NCR 2900_260 vt100 wide mode pc+ kybd, -+ cols#132, -+ cup=\E[%i%p1%d;%p2%dH$<30>, -+ is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ use=ncr260vt100pp, -+ncr260vt200an|NCR 2900_260 vt200 with ansi kybd, -+ am, hs, mir, msgr, xenl, xon, -+ cols#80, lines#24, nlab#32, -+ acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, -+ blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>, -+ csr=\E[%i%p1%d;%p2%dr$<5>, cub=\E[%p1%dD$<5>, -+ cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>, -+ cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>, -+ cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>, -+ cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>, -+ dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~, -+ ech=\E[%p1%dX$<5>, ed=\E[0J, el=\E[0K$<5>, el1=\E[1K$<5>, -+ fsl=\E[0$}, home=\E[H, hpa=\E[%p1%dG$<40>, ht=^I, hts=\EH, -+ ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>, -+ ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m, -+ is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kdch1=\E[3~, kf0=\EOy, kf10=\E[21~, kf11=\E[23~, -+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -+ kf2=\EOQ, kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, -+ kf23=\E[33~, kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, -+ kf27=\E[2~, kf28=\E[3~, kf29=\E[4~, kf3=\EOR, kf30=\E[5~, -+ kf31=\E[6~, kf32=\E[7~, kf33=\E[8~, kf34=\E[9~, -+ kf35=\E[10~, kf4=\EOS, kf5=\E[M, kf6=\E[17~, kf7=\E[18~, -+ kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, khlp=\E[28~, -+ kich1=\E[2~, knp=\E[6~, kpp=\E[5~, krdo=\E[29~, kslt=\E[4~, -+ mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, -+ ri=\EM$<5>, rmacs=\017$<20>, rmam=\E[?7l, rmir=\E[4l, -+ rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, -+ rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ sc=\E7, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<20>, -+ sgr0=\E[0m\017$<20>, smacs=\016$<20>, smam=\E[?7h, -+ smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, -+ use=vt220+keypad, -+ncr260vt200wan|NCR 2900_260 vt200 wide mode ansi kybd, - cols#132, -- kbs=^H, kcub1=^H, kcud1=^J, use=lisaterm, --# Although MacTerminal has insert/delete line, it is commented out here --# since it is much faster and cleaner to use the "lock scrolling region" --# method of inserting and deleting lines due to the MacTerminal implementation. --# Also, the "Insert/delete ch" strings have an extra character appended to them --# due to a bug in MacTerminal V1.1. Blink is disabled since it is not --# supported by MacTerminal. --mac|macintosh|Macintosh with MacTerminal, -- xenl, -- OTdN#30, -- blink@, dch1=\E[P$<7/>, ich1=\E[@$<9/>, ip=$<7/>, use=lisa, --# Lisaterm in 132 column ("wide") mode. --mac-w|macterminal-w|Apple Macintosh with Macterminal in 132 column mode, -- cols#132, use=mac, -- --# nsterm*|Apple_Terminal - AppKit Terminal.app --# --# Terminal.app is a Terminal emulator bundled with NeXT's NeXTStep and --# OPENSTEP/Mach operating systems, and with Apple's Rhapsody, Mac OS X --# Server and Mac OS X operating systems. There is also a --# "terminal.app" in GNUStep, but I believe it to be an unrelated --# codebase and I have not attempted to describe it here. --# --# For NeXTStep, OPENSTEP/Mach, Rhapsody and Mac OS X Server 1.0, you --# are pretty much on your own. Use "nsterm-7-m" and hope for the best. --# You might also try "nsterm-7" and "nsterm-old" if you suspect your --# version supports color. --# --# To determine the version of Terminal.app you're using by running: --# --# echo "$TERM_PROGRAM" "$TERM_PROGRAM_VERSION" --# --# For Apple_Terminal v200+, use "nsterm-16color" (a.k.a. "nsterm") --# --# For Apple_Terminal v71+/v100+, use "nsterm-bce". --# --# For Apple_Terminal v51+, use "nsterm-7-c" or "nsterm-7-c-s". --# --# For Apple_Terminal v41+, use "nsterm-old", or "nsterm-s". --# --# For all earlier versions (Apple_Terminal), try "nsterm-7-m" --# (monochrome) or "nsterm-7" (color); "nsterm-7-m-s" and "nsterm-7-s" --# might work too, but really you're on your own here since these --# systems are very obsolete and I can't test them. I do welcome --# patches, though :). -- --# Other Terminals: --# --# For GNUstep_Terminal, you're probably best off using "linux" or --# writing your own terminfo. -- --# For MacTelnet, you're on your own. It's a different codebase, and --# seems to be somewhere between "vt102", "ncsa" and "xterm-color". -- --# For iTerm.app, see "iterm". -- --# --# The AppKit Terminal.app descriptions all have names beginning with --# "nsterm". Note that the statusline (-s) versions use the window --# titlebar as a phony status line, and may produce warnings during --# compilation as a result ("tsl uses 0 parameters, expected 1".) --# Ignore these warnings, or even ignore these entries entirely. Apps --# which need to position the cursor or do other fancy stuff inside the --# status line won't work with these entries. They're primarily useful --# for programs like Pine which provide simple notifications in the --# status line. Please note that non-ASCII characters don't work right --# in the status line, since Terminal.app incorrectly interprets their --# Unicode codepoints as MacRoman codepoints (in earlier Mac OS X --# versions) or only accepts status lines consisting entirely of --# characters from the first 256 Unicode positions (including C1 but --# not C0 or DEL.) --# --# The Mythology* of AppKit Terminal.app: --# --# In the days of NeXTSTep 0.x and 1.x there were two incompatible --# bundled terminal emulators, Shell and Terminal. Scott Hess wrote a --# shareware replacement for Terminal called "Stuart" which NeXT bought --# and used as the basis for the Terminal.app in NeXTstep 2+, --# OPENSTEP/Mach, Apple Rhapsody, Mac OS X Server 1.0, and Mac OS X. I --# don't know the TERM_PROGRAM and TERM_PROGRAM_VERSION settings or --# capabilities for the early versions, but I believe that the --# TERM_PROGRAM_VERSION may have been reset at some point. --# --# The early versions were tailored to the NeXT character set. Sometime --# after the Apple aquisition the encoding was swiched to MacRoman --# (initally with serious altcharset bugs due to incomplete conversion --# of the old NeXT code,) and then later to UTF-8. Alos sometime during --# or just prior to the early days of Mac OS X, the Terminal grew ANSI --# 8-color support (initially buggy when combined with attributes, but --# that was later fixed.) More recently, around Mac OS X version 10.3 --# or so (Terminal.app v100+) xterm-like 16-color support was added. In --# some versions (for instance 133-1 which shipped with Mac OS X --# version 10.4) this suffered from the <bce> bug, but that seems to --# have been fixed in Mac OS X version 10.5 (Terminal.app v240.2+). --# --# In the early days of Mac OS X the terminal was fairly buggy and --# would routinely crash under load. Many of these bugs seem to have --# been fixed around Mac OS X version 10.3 (Terminal.app v100+) but --# some may still remain. This change seems to correspond to --# Terminal.app reporting "xterm-color" as $TERM rather than "vt100" as --# it did previously. --# --# * This may correspond with what actually happened, but I don't --# know. It is based on guesswork, hearsay, private correspondence, --# my faulty memory, and the following online sources and references: --# --# [1] "Three Scotts and a Duane" by Simson L. Garfinkel --# http://www.nextcomputers.org/NeXTfiles/Articles/NeXTWORLD/93.8/93.8.Dec.Community1.html -+ cup=\E[%i%p1%d;%p2%dH$<30>, -+ is2=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H$<200>, -+ rs2=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H$<200>, -+ use=ncr260vt200an, -+ncr260vt200pp|NCR 2900_260 vt200 with pc+ kybd, -+ ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~, -+ kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -+ lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=, -+ use=ncr260vt200an, -+ncr260vt200wpp|NCR 2900_260 vt200 wide mode pc+ kybd, -+ cols#132, -+ cup=\E[%i%p1%d;%p2%dH$<30>, -+ is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ use=ncr260vt200pp, -+ncr260vt300an|NCR 2900_260 vt300 with ansi kybd, -+ am, hs, mir, msgr, xenl, xon, -+ cols#80, lines#24, nlab#32, -+ acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G, -+ blink=\E[5m, bold=\E[1m, civis=\E[?25l, -+ clear=\E[2J\E[1;1H$<20>, cnorm=\E[?25h, cr=\r$<1>, -+ csr=\E[%i%p1%d;%p2%dr$<5>, cub=\E[%p1%dD$<5>, -+ cub1=\E[D$<5>, cud=\E[%p1%dB$<5>, cud1=\E[B$<5>, -+ cuf=\E[%p1%dC$<5>, cuf1=\E[C$<5>, -+ cup=\E[%i%p1%d;%p2%dH$<10>, cuu=\E[%p1%dA$<5>, -+ cuu1=\E[A$<5>, dch=\E[%p1%dP$<5>, dch1=\E[1P$<5>, -+ dl=\E[%p1%dM$<5>, dl1=\E[M$<5>, dsl=\E[0$~\E[1$~, -+ ech=\E[%p1%dX$<5>, ed=\E[0J, el=\E[0K$<5>, el1=\E[1K$<5>, -+ fsl=\E[0$}, home=\E[H, hpa=\E[%p1%dG$<40>, ht=^I, hts=\EH, -+ ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>, -+ ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m, -+ is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kdch1=\E[3~, kf0=\EOy, kf10=\E[21~, kf11=\E[23~, -+ kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, -+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, -+ kf20=\E[34~, kf21=\E[31~, kf22=\E[32~, kf23=\E[33~, -+ kf24=\E[34~, kf25=\E[35~, kf26=\E[1~, kf27=\E[2~, -+ kf28=\E[3~, kf29=\E[4~, kf30=\E[5~, kf31=\E[6~, kf32=\E[7~, -+ kf33=\E[8~, kf34=\E[9~, kf35=\E[10~, kf5=\E[M, kf6=\E[17~, -+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, -+ khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -+ krdo=\E[29~, kslt=\E[4~, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, -+ nel=\EE, rc=\E8, rev=\E[7m, ri=\EM$<5>, rmacs=\017$<20>, -+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, -+ rmul=\E[24m, -+ rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ sc=\E7, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<20>, -+ sgr0=\E[0m\017$<20>, smacs=\016$<20>, smam=\E[?7h, -+ smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, tsl=\E[2$~\E[1$}, vpa=\E[%p1%dd$<40>, -+ use=vt220+keypad, -+ncr260vt300wan|NCR 2900_260 vt300 wide mode ansi kybd, -+ cols#132, -+ cup=\E[%i%p1%d;%p2%dH$<30>, -+ is2=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H$<200>, -+ rs2=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H$<200>, -+ use=ncr260vt300an, -+ncr260vt300pp|NCR 2900_260 vt300 with pc+ kybd, -+ ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~, -+ kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, -+ lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=, -+ use=ncr260vt300an, -+NCR260VT300WPP|ncr260vt300wpp|NCR 2900_260 vt300 wide mode pc+ kybd, -+ cols#132, -+ cup=\E[%i%p1%d;%p2%dH$<30>, -+ is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>, -+ use=ncr260vt300pp, -+# This terminfo file contains color capabilities for the Wyse325 emulation of -+# the NCR 2900/260C color terminal. Because of the structure of the command -+# (escape sequence) used to set color attributes, one of the fore/background -+# colors must be preset to a given value. I have set the background color to -+# black. The user can change this setup by altering the last section of the -+# 'setf' definition. The escape sequence to set color attributes is -+# ESC d y <foreground_color> <background_color> 1 -+# In addition, the background color can be changed through the desk accessories. -+# The capablitiy 'op' sets colors to green on black (default combination). - # --# [2] NeXTSTEP entry from Wikipedia, the free encyclopedia --# https://secure.wikimedia.org/wikipedia/en/wiki/Nextstep -+# NOTE: The NCR Unix System Administrator's Shell will not function properly -+# if the 'pairs' capability is defined. Un-Comment the 'pairs' -+# capability and recompile if you wish to have it included. - # --# * Renamed the AppKit Terminal.app entry from "Apple_Terminal" to --# "nsterm" to comply with the name length and case conventions and --# limitations of various software packages [notably Solaris terminfo --# and UNIX.] A single Apple_Terminal alias is retained for --# backwards-compatbility. -+ncr260wy325pp|NCR 2900_260 wyse 325, -+ am, bw, hs, km, mc5i, mir, msgr, xon, -+ colors#16, cols#80, lines#24, ncv#33, nlab#32, -+ acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, -+ cbt=\EI, civis=\E`0, clear=\E*$<10>, cnorm=\E`1, cr=^M, -+ cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<10>, cuu1=\013$<5>, -+ cvvis=\E`5, dch1=\EW$<50>, dl1=\ER$<5>, dsl=\E`c, -+ ed=\Ey$<5>, el=\Et$<5>, fsl=^M, home=\036$<5>, ht=^I, -+ hts=\E1, il1=\EE$<5>, ind=\n$<5>, invis=\EG1, -+ 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, -+ kRIT=^L, ka1=^^, kb2=\EJ, kbs=^H, kc1=\ET, kc3=\EK, kcbt=\EI, -+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kend=\ET, -+ kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, -+ kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, -+ kf19=^Ab\r, kf2=^AA\r, kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, -+ kf23=^Af\r, kf24=^Ag\r, kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, -+ kf28=^Ak\r, kf29=^Al\r, kf3=^AB\r, kf30=^Am\r, kf31=^An\r, -+ kf32=^Ao\r, kf4=^AC\r, kf5=^AD\r, 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$<10>, -+ nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH\003\EcB0, -+ rmam=\Ed., rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20, -+ rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -+ setb=\s, -+ setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}%e%p1%{3}%=%t%{52}%e%p1%{4}%=%t%{53}%e%p1%{5}%=%t%{54}%e%p1%{6}%=%t%{55}%e%p1%{7}%=%t%{64}%e%p1%{8}%=%t%{57}%e%p1%{9}%=%t%{58}%e%p1%{10}%=%t%{59}%e%p1%{11}%=%t%{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, -+ tsl=\EF, -+ncr260wy325wpp|NCR 2900_260 wyse 325 wide mode, -+ cols#132, -+ cup=\Ea%i%p1%dR%p2%dC$<30>, -+ is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -+ rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -+ use=ncr260wy325pp, -+# This definition for Wyse 350 supports several attributes. This means -+# that it has magic cookies (extra spaces where the attributes begin). -+# Some applications do not function well with magic cookies. The System -+# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. -+# If supporting various attributes is not vital, 'xmc#1' and the extra -+# attributes can be removed. -+# Mapping to ASCII character set ('acsc' capability) can also be -+# restored if needed. -+# In addition, color capabilities have been added to this file. The drawback, -+# however, is that the background color has to be black. The foreground colors -+# are numbered 0 through 15. - # --# * Added function key support (F1-F4). These only work in Terminal.app --# version 51, hopefully the capabilities won't cause problems for people --# using version 41. -+# NOTE: The NCR Unix System Administrator's Shell does not function properly -+# with the 'pairs' capability defined as below. If you wish to -+# have it included, Un-comment it and recompile (using 'tic'). - # --# * Added "full color" (-c) entries which support the 16-color mode in --# version 51. -+ncr260wy350pp|NCR 2900_260 wyse 350, -+ am, bw, hs, km, mc5i, mir, msgr, xon, -+ colors#16, cols#80, lines#24, ncv#33, nlab#32, pairs#16, xmc#1, -+ acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, -+ cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, -+ cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<40>, cuu1=\013$<5>, -+ cvvis=\E`5, dch1=\EW$<50>, dim=\EGp, dl1=\ER$<5>, dsl=\E`c, -+ ed=\Ey$<5>, el=\Et$<5>, fsl=^M, home=\036$<10>, ht=^I, -+ hts=\E1, il1=\EE$<5>, ind=\n$<5>, invis=\EG1, -+ 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{, kPRT=\E7, kRIT=^L, ka1=^^, kbs=^H, -+ kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, -+ kcuu1=^K, kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, -+ kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, -+ kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, -+ kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, -+ kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, -+ kf3=^AB\r, kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, -+ kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, -+ 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$<20>, -+ nel=\037$<5>, rev=\EG4, ri=\Ej$<5>, rmacs=\EH\003\EcB0, -+ rmam=\Ed., rmir=\Er, rmso=\EG0, rmul=\EG0, rmxon=\Ec20, -+ rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`\:\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -+ setb=\s, -+ setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}%e%p1%{3}%=%t%{52}%e%p1%{4}%=%t%{53}%e%p1%{5}%=%t%{54}%e%p1%{6}%=%t%{55}%e%p1%{7}%=%t%{102}%e%p1%{8}%=%t%{97}%e%p1%{9}%=%t%{98}%e%p1%{10}%=%t%{99}%e%p1%{11}%=%t%{101}%e%p1%{12}%=%t%{106}%e%p1%{13}%=%t%{110}%e%p1%{14}%=%t%{111}%e%p1%{15}%=%t%{56}%;\Em0%c$<100>, -+ sgr0=\EG0\EH\003\EcD, smacs=\EH\002\EcB1, smam=\Ed/, -+ smir=\Eq, smso=\EGt, smul=\EG8, smxon=\Ec21, tbc=\E0, -+ tsl=\EF, -+ncr260wy350wpp|NCR 2900_260 wyse 350 wide mode, -+ cols#132, -+ cup=\Ea%i%p1%dR%p2%dC$<30>, -+ is2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, -+ rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, -+ use=ncr260wy350pp, -+# This definition for Wyse 50+ supports several attributes. This means -+# that it has magic cookies (extra spaces where the attributes begin). -+# Some applications do not function well with magic cookies. The System -+# Administrator's Shell in NCR Unix SVR4 1.03 is one such application. -+# If supporting various attributes is not vital, 'xmc#1' and the extra -+# attributes can be removed. -+# Mapping to ASCII character set ('acsc' capability) can also be -+# restored if needed. -+# (ncr260wy50+pp: originally contained commented-out -+# <acsc=j5k3l2m1n8q:t4u9v=w0x6>, as well as the commented-out one there -- esr) -+ncr260wy50+pp|NCR 2900_260 wyse 50+, -+ am, bw, hs, km, mc5i, mir, msgr, xon, -+ cols#80, lines#24, nlab#32, xmc#1, -+ acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, blink=\EG2, -+ cbt=\EI$<5>, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, -+ cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<30>, cuu1=\013$<5>, -+ cvvis=\E`5, dch1=\EW$<50>, dim=\EGp, dl1=\ER$<5>, dsl=\E`c, -+ ed=\EY$<5>, el=\ET$<5>, fsl=^M, home=\036$<10>, -+ ht=\011$<5>, hts=\E1$<5>, il1=\EE$<5>, ind=\n$<5>, -+ invis=\EG1, -+ 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, -+ kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L, -+ kcuu1=^K, kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, -+ kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, -+ kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, -+ kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, -+ kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, -+ kf3=^AB\r, kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, -+ kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, -+ 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, -+ 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>, tsl=\EF, -+ncr260wy50+wpp|NCR 2900_260 wyse 50+ wide mode, -+ cols#132, -+ cup=\Ea%i%p1%dR%p2%dC$<30>, -+ is2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, -+ rs2=\Ee6\E~"$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>, -+ use=ncr260wy50+pp, -+ncr260wy60pp|NCR 2900_260 wyse 60, -+ am, bw, hs, km, mc5i, mir, msgr, xon, -+ cols#80, lines#24, nlab#32, -+ acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2, -+ cbt=\EI$<15>, civis=\E`0, clear=\E*$<100>, cnorm=\E`1, -+ cr=^M, cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<10>, cuu1=\013$<5>, -+ cvvis=\E`5, dch1=\EW$<50>, dl1=\ER$<5>, dsl=\E`c, -+ ed=\Ey$<5>, el=\Et$<5>, fsl=^M, home=\036$<25>, -+ ht=\011$<15>, hts=\E1$<15>, il1=\EE$<5>, ind=\n$<5>, -+ invis=\EG1, -+ 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, -+ kRIT=^L, ka1=^^, kb2=\EJ, kbs=^H, kc1=\ET, kc3=\EK, -+ kcbt=\EI$<15>, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, -+ kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -+ kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, -+ kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, kf20=^Ac\r, -+ kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, kf25=^Ah\r, -+ kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, kf3=^AB\r, -+ kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, kf5=^AD\r, -+ 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, -+ 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>, -+ tsl=\EF, -+ncr260wy60wpp|NCR 2900_260 wyse 60 wide mode, -+ cols#132, -+ cup=\Ea%i%p1%dR%p2%dC$<30>, -+ is2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -+ rs2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>, -+ use=ncr260wy60pp, -+ncr160vppp|NCR 2900_160 viewpoint, -+ use=ncr260vppp, -+ncr160vpwpp|NCR 2900_160 viewpoint wide mode, -+ use=ncr260vpwpp, -+ncr160vt100an|NCR 2900_160 vt100 with ansi kybd, -+ use=ncr260vt100an, -+ncr160vt100pp|NCR 2900_160 vt100 with PC+ kybd, -+ use=ncr260vt100pp, -+ncr160vt100wan|NCR 2900_160 vt100 wide mode ansi kybd, -+ use=ncr260vt100wan, -+ncr160vt100wpp|NCR 2900_160 vt100 wide mode pc+ kybd, -+ use=ncr260vt100wpp, -+ncr160vt200an|NCR 2900_160 vt200 with ansi kybd, -+ use=ncr260vt200an, -+ncr160vt200pp|NCR 2900_160 vt200 with pc+ kybd, -+ use=ncr260vt200pp, -+ncr160vt200wan|NCR 2900_160 vt200 wide mode ansi kybd, -+ use=ncr260vt200wan, -+ncr160vt200wpp|NCR 2900_160 vt200 wide mode pc+ kybd, -+ use=ncr260vt200wpp, -+ncr160vt300an|NCR 2900_160 vt300 with ansi kybd, -+ use=ncr260vt300an, -+ncr160vt300pp|NCR 2900_160 vt300 with pc+ kybd, -+ use=ncr260vt300pp, -+ncr160vt300wan|NCR 2900_160 vt300 wide mode ansi kybd, -+ use=ncr260vt300wan, -+ncr160vt300wpp|NCR 2900_160 vt300 wide mode pc+ kybd, -+ use=ncr260vt300wpp, -+ncr160wy50+pp|NCR 2900_160 wyse 50+, -+ use=ncr260wy50+pp, -+ncr160wy50+wpp|NCR 2900_160 wyse 50+ wide mode, -+ use=ncr260wy50+wpp, -+ncr160wy60pp|NCR 2900_160 wyse 60, -+ use=ncr260wy60pp, -+ncr160wy60wpp|NCR 2900_160 wyse 60 wide mode, -+ use=ncr260wy60wpp, -+ncrvt100an|ncrvt100pp|NCR vt100 for the 2900 terminal, -+ am, hs, mc5i, mir, msgr, xon, -+ cols#80, it#8, lines#24, nlab#32, -+ acsc=``aaffgghhiijjkkllmmnnqqttuuvvwwxxyyzz~~, -+ bel=^G, blink=\E[5m$<30>, bold=\E[1m$<30>, -+ clear=\E[2J\E[1;1H$<300>, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr$<100>, cub=\E[%p1%dD$<30>, -+ cub1=\E[D$<2>, cud=\E[%p1%dB$<30>, cud1=\E[B$<2>, -+ cuf=\E[%p1%dC$<30>, cuf1=\E[C$<2>, -+ cup=\E[%i%p1%d;%p2%dH$<100>, cuu=\E[%p1%dA$<30>, -+ cuu1=\E[A$<2>, dch=\E[%p1%dP$<40>, dch1=\E[1P$<10>, -+ dl=\E[%p1%dM$<70>, dl1=\E[M$<40>, dsl=\E[31l$<25>, -+ ed=\E[0J$<300>, el=\E[0K$<30>, el1=\E[1K$<30>, -+ enacs=\E(B\E)0$<40>, fsl=1$<10>, home=\E[H$<2>$<80>, -+ ht=^I, hts=\EH, il=\E[%p1%dL$<80>, il1=\E[B\E[L$<80>, -+ ind=\ED, -+ is2=\E[12h\E[?10l\E%/0n\E[P\031\E[?3l\E(B\E)0$<200>, -+ kLFT=\E[D, kRIT=\E[C, ka1=\E[H, kbs=^H, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kent=^M, kf1=\EOP, -+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, mc0=\E[i$<100>, nel=\EE, -+ rc=\E8, rev=\E[7m$<30>, ri=\EM$<50>, rmacs=\017$<90>, -+ rmir=\E[4l$<80>, rmso=\E[0m$<30>, rmul=\E[0m$<30>, -+ rs2=\Ec\E[12;31h\E[?3;4;5;10l\E[?6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031$<200>, -+ sc=\E7, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<100>, -+ sgr0=\017\E[0m$<120>, smacs=\016$<90>, smir=\E[4h$<80>, -+ smso=\E[7m$<30>, smul=\E[4m$<30>, tbc=\E[3g$<40>, -+ tsl=\E[>+1$<70>, -+ncrvt100wan|NCRVT100WPP|ncrvt100wpp|NCR VT100 emulation of the 2900 terminal, -+ cols#132, -+ is2=\E[12h\E[?10l\E%/0n\E[P\031\E[?3h\E(B\E)0$<200>, -+ rs2=\Ec\E[12;31h\E[?4;5;10l\E?3;6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031$<200>, -+ use=ncrvt100an, - # --# * By default, version 51 uses UTF-8 encoding with broken altcharset --# support, so "ASCII" (-7) entries without altcharset support were --# added. -+# Vendor-supplied NCR termcaps end here - --# nsterm - AppKit Terminal.app --# --# Apple's Mac OS X includes a Terminal.app derived from the old NeXT --# Terminal.app. It is a partial VT100 emulation with some xterm-like --# extensions. This terminfo was written to describe versions 41 --# (shipped with Mac OS X version 10.0) and 51 (shipped with Mac OS X --# version 10.1) of Terminal.app. --# --# Terminal.app runs under the Mac OS X Quartz windowing system (and --# other AppKit-supported windowing systems.) On the Mac OS X machine I --# use, the executable for Terminal.app is: --# /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal --# --# If you're looking for a description of the full-screen system --# console which runs under Apple's Darwin operating system on PowerPC --# platforms, see the "xnuppc" entry instead. --# --# There were no function keys in version 41. In version 51, there are --# four working function keys (F1, F2, F3 and F4.) The function keys --# are included in all of these entries. --# --# It does not support mouse pointer position reporting. Under some --# circumstances the cursor can be positioned using option-click; this --# works by comparing the cursor position and the selected position, --# and simulating enough cursor-key presses to move the cursor to the --# selected position. This technique fails in all but the simplest --# applications. --# --# It provides partial ANSI color support (background colors interacted --# badly with bold in version 41, though, as reflected in :ncv:.) The --# monochrome (-m) entries are useful if you've disabled color support --# or use a monochrome monitor. The full color (-c) entries are useful --# in version 51, which doesn't exhibit the background color bug. They --# also enable an xterm-compatible 16-color mode. --# --# The configurable titlebar is set using xterm-compatible sequences; --# it is used as a status bar in the statusline (-s) entries. Its width --# depends on font sizes and window sizes, but 50 characters seems to --# be the default for an 80x24 window. -+# NCR7900 DIP switches: - # --# The MacRoman character encoding is used for some of the alternate --# characters in the "MacRoman" entries; the "ASCII" (-7) entries --# disable alternate character set support entirely, and the "VT100" --# (-acs) entries rely instead on Terminal.app's own buggy VT100 --# graphics emulation, which seems to think the character encoding is --# the old NeXT charset instead of MacRoman. The "ASCII" (-7) entries --# are useful in Terminal.app version 51, which supports UTF-8 and --# other ASCII-compatible character encodings but does not correctly --# implement VT100 graphics; once VT100 graphics are correctly --# implemented in Terminal.app, the "VT100" (-acs) entries should be --# usable in any ASCII-compatible character encoding [except perhaps --# in UTF-8, where some experts argue for disallowing alternate --# characters entirely.] -+# Switch A: -+# 1-4 - Baud Rate -+# 5 - Parity (Odd/Even) -+# 6 - Don't Send or Do Send Spaces -+# 7 - Parity Enable -+# 8 - Stop Bits (One/Two) - # --# Terminal.app reports "vt100" as the terminal type, but exports --# several environment variables which may aid detection in a shell --# profile (i.e. .profile or .login): -+# Switch B: -+# 1 - Upper/Lower Shift -+# 2 - Typewriter Shift -+# 3 - Half Duplex / Full Duplex -+# 4 - Light/Dark Background -+# 5-6 - Carriage Return Without / With Line Feed -+# 7 - Extended Mode -+# 8 - Suppress Keyboard Display - # --# TERM=vt100 --# TERM_PROGRAM=Apple_Terminal --# TERM_PROGRAM_VERSION=41 # in Terminal.app version 41 --# TERM_PROGRAM_VERSION=51 # in Terminal.app version 51 -+# Switch C: -+# 1 - End of line entry disabled/enabled -+# 2 - Conversational mode / (Local?) Mode -+# 3 - Control characters displayed / not displayed -+# 4 - (2-wire?) / 4-wire communications -+# 5 - RTS on and off for each character -+# 6 - (50Hz?) / 60 Hz -+# 7 - Exit after level zero diagnostics -+# 8 - RS-232 interface - # --# For example, the following Bourne shell script would detect the --# correct terminal type: -+# Switch D: -+# 1 - Reverse Channel (yes / no) -+# 2 - Manual answer (no / yes) -+# 3-4 - Cursor appearance -+# 5 - Communication Rate -+# 6 - Enable / Disable EXT turnoff -+# 7 - Enable / Disable CR turnoff -+# 8 - Enable / Disable backspace - # --# if [ :"$TERM" = :"vt100" -a :"$TERM_PROGRAM" = :"Apple_Terminal" ] --# then --# export TERM --# if [ :"$TERM_PROGRAM_VERSION" = :41 ] --# then --# TERM="nsterm-old" --# else --# TERM="nsterm-c-7" --# fi --# fi -+# Since each attribute parameter is 0 or 1, we shift each attribute (standout, -+# reverse, blink, dim, and underline) the appropriate number of bits (by -+# multiplying the 0 or 1 by a correct factor to shift) so the bias character, -+# '@' is (effectively) "or"ed with each attribute to generate the proper third -+# character in the <ESC>0 sequence. The <sgr> string implements the following -+# equation: - # --# In a C shell derivative, this would be accomplished by: -+# ((((('@' + P5) | (P4 << 1)) | (P3 << 3)) | (P2 << 4)) | (p1 * 17)) => -+# ((((('@' + P5) + (P4 << 1)) + (P3 << 3)) + (P2 << 4)) + (p1 * 17)) - # --# if ( $?TERM && $?TERM_PROGRAM && $?TERM_PROGRAM_VERSION) then --# if ( :"$TERM" == :"vt100" && :"$TERM_PROGRAM" == :"Apple_Terminal" ) then --# if ( :"$TERM_PROGRAM_VERSION" == :41 ) then --# setenv TERM "nsterm-old" --# else --# setenv TERM "nsterm-c-7" --# endif --# endif --# endif -- --# The '+' entries are building blocks --nsterm+7|AppKit Terminal.app v41+ basic capabilities w/ASCII charset, -- am, bw, msgr, xenl, xon, -- cols#80, it#8, lines#24, -- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M, -- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, -- home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, -- invis=\E[8m, kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, -- kcuu1=\EOA, kent=\EOM, rc=\E8, rev=\E[7m, ri=\EM, -- rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m, -- sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, use=vt100+enq, use=vt100+pfkeys, -- --nsterm+acs|AppKit Terminal.app v41+ basic capabilities w/VT100 alternate-charset, -- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -- enacs=\E(B\E)0, rmacs=^O, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, use=nsterm+7, -- --nsterm+mac|AppKit Terminal.app v41+ basic capabilities w/MacRoman alternate-charset, -- acsc=+\335\,\334-\366.\3770#`\327a\:f\241g\261h#i\360jjkkllmmnno\370p\370q\321rrssttuuvvwwxxy\262z\263{\271|\255}\243~\245, -- enacs=\E(B\E)0, rmacs=^O, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, -- sgr0=\E[m\017, smacs=^N, use=nsterm+7, -- --nsterm+s|AppKit Terminal.app v41+ status-line (window titlebar) support, -- hs, -- wsl#50, -- dsl=\E]2;\007, fsl=^G, tsl=\E]2;, -- --nsterm+c|AppKit Terminal.app v51+ full color support (including 16 colors), -- op=\E[0m, use=ibm+16color, -- --nsterm+c41|AppKit Terminal.app v41 color support, -- colors#8, ncv#37, pairs#64, -- op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- --# These are different combinations of the building blocks -- --# ASCII charset (-7) --nsterm-m-7|nsterm-7-m|AppKit Terminal.app v41+ w/ASCII charset (monochrome), -- use=nsterm+7, -- --nsterm-m-s-7|nsterm-7-m-s|AppKit Terminal.app v41+ w/ASCII charset (monochrome w/statusline), -- use=nsterm+s, use=nsterm+7, -- --nsterm-7|AppKit Terminal.app v41+ w/ASCII charset (color), -- use=nsterm+c41, use=nsterm+7, -- --nsterm-7-c|nsterm-c-7|AppKit Terminal.app v51+ w/ASCII charset (full color), -- use=nsterm+c, use=nsterm+7, -- --nsterm-s-7|nsterm-7-s|AppKit Terminal.app v41+ w/ASCII charset (color w/statusline), -- use=nsterm+s, use=nsterm+c41, use=nsterm+7, -- --nsterm-c-s-7|nsterm-7-c-s|AppKit Terminal.app v51+ w/ASCII charset (full color w/statusline), -- use=nsterm+s, use=nsterm+c, use=nsterm+7, -- --# VT100 alternate-charset (-acs) --nsterm-m-acs|nsterm-acs-m|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome), -- use=nsterm+acs, -- --nsterm-m-s-acs|nsterm-acs-m-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome w/statusline), -- use=nsterm+s, use=nsterm+acs, -- --nsterm-acs|AppKit Terminal.app v41+ w/VT100 alternate-charset (color), -- use=nsterm+c41, use=nsterm+acs, -+# Where: P1 <==> Standout attribute parameter -+# P2 <==> Underline attribute parameter -+# P3 <==> Reverse attribute parameter -+# P4 <==> Blink attribute parameter -+# P5 <==> Dim attribute parameter -+# From <root@goliath.un.atlantaga.NCR.COM>, init string hacked by SCO. -+ncr7900i|ncr7900|ncr 7900 model 1, -+ am, bw, ul, -+ cols#80, lines#24, xmc#1, -+ bel=^G, blink=\E0B, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^F, -+ cup=\E1%p2%c%p1%c, cuu1=^Z, dim=\E0A, ed=\Ek, el=\EK, ind=^J, -+ is2=\E0@\010\E3\E4\E7, kcub1=^U, kcud1=^J, kcuf1=^F, -+ kcuu1=^Z, khome=^A, ll=^A, mc4=^T, mc5=^R, rev=\E0P, rmso=\E0@, -+ rmul=\E0@, -+ sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c, -+ sgr0=\E0@, smso=\E0Q, smul=\E0`, -+ncr7900iv|ncr 7900 model 4, -+ am, bw, eslok, hs, -+ cols#80, lines#24, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, -+ cup=\013%p1%{64}%+%c\E\005%p2%02d, dl1=\E^O, dsl=\Ey1, -+ fsl=\Ek\Ey5, home=\013@\E^E00, il1=\E^N, ind=^J, kbs=^H, -+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf1=\ES, kf2=\ET, -+ kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, -+ khome=\EH, lf6=blue, lf7=red, lf8=white, nel=^M^J, -+ tsl=\Ej\Ex5\Ex1\EY8%p1%{32}%+%c\Eo, -+# Warning: This terminal will lock out the keyboard when it receives a CTRL-D. -+# The user can enter a CTRL-B to get out of this locked state. -+# In <hpa>, we want to output the character given by the formula: -+# ((col / 10) * 16) + (col % 10) where "col" is "p1" -+ncr7901|ncr 7901 model, -+ am, bw, ul, -+ cols#80, lines#24, -+ bel=^G, blink=\E0B, civis=^W, clear=^L, cnorm=^X, cr=^M, -+ cub1=^H, cud1=^J, cuf1=^F, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dim=\E0A, -+ ed=\Ek, el=\EK, -+ hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%c, ind=^J, -+ is2=\E4^O, kclr=^L, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, -+ khome=^H, ll=^A, mc4=^T, mc5=^R, rev=\E0P, rmso=^O, rmul=^O, -+ sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c\016, -+ sgr0=^O, smso=\E0Q\016, smul=\E0`\016, -+ vpa=\013%p1%{64}%+%c, - --nsterm-c-acs|nsterm-acs-c|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color), -- use=nsterm+c, use=nsterm+acs, -+# Newbury Data Recording Limited (Newbury Data) -+# -+# Have been manufacturing and reselling various peripherals for a long time -+# They don't make terminals anymore, but are still in business (in 2007). -+# Their e-mail address is at ndsales@newburydata.co.uk -+# and their post address is: -+# -+# Newbury Data Recording Ltd, -+# Premier Park, Road One, -+# Winsford, Cheshire, CW7 3PT -+# -+# Their technical support is still good, they sent me for free a printed copy -+# of the 9500 user manual and I got it just 1 week after I first contacted them -+# (in 2005)! - --nsterm-s-acs|nsterm-acs-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (color w/statusline), -- use=nsterm+s, use=nsterm+c41, use=nsterm+acs, -+# NDR 9500 -+# Manufactured in the early/mid eighties, behaves almost the same as a -+# Televideo 950. Take a 950, change its cabinet for a more 80s-ish one (but -+# keep the same keyboard layout), add an optional 25-line mode, replace the DIP -+# switches with a menu and remove the "lock line" feature (ESC ! 1 and ESC ! -+# 2), here is the NDR 9500. Even the line-lock, albeit disabled, is -+# recognized: if you type in "ESC !", the next (third) character is not -+# echoed, showing that the terminal was actually waiting for a parameter! -+ndr9500|nd9500|Newbury Data 9500, -+ am, bw, hs, mc5i, mir, msgr, ul, xon, -+ cols#80, lines#24, wsl#79, -+ acsc=jDkClBmAnIqKtMuLvOwNxJ, bel=^G, cbt=\EI, civis=\E.0, -+ clear=\E;, cnorm=\E.1, cr=^M, cub1=^H, cud1=^V, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW, -+ dim=\E), dl1=\ER, dsl=\Eh, ed=\EY, el=\ET, -+ flash=\Eb$<50/>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1, -+ ich1=\EQ, il1=\EE, ind=^J, is2=\Ew\E'\EDF\El\Er\EO, -+ kDC=\Er, kDL=\EO, kEOL=\Et, kIC=\Eq, kcbt=\EI, kclr=^Z, -+ kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, -+ ked=\EY, kel=\ET, kent=^M, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, -+ kf12=^A`\r, kf13=^Aa\r, kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r, -+ kf17=^Ae\r, kf18=^Af\r, kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r, -+ kf21=^Ai\r, kf22=^Aj\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, -+ kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, -+ kich1=\EQ, kil1=\EE, kprt=\EP, mc4=\Ea, mc5=\E`, nel=^_, -+ pfloc=\E|%{48}%p1%+%c2%p2\031, -+ pfx=\E|%{48}%p1%+%c1%p2\031, prot=\E), ri=\Ej, -+ rmacs=\E%%, rmir=\Er, rmso=\E(, rmxon=^N, -+ sgr=\EG0\E%%%%\E(%?%p1%p5%p8%|%|%t\E)%;%?%p9%t\E$%;, -+ sgr0=\EG0\E%%\E(, smacs=\E$, smir=\Eq, smso=\E), smxon=^O, -+ tbc=\E3, tsl=\Eg\Ef\011%p1%{32}%+%c, .kbs=^H, - --nsterm-c-s-acs|nsterm-acs-c-s|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color w/statusline), -- use=nsterm+s, use=nsterm+c, use=nsterm+acs, -+ndr9500-nl|NDR 9500 with no status line, -+ hs@, -+ wsl@, -+ dsl@, fsl@, tsl@, use=ndr9500, - --# MacRoman charset --nsterm-m|AppKit Terminal.app v41+ w/MacRoman charset (monochrome), -- use=nsterm+mac, -+ndr9500-25|NDR 9500 with 25th line enabled, -+ lines#25, use=ndr9500, - --nsterm-m-s|AppKit Terminal.app v41+ w/MacRoman charset (monochrome w/statusline), -- use=nsterm+s, use=nsterm+mac, -+ndr9500-25-nl|NDR 9500 with 25 lines and no status line, -+ lines#25, use=ndr9500-nl, - --nsterm-old|AppKit Terminal.app v41+ w/MacRoman charset (color), -- use=nsterm+c41, use=nsterm+mac, -+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, -+ 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, -+ sgr0=\EG0\E%%\E(, smso=\EG4, smul=\EG8, use=ndr9500, - --nsterm-c|AppKit Terminal.app v51+ w/MacRoman charset (full color), -- use=nsterm+c, use=nsterm+mac, -+ndr9500-25-mc|NDR 500 with 25 lines and magic cookies, -+ lines#25, use=ndr9500-mc, - --nsterm-s|AppKit Terminal.app v41+ w/MacRoman charset (color w/statusline), -- use=nsterm+s, use=nsterm+c41, use=nsterm+mac, -+ndr9500-mc-nl|NDR 9500 with magic cookies and no status line, -+ hs@, -+ wsl@, -+ dsl@, fsl@, tsl@, use=ndr9500-mc, - --nsterm-c-s|AppKit Terminal.app v51+ w/MacRoman charset (full color w/statusline), -- use=nsterm+s, use=nsterm+c, use=nsterm+mac, -+ndr9500-25-mc-nl|NDR 9500 with 25 lines and magic cookies and no status line, -+ lines#25, use=ndr9500-mc-nl, - --# In Mac OS X version 10.5 the format of the preferences has changed --# and a new, more complex technique is needed, e.g., -+#### Perkin-Elmer (Owl) - # --# python -c 'import sys,objc;NSUserDefaults=objc.lookUpClass( --# "NSUserDefaults");ud=NSUserDefaults.alloc(); --# ud.init();prefs=ud.persistentDomainForName_( --# "com.apple.Terminal");prefs["Window Settings"][ --# prefs["Default Window Settings"]]["TerminalType" --# ]=sys.argv[1];ud.setPersistentDomain_forName_(prefs, --# "com.apple.Terminal")' nsterm-16color -+# These are official terminfo entries from within Perkin-Elmer. - # --# and it is still not settable from the preferences dialog. This is --# tracked under rdar://problem/7365108 and rdar://problem/7365134 --# in Apple's bug reporter. --nsterm-16color|AppKit Terminal.app v240.2+ with Mac OS X version 10.5, -- bw@, mir, npc, -- civis=\E[?25l, cnorm=\E[?25h, dch=\E[%p1%dP, dch1=\E[P, -- flash=\E[?5h$<200/>\E[?5l, hpa=\E[%i%p1%dG, -- ich=\E[%p1%d@, ich1=\E[@, kdch1=\E[3~, kend=\E[F, -- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, -- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf17=\E[31~, -- kf18=\E[22~, kf19=\E[33~, kf20=\E[34~, kf5=\E[15~, -- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H, -- knp=\E[6~, kpp=\E[5~, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, -- smcup=\E7\E[?47h, smir=\E[4h, vpa=\E[%i%p1%dd, -- use=nsterm-c-s-acs, - --# The versions of Terminal.app in Mac OS X version 10.3.x seem to have --# the background color erase bug. The newer version 240.2 in Mac OS X --# version 10.5 does not. -+bantam|pe550|pe6100|perkin elmer 550, -+ OTbs, -+ cols#80, lines#24, -+ bel=^G, clear=\EK$<20>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, -+ el=\EI$<20>, home=\EH, ind=^J, ll=\EH\EA, -+fox|pe1100|perkin elmer 1100, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=\EH\EJ$<132>, cr=^M, cub1=^H, cud1=^J, -+ cuf1=\EC, cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, -+ ed=\EJ$<5.5*>, el=\EI, flash=\020\002$<200/>\020\003, -+ home=\EH, hts=\E1, ind=^J, ll=\EH\EA, tbc=\E3, -+owl|pe1200|perkin elmer 1200, -+ OTbs, am, in, -+ cols#80, lines#24, -+ bel=^G, clear=\EH\EJ$<132>, cr=^M, cub1=^H, cud1=^J, -+ cuf1=\EC, cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, -+ dch1=\EO$<5.5*>, dl1=\EM$<5.5*>, ed=\EJ$<5.5*>, -+ el=\EI$<5.5>, flash=\020\002$<200/>\020\003, home=\EH, -+ hts=\E1, ich1=\EN, il1=\EL$<5.5*>, ind=^J, ip=$<5.5*>, -+ kbs=^H, kf0=\ERJ, kf1=\ERA, kf2=\ERB, kf3=\ERC, kf4=\ERD, -+ kf5=\ERE, kf6=\ERF, kf7=\ERG, kf8=\ERH, kf9=\ERI, ll=\EH\EA, -+ rmso=\E!\0, sgr0=\E!\0, smso=\E!^H, tbc=\E3, -+pe1251|pe6300|pe6312|perkin elmer 1251, -+ am, -+ cols#80, it#8, lines#24, pb#300, vt#8, xmc#1, -+ bel=^G, clear=\EK$<332>, cr=^M, cub1=\ED, cud1=\EB, cuf1=\EC, -+ cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA, -+ ed=\EJ$<20*>, el=\EI$<10*>, home=\EH, hts=\E1, ind=^J, -+ kf0=\ERA, kf1=\ERB, kf10=\ERK, kf2=\ERC, kf3=\ERD, kf4=\ERE, -+ kf5=\ERF, kf6=\ERG, kf7=\ERH, kf8=\ERI, kf9=\ERJ, tbc=\E3, -+# (pe7000m: this had -+# rmul=\E!\0, smul=\E!\040, -+# which is probably wrong, it collides with kf0 -+pe7000m|perkin elmer 7000 series monochrome monitor, -+ am, -+ cols#80, lines#24, -+ bel=^G, cbt=\E!Y, clear=\EK, cr=^M, cub1=\ED, cud1=\EB, -+ cuf1=\EC, cup=\ES%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, -+ ed=\EJ, el=\EI, home=\EH, ind=^J, -+ is1=\E!\0\EW 7o\Egf\ES7\s, kbs=^H, kcub1=\E!V, -+ kcud1=\E!U, kcuf1=\E!W, kcuu1=\E!T, kf0=\E!\0, kf1=\E!^A, -+ kf10=\E!^J, kf2=\E!^B, kf3=\E!^C, kf4=\E!^D, kf5=\E!^E, -+ kf6=\E!^F, kf7=\E!^G, kf8=\E!^H, kf9=\E!^I, khome=\E!S, -+ ll=\ES7\s, ri=\ER, -+pe7000c|perkin elmer 7000 series colour monitor, -+ is1=\E!\0\EW 7o\Egf\Eb0\Ec7\ES7\s, rmso=\Eb0, -+ rmul=\E!\0, smso=\Eb2, smul=\E!\s, use=pe7000m, -+ -+#### Sperry Univac - # --# This entry is based on newsgroup comments by Alain Bench, Christian Ebert, --# and D P Schreber comparing to nsterm-c-s-acs. -+# Sperry Univac has merged with Burroughs to form Unisys. - # --# In Mac OS X version 10.4 and earlier, D P Schreber notes that $TERM --# can be set in Terminal.app, e.g., -+ -+# This entry is for the Sperry UTS30 terminal running the TTY -+# utility under control of CP/M Plus 1R1. The functionality -+# provided is comparable to the DEC vt100. -+# (uts30: I added <rmam>/<smam> based on the init string -- esr) -+uts30|sperry uts30 with cp/m@1R1, -+ am, bw, hs, -+ cols#80, lines#24, wsl#40, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\ER, clear=^L, -+ cnorm=\ES, cr=^M, csr=\EU%p1%{32}%+%c%p2%{32}%+%c, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\EM, -+ dl=\E[%p1%dM, dl1=\EL, ed=\E[J, el=\E[K, fsl=^M, home=\E[H, -+ ht=^I, ich=\E[%p1%d@, ich1=\EO, il=\E[%p1%dL, il1=\EN, -+ ind=^J, indn=\E[%p1%dB, is2=\E[U 7\E[24;1H, kbs=^H, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, khome=\E[H, -+ rc=\EX, rev=\E[7m, rf=/usr/share/tabset/vt100, ri=\EI, -+ rin=\E[%p1%dA, rmacs=\Ed, rmam=\E[?7l, rmso=\E[m, -+ rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -+ sc=\EW, sgr0=\E[m, smacs=\EF, smam=\E[?7m, smso=\E[7m, -+ smul=\E[4m, tsl=\E], uc=\EPB, -+ -+#### Tandem - # --# defaults write com.apple.Terminal TermCapString nsterm-bce -+# Tandem builds these things for use with its line of fault-tolerant -+# transaction-processing computers. They aren't generally available -+# on the merchant market, and so are fairly uncommon. - # --# and that it is not set in Terminal's preferences dialog. --nsterm-bce|AppKit Terminal.app v71+/v100.1.8+ with Mac OS X version 10.3/10.4 (bce), -- bce, bw, use=nsterm-16color, - --# This is an alias which should always point to the "current" version --nsterm|Apple_Terminal|AppKit Terminal.app, -- use=nsterm-16color, -+tandem6510|adm3a repackaged by Tandem, -+ use=adm3a, - --# iTerm.app from http://iterm.sourceforge.net/ is an alternative (and --# more featureful) terminal emulator for Mac OS X. It is similar --# enough in capabilities to nsterm-16color that I have derived this --# description from that one, but as far as I know they share no code. --# Many of the features are user-configurable, but I attempt only to --# describe the default configuration. --# --# NOTE: When tack tests (csr) + (nel) iTerm.app crashes, so (csr) is --# disabled. --iTerm.app|iTerm.app terminal emulator for Mac OS X, -- bce, bw@, ccc@, -- csr@, initc@, kend=\EOF, khome=\EOH, use=xterm+256color, -- use=nsterm-16color, -+# A funny series of terminal that TANDEM uses. The actual model numbers -+# have a fourth digit after 653 that designates minor variants. These are -+# natively block-mode and rather ugly, but they have a character mode which -+# this doubtless(?) exploits. There is a 6520 that is slightly dumber. -+# (tandem653: had ":sb=\ES:", probably someone's mistake for sf; also, -+# removed <if=/usr/share/tabset/tandem653>, no such file -- esr) -+tandem653|t653x|Tandem 653x multipage terminal, -+ OTbs, am, da, db, hs, -+ cols#80, lines#24, wsl#64, xmc#1, -+ clear=\EI, cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\023%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dsl=\Eo\r, -+ ed=\EJ, el=\EK, fsl=^M, home=\EH, ind=\ES, ri=\ET, rmso=\E6\s, -+ rmul=\E6\s, sgr0=\E6\s, smso=\E6$, smul=\E60, tsl=\Eo, - --# xnuppc - Darwin PowerPC Console (a.k.a. "darwin") -+#### Tandy/Radio Shack - # --# On PowerPC platforms, Apple's Darwin operating system uses a --# full-screen system console derived from a NetBSD framebuffer --# console. It is an ANSI-style terminal, and is not really VT-100 --# compatible. -+# Tandy has a line of VDTs distinct from its microcomputers. - # --# Under Mac OS X, this is the system console driver used while in --# single-user mode [reachable by holding down Command-S during the --# boot process] and when logged in using console mode [reachable by --# typing ">console" at the graphical login prompt.] -+ -+dmterm|deskmate terminal, -+ am, bw, -+ cols#80, lines#24, -+ bel=^G, civis=\EG5, clear=\Ej, cnorm=\EG6, cr=^M, cub1=^H, -+ cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -+ cuu1=\EA, dch1=\ES, dl1=\ER, ed=\EJ, el=\EK, home=\EH, ht=^I, -+ ich1=\EQ, il1=\EP, ind=\EX, invis@, kcub1=\ED, kcud1=\EB, -+ kcuf1=\EC, kcuu1=\EA, kf0=\E1, kf1=\E2, kf2=\E3, kf3=\E4, -+ kf4=\E5, kf5=\E6, kf6=\E7, kf7=\E8, kf8=\E9, kf9=\E0, -+ khome=\EH, lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, -+ lf6=f7, lf7=f8, lf8=f9, lf9=f10, ll=\EE, rmul@, smul@, -+ use=adm+sgr, -+dt100|dt-100|Tandy DT-100 terminal, -+ xon, -+ cols#80, lines#24, xmc#1, -+ acsc=jjkkllmmnnqqttuuvvwwxx, bel=^G, civis=\E[?25l, -+ clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%p1%2d;%p2%2dr, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\010\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, -+ dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@, -+ il1=\E[L, ind=^J, is2=\E[?3l\E)0\E(B, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\E[?3i, -+ kf10=\E[?5i, kf2=\E[2i, kf3=\E[@, kf4=\E[M, kf5=\E[17~, -+ kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, khome=\E[H, -+ knp=\E[29~, kpp=\E[28~, lf1=f1, lf2=f2, lf3=f3, lf4=f4, lf5=f5, -+ lf6=f6, lf7=f7, lf8=f8, ri=\EM, rmacs=^O, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, smacs=^N, smso=\E[7m, smul=\E[4m, -+dt100w|dt-100w|Tandy DT-100 terminal (wide mode), -+ cols#132, use=dt100, -+dt110|Tandy DT-110 emulating ansi, -+ xon, -+ cols#80, lines#24, -+ acsc=jjkkllmmnnqqttuuvvwwxx, bel=^G, civis=\E[?25l, -+ clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\010\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[0P, -+ dl1=\E[0M, ed=\E[0J, el=\E[0K, enacs=\E(B\E)0, home=\E[H, -+ ht=^I, ich1=\E[0@, il1=\E[0L, ind=^J, is2=\E[?3l\E)0\E(B, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[K, -+ kf1=\E[1~, kf10=\E[10~, kf2=\E[2~, kf3=\E[3~, kf4=\E[4~, -+ kf5=\E[5~, kf6=\E[6~, kf7=\E[7~, kf8=\E[8~, kf9=\E[9~, -+ khome=\E[G, kich1=\E[@, knp=\E[26~, kpp=\E[25~, lf0=f1, -+ lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, lf8=f9, -+ lf9=f10, ri=\EM, rmacs=^O, rmso=\E[m, rmul=\E[m, sgr0=\E[m, -+ smacs=^N, smso=\E[7m, smul=\E[4m, -+pt210|TRS-80 PT-210 printing terminal, -+ hc, os, -+ cols#80, -+ bel=^G, cr=^M, cud1=^J, ind=^J, -+ -+#### Tektronix (tek) - # --# If you're looking for a description of the Terminal.app terminal --# emulator which runs under the Mac OS X Quartz windowing system (and --# other AppKit-supported windowing systems,) see the "nsterm" --# entry instead. -+# Tektronix tubes are graphics terminals. Most of them use modified -+# oscilloscope technology incorporating a long-persistence green phosphor, -+# and support vector graphics on a main screen with an attached "dialogue -+# area" for interactive text. -+# -+ -+tek|tek4012|tektronix 4012, -+ OTbs, os, -+ cols#75, lines#35, -+ bel=^G, clear=\E\014$<1000>, cr=^M, cub1=^H, cud1=^J, -+ ff=\014$<1000>, is2=\E^O, -+# (tek4013: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) -+tek4013|tektronix 4013, -+ acsc=, rmacs=\E^O, smacs=\E^N, use=tek4012, -+tek4014|tektronix 4014, -+ cols#81, lines#38, -+ is2=\E\017\E9, use=tek4012, -+# (tek4015: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) -+tek4015|tektronix 4015, -+ acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014, -+tek4014-sm|tektronix 4014 in small font, -+ cols#121, lines#58, -+ is2=\E\017\E\:, use=tek4014, -+# (tek4015-sm: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr) -+tek4015-sm|tektronix 4015 in small font, -+ acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014-sm, -+# Tektronix 4023 from Andrew Klossner <orca!andrew.tektronix@csnet-relay> - # --# NOTE: Under Mac OS X version 10.1, the default login window does not --# prompt for user name, instead requiring an icon to be selected from --# a list of known users. Since the special ">console" login is not in --# this list, you must make one of two changes in the Login Window --# panel of the Login section of System Prefs to make the special --# ">console" login accessible. The first option is to enable 'Show --# "Other User" in list for network users', which will add a special --# "Other..." icon to the graphical login panel. Selecting "Other..." --# will present the regular graphical login prompt. The second option --# is to change the 'Display Login Window as:' setting to 'Name and --# password entry fields', which replaces the login panel with a --# graphical login prompt. -+# You need to have "stty nl2" in effect. Some versions of tset(1) know -+# how to set it for you. - # --# There are no function keys, at least not in Darwin 1.3. -+# It's got the Magic Cookie problem around stand-out mode. If you can't -+# live with Magic Cookie, remove the :so: and :se: fields and do without -+# reverse video. If you like reverse video stand-out mode but don't want -+# it to flash, change the letter 'H' to 'P' in the :so: field. -+tek4023|tektronix 4023, -+ OTbs, am, -+ OTdN#4, cols#80, lines#24, vt#4, xmc#1, -+ OTnl=^J, bel=^G, clear=\E\014$<4/>, cr=^M, cub1=^H, cud1=^J, -+ cuf1=^I, cup=\034%p2%{32}%+%c%p1%{32}%+%c, kbs=^H, -+ rmso=^_@, smso=^_P, -+# It is recommended that you run the 4025 at 4800 baud or less; -+# various bugs in the terminal appear at 9600. It wedges at the -+# bottom of memory (try "cat /usr/dict/words"); ^S and ^Q typed -+# on keyboard don't work. You have to hit BREAK twice to get -+# one break at any speed - this is a documented feature. -+# Can't use cursor motion because it's memory relative, and -+# because it only works in the workspace, not the monitor. -+# Same for home. Likewise, standout only works in the workspace. - # --# It has no mouse support. -+# <el> was commented out since vi and rogue seem to work better -+# simulating it with lots of spaces! - # --# It has full ANSI color support, and color combines correctly with --# all three supported attributes: bold, inverse-video and underline. --# However, bold colored text is almost unreadable (bolding is --# accomplished using shifting and or-ing, and looks smeared) so bold --# has been excluded from the list of color-compatible attributes --# [using (ncv)]. The monochrome entry (-m) is useful if you use a --# monochrome monitor. -+# <il1> and <il> had 145ms of padding, but that slowed down vi's ^U -+# and didn't seem necessary. - # --# There is one serious bug with this terminal emulation's color --# support: repositioning the cursor onto a cell with non-matching --# colors obliterates that cell's contents, replacing it with a blank --# and displaying a colored cursor in the "current" colors. There is --# no complete workaround at present [other than using the monochrome --# (-m) entries,] but removing the (msgr) capability seemed to help. -+tek4024|tek4025|tek4027|tektronix 4024/4025/4027, -+ OTbs, am, da, db, -+ cols#80, it#8, lines#34, lm#0, -+ bel=^G, clear=\037era\r\n\n, cmdch=^_, cr=^M, -+ cub=\037lef %p1%d\r, cub1=^H, cud=\037dow %p1%d\r, -+ cud1=^F^J, cuf=\037rig %p1%d\r, cuf1=\037rig\r, -+ cuu=\037up %p1%d\r, cuu1=^K, dch1=\037dch\r, -+ dl=\037dli %p1%d\r\006, dl1=\037dli\r\006, -+ ed=\037dli 50\r, ht=^I, ich1=\037ich\r \010, -+ il=\037up\r\037ili %p1%d\r, il1=\037up\r\037ili\r, -+ ind=^F^J, -+ is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r, -+ rmkx=\037lea p2\r\037lea p4\r\037lea p6\r\037lea p8\r\037lea f5\r, -+ smkx=\037lea p4 /h/\r\037lea p8 /k/\r\037lea p6 / /\r\037lea p2 /j/\r\037lea f5 /H/\r, -+tek4025-17|tek 4025 17 line window, -+ lines#17, use=tek4025, -+tek4025-17-ws|tek 4025 17 line window in workspace, -+ is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r\037wor 17\r\037mon 17\r, -+ rmcup=\037mon h\r, rmso=\037att s\r, smcup=\037wor h\r, -+ smso=\037att e\r, use=tek4025-17, -+tek4025-ex|tek4027-ex|tek 4025/4027 w/!, -+ is2=\037com 33\r\n!sto 9 17 25 33 41 49 57 65 73\r, -+ rmcup=\037com 33\r, smcup=!com 31\r, use=tek4025, -+# Tektronix 4025a -+# From: Doug Gwyn <gwyn@brl-smoke.ARPA> -+# The following status modes are assumed for normal operation (replace the -+# initial "!" by whatever the current command character is): -+# !COM 29 # NOTE: changes command character to GS (^]) -+# ^]DUP -+# ^]ECH R -+# ^]EOL -+# ^]RSS T -+# ^]SNO N -+# ^]STO 9 17 25 33 41 49 57 65 73 -+# Other modes may be set according to communication requirements. -+# If the command character is inadvertently changed, termcap can't restore it. -+# Insert-character cannot be made to work on both top and bottom rows. -+# Clear-to-end-of-display emulation via !DLI 988 is too grotty to use, alas. -+# There also seems to be a problem with vertical motion, perhaps involving -+# delete/insert-line, following a typed carriage return. This terminal sucks. -+# Delays not specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! -+# (tek4025a: removed obsolete ":xx:". This may mean the tek4025a entry won't -+# work any more. -- esr) -+tek4025a|Tektronix 4025A, -+ OTbs, OTpt, am, bw, da, db, xon, -+ cols#80, it#8, lines#34, -+ bel=^G, cbt=\035bac;, clear=\035era;\n\035rup;, cmdch=^], -+ cr=^M, cub=\035lef %p1%d;, cub1=^H, cud=\035dow %p1%d;, -+ cud1=^J, cuf=\035rig %p1%d;, cuf1=\035rig;, -+ cuu=\035up %p1%d;, cuu1=^K, dch=\035dch %p1%d;, -+ dch1=\035dch;, dl=\035dli %p1%d;, dl1=\035dli;, -+ el=\035dch 80;, hpa=\r\035rig %p1%d;, ht=^I, -+ il1=\013\035ili;, ind=^J, indn=\035dow %p1%d;, -+ rs2=!com 29\035del 0\035rss t\035buf\035buf n\035cle\035dis\035dup\035ech r\035eol\035era g\035for n\035pad 203\035pad 209\035sno n\035sto 9 17 25 33 41 49 57 65 73\035wor 0;, -+ tbc=\035sto;, -+# From: cbosg!teklabs!davem Wed Sep 16 21:11:41 1981 -+# Here's the command file that I use to get rogue to work on the 4025. -+# It should work with any program using the old curses (e.g. it better -+# not try to scroll, or cursor addressing won't work. Also, you can't -+# see the cursor.) -+# (This "learns" the arrow keys for rogue. I have adapted it for termcap - mrh) -+tek4025-cr|tek 4025 for curses and rogue, -+ OTbs, am, -+ cols#80, it#8, lines#33, -+ clear=\037era;, cub1=^H, cud1=^F^J, cuf1=\037rig;, -+ cup=\037jum%i%p1%d\,%p2%d;, cuu1=^K, ht=^I, ind=^F^J, -+ is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r, -+ rmcup=\037wor 0, smcup=\037wor 33h, -+# next two lines commented out since curses only allows 128 chars, sigh. -+# :ti=\037lea p1/b/\037lea p2/j/\037lea p3/n/\037lea p4/h/\037lea p5/ /\037lea p6/l/\037lea p7/y/\037lea p8/k/\037lea p9/u/\037lea p./f/\037lea pt/`era w/13\037lea p0/s/\037wor 33h:\ -+# :te=\037lea p1\037lea p2\037lea p3\037lea p4\037lea pt\037lea p5\037lea p6\037lea p7\037lea p8\037lea p9/la/13\037lea p.\037lea p0\037wor 0: -+tek4025ex|4025ex|4027ex|tek 4025 w/!, -+ is2=\037com 33\r\n!sto 9\,17\,25\,33\,41\,49\,57\,65\,73\r, -+ rmcup=\037com 33\r, smcup=!com 31\r, use=tek4025, -+tek4105|tektronix 4105, -+ OTbs, am, mir, msgr, ul, xenl, xt, -+ cols#79, it#8, lines#29, -+ acsc=, bel=^G, blink=\E[=3;<7m, bold=\E[=7;<4m, cbt=\E[Z, -+ clear=\E[2J\E[H, cr=^M, cub1=\E[1D, cud1=\E[1B, cuf1=\E[1C, -+ cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[1A, dch1=\E[1P, -+ dim=\E[=1;<6m, dl1=\E[1M, ed=\E[J, el=\E[K, home=\E[H, ht=^I, -+ il1=\E[1L, ind=\E[S, invis=\E[=6;<5, is1=\E%!1\E[m, -+ is2=\E%!1\E[?6141\E[m, kbs=^H, kcub1=\E[1D, kcud1=\E[1B, -+ kcuf1=\E[1C, kcuu1=\E[1A, rev=\E[=1;<3m, ri=\E[T, -+ rmacs=\E[m, rmcup=, rmir=\E[4l, rmso=\E[=0;<1m, -+ rmul=\E[=0;<1m, sgr0=\E[=0;<1m, smacs=\E[1m, -+ smcup=\E%!1\E[?6l\E[2J, smir=\E[4h, smso=\E[=2;<3m, -+ smul=\E[=5;<2m, tbc=\E[1g, -+ -+# (tek4105-30: I added <rmam>/<smam> based on the init string -- esr) -+tek4105-30|4015 emulating 30 line vt100, -+ am, mir, msgr, xenl, xon, -+ cols#80, it#8, lines#30, vt#3, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, -+ clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C$<2>, -+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA, -+ cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>, -+ enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8, -+ rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l, -+ rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>, -+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7, -+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>, -+ 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=vt100+fnkeys, -+ -+# Tektronix 4105 from BRL -+# The following setup modes are assumed for normal operation: -+# CODE ansi CRLF no DABUFFER 141 -+# DAENABLE yes DALINES 30 DAMODE replace -+# DAVISIBILITY yes ECHO no EDITMARGINS 1 30 -+# FLAGGING input INSERTREPLACE replace LFCR no -+# ORIGINMODE relative PROMPTMODE no SELECTCHARSET G0 B -+# SELECTCHARSET G1 0 TABS -2 -+# Other setup modes may be set for operator convenience or communication -+# requirements; I recommend -+# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes -+# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0 -+# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU> -+# GAMODE overstrike GCURSOR 0 100 0 GSPEED 10 1 -+# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>" -+# PROMPTSTRING '' QUEUESIZE 2460 WINDOW 0 0 4095 3132 -+# XMTDELAY 0 -+# and factory color maps. After setting these modes, save them with NVSAVE. No -+# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! -+# "IC" cannot be used in combination with "im" & "ei". -+# "tek4105a" is just a guess: -+tek4105a|Tektronix 4105, -+ OTbs, OTpt, msgr, xon, -+ OTkn#8, cols#80, it#8, lines#30, vt#3, -+ acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -+ civis=\E%!0\ETD00\E%!1, clear=\E[H\E[J, -+ cnorm=\E%!0\ETD10\E%!1, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\EM, cvvis=\E%!0\ETD70\E%!1, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, is2=\E%!1, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EOP, kf5=\EOQ, -+ kf6=\EOR, kf7=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, -+ lf5=F6, lf6=F8, ll=\E[30;H, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, -+ rin=\E[%p1%dT, rmacs=^O, rmcup=\E%!0\ELBH=\E%!1, -+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -+ rs2=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLA>\ELM0\EKE0\ENF1\EKS0\END0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>, -+ sc=\E7, sgr0=\E[m, smacs=^N, smcup=\E[?6l, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ - # --# The "standout" chosen was simple reverse-video, although a colorful --# standout might be more aesthetically pleasing. Similarly, the bold --# chosen is the terminal's own smeared bold, although a simple --# color-change might be more readable. The color-bold (-b) entries --# uses magenta colored text for bolding instead. The fancy color (-f --# and -f2) entries use color for bold, standout and underlined text --# (underlined text is still underlined, though.) -+# Tektronix 4106/4107/4109 from BRL -+# The following setup modes are assumed for normal operation: -+# CODE ansi COLUMNMODE 80 CRLF no -+# DABUFFER 141 DAENABLE yes DALINES 32 -+# DAMODE replace DAVISIBILITY yes ECHO no -+# EDITMARGINS 1 32 FLAGGING input INSERTREPLACE replace -+# LFCR no LOCKKEYBOARD no ORIGINMODE relative -+# PROMPTMODE no SELECTCHARSET G0 B SELECTCHARSET G1 0 -+# TABS -2 -+# Other setup modes may be set for operator convenience or communication -+# requirements; I recommend -+# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes -+# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0 -+# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU> -+# GAMODE overstrike GCURSOR 0 100 0 GSPEED 9 3 -+# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>" -+# PROMPTSTRING '' QUEUESIZE 2620 WINDOW 0 0 4095 3132 -+# XMTDELAY 0 -+# and factory color maps. After setting these modes, save them with NVSAVE. No -+# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control! -+# "IC" cannot be used in combination with "im" & "ei". -+tek4106brl|tek4107brl|tek4109brl|Tektronix 4106 4107 or 4109, -+ msgr, xon, -+ cols#80, it#8, lines#32, vt#3, -+ acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, -+ civis=\E%!0\ETD00\E%!1, clear=\E[H\E[J, -+ cnorm=\E%!0\ETD10\E%!1, cr=^M, csr=\E[%i%p1%d;%p2%dr, -+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\EM, cvvis=\E%!0\ETD70\E%!1, -+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, -+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH, -+ il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, is2=\E%!1, -+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, -+ kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EOP, kf5=\EOQ, -+ kf6=\EOR, kf7=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, -+ lf5=F6, lf6=F8, ll=\E[32;H, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, -+ rin=\E[%p1%dT, rmacs=^O, rmcup=\E%!0\ELBH=\E%!1, -+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -+ rs1=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLB0\ELM0\EKE0\ENF1\EKS0\END0\ERE0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>, -+ sc=\E7, sgr0=\E[m, smacs=^N, smcup=\E[?6l, smir=\E[4h, -+ smkx=\E[?1h\E=, smso=\E[7;42m, smul=\E[4m, tbc=\E[3g, -+ -+# Tektronix 4107/4109 interpret 4 modes using "\E%!" followed by a code: -+# 0 selects Tek mode, i.e., \E%!0 -+# 1 selects ANSI mode -+# 2 selects ANSI edit-mode -+# 3 selects VT52 mode - # --# Apparently the terminal emulator does support a VT-100-style --# alternate character set, but all the alternate character set --# positions have been left blank in the font. For this reason, no --# alternate character set capabilities have been included in this --# description. The console driver appears to be ASCII-only, so (enacs) --# has been excluded [although the VT-100 sequence does work.] -+# One odd thing about the description (which has been unchanged since the 90s) -+# is that the cursor addressing is using VT52 mode, and a few others use the -+# VT52's non-CSI versions of ANSI, e.g., \EJ. -+tek4107|tek4109|tektronix terminals 4107 4109, -+ OTbs, am, mir, msgr, ul, xenl, xt, -+ cols#79, it#8, lines#29, -+ bel=^G, blink=\E%!1\E[5m$<2>\E%!0, -+ bold=\E%!1\E[1m$<2>\E%!0, clear=\ELZ, cnorm=\E%!0, cr=^M, -+ cub1=^H, cud1=^J, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\E%!3, -+ dim=\E%!1\E[<0m$<2>\E%!0, ed=\EJ, el=\EK, ht=^I, ind=^J, -+ kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -+ rev=\E%!1\E[7m$<2>\E%!0, ri=\EI, -+ rmso=\E%!1\E[m$<2>\E%!0, rmul=\E%!1\E[m$<2>\E%!0, -+ sgr=\E%%!1\E[%?%p1%t;7;5%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t<0%;%?%p6%t;1%;m$<2>\E%%!0, -+ sgr0=\E%!1\E[m$<2>\E%!0, smso=\E%!1\E[7;5m$<2>\E%!0, -+ smul=\E%!1\E[4m$<2>\E%!0, -+# Tektronix 4207 with sysline. In the ancestral termcap file this was 4107-s; -+# see the note attached to tek4207. -+tek4207-s|Tektronix 4207 with sysline but no memory, -+ eslok, hs, -+ dsl=\E7\E[?6l\E[2K\E[?6h\E8, fsl=\E[?6h\E8, -+ is1=\E%!1\E[2;32r\E[132D\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J, -+ is2=\E7\E[?6l\E[2K\E[?6h\E8, -+ tsl=\E7\E[?6l\E[2K\E[;%i%df, use=tek4107, -+ -+# The 4110 series may be a wonderful graphics series, but they make the 4025 -+# look good for screen editing. In the dialog area, you can't move the cursor -+# off the bottom line. Out of the dialog area, ^K moves it up, but there -+# is no way to scroll. - # --# The default Mac OS X and Darwin installation reports "vt100" as the --# terminal type, and exports no helpful environment variables. To fix --# this, change the "console" entry in /etc/ttys from "vt100" to --# "xnuppc-WxH", where W and H are the character dimensions of your --# console (see below.) -+# Note that there is a floppy for free from Tek that makes the -+# 4112 emulate the vt52 (use the vt52 termcap). There is also -+# an expected enhancement that will use ANSI standard sequences. - # --# The font used by the terminal emulator is apparently one originally --# drawn by Ka-Ping Yee, and uses 8x16-pixel characters. This --# file includes descriptions for the following geometries: -+# 4112 in non-dialog area pretending to scroll. It really wraps -+# but vi is said to work (more or less) in this mode. - # --# Pixels Characters Entry Name (append -m for monochrome) --# ------------------------------------------------------------------- --# 640x400 80x25 xnuppc-80x25 --# 640x480 80x30 xnuppc-80x30 --# 720x480 90x30 xnuppc-90x30 --# 800x600 100x37 xnuppc-100x37 --# 896x600 112x37 xnuppc-112x37 --# 1024x640 128x40 xnuppc-128x40 --# 1024x768 128x48 xnuppc-128x48 --# 1152x768 144x48 xnuppc-144x48 --# 1280x1024 160x64 xnuppc-160x64 --# 1600x1024 200x64 xnuppc-200x64 --# 1600x1200 200x75 xnuppc-200x75 --# 2048x1536 256x96 xnuppc-256x96 -+# 'vi' works reasonably well with this entry. - # --# The basic "xnuppc" entry includes no size information, and the --# emulator includes no reporting capability, so you'll be at the mercy --# of the TTY device (which reports incorrectly on my hardware.) The --# color-bold entries do not include size information. -- --# The '+' entries are building blocks --xnuppc+basic|Darwin PowerPC Console basic capabilities, -- am, bce, mir, xenl, -- it#8, -- bold=\E[1m, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr, -- cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, -+otek4112|o4112-nd|otek4113|otek4114|old tektronix 4110 series, -+ am, -+ cols#80, lines#34, -+ bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuu1=^K, ind=^J, -+ rmcup=\EKA1\ELV1, smcup=\EKA0\ELV0\EMG0, -+# The 4112 with the ANSI compatibility enhancement -+tek4112|tek4114|tektronix 4110 series, -+ OTbs, am, db, -+ cols#80, lines#34, -+ cbt=\E[Z, clear=\E[2J\E[0;0H, cub1=^H, cud1=\E[B, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\EM, dch1=\E[P, -+ dl1=\E[M, ed=\E[0J, el=\E[0K, ich1=\E[@, il1=\E[L, -+ ind=\E7\E[0;0H\E[M\E8, is2=\E3!1, ri=\E7\E[0;0H\E[L\E8, -+ rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m, -+tek4112-nd|4112 not in dialog area, -+ OTns, -+ cuu1=^K, use=tek4112, -+tek4112-5|4112 in 5 line dialog area, -+ lines#5, use=tek4112, -+# (tek4113: this used to have "<cuf1=\LM1\s\LM0>", someone's mistake; -+# removed "<smacs=\E^N>, <rmacs=\E^O>", which had been commented out in 8.3. -+# Note, the !0 and !1 sequences in <rmcup>/<smcup>/<cnorm>/<civis> were -+# previously \0410 and \0411 sequences...I don't *think* they were supposed -+# to be 4-digit octal -- esr) -+tek4113|tektronix 4113 color graphics with 5 line dialog area, -+ OTbs, am, da, eo, -+ cols#80, lines#5, -+ clear=\ELZ, cub1=^H, cud1=^J, cuf1=\ELM1 \ELM0, -+ flash=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0, -+ is2=\EKA1\ELL5\ELV0\ELV1, uc=\010\ELM1_\ELM0, -+tek4113-34|tektronix 4113 color graphics with 34 line dialog area, -+ lines#34, -+ is2=\EKA1\ELLB2\ELV0\ELV1, use=tek4113, -+# :ns: left off to allow vi visual mode. APL font (:as=\E^N:/:ae=\E^O:) not -+# supported here. :uc: is slow, but looks nice. Suggest setenv MORE -up . -+# :vb: needs enough delay to let you see the background color being toggled. -+tek4113-nd|tektronix 4113 color graphics with no dialog area, -+ OTbs, am, eo, -+ cols#80, it#8, lines#34, -+ clear=\E^L, cub1=^H, cud1=^J, cuf1=^I, cuu1=^K, -+ cvvis=\ELZ\EKA0, -+ flash=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0, -+ home=\ELF7l\177 @, ht=^I, is2=\ELZ\EKA0\ELF7l\177 @, -+ ll=\ELF hl @, rmso=\EMT1, smso=\EMT2, uc=\010\EMG1_\EMG0, -+# This entry is from Tek. Inc. (Brian Biehl) -+# (tek4115: :bc: renamed to :le:, <rmam>/<smam> added based on init string -- esr) -+otek4115|Tektronix 4115, -+ OTbs, am, da, db, eo, -+ cols#80, it#8, lines#34, -+ cbt=\E[Z, clear=\E[H\E[2J, -+ cnorm=\E%!0\ELBG8\E%!1\E[34;1H, cub1=\E[D, cud1=\E[B, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, -+ cvvis=\E%!0\ELBB2\E%!1, dch1=\E[P, dl1=\E[M, ed=\E[J, -+ el=\E[K, home=\E[H, ht=^I, if=/usr/share/tabset/vt100, -+ il1=\E[L, -+ is2=\E%!0\E%\014\ELV0\EKA1\ELBB2\ENU@=\ELLB2\ELM0\ELV1\EKYA?\E%!1\E[<1l\E[?7h\E[?8h\E[34;1H\E[34B\E[m, -+ kbs=^H, ri=\EM, rmam=\E[?7l, -+ rmcup=\E%!0\ELBG8\E%!1\E[34;1H\E[J, rmir=\E[4l, -+ rmkx=\E>, rmso=\E[m, rmul=\E[m, sgr0=\E[m, smam=\E[?7h, -+ smcup=\E%!0\ELBB2\E%!1, smir=\E[4h, smkx=\E=, smso=\E[7m, -+ smul=\E[4m, -+tek4115|newer tektronix 4115 entry with more ANSI capabilities, -+ am, xon, -+ cols#80, lines#34, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J, -+ cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J, - cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -- cuu=\E[%p1%dA, cuu1=\E[A, dsl=\E]2;\007, ed=\E[J, el=\E[K, -- el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=\177, -- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8, -- rev=\E[7m, ri=\EM, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, -- rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -- sc=\E7, -- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, -- sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, use=vt100+keypad, -- --xnuppc+c|Darwin PowerPC Console ANSI color support, -- colors#8, ncv#32, pairs#64, -- op=\E[37;40m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, -- --xnuppc+b|Darwin PowerPC Console color-bold support, -- ncv#32, -- bold=\E[35m, -- sgr=\E[0%?%p6%t;35%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m, -- use=xnuppc+basic, -- --xnuppc+f|Darwin PowerPC Console fancy color support, -- ncv#35, -- sgr=\E[0%?%p6%t;35%;%?%p2%t;36;4%;%?%p1%t;33;44%;%?%p3%t;7%;m, -- smso=\E[33;44m, smul=\E[36;4m, use=xnuppc+b, -- --xnuppc+f2|Darwin PowerPC Console alternate fancy color support, -- ncv#35, -- bold=\E[33m, -- sgr=\E[0%?%p6%t;33%;%?%p2%t;34%;%?%p1%t;31;47%;%?%p3%t;7%;m, -- smso=\E[31;47m, smul=\E[34m, use=xnuppc+basic, -- --# Building blocks for specific screen sizes --xnuppc+80x25|Darwin PowerPC Console 80x25 support (640x400 pixels), -- cols#80, lines#25, -- --xnuppc+80x30|Darwin PowerPC Console 80x30 support (640x480 pixels), -- cols#80, lines#30, -- --xnuppc+90x30|Darwin PowerPC Console 90x30 support (720x480 pixels), -- cols#90, lines#30, -- --xnuppc+100x37|Darwin PowerPC Console 100x37 support (800x600 pixels), -- cols#100, lines#37, -- --xnuppc+112x37|Darwin PowerPC Console 112x37 support (896x600 pixels), -- cols#112, lines#37, -- --xnuppc+128x40|Darwin PowerPC Console 128x40 support (1024x640 pixels), -- cols#128, lines#40, -- --xnuppc+128x48|Darwin PowerPC Console 128x48 support (1024x768 pixels), -- cols#128, lines#48, -- --xnuppc+144x48|Darwin PowerPC Console 144x48 support (1152x768 pixels), -- cols#144, lines#48, -- --xnuppc+160x64|Darwin PowerPC Console 160x64 support (1280x1024 pixels), -- cols#160, lines#64, -- --xnuppc+200x64|Darwin PowerPC Console 200x64 support (1600x1024 pixels), -- cols#200, lines#64, -- --xnuppc+200x75|Darwin PowerPC Console 200x75 support (1600x1200 pixels), -- cols#200, lines#75, -- --xnuppc+256x96|Darwin PowerPC Console 256x96 support (2048x1536 pixels), -- cols#256, lines#96, -- --# These are different combinations of the building blocks -- --xnuppc-m|darwin-m|Darwin PowerPC Console (monochrome), -- use=xnuppc+basic, -- --xnuppc|darwin|Darwin PowerPC Console (color), -- use=xnuppc+c, use=xnuppc+basic, -- --xnuppc-m-b|darwin-m-b|Darwin PowerPC Console (monochrome w/color-bold), -- use=xnuppc+b, -- --xnuppc-b|darwin-b|Darwin PowerPC Console (color w/color-bold), -- use=xnuppc+b, use=xnuppc+c, -- --xnuppc-m-f|darwin-m-f|Darwin PowerPC Console (fancy monochrome), -- use=xnuppc+f, -- --xnuppc-f|darwin-f|Darwin PowerPC Console (fancy color), -- use=xnuppc+f, use=xnuppc+c, -- --xnuppc-m-f2|darwin-m-f2|Darwin PowerPC Console (alternate fancy monochrome), -- use=xnuppc+f2, -- --xnuppc-f2|darwin-f2|Darwin PowerPC Console (alternate fancy color), -- use=xnuppc+f2, use=xnuppc+c, -- --# Combinations for specific screen sizes --xnuppc-80x25-m|darwin-80x25-m|Darwin PowerPC Console (monochrome) 80x25, -- use=xnuppc+80x25, use=xnuppc+basic, -- --xnuppc-80x25|darwin-80x25|Darwin PowerPC Console (color) 80x25, -- use=xnuppc+c, use=xnuppc+80x25, use=xnuppc+basic, -- --xnuppc-80x30-m|darwin-80x30-m|Darwin PowerPC Console (monochrome) 80x30, -- use=xnuppc+80x30, use=xnuppc+basic, -- --xnuppc-80x30|darwin-80x30|Darwin PowerPC Console (color) 80x30, -- use=xnuppc+c, use=xnuppc+80x30, use=xnuppc+basic, -+ cuu=\E[%p1%dA, cuu1=\E[A, dch1=\E[P, dl=\E[%p1%dM, -+ dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, hpa=\E[%p1%{1}%+%dG, -+ ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, -+ il1=\E[L, ind=^J, invis=\E[8m, kbs=^H, kcub1=\E[D, -+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, -+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, rmam=\E[?7l, -+ rmso=\E[m, rmul=\E[m, -+ sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m, -+ sgr0=\E[m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ vpa=\E[%p1%{1}%+%dd, -+# The tek4125 emulates a vt100 incorrectly - the scrolling region -+# command is ignored. The following entry replaces <csr> with the needed -+# <il>, <il>, and <smir>; removes some cursor pad commands that the tek4125 -+# chokes on; and adds a lot of initialization for the tek dialog area. -+# Note that this entry uses all 34 lines and sets the cursor color to green. -+# Steve Jacobson 8/85 -+# (tek4125: there were two "\!"s in the is that I replaced with "\E!"; -+# commented out, <smir>=\E1 because there's no <rmir> -- esr) -+tek4125|tektronix 4125, -+ lines#34, -+ csr@, dl1=\E[1M, il1=\E[1L, -+ is2=\E%\E!0\EQD1\EUX03\EKA\ELBB2\ELCE0\ELI100\ELJ2\ELLB2\ELM0\ELS1\ELX00\ELV1\E%\E!1\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, -+ rc@, sc@, smkx=\E=, use=vt100, - --xnuppc-90x30-m|darwin-90x30-m|Darwin PowerPC Console (monochrome) 90x30, -- use=xnuppc+90x30, use=xnuppc+basic, -+# From: <jcoker@ucbic> -+# (tek4207: This was the termcap file's entry for the 4107/4207, but SCO -+# supplied another, less capable 4107 entry. So we'll use that for 4107 and -+# note that if jcoker wasn't confused you may be able to use this one. -+# I merged in <msgr>,<ind>,<ri>,<invis>,<tbc> from a BRL entry -- esr) -+tek4207|Tektronix 4207 graphics terminal with memory, -+ am, bw, mir, msgr, ul, xenl, -+ cols#80, it#8, lines#32, -+ blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J$<156/>, -+ cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu1=\EM, dch1=\E[P$<4/>, dl1=\E[M$<3/>, ed=\E[J, -+ el=\E[K$<5/>, home=\E[H, ht=^I, ich1=\E[@$<4/>, -+ il1=\E[L$<3/>, ind=\E[S, invis=\E[=6;<5, -+ is2=\E%!0\ELBP0\E%!1\E[H\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J, -+ kcub1=\E[D, kcud1=\ED, kcuf1=\E[C, kcuu1=\EM, khome=\E[H, -+ rev=\E[7m, ri=\E[T, -+ rmcup=\E[?6h\E%!0\ELBP0\E%!1\E[32;1f, rmso=\E[m, -+ rmul=\E[m, sgr0=\E[m, smcup=\E[?6l\E[H\E[J, smso=\E[7m, -+ smul=\E[4m, tbc=\E[1g, - --xnuppc-90x30|darwin-90x30|Darwin PowerPC Console (color) 90x30, -- use=xnuppc+c, use=xnuppc+90x30, use=xnuppc+basic, -+# From: <carolyn@dali.berkeley.edu> Thu Oct 31 12:54:27 1985 -+# (tek4404: There was a "\!" in <smcup> that I replaced with "\E!". -+# Tab had been given as \E2I,that must be the tab-set capability -- esr) -+tek4404|tektronix 4404, -+ OTbs, -+ cols#80, it#8, lines#32, -+ blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, -+ csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[1M, -+ ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\E[2I, il1=\E[1L, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, rc=\E8, -+ rmcup=\E[1;1H\E[0J\E[?6h\E[?1l, rmir=\E[4l, -+ rmkx=\E[?1h, rmso=\E[27m, rmul=\E[m, sc=\E7, sgr0=\E[m, -+ smcup=\E%\E!1\E[1;32r\E[?6l\E>, smir=\E[4h, -+ smkx=\E[?1l, smso=\E[7m, smul=\E[4m, -+# Some unknown person wrote: -+# I added the is string - straight Unix has ESC ; in the login -+# string which sets a ct8500 into monitor mode (aka 4025 snoopy -+# mode). The is string here cleans up a few things (but not -+# everything). -+ct8500|tektronix ct8500, -+ am, bw, da, db, -+ cols#80, lines#25, -+ bel=^G, cbt=\E^I, clear=\E^E, cr=^M, cub1=^H, cud1=^J, -+ cuf1=\ES, cup=\E|%p1%{32}%+%c%p2%{32}%+%c, cuu1=\ER, -+ dch1=\E^], dl1=\E^M, ed=\E^U, el=\E^T, ht=^I, ich1=\E^\, -+ il1=\E^L, ind=^J, is2=\037\EZ\Ek, ri=\E^A, rmso=\E\s, -+ rmul=\E\s, sgr0=\E\s, smso=\E$, smul=\E!, - --xnuppc-100x37-m|darwin-100x37-m|Darwin PowerPC Console (monochrome) 100x37, -- use=xnuppc+100x37, use=xnuppc+basic, -+# Tektronix 4205 terminal. -+# -+# am is not defined because the wrap around occurs not when the char. -+# is placed in the 80'th column, but when we are attempting to type -+# the 81'st character on the line. (esr: hmm, this is like the vt100 -+# version of xenl, perhaps am + xenl would work!) -+# -+# Bold, dim, and standout are simulated by colors and thus not allowed -+# with colors. The tektronix color table is mapped into the RGB color -+# table by setf/setb. All colors are reset to factory specifications by oc. -+# The <initc> cap uses RGB notation to define colors. for arguments 1-3 the -+# interval (0-1000) is broken into 8 smaller sub-intervals (125). Each sub- -+# interval then maps into pre-defined value. -+tek4205|tektronix 4205, -+ ccc, mir, msgr, -+ colors#8, cols#80, it#8, lines#30, ncv#49, pairs#63, -+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[=7;<4m, cbt=\E[Z, -+ clear=\E[2J\E[H, cr=^M, cub=\E[%p1%dD, cub1=\E[D, -+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, -+ dch1=\E[1P, dim=\E[=1;<6m, dl=\E[%p1%dM, dl1=\E[1M, -+ ech=\E%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, -+ home=\E[H, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[1L, -+ ind=\ED, -+ initc=\E%%!0\ETF4%?%p1%{0}%=%t0%e%p1%{1}%=%t4%e%p1%{2}%=%t3%e%p1%{3}%=%t5%e%p1%{4}%=%t2%e%p1%{5}%=%t6%e%p1%{6}%=%t7%e1%;%?%p2%{125}%<%t0%e%p2%{250}%<%tA2%e%p2%{375}%<%tA?%e%p2%{500}%<%tC8%e%p2%{625}%<%tD4%e%p2%{750}%<%tE1%e%p2%{875}%<%tE\:%eF4%;%?%p3%{125}%<%t0%e%p3%{250}%<%tA2%e%p3%{375}%<%tA?%e%p3%{500}%<%tC8%e%p3%{625}%<%tD4%e%p3%{750}%<%tE1%e%p3%{875}%<%tE\:%eF4%;%?%p4%{125}%<%t0%e%p4%{250}%<%tA2%e%p4%{375}%<%tA?%e%p4%{500}%<%tC8%e%p4%{625}%<%tD4%e%p4%{750}%<%tE1%e%p4%{875}%<%tE\:%eF4%;\E%%!1, -+ invis=\E[=6;<5, is1=\E%!0\ETM1\E%!1\E[m, kbs=^H, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\EOA, -+ kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EP, kf5=\EQ, kf6=\ER, -+ kf7=\ES, -+ oc=\E%!0\ETFB000001F4F4F42F40030F404A4C<F450F4F46F40F47F4F40\E%!1, -+ op=\E[39;40m, rev=\E[7m, ri=\EM, rmacs=^O, rmcup=, -+ rmir=\E[4l, rmso=\E[=0;<1m, rmul=\E[24m, -+ setb=\E[=%?%p1%{0}%=%t0m%e%p1%{1}%=%t4m%e%p1%{2}%=%t3m%e%p1%{3}%=%t5m%e%p1%{4}%=%t2m%e%p1%{5}%=%t6m%e%p1%{6}%=%t7m%e1m%;, -+ setf=\E[<%?%p1%{0}%=%t0m%e%p1%{1}%=%t4m%e%p1%{2}%=%t3m%e%p1%{3}%=%t5m%e%p1%{4}%=%t2m%e%p1%{5}%=%t6m%e%p1%{6}%=%t7m%e1m%;, -+ sgr0=\E[=0;<1m\E[24;25;27m\017, smacs=^N, -+ smcup=\E%%!1\E[?6l\E[2J, smir=\E[4h, smso=\E[=2;<3m, -+ smul=\E[4m, tbc=\E[1g, - --xnuppc-100x37|darwin-100x37|Darwin PowerPC Console (color) 100x37, -- use=xnuppc+c, use=xnuppc+100x37, use=xnuppc+basic, -+#### Teletype (tty) -+# -+# These are the hardcopy Teletypes from before AT&T bought the company, -+# clattering electromechanical dinosaurs in Bakelite cases that printed on -+# pulpy yellow roll paper. If you remember these you go back a ways. -+# Teletype-branded VDTs are listed in the AT&T section. -+# -+# The earliest UNIXes were designed to use these clunkers; nroff and a few -+# other programs still default to emitting codes for the Model 37. -+# - --xnuppc-112x37-m|darwin-112x37-m|Darwin PowerPC Console (monochrome) 112x37, -- use=xnuppc+112x37, use=xnuppc+basic, -+tty33|tty35|model 33 or 35 teletype, -+ hc, os, xon, -+ cols#72, -+ bel=^G, cr=^M, cud1=^J, ind=^J, -+tty37|model 37 teletype, -+ OTbs, hc, os, xon, -+ bel=^G, cr=^M, cub1=^H, cud1=^J, cuu1=\E7, hd=\E9, hu=\E8, -+ ind=^J, - --xnuppc-112x37|darwin-112x37|Darwin PowerPC Console (color) 112x37, -- use=xnuppc+c, use=xnuppc+112x37, use=xnuppc+basic, -+# There are known to be at least three flavors of the tty40, all seem more -+# like IBM half duplex forms fillers than ASCII terminals. They have lots of -+# awful braindamage, such as printing a visible newline indicator after each -+# newline. The 40-1 is a half duplex terminal and is hopeless. The 40-2 is -+# braindamaged but has hope and is described here. The 40-4 is a 3270 -+# lookalike and beyond hope. The terminal has visible bell but I don't know -+# it - it's null here to prevent it from showing the BL character. -+# There is an \EG in <nl> because of a bug in old vi (if stty says you have -+# a "newline" style terminal (-crmode) vi figures all it needs is nl -+# to get crlf, even if <cr> is not ^M.) -+# (tty40: removed obsolete ":nl=\EG\EB:", it's just do+cr -- esr) -+tty40|ds40|ds40-2|dataspeed40|teletype dataspeed 40/2, -+ OTbs, xon, -+ cols#80, lines#24, -+ clear=\EH$<20>\EJ$<80>, cr=\EG, cub1=^H, cud1=\EB, -+ cuf1=\EC, cuu1=\E7, dch1=\EP$<50>, dl1=\EM$<50>, -+ ed=\EJ$<75>, home=\EH$<10>, ht=\E@$<10>, hts=\E1, -+ ich1=\E\^$<50>, il1=\EL$<50>, ind=\ES$<20>, kbs=^], -+ kcub1=^H, mc4=^T, mc5=\022$<2000>, ri=\ET$<10>, rmso=\E4, -+ rs2=\023\ER$<60>, smso=\E3, tbc=\EH\E2$<80>, -+tty43|model 43 teletype, -+ OTbs, am, hc, os, xon, -+ cols#132, -+ bel=^G, cr=^M, cub1=^H, cud1=^J, ind=^J, kbs=^H, - --xnuppc-128x40-m|darwin-128x40-m|Darwin PowerPC Console (monochrome) 128x40, -- use=xnuppc+128x40, use=xnuppc+basic, -+#### Tymshare -+# - --xnuppc-128x40|darwin-128x40|Darwin PowerPC Console (color) 128x40, -- use=xnuppc+c, use=xnuppc+128x40, use=xnuppc+basic, -+# You can add <is2=\E<> to put this 40-column mode, though I can't -+# for the life of me think why anyone would want to. -+scanset|sc410|sc415|Tymshare Scan Set, -+ am, bw, msgr, -+ cols#80, lines#24, -+ acsc=j%k4l<m-q\,x5, bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, -+ cud1=^J, cuf1=^I, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, -+ cuu1=^K, ed=\EJ, el=\EK, home=\EH, ind=^J, kcub1=\ED, -+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, mc0=\E;3, mc4=\E;0, -+ mc5=\E;0, rc=^C, rmacs=^O, rs1=\E>, sc=^B, smacs=^N, - --xnuppc-128x48-m|darwin-128x48-m|Darwin PowerPC Console (monochrome) 128x48, -- use=xnuppc+128x48, use=xnuppc+basic, -+#### Volker-Craig (vc) -+# -+# If you saw a Byte Magazine cover with a terminal on it during the early -+# 1980s, it was probably one of these. Carl Helmers liked them because -+# they could crank 19.2 and were cheap (that is, he liked them until he tried -+# to program one...) -+# - --xnuppc-128x48|darwin-128x48|Darwin PowerPC Console (color) 128x48, -- use=xnuppc+c, use=xnuppc+128x48, use=xnuppc+basic, -+# Missing in vc303a and vc303 descriptions: they scroll 2 lines at a time -+# every other linefeed. -+vc303|vc103|vc203|volker-craig 303, -+ OTbs, OTns, am, -+ cols#80, lines#24, -+ bel=^G, clear=\014$<40>, cr=^M, cub1=^H, cud1=^J, cuf1=^I, -+ cuu1=^N, home=\013$<40>, kcub1=^H, kcud1=^J, kcuf1=^I, -+ kcuu1=^N, ll=\017$<1>W, -+vc303a|vc403a|volker-craig 303a, -+ clear=\030$<40>, cuf1=^U, cuu1=^Z, el=\026$<20>, -+ home=\031$<40>, kcuf1=^U, kcuu1=^Z, ll=^P, use=vc303, -+# (vc404: removed obsolete ":ma=^Z^P^U :" -- esr) -+vc404|volker-craig 404, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=\030$<40>, cr=^M, cub1=^H, cud1=^J, cuf1=^U, -+ cup=\020%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, -+ ed=\027$<40>, el=\026$<20>, home=\031$<40>, ind=^J, -+ kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^Z, -+vc404-s|volker-craig 404 w/standout mode, -+ cud1=^J, rmso=^O, smso=^N, use=vc404, -+# From: <wolfgang@cs.sfu.ca> -+# (vc414: merged in cup/dl1/home from an old vc414h-noxon) -+vc414|vc414h|Volker-Craig 414H in sane escape mode., -+ OTbs, am, -+ cols#80, lines#24, -+ clear=\E\034$<40>, cud1=\E^K, cuf1=^P, -+ cup=\E\021%p2%c%p1%c$<40>, cuu1=\E^L, dch1=\E3, -+ dl1=\E\023$<40>, ed=\E^X, el=\E\017$<10/>, home=\E^R, -+ ich1=\E\:, il1=\E\032$<40>, kcub1=^H, kcud1=\E^K, kcuf1=^P, -+ kcuu1=\E^L, kf0=\EA, kf1=\EB, kf2=\EC, kf3=\ED, kf4=\EE, -+ kf5=\EF, kf6=\EG, kf7=\EH, khome=\E^R, lf0=PF1, lf1=PF2, -+ lf2=PF3, lf3=PF4, lf4=PF5, lf5=PF6, lf6=PF7, lf7=PF8, -+ rmso=\E^_, smso=\E^Y, -+vc415|volker-craig 415, -+ clear=^L, use=vc404, - --xnuppc-144x48-m|darwin-144x48-m|Darwin PowerPC Console (monochrome) 144x48, -- use=xnuppc+144x48, use=xnuppc+basic, -+######## OBSOLETE PERSONAL-MICRO CONSOLES AND EMULATIONS -+# - --xnuppc-144x48|darwin-144x48|Darwin PowerPC Console (color) 144x48, -- use=xnuppc+c, use=xnuppc+144x48, use=xnuppc+basic, -+#### IBM PC and clones -+# - --xnuppc-160x64-m|darwin-160x64-m|Darwin PowerPC Console (monochrome) 160x64, -- use=xnuppc+160x64, use=xnuppc+basic, -+# The pcplot IBM-PC terminal emulation program is really messed up. It is -+# supposed to emulate a vt-100, but emulates the wraparound bug incorrectly, -+# doesn't support scrolling regions, ignores add line commands, and ignores -+# delete line commands. Consequently, the resulting behavior looks like a -+# crude adm3a-type terminal. -+# Steve Jacobson 8/85 -+pcplot|pc-plot terminal emulation program, -+ xenl@, -+ csr@, dl@, dl1@, il@, il1@, rc@, sc@, use=vt100, -+# KayPro II from Richard G Turner <rturner at Darcom-Hq.ARPA> -+# I've found that my KayPro II, running MDM730, continues to emulate an -+# ADM-3A terminal, just like I was running TERM.COM. On our 4.2 UNIX -+# system the following termcap entry works well: -+# I have noticed a couple of minor glitches, but nothing I can't work -+# around. (I added two capabilities from the BRL entry -- esr) -+kaypro|kaypro2|kaypro II, -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=\032$<1/>, cr=^M, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\ER, ed=^W, -+ el=^X, home=^^, il1=\EE, ind=^J, kcud1=^J, kcuf1=^L, kcuu1=^K, - --xnuppc-160x64|darwin-160x64|Darwin PowerPC Console (color) 160x64, -- use=xnuppc+c, use=xnuppc+160x64, use=xnuppc+basic, -+# From IBM, Thu May 5 19:35:27 1983 -+# (ibmpc: commented out <smir>=\200R because we don't know <rmir> -- esr) -+ibm-pc|ibm5051|5051|IBM Personal Computer (no ANSI.SYS), -+ OTbs, am, -+ cols#80, lines#24, -+ bel=^G, clear=^L^K, cr=^M^^, cub1=^], cud1=^J, cuf1=^\, -+ cuu1=^^, home=^K, ind=\n$<10>, kcud1=^_, - --xnuppc-200x64-m|darwin-200x64-m|Darwin PowerPC Console (monochrome) 200x64, -- use=xnuppc+200x64, use=xnuppc+basic, -+ibmpc|wy60-PC|wyse60-PC|IBM PC/XT running PC/IX, -+ OTbs, am, bw, eo, hs, km, msgr, ul, -+ cols#80, it#8, lines#24, -+ acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=^M, -+ cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, -+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, -+ cuu=\E[%p1%dA, cuu1=\E[A, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -+ home=\E[H, hpa=\E[%i%p1%dG, ind=\E[S\E[B, -+ indn=\E[%p1%dS\E[%p1%dB, invis=\E[30;40m, kbs=^H, -+ kcbt=^], kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\177, kend=\E[Y, kf1=\240, kf10=\251, kf2=\241, -+ kf3=\242, kf4=\243, kf5=\244, kf6=\245, kf7=\246, kf8=\247, -+ kf9=\250, khome=\E[H, kich1=\E[^H, knp=\E[U, kpp=\E[V, -+ ll=\E[24;1H, nel=^M, rev=\E[7m, ri=\E[T\E[A, -+ rin=\E[%p1%dT\E[%p1%dA, rmso=\E[m, rmul=\E[m, -+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t30;40%;m, -+ sgr0=\E[m, smso=\E[7m, smul=\E[4m, - --xnuppc-200x64|darwin-200x64|Darwin PowerPC Console (color) 200x64, -- use=xnuppc+c, use=xnuppc+200x64, use=xnuppc+basic, -+#### Apple II -+# -+# Apple II firmware console first, then various 80-column cards and -+# terminal emulators. For two cents I'd toss all these in the UFO file -+# along with the 40-column apple entries. -+# - --xnuppc-200x75-m|darwin-200x75-m|Darwin PowerPC Console (monochrome) 200x75, -- use=xnuppc+200x75, use=xnuppc+basic, -+# From: brsmith@umn-cs.cs.umn.edu (Brian R. Smith) via BRL -+# 'it#8' tells UNIX that you have tabs every 8 columns. This is a -+# function of TIC, not the firmware. -+# The clear key on a IIgs will do something like clear-screen, -+# depending on what you're in. -+appleIIgs|appleIIe|appleIIc|Apple 80 column firmware interface, -+ OTbs, am, bw, eo, msgr, -+ cols#80, it#8, lines#24, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^\, -+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -+ home=^Y, ht=^I, ind=^W, kbs=^H, kclr=^X, kcub1=^H, kcud1=^J, -+ kcuf1=^U, kcuu1=^K, kdch1=\177, nel=^M^W, ri=^V, rmso=^N, -+ smso=^O, -+# Apple //e with 80-column card, entry from BRL -+# The modem interface is permitted to discard LF (maybe DC1), otherwise -+# passing characters to the 80-column firmware via COUT (PR#3 assumed). -+# Auto-wrap does not work right due to newline scrolling delay, which also -+# requires that you set "stty cr2". -+# Note: Cursor addressing is only available via the Pascal V1.1 entry, -+# not via the BASIC PR#3 hook. All this nonsense can be avoided only by -+# using a terminal emulation program instead of the built-in firmware. -+apple2e|Apple //e, -+ bw, msgr, -+ cols#80, lines#24, -+ bel=^G, clear=\014$<100/>, cub1=^H, cud1=^J, cuu1=^_, -+ ed=\013$<4*/>, el=\035$<4/>, home=^Y, ht=^I, ind=^W, -+ is2=^R^N, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^K, -+ nel=\r$<100/>, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N, -+ smso=^O, -+# mcvax!vu44!vu45!wilcke uses the "ap" entry together with Ascii Express Pro -+# 4.20, with incoming and outgoing terminals both on 0, emulation On. -+apple2e-p|Apple //e via Pascal, -+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, kbs=^H, kcub1=^H, -+ kcud1=^J, use=apple2e, -+# (ASCII Express) MouseTalk "Standard Apple //" emulation from BRL -+# Enable DC3/DC1 flow control with "stty ixon -ixany". -+apple-ae|ASCII Express, -+ OTbs, am, bw, msgr, nxon, xon, -+ cols#80, it#8, lines#24, -+ bel=\007$<500/>, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^U, -+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -+ home=^Y, ind=^W, is2=^R^N, kclr=^X, kcub1=^H, kcud1=^J, -+ kcuf1=^U, kcuu1=^K, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N, -+ smso=^O, -+appleII|apple ii plus, -+ OTbs, am, -+ cols#80, it#8, lines#24, -+ clear=^L, cnorm=^TC2, cub1=^H, cud1=^J, cuf1=^\, -+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, cvvis=^TC6, -+ ed=^K, el=^], flash=\024G1$<200/>\024T1, home=\E^Y, ht=^I, -+ is2=\024T1\016, kcud1=^J, kcuf1=^U, rmso=^N, sgr0=^N, -+ smso=^O, -+# Originally by Gary Ford 21NOV83 -+# From: <ee178aci%sdcc7@SDCSVAX.ARPA> Fri Oct 11 21:27:00 1985 -+apple-80|apple II with smarterm 80 col, -+ OTbs, am, bw, -+ cols#80, lines#24, -+ cbt=^R, clear=\014$<10*/>, cr=\r$<10*/>, cub1=^H, cud1=^J, -+ cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, -+ ed=\013$<10*/>, el=\035$<10/>, home=^Y, -+apple-soroc|apple emulating soroc 120, -+ am, -+ cols#80, lines#24, -+ bel=^G, clear=\E*$<300>, cr=^M, cub1=^H, cud1=^J, cuf1=^L, -+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EY, el=\ET, -+ home=^^, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, -+# From Peter Harrison, Computer Graphics Lab, San Francisco -+# ucbvax!ucsfmis!harrison .....uucp -+# ucbvax!ucsfmis!harrison@BERKELEY .......ARPA -+# "These two work. If you don't have the inverse video chip for the -+# Apple with videx then remove the :so: and :se: fields." -+# (apple-videx: this used to be called DaleApple -- esr) -+apple-videx|Apple with videx videoterm 80 column board with inverse video, -+ OTbs, am, xenl, -+ cols#80, it#8, lines#24, -+ clear=\014$<300/>, cub1=^H, cud1=^J, cuf1=^\, -+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -+ home=^Y, ht=^I, kcub1=^H, kcud1=^J, kcuf1=^U, khome=^Y, -+ rmso=^Z2, sgr0=^Z2, smso=^Z3, -+# My system [for reference] : Apple ][+, 64K, Ultraterm display card, -+# Apple Cat ][ 212 modem, + more all -+# controlled by ASCII Express: Pro. -+# From Dave Shaver <isucs1!shaver> -+apple-uterm-vb|Videx Ultraterm for Apple micros with Visible Bell, -+ OTbs, am, eo, xt, -+ cols#80, lines#24, -+ acsc=, clear=^L, cuf1=^\, -+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -+ flash=^W35^W06, home=^Y, -+ is2=^V4^W06\017\rVisible Bell Installed.\016\r\n, -+ rmso=^N, smso=^O, -+apple-uterm|Ultraterm for Apple micros, -+ OTbs, am, eo, xt, -+ cols#80, lines#24, -+ acsc=, clear=^L, cuf1=^\, -+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -+ home=^Y, is2=^V4^W06\016, rmso=^N, smso=^O, -+# from trwrba!bwong (Bradley W. Wong): -+# -+# This entry assumes that you are using an apple with the UCSD Pascal -+# language card. SYSTEM.MISCINFO is assumed to be the same as that -+# supplied with the standard apple except that screenwidth should be set -+# using SETUP to 80 columns. Note that the right arrow is not mapped in -+# this termcap entry. This is because that key, on the Apple, transmits -+# a ^U and would thus preempt the more useful "up" function of vi. -+# -+# HMH 2/23/81 -+apple80p|80-column apple with Pascal card, -+ am, bw, -+ cols#80, lines#24, -+ clear=^Y^L, cuf1=^\\:, -+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^], -+ home=^Y, kcub1=^H, -+# -+# Apple II+ equipped with Videx 80 column card -+# -+# Terminfo from ihnp4!ihu1g!djc1 (Dave Christensen) via BRL; -+# manually converted by D A Gwyn -+# -+# DO NOT use any terminal emulation with this data base, it works directly -+# with the Videx card. This has been tested with vi 1200 baud and works fine. -+# -+# This works great for vi, except I've noticed in pre-R2, ^U will scroll back -+# 1 screen, while in R2 ^U doesn't. -+# For inverse alternate character set add: -+# <smacs>=^O:<rmacs>=^N: -+# (apple-v: added it#8 -- esr) -+apple-videx2|Apple II+ w/ Videx card (similar to Datamedia h1520), -+ am, xenl, -+ cols#80, it#8, lines#24, -+ bel=\007$<100/>, clear=\014$<16*/>, cr=^M, cub1=^H, -+ cud1=^J, cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c, -+ cuu1=^_, ed=\013$<16*/>, el=^], home=^Y, ht=\011$<8/>, -+ ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^\, kcuu1=^_, -+ khome=^Y, rmso=^Z2, smso=^Z3, -+apple-videx3|vapple|Apple II with 80 col card, -+ OTbs, am, -+ cols#80, lines#24, -+ clear=\Ev, cub1=\ED, cud1=\EB, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, el=\Ex, -+ home=\EH, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, -+ kf0=\EP, kf1=\EQ, kf2=\ER, kf3=\E\s, kf4=\E!, kf5=\E", kf6=\E#, -+ kf7=\E$, kf8=\E%%, kf9=\E&, khome=\EH, -+#From: decvax!cbosgd!cbdkc1!mww Mike Warren via BRL -+aepro|Apple II+ running ASCII Express Pro--vt52, -+ OTbs, -+ cols#80, lines#24, -+ clear=\014$<300/>, cub1=\ED, cud1=\EB, cuf1=\EC, -+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ, -+ el=\EK, home=\EH, -+# UCSD addition: Yet another termcap from Brian Kantor's Micro Munger Factory -+apple-vm80|ap-vm80|apple with viewmax-80, -+ OTbs, -+ cols#80, lines#24, -+ clear=\014$<300/>, cuf1=^\\:, -+ cup=\036%p1%{32}%+%c%p2%{32}%+%c$<100/>, cuu1=^_, -+ ed=\013$<300/>, el=^], home=\031$<200/>, - --xnuppc-200x75|darwin-200x75|Darwin PowerPC Console (color) 200x75, -- use=xnuppc+c, use=xnuppc+200x75, use=xnuppc+basic, -+#### Apple Lisa & Macintosh -+# - --xnuppc-256x96-m|darwin-256x96-m|Darwin PowerPC Console (monochrome) 256x96, -- use=xnuppc+256x96, use=xnuppc+basic, -+# (lisa: changed <cvvis> to <cnorm> -- esr) -+lisa|apple lisa console display (black on white), -+ OTbs, am, eo, msgr, -+ cols#88, it#8, lines#32, -+ acsc=jdkclfmenbqattuvvuwsx`, civis=\E[5h, clear=^L, -+ cnorm=\E[5l, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -+ ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@, il1=\E[L, -+ is2=\E>\E[m\014, kbs=^H, kcub1=\E[D, kcud1=\E[B, -+ kcuf1=\E[C, kcuu1=\E[A, rmacs=\E[10m, rmso=\E[m, rmul=\E[m, -+ sgr0=\E[m, smacs=\E[11m, smso=\E[7m, smul=\E[4m, -+liswb|apple lisa console display (white on black), -+ is2=\E>\E[0;7m\014, rmso=\E[0;7m, rmul=\E[0;7m, -+ smso=\E[m, smul=\E[4m, use=lisa, - --xnuppc-256x96|darwin-256x96|Darwin PowerPC Console (color) 256x96, -- use=xnuppc+c, use=xnuppc+256x96, use=xnuppc+basic, -+# lisaterm from ulysses!gamma!epsilon!mb2c!jed (John E. Duncan III) via BRL; -+# <is2> revised by Ferd Brundick <fsbrn@BRL.ARPA> -+# -+# These entries assume that the 'Auto Wraparound' is enabled. -+# Xon-Xoff flow control should also be enabled. -+# -+# The vt100 uses :rs2: and :rf: rather than :is2:/:tbc:/:hts: because the tab -+# settings are in non-volatile memory and don't need to be reset upon login. -+# Also setting the number of columns glitches the screen annoyingly. -+# You can type "reset" to get them set. -+# -+lisaterm|Apple Lisa or Lisa/2 running LisaTerm vt100 emulation, -+ OTbs, OTpt, am, xenl, xon, -+ OTkn#4, cols#80, it#8, lines#24, vt#3, -+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=^M, -+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, -+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, -+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, ed=\E[J, -+ el=\E[K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, kcub1=\EOD, -+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOP, kf1=\EOQ, -+ kf2=\EOR, kf3=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, rc=\E8, -+ rev=\E[7m, ri=\EM, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m, -+ rs1=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r, -+ sc=\E7, sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, -+# Lisaterm in 132 column ("wide") mode. -+lisaterm-w|Apple Lisa with Lisaterm in 132 column mode, -+ cols#132, -+ kbs=^H, kcub1=^H, kcud1=^J, use=lisaterm, -+# Although MacTerminal has insert/delete line, it is commented out here -+# since it is much faster and cleaner to use the "lock scrolling region" -+# method of inserting and deleting lines due to the MacTerminal implementation. -+# Also, the "Insert/delete ch" strings have an extra character appended to them -+# due to a bug in MacTerminal V1.1. Blink is disabled since it is not -+# supported by MacTerminal. -+mac|macintosh|Macintosh with MacTerminal, -+ xenl, -+ OTdN#30, -+ blink@, dch1=\E[P$<7/>, ich1=\E[@$<9/>, ip=$<7/>, use=lisa, -+# Lisaterm in 132 column ("wide") mode. -+mac-w|macterminal-w|Apple Macintosh with Macterminal in 132 column mode, -+ cols#132, use=mac, - - #### Radio Shack/Tandy - # -@@ -17752,6 +18059,23 @@ - # See - # http://www.minix3.org/manpages/man4/console.4.html - minix|minix console (v3), -+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376, -+ kdch1=\177, kend=\E[Y, kf0=\E[21~, kf1=\E[11~, kf10=\E[21~, -+ kf11=\E[11;2~, kf12=\E[12;2~, kf13=\E[13;2~, -+ kf14=\E[14;2~, kf15=\E[15;2~, kf16=\E[17;2~, -+ kf17=\E[18;2~, kf18=\E[19;2~, kf19=\E[20;2~, kf2=\E[12~, -+ kf20=\E[21;2~, kf21=\E[11;5~, kf22=\E[12;5~, -+ kf23=\E[13;5~, kf24=\E[14;5~, kf25=\E[15;5~, -+ kf26=\E[17;5~, kf27=\E[18;5~, kf28=\E[19;5~, -+ kf29=\E[20;5~, kf3=\E[13~, kf30=\E[21;5~, kf31=\E[11;6~, -+ kf32=\E[12;6~, kf33=\E[13;6~, kf34=\E[14;6~, -+ kf35=\E[15;6~, kf36=\E[17;6~, kf37=\E[18;6~, -+ kf38=\E[19;6~, kf39=\E[20;6~, kf4=\E[14~, kf40=\E[21;6~, -+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, -+ kich1=\E[@, knp=\E[U, kpp=\E[V, lf0@, lf1@, lf2@, lf3@, lf4@, lf5@, -+ use=minix-3.0, -+ -+minix-3.0|minix console (v3.0), - use=ecma+color, use=minix-1.7, - - # See -@@ -17792,7 +18116,7 @@ - am, use=minix-old, - - pc-minix|minix console on an Intel box, -- use=klone+acs, use=minix, -+ use=klone+acs, use=minix-3.0, - - # According to the Coherent 2.3 manual, the PC console is similar - # to a z19. The differences seem to be (1) 25 lines, (2) no status -@@ -18195,6 +18519,7 @@ - use=tws-generic, - dku7202|BULL Questar 200 DKU7202 (colour/character attributes), - blink=\E[0;2;4m, dim=\E[0;5m, ht=^I, is3=\E[?3h\Eb, -+ sgr=\E[0%?%p1%t;2;4;5;7%;%?%p3%t;7%;%?%p2%t;2%;%?%p4%t;2;4%;%?%p5%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;, - smso=\E[0;4;5;7m, smul=\E[0;2m, use=tws-generic, - - #=========================================================# -@@ -18274,7 +18599,7 @@ - - # This entry covers BQ303, BQ306, BQ310, Q303, Q306, Q310 - bq300|Bull vt320 ISO Latin 1 80 columns terminal, -- am, eo, eslok, hs, km, mc5i, mir, msgr, xenl, xon, -+ am, eo, eslok, hs, km, mir, msgr, xenl, xon, - cols#80, it#8, lines#24, vt#3, wsl#80, - acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, - bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l, -@@ -18298,14 +18623,14 @@ - kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~, - khlp=\E[28~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~, - krdo=\E[29~, kslt=\E[4~, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, -- mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\EE, rc=\E8, rev=\E[7m, -- ri=\EM, rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?7h, rmir=\E[4l, -- rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m, rs1=\E[!p, -- rs2=\E[?3l, s0ds=\E(B, s1ds=\E(0, sc=\E7, -+ nel=\EE, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B, rmam=\E[?7l, -+ rmcup=\E[?7h, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, -+ rmul=\E[24m, rs1=\E[!p, rs2=\E[?3l, s0ds=\E(B, s1ds=\E(0, -+ sc=\E7, - sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;, - sgr0=\E[0m\E(B, smacs=\E(0, smam=\E[?7h, - smcup=\E[?7l\E[?1l\E(B, smir=\E[4h, smso=\E[7m, -- smul=\E[4m, tbc=\E[3g, tsl=\E[1$}\E[2$~, -+ smul=\E[4m, tbc=\E[3g, tsl=\E[1$}\E[2$~, use=ansi+pp, - bq300-rv|Bull vt320 reverse 80 columns, - flash=\E[?5l$<50>\E[?5h, - is2=\E[?2h\E[?3l\E[?5h\E[?7h\E[?8h\E>\E[?1l\E F\E[?42l\E[?4l, -@@ -18383,12 +18708,12 @@ - csr=\233%i%p1%d;%p2%dr, cub=\233%p1%dD, cub1=\2331D, - cud=\233%p1%dB, cud1=\2331B, cuf=\233%p1%dC, cuf1=\2331C, - cup=\233%i%p1%d;%p2%dH, cuu=\233%p1%dA, cuu1=\2331A, -- dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, -+ dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M, - dsl=\2331$}\2332$~\n\2330$}, ech=\233%p1%dX, ed=\233J, - el=\233K, el1=\2331K, enacs=\E(B\E)0, - flash=\233?5h$<50>\233?5l, fsl=\2330$}, home=\233H, -- ht=^I, hts=\EH, ich=\233%p1%d@, il=\233%p1%dL, ind=\ED, -- is1=\E[63;2"p\E[2h, -+ ht=^I, hts=\EH, ich=\233%p1%d@, il=\233%p1%dL, il1=\233L, -+ ind=\ED, is1=\E[63;2"p\E[2h, - is2=\E[?2h\E[?3l\E[?5l\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l, - is3=\2330$}\233?25h\2332l\233H\233J, ka1=\217w, - ka3=\217y, kb2=\217u, kbs=^H, kc1=\217q, kc3=\217s, -@@ -18401,11 +18726,12 @@ - khlp=\23328~, kich1=\2332~, knp=\2336~, kpp=\2335~, - krdo=\23329~, kslt=\2334~, lf1=pf1, lf2=pf2, lf3=pf3, - lf4=pf4, mc0=\233i, mc4=\2334i, mc5=\2335i, nel=\EE, rc=\E8, -- rev=\2337m, ri=\EM, rmacs=^O, rmam=\233?7l, rmcup=\233?7h, -- rmir=\2334l, rmkx=\233?1l\E>, rmso=\23327m, rmul=\23324m, -- rs1=\E[!p, rs2=\E[?3l, s0ds=\E(B, s1ds=\E(0, sc=\E7, -+ rev=\2337m, ri=\EM, rmacs=\E(B, rmam=\233?7l, -+ rmcup=\233?7h, rmir=\2334l, rmkx=\233?1l\E>, -+ rmso=\23327m, rmul=\23324m, rs1=\E[!p, rs2=\E[?3l, -+ s0ds=\E(B, s1ds=\E(0, sc=\E7, - sgr=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;, -- sgr0=\2330m\E(B, smacs=^N, smam=\233?7h, -+ sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h, - smcup=\233?7l\233?1l\E(B, smir=\2334h, smso=\2337m, - smul=\2334m, tbc=\2333g, tsl=\2331$}\2332$~, - bq300-8rv|Bull vt320 8-bit reverse mode 80 columns, -@@ -19010,14 +19336,14 @@ - cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, - cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, - dch=\E[%p1%dP, dch1=\E[1P, dim=\E[2m, dl=\E[%p1%dM, -- dsl=\E[>1l, ed=\E[J, el=\E[K, fsl=\E[u\E[>5l, home=\E[H, -- ht=^I, hts=\EH, if=/usr/share/tabset/vt100, il=\E[%p1%dL, -- ind=\ED, kbs=^H, kclr=\E[J, kcub1=\EOD, kcud1=\EOB, -- kcuf1=\EOC, kcuu1=\EOA, ked=\E[J, kf0=\E[~, kf1=\EOS, -- kf2=\EOT, kf3=\EOU, kf4=\EOV, kf5=\EOW, kf6=\EOP, kf7=\EOQ, -- kf8=\EOR, kf9=\EOX, khome=\E[H, lf0=help, mc0=\E#7, -- nel=^M\ED, rc=\E[r, rev=\E[7m, ri=\EM, rmcup=\E[?7h, -- rmso=\E[m, rmul=\E[m, -+ dl1=\E[M, dsl=\E[>1l, ed=\E[J, el=\E[K, fsl=\E[u\E[>5l, -+ home=\E[H, ht=^I, hts=\EH, if=/usr/share/tabset/vt100, -+ il=\E[%p1%dL, il1=\E[L, ind=\ED, kbs=^H, kclr=\E[J, -+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, ked=\E[J, -+ kf0=\E[~, kf1=\EOS, kf2=\EOT, kf3=\EOU, kf4=\EOV, kf5=\EOW, -+ kf6=\EOP, kf7=\EOQ, kf8=\EOR, kf9=\EOX, khome=\E[H, lf0=help, -+ mc0=\E#7, nel=^M\ED, rc=\E[r, rev=\E[7m, ri=\EM, -+ rmcup=\E[?7h, rmso=\E[m, rmul=\E[m, - rs1=\E<\E[1;24r\E[24;1H\E[?7h\E[>4h\E[>1;2;3;5;6;7;8;9l\E[m\E[11m, - sc=\E[s, sgr0=\E[m, smcup=\E[?7l, smso=\E[7;2m, smul=\E[4m, - tbc=\E[3g, tsl=\E[s\E[>5;1h\E[25;%i%dH\E[1K, -@@ -19818,6 +20144,193 @@ - apollo_color|apollo color display, - rmir@, smir@, use=vt132, - -+#### AT&T consoles -+ -+# This actually describes the generic SVr4 display driver for Intel boxes. -+# The <dim=\E[2m> isn't documented and therefore may not be reliable. -+# From: Eric Raymond <esr@snark.thyrsus.com> Mon Nov 27 19:00:53 EST 1995 -+att6386|at386|386at|AT&T WGS 6386 console, -+ am, bw, eo, xon, -+ cols#80, it#8, lines#25, -+ acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~, -+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[=C, -+ clear=\E[2J\E[H, cnorm=\E[=1C, cr=^M, cub=\E[%p1%dD, -+ cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -+ cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, -+ dl=\E[%p1%dM, dl1=\E[1M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, -+ home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, -+ ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, ind=\E[S, -+ indn=\E[%p1%dS, invis=\E[9m, is2=\E[0;10;39m, kbs=^H, -+ kcbt=^], kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kdch1=\E[P, kend=\E[Y, kf1=\EOP, kf10=\EOY, kf11=\EOZ, -+ kf12=\EOA, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, -+ kf7=\EOV, kf8=\EOW, kf9=\EOX, khome=\E[H, kich1=\E[@, -+ knp=\E[U, kpp=\E[V, krmir=\E0, nel=\r\E[S, rc=\E8, rev=\E[7m, -+ ri=\E[T, rin=\E[%p1%dT, rmacs=\E[10m, rmso=\E[m, rmul=\E[m, -+ sc=\E7, -+ sgr=\E[10m\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p9%t;12%e;10%;%?%p7%t;9%;m, -+ sgr0=\E[0;10m, smacs=\E[12m, smso=\E[7m, smul=\E[4m, -+ tbc=\E[3g, vpa=\E[%i%p1%dd, use=klone+color, -+# (pc6300plus: removed ":KM=/usr/lib/ua/kmap.s5:"; renamed BO/EE/CI/CV -- esr) -+pc6300plus|AT&T 6300 plus, -+ OTbs, am, xon, -+ cols#80, lines#24, -+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[=C, -+ clear=\E[2J\E[H, cnorm=\E[=1C, cr=^M, cub1=^H, cud1=\E[B, -+ cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, -+ dch1=\E[1P, dim=\E[2m, dl1=\E[1M, ed=\E[0J, el=\E[0K, -+ home=\E[H, hts=\EH, ich1=\E[1@, il1=\E[1L, ind=^J, -+ invis=\E[9m, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, -+ kcuu1=\E[A, kf1=\EOc, kf10=\EOu, kf2=\EOd, kf3=\EOe, -+ kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\EOk, -+ nel=^M^J, rev=\E[7m, rmso=\E[m, rmul=\E[m, sgr0=\E[m, -+ smso=\E[7m, smul=\E[4m, tbc=\E[3g, -+ -+# From: Benjamin C. W. Sittler <bsittler@nmt.edu> -+# -+# I have a UNIX PC which I use as a terminal attached to my Linux PC. -+# Unfortunately, the UNIX PC terminfo entry that comes with ncurses -+# is broken. All the special key sequences are broken, making it unusable -+# with Emacs. The problem stems from the following: -+# -+# The UNIX PC has a plethora of keys (103 of them, and there's no numeric -+# keypad!), loadable fonts, and strange highlighting modes ("dithered" -+# half-intensity, "smeared" bold, and real strike-out, for example.) It also -+# uses resizable terminal windows, but the bundled terminal program always -+# uses an 80x24 window (and doesn't support seem to support a 132-column -+# mode.) -+# -+# HISTORY: The UNIX PC was one of the first machines with a GUI, and used a -+# library which was a superset of SVr3.5 curses (called tam, for "terminal -+# access method".) tam includes support for real, overlapping windows, -+# onscreen function key labels, and bitmap graphics. But since the primary -+# user interface on the UNIX PC was a GUI program (ua, for "user -+# assistant",) and remote administration was considered important for the -+# machine, tam also supported VT100-compatible terminals attached to the -+# serial port or used across the StarLan network. To simulate the extra keys -+# not present on a VT100, users could press ESC and a two-letter sequence, -+# such as u d (Undo) or U D (Shift-Undo.) These two-letter sequences, -+# however, were not the same as those sent by the actual Undo key. The -+# actual Undo key sends ESC 0 s unshifted, and ESC 0 S shifted, for example. -+# (If you're interested in adding some of the tam calls to ncurses, btw, I -+# have the full documentation and several programs which use tam. It also -+# used an extended terminfo format to describe key sequences, special -+# highlighting modes, etc.) -+# -+# KEYS: This means that ncurses would quite painful on the UNIX PC, since -+# there are two sequences for every key-modifier combination (local keyboard -+# sequence and remote "VT100" sequence.) But I doubt many people are trying -+# to use ncurses on the UNIX PC, since ncurses doesn't properly handle the -+# GUI. Unfortunately, the terminfo entry (and the termcap, too, I presume) -+# seem to have been built from the manual describing the VT100 sequences. -+# This means it doesn't work for a real live UNIX PC. -+# -+# FONTS: The UNIX PC also has a strange interpretation of "alternate -+# character set". Rather than the VT100 graphics you might expect, it allows -+# up to 8 custom fonts to be loaded at any given time. This means that -+# programs expecting VT100 graphics will usually be disappointed. For this -+# reason I have disabled the smacs/rmacs sequences, but they could easily be -+# re-enabled. Here are the relevant control sequences (from the ESCAPE(7) -+# manpage), should you wish to do so: -+# -+# SGR10 - Select font 0 - ESC [ 10 m or SO -+# SGR11 - Select font 1 - ESC [ 11 m or SI -+# SGR12 - Select font 2 - ESC [ 12 m -+# ... (etc.) -+# SGR17 - Select font 7 - ESC [ 17 m -+# -+# Graphics for line drawing are not reliably found at *any* character -+# location because the UNIX PC has dynamically reloadable fonts. I use font -+# 0 for regular text and font 1 for italics, but this is by no means -+# universal. So ASCII line drawing is in order if smacs/rmacs are enabled. -+# -+# MISC: The cursor visible/cursor invisible sequences were swapped in the -+# distributed terminfo. -+# -+# To ameliorate these problems (and fix a few highlighting bugs) I rewrote -+# the UNIX PC terminfo entry. The modified version works great with Lynx, -+# Emacs, and XEmacs running on my Linux PC and displaying on the UNIX PC -+# attached by serial cable. In Emacs, even the Undo key works, and many -+# applications can now use the F1-F8 keys. -+# -+# esr's notes: -+# Terminfo entry for the AT&T Unix PC 7300 -+# from escape(7) in Unix PC 7300 Manual. -+# Somewhat similar to a vt100-am (but different enough -+# to redo this from scratch.) -+# -+# /*************************************************************** -+# * -+# * FONT LOADING PROGRAM FOR THE UNIX PC -+# * -+# * This routine loads a font defined in the file ALTFONT -+# * into font memory slot #1. Once the font has been loaded, -+# * it can be used as an alternative character set. -+# * -+# * The call to ioctl with the argument WIOCLFONT is the key -+# * to this routine. For more information, see window(7) in -+# * the PC 7300 documentation. -+# ***************************************************************/ -+# #include <string.h> /* needed for strcpy call */ -+# #include <sys/window.h> /* needed for ioctl call */ -+# #define FNSIZE 60 /* font name size */ -+# #define ALTFONT "/usr/lib/wfont/special.8.ft" /* font file */ -+# /* -+# * The file /usr/lib/wfont/special.8.ft comes with the -+# * standard PC software. It defines a graphics character set -+# * similar to that of the Teletype 5425 terminal. To view -+# * this or other fonts in /usr/lib/wfont, use the command -+# * cfont <filename>. For further information on fonts see -+# * cfont(1) in the PC 7300 documentation. -+# */ -+# -+# struct altfdata /* structure for alt font data */ -+# { -+# short altf_slot; /* memory slot number */ -+# char altf_name[FNSIZE]; /* font name (file name) */ -+# }; -+# ldfont() -+# { -+# int wd; /* window in which altfont will be */ -+# struct altfdata altf; -+# altf.altf_slot=1; -+# strcpy(altf.altf_name,ALTFONT); -+# for (wd =1; wd < 12; wd++) { -+# ioctl(wd, WIOCLFONT,&altf); -+# } -+# } -+# -+# (att7300: added <civis>/<cnorm>/<ich1>/<invis> from the BSDI entry, -+# they're confirmed by the man page for the System V display---esr) -+# -+att7300|unixpc|pc7300|3b1|s4|AT&T UNIX PC Model 7300, -+ am, xon, -+ cols#80, it#8, lines#24, -+ bel=^G, blink=\E[9m, bold=\E[1m, cbt=\E^I, civis=\E[=1C, -+ clear=\E[2J\E[H, cnorm=\E[=0C, cr=^M, cub=\E[%p1%dD, -+ cub1=^H, cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, -+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, -+ cuu1=\E[A, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, -+ ed=\E[0J, el=\E[0K, home=\E[H, ich1=\E[@, il=\E[%p1%dL, -+ il1=\E[L, ind=^J, invis=\E[9m, is1=\017\E[=1w, kBEG=\ENB, -+ kCAN=\EOW, kCPY=\END, kCRT=\EON, kDC=\ENF, kDL=\ENE, -+ kEND=\ENN, kEOL=\EOA, kFND=\EOX, kHLP=\EOM, kHOM=\ENM, -+ kIC=\ENJ, kLFT=\ENK, kMOV=\ENC, kNXT=\ENH, kOPT=\EOR, -+ kPRV=\ENG, kRDO=\EOT, kRIT=\ENL, kRPL=\EOY, kSAV=\EOO, -+ kUND=\EOS, kbeg=\ENb, kbs=^H, kcan=\EOw, kcbt=\E[Z, -+ kclo=\EOV, kclr=\E[J, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\ENf, -+ ked=\E[J, kel=\EOa, kend=\E0, kext=\EOk, kf1=\EOc, kf2=\EOd, -+ kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, -+ kfnd=\EOx, khlp=\EOm, khome=\E[H, kich1=\ENj, kind=\E[B, -+ kmov=\ENc, kmrk=\ENi, knp=\E[U, knxt=\ENh, kopn=\EOv, -+ kopt=\EOr, kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, -+ kref=\EOb, krfr=\ENa, kri=\E[A, krpl=\EOy, krst=\EOB, -+ ksav=\EOo, kslt=\ENI, kund=\EOs, nel=\EE, rev=\E[7m, ri=\EM, -+ rmso=\E[m, rmul=\E[m, sgr0=\E[0;10m, smso=\E[7m, -+ smul=\E[4m, -+ - #### Convergent Technology - # - # Burroughs bought Convergent shortly before it merged with Univac. -@@ -19923,6 +20436,54 @@ - masscomp2|masscomp large screen version 2, - cols#64, lines#21, use=masscomp, - -+#### OSF Unix -+# -+ -+# OSF/1 1.1 Snapshot 2 -+pmcons|pmconsole|PMAX console, -+ am, -+ cols#128, lines#57, -+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuu1=^K, ht=^I, -+ ind=^J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, -+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, -+ -+#### Other consoles -+# The following is a version of the ibm-pc entry distributed with PC/IX, -+# (Interactive Systems' System 3 for the Big Blue), modified by Richard -+# McIntosh at UCB/CSM. The :pt: and :uc: have been removed from the original, -+# (the former is untrue, and the latter failed under UCB/man); standout and -+# underline modes have been added. Note: this entry describes the "native" -+# capabilities of the PC monochrome display, without ANY emulation; most -+# communications packages (but NOT PC/IX connect) do some kind of emulation. -+pcix|PC/IX console, -+ am, bw, eo, -+ cols#80, lines#24, -+ clear=\Ec, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\E[J, el=\E[K, -+ home=\E[H, rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, -+ smul=\E[4m, -+ -+# (ibmpcx: this entry used to be known as ibmx. -+# It formerly included the following extension capabilities: -+# :GC=b:GL=v:GR=t:RT=^J:\ -+# :GH=\E[196g:GV=\E[179g:\ -+# :GU=\E[193g:GD=\E[194g:\ -+# :G1=\E[191g:G2=\E[218g:G3=\E[192g:G4=\E[217g:\ -+# :CW=\E[E:NU=\E[F:RF=\E[G:RC=\E[H:\ -+# :WL=\E[K:WR=\E[L:CL=\E[M:CR=\E[N:\ -+# I renamed GS/GE/WL/WR/CL/CR/PU/PD/HM/EN; also, removed a duplicate -+# ":kh=\E[Y:". Added IBM-PC forms characters and highlights, they match -+# what was there before. -- esr) -+ibmpcx|xenix|ibmx|IBM PC xenix console display, -+ OTbs, am, msgr, -+ cols#80, lines#25, -+ clear=^L, cub1=^H, cud1=\E[B, cuf1=\E[C, -+ cup=\E[%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M, -+ ed=\E[J, el=\E[K, home=\E[H, ich1=\E[@, il1=\E[L, kbs=^H, -+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[d, -+ kf1=\E[K, kf2=\E[L, kf3=\E[M, kf4=\E[N, khome=\E[Y, knp=\E[e, -+ kpp=\E[Z, use=klone+acs, use=klone+sgr8, -+ - ######## OTHER OBSOLETE TYPES - # - # These terminals are *long* dead -- these entries are retained for -@@ -20217,9 +20778,9 @@ - sgr0=\EX, smacs=\EF, smso=\ET, - env230|envision230|envision 230 graphics terminal, - xenl@, -- mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, -- sgr=\E[%?%p1%t;1%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>, -- use=vt100, -+ enacs@, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rmacs@, -+ sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>, -+ sgr0=\E[0m$<2>, smacs@, use=vt100, - # These execuports were impact-printer ttys with a 30- or maybe 15-cps acoustic - # coupler attached, the whole rig fitting in a suitcase and more or less - # portable. Hot stuff for c.1977 :-) -- esr -@@ -20274,7 +20835,7 @@ - rmacs=\EH^C, rmam=\Ed., rmcup=, rmir=\Er, rmln=\EA11, - rmxon=\Ec20, rs1=\E~!\E~4$<150>, rs2=\EeF$<150>, - rs3=\EwG\Ee($<150>, -- sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, -+ sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c, - sgr0=\E(\EH\003\EG0\EcD, smacs=\EH^B, smam=\Ed/, - smcup=\Ezz&\E[A\177\Ezz'\E[B\177\Ezz(\E[D\177\Ezz)\E[C\177\Ezz<\E[Q\177, - smir=\Eq, smln=\EA10, smxon=\Ec21, tbc=\E0, tsl=\Ez(, -@@ -20881,7 +21442,7 @@ - # assigned in System V terminfo. There are some variant extension sets out - # there. We try to describe them here. - # --# XENIX extensions: -+#### XENIX extensions: - # - # The XENIX extensions include a set of function-key capabilities as follows: - # -@@ -20946,7 +21507,7 @@ - # When translating a termcap file, ncurses tic will do this automatically. - # The double forms characters don't fit the SVr4 terminfo model. - # --# AT&T Extensions: -+#### AT&T Extensions: - # - # The old AT&T 5410, 5420, 5425, pc6300plus, 610, and s4 entries used a set of - # nonstandard capabilities. Its signature is the KM capability, used to name -@@ -20957,7 +21518,7 @@ - # FL=:LO: (enable soft labels), FE=:LF: (disable soft labels), CI=:vi: (make - # cursor invisible), and CV=:ve: (make cursor normal). - # --# HP Extensions -+#### HP Extensions - # - # The HP library (as of mid-1995, their term.h file version 70.1) appears to - # have the System V capabilities up to SVr1 level. After that, it supports -@@ -20966,7 +21527,7 @@ - # label_off, and key_f11..key_f63 capabilities like SVr4's. This makes the - # HP binary format incompatible with SVr4's. - # --# IBM Extensions -+#### IBM Extensions - # - # There is a set of nonstandard terminfos used by IBM's AIX operating system. - # The AIX terminfo library diverged from SVr1 terminfo, and replaces all -@@ -20994,7 +21555,7 @@ - # The box2 characters are the double-line versions of these forms graphics. - # The AIX binary terminfo format is incompatible with SVr4's. - # --# Iris console extensions: -+#### Iris console extensions: - # - # HS is half-intensity start; HE is half-intensity end - # CT is color terminal type (for Curses & rogue) -@@ -21003,7 +21564,7 @@ - # - # The ncurses tic utility recognizes HS as an alias for mh <dim>. - # --# TC Extensions: -+#### TC Extensions: - # - # There is a set of extended termcaps associated with something - # called the "Terminal Control" or TC package created by MainStream Systems, -@@ -21011,11 +21572,112 @@ - # CF for civis and CO for cvvis. Finally, they define a boolean :ct: - # that flags color terminals. - # -+######## NCURSES USER-DEFINABLE CAPABILITIES -+# -+# Extensions added after ncurses 5.0 generally use the "-x" option of tic and -+# infocmp to manipulate user-definable capabilities. Those that are intended -+# for use in either terminfo or termcap use 2-character names. Extended -+# function keys do not use 2-character names, and are available only with -+# terminfo. -+# -+# As of mid-2012, no other terminfo/termcap implementation than ncurses -+# supports this extension; termcap libraries can as noted above make limited -+# use of the feature. -+# -+# ncurses makes explicit checks for a few user-definable capabilities: AX, U8, -+# XM. -+# -+#### SCREEN Extensions: -+# -+# The screen program uses the termcap interface. It recognizes a few useful -+# nonstandard capabilities. Those are used in this file. -+# -+# AX (bool) Does understand ANSI set default fg/bg color (\E[39m / -+# \E[49m). -+# G0 (bool) Terminal can deal with ISO 2022 font selection sequences. -+# E0 (str) Switch charset 'G0' back to standard charset. -+# S0 (str) Switch charset 'G0' to the specified charset. -+# XT (bool) Terminal understands special xterm sequences (OSC, mouse -+# tracking). -+# -+# AX is relatively straightforward; it is interpreted by ncurses to say that -+# SGR 39/49 reset the terminal's foreground and background colors to their -+# "default". -+# -+# XT is harder, since screen's manpage does not give more details. For that, -+# we must read screen's source-code. When XT is set, screen assumes -+# -+# a) OSC 1 sets the title string, e.g., for the icon. Recent versions of -+# screen may also set the terminal's name, which is (for xterm) distinct -+# from the icon name. -+# b) OSC 20 sets the background pixmap. This is an rxvt feature. -+# c) OSC 39 and OSC 49 set the default foreground/background colors. Again -+# this is an rxvt feature. -+# d) certain mode settings enable the mouse: 9, 1000, 1001, 1002, 1003. -+# These are from xterm, although xterm accepts mouse codes that may not be -+# recognized by screen, e.g., 1005, 1006. -+# e) colors beyond 0..7 are implemented by xterm's aixterm-like 16-color -+# sequence. However, because screen uses only termcap, the values returned -+# by Af/Ab are not usable because they rely on expressions that termcap -+# does not support. Therefore, screen uses a hardcoded string to work -+# around the limitation. -+# f) all entries named "*xterm*" or "*rxvt*" have the bce flag set. -+# -+# The other ISO-2022 features are rarely used, but provided here to make -+# screen's termcap features available. -+# -+#### XTERM Extensions: -+# -+# Most of the xterm extensions are for function-keys. Since patch #94 (in -+# 1999), xterm has supported shift/control/alt/meta modifiers which produce -+# additional function-key strings. Some other developers copied the feature, -+# though they did not follow xterm's lead in patch #167 (in 2002), to make -+# these key definitions less ambiguous. -+# -+# A few terminals provide similar functionality (sending distinct keys when -+# a modifier is used), including rxvt. -+# -+# 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 ka2 kb1 kb3 kc2 -+# -+# Here are the other xterm-related extensions which are used in this file: -+# -+# Cr is a string capability which resets the cursor color -+# Cs is a string capability which sets the cursor color to a given value. -+# The single string parameter is the color name/number, according to the -+# implementation. -+# Ms modifies the selection/clipboard. Its parameters are -+# p1 = the storage unit (clipboard, selection or cut buffer) -+# p2 = the base64-encoded clipboard content. -+# Se resets the cursor style to the terminal power-on default. -+# Ss is a string capability with one numeric parameter. It is used to set the -+# cursor style as described by the DECSCUSR function to a block or -+# underline. -+# TS is a string capability which acts like "tsl", but uses no parameter and -+# goes to the first column of the "status line". -+# XM is a string capability which overrides ncurses's built-in string which -+# enables xterm mouse mode. -+# -+#### Miscellaneous extensions: -+# -+# gsbom/grbom are used to enable/disable real bold (not intensity bright) mode. -+# This was implemented for the Hurd. -+# E3 clears the terminal's scrollback buffer. This was implemented in the -+# Linux 3.0 kernel as a security feature. It matches a feature which was -+# added in xterm patch #107. -+# U8 is a numeric capability which denotes a terminal emulator which does not -+# support VT100 SI/SO when processing UTF-8 encoding. Set this to a nonzero -+# value to enable it. -+# - ######## CHANGE HISTORY - # - # The last /etc/termcap version maintained by John Kunze was 8.3, dated 8/5/94. --# Releases 9 and up are maintained by Eric S. Raymond as part of the ncurses --# project. -+# Releases 9 and 10 (up until the release of ncurses 4.2 in 1998) were -+# maintained by Eric S. Raymond as part of the ncurses project. - # - # This file contains all the capability information present in John Kunze's - # last version of the termcap master file, except as noted in the change -@@ -21115,7 +21777,7 @@ - # * Replaced HP entries up to hpsub with purpose-built ones. - # * Blank rmir/smir/rmdc/smdc capabilities removed. - # * Small fixes merged in from SCO entries for lpr, fos, tvi910+, tvi924. --# 9.4.8 (Fri Apr 7 09:36:34 EDT 199): -+# 9.4.8 (Fri Apr 7 09:36:34 EDT 1995): - # * Replaced the Ann Arbor entries with SCO's, the init strings are - # more efficient (but the entries otherwise identical). - # * Added dg211 from Shuford archive. -@@ -22224,7 +22886,7 @@ - # * add screen.rxvt -TD - # - # 2008-04-28 --# * add screen+fkeys (prompted by Debian # 478094) -TD -+# * add screen+fkeys (prompted by Debian #478094) -TD - # - # 2008-06-28 - # * add screen.mlterm -TD -@@ -22280,7 +22942,7 @@ - # 2009-12-12 - # * updated nsterm* entries (Benjamin Sittler, Emanuele Giaquinta) - # --# 2009-12-12 -+# 2009-12-19 - # * add bw (auto-left-margin) to nsterm* entries (Benjamin Sittler) - # * rename minix to minix-1.7, add minix entry for Minux3 -TD - # -@@ -22354,6 +23016,195 @@ - # * add xterm-utf8 as a demo of the U8 feature -TD - # - # 2011-02-20 --# * add cons25-debian entry (Brian M Carlson, Debina #607662). -+# * add cons25-debian entry (Brian M Carlson, Debian #607662). -+# -+# 2011-06-11 -+# * update minix entry to minix 3.2 (Thomas Cort). -+# -+# 2011-07-09 -+# * fix inconsistent tabset path in pcmw (Todd C. Miller). -+# * remove a backslash which continued comment, obscuring altos3 -+# definition with OpenBSD toolset (Nicholas Marriott). -+# -+# 2011-07-16 -+# * add/use xterm+tmux chunk from xterm #271 -TD -+# * resync xterm-new entry from xterm #271 -TD -+# * add E3 extended capability to linux-basic (Miroslav Lichvar) -+# * add linux2.2, linux2.6, linux3.0 entries to give context for E3 -TD -+# * add SI/SO change to linux2.6 entry (Debian #515609) -TD -+# -+# 2011-07-21 -+# * add kich1 to sun (Yuri Pankov) -+# * use bold rather than reverse for smso in sun-color (Yuri Pankov). -+# -+# 2011-08-06 -+# * corrected k9 in dg460-ansi, add other features based on manuals -TD -+# -+# 2011-08-20 -+# * minor cleanup of X-terminal emulator section -TD -+# * add terminator entry -TD -+# * add simpleterm entry -TD -+# -+# 2011-09-10 -+# * add xterm+kbs fragment from xterm #272 -TD -+# -+# 2011-11-12 -+# * add pccon entries for OpenBSD console (Alexei Malinin) -+# -+# 2011-12-17 -+# * corrected old changelog comments -TD -+# -+# 2011-11-24 -+# * add putty-sco -TD -+# -+# 2012-01-28 -+# * add mach-gnu (Samuel Thibault) -+# * add mach-gnu-color, tweaks to mach-gnu -TD -+# * make sgr for sun-color agree with smso -TD -+# * make sgr for prism9 agree with other caps -TD -+# * make sgr for icl6404 agree with other caps -TD -+# * make sgr for ofcons agree with other caps -TD -+# * make sgr for att5410v1, att4415, att620 agree with other caps -TD -+# * make sgr for aaa-unk, aaa-rv agree with other caps -TD -+# * make sgr for avt-ns agree with other caps -TD -+# -+# 2012-02-11 -+# * make sgr for xterm-pcolor agree with other caps -TD -+# * make sgr for att5425 agree with other caps -TD -+# * make sgr for att630 agree with other caps -TD -+# * make sgr for linux entries agree with other caps -TD -+# * make sgr for tvi9065 agree with other caps -TD -+# * make sgr for ncr260vt200an agree with other caps -TD -+# * make sgr for ncr160vt100pp agree with other caps -TD -+# * make sgr for ncr260vt300an agree with other caps -TD -+# * make sgr for aaa-60-dec-rv, aaa+dec agree with other caps -TD -+# * make sgr for cygwin, cygwinDBG agree with other caps -TD -+# -+# 2012-03-31 -+# * correct order of use-clauses in st-256color -TD -+# -+# 2012-04-01 -+# * revert 2011-07-16 change to "linux" alias, return to "linux2.2" -TD -+# -+# 2012-04-14 -+# * document all of the user-defined capabilities in one place -TD -+# * add XT to some places to improve usefulness for other applications -+# than screen, which would like to pretend that xterm's title is -+# a status-line. -TD -+# * change use-clauses in ansi-mtabs, hp2626, and hp2622 based on review -+# of ordering and overrides -TD -+# -+# 2012-04-21 -+# * add msgr to vt420, similar DEC vtXXX entries -TD -+# * add several missing vt420 capabilities from vt220 -TD -+# * factor out ansi+pp from several entries -TD -+# * change xterm+sl and xterm+sl-twm to include only the status-line -+# capabilities and not "use=xterm", making them more generally useful -+# as building-blocks -TD -+# * add dec+sl building block, as example -TD -+# -+# 2012-04-28 -+# * fix some inconsistencies between vt320/vt420, e.g., cnorm/civis -TD -+# * add eslok flag to dec+sl -TD -+# * dec+sl applies to vt320 and up -TD -+# * drop wsl width from xterm+sl -TD -+# * reuse xterm+sl in putty and nsca-m -TD -+# * add ansi+tabs to vt520 -TD -+# * add ansi+enq to vt220-vt520 -TD -+# -+# 2012-05-05 -+# * remove p6 (bold) from opus3n1+ for consistency -TD -+# * remove acs stuff from env230 per clues in Ingres termcap -TD -+# * modify env230 sgr/sgr0 to match other capabilities -TD -+# * modify smacs/rmacs in bq300-8 to match sgr/sgr0 -TD -+# * make sgr for dku7202 agree with other caps -TD -+# * make sgr for ibmpc agree with other caps -TD -+# * make sgr for tek4107 agree with other caps -TD -+# * make sgr for ndr9500 agree with other caps -TD -+# * make sgr for sco-ansi agree with other caps -TD -+# * make sgr for d410 agree with other caps -TD -+# * make sgr for d210 agree with other caps -TD -+# * make sgr for d470c, d470c-7b agree with other caps -TD -+# -+# 2012-05-12 -+# * rewrite vt520 entry based on vt420 -TD -+# * corrected 'op' for bterm (report by Samuel Thibault) -TD -+# -+# 2012-06-02 -+# * add kdch1 to wsvt25 entry from NetBSD CVS (reported by David Lord, -+# analysis by Martin Husemann). -+# * add cnorm/civis to wsvt25 entry from NetBSD CVS (report/analysis by -+# Onno van der Linden). -+# * add kdch1 aka "Remove" to vt220 and vt220-8 entries -TD -+# * add kdch1, etc., to qvt108 -TD -+# * add dl1/il1 to some entries based on dl/il values -TD -+# * add dl to simpleterm -TD -+# -+# 2012-06-10 -+# * modify some older xterm entries to align with xterm source -TD -+# * separate "xterm-old" alias from "xterm-r6" -TD -+# -+# 2012-07-28 -+# * add E3 to xterm-basic and putty -TD -+# -+# 2012-08-11 -+# * add nsterm-256color, make this the default nsterm -TD -+# * remove bw from nsterm-bce, per testing with tack -TD -+# -+# 2012-10-12 -+# * add vte-2012, gnome-2012, making these the defaults for vte/gnome -+# (patch by Christian Persch). -+# -+# 2012-11-02 -+# * reviewed vte-2012, reverted most of the change since it was incorrect -+# based on testing with tack -TD -+# * un-cancel the initc in vte-256color, since this was implemented -+# starting with version 0.20 in 2009 -TD -+# -+# 2013-03-16 -+# * correct typo in sgr string for sun-color, -+# add bold for consistency with sgr, -+# change smso for consistency with sgr -TD -+# * correct typo in sgr string for terminator -TD -+# * add blink to the attributes masked by ncv in linux-16color (report -+# by Benjamin Sittler) -+# -+# 2013-03-23 -+# * change initialization for vt220, similar entries for consistency -+# with cursor-key strings (NetBSD #47674) -TD -+# * further improvements to linux-16color (Benjamin Sittler) -+# -+# 2013-05-11 -+# * move nsterm-related entries out of "obsolete" section to more -+# plausible "ansi consoles" -TD -+# * additional cleanup of table-of-contents by reordering -TD -+# -+# 2013-06-07 -+# * added note to clarify Terminal.app's non-emulation of the various -+# terminal types listed in the preferences dialog -TD -+# -+# 2013-11-02 -+# * use TS extension to describe xterm's title-escapes -TD -+# * modify terminator and nsterm-s to use xterm+sl-twm building block -TD -+# * update hurd.ti, add xenl to reflect 2011-03-06 change in -+# http://git.savannah.gnu.org/cgit/hurd/hurd.git/log/console/display.c -+# (Debian #727119). -+# * simplify pfkey expression in ansi.sys -TD -+# -+# 2013-11-10 -+# * split-out building blocks xterm+sm+1002 and xterm+sm+1003 -TD -+# -+# 2014-02-22 -+# * updated notes for wsvt25 based on tack and vttest -TD -+# * add teken entry to show actual properties of FreeBSD's "xterm" -+# console -TD -+# -+# 2014-03-22 -+# * add terminology entry -TD -+# * add mlterm3 entry, use that as "mlterm" -TD -+# * inherit mlterm-256color from mlterm -TD -+# -+# 2014-03-23 -+# * fix typo in "mlterm" entry (report by Gabriele Balducci) -TD - # - ######## SHANTIH! SHANTIH! SHANTIH! -diff -Naur ncurses-5.9/mk-0th.awk ncurses-5.9.patch/mk-0th.awk ---- ncurses-5.9/mk-0th.awk 2010-01-09 22:45:41.000000000 +0100 -+++ ncurses-5.9.patch/mk-0th.awk 2014-09-01 16:33:22.368792143 +0200 -@@ -1,6 +1,6 @@ --# $Id: mk-0th.awk,v 1.18 2010/01/09 21:45:41 tom Exp $ -+# $Id: mk-0th.awk,v 1.22 2012/06/30 20:56:11 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -34,14 +34,62 @@ - # Variables: - # libname (library name, e.g., "ncurses", "panel", "forms", "menus") - # subsets (is used here to decide if wide-character code is used) -+# ticlib (library name for libtic, e.g., "tic") -+# termlib (library name for libtinfo, e.g., "tinfo") - # -+function make_lintlib(name,sources) { -+ print "" -+ print "clean ::" -+ printf "\trm -f llib-l%s.*\n", name -+ print "" -+ print "realclean ::" -+ printf "\trm -f llib-l%s\n", name -+ print "" -+ printf "llib-l%s : %s\n", name, sources -+ printf "\tcproto -a -l -DNCURSES_ENABLE_STDBOOL_H=0 -DLINT $(CPPFLAGS) %s >$@\n", sources -+ print "" -+ print "lintlib ::" -+ printf "\tsh $(srcdir)/../misc/makellib %s $(CPPFLAGS)\n", name -+ print "" -+ print "lint ::" -+ printf "\t$(LINT) $(LINT_OPTS) $(CPPFLAGS) %s $(LINT_LIBS)\n", sources -+} -+ -+# A blank in "subsets" indicates a split-off of the library into a separate -+# file, e.g., for libtic or libtinfo. They are all logical parts of the same -+# library. -+function which_library() { -+ if ( ( which == "ticlib" ) && ( subsets ~ /ticlib / ) ) { -+ return ticlib; -+ } else if ( ( which == "termlib" || which == "ext_tinfo" ) && ( subsets ~ /[[:space:]]base/ ) ) { -+ return termlib; -+ } else { -+ return libname; -+ } -+} -+ -+function show_list(name, len, list) { -+ if ( len > 0 ) { -+ printf "\n%s_SRC =", toupper(name); -+ for (n = 0; n < len; ++n) -+ printf " \\\n\t%s", list[n]; -+ print ""; -+ make_lintlib(name, sprintf("$(%s_SRC)", toupper(name))); -+ } -+} -+ - BEGIN { - which = libname; - using = 0; - found = 0; -+ count_ticlib = 0; -+ count_termlib = 0; -+ count_library = 0; - } - /^@/ { - which = $0; -+ sub(/^@[[:blank:]]+/, "", which); -+ sub(/[[:blank:]]+$/, "", which); - } - !/^[@#]/ { - if (using == 0) -@@ -50,6 +98,10 @@ - print "# generated by mk-0th.awk" - printf "# libname: %s\n", libname - printf "# subsets: %s\n", subsets -+ if ( libname ~ /ncurses/ ) { -+ printf "# ticlib: %s\n", ticlib -+ printf "# termlib: %s\n", termlib -+ } - print "" - print ".SUFFIXES: .c .cc .h .i .ii" - print ".c.i :" -@@ -80,9 +132,18 @@ - found = 2 - } - if ( libname == "c++" || libname == "c++w" ) { -- printf " \\\n\t%s/%s.cc", $3, $1 -+ srcname = sprintf("%s/%s.cc", $3, $1); -+ printf " \\\n\t%s", srcname; - } else if ( widechar == 1 || $3 != "$(wide)" ) { -- printf " \\\n\t%s/%s.c", $3, $1 -+ srcname = sprintf("%s/%s.c", $3, $1); -+ printf " \\\n\t%s", srcname; -+ if ( which_library() == libname ) { -+ list_library[count_library++] = srcname; -+ } else if ( which_library() == ticlib ) { -+ list_ticlib[count_ticlib++] = srcname; -+ } else { -+ list_termlib[count_termlib++] = srcname; -+ } - } - } - } -@@ -91,22 +152,11 @@ - if ( found == 1 ) - { - print "" -- printf "# Producing llib-l%s is time-consuming, so there's no direct-dependency for\n", libname -- print "# it in the lintlib rule. We'll only remove in the cleanest setup." -- print "clean ::" -- printf "\trm -f llib-l%s.*\n", libname -- print "" -- print "realclean ::" -- printf "\trm -f llib-l%s\n", libname -- print "" -- printf "llib-l%s : $(C_SRC)\n", libname -- printf "\tcproto -a -l -DNCURSES_ENABLE_STDBOOL_H=0 -DLINT $(CPPFLAGS) $(C_SRC) >$@\n" -- print "" -- print "lintlib :" -- printf "\tsh $(srcdir)/../misc/makellib %s $(CPPFLAGS)", libname -- print "" -- print "lint :" -- print "\t$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(C_SRC) $(LINT_LIBS)" -+ printf "# Producing llib-l%s is time-consuming, so there's no direct-dependency for\n", libname; -+ print "# it in the lintlib rule. We'll only remove in the cleanest setup."; -+ show_list(libname, count_library, list_library); -+ show_list(ticlib, count_ticlib, list_ticlib); -+ show_list(termlib, count_termlib, list_termlib); - } - else - { -@@ -115,3 +165,4 @@ - print "\t@echo no action needed" - } - } -+# vile:ts=4 sw=4 -diff -Naur ncurses-5.9/mk-1st.awk ncurses-5.9.patch/mk-1st.awk ---- ncurses-5.9/mk-1st.awk 2010-08-07 22:42:30.000000000 +0200 -+++ ncurses-5.9.patch/mk-1st.awk 2014-09-01 16:33:22.369792144 +0200 -@@ -1,6 +1,6 @@ --# $Id: mk-1st.awk,v 1.85 2010/08/07 20:42:30 Gabriele.Balducci Exp $ -+# $Id: mk-1st.awk,v 1.96 2013/09/07 17:54:05 Alexey.Pavlov Exp $ - ############################################################################## --# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -34,10 +34,12 @@ - # name (library name, e.g., "ncurses", "panel", "forms", "menus") - # traces ("all" or "DEBUG", to control whether tracing is compiled in) - # MODEL (e.g., "DEBUG", uppercase; toupper is not portable) -+# CXX_MODEL (e.g., "DEBUG", uppercase) - # model (directory into which we compile, e.g., "obj") - # prefix (e.g., "lib", for Unix-style libraries) - # suffix (e.g., "_g.a", for debug libraries) - # subset ("none", "base", "base+ext_funcs" or "termlib", etc.) -+# driver ("yes" or "no", depends on --enable-term-driver) - # ShlibVer ("rel", "abi" or "auto", to augment DoLinks variable) - # ShlibVerInfix ("yes" or "no", determines location of version #) - # SymLink ("ln -s", etc) -@@ -69,7 +71,7 @@ - } - # see imp_name - function imp_name_of(a_name) { -- if (ShlibVerInfix == "cygdll") { -+ if (ShlibVerInfix == "cygdll" || ShlibVerInfix == "msysdll" || ShlibVerInfix == "mingw") { - result = sprintf("%s%s%s.a", prefix, a_name, suffix); - } else { - result = ""; -@@ -80,6 +82,10 @@ - function abi_name_of(a_name) { - if (ShlibVerInfix == "cygdll") { - result = sprintf("%s%s$(ABI_VERSION)%s", "cyg", a_name, suffix); -+ } else if (ShlibVerInfix == "msysdll") { -+ result = sprintf("%s%s$(ABI_VERSION)%s", "msys-", a_name, suffix); -+ } else if (ShlibVerInfix == "mingw") { -+ result = sprintf("%s%s$(ABI_VERSION)%s", prefix, a_name, suffix); - } else if (ShlibVerInfix == "yes") { - result = sprintf("%s%s.$(ABI_VERSION)%s", prefix, a_name, suffix); - } else { -@@ -91,6 +97,10 @@ - function rel_name_of(a_name) { - if (ShlibVerInfix == "cygdll") { - result = sprintf("%s%s$(REL_VERSION)%s", "cyg", a_name, suffix); -+ } else if (ShlibVerInfix == "msysdll") { -+ result = sprintf("%s%s$(ABI_VERSION)%s", "msys-", a_name, suffix); -+ } else if (ShlibVerInfix == "mingw") { -+ result = sprintf("%s%s$(REL_VERSION)%s", prefix, a_name, suffix); - } else if (ShlibVerInfix == "yes") { - result = sprintf("%s%s.$(REL_VERSION)%s", prefix, a_name, suffix); - } else { -@@ -107,7 +117,7 @@ - } else { - if ( ShlibVer == "rel" ) { - result = rel_name_of(a_name); -- } else if ( ShlibVer == "abi" || ShlibVer == "cygdll" ) { -+ } else if ( ShlibVer == "abi" || ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw" ) { - result = abi_name_of(a_name); - } else { - result = lib_name_of(a_name); -@@ -124,23 +134,38 @@ - } - } - function rmlink(directory, dst) { -- printf "\t-rm -f %s/%s\n", directory, dst -+ if ( dst != "" ) { -+ printf "\t-rm -f %s/%s\n", directory, dst -+ } - } - function removelinks(directory) { -- rmlink(directory, end_name); -+ nlinks = 0; -+ links[nlinks++] = end_name; - if ( DoLinks == "reverse" ) { - if ( ShlibVer == "rel" ) { -- rmlink(directory, abi_name); -- rmlink(directory, rel_name); -+ links[nlinks++] = abi_name; -+ links[nlinks++] = rel_name; - } else if ( ShlibVer == "abi" ) { -- rmlink(directory, abi_name); -+ links[nlinks++] = abi_name; - } - } else { - if ( ShlibVer == "rel" ) { -- rmlink(directory, abi_name); -- rmlink(directory, lib_name); -+ links[nlinks++] = abi_name; -+ links[nlinks++] = lib_name; - } else if ( ShlibVer == "abi" ) { -- rmlink(directory, lib_name); -+ links[nlinks++] = lib_name; -+ } -+ } -+ for (j = 0; j < nlinks; ++j) { -+ found = 0; -+ for (k = 0; k < j; ++k ) { -+ if ( links[j] == links[k] ) { -+ found = 1; -+ break; -+ } -+ } -+ if ( !found ) { -+ rmlink(directory, links[j]); - } - } - } -@@ -148,7 +173,7 @@ - printf "\t$(MK_SHARED_LIB) $(%s_OBJS) $(%s) $(LDFLAGS)\n", objs, shlib_list - } - function sharedlinks(directory) { -- if ( ShlibVer != "auto" && ShlibVer != "cygdll" ) { -+ if ( ShlibVer != "auto" && ShlibVer != "cygdll" && ShlibVer != "msysdll" && ShlibVer != "mingw" ) { - printf "\tcd %s && (", directory - if ( DoLinks == "reverse" ) { - if ( ShlibVer == "rel" ) { -@@ -181,6 +206,11 @@ - dst_libs = sprintf("%s/%s", directory, end_name); - printf "%s : \\\n", dst_libs - printf "\t\t%s \\\n", directory -+ if (subset == "ticlib" && driver == "yes" ) { -+ base = name; -+ sub(/^tic/, "ncurses", base); # workaround for "w" -+ printf "\t\t%s/%s \\\n", directory, end_name_of(base); -+ } - if (subset ~ /^base/ || subset == "ticlib" ) { - save_suffix = suffix - sub(/^[^.]\./,".",suffix) -@@ -223,8 +253,9 @@ - printf "\t%s %s %s\n", program, src_name, dst_name - } - BEGIN { -- found = 0 -- using = 0 -+ TOOL_PREFIX = ""; -+ found = 0; -+ using = 0; - } - /^@/ { - using = 0 -@@ -233,15 +264,26 @@ - } else if (index(subset,$2) > 0) { - if (using == 0) { - if (found == 0) { -+ if ( name ~ /^.*\+\+.*/ ) { -+ if ( CXX_MODEL == "NORMAL" && MODEL == "SHARED" ) { -+ print "" -+ printf "# overriding model from %s to match CXX_MODEL\n", MODEL; -+ MODEL = "NORMAL"; -+ suffix = ".a"; -+ DoLinks = "no"; -+ } -+ } - print "" - printf "# generated by mk-1st.awk (subset=%s)\n", subset - printf "# name: %s\n", name - printf "# traces: %s\n", traces - printf "# MODEL: %s\n", MODEL -+ printf "# CXX_MODEL: %s\n", CXX_MODEL - printf "# model: %s\n", model - printf "# prefix: %s\n", prefix - printf "# suffix: %s\n", suffix - printf "# subset: %s\n", subset -+ printf "# driver: %s\n", driver - printf "# ShlibVer: %s\n", ShlibVer - printf "# ShlibVerInfix: %s\n", ShlibVerInfix - printf "# SymLink: %s\n", SymLink -@@ -285,12 +327,23 @@ - if ( found == 0 ) - { - printf "%s_OBJS =", OBJS -- if ( $2 == "lib" ) -- found = 1 -- else -- found = 2 -+ if ( $2 == "lib" ) { -+ found = 1; -+ } else if ( $2 == "c++" ) { -+ TOOL_PREFIX = "CXX_"; -+ found = 1; -+ } else { -+ found = 2; -+ } -+ if ( $2 == "c++" ) { -+ CC_NAME="CXX" -+ CC_FLAG="CXXFLAGS" -+ } else { -+ CC_NAME="CC" -+ CC_FLAG="CFLAGS" -+ } - } -- printf " \\\n\t../%s/%s$o", model, $1 -+ printf " \\\n\t../%s/%s$o", model, $1; - } - } - END { -@@ -316,7 +369,7 @@ - print "install \\" - print "install.libs \\" - -- if ( ShlibVer == "cygdll" ) { -+ if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw") { - - dst_dirs = "$(DESTDIR)$(bindir) $(DESTDIR)$(libdir)"; - printf "install.%s :: %s $(LIBRARIES)\n", name, dst_dirs -@@ -337,7 +390,7 @@ - - if ( overwrite == "yes" && name == "ncurses" ) - { -- if ( ShlibVer == "cygdll" ) { -+ if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw") { - ovr_name = sprintf("libcurses%s.a", suffix) - printf "\t@echo linking %s to %s\n", imp_name, ovr_name - printf "\tcd $(DESTDIR)$(libdir) && (" -@@ -358,7 +411,7 @@ - print "uninstall \\" - print "uninstall.libs \\" - printf "uninstall.%s ::\n", name -- if ( ShlibVer == "cygdll" ) { -+ if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw") { - - printf "\t@echo uninstalling $(DESTDIR)$(bindir)/%s\n", end_name - printf "\t-@rm -f $(DESTDIR)$(bindir)/%s\n", end_name -@@ -371,11 +424,7 @@ - removelinks("$(DESTDIR)$(libdir)") - if ( overwrite == "yes" && name == "ncurses" ) - { -- if ( ShlibVer == "cygdll" ) { -- ovr_name = sprintf("libcurses%s.a", suffix) -- } else { -- ovr_name = sprintf("libcurses%s", suffix) -- } -+ ovr_name = sprintf("libcurses%s", suffix) - printf "\t-@rm -f $(DESTDIR)$(libdir)/%s\n", ovr_name - } - } -@@ -388,20 +437,19 @@ - } - else if ( MODEL == "LIBTOOL" ) - { -- if ( $2 == "c++" ) { -- compile="CXX" -- } else { -- compile="CC" -- } - end_name = lib_name; - printf "../lib/%s : $(%s_OBJS)\n", lib_name, OBJS - if ( is_ticlib() ) { -- printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:$o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(TICS_LIST)\n", compile, lib_name, OBJS, libtool_version -+ which_list = "TICS_LIST"; - } else if ( is_termlib() ) { -- printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:$o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(TINFO_LIST)\n", compile, lib_name, OBJS, libtool_version -+ which_list = "TINFO_LIST"; - } else { -- printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:$o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(SHLIB_LIST)\n", compile, lib_name, OBJS, libtool_version -+ which_list = "SHLIB_LIST"; - } -+ printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) $(%s) \\\n", CC_NAME, CC_FLAG; -+ printf "\t\t-o %s $(%s_OBJS:$o=.lo) \\\n", lib_name, OBJS; -+ printf "\t\t-rpath $(DESTDIR)$(libdir) \\\n"; -+ printf "\t\t%s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(%s) $(LDFLAGS)\n", libtool_version, which_list; - print "" - print "install \\" - print "install.libs \\" -@@ -419,7 +467,7 @@ - { - end_name = lib_name; - printf "../lib/%s : $(%s_OBJS)\n", lib_name, OBJS -- printf "\t$(AR) $(ARFLAGS) $@ $?\n" -+ printf "\t$(%sAR) $(%sARFLAGS) $@ $?\n", TOOL_PREFIX, TOOL_PREFIX; - printf "\t$(RANLIB) $@\n" - if ( host == "vxworks" ) - { -diff -Naur ncurses-5.9/mk-dlls.sh.in ncurses-5.9.patch/mk-dlls.sh.in ---- ncurses-5.9/mk-dlls.sh.in 2010-12-25 23:25:41.000000000 +0100 -+++ ncurses-5.9.patch/mk-dlls.sh.in 1970-01-01 01:00:00.000000000 +0100 -@@ -1,114 +0,0 @@ --#!/bin/sh --# $Id: mk-dlls.sh.in,v 1.3 2010/12/25 22:25:41 tom Exp $ --############################################################################## --# Copyright (c) 2008,2010 Free Software Foundation, Inc. # --# # --# Permission is hereby granted, free of charge, to any person obtaining a # --# copy of this software and associated documentation files (the "Software"), # --# to deal in the Software without restriction, including without limitation # --# the rights to use, copy, modify, merge, publish, distribute, distribute # --# with modifications, sublicense, and/or sell copies of the Software, and to # --# permit persons to whom the Software is furnished to do so, subject to the # --# following conditions: # --# # --# The above copyright notice and this permission notice shall be included in # --# all copies or substantial portions of the Software. # --# # --# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # --# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # --# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # --# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # --# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # --# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # --# DEALINGS IN THE SOFTWARE. # --# # --# Except as contained in this notice, the name(s) of the above copyright # --# holders shall not be used in advertising or otherwise to promote the sale, # --# use or other dealings in this Software without prior written # --# authorization. # --############################################################################## --# --# Author: Juergen Pfeifer --# --# Build DLLs on MinGW --# --LC_ALL=C @CC@ -v 2>&1 | grep Target | grep mingw --if [ $? -eq 1 ]; then -- echo "$0 requires a mingw environment" >&2 --else -- mkdir "$TEMP/tmp-dll" -- cat > "$TEMP/tmp-dll/arch.c" <<EOF --#include <stdio.h> --int main() --{ -- printf("%d",8*sizeof(void*)); -- return(0); --} --EOF -- pushd "$TEMP/tmp-dll" -- @CC@ -o arch arch.c -- ARCH=`./arch` -- cd .. -- rm -rf tmp-dll -- popd -- echo $ARCH > mingw_arch -- echo Building DLLs and Import Libraries for Win${ARCH} -- -- if [ -d lib ]; then -- cf="-shared" -- lf="--enable-auto-import" -- pushd lib 2>&1 >/dev/null -- for t in "" "t" -- do -- for m in "" "_g" -- do -- if [ -f libncurses${t}${m}.a ]; then -- f=libncurses${t}${m}.a -- g=ncurses${t}${m} -- gi=libw${g}.dll.a -- td=$TEMP/tmp-${g} -- bd=`pwd` -- rm -rf "${td}" -- mkdir "${td}" -- pushd "${td}" -- ar x "${bd}/${f}" `ar t "${bd}/${f}"` -- @CC@ $cf -o w${g}.dll -Wl,--out-implib,${gi} -Wl,--output-def,w${g}.def -Wl,$lf `ar t "${bd}/$f"` @LIBS@ -- lib //NOLOGO /MACHINE:i386 /DEF:w${g}.def -- rm -f `ar t "${bd}/$f"` -- mv w${g}.dll "${bd}" -- mv w${g}.lib "${bd}" -- mv ${gi} "${bd}" -- popd -- rm -rf "${td}" -- -- for l in panel menu form -- do -- for f in lib${l}${t}${m}.a -- do -- g=${l}${t}${m} -- td=$TEMP/tmp-${g} -- gi2=libw${g}.dll.a -- bd=`pwd` -- rm -rf "${td}" -- mkdir "${td}" -- echo $g -- pushd "${td}" -- ar x "${bd}/$f" `ar t "${bd}/$f"` -- @CC@ $cf -o w${g}.dll -Wl,--out-implib,${gi2} -Wl,--output-def,w${g}.def -Wl,$lf `ar t "${bd}/$f"` "${bd}/${gi}" @LIBS@ -- lib //NOLOGO /MACHINE:i386 /DEF:w${g}.def -- rm -f `ar t "${bd}/$f"` -- mv w${g}.dll "${bd}" -- mv w${g}.lib "${bd}" -- mv ${gi2} "${bd}" -- popd -- rm -rf "${td}" -- done -- done -- fi -- done -- done -- popd -- else -- echo lib has not been built >&2 -- fi --fi -diff -Naur ncurses-5.9/mk-hdr.awk ncurses-5.9.patch/mk-hdr.awk ---- ncurses-5.9/mk-hdr.awk 2010-05-15 22:10:42.000000000 +0200 -+++ ncurses-5.9.patch/mk-hdr.awk 2014-09-01 16:33:22.369792144 +0200 -@@ -1,6 +1,6 @@ --# $Id: mk-hdr.awk,v 1.3 2010/05/15 20:10:42 tom Exp $ -+# $Id: mk-hdr.awk,v 1.4 2013/08/03 23:09:42 tom Exp $ - ############################################################################## --# Copyright (c) 2007,2010 Free Software Foundation, Inc. # -+# Copyright (c) 2007-2010,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -73,12 +73,12 @@ - END { - if ( count > 0 ) - { -- print "${DESTDIR}${includedir} :" -+ print "${INCLUDEDIR} :" - print " mkdir -p $@" - print "" - print "install \\" - print "install.libs \\" -- print "install.includes :: ${AUTO_SRC} ${DESTDIR}${includedir} \\" -+ print "install.includes :: ${AUTO_SRC} ${INCLUDEDIR} \\" - - for (i = 0; i < count - 1; ++i) { - printf " %s \\\n", data[i] -@@ -86,9 +86,9 @@ - printf " %s\n", data[count - 1] - - for (i = 0; i < count; ++i) { -- printf " @ (cd ${DESTDIR}${includedir} && rm -f %s) ; ../headers.sh ${INSTALL_DATA} ${DESTDIR}${includedir} ${srcdir} %s\n", basename(data[i]), data[i] -+ printf " @ (cd ${INCLUDEDIR} && rm -f %s) ; ../headers.sh ${INSTALL_DATA} ${INCLUDEDIR} ${srcdir} %s\n", basename(data[i]), data[i] - if (data[i] == "curses.h" && compat == "yes") { -- printf " @ (cd ${DESTDIR}${includedir} && rm -f ncurses.h && ${LN_S} %s ncurses.h)\n", data[i] -+ printf " @ (cd ${INCLUDEDIR} && rm -f ncurses.h && ${LN_S} %s ncurses.h)\n", data[i] - } - } - print "" -@@ -97,9 +97,9 @@ - print "uninstall.includes ::" - - for (i = 0; i < count; ++i) { -- printf " -@ (cd ${DESTDIR}${includedir} && rm -f %s)\n", basename(data[i]) -+ printf " -@ (cd ${INCLUDEDIR} && rm -f %s)\n", basename(data[i]) - if (data[i] == "curses.h" && compat == "yes") { -- printf " -@ (cd ${DESTDIR}${includedir} && rm -f ncurses.h)\n" -+ printf " -@ (cd ${INCLUDEDIR} && rm -f ncurses.h)\n" - } - } - } -diff -Naur ncurses-5.9/ncurses/base/define_key.c ncurses-5.9.patch/ncurses/base/define_key.c ---- ncurses-5.9/ncurses/base/define_key.c 2009-11-28 23:53:17.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/define_key.c 2014-09-01 16:33:22.370792146 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -33,7 +33,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: define_key.c,v 1.20 2009/11/28 22:53:17 tom Exp $") -+MODULE_ID("$Id: define_key.c,v 1.21 2014/03/08 20:32:59 tom Exp $") - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(define_key) (NCURSES_SP_DCLx const char *str, int keycode) -@@ -47,7 +47,7 @@ - unsigned ukey = (unsigned) keycode; - - #ifdef USE_TERM_DRIVER --#define CallHasKey(keycode) CallDriver_1(SP_PARM, kyExist, keycode) -+#define CallHasKey(keycode) CallDriver_1(SP_PARM, td_kyExist, keycode) - #else - #define CallHasKey(keycode) NCURSES_SP_NAME(has_key)(NCURSES_SP_ARGx keycode) - #endif -diff -Naur ncurses-5.9/ncurses/base/keybound.c ncurses-5.9.patch/ncurses/base/keybound.c ---- ncurses-5.9/ncurses/base/keybound.c 2009-10-25 00:15:47.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/keybound.c 2014-09-01 16:33:22.370792146 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1999-2006,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1999-2009,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -33,7 +33,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: keybound.c,v 1.10 2009/10/24 22:15:47 tom Exp $") -+MODULE_ID("$Id: keybound.c,v 1.11 2011/10/22 16:47:05 tom Exp $") - - /* - * Returns the count'th string definition which is associated with the -@@ -46,7 +46,10 @@ - - T((T_CALLED("keybound(%p, %d,%d)"), (void *) SP_PARM, code, count)); - if (SP_PARM != 0 && code >= 0) { -- result = _nc_expand_try(SP_PARM->_keytry, (unsigned) code, &count, 0); -+ result = _nc_expand_try(SP_PARM->_keytry, -+ (unsigned) code, -+ &count, -+ (size_t) 0); - } - returnPtr(result); - } -diff -Naur ncurses-5.9/ncurses/base/keyok.c ncurses-5.9.patch/ncurses/base/keyok.c ---- ncurses-5.9/ncurses/base/keyok.c 2009-10-25 00:15:47.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/keyok.c 2014-09-01 16:33:22.370792146 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -33,7 +33,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: keyok.c,v 1.10 2009/10/24 22:15:47 tom Exp $") -+MODULE_ID("$Id: keyok.c,v 1.14 2014/03/08 20:32:59 tom Exp $") - - /* - * Enable (or disable) ncurses' interpretation of a keycode by adding (or -@@ -50,37 +50,47 @@ - { - int code = ERR; - -- T((T_CALLED("keyok(%p, %d,%d)"), (void *) SP_PARM, c, flag)); -+ if (HasTerminal(SP_PARM)) { -+ T((T_CALLED("keyok(%p, %d,%d)"), (void *) SP_PARM, c, flag)); - #ifdef USE_TERM_DRIVER -- code = CallDriver_2(sp, kyOk, c, flag); -+ code = CallDriver_2(sp, td_kyOk, c, flag); - #else -- T((T_CALLED("keyok(%d,%d)"), c, flag)); -- if (c >= 0) { -- int count = 0; -- char *s; -- unsigned ch = (unsigned) c; -- -- if (flag) { -- while ((s = _nc_expand_try(SP_PARM->_key_ok, ch, &count, 0)) != 0 -- && _nc_remove_key(&(SP_PARM->_key_ok), ch)) { -- code = _nc_add_to_try(&(SP_PARM->_keytry), s, ch); -- free(s); -- count = 0; -- if (code != OK) -- break; -- } -- } else { -- while ((s = _nc_expand_try(SP_PARM->_keytry, ch, &count, 0)) != 0 -- && _nc_remove_key(&(SP_PARM->_keytry), ch)) { -- code = _nc_add_to_try(&(SP_PARM->_key_ok), s, ch); -- free(s); -- count = 0; -- if (code != OK) -- break; -+ T((T_CALLED("keyok(%d,%d)"), c, flag)); -+ if (c >= 0) { -+ int count = 0; -+ char *s; -+ unsigned ch = (unsigned) c; -+ -+ if (flag) { -+ while ((s = _nc_expand_try(SP_PARM->_key_ok, -+ ch, &count, (size_t) 0)) != 0) { -+ if (_nc_remove_key(&(SP_PARM->_key_ok), ch)) { -+ code = _nc_add_to_try(&(SP_PARM->_keytry), s, ch); -+ free(s); -+ count = 0; -+ if (code != OK) -+ break; -+ } else { -+ free(s); -+ } -+ } -+ } else { -+ while ((s = _nc_expand_try(SP_PARM->_keytry, -+ ch, &count, (size_t) 0)) != 0) { -+ if (_nc_remove_key(&(SP_PARM->_keytry), ch)) { -+ code = _nc_add_to_try(&(SP_PARM->_key_ok), s, ch); -+ free(s); -+ count = 0; -+ if (code != OK) -+ break; -+ } else { -+ free(s); -+ } -+ } - } - } -- } - #endif -+ } - returnCode(code); - } - -diff -Naur ncurses-5.9/ncurses/base/lib_addch.c ncurses-5.9.patch/ncurses/base/lib_addch.c ---- ncurses-5.9/ncurses/base/lib_addch.c 2010-04-25 00:41:05.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_addch.c 2014-09-01 16:33:22.370792146 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,7 +36,7 @@ - #include <curses.priv.h> - #include <ctype.h> - --MODULE_ID("$Id: lib_addch.c,v 1.124 2010/04/24 22:41:05 tom Exp $") -+MODULE_ID("$Id: lib_addch.c,v 1.128 2014/02/23 01:21:08 tom Exp $") - - static const NCURSES_CH_T blankchar = NewChar(BLANK_TEXT); - -@@ -209,7 +209,8 @@ - buffer[WINDOW_EXT(win, addch_used)] = '\0'; - if ((len = (int) mbrtowc(&result, - buffer, -- WINDOW_EXT(win, addch_used), &state)) > 0) { -+ (size_t) WINDOW_EXT(win, addch_used), -+ &state)) > 0) { - attr_t attrs = AttrOf(CHDEREF(ch)); - if_EXT_COLORS(int pair = GetPair(CHDEREF(ch))); - SetChar(CHDEREF(ch), result, attrs); -@@ -411,10 +412,12 @@ - #endif - const char *s = NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx t); - int tabsize = 8; -+ - /* - * If we are using the alternate character set, forget about locale. - * Otherwise, if unctrl() returns a single-character or the locale -- * claims the code is printable, treat it that way. -+ * claims the code is printable (and not also a control character), -+ * treat it that way. - */ - if ((AttrOf(ch) & A_ALTCHARSET) - || ( -@@ -424,14 +427,15 @@ - s[1] == 0 - ) - || ( -- isprint(t) -+ (isprint((int)t) && !iscntrl((int)t)) - #if USE_WIDEC_SUPPORT - || ((sp == 0 || !sp->_legacy_coding) && - (WINDOW_EXT(win, addch_used) - || !_nc_is_charable(CharOf(ch)))) - #endif -- )) -+ )) { - return waddch_literal(win, ch); -+ } - - /* - * Handle carriage control and other codes that are not printable, or are -diff -Naur ncurses-5.9/ncurses/base/lib_addstr.c ncurses-5.9.patch/ncurses/base/lib_addstr.c ---- ncurses-5.9/ncurses/base/lib_addstr.c 2010-12-19 02:22:58.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_addstr.c 2014-09-01 16:33:22.370792146 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -44,7 +44,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_addstr.c,v 1.51 2010/12/19 01:22:58 tom Exp $") -+MODULE_ID("$Id: lib_addstr.c,v 1.52 2011/05/28 23:02:09 tom Exp $") - - NCURSES_EXPORT(int) - waddnstr(WINDOW *win, const char *astr, int n) -@@ -119,8 +119,10 @@ - _nc_wchstrlen(const cchar_t *s) - { - int result = 0; -- while (CharOf(s[result]) != L'\0') { -- result++; -+ if (s != 0) { -+ while (CharOf(s[result]) != L'\0') { -+ result++; -+ } - } - return result; - } -diff -Naur ncurses-5.9/ncurses/base/lib_beep.c ncurses-5.9.patch/ncurses/base/lib_beep.c ---- ncurses-5.9/ncurses/base/lib_beep.c 2009-10-25 00:02:14.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_beep.c 2014-09-01 16:33:22.370792146 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -46,7 +46,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_beep.c,v 1.15 2009/10/24 22:02:14 tom Exp $") -+MODULE_ID("$Id: lib_beep.c,v 1.17 2014/03/08 20:32:59 tom Exp $") - - /* - * beep() -@@ -65,18 +65,15 @@ - - #ifdef USE_TERM_DRIVER - if (SP_PARM != 0) -- res = CallDriver_1(SP_PARM, doBeepOrFlash, TRUE); -+ res = CallDriver_1(SP_PARM, td_doBeepOrFlash, TRUE); - #else - /* FIXME: should make sure that we are not in altchar mode */ - if (cur_term == 0) { - res = ERR; - } else if (bell) { -- TPUTS_TRACE("bell"); -- res = putp(bell); -- _nc_flush(); -+ res = NCURSES_PUTP2_FLUSH("bell", bell); - } else if (flash_screen) { -- TPUTS_TRACE("flash_screen"); -- res = putp(flash_screen); -+ res = NCURSES_PUTP2_FLUSH("flash_screen", flash_screen); - _nc_flush(); - } - #endif -diff -Naur ncurses-5.9/ncurses/base/lib_bkgd.c ncurses-5.9.patch/ncurses/base/lib_bkgd.c ---- ncurses-5.9/ncurses/base/lib_bkgd.c 2011-01-22 20:47:37.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_bkgd.c 2014-09-01 16:33:22.370792146 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,7 +36,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_bkgd.c,v 1.43 2011/01/22 19:47:37 tom Exp $") -+MODULE_ID("$Id: lib_bkgd.c,v 1.48 2012/12/09 01:01:19 tom Exp $") - - /* - * Set the window's background information. -@@ -85,6 +85,7 @@ - cchar_t wch; - int tmp; - -+ memset(&wch, 0, sizeof(wch)); - (void) wgetbkgrnd(win, &wch); - tmp = _nc_to_char((wint_t) CharOf(wch)); - -@@ -118,16 +119,18 @@ - { - int code = ERR; - int x, y; -- NCURSES_CH_T new_bkgd = CHDEREF(ch); - - T((T_CALLED("wbkgd(%p,%s)"), (void *) win, _tracech_t(ch))); - - if (win) { -+ NCURSES_CH_T new_bkgd = CHDEREF(ch); - NCURSES_CH_T old_bkgrnd; -+ -+ memset(&old_bkgrnd, 0, sizeof(old_bkgrnd)); - wgetbkgrnd(win, &old_bkgrnd); - - (void) wbkgrndset(win, CHREF(new_bkgd)); -- (void) wattrset(win, AttrOf(win->_nc_bkgd)); -+ (void) wattrset(win, (int) AttrOf(win->_nc_bkgd)); - - for (y = 0; y <= win->_maxy; y++) { - for (x = 0; x <= win->_maxx; x++) { -diff -Naur ncurses-5.9/ncurses/base/lib_chgat.c ncurses-5.9.patch/ncurses/base/lib_chgat.c ---- ncurses-5.9/ncurses/base/lib_chgat.c 2010-04-01 01:38:02.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_chgat.c 2014-09-01 16:33:22.370792146 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,14 +42,22 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_chgat.c,v 1.9 2010/03/31 23:38:02 tom Exp $") -+MODULE_ID("$Id: lib_chgat.c,v 1.10 2014/02/01 22:13:31 tom Exp $") - - NCURSES_EXPORT(int) --wchgat(WINDOW *win, int n, attr_t attr, short color, const void *opts GCC_UNUSED) -+wchgat(WINDOW *win, -+ int n, -+ attr_t attr, -+ NCURSES_PAIRS_T color, -+ const void *opts GCC_UNUSED) - { - int i; - -- T((T_CALLED("wchgat(%p,%d,%s,%d)"), (void *) win, n, _traceattr(attr), color)); -+ T((T_CALLED("wchgat(%p,%d,%s,%d)"), -+ (void *) win, -+ n, -+ _traceattr(attr), -+ (int) color)); - - if (win) { - struct ldat *line = &(win->_line[win->_cury]); -diff -Naur ncurses-5.9/ncurses/base/lib_color.c ncurses-5.9.patch/ncurses/base/lib_color.c ---- ncurses-5.9/ncurses/base/lib_color.c 2010-04-25 00:57:53.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_color.c 2014-09-01 16:33:22.371792147 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -45,7 +45,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_color.c,v 1.98 2010/04/24 22:57:53 tom Exp $") -+MODULE_ID("$Id: lib_color.c,v 1.110 2014/03/08 20:04:44 tom Exp $") - - #ifdef USE_TERM_DRIVER - #define CanChange InfoOf(SP_PARM).canchange -@@ -188,7 +188,7 @@ - set_background_color(NCURSES_SP_DCLx int bg, NCURSES_SP_OUTC outc) - { - #ifdef USE_TERM_DRIVER -- CallDriver_3(SP_PARM, color, FALSE, bg, outc); -+ CallDriver_3(SP_PARM, td_color, FALSE, bg, outc); - #else - if (set_a_background) { - TPUTS_TRACE("set_a_background"); -@@ -208,7 +208,7 @@ - set_foreground_color(NCURSES_SP_DCLx int fg, NCURSES_SP_OUTC outc) - { - #ifdef USE_TERM_DRIVER -- CallDriver_3(SP_PARM, color, TRUE, fg, outc); -+ CallDriver_3(SP_PARM, td_color, TRUE, fg, outc); - #else - if (set_a_foreground) { - TPUTS_TRACE("set_a_foreground"); -@@ -258,14 +258,13 @@ - reset_color_pair(NCURSES_SP_DCL0) - { - #ifdef USE_TERM_DRIVER -- return CallDriver(SP_PARM, rescol); -+ return CallDriver(SP_PARM, td_rescol); - #else - bool result = FALSE; - - (void) SP_PARM; - if (orig_pair != 0) { -- TPUTS_TRACE("orig_pair"); -- putp(orig_pair); -+ (void) NCURSES_PUTP2("orig_pair", orig_pair); - result = TRUE; - } - return result; -@@ -289,11 +288,10 @@ - result = TRUE; - - #ifdef USE_TERM_DRIVER -- result = CallDriver(SP_PARM, rescolors); -+ result = CallDriver(SP_PARM, td_rescolors); - #else - if (orig_colors != 0) { -- TPUTS_TRACE("orig_colors"); -- putp(orig_colors); -+ NCURSES_PUTP2("orig_colors", orig_colors); - result = TRUE; - } - #endif -@@ -331,6 +329,13 @@ - default_bg(NCURSES_SP_ARG), - NCURSES_SP_NAME(_nc_outch)); - } -+#if !NCURSES_EXT_COLORS -+ /* -+ * Without ext-colors, we cannot represent more than 256 color pairs. -+ */ -+ if (maxpairs > 256) -+ maxpairs = 256; -+#endif - - if (maxpairs > 0 && maxcolors > 0) { - SP_PARM->_pair_limit = maxpairs; -@@ -383,10 +388,10 @@ - - /* This function was originally written by Daniel Weaver <danw@znyx.com> */ - static void --rgb2hls(short r, short g, short b, short *h, short *l, short *s) -+rgb2hls(int r, int g, int b, NCURSES_COLOR_T *h, NCURSES_COLOR_T *l, NCURSES_COLOR_T *s) - /* convert RGB to HLS system */ - { -- short min, max, t; -+ int min, max, t; - - if ((min = g < r ? g : r) > b) - min = b; -@@ -394,7 +399,7 @@ - max = b; - - /* calculate lightness */ -- *l = (short) ((min + max) / 20); -+ *l = (NCURSES_COLOR_T) ((min + max) / 20); - - if (min == max) { /* black, white and all shades of gray */ - *h = 0; -@@ -404,19 +409,19 @@ - - /* calculate saturation */ - if (*l < 50) -- *s = (short) (((max - min) * 100) / (max + min)); -+ *s = (NCURSES_COLOR_T) (((max - min) * 100) / (max + min)); - else -- *s = (short) (((max - min) * 100) / (2000 - max - min)); -+ *s = (NCURSES_COLOR_T) (((max - min) * 100) / (2000 - max - min)); - - /* calculate hue */ - if (r == max) -- t = (short) (120 + ((g - b) * 60) / (max - min)); -+ t = (NCURSES_COLOR_T) (120 + ((g - b) * 60) / (max - min)); - else if (g == max) -- t = (short) (240 + ((b - r) * 60) / (max - min)); -+ t = (NCURSES_COLOR_T) (240 + ((b - r) * 60) / (max - min)); - else -- t = (short) (360 + ((r - g) * 60) / (max - min)); -+ t = (NCURSES_COLOR_T) (360 + ((r - g) * 60) / (max - min)); - -- *h = t % 360; -+ *h = (NCURSES_COLOR_T) (t % 360); - } - - /* -@@ -424,13 +429,20 @@ - * values. - */ - NCURSES_EXPORT(int) --NCURSES_SP_NAME(init_pair) (NCURSES_SP_DCLx short pair, short f, short b) -+NCURSES_SP_NAME(init_pair) (NCURSES_SP_DCLx -+ NCURSES_PAIRS_T pair, -+ NCURSES_COLOR_T f, -+ NCURSES_COLOR_T b) - { - colorpair_t result; - colorpair_t previous; - int maxcolors; - -- T((T_CALLED("init_pair(%p,%d,%d,%d)"), (void *) SP_PARM, pair, f, b)); -+ T((T_CALLED("init_pair(%p,%d,%d,%d)"), -+ (void *) SP_PARM, -+ (int) pair, -+ (int) f, -+ (int) b)); - - if (!ValidPair(pair)) - returnCode(ERR); -@@ -439,7 +451,7 @@ - - previous = SP_PARM->_color_pairs[pair]; - #if NCURSES_EXT_FUNCS -- if (SP_PARM->_default_color) { -+ if (SP_PARM->_default_color || SP_PARM->_assumed_color) { - bool isDefault = FALSE; - bool wasDefault = FALSE; - int default_pairs = SP_PARM->_default_pairs; -@@ -498,8 +510,9 @@ - { - if ((f < 0) || !OkColorHi(f) - || (b < 0) || !OkColorHi(b) -- || (pair < 1)) -+ || (pair < 1)) { - returnCode(ERR); -+ } - } - - /* -@@ -534,22 +547,26 @@ - SET_SCREEN_PAIR(SP_PARM, (chtype) (~0)); /* force attribute update */ - - #ifdef USE_TERM_DRIVER -- CallDriver_3(SP_PARM, initpair, pair, f, b); -+ CallDriver_3(SP_PARM, td_initpair, pair, f, b); - #else - if (initialize_pair && InPalette(f) && InPalette(b)) { - const color_t *tp = DefaultPalette; - - TR(TRACE_ATTRS, - ("initializing pair: pair = %d, fg=(%d,%d,%d), bg=(%d,%d,%d)", -- pair, -- tp[f].red, tp[f].green, tp[f].blue, -- tp[b].red, tp[b].green, tp[b].blue)); -- -- TPUTS_TRACE("initialize_pair"); -- putp(TPARM_7(initialize_pair, -- pair, -- tp[f].red, tp[f].green, tp[f].blue, -- tp[b].red, tp[b].green, tp[b].blue)); -+ (int) pair, -+ (int) tp[f].red, (int) tp[f].green, (int) tp[f].blue, -+ (int) tp[b].red, (int) tp[b].green, (int) tp[b].blue)); -+ -+ NCURSES_PUTP2("initialize_pair", -+ TPARM_7(initialize_pair, -+ pair, -+ (int) tp[f].red, -+ (int) tp[f].green, -+ (int) tp[f].blue, -+ (int) tp[b].red, -+ (int) tp[b].green, -+ (int) tp[b].blue)); - } - #endif - -@@ -558,7 +575,7 @@ - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(int) --init_pair(short pair, short f, short b) -+init_pair(NCURSES_COLOR_T pair, NCURSES_COLOR_T f, NCURSES_COLOR_T b) - { - return NCURSES_SP_NAME(init_pair) (CURRENT_SCREEN, pair, f, b); - } -@@ -568,7 +585,10 @@ - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(init_color) (NCURSES_SP_DCLx -- short color, short r, short g, short b) -+ NCURSES_COLOR_T color, -+ NCURSES_COLOR_T r, -+ NCURSES_COLOR_T g, -+ NCURSES_COLOR_T b) - { - int result = ERR; - int maxcolors; -@@ -605,10 +625,10 @@ - } - - #ifdef USE_TERM_DRIVER -- CallDriver_4(SP_PARM, initcolor, color, r, g, b); -+ CallDriver_4(SP_PARM, td_initcolor, color, r, g, b); - #else -- TPUTS_TRACE("initialize_color"); -- putp(TPARM_4(initialize_color, color, r, g, b)); -+ NCURSES_PUTP2("initialize_color", -+ TPARM_4(initialize_color, color, r, g, b)); - #endif - SP_PARM->_color_defs = max(color + 1, SP_PARM->_color_defs); - -@@ -619,7 +639,10 @@ - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(int) --init_color(short color, short r, short g, short b) -+init_color(NCURSES_COLOR_T color, -+ NCURSES_COLOR_T r, -+ NCURSES_COLOR_T g, -+ NCURSES_COLOR_T b) - { - return NCURSES_SP_NAME(init_color) (CURRENT_SCREEN, color, r, g, b); - } -@@ -628,8 +651,15 @@ - NCURSES_EXPORT(bool) - NCURSES_SP_NAME(can_change_color) (NCURSES_SP_DCL) - { -+ int result = FALSE; -+ - T((T_CALLED("can_change_color(%p)"), (void *) SP_PARM)); -- returnCode((CanChange != 0) ? TRUE : FALSE); -+ -+ if (HasTerminal(SP_PARM) && (CanChange != 0)) { -+ result = TRUE; -+ } -+ -+ returnCode(result); - } - - #if NCURSES_SP_FUNCS -@@ -643,20 +673,22 @@ - NCURSES_EXPORT(bool) - NCURSES_SP_NAME(has_colors) (NCURSES_SP_DCL0) - { -- int code; -+ int code = FALSE; - - (void) SP_PARM; - T((T_CALLED("has_colors()"))); -+ if (HasTerminal(SP_PARM)) { - #ifdef USE_TERM_DRIVER -- code = HasColor; -+ code = HasColor; - #else -- code = ((VALID_NUMERIC(max_colors) && VALID_NUMERIC(max_pairs) -- && (((set_foreground != NULL) -- && (set_background != NULL)) -- || ((set_a_foreground != NULL) -- && (set_a_background != NULL)) -- || set_color_pair)) ? TRUE : FALSE); -+ code = ((VALID_NUMERIC(max_colors) && VALID_NUMERIC(max_pairs) -+ && (((set_foreground != NULL) -+ && (set_background != NULL)) -+ || ((set_a_foreground != NULL) -+ && (set_a_background != NULL)) -+ || set_color_pair)) ? TRUE : FALSE); - #endif -+ } - returnCode(code); - } - -@@ -670,7 +702,10 @@ - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(color_content) (NCURSES_SP_DCLx -- short color, short *r, short *g, short *b) -+ NCURSES_COLOR_T color, -+ NCURSES_COLOR_T *r, -+ NCURSES_COLOR_T *g, -+ NCURSES_COLOR_T *b) - { - int result = ERR; - int maxcolors; -@@ -710,7 +745,10 @@ - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(int) --color_content(short color, short *r, short *g, short *b) -+color_content(NCURSES_COLOR_T color, -+ NCURSES_COLOR_T *r, -+ NCURSES_COLOR_T *g, -+ NCURSES_COLOR_T *b) - { - return NCURSES_SP_NAME(color_content) (CURRENT_SCREEN, color, r, g, b); - } -@@ -718,21 +756,23 @@ - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(pair_content) (NCURSES_SP_DCLx -- short pair, short *f, short *b) -+ NCURSES_PAIRS_T pair, -+ NCURSES_COLOR_T *f, -+ NCURSES_COLOR_T *b) - { - int result; - - T((T_CALLED("pair_content(%p,%d,%p,%p)"), - (void *) SP_PARM, -- pair, -+ (int) pair, - (void *) f, - (void *) b)); - - if (!ValidPair(pair)) { - result = ERR; - } else { -- NCURSES_COLOR_T fg = FORE_OF(SP_PARM->_color_pairs[pair]); -- NCURSES_COLOR_T bg = BACK_OF(SP_PARM->_color_pairs[pair]); -+ NCURSES_COLOR_T fg = (NCURSES_COLOR_T) FORE_OF(SP_PARM->_color_pairs[pair]); -+ NCURSES_COLOR_T bg = (NCURSES_COLOR_T) BACK_OF(SP_PARM->_color_pairs[pair]); - - #if NCURSES_EXT_FUNCS - if (fg == COLOR_DEFAULT) -@@ -748,8 +788,8 @@ - - TR(TRACE_ATTRS, ("...pair_content(%p,%d,%d,%d)", - (void *) SP_PARM, -- pair, -- fg, bg)); -+ (int) pair, -+ (int) fg, (int) bg)); - result = OK; - } - returnCode(result); -@@ -757,7 +797,7 @@ - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(int) --pair_content(short pair, short *f, short *b) -+pair_content(NCURSES_COLOR_T pair, NCURSES_COLOR_T *f, NCURSES_COLOR_T *b) - { - return NCURSES_SP_NAME(pair_content) (CURRENT_SCREEN, pair, f, b); - } -@@ -765,17 +805,18 @@ - - NCURSES_EXPORT(void) - NCURSES_SP_NAME(_nc_do_color) (NCURSES_SP_DCLx -- short old_pair, -- short pair, -- bool reverse, -+ int old_pair, -+ int pair, -+ int reverse, - NCURSES_SP_OUTC outc) - { - #ifdef USE_TERM_DRIVER -- CallDriver_4(SP_PARM, docolor, old_pair, pair, reverse, outc); -+ CallDriver_4(SP_PARM, td_docolor, old_pair, pair, reverse, outc); - #else - NCURSES_COLOR_T fg = COLOR_DEFAULT; - NCURSES_COLOR_T bg = COLOR_DEFAULT; -- NCURSES_COLOR_T old_fg, old_bg; -+ NCURSES_COLOR_T old_fg = -1; -+ NCURSES_COLOR_T old_bg = -1; - - if (!ValidPair(pair)) { - return; -@@ -787,13 +828,14 @@ - 1, outc); - return; - } else if (SP_PARM != 0) { -- pair_content((short) pair, &fg, &bg); -+ if (pair_content((NCURSES_COLOR_T) pair, &fg, &bg) == ERR) -+ return; - } - } - - if (old_pair >= 0 - && SP_PARM != 0 -- && pair_content(old_pair, &old_fg, &old_bg) != ERR) { -+ && pair_content((NCURSES_COLOR_T) old_pair, &old_fg, &old_bg) != ERR) { - if ((isDefaultColor(fg) && !isDefaultColor(old_fg)) - || (isDefaultColor(bg) && !isDefaultColor(old_bg))) { - #if NCURSES_EXT_FUNCS -@@ -822,9 +864,9 @@ - - #if NCURSES_EXT_FUNCS - if (isDefaultColor(fg)) -- fg = (short) default_fg(NCURSES_SP_ARG); -+ fg = (NCURSES_COLOR_T) default_fg(NCURSES_SP_ARG); - if (isDefaultColor(bg)) -- bg = (short) default_bg(NCURSES_SP_ARG); -+ bg = (NCURSES_COLOR_T) default_bg(NCURSES_SP_ARG); - #endif - - if (reverse) { -@@ -847,7 +889,7 @@ - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(void) --_nc_do_color(short old_pair, short pair, bool reverse, NCURSES_OUTC outc) -+_nc_do_color(int old_pair, int pair, int reverse, NCURSES_OUTC outc) - { - SetSafeOutcWrapper(outc); - NCURSES_SP_NAME(_nc_do_color) (CURRENT_SCREEN, -diff -Naur ncurses-5.9/ncurses/base/lib_colorset.c ncurses-5.9.patch/ncurses/base/lib_colorset.c ---- ncurses-5.9/ncurses/base/lib_colorset.c 2009-10-25 00:02:14.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_colorset.c 2014-09-01 16:33:22.371792147 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -41,14 +41,14 @@ - #include <curses.priv.h> - #include <ctype.h> - --MODULE_ID("$Id: lib_colorset.c,v 1.13 2009/10/24 22:02:14 tom Exp $") -+MODULE_ID("$Id: lib_colorset.c,v 1.14 2014/02/01 22:10:42 tom Exp $") - - NCURSES_EXPORT(int) --wcolor_set(WINDOW *win, short color_pair_number, void *opts) -+wcolor_set(WINDOW *win, NCURSES_PAIRS_T color_pair_number, void *opts) - { - int code = ERR; - -- T((T_CALLED("wcolor_set(%p,%d)"), (void *) win, color_pair_number)); -+ T((T_CALLED("wcolor_set(%p,%d)"), (void *) win, (int) color_pair_number)); - if (win - && !opts - && (SP != 0) -diff -Naur ncurses-5.9/ncurses/base/lib_dft_fgbg.c ncurses-5.9.patch/ncurses/base/lib_dft_fgbg.c ---- ncurses-5.9/ncurses/base/lib_dft_fgbg.c 2009-10-25 00:15:00.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_dft_fgbg.c 2014-09-01 16:33:22.371792147 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_dft_fgbg.c,v 1.25 2009/10/24 22:15:00 tom Exp $") -+MODULE_ID("$Id: lib_dft_fgbg.c,v 1.27 2014/03/08 20:32:59 tom Exp $") - - /* - * Modify the behavior of color-pair 0 so that the library doesn't assume that -@@ -70,7 +70,7 @@ - T((T_CALLED("assume_default_colors(%p,%d,%d)"), (void *) SP_PARM, fg, bg)); - #ifdef USE_TERM_DRIVER - if (sp != 0) -- code = CallDriver_2(sp, defaultcolors, fg, bg); -+ code = CallDriver_2(sp, td_defaultcolors, fg, bg); - #else - if ((orig_pair || orig_colors) && !initialize_pair) { - -@@ -80,6 +80,7 @@ - SP_PARM->_default_bg = isDefaultColor(bg) ? COLOR_DEFAULT : (bg & C_MASK); - if (SP_PARM->_color_pairs != 0) { - bool save = SP_PARM->_default_color; -+ SP_PARM->_assumed_color = TRUE; - SP_PARM->_default_color = TRUE; - init_pair(0, (short) fg, (short) bg); - SP_PARM->_default_color = save; -diff -Naur ncurses-5.9/ncurses/base/lib_driver.c ncurses-5.9.patch/ncurses/base/lib_driver.c ---- ncurses-5.9/ncurses/base/lib_driver.c 2010-12-20 01:29:17.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_driver.c 2014-09-01 16:33:22.371792147 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2008-2012,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -33,7 +33,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_driver.c,v 1.3 2010/12/20 00:29:17 tom Exp $") -+MODULE_ID("$Id: lib_driver.c,v 1.5 2014/03/08 20:32:59 tom Exp $") - - typedef struct DriverEntry { - const char *name; -@@ -43,9 +43,9 @@ - static DRIVER_ENTRY DriverTable[] = - { - #ifdef __MINGW32__ -- {"win", &_nc_WIN_DRIVER}, -+ {"win32con", &_nc_WIN_DRIVER}, - #endif -- {"tinfo", &_nc_TINFO_DRIVER} -+ {"tinfo", &_nc_TINFO_DRIVER} /* must be last */ - }; - - NCURSES_EXPORT(int) -@@ -63,7 +63,21 @@ - - for (i = 0; i < SIZEOF(DriverTable); i++) { - res = DriverTable[i].driver; -- if (res->CanHandle(TCB, name, errret)) { -+ /* -+ * Use "#" (a character which cannot begin a terminal's name) to -+ * select specific driver from the table. -+ * -+ * In principle, we could have more than one non-terminfo driver, -+ * e.g., "win32gui". -+ */ -+ if (name != 0 && *name == '#') { -+ size_t n = strlen(name + 1); -+ if (n != 0 -+ && strncmp(name + 1, DriverTable[i].name, n)) { -+ continue; -+ } -+ } -+ if (res->td_CanHandle(TCB, name, errret)) { - use = res; - break; - } -@@ -79,7 +93,7 @@ - NCURSES_SP_NAME(has_key) (SCREEN *sp, int keycode) - { - T((T_CALLED("has_key(%p, %d)"), (void *) sp, keycode)); -- returnCode(IsValidTIScreen(sp) ? CallDriver_1(sp, kyExist, keycode) : FALSE); -+ returnCode(IsValidTIScreen(sp) ? CallDriver_1(sp, td_kyExist, keycode) : FALSE); - } - - NCURSES_EXPORT(int) -@@ -94,7 +108,7 @@ - int code = ERR; - - if (0 != TerminalOf(sp)) -- code = CallDriver_2(sp, print, data, len); -+ code = CallDriver_2(sp, td_print, data, len); - return (code); - } - -@@ -112,7 +126,7 @@ - T((T_CALLED("doupdate(%p)"), (void *) sp)); - - if (IsValidScreen(sp)) -- code = CallDriver(sp, update); -+ code = CallDriver(sp, td_update); - - returnCode(code); - } -@@ -130,7 +144,7 @@ - TR(TRACE_CALLS | TRACE_MOVE, (T_CALLED("mvcur(%p,%d,%d,%d,%d)"), - (void *) sp, yold, xold, ynew, xnew)); - if (HasTerminal(sp)) { -- code = CallDriver_4(sp, hwcur, yold, xold, ynew, xnew); -+ code = CallDriver_4(sp, td_hwcur, yold, xold, ynew, xnew); - } - returnCode(code); - } -diff -Naur ncurses-5.9/ncurses/base/lib_endwin.c ncurses-5.9.patch/ncurses/base/lib_endwin.c ---- ncurses-5.9/ncurses/base/lib_endwin.c 2009-10-25 00:02:14.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_endwin.c 2014-09-01 16:33:22.371792147 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,7 +42,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_endwin.c,v 1.22 2009/10/24 22:02:14 tom Exp $") -+MODULE_ID("$Id: lib_endwin.c,v 1.23 2014/03/08 20:32:59 tom Exp $") - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(endwin) (NCURSES_SP_DCL0) -@@ -56,8 +56,8 @@ - TERMINAL_CONTROL_BLOCK *TCB = TCBOf(SP_PARM); - - SP_PARM->_endwin = TRUE; -- if (TCB && TCB->drv && TCB->drv->scexit) -- TCB->drv->scexit(SP_PARM); -+ if (TCB && TCB->drv && TCB->drv->td_scexit) -+ TCB->drv->td_scexit(SP_PARM); - #else - SP_PARM->_endwin = TRUE; - SP_PARM->_mouse_wrap(SP_PARM); -diff -Naur ncurses-5.9/ncurses/base/lib_flash.c ncurses-5.9.patch/ncurses/base/lib_flash.c ---- ncurses-5.9/ncurses/base/lib_flash.c 2009-10-25 00:02:14.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_flash.c 2014-09-01 16:33:22.372792149 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2000,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -46,7 +46,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_flash.c,v 1.11 2009/10/24 22:02:14 tom Exp $") -+MODULE_ID("$Id: lib_flash.c,v 1.14 2014/03/08 20:32:59 tom Exp $") - - /* - * flash() -@@ -64,17 +64,15 @@ - T((T_CALLED("flash(%p)"), (void *) SP_PARM)); - #ifdef USE_TERM_DRIVER - if (SP_PARM != 0) -- res = CallDriver_1(SP_PARM, doBeepOrFlash, FALSE); -+ res = CallDriver_1(SP_PARM, td_doBeepOrFlash, FALSE); - #else -- /* FIXME: should make sure that we are not in altchar mode */ -- if (flash_screen) { -- TPUTS_TRACE("flash_screen"); -- res = putp(flash_screen); -- _nc_flush(); -- } else if (bell) { -- TPUTS_TRACE("bell"); -- res = putp(bell); -- _nc_flush(); -+ if (HasTerminal(SP_PARM)) { -+ /* FIXME: should make sure that we are not in altchar mode */ -+ if (flash_screen) { -+ res = NCURSES_PUTP2_FLUSH("flash_screen", flash_screen); -+ } else if (bell) { -+ res = NCURSES_PUTP2_FLUSH("bell", bell); -+ } - } - #endif - returnCode(res); -diff -Naur ncurses-5.9/ncurses/base/lib_freeall.c ncurses-5.9.patch/ncurses/base/lib_freeall.c ---- ncurses-5.9/ncurses/base/lib_freeall.c 2010-01-23 18:57:43.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_freeall.c 2014-09-01 16:33:22.372792149 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - extern int malloc_errfd; /* FIXME */ - #endif - --MODULE_ID("$Id: lib_freeall.c,v 1.59 2010/01/23 17:57:43 tom Exp $") -+MODULE_ID("$Id: lib_freeall.c,v 1.62 2012/11/17 23:53:03 tom Exp $") - - /* - * Free all ncurses data. This is used for testing only (there's no practical -@@ -70,19 +70,21 @@ - - /* Delete only windows that're not a parent */ - for (each_window(SP_PARM, p)) { -+ WINDOW *p_win = &(p->win); - bool found = FALSE; - - for (each_window(SP_PARM, q)) { -+ WINDOW *q_win = &(q->win); - if ((p != q) -- && (q->win._flags & _SUBWIN) -- && (&(p->win) == q->win._parent)) { -+ && (q_win->_flags & _SUBWIN) -+ && (p_win == q_win->_parent)) { - found = TRUE; - break; - } - } - - if (!found) { -- if (delwin(&(p->win)) != ERR) -+ if (delwin(p_win) != ERR) - deleted = TRUE; - break; - } -@@ -100,7 +102,7 @@ - - (void) _nc_printf_string(0, empty_va); - #ifdef TRACE -- (void) _nc_trace_buf(-1, 0); -+ (void) _nc_trace_buf(-1, (size_t) 0); - #endif - #if USE_WIDEC_SUPPORT - FreeIfNeeded(_nc_wacs); -@@ -129,8 +131,9 @@ - NCURSES_EXPORT(void) - NCURSES_SP_NAME(_nc_free_and_exit) (NCURSES_SP_DCLx int code) - { -- char *last_setbuf = (SP_PARM != 0) ? SP_PARM->_setbuf : 0; -+ char *last_buffer = (SP_PARM != 0) ? SP_PARM->out_buffer : 0; - -+ NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG); - NCURSES_SP_NAME(_nc_freeall) (NCURSES_SP_ARG); - #ifdef TRACE - trace(0); /* close trace file, freeing its setbuf */ -@@ -139,8 +142,7 @@ - free(_nc_varargs("?", fake)); - } - #endif -- fclose(stdout); -- FreeIfNeeded(last_setbuf); -+ FreeIfNeeded(last_buffer); - exit(code); - } - -diff -Naur ncurses-5.9/ncurses/base/lib_getch.c ncurses-5.9.patch/ncurses/base/lib_getch.c ---- ncurses-5.9/ncurses/base/lib_getch.c 2010-12-26 00:24:04.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_getch.c 2014-09-01 16:33:22.372792149 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,7 +42,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_getch.c,v 1.121 2010/12/25 23:24:04 tom Exp $") -+MODULE_ID("$Id: lib_getch.c,v 1.127 2014/03/08 20:32:59 tom Exp $") - - #include <fifo_defs.h> - -@@ -133,7 +133,7 @@ - int rc; - - #ifdef USE_TERM_DRIVER -- rc = TCBOf(sp)->drv->testmouse(TCBOf(sp), delay); -+ rc = TCBOf(sp)->drv->td_testmouse(TCBOf(sp), delay EVENTLIST_2nd(evl)); - #else - #if USE_SYSMOUSE - if ((sp->_mouse_type == M_SYSMOUSE) -@@ -163,7 +163,7 @@ - static NCURSES_INLINE int - fifo_peek(SCREEN *sp) - { -- int ch = sp->_fifo[peek]; -+ int ch = (peek >= 0) ? sp->_fifo[peek] : ERR; - TR(TRACE_IEVENT, ("peeking at %d", peek)); - - p_inc(); -@@ -173,15 +173,16 @@ - static NCURSES_INLINE int - fifo_pull(SCREEN *sp) - { -- int ch; -- ch = sp->_fifo[head]; -+ int ch = (head >= 0) ? sp->_fifo[head] : ERR; -+ - TR(TRACE_IEVENT, ("pulling %s from %d", _nc_tracechar(sp, ch), head)); - - if (peek == head) { - h_inc(); - peek = head; -- } else -+ } else { - h_inc(); -+ } - - #ifdef TRACE - if (USE_TRACEF(TRACE_IEVENT)) { -@@ -200,7 +201,7 @@ - int mask = 0; - - (void) mask; -- if (tail == -1) -+ if (tail < 0) - return ERR; - - #ifdef HIDE_EINTR -@@ -257,10 +258,17 @@ - n = 1; - } else - #endif -+#if USE_KLIBC_KBD -+ if (isatty(sp->_ifd) && sp->_cbreak) { -+ ch = _read_kbd(0, 1, !sp->_raw); -+ n = (ch == -1) ? -1 : 1; -+ sp->_extended_key = (ch == 0); -+ } else -+#endif - { /* Can block... */ - #ifdef USE_TERM_DRIVER - int buf; -- n = CallDriver_1(sp, read, &buf); -+ n = CallDriver_1(sp, td_read, &buf); - ch = buf; - #else - unsigned char c2 = 0; -@@ -270,7 +278,7 @@ - # endif - _nc_globals.read_thread = pthread_self(); - # endif -- n = (int) read(sp->_ifd, &c2, 1); -+ n = (int) read(sp->_ifd, &c2, (size_t) 1); - #if USE_PTHREADS_EINTR - _nc_globals.read_thread = 0; - #endif -@@ -431,11 +439,11 @@ - /* ungetch in reverse order */ - #ifdef NCURSES_WGETCH_EVENTS - rc = recur_wgetnstr(win, buf); -- if (rc != KEY_EVENT) -+ if (rc != KEY_EVENT && rc != ERR) - safe_ungetch(sp, '\n'); - #else -- (void) recur_wgetnstr(win, buf); -- safe_ungetch(sp, '\n'); -+ if (recur_wgetnstr(win, buf) != ERR) -+ safe_ungetch(sp, '\n'); - #endif - for (bufp = buf + strlen(buf); bufp > buf; bufp--) - safe_ungetch(sp, bufp[-1]); -@@ -569,7 +577,7 @@ - * - * If carriage return is defined as a function key in the - * terminfo, e.g., kent, then Solaris may return either ^J (or ^M -- * if nonl() is set) or KEY_ENTER depending on the echo() mode. -+ * if nonl() is set) or KEY_ENTER depending on the echo() mode. - * We echo before translating carriage return based on nonl(), - * since the visual result simply moves the cursor to column 0. - * -@@ -709,10 +717,11 @@ - - if (ptr->value != 0) { /* sequence terminated */ - TR(TRACE_IEVENT, ("end of sequence")); -- if (peek == tail) -+ if (peek == tail) { - fifo_clear(sp); -- else -+ } else { - head = peek; -+ } - return (ptr->value); - } - -diff -Naur ncurses-5.9/ncurses/base/lib_getstr.c ncurses-5.9.patch/ncurses/base/lib_getstr.c ---- ncurses-5.9/ncurses/base/lib_getstr.c 2009-10-24 23:59:02.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_getstr.c 2014-09-01 16:33:22.372792149 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -40,14 +40,14 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_getstr.c,v 1.29 2009/10/24 21:59:02 tom Exp $") -+MODULE_ID("$Id: lib_getstr.c,v 1.30 2011/10/22 16:31:35 tom Exp $") - - /* - * This wipes out the last character, no matter whether it was a tab, control - * or other character, and handles reverse wraparound. - */ - static char * --WipeOut(WINDOW *win, int y, int x, char *first, char *last, bool echoed) -+WipeOut(WINDOW *win, int y, int x, char *first, char *last, int echoed) - { - if (last > first) { - *--last = '\0'; -diff -Naur ncurses-5.9/ncurses/base/lib_insch.c ncurses-5.9.patch/ncurses/base/lib_insch.c ---- ncurses-5.9/ncurses/base/lib_insch.c 2009-10-25 00:04:35.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_insch.c 2014-09-01 16:33:22.372792149 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -43,7 +43,7 @@ - #include <curses.priv.h> - #include <ctype.h> - --MODULE_ID("$Id: lib_insch.c,v 1.32 2009/10/24 22:04:35 tom Exp $") -+MODULE_ID("$Id: lib_insch.c,v 1.35 2013/05/18 21:58:56 tom Exp $") - - /* - * Insert the given character, updating the current location to simplify -@@ -53,6 +53,7 @@ - _nc_insert_ch(SCREEN *sp, WINDOW *win, chtype ch) - { - int code = OK; -+ int ch8 = (int) ChCharOf(ch); - NCURSES_CH_T wch; - int count; - NCURSES_CONST char *s; -@@ -82,10 +83,9 @@ - #if USE_WIDEC_SUPPORT - WINDOW_EXT(win, addch_used) == 0 && - #endif -- is8bits(ChCharOf(ch)) && -- (isprint(ChCharOf(ch)) || -+ (isprint(ch8) || - (ChAttrOf(ch) & A_ALTCHARSET) || -- (sp != 0 && sp->_legacy_coding && !iscntrl(ChCharOf(ch))))) { -+ (sp != 0 && sp->_legacy_coding && !iscntrl(ch8)))) { - if (win->_curx <= win->_maxx) { - struct ldat *line = &(win->_line[win->_cury]); - NCURSES_CH_T *end = &(line->text[win->_curx]); -@@ -101,8 +101,8 @@ - *temp1 = _nc_render(win, wch); - win->_curx++; - } -- } else if (is8bits(ChCharOf(ch)) && iscntrl(ChCharOf(ch))) { -- s = NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx ChCharOf(ch)); -+ } else if (iscntrl(ch8)) { -+ s = NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx (chtype) ch8); - while (*s != '\0') { - code = _nc_insert_ch(sp, win, ChAttrOf(ch) | UChar(*s)); - if (code != OK) -@@ -122,18 +122,14 @@ - code = _nc_insert_wch(win, &wch); - } else if (count == -1) { - /* handle EILSEQ */ -- if (is8bits(ch)) { -- s = NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx ChCharOf(ch)); -- if (strlen(s) > 1) { -- while (*s != '\0') { -- code = _nc_insert_ch(sp, win, -- ChAttrOf(ch) | UChar(*s)); -- if (code != OK) -- break; -- ++s; -- } -- } else { -- code = ERR; -+ s = NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx (chtype) ch8); -+ if (strlen(s) > 1) { -+ while (*s != '\0') { -+ code = _nc_insert_ch(sp, win, -+ ChAttrOf(ch) | UChar(*s)); -+ if (code != OK) -+ break; -+ ++s; - } - } else { - code = ERR; -diff -Naur ncurses-5.9/ncurses/base/lib_instr.c ncurses-5.9.patch/ncurses/base/lib_instr.c ---- ncurses-5.9/ncurses/base/lib_instr.c 2009-10-25 00:55:45.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_instr.c 2014-09-01 16:33:22.372792149 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -41,7 +41,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_instr.c,v 1.17 2009/10/24 22:55:45 tom Exp $") -+MODULE_ID("$Id: lib_instr.c,v 1.21 2014/02/01 22:09:27 tom Exp $") - - NCURSES_EXPORT(int) - winnstr(WINDOW *win, char *str, int n) -@@ -64,7 +64,7 @@ - cchar_t *cell = &(win->_line[row].text[col]); - wchar_t *wch; - attr_t attrs; -- short pair; -+ NCURSES_PAIRS_T pair; - int n2; - bool done = FALSE; - mbstate_t state; -@@ -78,11 +78,15 @@ - if (getcchar(cell, wch, &attrs, &pair, 0) == OK) { - - init_mb(state); -- n3 = wcstombs(0, wch, 0); -+ n3 = wcstombs(0, wch, (size_t) 0); - if (!isEILSEQ(n3) && (n3 != 0)) { -- if (((int) n3 + i) > n) { -+ size_t need = n3 + 10 + (size_t) i; -+ int have = (int) n3 + i; -+ -+ /* check for loop-done as well as overflow */ -+ if (have > n || (int) need <= 0) { - done = TRUE; -- } else if ((tmp = typeCalloc(char, n3 + 10)) == 0) { -+ } else if ((tmp = typeCalloc(char, need)) == 0) { - done = TRUE; - } else { - init_mb(state); -diff -Naur ncurses-5.9/ncurses/base/lib_mouse.c ncurses-5.9.patch/ncurses/base/lib_mouse.c ---- ncurses-5.9/ncurses/base/lib_mouse.c 2011-01-22 20:47:47.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_mouse.c 2014-09-01 16:33:22.373792151 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -84,7 +84,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_mouse.c,v 1.121 2011/01/22 19:47:47 tom Exp $") -+MODULE_ID("$Id: lib_mouse.c,v 1.142 2014/03/08 20:32:59 tom Exp $") - - #include <tic.h> - -@@ -112,7 +112,7 @@ - #undef buttons /* symbol conflict in consio.h */ - #undef mouse_info /* symbol conflict in consio.h */ - #include <osreldate.h> --#if (__FreeBSD_version >= 400017) -+#if defined(__DragonFly_version) || (defined(__FreeBSD__) && (__FreeBSD_version >= 400017)) - #include <sys/consio.h> - #include <sys/fbio.h> - #else -@@ -120,6 +120,17 @@ - #endif - #endif /* use_SYSMOUSE */ - -+#if USE_KLIBC_MOUSE -+#include <sys/socket.h> -+#define pipe(handles) socketpair(AF_LOCAL, SOCK_STREAM, 0, handles) -+#define DosWrite(hfile, pbuffer, cbwrite, pcbactual) \ -+ write(hfile, pbuffer, cbwrite) -+#define DosExit(action, result ) /* do nothing */ -+#define DosCreateThread(ptid, pfn, param, flag, cbStack) \ -+ (*(ptid) = _beginthread(pfn, NULL, cbStack, \ -+ (void *)param), (*(ptid) == -1)) -+#endif -+ - #define MY_TRACE TRACE_ICALLS|TRACE_IEVENT - - #define MASK_RELEASE(x) (mmask_t) NCURSES_MOUSE_MASK(x, 001) -@@ -148,6 +159,9 @@ - #define INVALID_EVENT -1 - #define NORMAL_EVENT 0 - -+#define ValidEvent(ep) ((ep)->id != INVALID_EVENT) -+#define Invalidate(ep) (ep)->id = INVALID_EVENT -+ - #if USE_GPM_SUPPORT - - #ifndef LIBGPM_SONAME -@@ -211,7 +225,7 @@ - char buf[6]; - unsigned long ignore; - -- strncpy(buf, key_mouse, 3); /* should be "\033[M" */ -+ strcpy(buf, "\033[M"); /* should be the same as key_mouse */ - buf[3] = ' ' + (button - 1) + (down ? 0 : 0x40); - buf[4] = ' ' + x - LEFT_COL + 1; - buf[5] = ' ' + y - TOP_ROW + 1; -@@ -219,7 +233,11 @@ - } - - static void -+#if USE_KLIBC_MOUSE -+mouse_server(void *param) -+#else - mouse_server(unsigned long param) -+#endif - { - SCREEN *sp = (SCREEN *) param; - unsigned short fWait = MOU_WAIT; -@@ -245,7 +263,8 @@ - /* sit and wait on the event queue */ - rc = MouReadEventQue(&mouev, &fWait, hmou); - if (rc) { -- sprintf(err, "Error reading mouse queue, rc=%lu.\r\n", rc); -+ _nc_SPRINTF(err, _nc_SLIMIT(sizeof(err)) -+ "Error reading mouse queue, rc=%lu.\r\n", rc); - break; - } - if (!sp->_emxmouse_activated) -@@ -271,9 +290,11 @@ - finish: - oldstate = mouev.fs; - } -- } else -- sprintf(err, "Error setting event mask, buttons=%d, rc=%lu.\r\n", -- nbuttons, rc); -+ } else { -+ _nc_SPRINTF(err, _nc_SLIMIT(sizeof(err)) -+ "Error setting event mask, buttons=%d, rc=%lu.\r\n", -+ nbuttons, rc); -+ } - - DosWrite(2, err, strlen(err), &rc); - MouClose(hmou); -@@ -367,20 +388,26 @@ - #if USE_EMX_MOUSE - sp->_emxmouse_activated = enable; - #else -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "xterm-mouse", -- TPARM_1(sp->_mouse_xtermcap, enable)); -+ NCURSES_PUTP2("xterm-mouse", TPARM_1(sp->_mouse_xtermcap, enable)); - #endif - sp->_mouse_active = enable; - } - - #if USE_GPM_SUPPORT - static bool --allow_gpm_mouse(void) -+allow_gpm_mouse(SCREEN *sp) - { - bool result = FALSE; - -- /* GPM does printf's without checking if stdout is a terminal */ -+#if USE_WEAK_SYMBOLS -+ /* Danger Robinson: do not use dlopen for libgpm if already loaded */ -+ if ((Gpm_Wgetch)) { -+ if (!sp->_mouse_gpm_loaded) { -+ T(("GPM library was already dlopen'd, not by us")); -+ } -+ } else -+#endif -+ /* GPM does printf's without checking if stdout is a terminal */ - if (isatty(fileno(stdout))) { - char *list = getenv("NCURSES_GPM_TERMS"); - char *env = getenv("TERM"); -@@ -506,7 +533,7 @@ - - /* Try gpm first, because gpm may be configured to run in xterm */ - #if USE_GPM_SUPPORT -- if (allow_gpm_mouse()) { -+ if (allow_gpm_mouse(sp)) { - if (!sp->_mouse_gpm_loaded) { - #ifdef HAVE_LIBDL - load_gpm_library(sp); -@@ -641,7 +668,7 @@ - #endif /* USE_SYSMOUSE */ - - #ifdef USE_TERM_DRIVER -- CallDriver(sp, initmouse); -+ CallDriver(sp, td_initmouse); - #else - /* we know how to recognize mouse events under "xterm" */ - if (key_mouse != 0) { -@@ -673,7 +700,7 @@ - - sp->_mouse_eventp = FirstEV(sp); - for (i = 0; i < EV_MAX; i++) -- sp->_mouse_events[i].id = INVALID_EVENT; -+ Invalidate(sp->_mouse_events + i); - - initialize_mousetype(sp); - -@@ -750,6 +777,7 @@ - eventp->bstate |= BUTTON3_RELEASED; - break; - default: -+ eventp->bstate |= REPORT_MOUSE_POSITION; - break; - } - -@@ -830,7 +858,6 @@ - - if (sp->_mouse_type == M_XTERM) { - unsigned char kbuf[4]; -- mmask_t prev; - size_t grabbed; - int res; - -@@ -896,35 +923,51 @@ - - /* processing code goes here */ - eventp->bstate = 0; -- prev = PREV(eventp)->bstate; - - #if USE_EMX_MOUSE - #define PRESS_POSITION(n) \ -- eventp->bstate = MASK_PRESS(n); \ -- if (kbuf[0] & 0x40) \ -- eventp->bstate = MASK_RELEASE(n) -+ do { \ -+ eventp->bstate = MASK_PRESS(n); \ -+ sp->_mouse_bstate |= MASK_PRESS(n); \ -+ if (kbuf[0] & 0x40) { \ -+ eventp->bstate = MASK_RELEASE(n); \ -+ sp->_mouse_bstate &= ~MASK_PRESS(n); \ -+ } \ -+ } while (0) - #else - #define PRESS_POSITION(n) \ -- eventp->bstate = (mmask_t) (prev & MASK_PRESS(n) \ -- ? REPORT_MOUSE_POSITION \ -- : MASK_PRESS(n)) -+ do { \ -+ eventp->bstate = (mmask_t) (sp->_mouse_bstate & MASK_PRESS(n) \ -+ ? REPORT_MOUSE_POSITION \ -+ : MASK_PRESS(n)); \ -+ sp->_mouse_bstate |= MASK_PRESS(n); \ -+ } while (0) - #endif - - switch (kbuf[0] & 0x3) { - case 0x0: -- if (kbuf[0] & 64) -+ if ((kbuf[0] & 96) == 96) { - eventp->bstate = MASK_PRESS(4); -- else -+ /* Do not record in sp->_mouse_bstate; there will be no -+ * corresponding release event. -+ */ -+ } else { - PRESS_POSITION(1); -+ } - break; - - case 0x1: -+ if ((kbuf[0] & 96) == 96) { - #if NCURSES_MOUSE_VERSION == 2 -- if (kbuf[0] & 64) - eventp->bstate = MASK_PRESS(5); -- else -+ /* See comment above for button 4 */ -+#else -+ /* Ignore this event as it is not a true press of the button */ -+ eventp->bstate = REPORT_MOUSE_POSITION; - #endif -+ } else { - PRESS_POSITION(2); -+ } - break; - - case 0x2: -@@ -939,12 +982,13 @@ - * release, we can infer the button actually released by looking at - * the previous event. - */ -- if (prev & (BUTTON_PRESSED | BUTTON_RELEASED)) { -+ if (sp->_mouse_bstate & BUTTON_PRESSED) { - eventp->bstate = BUTTON_RELEASED; - for (b = 1; b <= MAX_BUTTONS; ++b) { -- if (!(prev & MASK_PRESS(b))) -+ if (!(sp->_mouse_bstate & MASK_PRESS(b))) - eventp->bstate &= ~MASK_RELEASE(b); - } -+ sp->_mouse_bstate = 0; - } else { - /* - * XFree86 xterm will return a stream of release-events to -@@ -985,7 +1029,7 @@ - } - - static void --mouse_activate(SCREEN *sp, bool on) -+mouse_activate(SCREEN *sp, int on) - { - if (!on && !sp->_mouse_initialized) - return; -@@ -994,7 +1038,7 @@ - return; - - if (on) { -- -+ sp->_mouse_bstate = 0; - switch (sp->_mouse_type) { - case M_XTERM: - #if NCURSES_EXT_FUNCS -@@ -1074,10 +1118,13 @@ - /* parse a run of atomic mouse events into a gesture */ - { - MEVENT *eventp = sp->_mouse_eventp; -- MEVENT *ep, *runp, *next, *prev = PREV(eventp); -+ MEVENT *next, *ep; -+ MEVENT *first_valid = NULL; -+ MEVENT *first_invalid = NULL; - int n; - int b; - bool merge; -+ bool endLoop; - - TR(MY_TRACE, ("_nc_mouse_parse(%d) called", runcount)); - -@@ -1094,7 +1141,8 @@ - * - * It's possible that the run may not resolve to a single event (for - * example, if the user quadruple-clicks). If so, leading events -- * in the run are ignored. -+ * in the run are ignored if user does not call getmouse in a loop (getting -+ * them from newest to older). - * - * Note that this routine is independent of the format of the specific - * format of the pointing-device's reports. We can use it to parse -@@ -1102,79 +1150,110 @@ - * button basis, as long as the device-dependent mouse code puts stuff - * on the queue in MEVENT format. - */ -- if (runcount == 1) { -- TR(MY_TRACE, -- ("_nc_mouse_parse: returning simple mouse event %s at slot %ld", -- _nc_tracemouse(sp, prev), -- (long) IndexEV(sp, prev))); -- return (prev->id >= NORMAL_EVENT) -- ? ((prev->bstate & sp->_mouse_mask) ? TRUE : FALSE) -- : FALSE; -- } - -- /* find the start of the run */ -- runp = eventp; -- for (n = runcount; n > 0; n--) { -- runp = PREV(runp); -+ /* -+ * Reset all events that were not set, in case the user sometimes calls -+ * getmouse only once and other times until there are no more events in -+ * queue. -+ * -+ * This also allows reaching the beginning of the run. -+ */ -+ ep = eventp; -+ for (n = runcount; n < EV_MAX; n++) { -+ Invalidate(ep); -+ ep = NEXT(ep); - } - - #ifdef TRACE - if (USE_TRACEF(TRACE_IEVENT)) { - _trace_slot(sp, "before mouse press/release merge:"); - _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d", -- RunParams(sp, eventp, runp), -+ RunParams(sp, eventp, ep), - runcount); - _nc_unlock_global(tracef); - } - #endif /* TRACE */ - - /* first pass; merge press/release pairs */ -- do { -- merge = FALSE; -- for (ep = runp; (next = NEXT(ep)) != eventp; ep = next) { -+ endLoop = FALSE; -+ while (!endLoop) { -+ next = NEXT(ep); -+ if (next == eventp) { -+ /* Will end the loop, but compact before */ -+ endLoop = TRUE; -+ } else { - - #define MASK_CHANGED(x) (!(ep->bstate & MASK_PRESS(x)) \ - == !(next->bstate & MASK_RELEASE(x))) - -- if (ep->x == next->x && ep->y == next->y -+ if (ValidEvent(ep) && ValidEvent(next) -+ && ep->x == next->x && ep->y == next->y - && (ep->bstate & BUTTON_PRESSED) -- && MASK_CHANGED(1) -- && MASK_CHANGED(2) -- && MASK_CHANGED(3) -- && MASK_CHANGED(4) --#if NCURSES_MOUSE_VERSION == 2 -- && MASK_CHANGED(5) --#endif -- ) { -+ && (!(next->bstate & BUTTON_PRESSED))) { -+ bool changed = TRUE; -+ - for (b = 1; b <= MAX_BUTTONS; ++b) { -- if ((sp->_mouse_mask & MASK_CLICK(b)) -- && (ep->bstate & MASK_PRESS(b))) { -- ep->bstate &= ~MASK_PRESS(b); -- ep->bstate |= MASK_CLICK(b); -- merge = TRUE; -+ if (!MASK_CHANGED(b)) { -+ changed = FALSE; -+ break; -+ } -+ } -+ -+ if (changed) { -+ merge = FALSE; -+ for (b = 1; b <= MAX_BUTTONS; ++b) { -+ if ((sp->_mouse_mask & MASK_CLICK(b)) -+ && (ep->bstate & MASK_PRESS(b))) { -+ next->bstate &= ~MASK_RELEASE(b); -+ next->bstate |= MASK_CLICK(b); -+ merge = TRUE; -+ } -+ } -+ if (merge) { -+ Invalidate(ep); - } - } -- if (merge) -- next->id = INVALID_EVENT; - } - } -- } while -- (merge); - -+ /* Compact valid events */ -+ if (!ValidEvent(ep)) { -+ if ((first_valid != NULL) && (first_invalid == NULL)) { -+ first_invalid = ep; -+ } -+ } else { -+ if (first_valid == NULL) { -+ first_valid = ep; -+ } else if (first_invalid != NULL) { -+ *first_invalid = *ep; -+ Invalidate(ep); -+ first_invalid = NEXT(first_invalid); -+ } -+ } -+ -+ ep = next; -+ } -+ -+ if (first_invalid != NULL) { -+ eventp = first_invalid; -+ } - #ifdef TRACE - if (USE_TRACEF(TRACE_IEVENT)) { - _trace_slot(sp, "before mouse click merge:"); -- _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d", -- RunParams(sp, eventp, runp), -- runcount); -- _nc_unlock_global(tracef); -+ if (first_valid == NULL) { -+ _tracef("_nc_mouse_parse: no valid event"); -+ } else { -+ _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d", -+ RunParams(sp, eventp, first_valid), -+ runcount); -+ _nc_unlock_global(tracef); -+ } - } - #endif /* TRACE */ - - /* -- * Second pass; merge click runs. At this point, click events are -- * each followed by one invalid event. We merge click events -- * forward in the queue. -+ * Second pass; merge click runs. We merge click events forward in the -+ * queue. For example, double click can be changed to triple click. - * - * NOTE: There is a problem with this design! If the application - * allows enough click events to pile up in the circular queue so -@@ -1187,87 +1266,102 @@ - * but the timer element would have to have sub-second resolution, - * which would get us into portability trouble. - */ -- do { -- MEVENT *follower; -- -- merge = FALSE; -- for (ep = runp; (next = NEXT(ep)) != eventp; ep = next) -- if (ep->id != INVALID_EVENT) { -- if (next->id != INVALID_EVENT) -- continue; -- follower = NEXT(next); -- if (follower->id == INVALID_EVENT) -- continue; -- -- /* merge click events forward */ -- if ((ep->bstate & BUTTON_CLICKED) -- && (follower->bstate & BUTTON_CLICKED)) { -- for (b = 1; b <= MAX_BUTTONS; ++b) { -- if ((sp->_mouse_mask & MASK_DOUBLE_CLICK(b)) -- && (follower->bstate & MASK_CLICK(b))) { -- follower->bstate &= ~MASK_CLICK(b); -- follower->bstate |= MASK_DOUBLE_CLICK(b); -- merge = TRUE; -- } -+ first_invalid = NULL; -+ endLoop = (first_valid == NULL); -+ ep = first_valid; -+ while (!endLoop) { -+ next = NEXT(ep); -+ -+ if (next == eventp) { -+ /* Will end the loop, but check event type and compact before */ -+ endLoop = TRUE; -+ } else if (!ValidEvent(next)) { -+ continue; -+ } else { -+ /* merge click events forward */ -+ if ((ep->bstate & BUTTON_CLICKED) -+ && (next->bstate & BUTTON_CLICKED)) { -+ merge = FALSE; -+ for (b = 1; b <= MAX_BUTTONS; ++b) { -+ if ((sp->_mouse_mask & MASK_DOUBLE_CLICK(b)) -+ && (ep->bstate & MASK_CLICK(b)) -+ && (next->bstate & MASK_CLICK(b))) { -+ next->bstate &= ~MASK_CLICK(b); -+ next->bstate |= MASK_DOUBLE_CLICK(b); -+ merge = TRUE; - } -- if (merge) -- ep->id = INVALID_EVENT; - } -+ if (merge) { -+ Invalidate(ep); -+ } -+ } - -- /* merge double-click events forward */ -- if ((ep->bstate & BUTTON_DOUBLE_CLICKED) -- && (follower->bstate & BUTTON_CLICKED)) { -- for (b = 1; b <= MAX_BUTTONS; ++b) { -- if ((sp->_mouse_mask & MASK_TRIPLE_CLICK(b)) -- && (follower->bstate & MASK_CLICK(b))) { -- follower->bstate &= ~MASK_CLICK(b); -- follower->bstate |= MASK_TRIPLE_CLICK(b); -- merge = TRUE; -- } -+ /* merge double-click events forward */ -+ if ((ep->bstate & BUTTON_DOUBLE_CLICKED) -+ && (next->bstate & BUTTON_CLICKED)) { -+ merge = FALSE; -+ for (b = 1; b <= MAX_BUTTONS; ++b) { -+ if ((sp->_mouse_mask & MASK_TRIPLE_CLICK(b)) -+ && (ep->bstate & MASK_DOUBLE_CLICK(b)) -+ && (next->bstate & MASK_CLICK(b))) { -+ next->bstate &= ~MASK_CLICK(b); -+ next->bstate |= MASK_TRIPLE_CLICK(b); -+ merge = TRUE; - } -- if (merge) -- ep->id = INVALID_EVENT; -+ } -+ if (merge) { -+ Invalidate(ep); - } - } -- } while -- (merge); -+ } - --#ifdef TRACE -- if (USE_TRACEF(TRACE_IEVENT)) { -- _trace_slot(sp, "before mouse event queue compaction:"); -- _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d", -- RunParams(sp, eventp, runp), -- runcount); -- _nc_unlock_global(tracef); -- } --#endif /* TRACE */ -+ /* Discard event if it does not match event mask */ -+ if (!(ep->bstate & sp->_mouse_mask2)) { -+ Invalidate(ep); -+ } - -- /* -- * Now try to throw away trailing events flagged invalid, or that -- * don't match the current event mask. -- */ -- for (; runcount; prev = PREV(eventp), runcount--) -- if (prev->id == INVALID_EVENT || !(prev->bstate & sp->_mouse_mask)) { -- sp->_mouse_eventp = eventp = prev; -+ /* Compact valid events */ -+ if (!ValidEvent(ep)) { -+ if (ep == first_valid) { -+ first_valid = next; -+ } else if (first_invalid == NULL) { -+ first_invalid = ep; -+ } -+ } else if (first_invalid != NULL) { -+ *first_invalid = *ep; -+ Invalidate(ep); -+ first_invalid = NEXT(first_invalid); - } -+ -+ ep = next; -+ } -+ -+ if (first_invalid == NULL) { -+ first_invalid = eventp; -+ } -+ sp->_mouse_eventp = first_invalid; -+ - #ifdef TRACE -- if (USE_TRACEF(TRACE_IEVENT)) { -- _trace_slot(sp, "after mouse event queue compaction:"); -- _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d", -- RunParams(sp, eventp, runp), -- runcount); -- _nc_unlock_global(tracef); -+ if (first_valid != NULL) { -+ if (USE_TRACEF(TRACE_IEVENT)) { -+ _trace_slot(sp, "after mouse event queue compaction:"); -+ _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d", -+ RunParams(sp, first_invalid, first_valid), -+ runcount); -+ _nc_unlock_global(tracef); -+ } -+ for (ep = first_valid; ep != first_invalid; ep = NEXT(ep)) { -+ if (ValidEvent(ep)) -+ TR(MY_TRACE, -+ ("_nc_mouse_parse: returning composite mouse event %s at slot %ld", -+ _nc_tracemouse(sp, ep), -+ (long) IndexEV(sp, ep))); -+ } - } -- for (ep = runp; ep != eventp; ep = NEXT(ep)) -- if (ep->id != INVALID_EVENT) -- TR(MY_TRACE, -- ("_nc_mouse_parse: returning composite mouse event %s at slot %ld", -- _nc_tracemouse(sp, ep), -- (long) IndexEV(sp, ep))); - #endif /* TRACE */ - - /* after all this, do we have a valid event? */ -- return (PREV(eventp)->id != INVALID_EVENT); -+ return ValidEvent(PREV(first_invalid)); - } - - static void -@@ -1359,7 +1453,16 @@ - /* compute the current-event pointer */ - MEVENT *prev = PREV(eventp); - -- if (prev->id != INVALID_EVENT) { -+ /* -+ * Discard events not matching mask (there could be still some if -+ * _nc_mouse_parse was not called, e.g., when _nc_mouse_inline returns -+ * false). -+ */ -+ while (ValidEvent(prev) && (!(prev->bstate & SP_PARM->_mouse_mask2))) { -+ Invalidate(prev); -+ prev = PREV(prev); -+ } -+ if (ValidEvent(prev)) { - /* copy the event we find there */ - *aevent = *prev; - -@@ -1367,9 +1470,16 @@ - _nc_tracemouse(SP_PARM, prev), - (long) IndexEV(SP_PARM, prev))); - -- prev->id = INVALID_EVENT; /* so the queue slot becomes free */ -- SP_PARM->_mouse_eventp = PREV(prev); -+ Invalidate(prev); /* so the queue slot becomes free */ -+ SP_PARM->_mouse_eventp = prev; - result = OK; -+ } else { -+ /* Reset the provided event */ -+ aevent->bstate = 0; -+ Invalidate(aevent); -+ aevent->x = 0; -+ aevent->y = 0; -+ aevent->z = 0; - } - } - returnCode(result); -@@ -1420,6 +1530,7 @@ - /* set the mouse event mask */ - { - mmask_t result = 0; -+ int b; - - T((T_CALLED("mousemask(%p,%#lx,%p)"), - (void *) SP_PARM, -@@ -1447,6 +1558,22 @@ - mouse_activate(SP_PARM, (bool) (result != 0)); - - SP_PARM->_mouse_mask = result; -+ SP_PARM->_mouse_mask2 = result; -+ -+ /* -+ * Make a mask corresponding to the states we will need to -+ * retain (temporarily) while building up the state that the -+ * user asked for. -+ */ -+ for (b = 1; b <= MAX_BUTTONS; ++b) { -+ if (SP_PARM->_mouse_mask2 & MASK_TRIPLE_CLICK(b)) -+ SP_PARM->_mouse_mask2 |= MASK_DOUBLE_CLICK(b); -+ if (SP_PARM->_mouse_mask2 & MASK_DOUBLE_CLICK(b)) -+ SP_PARM->_mouse_mask2 |= MASK_CLICK(b); -+ if (SP_PARM->_mouse_mask2 & MASK_CLICK(b)) -+ SP_PARM->_mouse_mask2 |= (MASK_PRESS(b) | -+ MASK_RELEASE(b)); -+ } - } - } - } -diff -Naur ncurses-5.9/ncurses/base/lib_newterm.c ncurses-5.9.patch/ncurses/base/lib_newterm.c ---- ncurses-5.9/ncurses/base/lib_newterm.c 2010-05-21 01:25:18.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_newterm.c 2014-09-01 16:33:22.373792151 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,17 +42,13 @@ - - #include <curses.priv.h> - --#if SVR4_TERMIO && !defined(_POSIX_SOURCE) --#define _POSIX_SOURCE --#endif -- - #ifndef CUR - #define CUR SP_TERMTYPE - #endif - - #include <tic.h> - --MODULE_ID("$Id: lib_newterm.c,v 1.86 2010/05/20 23:25:18 tom Exp $") -+MODULE_ID("$Id: lib_newterm.c,v 1.91 2014/03/08 20:32:59 tom Exp $") - - #ifdef USE_TERM_DRIVER - #define NumLabels InfoOf(SP_PARM).numlabels -@@ -185,7 +181,7 @@ - START_TRACE(); - T((T_CALLED("newterm(%p, \"%s\", %p,%p)"), - (void *) SP_PARM, -- name, -+ (name ? name : ""), - (void *) ofp, - (void *) ifp)); - -@@ -283,7 +279,8 @@ - NCURSES_SP_NAME(typeahead) (NCURSES_SP_ARGx fileno(_ifp)); - #ifdef TERMIOS - SP_PARM->_use_meta = ((new_term->Ottyb.c_cflag & CSIZE) == CS8 && -- !(new_term->Ottyb.c_iflag & ISTRIP)); -+ !(new_term->Ottyb.c_iflag & ISTRIP)) || -+ USE_KLIBC_KBD; - #else - SP_PARM->_use_meta = FALSE; - #endif -@@ -309,8 +306,8 @@ - - /* compute movement costs so we can do better move optimization */ - #ifdef USE_TERM_DRIVER -- TCBOf(SP_PARM)->drv->scinit(SP_PARM); --#else -+ TCBOf(SP_PARM)->drv->td_scinit(SP_PARM); -+#else /* ! USE_TERM_DRIVER */ - /* - * Check for mismatched graphic-rendition capabilities. Most SVr4 - * terminfo trees contain entries that have rmul or rmso equated to -@@ -323,13 +320,16 @@ - #define SGR0_TEST(mode) (mode != 0) && (exit_attribute_mode == 0 || strcmp(mode, exit_attribute_mode)) - SP_PARM->_use_rmso = SGR0_TEST(exit_standout_mode); - SP_PARM->_use_rmul = SGR0_TEST(exit_underline_mode); -+#if USE_ITALIC -+ SP_PARM->_use_ritm = SGR0_TEST(exit_italics_mode); -+#endif - - /* compute movement costs so we can do better move optimization */ - _nc_mvcur_init(); - - /* initialize terminal to a sane state */ - _nc_screen_init(); --#endif -+#endif /* USE_TERM_DRIVER */ - - /* Initialize the terminal line settings. */ - _nc_initscr(NCURSES_SP_ARG); -diff -Naur ncurses-5.9/ncurses/base/lib_newwin.c ncurses-5.9.patch/ncurses/base/lib_newwin.c ---- ncurses-5.9/ncurses/base/lib_newwin.c 2011-03-07 22:58:17.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_newwin.c 2014-09-01 16:33:22.373792151 +0200 -@@ -43,7 +43,7 @@ - #include <curses.priv.h> - #include <stddef.h> - --MODULE_ID("$Id: lib_newwin.c,v 1.69 2011/03/07 21:58:17 tom Exp $") -+MODULE_ID("$Id: lib_newwin.c,v 1.71 2011/05/28 21:32:51 tom Exp $") - - #define window_is(name) ((sp)->_##name == win) - -@@ -141,7 +141,11 @@ - T((T_CALLED("newwin(%p, %d,%d,%d,%d)"), (void *) SP_PARM, num_lines, num_columns, - begy, begx)); - -- if (begy < 0 || begx < 0 || num_lines < 0 || num_columns < 0) -+ if (begy < 0 -+ || begx < 0 -+ || num_lines < 0 -+ || num_columns < 0 -+ || SP_PARM == 0) - returnWin(0); - - if (num_lines == 0) -@@ -235,10 +239,15 @@ - NCURSES_EXPORT(WINDOW *) - subwin(WINDOW *w, int l, int c, int y, int x) - { -+ WINDOW *result = 0; -+ - T((T_CALLED("subwin(%p, %d, %d, %d, %d)"), (void *) w, l, c, y, x)); -- T(("parent has begy = %ld, begx = %ld", (long) w->_begy, (long) w->_begx)); -+ if (w != 0) { -+ T(("parent has begy = %ld, begx = %ld", (long) w->_begy, (long) w->_begx)); - -- returnWin(derwin(w, l, c, y - w->_begy, x - w->_begx)); -+ result = derwin(w, l, c, y - w->_begy, x - w->_begx); -+ } -+ returnWin(result); - } - - static bool -diff -Naur ncurses-5.9/ncurses/base/lib_overlay.c ncurses-5.9.patch/ncurses/base/lib_overlay.c ---- ncurses-5.9/ncurses/base/lib_overlay.c 2009-10-25 01:21:31.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_overlay.c 2014-09-01 16:33:22.373792151 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -40,7 +40,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_overlay.c,v 1.29 2009/10/24 23:21:31 tom Exp $") -+MODULE_ID("$Id: lib_overlay.c,v 1.31 2013/04/06 23:47:13 tom Exp $") - - static int - overlap(const WINDOW *const src, WINDOW *const dst, int const flag) -@@ -151,7 +151,10 @@ - dminrow, dmincol, - dmaxrow, dmaxcol, over)); - -- if (src && dst) { -+ if (src != 0 -+ && dst != 0 -+ && dmaxrow >= dminrow -+ && dmaxcol >= dmincol) { - _nc_lock_global(curses); - - bk = AttrOf(dst->_nc_bkgd); -@@ -160,6 +163,7 @@ - /* make sure rectangle exists in source */ - if ((sminrow + dmaxrow - dminrow) <= (src->_maxy + 1) && - (smincol + dmaxcol - dmincol) <= (src->_maxx + 1)) { -+ bool copied = FALSE; - - T(("rectangle exists in source")); - -@@ -172,10 +176,18 @@ - dy <= dmaxrow; - sy++, dy++) { - -+ if (dy < 0 || sy < 0) -+ continue; -+ - touched = FALSE; - for (dx = dmincol, sx = smincol; - dx <= dmaxcol; - sx++, dx++) { -+ -+ if (dx < 0 || sx < 0) -+ continue; -+ copied = TRUE; -+ - if (over) { - if ((CharOf(src->_line[sy].text[sx]) != L(' ')) && - (!CharEq(dst->_line[dy].text[dx], -@@ -201,7 +213,8 @@ - } - } - T(("finished copywin")); -- rc = OK; -+ if (copied) -+ rc = OK; - } - } - _nc_unlock_global(curses); -diff -Naur ncurses-5.9/ncurses/base/lib_printw.c ncurses-5.9.patch/ncurses/base/lib_printw.c ---- ncurses-5.9/ncurses/base/lib_printw.c 2009-10-25 00:07:03.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_printw.c 2014-09-01 16:33:22.373792151 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - ****************************************************************************/ - - /**************************************************************************** -- * Author: Thomas E. Dickey <dickey@clark.net> 1997 * -+ * Author: Thomas E. Dickey 1997-on * - ****************************************************************************/ - - /* -@@ -39,7 +39,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_printw.c,v 1.20 2009/10/24 22:07:03 tom Exp $") -+MODULE_ID("$Id: lib_printw.c,v 1.23 2012/09/03 17:55:28 tom Exp $") - - NCURSES_EXPORT(int) - printw(const char *fmt,...) -@@ -48,10 +48,11 @@ - int code; - - #ifdef TRACE -- va_start(argp, fmt); -+ va_list argq; -+ va_start(argq, fmt); - T((T_CALLED("printw(%s%s)"), -- _nc_visbuf(fmt), _nc_varargs(fmt, argp))); -- va_end(argp); -+ _nc_visbuf(fmt), _nc_varargs(fmt, argq))); -+ va_end(argq); - #endif - - va_start(argp, fmt); -@@ -68,10 +69,11 @@ - int code; - - #ifdef TRACE -- va_start(argp, fmt); -+ va_list argq; -+ va_start(argq, fmt); - T((T_CALLED("wprintw(%p,%s%s)"), -- (void *) win, _nc_visbuf(fmt), _nc_varargs(fmt, argp))); -- va_end(argp); -+ (void *) win, _nc_visbuf(fmt), _nc_varargs(fmt, argq))); -+ va_end(argq); - #endif - - va_start(argp, fmt); -@@ -88,10 +90,11 @@ - int code; - - #ifdef TRACE -- va_start(argp, fmt); -+ va_list argq; -+ va_start(argq, fmt); - T((T_CALLED("mvprintw(%d,%d,%s%s)"), -- y, x, _nc_visbuf(fmt), _nc_varargs(fmt, argp))); -- va_end(argp); -+ y, x, _nc_visbuf(fmt), _nc_varargs(fmt, argq))); -+ va_end(argq); - #endif - - if ((code = move(y, x)) != ERR) { -@@ -109,10 +112,11 @@ - int code; - - #ifdef TRACE -- va_start(argp, fmt); -+ va_list argq; -+ va_start(argq, fmt); - T((T_CALLED("mvwprintw(%d,%d,%p,%s%s)"), -- y, x, (void *) win, _nc_visbuf(fmt), _nc_varargs(fmt, argp))); -- va_end(argp); -+ y, x, (void *) win, _nc_visbuf(fmt), _nc_varargs(fmt, argq))); -+ va_end(argq); - #endif - - if ((code = wmove(win, y, x)) != ERR) { -diff -Naur ncurses-5.9/ncurses/base/lib_refresh.c ncurses-5.9.patch/ncurses/base/lib_refresh.c ---- ncurses-5.9/ncurses/base/lib_refresh.c 2010-12-19 02:22:58.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_refresh.c 2014-09-01 16:33:22.374792153 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,7 +42,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_refresh.c,v 1.44 2010/12/19 01:22:58 tom Exp $") -+MODULE_ID("$Id: lib_refresh.c,v 1.45 2011/06/25 19:02:22 Vassili.Courzakis Exp $") - - NCURSES_EXPORT(int) - wrefresh(WINDOW *win) -@@ -90,12 +90,6 @@ - #endif - - T((T_CALLED("wnoutrefresh(%p)"), (void *) win)); --#ifdef TRACE -- if (USE_TRACEF(TRACE_UPDATE)) { -- _tracedump("...win", win); -- _nc_unlock_global(tracef); -- } --#endif /* TRACE */ - - /* - * This function will break badly if we try to refresh a pad. -@@ -104,6 +98,13 @@ - || (win->_flags & _ISPAD)) - returnCode(ERR); - -+#ifdef TRACE -+ if (USE_TRACEF(TRACE_UPDATE)) { -+ _tracedump("...win", win); -+ _nc_unlock_global(tracef); -+ } -+#endif /* TRACE */ -+ - /* put them here so "win == 0" won't break our code */ - begx = win->_begx; - begy = win->_begy; -diff -Naur ncurses-5.9/ncurses/base/lib_restart.c ncurses-5.9.patch/ncurses/base/lib_restart.c ---- ncurses-5.9/ncurses/base/lib_restart.c 2009-10-25 00:47:43.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_restart.c 2014-09-01 16:33:22.411792212 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -41,11 +41,7 @@ - - #include <curses.priv.h> - --#if SVR4_TERMIO && !defined(_POSIX_SOURCE) --#define _POSIX_SOURCE --#endif -- --MODULE_ID("$Id: lib_restart.c,v 1.13 2009/10/24 22:47:43 tom Exp $") -+MODULE_ID("$Id: lib_restart.c,v 1.15 2012/12/08 20:40:06 tom Exp $") - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(restartterm) (NCURSES_SP_DCLx -@@ -55,7 +51,7 @@ - { - int result; - #ifdef USE_TERM_DRIVER -- TERMINAL *new_term; -+ TERMINAL *new_term = 0; - #endif - - T((T_CALLED("restartterm(%p,%s,%d,%p)"), -diff -Naur ncurses-5.9/ncurses/base/lib_scanw.c ncurses-5.9.patch/ncurses/base/lib_scanw.c ---- ncurses-5.9/ncurses/base/lib_scanw.c 2009-10-25 00:35:14.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_scanw.c 2014-09-01 16:33:22.411792212 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2001,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -40,14 +40,14 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_scanw.c,v 1.12 2009/10/24 22:35:14 tom Exp $") -+MODULE_ID("$Id: lib_scanw.c,v 1.13 2011/10/22 16:31:35 tom Exp $") - - NCURSES_EXPORT(int) - vwscanw(WINDOW *win, NCURSES_CONST char *fmt, va_list argp) - { - char buf[BUFSIZ]; - -- if (wgetnstr(win, buf, sizeof(buf) - 1) == ERR) -+ if (wgetnstr(win, buf, (int) sizeof(buf) - 1) == ERR) - return (ERR); - - return (vsscanf(buf, fmt, argp)); -diff -Naur ncurses-5.9/ncurses/base/lib_screen.c ncurses-5.9.patch/ncurses/base/lib_screen.c ---- ncurses-5.9/ncurses/base/lib_screen.c 2009-10-25 00:08:55.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_screen.c 2014-09-01 16:33:22.412792214 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_screen.c,v 1.38 2009/10/24 22:08:55 tom Exp $") -+MODULE_ID("$Id: lib_screen.c,v 1.41 2011/10/22 15:03:11 tom Exp $") - - #define MAX_SIZE 0x3fff /* 16k is big enough for a window or pad */ - -@@ -51,8 +51,11 @@ - - T((T_CALLED("getwin(%p)"), (void *) filep)); - -+ if (filep == 0) { -+ returnWin(0); -+ } - clearerr(filep); -- if (fread(&tmp, 1, sizeof(WINDOW), filep) < sizeof(WINDOW) -+ if (fread(&tmp, (size_t) 1, sizeof(WINDOW), filep) < sizeof(WINDOW) - || ferror(filep) - || tmp._maxy == 0 - || tmp._maxy > MAX_SIZE -@@ -110,7 +113,7 @@ - - for (n = 0; n <= nwin->_maxy; n++) { - clearerr(filep); -- if (fread(nwin->_line[n].text, 1, linesize, filep) < linesize -+ if (fread(nwin->_line[n].text, (size_t) 1, linesize, filep) < linesize - || ferror(filep)) { - delwin(nwin); - returnWin(0); -@@ -141,7 +144,7 @@ - size_t len = (size_t) (win->_maxx + 1); - - clearerr(filep); -- if (fwrite(win, sizeof(WINDOW), 1, filep) != 1 -+ if (fwrite(win, sizeof(WINDOW), (size_t) 1, filep) != 1 - || ferror(filep)) - returnCode(code); - -@@ -189,18 +192,20 @@ - NCURSES_EXPORT(int) - scr_dump(const char *file) - { -+ int result; - FILE *fp = 0; - - T((T_CALLED("scr_dump(%s)"), _nc_visbuf(file))); - - if (_nc_access(file, W_OK) < 0 - || (fp = fopen(file, "wb")) == 0) { -- returnCode(ERR); -+ result = ERR; - } else { - (void) putwin(newscr, fp); - (void) fclose(fp); -- returnCode(OK); -+ result = OK; - } -+ returnCode(result); - } - - NCURSES_EXPORT(int) -diff -Naur ncurses-5.9/ncurses/base/lib_scroll.c ncurses-5.9.patch/ncurses/base/lib_scroll.c ---- ncurses-5.9/ncurses/base/lib_scroll.c 2010-12-19 02:48:09.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_scroll.c 2014-09-01 16:33:22.412792214 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -43,13 +43,13 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_scroll.c,v 1.28 2010/12/19 01:48:09 tom Exp $") -+MODULE_ID("$Id: lib_scroll.c,v 1.29 2011/10/22 16:34:50 tom Exp $") - - NCURSES_EXPORT(void) - _nc_scroll_window(WINDOW *win, - int const n, -- NCURSES_SIZE_T const top, -- NCURSES_SIZE_T const bottom, -+ int const top, -+ int const bottom, - NCURSES_CH_T blank) - { - int limit; -diff -Naur ncurses-5.9/ncurses/base/lib_set_term.c ncurses-5.9.patch/ncurses/base/lib_set_term.c ---- ncurses-5.9/ncurses/base/lib_set_term.c 2010-12-20 01:42:20.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_set_term.c 2014-09-01 16:33:22.412792214 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -47,7 +47,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_set_term.c,v 1.138 2010/12/20 00:42:20 tom Exp $") -+MODULE_ID("$Id: lib_set_term.c,v 1.149 2014/03/08 20:32:59 tom Exp $") - - #ifdef USE_TERM_DRIVER - #define MaxColors InfoOf(sp).maxcolors -@@ -188,18 +188,7 @@ - FreeIfNeeded(sp->_acs_map); - FreeIfNeeded(sp->_screen_acs_map); - -- /* -- * If the associated output stream has been closed, we can discard the -- * set-buffer. Limit the error check to EBADF, since fflush may fail -- * for other reasons than trying to operate upon a closed stream. -- */ -- if (sp->_ofp != 0 -- && sp->_setbuf != 0 -- && fflush(sp->_ofp) != 0 -- && errno == EBADF) { -- free(sp->_setbuf); -- } -- -+ NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG); - NCURSES_SP_NAME(del_curterm) (NCURSES_SP_ARGx sp->_term); - free(sp); - -@@ -272,8 +261,8 @@ - } - #endif - --#define ReturnScreenError() _nc_set_screen(0); \ -- returnCode(ERR) -+#define ReturnScreenError() { _nc_set_screen(0); \ -+ returnCode(ERR); } while (0) - - /* OS-independent screen initializations */ - NCURSES_EXPORT(int) -@@ -284,7 +273,7 @@ - int slines, - int scolumns, - FILE *output, -- bool filtered, -+ int filtered, - int slk_format) - { - char *env; -@@ -362,7 +351,7 @@ - slines = 1; - SET_LINES(slines); - #ifdef USE_TERM_DRIVER -- CallDriver(sp, setfilter); -+ CallDriver(sp, td_setfilter); - #else - clear_screen = 0; - cursor_down = parm_down_cursor = 0; -@@ -383,7 +372,15 @@ - sp->_lines = (NCURSES_SIZE_T) slines; - sp->_lines_avail = (NCURSES_SIZE_T) slines; - sp->_columns = (NCURSES_SIZE_T) scolumns; -+ -+ fflush(output); -+ sp->_ofd = output ? fileno(output) : -1; - sp->_ofp = output; -+ sp->out_limit = (size_t) ((2 + slines) * (6 + scolumns)); -+ if ((sp->out_buffer = malloc(sp->out_limit)) == 0) -+ sp->out_limit = 0; -+ sp->out_inuse = 0; -+ - SP_PRE_INIT(sp); - SetNoPadding(sp); - -@@ -510,16 +507,7 @@ - - if (magic_cookie_glitch > 0) { /* tvi, wyse */ - -- sp->_xmc_triggers = sp->_ok_attributes & ( -- A_STANDOUT | -- A_UNDERLINE | -- A_REVERSE | -- A_BLINK | -- A_DIM | -- A_BOLD | -- A_INVIS | -- A_PROTECT -- ); -+ sp->_xmc_triggers = sp->_ok_attributes & XMC_CONFLICT; - #if 0 - /* - * We "should" treat colors as an attribute. The wyse350 (and its -@@ -584,9 +572,13 @@ - - NCURSES_SP_NAME(_nc_init_acs) (NCURSES_SP_ARG); - #if USE_WIDEC_SUPPORT -+ sp->_screen_unicode = _nc_unicode_locale(); - _nc_init_wacs(); -+ if (_nc_wacs == 0) { -+ ReturnScreenError(); -+ } - -- sp->_screen_acs_fix = (_nc_unicode_locale() -+ sp->_screen_acs_fix = (sp->_screen_unicode - && _nc_locale_breaks_acs(sp->_term)); - #endif - env = _nc_get_locale(); -@@ -619,6 +611,7 @@ - #endif - #if USE_SIZECHANGE - sp->_resize = NCURSES_SP_NAME(resizeterm); -+ sp->_ungetch = safe_ungetch; - #endif - - NewScreen(sp)->_clear = TRUE; -@@ -695,7 +688,7 @@ - _nc_setupscreen(int slines GCC_UNUSED, - int scolumns GCC_UNUSED, - FILE *output, -- bool filtered, -+ int filtered, - int slk_format) - { - SCREEN *sp = 0; -@@ -759,6 +752,7 @@ - int line, - int (*init) (WINDOW *, int)) - { -+ START_TRACE(); - return NCURSES_SP_NAME(_nc_ripoffline) (NCURSES_SP_ARGx - (line < 0) ? -1 : 1, - init); -diff -Naur ncurses-5.9/ncurses/base/lib_slkatr_set.c ncurses-5.9.patch/ncurses/base/lib_slkatr_set.c ---- ncurses-5.9/ncurses/base/lib_slkatr_set.c 2009-10-25 00:47:03.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_slkatr_set.c 2014-09-01 16:33:22.412792214 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -38,12 +38,12 @@ - */ - #include <curses.priv.h> - --MODULE_ID("$Id: lib_slkatr_set.c,v 1.14 2009/10/24 22:47:03 tom Exp $") -+MODULE_ID("$Id: lib_slkatr_set.c,v 1.15 2014/02/01 22:10:42 tom Exp $") - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(slk_attr_set) (NCURSES_SP_DCLx - const attr_t attr, -- short color_pair_number, -+ NCURSES_PAIRS_T color_pair_number, - void *opts) - { - int code = ERR; -@@ -51,7 +51,7 @@ - T((T_CALLED("slk_attr_set(%p,%s,%d)"), - (void *) SP_PARM, - _traceattr(attr), -- color_pair_number)); -+ (int) color_pair_number)); - - if (SP_PARM != 0 - && SP_PARM->_slk != 0 -@@ -71,7 +71,7 @@ - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(int) --slk_attr_set(const attr_t attr, short color_pair_number, void *opts) -+slk_attr_set(const attr_t attr, NCURSES_COLOR_T color_pair_number, void *opts) - { - return NCURSES_SP_NAME(slk_attr_set) (CURRENT_SCREEN, attr, - color_pair_number, opts); -diff -Naur ncurses-5.9/ncurses/base/lib_slkcolor.c ncurses-5.9.patch/ncurses/base/lib_slkcolor.c ---- ncurses-5.9/ncurses/base/lib_slkcolor.c 2009-10-25 00:12:21.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_slkcolor.c 2014-09-01 16:33:22.412792214 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -38,14 +38,14 @@ - */ - #include <curses.priv.h> - --MODULE_ID("$Id: lib_slkcolor.c,v 1.16 2009/10/24 22:12:21 tom Exp $") -+MODULE_ID("$Id: lib_slkcolor.c,v 1.17 2014/02/01 22:10:42 tom Exp $") - - NCURSES_EXPORT(int) --NCURSES_SP_NAME(slk_color) (NCURSES_SP_DCLx short color_pair_number) -+NCURSES_SP_NAME(slk_color) (NCURSES_SP_DCLx NCURSES_PAIRS_T color_pair_number) - { - int code = ERR; - -- T((T_CALLED("slk_color(%p,%d)"), (void *) SP_PARM, color_pair_number)); -+ T((T_CALLED("slk_color(%p,%d)"), (void *) SP_PARM, (int) color_pair_number)); - - if (SP_PARM != 0 - && SP_PARM->_slk != 0 -@@ -61,7 +61,7 @@ - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(int) --slk_color(short color_pair_number) -+slk_color(NCURSES_PAIRS_T color_pair_number) - { - return NCURSES_SP_NAME(slk_color) (CURRENT_SCREEN, color_pair_number); - } -diff -Naur ncurses-5.9/ncurses/base/lib_slkrefr.c ncurses-5.9.patch/ncurses/base/lib_slkrefr.c ---- ncurses-5.9/ncurses/base/lib_slkrefr.c 2010-05-01 21:17:28.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_slkrefr.c 2014-09-01 16:33:22.412792214 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -43,7 +43,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_slkrefr.c,v 1.26 2010/05/01 19:17:28 tom Exp $") -+MODULE_ID("$Id: lib_slkrefr.c,v 1.30 2014/03/08 20:32:59 tom Exp $") - - #ifdef USE_TERM_DRIVER - #define NumLabels InfoOf(SP_PARM).numlabels -@@ -97,25 +97,25 @@ - if (slk->ent[i].visible) { - if (numlab > 0 && SLK_STDFMT(fmt)) { - #ifdef USE_TERM_DRIVER -- CallDriver_2(sp, hwlabel, i + 1, slk->ent[i].form_text); -+ CallDriver_2(sp, td_hwlabel, i + 1, slk->ent[i].form_text); - #else - if (i < num_labels) { -- TPUTS_TRACE("plab_norm"); -- putp(TPARM_2(plab_norm, i + 1, slk->ent[i].form_text)); -+ NCURSES_PUTP2("plab_norm", -+ TPARM_2(plab_norm, -+ i + 1, -+ slk->ent[i].form_text)); - } - #endif - } else { - if (fmt == 4) - slk_paint_info(slk->win); - wmove(slk->win, SLK_LINES(fmt) - 1, slk->ent[i].ent_x); -- if (sp->_slk) { -- (void) wattrset(slk->win, AttrOf(sp->_slk->attr)); -- } -+ (void) wattrset(slk->win, (int) AttrOf(slk->attr)); - waddstr(slk->win, slk->ent[i].form_text); - /* if we simulate SLK's, it's looking much more - natural to use the current ATTRIBUTE also - for the label window */ -- (void) wattrset(slk->win, WINDOW_ATTRS(StdScreen(sp))); -+ (void) wattrset(slk->win, (int) WINDOW_ATTRS(StdScreen(sp))); - } - } - slk->ent[i].dirty = FALSE; -@@ -125,14 +125,12 @@ - - if (numlab > 0) { - #ifdef USE_TERM_DRIVER -- CallDriver_1(sp, hwlabelOnOff, slk->hidden ? FALSE : TRUE); -+ CallDriver_1(sp, td_hwlabelOnOff, slk->hidden ? FALSE : TRUE); - #else - if (slk->hidden) { -- TPUTS_TRACE("label_off"); -- putp(label_off); -+ NCURSES_PUTP2("label_off", label_off); - } else { -- TPUTS_TRACE("label_on"); -- putp(label_on); -+ NCURSES_PUTP2("label_on", label_on); - } - #endif - } -diff -Naur ncurses-5.9/ncurses/base/lib_slkset.c ncurses-5.9.patch/ncurses/base/lib_slkset.c ---- ncurses-5.9/ncurses/base/lib_slkset.c 2010-12-26 00:43:58.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_slkset.c 2014-09-01 16:33:22.412792214 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -44,13 +44,13 @@ - #endif - #endif - --MODULE_ID("$Id: lib_slkset.c,v 1.21 2010/12/25 23:43:58 tom Exp $") -+MODULE_ID("$Id: lib_slkset.c,v 1.24 2012/12/08 23:09:25 tom Exp $") - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(slk_set) (NCURSES_SP_DCLx int i, const char *astr, int format) - { - SLK *slk; -- int offset; -+ int offset = 0; - int numchrs; - int numcols; - int limit; -@@ -111,13 +111,12 @@ - slk->ent[i].ent_text[numchrs] = '\0'; - - if ((slk->ent[i].form_text = (char *) _nc_doalloc(slk->ent[i].form_text, -- (unsigned) (limit + -- numchrs + 1)) -+ (size_t) (limit + -+ numchrs + 1)) - ) == 0) - returnCode(ERR); - - switch (format) { -- default: - case 0: /* left-justified */ - offset = 0; - break; -@@ -131,16 +130,16 @@ - if (offset <= 0) - offset = 0; - else -- memset(slk->ent[i].form_text, ' ', (unsigned) offset); -+ memset(slk->ent[i].form_text, ' ', (size_t) offset); - - memcpy(slk->ent[i].form_text + offset, - slk->ent[i].ent_text, -- (unsigned) numchrs); -+ (size_t) numchrs); - - if (offset < limit) { - memset(slk->ent[i].form_text + offset + numchrs, - ' ', -- (unsigned) (limit - (offset + numcols))); -+ (size_t) (limit - (offset + numcols))); - } - - slk->ent[i].form_text[numchrs - numcols + limit] = 0; -diff -Naur ncurses-5.9/ncurses/base/lib_touch.c ncurses-5.9.patch/ncurses/base/lib_touch.c ---- ncurses-5.9/ncurses/base/lib_touch.c 2010-12-19 02:22:58.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/lib_touch.c 2014-09-01 16:33:22.413792217 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -43,7 +43,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_touch.c,v 1.11 2010/12/19 01:22:58 tom Exp $") -+MODULE_ID("$Id: lib_touch.c,v 1.12 2012/06/09 20:29:33 tom Exp $") - - NCURSES_EXPORT(bool) - is_linetouched(WINDOW *win, int line) -@@ -84,7 +84,7 @@ - for (i = y; i < y + n; i++) { - if (i > win->_maxy) - break; -- win->_line[i].firstchar = changed ? 0 : _NOCHANGE; -+ win->_line[i].firstchar = (NCURSES_SIZE_T) (changed ? 0 : _NOCHANGE); - win->_line[i].lastchar = (NCURSES_SIZE_T) (changed - ? win->_maxx - : _NOCHANGE); -diff -Naur ncurses-5.9/ncurses/base/lib_ungetch.c ncurses-5.9.patch/ncurses/base/lib_ungetch.c ---- ncurses-5.9/ncurses/base/lib_ungetch.c 2009-10-25 00:12:21.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/lib_ungetch.c 2014-09-01 16:33:22.413792217 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,7 +42,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_ungetch.c,v 1.14 2009/10/24 22:12:21 tom Exp $") -+MODULE_ID("$Id: lib_ungetch.c,v 1.16 2012/08/04 17:38:53 tom Exp $") - - #include <fifo_defs.h> - -@@ -64,13 +64,14 @@ - - T((T_CALLED("ungetch(%p,%s)"), (void *) sp, _nc_tracechar(sp, ch))); - -- if (tail != -1) { -- if (head == -1) { -+ if (sp != 0 && tail >= 0) { -+ if (head < 0) { - head = 0; - t_inc(); - peek = tail; /* no raw keys */ -- } else -+ } else { - h_dec(); -+ } - - sp->_fifo[head] = ch; - T(("ungetch %s ok", _nc_tracechar(sp, ch))); -diff -Naur ncurses-5.9/ncurses/base/memmove.c ncurses-5.9.patch/ncurses/base/memmove.c ---- ncurses-5.9/ncurses/base/memmove.c 2007-08-11 19:12:43.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/memmove.c 1970-01-01 01:00:00.000000000 +0100 -@@ -1,69 +0,0 @@ --/**************************************************************************** -- * Copyright (c) 1998-2000,2007 Free Software Foundation, Inc. * -- * * -- * Permission is hereby granted, free of charge, to any person obtaining a * -- * copy of this software and associated documentation files (the * -- * "Software"), to deal in the Software without restriction, including * -- * without limitation the rights to use, copy, modify, merge, publish, * -- * distribute, distribute with modifications, sublicense, and/or sell * -- * copies of the Software, and to permit persons to whom the Software is * -- * furnished to do so, subject to the following conditions: * -- * * -- * The above copyright notice and this permission notice shall be included * -- * in all copies or substantial portions of the Software. * -- * * -- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -- * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -- * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -- * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -- * * -- * Except as contained in this notice, the name(s) of the above copyright * -- * holders shall not be used in advertising or otherwise to promote the * -- * sale, use or other dealings in this Software without prior written * -- * authorization. * -- ****************************************************************************/ -- --#include <curses.priv.h> -- --MODULE_ID("$Id: memmove.c,v 1.5 2007/08/11 17:12:43 tom Exp $") -- --/**************************************************************************** -- * Author: Thomas E. Dickey <dickey@clark.net> 1998 * -- ****************************************************************************/ -- --#if USE_MY_MEMMOVE --#define DST ((char *)s1) --#define SRC ((const char *)s2) --NCURSES_EXPORT(void *) --_nc_memmove(void *s1, const void *s2, size_t n) --{ -- if (n != 0) { -- if ((DST + n > SRC) && (SRC + n > DST)) { -- static char *bfr; -- static size_t length; -- register size_t j; -- if (length < n) { -- length = (n * 3) / 2; -- bfr = typeRealloc(char, length, bfr); -- } -- for (j = 0; j < n; j++) -- bfr[j] = SRC[j]; -- s2 = bfr; -- } -- while (n-- != 0) -- DST[n] = SRC[n]; -- } -- return s1; --} --#else --extern --NCURSES_EXPORT(void) --_nc_memmove(void); /* quiet's gcc warning */ --NCURSES_EXPORT(void) --_nc_memmove(void) --{ --} /* nonempty for strict ANSI compilers */ --#endif /* USE_MY_MEMMOVE */ -diff -Naur ncurses-5.9/ncurses/base/MKkeyname.awk ncurses-5.9.patch/ncurses/base/MKkeyname.awk ---- ncurses-5.9/ncurses/base/MKkeyname.awk 2010-12-19 02:36:14.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/MKkeyname.awk 2014-09-01 16:33:22.369792144 +0200 -@@ -1,6 +1,6 @@ --# $Id: MKkeyname.awk,v 1.45 2010/12/19 01:36:14 tom Exp $ -+# $Id: MKkeyname.awk,v 1.48 2013/08/24 17:37:22 tom Exp $ - ############################################################################## --# Copyright (c) 1999-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1999-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -65,6 +65,7 @@ - print "" - print "#define SIZEOF_TABLE 256" - print "#define MyTable _nc_globals.keyname_table" -+ print "#define MyInit _nc_globals.init_keyname" - print "" - print "NCURSES_EXPORT(NCURSES_CONST char *)" - print "safe_keyname (SCREEN *sp, int c)" -@@ -96,21 +97,36 @@ - print " if (result == 0 && (c >= 0 && c < SIZEOF_TABLE)) {" - print " if (MyTable == 0)" - print " MyTable = typeCalloc(char *, SIZEOF_TABLE);" -+ print "" - print " if (MyTable != 0) {" -+ print " int m_prefix = (sp == 0 || sp->_use_meta);" -+ print "" -+ print " /* if sense of meta() changed, discard cached data */" -+ print " if (MyInit != (m_prefix + 1)) {" -+ print " MyInit = m_prefix + 1;" -+ print " for (i = 0; i < SIZEOF_TABLE; ++i) {" -+ print " if (MyTable[i]) {" -+ print " FreeAndNull(MyTable[i]);" -+ print " }" -+ print " }" -+ print " }" -+ print "" -+ print " /* create and cache result as needed */" - print " if (MyTable[c] == 0) {" - print " int cc = c;" - print " p = name;" -- print " if (cc >= 128 && (sp == 0 || sp->_use_meta)) {" -- print " strcpy(p, \"M-\");" -+ print "#define P_LIMIT (sizeof(name) - (size_t) (p - name))" -+ print " if (cc >= 128 && m_prefix) {" -+ print " _nc_STRCPY(p, \"M-\", P_LIMIT);" - print " p += 2;" - print " cc -= 128;" - print " }" - print " if (cc < 32)" -- print " sprintf(p, \"^%c\", cc + '@');" -+ print " _nc_SPRINTF(p, _nc_SLIMIT(P_LIMIT) \"^%c\", cc + '@');" - print " else if (cc == 127)" -- print " strcpy(p, \"^?\");" -+ print " _nc_STRCPY(p, \"^?\", P_LIMIT);" - print " else" -- print " sprintf(p, \"%c\", cc);" -+ print " _nc_SPRINTF(p, _nc_SLIMIT(P_LIMIT) \"%c\", cc);" - print " MyTable[c] = strdup(name);" - print " }" - print " result = MyTable[c];" -diff -Naur ncurses-5.9/ncurses/base/MKlib_gen.sh ncurses-5.9.patch/ncurses/base/MKlib_gen.sh ---- ncurses-5.9/ncurses/base/MKlib_gen.sh 2011-01-22 20:47:29.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/MKlib_gen.sh 2014-09-01 16:33:22.369792144 +0200 -@@ -2,7 +2,7 @@ - # - # MKlib_gen.sh -- generate sources from curses.h macro definitions - # --# ($Id: MKlib_gen.sh,v 1.43 2011/01/22 19:47:29 tom Exp $) -+# ($Id: MKlib_gen.sh,v 1.46 2011/06/04 19:14:08 tom Exp $) - # - ############################################################################## - # Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. # -@@ -410,10 +410,45 @@ - print "#undef vwprintw" - } - /^DECLARATIONS/ {start = 1; next;} -- {if (start) print \$0;} -+ { -+ if (start) { -+ if ( "$USE" == "generated" ) { -+ print \$0; -+ } else if ( \$0 ~ /^[{}]?\$/ ) { -+ print \$0; -+ } else if ( \$0 ~ /;/ ) { -+ print \$0; -+ } else { -+ calls[start] = \$0; -+ print \$0; -+ start++; -+ } -+ } -+ } - END { - if ( "$USE" != "generated" ) { -- print "int main(void) { return 0; }" -+ print "int main(void)" -+ print "{" -+ for (n = 1; n < start; ++n) { -+ value = calls[n]; -+ if ( value !~ /P_POUNDC/ ) { -+ gsub(/[[:blank:]]+/," ",value); -+ sub(/^[[:alnum:]_]+ /,"",value); -+ sub(/^\* /,"",value); -+ gsub(/[[:alnum:]_]+ \* /,"",value); -+ gsub(/ (const) /," ",value); -+ gsub(/ (int|short|attr_t|chtype|wchar_t|NCURSES_BOOL|NCURSES_OUTC|NCURSES_OUTC_sp|va_list) /," ",value); -+ gsub(/ void /,"",value); -+ sub(/^/,"call_",value); -+ gsub(/ (a[[:digit:]]|z) /, " 0 ", value); -+ gsub(/ int[[:blank:]]*[(][^)]+[)][(][^)]+[)]/, "0", value); -+ printf "\t%s;\n", value; -+ } else { -+ print value; -+ } -+ } -+ print " return 0;" -+ print "}" - } - } - EOF1 -@@ -422,6 +457,8 @@ - #include <ncurses_cfg.h> - #undef NCURSES_NOMACROS - #include <curses.h> -+#include <term.h> -+#include <unctrl.h> - - DECLARATIONS - -diff -Naur ncurses-5.9/ncurses/base/MKunctrl.awk ncurses-5.9.patch/ncurses/base/MKunctrl.awk ---- ncurses-5.9/ncurses/base/MKunctrl.awk 2009-07-05 00:05:15.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/MKunctrl.awk 2014-09-01 16:33:22.369792144 +0200 -@@ -1,6 +1,6 @@ --# $Id: MKunctrl.awk,v 1.26 2009/07/04 22:05:15 Clemens.Ladisch Exp $ -+# $Id: MKunctrl.awk,v 1.27 2012/06/09 20:29:33 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2009,2012 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -140,7 +140,7 @@ - } else { - stringname = "unctrl" - } -- print "\tint check = ChCharOf(ch);" -+ print "\tint check = (int) ChCharOf(ch);" - print "\tconst char *result;" - print "" - print "\tif (check >= 0 && check < (int)SIZEOF(unctrl_table)) {" -diff -Naur ncurses-5.9/ncurses/base/resizeterm.c ncurses-5.9.patch/ncurses/base/resizeterm.c ---- ncurses-5.9/ncurses/base/resizeterm.c 2011-01-10 02:34:49.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/base/resizeterm.c 2014-09-01 16:33:22.413792217 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -45,7 +45,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: resizeterm.c,v 1.43 2011/01/10 01:34:49 tom Exp $") -+MODULE_ID("$Id: resizeterm.c,v 1.46 2014/03/08 20:32:59 tom Exp $") - - /* - * If we're trying to be reentrant, do not want any local statics. -@@ -365,58 +365,71 @@ - } - #endif - if (ToLines > screen_lines(SP_PARM)) { -- increase_size(NCURSES_SP_ARGx -- myLines = ToLines, myCols, was_stolen EXTRA_ARGS); -+ result = increase_size(NCURSES_SP_ARGx -+ myLines = ToLines, -+ myCols, -+ was_stolen EXTRA_ARGS); - CurLines = myLines; - CurCols = myCols; - } - -- if (ToCols > screen_columns(SP_PARM)) { -- increase_size(NCURSES_SP_ARGx -- myLines, myCols = ToCols, was_stolen EXTRA_ARGS); -+ if ((result == OK) -+ && (ToCols > screen_columns(SP_PARM))) { -+ result = increase_size(NCURSES_SP_ARGx -+ myLines, -+ myCols = ToCols, -+ was_stolen EXTRA_ARGS); - CurLines = myLines; - CurCols = myCols; - } - -- if (ToLines < myLines || -- ToCols < myCols) { -- decrease_size(NCURSES_SP_ARGx ToLines, ToCols, was_stolen EXTRA_ARGS); -+ if ((result == OK) -+ && (ToLines < myLines || -+ ToCols < myCols)) { -+ result = decrease_size(NCURSES_SP_ARGx -+ ToLines, -+ ToCols, -+ was_stolen EXTRA_ARGS); - } - -- screen_lines(SP_PARM) = (NCURSES_SIZE_T) ToLines; -- screen_columns(SP_PARM) = (NCURSES_SIZE_T) ToCols; -+ if (result == OK) { -+ screen_lines(SP_PARM) = (NCURSES_SIZE_T) ToLines; -+ screen_columns(SP_PARM) = (NCURSES_SIZE_T) ToCols; - - #ifdef USE_TERM_DRIVER -- CallDriver_2(SP_PARM, setsize, ToLines, ToCols); -+ CallDriver_2(SP_PARM, td_setsize, ToLines, ToCols); - #else -- lines = (NCURSES_SIZE_T) ToLines; -- columns = (NCURSES_SIZE_T) ToCols; -+ lines = (NCURSES_SIZE_T) ToLines; -+ columns = (NCURSES_SIZE_T) ToCols; - #endif - -- SP_PARM->_lines_avail = (NCURSES_SIZE_T) (ToLines - was_stolen); -+ SP_PARM->_lines_avail = (NCURSES_SIZE_T) (ToLines - was_stolen); - -- if (SP_PARM->oldhash) { -- FreeAndNull(SP_PARM->oldhash); -- } -- if (SP_PARM->newhash) { -- FreeAndNull(SP_PARM->newhash); -- } -+ if (SP_PARM->oldhash) { -+ FreeAndNull(SP_PARM->oldhash); -+ } -+ if (SP_PARM->newhash) { -+ FreeAndNull(SP_PARM->newhash); -+ } - #ifdef TRACE -- if (USE_TRACEF(TRACE_UPDATE)) { -- SET_LINES(ToLines - was_stolen); -- SET_COLS(ToCols); -- show_window_sizes("after"); -- _nc_unlock_global(tracef); -- } -+ if (USE_TRACEF(TRACE_UPDATE)) { -+ SET_LINES(ToLines - was_stolen); -+ SET_COLS(ToCols); -+ show_window_sizes("after"); -+ _nc_unlock_global(tracef); -+ } - #endif -+ } - } - -- /* -- * Always update LINES, to allow for call from lib_doupdate.c which -- * needs to have the count adjusted by the stolen (ripped off) lines. -- */ -- SET_LINES(ToLines - was_stolen); -- SET_COLS(ToCols); -+ if (result == OK) { -+ /* -+ * Always update LINES, to allow for call from lib_doupdate.c which -+ * needs to have the count adjusted by the stolen (ripped off) lines. -+ */ -+ SET_LINES(ToLines - was_stolen); -+ SET_COLS(ToCols); -+ } - - _nc_nonsp_unlock_global(curses); - -@@ -471,7 +484,6 @@ - result = NCURSES_SP_NAME(resize_term) (NCURSES_SP_ARGx ToLines, ToCols); - - #if USE_SIGWINCH -- safe_ungetch(SP_PARM, KEY_RESIZE); /* so application can know this */ - clearok(CurScreen(SP_PARM), TRUE); /* screen contents are unknown */ - - /* ripped-off lines are a special case: if we did not lengthen -@@ -501,6 +513,9 @@ - } - #endif - } -+#if USE_SIGWINCH -+ safe_ungetch(SP_PARM, KEY_RESIZE); /* so application can know this */ -+#endif - } - - returnCode(result); -diff -Naur ncurses-5.9/ncurses/base/safe_sprintf.c ncurses-5.9.patch/ncurses/base/safe_sprintf.c ---- ncurses-5.9/ncurses/base/safe_sprintf.c 2010-06-06 00:22:27.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/safe_sprintf.c 2014-09-01 16:33:22.413792217 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,13 +27,13 @@ - ****************************************************************************/ - - /**************************************************************************** -- * Author: Thomas E. Dickey <dickey@clark.net> 1997 * -+ * Author: Thomas E. Dickey 1997-on * - ****************************************************************************/ - - #include <curses.priv.h> - #include <ctype.h> - --MODULE_ID("$Id: safe_sprintf.c,v 1.24 2010/06/05 22:22:27 tom Exp $") -+MODULE_ID("$Id: safe_sprintf.c,v 1.27 2013/01/20 01:04:32 tom Exp $") - - #if USE_SAFE_SPRINTF - -@@ -109,12 +109,16 @@ - } else if (state == Prec) { - prec = ival; - } -- sprintf(fmt_arg, "%d", ival); -+ _nc_SPRINTF(fmt_arg, -+ _nc_SLIMIT(sizeof(fmt_arg)) -+ "%d", ival); - fmt_len += strlen(fmt_arg); - if ((format = _nc_doalloc(format, fmt_len)) == 0) { -+ free(buffer); - return -1; - } -- strcpy(&format[--f], fmt_arg); -+ --f; -+ _nc_STRCPY(&format[f], fmt_arg, fmt_len - f); - f = strlen(format); - } else if (isalpha(UChar(*fmt))) { - done = TRUE; -@@ -185,13 +189,13 @@ - format[f] = '\0'; - switch (used) { - case 'i': -- sprintf(buffer, format, ival); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(length) format, ival); - break; - case 'f': -- sprintf(buffer, format, fval); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(length) format, fval); - break; - default: -- sprintf(buffer, format, pval); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(length) format, pval); - break; - } - len += (int) strlen(buffer); -diff -Naur ncurses-5.9/ncurses/base/vsscanf.c ncurses-5.9.patch/ncurses/base/vsscanf.c ---- ncurses-5.9/ncurses/base/vsscanf.c 2004-04-03 22:27:02.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/vsscanf.c 2014-09-01 16:33:22.413792217 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2004,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -38,7 +38,7 @@ - - #if !HAVE_VSSCANF - --MODULE_ID("$Id: vsscanf.c,v 1.18 2004/04/03 20:27:02 tom Exp $") -+MODULE_ID("$Id: vsscanf.c,v 1.20 2012/02/22 22:26:58 tom Exp $") - - #if !(HAVE_VFSCANF || HAVE__DOSCAN) - -@@ -293,12 +293,12 @@ - - /* add %n, if the format was not that */ - if (chunk != cAssigned) { -- strcat(my_fmt, "%n"); -+ _nc_STRCAT(my_fmt, "%n", len_fmt); - } - - switch (chunk) { - case cAssigned: -- strcat(my_fmt, "%n"); -+ _nc_STRCAT(my_fmt, "%n", len_fmt); - pointer = &eaten; - break; - case cInt: -diff -Naur ncurses-5.9/ncurses/base/wresize.c ncurses-5.9.patch/ncurses/base/wresize.c ---- ncurses-5.9/ncurses/base/wresize.c 2010-06-06 00:36:26.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/base/wresize.c 2014-09-01 16:33:22.413792217 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -33,7 +33,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: wresize.c,v 1.34 2010/06/05 22:36:26 tom Exp $") -+MODULE_ID("$Id: wresize.c,v 1.35 2011/05/21 18:55:07 tom Exp $") - - static int - cleanup_lines(struct ldat *data, int length) -@@ -175,9 +175,10 @@ - for (col = 0; col <= ToCols; ++col) - s[col] = win->_nc_bkgd; - } -- } else { -- assert(pline != 0); -+ } else if (pline != 0 && pline[win->_pary + row].text != 0) { - s = &pline[win->_pary + row].text[win->_parx]; -+ } else { -+ s = 0; - } - - if_USE_SCROLL_HINTS(new_lines[row].oldindex = row); -diff -Naur ncurses-5.9/ncurses/build.priv.h ncurses-5.9.patch/ncurses/build.priv.h ---- ncurses-5.9/ncurses/build.priv.h 2010-05-22 22:30:35.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/build.priv.h 2014-09-01 16:33:22.413792217 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -30,9 +30,8 @@ - * Author: Thomas E. Dickey 2010 * - ****************************************************************************/ - -- - /* -- * $Id: build.priv.h,v 1.6 2010/05/22 20:30:35 tom Exp $ -+ * $Id: build.priv.h,v 1.9 2012/02/22 22:17:02 tom Exp $ - * - * build.priv.h - * -@@ -83,6 +82,7 @@ - #define SIZEOF(v) (sizeof(v) / sizeof(v[0])) - - #include <nc_alloc.h> -+#include <nc_string.h> - - /* declare these, to avoid needing term.h */ - #if BROKEN_LINKER || USE_REENTRANT -diff -Naur ncurses-5.9/ncurses/curses.priv.h ncurses-5.9.patch/ncurses/curses.priv.h ---- ncurses-5.9/ncurses/curses.priv.h 2011-01-22 22:10:19.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/curses.priv.h 2014-09-01 16:33:22.414792220 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,7 +34,7 @@ - ****************************************************************************/ - - /* -- * $Id: curses.priv.h,v 1.475 2011/01/22 21:10:19 tom Exp $ -+ * $Id: curses.priv.h,v 1.531 2014/03/08 19:58:54 tom Exp $ - * - * curses.priv.h - * -@@ -65,6 +65,7 @@ - #include <stdlib.h> - #include <string.h> - #include <sys/types.h> -+#include <sys/stat.h> - - #if HAVE_UNISTD_H - #include <unistd.h> -@@ -85,6 +86,12 @@ - - #include <errno.h> - -+#if defined __hpux -+# ifndef EILSEQ -+# define EILSEQ 47 -+# endif -+#endif -+ - #ifndef PATH_MAX - # if defined(_POSIX_PATH_MAX) - # define PATH_MAX _POSIX_PATH_MAX -@@ -111,6 +118,14 @@ - #define USE_FUNC_POLL 0 - #endif - -+#if HAVE_INTTYPES_H -+# include <inttypes.h> -+#else -+# if HAVE_STDINT_H -+# include <stdint.h> -+# endif -+#endif -+ - /* include signal.h before curses.h to work-around defect in glibc 2.1.3 */ - #include <signal.h> - -@@ -135,6 +150,15 @@ - #define USE_EMX_MOUSE 0 - #endif - -+/* kLIBC keyboard/mouse support */ -+#if defined(__OS2__) && defined(__KLIBC__) -+#define USE_KLIBC_KBD 1 -+#define USE_KLIBC_MOUSE 1 -+#else -+#define USE_KLIBC_KBD 0 -+#define USE_KLIBC_MOUSE 0 -+#endif -+ - #define DEFAULT_MAXCLICK 166 - #define EV_MAX 8 /* size of mouse circular event queue */ - -@@ -192,6 +216,18 @@ - #endif - - /* -+ * Either/both S_ISxxx and/or S_IFxxx are defined in sys/types.h; some systems -+ * lack one or the other. -+ */ -+#ifndef S_ISDIR -+#define S_ISDIR(mode) ((mode & S_IFMT) == S_IFDIR) -+#endif -+ -+#ifndef S_ISREG -+#define S_ISREG(mode) ((mode & S_IFMT) == S_IFREG) -+#endif -+ -+/* - * Scroll hints are useless when hashmap is used - */ - #if !USE_SCROLL_HINTS -@@ -208,6 +244,8 @@ - #define if_USE_SCROLL_HINTS(stmt) /*nothing*/ - #endif - -+#include <nc_string.h> -+ - /* - * Options for terminal drivers, etc... - */ -@@ -250,14 +288,6 @@ - * Structure for palette tables - */ - --typedef struct --{ -- short red, green, blue; /* what color_content() returns */ -- short r, g, b; /* params to init_color() */ -- int init; /* true if we called init_color() */ --} --color_t; -- - #define MAXCOLUMNS 135 - #define MAXLINES 66 - #define FIFO_SIZE MAXCOLUMNS+2 /* for nocbreak mode input */ -@@ -282,6 +312,14 @@ - - #include <curses.h> /* we'll use -Ipath directive to get the right one! */ - -+typedef struct -+{ -+ NCURSES_COLOR_T red, green, blue; /* what color_content() returns */ -+ NCURSES_COLOR_T r, g, b; /* params to init_color() */ -+ int init; /* true if we called init_color() */ -+} -+color_t; -+ - /* - * If curses.h did not expose the SCREEN-functions, then we do not need the - * parameter in the corresponding unextended functions. -@@ -312,7 +350,7 @@ - #define HasTerminal(sp) (((sp) != 0) && (0 != ((sp)->_term))) - #define IsValidScreen(sp) (HasTerminal(sp) && !IsPreScreen(sp)) - --#if BROKEN_LINKER || USE_REENTRANT -+#if USE_REENTRANT - #define CurTerm _nc_prescreen._cur_term - #else - #define CurTerm cur_term -@@ -325,6 +363,7 @@ - #endif - - #include <term.h> -+#include <nc_termios.h> - - /* - * Reduce dependency on cur_term global by using terminfo data from SCREEN's -@@ -341,6 +380,16 @@ - #include <nc_tparm.h> - - /* -+ * Simplify ifdef's for the "*_ATTR" macros in case italics are not configured. -+ */ -+#ifdef A_ITALIC -+#define USE_ITALIC 1 -+#else -+#define USE_ITALIC 0 -+#define A_ITALIC 0 -+#endif -+ -+/* - * Use these macros internally, to make tracing less verbose. But leave the - * option for compiling the tracing into the library. - */ -@@ -365,7 +414,7 @@ - #define if_EXT_COLORS(stmt) stmt - #define SetPair(value,p) SetPair2((value).ext_color, AttrOf(value), p) - #define SetPair2(c,a,p) c = (p), \ -- a = (unColor2(a) | (A_COLOR & ColorPair(oldColor(c)))) -+ a = (unColor2(a) | (A_COLOR & (unsigned) ColorPair(oldColor(c)))) - #define GetPair(value) GetPair2((value).ext_color, AttrOf(value)) - #define GetPair2(c,a) ((c) ? (c) : PairNumber(a)) - #define oldColor(p) (((p) > 255) ? 255 : (p)) -@@ -373,11 +422,7 @@ - #define SET_WINDOW_PAIR(w,p) (w)->_color = (p) - #define SameAttrOf(a,b) (AttrOf(a) == AttrOf(b) && GetPair(a) == GetPair(b)) - --#if NCURSES_SP_FUNCS --#define VIDATTR(sp,attr,pair) NCURSES_SP_NAME(vid_attr)(sp, attr, pair, 0) --#else --#define VIDATTR(sp,attr,pair) vid_attr(attr, pair, 0) --#endif -+#define VIDATTR(sp,attr,pair) NCURSES_SP_NAME(vid_puts)(NCURSES_SP_ARGx attr, (short) pair, 0, NCURSES_OUTC_FUNC) - - #else /* !NCURSES_EXT_COLORS */ - -@@ -390,14 +435,14 @@ - WINDOW_ATTRS(w) |= (A_COLOR & (attr_t) ColorPair(p)) - #define SameAttrOf(a,b) (AttrOf(a) == AttrOf(b)) - --#if NCURSES_SP_FUNCS --#define VIDATTR(sp,attr,pair) NCURSES_SP_NAME(vidattr)(sp, attr) --#else --#define VIDATTR(sp,attr,pair) vidattr(attr) --#endif -+#define VIDATTR(sp,attr,pair) NCURSES_SP_NAME(vidputs)(NCURSES_SP_ARGx attr, NCURSES_OUTC_FUNC) - - #endif /* NCURSES_EXT_COLORS */ - -+#define NCURSES_OUTC_FUNC NCURSES_SP_NAME(_nc_outch) -+#define NCURSES_PUTP2(name,value) NCURSES_SP_NAME(_nc_putp)(NCURSES_SP_ARGx name, value) -+#define NCURSES_PUTP2_FLUSH(name,value) NCURSES_SP_NAME(_nc_putp_flush)(NCURSES_SP_ARGx name, value) -+ - #if NCURSES_NO_PADDING - #define GetNoPadding(sp) ((sp) ? (sp)->_no_padding : _nc_prescreen._no_padding) - #define SetNoPadding(sp) _nc_set_no_padding(sp) -@@ -467,6 +512,9 @@ - # endif - # define _declare(name) __extension__ extern __typeof__(name) name - # define weak_symbol(name) _weak_pragma(name) _declare(name) __attribute__((weak)) -+#else -+# undef USE_WEAK_SYMBOLS -+# define USE_WEAK_SYMBOLS 0 - #endif - #endif - -@@ -665,6 +713,9 @@ - #if USE_GPM_SUPPORT - #undef buttons /* term.h defines this, and gpm uses it! */ - #include <gpm.h> -+#if USE_WEAK_SYMBOLS -+weak_symbol(Gpm_Wgetch); -+#endif - - #ifdef HAVE_LIBDL - /* link dynamically to GPM */ -@@ -766,17 +817,23 @@ - #define INIT_TERM_DRIVER() /* nothing */ - #endif - -+typedef struct { -+ const char *name; -+ char *value; -+} ITERATOR_VARS; -+ - /* - * Global data which is not specific to a screen. - */ - typedef struct { -+ SIG_ATOMIC_T have_sigtstp; - SIG_ATOMIC_T have_sigwinch; - SIG_ATOMIC_T cleanup_nested; - - bool init_signals; - bool init_screen; - -- const char *comp_sourcename; -+ char *comp_sourcename; - char *comp_termtype; - - bool have_tic_directory; -@@ -788,6 +845,7 @@ - - char *first_name; - char **keyname_table; -+ int init_keyname; - - int slk_format; - -@@ -798,6 +856,12 @@ - int tgetent_index; - long tgetent_sequence; - -+ char *dbd_blob; /* string-heap for dbd_list[] */ -+ char **dbd_list; /* distinct places to look for data */ -+ int dbd_size; /* length of dbd_list[] */ -+ time_t dbd_time; /* cache last updated */ -+ ITERATOR_VARS dbd_vars[dbdLAST]; -+ - #ifndef USE_SP_WINDOWLIST - WINDOWLIST *_nc_windowlist; - #define WindowList(sp) _nc_globals._nc_windowlist -@@ -891,6 +955,7 @@ - const char *_tputs_trace; - #endif - #endif -+ bool use_tioctl; - } NCURSES_PRESCREEN; - - /* -@@ -911,11 +976,13 @@ - */ - - struct screen { -- int _ifd; /* input file ptr for screen */ -+ int _ifd; /* input file descriptor for screen */ -+ int _ofd; /* output file descriptor for screen */ - FILE *_ofp; /* output file ptr for screen */ -- char *_setbuf; /* buffered I/O for output */ -+ char *out_buffer; /* output buffer */ -+ size_t out_limit; /* output buffer size */ -+ size_t out_inuse; /* output buffer current use */ - bool _filtered; /* filter() was called */ -- bool _buffered; /* setvbuf uses _setbuf data */ - bool _prescreen; /* is in prescreen phase */ - bool _use_env; /* LINES & COLS from environment? */ - int _checkfd; /* filedesc for typeahead check */ -@@ -1015,6 +1082,7 @@ - int _pair_count; /* count of color pairs */ - int _pair_limit; /* actual limit of color-pairs */ - #if NCURSES_EXT_FUNCS -+ bool _assumed_color; /* use assumed colors */ - bool _default_color; /* use default colors */ - bool _has_sgr_39_49; /* has ECMA default color support */ - int _default_fg; /* assumed default foreground */ -@@ -1031,6 +1099,13 @@ - /* used in lib_vidattr.c */ - bool _use_rmso; /* true if we may use 'rmso' */ - bool _use_rmul; /* true if we may use 'rmul' */ -+#if USE_ITALIC -+ bool _use_ritm; /* true if we may use 'ritm' */ -+#endif -+ -+#if USE_KLIBC_KBD -+ bool _extended_key; /* true if an extended key */ -+#endif - - /* - * These data correspond to the state of the idcok() and idlok() -@@ -1055,7 +1130,9 @@ - void (*_mouse_wrap) (SCREEN *); - int _mouse_fd; /* file-descriptor, if any */ - bool _mouse_active; /* true if initialized */ -- mmask_t _mouse_mask; -+ mmask_t _mouse_mask; /* set via mousemask() */ -+ mmask_t _mouse_mask2; /* OR's in press/release bits */ -+ mmask_t _mouse_bstate; - NCURSES_CONST char *_mouse_xtermcap; /* string to enable/disable mouse */ - MEVENT _mouse_events[EV_MAX]; /* hold the last mouse event seen */ - MEVENT *_mouse_eventp; /* next free slot in event queue */ -@@ -1102,6 +1179,7 @@ - */ - #if USE_SIZECHANGE - int (*_resize)(NCURSES_SP_DCLx int y, int x); -+ int (*_ungetch)(SCREEN *, int); - #endif - - /* -@@ -1120,7 +1198,6 @@ - int *_oldnum_list; - int _oldnum_size; - -- bool _cleanup; /* cleanup after int/quit signal */ - NCURSES_SP_OUTC _outch; /* output handler if not putc */ - - int _legacy_coding; /* see use_legacy_coding() */ -@@ -1158,7 +1235,10 @@ - * UTF-8, but do not permit ACS at the same time (see tty_update.c). - */ - bool _screen_acs_fix; -+ bool _screen_unicode; - #endif -+ -+ bool _use_tioctl; - }; - - extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain; -@@ -1168,7 +1248,7 @@ - WINDOWLIST *next; - SCREEN *screen; /* screen containing the window */ - WINDOW win; /* WINDOW_EXT() needs to account for offset */ --#ifdef NCURSES_WIDECHAR -+#if NCURSES_WIDECHAR - char addch_work[(MB_LEN_MAX * 9) + 1]; - unsigned addch_used; /* number of bytes in addch_work[] */ - int addch_x; /* x-position for addch_work[] */ -@@ -1189,7 +1269,7 @@ - sp->_endwin = TRUE; \ - sp->_cursor = -1; \ - WindowList(sp) = 0; \ -- sp->_outch = NCURSES_SP_NAME(_nc_outch); \ -+ sp->_outch = NCURSES_OUTC_FUNC; \ - sp->jump = 0 \ - - /* usually in <limits.h> */ -@@ -1267,8 +1347,8 @@ - - #define UChar(c) ((unsigned char)(c)) - #define UShort(c) ((unsigned short)(c)) --#define ChCharOf(c) ((c) & (chtype)A_CHARTEXT) --#define ChAttrOf(c) ((c) & (chtype)A_ATTRIBUTES) -+#define ChCharOf(c) ((chtype)(c) & (chtype)A_CHARTEXT) -+#define ChAttrOf(c) ((chtype)(c) & (chtype)A_ATTRIBUTES) - - #ifndef MB_LEN_MAX - #define MB_LEN_MAX 8 /* should be >= MB_CUR_MAX, but that may be a function */ -@@ -1322,9 +1402,9 @@ - #define PUTC_DATA char PUTC_buf[MB_LEN_MAX]; int PUTC_i, PUTC_n; \ - mbstate_t PUT_st; wchar_t PUTC_ch - #define PUTC_INIT init_mb (PUT_st) --#define PUTC(ch,b) do { if(!isWidecExt(ch)) { \ -+#define PUTC(ch) do { if(!isWidecExt(ch)) { \ - if (Charable(ch)) { \ -- fputc(CharOf(ch), b); \ -+ NCURSES_OUTC_FUNC (NCURSES_SP_ARGx CharOf(ch)); \ - COUNT_OUTCHARS(1); \ - } else { \ - PUTC_INIT; \ -@@ -1336,10 +1416,14 @@ - (ch).chars[PUTC_i], &PUT_st); \ - if (PUTC_n <= 0) { \ - if (PUTC_ch && is8bits(PUTC_ch) && PUTC_i == 0) \ -- putc(PUTC_ch,b); \ -+ NCURSES_OUTC_FUNC (NCURSES_SP_ARGx CharOf(ch)); \ - break; \ -+ } else { \ -+ int PUTC_j; \ -+ for (PUTC_j = 0; PUTC_j < PUTC_n; ++PUTC_j) { \ -+ NCURSES_OUTC_FUNC (NCURSES_SP_ARGx PUTC_buf[PUTC_j]); \ -+ } \ - } \ -- IGNORE_RC(fwrite(PUTC_buf, (unsigned) PUTC_n, 1, b)); \ - } \ - COUNT_OUTCHARS(PUTC_i); \ - } } } while (0) -@@ -1362,7 +1446,7 @@ - AttrOf(dst) |= (attr_t) (ext + 1) - - #define if_WIDEC(code) code --#define Charable(ch) ((SP_PARM != 0 && SP_PARM->_legacy_coding) \ -+#define Charable(ch) ((SP_PARM->_legacy_coding) \ - || (AttrOf(ch) & A_ALTCHARSET) \ - || (!isWidecExt(ch) && \ - (ch).chars[1] == L'\0' && \ -@@ -1383,8 +1467,8 @@ - #define CHDEREF(wch) wch - #define ARG_CH_T NCURSES_CH_T - #define CARG_CH_T NCURSES_CH_T --#define PUTC_DATA int data = 0 --#define PUTC(ch,b) do { data = CharOf(ch); putc(data,b); } while (0) -+#define PUTC_DATA /* nothing */ -+#define PUTC(ch) NCURSES_OUTC_FUNC (NCURSES_SP_ARGx (int) ch) - - #define BLANK (' '|A_NORMAL) - #define ZEROS ('\0'|A_NORMAL) -@@ -1412,25 +1496,25 @@ - - #define CHANGED_CELL(line,col) \ - if (line->firstchar == _NOCHANGE) \ -- line->firstchar = line->lastchar = (NCURSES_SIZE_T) col; \ -+ line->firstchar = line->lastchar = (NCURSES_SIZE_T) (col); \ - else if ((col) < line->firstchar) \ -- line->firstchar = (NCURSES_SIZE_T) col; \ -+ line->firstchar = (NCURSES_SIZE_T) (col); \ - else if ((col) > line->lastchar) \ -- line->lastchar = (NCURSES_SIZE_T) col -+ line->lastchar = (NCURSES_SIZE_T) (col) - - #define CHANGED_RANGE(line,start,end) \ - if (line->firstchar == _NOCHANGE \ - || line->firstchar > (start)) \ -- line->firstchar = (NCURSES_SIZE_T) start; \ -+ line->firstchar = (NCURSES_SIZE_T) (start); \ - if (line->lastchar == _NOCHANGE \ - || line->lastchar < (end)) \ -- line->lastchar = (NCURSES_SIZE_T) end -+ line->lastchar = (NCURSES_SIZE_T) (end) - - #define CHANGED_TO_EOL(line,start,end) \ - if (line->firstchar == _NOCHANGE \ - || line->firstchar > (start)) \ -- line->firstchar = (NCURSES_SIZE_T) start; \ -- line->lastchar = (NCURSES_SIZE_T) end -+ line->firstchar = (NCURSES_SIZE_T) (start); \ -+ line->lastchar = (NCURSES_SIZE_T) (end) - - #define SIZEOF(v) (sizeof(v)/sizeof(v[0])) - -@@ -1444,6 +1528,20 @@ - #include <nc_alloc.h> - - /* -+ * Use these for tic/infocmp malloc failures. Generally the ncurses library -+ * tries to limp along after a failure. -+ */ -+#define TYPE_MALLOC(type, size, name) \ -+ name = typeMalloc(type, size); \ -+ if (name == 0) \ -+ _nc_err_abort(MSG_NO_MEMORY) -+ -+#define TYPE_REALLOC(type, size, name) \ -+ name = typeRealloc(type, size, name); \ -+ if (name == 0) \ -+ _nc_err_abort(MSG_NO_MEMORY) -+ -+/* - * TTY bit definition for converting tabs to spaces. - */ - #ifdef TAB3 -@@ -1528,7 +1626,7 @@ - #define returnVoidPtr(code) TRACE_RETURN(code,void_ptr) - #define returnWin(code) TRACE_RETURN(code,win) - --extern NCURSES_EXPORT(NCURSES_BOOL) _nc_retrace_bool (NCURSES_BOOL); -+extern NCURSES_EXPORT(NCURSES_BOOL) _nc_retrace_bool (int); - extern NCURSES_EXPORT(NCURSES_CONST void *) _nc_retrace_cvoid_ptr (NCURSES_CONST void *); - extern NCURSES_EXPORT(SCREEN *) _nc_retrace_sp (SCREEN *); - extern NCURSES_EXPORT(WINDOW *) _nc_retrace_win (WINDOW *); -@@ -1539,7 +1637,7 @@ - extern NCURSES_EXPORT(chtype) _nc_retrace_chtype (chtype); - extern NCURSES_EXPORT(const char *) _nc_altcharset_name(attr_t, chtype); - extern NCURSES_EXPORT(const char *) _nc_retrace_cptr (const char *); --extern NCURSES_EXPORT(char) _nc_retrace_char (char); -+extern NCURSES_EXPORT(char) _nc_retrace_char (int); - extern NCURSES_EXPORT(int) _nc_retrace_int (int); - extern NCURSES_EXPORT(int) _nc_retrace_int_attr_t (attr_t); - extern NCURSES_EXPORT(mmask_t) _nc_retrace_mmask_t (SCREEN *, mmask_t); -@@ -1619,7 +1717,9 @@ - NCURSES_EXPORT(void) name (void) { } - - #define ALL_BUT_COLOR ((chtype)~(A_COLOR)) --#define NONBLANK_ATTR (A_NORMAL|A_BOLD|A_DIM|A_BLINK) -+#define NONBLANK_ATTR (A_BOLD | A_DIM | A_BLINK | A_ITALIC) -+#define TPARM_ATTR (A_STANDOUT | A_UNDERLINE | A_REVERSE | A_BLINK | A_DIM | A_BOLD | A_ALTCHARSET | A_INVIS | A_PROTECT) -+#define XMC_CONFLICT (A_STANDOUT | A_UNDERLINE | A_REVERSE | A_BLINK | A_DIM | A_BOLD | A_INVIS | A_PROTECT | A_ITALIC) - #define XMC_CHANGES(c) ((c) & SP_PARM->_xmc_suppress) - - #define toggle_attr_on(S,at) {\ -@@ -1795,6 +1895,8 @@ - /* lib_mvcur.c */ - #define INFINITY 1000000 /* cost: too high to use */ - -+extern NCURSES_EXPORT(int) _nc_mvcur(int yold, int xold, int ynew, int xnew); -+ - extern NCURSES_EXPORT(void) _nc_mvcur_init (void); - extern NCURSES_EXPORT(void) _nc_mvcur_resume (void); - extern NCURSES_EXPORT(void) _nc_mvcur_wrap (void); -@@ -1816,12 +1918,31 @@ - extern NCURSES_EXPORT(char *) _nc_get_locale(void); - extern NCURSES_EXPORT(int) _nc_unicode_locale(void); - extern NCURSES_EXPORT(int) _nc_locale_breaks_acs(TERMINAL *); --extern NCURSES_EXPORT(int) _nc_setupterm(NCURSES_CONST char *, int, int *, bool); --extern NCURSES_EXPORT(void) _nc_tinfo_cmdch(TERMINAL *, char); -+extern NCURSES_EXPORT(int) _nc_setupterm(NCURSES_CONST char *, int, int *, int); -+extern NCURSES_EXPORT(void) _nc_tinfo_cmdch(TERMINAL *, int); - - /* lib_set_term.c */ - extern NCURSES_EXPORT(int) _nc_ripoffline(int, int(*)(WINDOW*, int)); - -+/* lib_setup.c */ -+#define ret_error(code, fmt, arg) if (errret) {\ -+ *errret = code;\ -+ returnCode(ERR);\ -+ } else {\ -+ fprintf(stderr, fmt, arg);\ -+ exit(EXIT_FAILURE);\ -+ } -+ -+#define ret_error1(code, fmt, arg) ret_error(code, "'%s': " fmt, arg) -+ -+#define ret_error0(code, msg) if (errret) {\ -+ *errret = code;\ -+ returnCode(ERR);\ -+ } else {\ -+ fprintf(stderr, msg);\ -+ exit(EXIT_FAILURE);\ -+ } -+ - /* lib_tstp.c */ - #if USE_SIGWINCH - extern NCURSES_EXPORT(int) _nc_handle_sigwinch(SCREEN *); -@@ -1875,16 +1996,17 @@ - extern NCURSES_EXPORT(int) _nc_baudrate (int); - extern NCURSES_EXPORT(int) _nc_freewin (WINDOW *); - extern NCURSES_EXPORT(int) _nc_getenv_num (const char *); --extern NCURSES_EXPORT(int) _nc_keypad (SCREEN *, bool); -+extern NCURSES_EXPORT(int) _nc_keypad (SCREEN *, int); - extern NCURSES_EXPORT(int) _nc_ospeed (int); - extern NCURSES_EXPORT(int) _nc_outch (int); -+extern NCURSES_EXPORT(int) _nc_putchar (int); - extern NCURSES_EXPORT(int) _nc_putp(const char *, const char *); - extern NCURSES_EXPORT(int) _nc_putp_flush(const char *, const char *); - extern NCURSES_EXPORT(int) _nc_read_termcap_entry (const char *const, TERMTYPE *const); --extern NCURSES_EXPORT(int) _nc_setupscreen (int, int, FILE *, bool, int); - extern NCURSES_EXPORT(int) _nc_setup_tinfo(const char *, TERMTYPE *); -+extern NCURSES_EXPORT(int) _nc_setupscreen (int, int, FILE *, int, int); - extern NCURSES_EXPORT(int) _nc_timed_wait (SCREEN *, int, int, int * EVENTLIST_2nd(_nc_eventlist *)); --extern NCURSES_EXPORT(void) _nc_do_color (short, short, bool, NCURSES_OUTC); -+extern NCURSES_EXPORT(void) _nc_do_color (int, int, int, NCURSES_OUTC); - extern NCURSES_EXPORT(void) _nc_flush (void); - extern NCURSES_EXPORT(void) _nc_free_and_exit (int) GCC_NORETURN; - extern NCURSES_EXPORT(void) _nc_free_entry (ENTRY *, TERMTYPE *); -@@ -1895,8 +2017,9 @@ - extern NCURSES_EXPORT(void) _nc_make_oldhash (int i); - extern NCURSES_EXPORT(void) _nc_scroll_oldhash (int n, int top, int bot); - extern NCURSES_EXPORT(void) _nc_scroll_optimize (void); --extern NCURSES_EXPORT(void) _nc_set_buffer (FILE *, bool); --extern NCURSES_EXPORT(void) _nc_signal_handler (bool); -+extern NCURSES_EXPORT(void) _nc_set_buffer (FILE *, int); -+extern NCURSES_EXPORT(void) _nc_setenv_num (const char *, int); -+extern NCURSES_EXPORT(void) _nc_signal_handler (int); - extern NCURSES_EXPORT(void) _nc_synchook (WINDOW *); - extern NCURSES_EXPORT(void) _nc_trace_tries (TRIES *); - -@@ -1905,7 +2028,9 @@ - extern NCURSES_EXPORT(void) _nc_captoinfo_leaks(void); - extern NCURSES_EXPORT(void) _nc_codes_leaks(void); - extern NCURSES_EXPORT(void) _nc_comp_captab_leaks(void); -+extern NCURSES_EXPORT(void) _nc_comp_error_leaks(void); - extern NCURSES_EXPORT(void) _nc_comp_scan_leaks(void); -+extern NCURSES_EXPORT(void) _nc_db_iterator_leaks(void); - extern NCURSES_EXPORT(void) _nc_keyname_leaks(void); - extern NCURSES_EXPORT(void) _nc_names_leaks(void); - extern NCURSES_EXPORT(void) _nc_tgetent_leaks(void); -@@ -1914,7 +2039,7 @@ - #if !(defined(USE_TERMLIB) || defined(USE_BUILD_CC)) - extern NCURSES_EXPORT(NCURSES_CH_T) _nc_render (WINDOW *, NCURSES_CH_T); - extern NCURSES_EXPORT(int) _nc_waddch_nosync (WINDOW *, const NCURSES_CH_T); --extern NCURSES_EXPORT(void) _nc_scroll_window (WINDOW *, int const, NCURSES_SIZE_T const, NCURSES_SIZE_T const, NCURSES_CH_T); -+extern NCURSES_EXPORT(void) _nc_scroll_window (WINDOW *, int const, int const, int const, NCURSES_CH_T); - #endif - - #if USE_WIDEC_SUPPORT -@@ -1946,8 +2071,26 @@ - * Wide-character macros to hide some platform-differences. - */ - #if USE_WIDEC_SUPPORT -+ -+#if defined(__MINGW32__) -+/* -+ * MinGW has wide-character functions, but they do not work correctly. -+ */ -+ -+extern int __MINGW_NOTHROW _nc_wctomb(char *, wchar_t); -+#define wctomb(s,wc) _nc_wctomb(s,wc) -+#define wcrtomb(s,wc,n) _nc_wctomb(s,wc) -+ -+extern int __MINGW_NOTHROW _nc_mbtowc(wchar_t *, const char *, size_t); -+#define mbtowc(pwc,s,n) _nc_mbtowc(pwc,s,n) -+ -+extern int __MINGW_NOTHROW _nc_mblen(const char *, size_t); -+#define mblen(s,n) _nc_mblen(s, n) -+ -+#endif /* __MINGW32__ */ -+ - #if HAVE_MBTOWC && HAVE_MBLEN --#define reset_mbytes(state) IGNORE_RC(mblen(NULL, 0)), IGNORE_RC(mbtowc(NULL, NULL, 0)) -+#define reset_mbytes(state) IGNORE_RC(mblen(NULL, (size_t) 0)), IGNORE_RC(mbtowc(NULL, NULL, (size_t) 0)) - #define count_mbytes(buffer,length,state) mblen(buffer,length) - #define check_mbytes(wch,buffer,length,state) \ - (int) mbtowc(&wch, buffer, length) -@@ -1960,7 +2103,8 @@ - #else - make an error - #endif --#endif -+ -+#endif /* USE_WIDEC_SUPPORT */ - - /* - * Not everyone has vsscanf(), but we'd like to use it for scanw(). -@@ -1974,8 +2118,6 @@ - - #define USE_SETBUF_0 0 - --#define NC_BUFFERED(sp,flag) NCURSES_SP_NAME(_nc_set_buffer)(NCURSES_SP_ARGx sp->_ofp, flag) -- - #define NC_OUTPUT(sp) ((sp != 0) ? sp->_ofp : stdout) - - /* -@@ -2049,9 +2191,9 @@ - - #define SetSafeOutcWrapper(outc) \ - SCREEN* sp = CURRENT_SCREEN; \ -+ struct screen outc_wrapper; \ - if (sp==0) { \ -- struct screen dummy; \ -- sp = &dummy; \ -+ sp = &outc_wrapper; \ - memset(sp,0,sizeof(struct screen)); \ - sp->_outch = _nc_outc_wrapper; \ - }\ -@@ -2084,40 +2226,40 @@ - - typedef struct term_driver { - bool isTerminfo; -- bool (*CanHandle)(struct DriverTCB*,const char*,int*); -- void (*init)(struct DriverTCB*); -- void (*release)(struct DriverTCB*); -- int (*size)(struct DriverTCB*, int* Line, int *Cols); -- int (*sgmode)(struct DriverTCB*, bool setFlag, TTY*); -- chtype (*conattr)(struct DriverTCB*); -- int (*hwcur)(struct DriverTCB*, int yold, int xold, int y, int x); -- int (*mode)(struct DriverTCB*, bool progFlag, bool defFlag); -- bool (*rescol)(struct DriverTCB*); -- bool (*rescolors)(struct DriverTCB*); -- void (*color)(struct DriverTCB*,bool fore, int color, int(*)(SCREEN*,int)); -- int (*doBeepOrFlash)(struct DriverTCB*, bool); -- void (*initpair)(struct DriverTCB*,short,short,short); -- void (*initcolor)(struct DriverTCB*,short,short,short,short); -- void (*docolor)(struct DriverTCB*,short,short,bool,int(*)(SCREEN*,int)); -- void (*initmouse)(struct DriverTCB*); -- int (*testmouse)(struct DriverTCB*,int); -- void (*setfilter)(struct DriverTCB*); -- void (*hwlabel)(struct DriverTCB*,int,char*); -- void (*hwlabelOnOff)(struct DriverTCB*,bool); -- int (*update)(struct DriverTCB*); -- int (*defaultcolors)(struct DriverTCB*,int,int); -- int (*print)(struct DriverTCB*,char*,int); -- int (*getsize)(struct DriverTCB*,int*,int*); -- int (*setsize)(struct DriverTCB*,int,int); -- void (*initacs)(struct DriverTCB*,chtype*,chtype*); -- void (*scinit)(SCREEN *); -- void (*scexit)(SCREEN *); -- int (*twait)(struct DriverTCB*,int,int,int* EVENTLIST_2nd(_nc_eventlist*)); -- int (*read)(struct DriverTCB*,int*); -- int (*nap)(struct DriverTCB*,int); -- int (*kpad)(struct DriverTCB*, bool); -- int (*kyOk)(struct DriverTCB*, int, bool); -- bool (*kyExist)(struct DriverTCB*, int); -+ bool (*td_CanHandle)(struct DriverTCB*, const char*, int*); -+ void (*td_init)(struct DriverTCB*); -+ void (*td_release)(struct DriverTCB*); -+ int (*td_size)(struct DriverTCB*, int* Line, int *Cols); -+ int (*td_sgmode)(struct DriverTCB*, int setFlag, TTY*); -+ chtype (*td_conattr)(struct DriverTCB*); -+ int (*td_hwcur)(struct DriverTCB*, int yold, int xold, int y, int x); -+ int (*td_mode)(struct DriverTCB*, int progFlag, int defFlag); -+ bool (*td_rescol)(struct DriverTCB*); -+ bool (*td_rescolors)(struct DriverTCB*); -+ void (*td_color)(struct DriverTCB*, int fore, int color, int(*)(SCREEN*, int)); -+ int (*td_doBeepOrFlash)(struct DriverTCB*, int); -+ void (*td_initpair)(struct DriverTCB*, int, int, int); -+ void (*td_initcolor)(struct DriverTCB*, int, int, int, int); -+ void (*td_docolor)(struct DriverTCB*, int, int, int, int(*)(SCREEN*, int)); -+ void (*td_initmouse)(struct DriverTCB*); -+ int (*td_testmouse)(struct DriverTCB*, int EVENTLIST_2nd(_nc_eventlist*)); -+ void (*td_setfilter)(struct DriverTCB*); -+ void (*td_hwlabel)(struct DriverTCB*, int, char*); -+ void (*td_hwlabelOnOff)(struct DriverTCB*, int); -+ int (*td_update)(struct DriverTCB*); -+ int (*td_defaultcolors)(struct DriverTCB*, int, int); -+ int (*td_print)(struct DriverTCB*, char*, int); -+ int (*td_getsize)(struct DriverTCB*, int*, int*); -+ int (*td_setsize)(struct DriverTCB*, int, int); -+ void (*td_initacs)(struct DriverTCB*, chtype*, chtype*); -+ void (*td_scinit)(SCREEN *); -+ void (*td_scexit)(SCREEN *); -+ int (*td_twait)(struct DriverTCB*, int, int, int* EVENTLIST_2nd(_nc_eventlist*)); -+ int (*td_read)(struct DriverTCB*, int*); -+ int (*td_nap)(struct DriverTCB*, int); -+ int (*td_kpad)(struct DriverTCB*, int); -+ int (*td_kyOk)(struct DriverTCB*, int, int); -+ bool (*td_kyExist)(struct DriverTCB*, int); - } TERM_DRIVER; - - typedef struct DriverTCB -@@ -2166,7 +2308,7 @@ - #else - #define TINFO_HAS_KEY NCURSES_SP_NAME(has_key) - #define TINFO_DOUPDATE NCURSES_SP_NAME(doupdate) --#define TINFO_MVCUR NCURSES_SP_NAME(mvcur) -+#define TINFO_MVCUR NCURSES_SP_NAME(_nc_mvcur) - #endif - - /* -@@ -2174,7 +2316,7 @@ - */ - #ifdef USE_TERM_DRIVER - extern NCURSES_EXPORT(void) _nc_get_screensize(SCREEN *, TERMINAL *, int *, int *); --extern NCURSES_EXPORT(int) _nc_setupterm_ex(TERMINAL **, NCURSES_CONST char *, int , int *, bool); -+extern NCURSES_EXPORT(int) _nc_setupterm_ex(TERMINAL **, NCURSES_CONST char *, int , int *, int); - #define TINFO_GET_SIZE(sp, tp, lp, cp) \ - _nc_get_screensize(sp, tp, lp, cp) - #define TINFO_SET_CURTERM(sp, tp) \ -@@ -2200,12 +2342,13 @@ - #endif - - #ifdef USE_TERM_DRIVER --#define IsTermInfo(sp) (TCBOf(sp) && ((TCBOf(sp)->drv->isTerminfo))) -+#define IsTermInfo(sp) ((TCBOf(sp) != 0) && ((TCBOf(sp)->drv->isTerminfo))) -+#define HasTInfoTerminal(sp) ((0 != TerminalOf(sp)) && IsTermInfo(sp)) - #else - #define IsTermInfo(sp) TRUE -+#define HasTInfoTerminal(sp) (0 != TerminalOf(sp)) - #endif - --#define HasTInfoTerminal(sp) ((0 != TerminalOf(sp)) && IsTermInfo(sp)) - #define IsValidTIScreen(sp) (HasTInfoTerminal(sp)) - - /* -@@ -2239,7 +2382,9 @@ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_get_tty_mode)(SCREEN*,TTY*); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_mcprint)(SCREEN*,char*, int); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_msec_cost)(SCREEN*, const char *, int); -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_mvcur)(SCREEN*, int, int, int, int); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_outch)(SCREEN*, int); -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_putchar)(SCREEN*, int); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_putp)(SCREEN*, const char *, const char*); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_putp_flush)(SCREEN*, const char *, const char *); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_resetty)(SCREEN*); -@@ -2250,12 +2395,12 @@ - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_scr_restore)(SCREEN*, const char*); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_scrolln)(SCREEN*, int, int, int, int); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_set_tty_mode)(SCREEN*, TTY*); --extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_setupscreen)(SCREEN**, int, int, FILE *, bool, int); -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_setupscreen)(SCREEN**, int, int, FILE *, int, int); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_tgetent)(SCREEN*,char*,const char *); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_tigetnum)(SCREEN*,NCURSES_CONST char*); --extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_vid_attr)(SCREEN *, attr_t, short, void *); -+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_vid_attr)(SCREEN *, attr_t, NCURSES_COLOR_T, void *); - extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_vidputs)(SCREEN*,chtype,int(*) (SCREEN*, int)); --extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_do_color)(SCREEN*, short, short, bool, NCURSES_SP_OUTC); -+extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_do_color)(SCREEN*, int, int, int, NCURSES_SP_OUTC); - extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_do_xmc_glitch)(SCREEN*, attr_t); - extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_flush)(SCREEN*); - extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_free_and_exit)(SCREEN*, int) GCC_NORETURN; -@@ -2271,7 +2416,7 @@ - extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_screen_wrap)(SCREEN*); - extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_scroll_oldhash)(SCREEN*, int n, int top, int bot); - extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_scroll_optimize)(SCREEN*); --extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_set_buffer)(SCREEN*, FILE *, bool); -+extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_set_buffer)(SCREEN*, FILE *, int); - - extern NCURSES_EXPORT(void) _nc_cookie_init(SCREEN *sp); - -diff -Naur ncurses-5.9/ncurses/fifo_defs.h ncurses-5.9.patch/ncurses/fifo_defs.h ---- ncurses-5.9/ncurses/fifo_defs.h 2008-06-28 17:52:32.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/fifo_defs.h 2014-09-01 16:33:22.414792220 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2002,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2008,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,7 +34,7 @@ - /* - * Common macros for lib_getch.c, lib_ungetch.c - * -- * $Id: fifo_defs.h,v 1.6 2008/06/28 15:52:32 tom Exp $ -+ * $Id: fifo_defs.h,v 1.7 2012/08/04 15:59:17 tom Exp $ - */ - - #ifndef FIFO_DEFS_H -@@ -45,14 +45,42 @@ - /* peek points to next uninterpreted character */ - #define peek sp->_fifopeek - --#define h_inc() { head == FIFO_SIZE-1 ? head = 0 : head++; if (head == tail) head = -1, tail = 0;} --#define h_dec() { head == 0 ? head = FIFO_SIZE-1 : head--; if (head == tail) tail = -1;} --#define t_inc() { tail == FIFO_SIZE-1 ? tail = 0 : tail++; if (tail == head) tail = -1;} --#define t_dec() { tail == 0 ? tail = FIFO_SIZE-1 : tail--; if (head == tail) fifo_clear(sp);} --#define p_inc() { peek == FIFO_SIZE-1 ? peek = 0 : peek++;} -+#define h_inc() { \ -+ (head >= FIFO_SIZE-1) \ -+ ? head = 0 \ -+ : head++; \ -+ if (head == tail) \ -+ head = -1, tail = 0; \ -+ } -+#define h_dec() { \ -+ (head <= 0) \ -+ ? head = FIFO_SIZE-1 \ -+ : head--; \ -+ if (head == tail) \ -+ tail = -1; \ -+ } -+#define t_inc() { \ -+ (tail >= FIFO_SIZE-1) \ -+ ? tail = 0 \ -+ : tail++; \ -+ if (tail == head) \ -+ tail = -1; \ -+ } -+#define t_dec() { \ -+ (tail <= 0) \ -+ ? tail = FIFO_SIZE-1 \ -+ : tail--; \ -+ if (head == tail) \ -+ fifo_clear(sp); \ -+ } -+#define p_inc() { \ -+ (peek >= FIFO_SIZE-1) \ -+ ? peek = 0 \ -+ : peek++; \ -+ } - --#define cooked_key_in_fifo() ((head != -1) && (peek != head)) --#define raw_key_in_fifo() ((head != -1) && (peek != tail)) -+#define cooked_key_in_fifo() ((head >= 0) && (peek != head)) -+#define raw_key_in_fifo() ((head >= 0) && (peek != tail)) - - #undef HIDE_EINTR - -diff -Naur ncurses-5.9/ncurses/llib-lncurses ncurses-5.9.patch/ncurses/llib-lncurses ---- ncurses-5.9/ncurses/llib-lncurses 2011-01-08 19:57:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-lncurses 2014-09-01 16:33:22.415792222 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - ****************************************************************************/ - - /**************************************************************************** -- * Author: Thomas E. Dickey 1996-2010,2011 * -+ * Author: Thomas E. Dickey 1996-on * - ****************************************************************************/ - /* LINTLIBRARY */ - -@@ -95,8 +95,6 @@ - - /* ./base/lib_addch.c */ - --#include <ctype.h> -- - #undef _nc_render - chtype _nc_render( - WINDOW *win, -@@ -219,8 +217,6 @@ - - /* ./base/lib_color.c */ - --#include <tic.h> -- - #undef COLOR_PAIRS - int COLOR_PAIRS; - #undef COLORS -@@ -329,17 +325,17 @@ - #undef _nc_do_color_sp - void _nc_do_color_sp( - SCREEN *sp, -- short old_pair, -- short pair, -- NCURSES_BOOL reverse, -+ int old_pair, -+ int pair, -+ int reverse, - NCURSES_OUTC_sp outc) - { /* void */ } - - #undef _nc_do_color - void _nc_do_color( -- short old_pair, -- short pair, -- NCURSES_BOOL reverse, -+ int old_pair, -+ int pair, -+ int reverse, - NCURSES_OUTC outc) - { /* void */ } - -@@ -418,85 +414,85 @@ - /* ./lib_gen.c */ - - #undef addch --int addch( -+int (addch)( - const chtype z) - { return(*(int *)0); } - - #undef addchnstr --int addchnstr( -+int (addchnstr)( - const chtype *a1, - int z) - { return(*(int *)0); } - - #undef addchstr --int addchstr( -+int (addchstr)( - const chtype *z) - { return(*(int *)0); } - - #undef addnstr --int addnstr( -+int (addnstr)( - const char *a1, - int z) - { return(*(int *)0); } - - #undef addstr --int addstr( -+int (addstr)( - const char *z) - { return(*(int *)0); } - - #undef attroff --int attroff( -+int (attroff)( - NCURSES_ATTR_T z) - { return(*(int *)0); } - - #undef attron --int attron( -+int (attron)( - NCURSES_ATTR_T z) - { return(*(int *)0); } - - #undef attrset --int attrset( -+int (attrset)( - NCURSES_ATTR_T z) - { return(*(int *)0); } - - #undef attr_get --int attr_get( -+int (attr_get)( - attr_t *a1, - short *a2, - void *z) - { return(*(int *)0); } - - #undef attr_off --int attr_off( -+int (attr_off)( - attr_t a1, - void *z) - { return(*(int *)0); } - - #undef attr_on --int attr_on( -+int (attr_on)( - attr_t a1, - void *z) - { return(*(int *)0); } - - #undef attr_set --int attr_set( -+int (attr_set)( - attr_t a1, - short a2, - void *z) - { return(*(int *)0); } - - #undef bkgd --int bkgd( -+int (bkgd)( - chtype z) - { return(*(int *)0); } - - #undef bkgdset --void bkgdset( -+void (bkgdset)( - chtype z) - { /* void */ } - - #undef border --int border( -+int (border)( - chtype a1, - chtype a2, - chtype a3, -@@ -508,14 +504,14 @@ - { return(*(int *)0); } - - #undef box --int box( -+int (box)( - WINDOW *a1, - chtype a2, - chtype z) - { return(*(int *)0); } - - #undef chgat --int chgat( -+int (chgat)( - int a1, - attr_t a2, - short a3, -@@ -523,137 +519,137 @@ - { return(*(int *)0); } - - #undef clear --int clear(void) -+int (clear)(void) - { return(*(int *)0); } - - #undef clrtobot --int clrtobot(void) -+int (clrtobot)(void) - { return(*(int *)0); } - - #undef clrtoeol --int clrtoeol(void) -+int (clrtoeol)(void) - { return(*(int *)0); } - - #undef color_set --int color_set( -+int (color_set)( - short a1, - void *z) - { return(*(int *)0); } - - #undef COLOR_PAIR --int COLOR_PAIR( -+int (COLOR_PAIR)( - int z) - { return(*(int *)0); } - - #undef delch --int delch(void) -+int (delch)(void) - { return(*(int *)0); } - - #undef deleteln --int deleteln(void) -+int (deleteln)(void) - { return(*(int *)0); } - - #undef echochar --int echochar( -+int (echochar)( - const chtype z) - { return(*(int *)0); } - - #undef erase --int erase(void) -+int (erase)(void) - { return(*(int *)0); } - - #undef getbkgd --chtype getbkgd( -+chtype (getbkgd)( - WINDOW *z) - { return(*(chtype *)0); } - - #undef getch --int getch(void) -+int (getch)(void) - { return(*(int *)0); } - - #undef getnstr --int getnstr( -+int (getnstr)( - char *a1, - int z) - { return(*(int *)0); } - - #undef getstr --int getstr( -+int (getstr)( - char *z) - { return(*(int *)0); } - - #undef hline --int hline( -+int (hline)( - chtype a1, - int z) - { return(*(int *)0); } - - #undef inch --chtype inch(void) -+chtype (inch)(void) - { return(*(chtype *)0); } - - #undef inchnstr --int inchnstr( -+int (inchnstr)( - chtype *a1, - int z) - { return(*(int *)0); } - - #undef inchstr --int inchstr( -+int (inchstr)( - chtype *z) - { return(*(int *)0); } - - #undef innstr --int innstr( -+int (innstr)( - char *a1, - int z) - { return(*(int *)0); } - - #undef insch --int insch( -+int (insch)( - chtype z) - { return(*(int *)0); } - - #undef insdelln --int insdelln( -+int (insdelln)( - int z) - { return(*(int *)0); } - - #undef insertln --int insertln(void) -+int (insertln)(void) - { return(*(int *)0); } - - #undef insnstr --int insnstr( -+int (insnstr)( - const char *a1, - int z) - { return(*(int *)0); } - - #undef insstr --int insstr( -+int (insstr)( - const char *z) - { return(*(int *)0); } - - #undef instr --int instr( -+int (instr)( - char *z) - { return(*(int *)0); } - - #undef move --int move( -+int (move)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvaddch --int mvaddch( -+int (mvaddch)( - int a1, - int a2, - const chtype z) - { return(*(int *)0); } - - #undef mvaddchnstr --int mvaddchnstr( -+int (mvaddchnstr)( - int a1, - int a2, - const chtype *a3, -@@ -661,14 +657,14 @@ - { return(*(int *)0); } - - #undef mvaddchstr --int mvaddchstr( -+int (mvaddchstr)( - int a1, - int a2, - const chtype *z) - { return(*(int *)0); } - - #undef mvaddnstr --int mvaddnstr( -+int (mvaddnstr)( - int a1, - int a2, - const char *a3, -@@ -676,14 +672,14 @@ - { return(*(int *)0); } - - #undef mvaddstr --int mvaddstr( -+int (mvaddstr)( - int a1, - int a2, - const char *z) - { return(*(int *)0); } - - #undef mvchgat --int mvchgat( -+int (mvchgat)( - int a1, - int a2, - int a3, -@@ -693,19 +689,19 @@ - { return(*(int *)0); } - - #undef mvdelch --int mvdelch( -+int (mvdelch)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvgetch --int mvgetch( -+int (mvgetch)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvgetnstr --int mvgetnstr( -+int (mvgetnstr)( - int a1, - int a2, - char *a3, -@@ -713,14 +709,14 @@ - { return(*(int *)0); } - - #undef mvgetstr --int mvgetstr( -+int (mvgetstr)( - int a1, - int a2, - char *z) - { return(*(int *)0); } - - #undef mvhline --int mvhline( -+int (mvhline)( - int a1, - int a2, - chtype a3, -@@ -728,13 +724,13 @@ - { return(*(int *)0); } - - #undef mvinch --chtype mvinch( -+chtype (mvinch)( - int a1, - int z) - { return(*(chtype *)0); } - - #undef mvinchnstr --int mvinchnstr( -+int (mvinchnstr)( - int a1, - int a2, - chtype *a3, -@@ -742,14 +738,14 @@ - { return(*(int *)0); } - - #undef mvinchstr --int mvinchstr( -+int (mvinchstr)( - int a1, - int a2, - chtype *z) - { return(*(int *)0); } - - #undef mvinnstr --int mvinnstr( -+int (mvinnstr)( - int a1, - int a2, - char *a3, -@@ -757,14 +753,14 @@ - { return(*(int *)0); } - - #undef mvinsch --int mvinsch( -+int (mvinsch)( - int a1, - int a2, - chtype z) - { return(*(int *)0); } - - #undef mvinsnstr --int mvinsnstr( -+int (mvinsnstr)( - int a1, - int a2, - const char *a3, -@@ -772,21 +768,21 @@ - { return(*(int *)0); } - - #undef mvinsstr --int mvinsstr( -+int (mvinsstr)( - int a1, - int a2, - const char *z) - { return(*(int *)0); } - - #undef mvinstr --int mvinstr( -+int (mvinstr)( - int a1, - int a2, - char *z) - { return(*(int *)0); } - - #undef mvvline --int mvvline( -+int (mvvline)( - int a1, - int a2, - chtype a3, -@@ -794,7 +790,7 @@ - { return(*(int *)0); } - - #undef mvwaddch --int mvwaddch( -+int (mvwaddch)( - WINDOW *a1, - int a2, - int a3, -@@ -802,7 +798,7 @@ - { return(*(int *)0); } - - #undef mvwaddchnstr --int mvwaddchnstr( -+int (mvwaddchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -811,7 +807,7 @@ - { return(*(int *)0); } - - #undef mvwaddchstr --int mvwaddchstr( -+int (mvwaddchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -819,7 +815,7 @@ - { return(*(int *)0); } - - #undef mvwaddnstr --int mvwaddnstr( -+int (mvwaddnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -828,7 +824,7 @@ - { return(*(int *)0); } - - #undef mvwaddstr --int mvwaddstr( -+int (mvwaddstr)( - WINDOW *a1, - int a2, - int a3, -@@ -836,7 +832,7 @@ - { return(*(int *)0); } - - #undef mvwchgat --int mvwchgat( -+int (mvwchgat)( - WINDOW *a1, - int a2, - int a3, -@@ -847,21 +843,21 @@ - { return(*(int *)0); } - - #undef mvwdelch --int mvwdelch( -+int (mvwdelch)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef mvwgetch --int mvwgetch( -+int (mvwgetch)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef mvwgetnstr --int mvwgetnstr( -+int (mvwgetnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -870,7 +866,7 @@ - { return(*(int *)0); } - - #undef mvwgetstr --int mvwgetstr( -+int (mvwgetstr)( - WINDOW *a1, - int a2, - int a3, -@@ -878,7 +874,7 @@ - { return(*(int *)0); } - - #undef mvwhline --int mvwhline( -+int (mvwhline)( - WINDOW *a1, - int a2, - int a3, -@@ -887,14 +883,14 @@ - { return(*(int *)0); } - - #undef mvwinch --chtype mvwinch( -+chtype (mvwinch)( - WINDOW *a1, - int a2, - int z) - { return(*(chtype *)0); } - - #undef mvwinchnstr --int mvwinchnstr( -+int (mvwinchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -903,7 +899,7 @@ - { return(*(int *)0); } - - #undef mvwinchstr --int mvwinchstr( -+int (mvwinchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -911,7 +907,7 @@ - { return(*(int *)0); } - - #undef mvwinnstr --int mvwinnstr( -+int (mvwinnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -920,7 +916,7 @@ - { return(*(int *)0); } - - #undef mvwinsch --int mvwinsch( -+int (mvwinsch)( - WINDOW *a1, - int a2, - int a3, -@@ -928,7 +924,7 @@ - { return(*(int *)0); } - - #undef mvwinsnstr --int mvwinsnstr( -+int (mvwinsnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -937,7 +933,7 @@ - { return(*(int *)0); } - - #undef mvwinsstr --int mvwinsstr( -+int (mvwinsstr)( - WINDOW *a1, - int a2, - int a3, -@@ -945,7 +941,7 @@ - { return(*(int *)0); } - - #undef mvwinstr --int mvwinstr( -+int (mvwinstr)( - WINDOW *a1, - int a2, - int a3, -@@ -953,7 +949,7 @@ - { return(*(int *)0); } - - #undef mvwvline --int mvwvline( -+int (mvwvline)( - WINDOW *a1, - int a2, - int a3, -@@ -962,117 +958,117 @@ - { return(*(int *)0); } - - #undef PAIR_NUMBER --int PAIR_NUMBER( -+int (PAIR_NUMBER)( - int z) - { return(*(int *)0); } - - #undef redrawwin --int redrawwin( -+int (redrawwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef refresh --int refresh(void) -+int (refresh)(void) - { return(*(int *)0); } - - #undef scrl --int scrl( -+int (scrl)( - int z) - { return(*(int *)0); } - - #undef scroll --int scroll( -+int (scroll)( - WINDOW *z) - { return(*(int *)0); } - - #undef setscrreg --int setscrreg( -+int (setscrreg)( - int a1, - int z) - { return(*(int *)0); } - - #undef standout --int standout(void) -+int (standout)(void) - { return(*(int *)0); } - - #undef standend --int standend(void) -+int (standend)(void) - { return(*(int *)0); } - - #undef timeout --void timeout( -+void (timeout)( - int z) - { /* void */ } - - #undef touchline --int touchline( -+int (touchline)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef touchwin --int touchwin( -+int (touchwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef untouchwin --int untouchwin( -+int (untouchwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef vline --int vline( -+int (vline)( - chtype a1, - int z) - { return(*(int *)0); } - - #undef vw_printw --int vw_printw( -+int (vw_printw)( - WINDOW *a1, - const char *a2, - va_list z) - { return(*(int *)0); } - - #undef vw_scanw --int vw_scanw( -+int (vw_scanw)( - WINDOW *a1, - char *a2, - va_list z) - { return(*(int *)0); } - - #undef waddchstr --int waddchstr( -+int (waddchstr)( - WINDOW *a1, - const chtype *z) - { return(*(int *)0); } - - #undef waddstr --int waddstr( -+int (waddstr)( - WINDOW *a1, - const char *z) - { return(*(int *)0); } - - #undef wattron --int wattron( -+int (wattron)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattroff --int wattroff( -+int (wattroff)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattrset --int wattrset( -+int (wattrset)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattr_get --int wattr_get( -+int (wattr_get)( - WINDOW *a1, - attr_t *a2, - short *a3, -@@ -1080,7 +1076,7 @@ - { return(*(int *)0); } - - #undef wattr_set --int wattr_set( -+int (wattr_set)( - WINDOW *a1, - attr_t a2, - short a3, -@@ -1088,168 +1084,168 @@ - { return(*(int *)0); } - - #undef wdeleteln --int wdeleteln( -+int (wdeleteln)( - WINDOW *z) - { return(*(int *)0); } - - #undef wgetstr --int wgetstr( -+int (wgetstr)( - WINDOW *a1, - char *z) - { return(*(int *)0); } - - #undef winchstr --int winchstr( -+int (winchstr)( - WINDOW *a1, - chtype *z) - { return(*(int *)0); } - - #undef winsertln --int winsertln( -+int (winsertln)( - WINDOW *z) - { return(*(int *)0); } - - #undef winsstr --int winsstr( -+int (winsstr)( - WINDOW *a1, - const char *z) - { return(*(int *)0); } - - #undef winstr --int winstr( -+int (winstr)( - WINDOW *a1, - char *z) - { return(*(int *)0); } - - #undef wstandout --int wstandout( -+int (wstandout)( - WINDOW *z) - { return(*(int *)0); } - - #undef wstandend --int wstandend( -+int (wstandend)( - WINDOW *z) - { return(*(int *)0); } - - #undef getattrs --int getattrs( -+int (getattrs)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getcurx --int getcurx( -+int (getcurx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getcury --int getcury( -+int (getcury)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getbegx --int getbegx( -+int (getbegx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getbegy --int getbegy( -+int (getbegy)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getmaxx --int getmaxx( -+int (getmaxx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getmaxy --int getmaxy( -+int (getmaxy)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getparx --int getparx( -+int (getparx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getpary --int getpary( -+int (getpary)( - const WINDOW *z) - { return(*(int *)0); } - - #undef wgetparent --WINDOW *wgetparent( -+WINDOW *(wgetparent)( - const WINDOW *z) - { return(*(WINDOW **)0); } - - #undef is_cleared --NCURSES_BOOL is_cleared( -+NCURSES_BOOL (is_cleared)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_idcok --NCURSES_BOOL is_idcok( -+NCURSES_BOOL (is_idcok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_idlok --NCURSES_BOOL is_idlok( -+NCURSES_BOOL (is_idlok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_immedok --NCURSES_BOOL is_immedok( -+NCURSES_BOOL (is_immedok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_keypad --NCURSES_BOOL is_keypad( -+NCURSES_BOOL (is_keypad)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_leaveok --NCURSES_BOOL is_leaveok( -+NCURSES_BOOL (is_leaveok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_nodelay --NCURSES_BOOL is_nodelay( -+NCURSES_BOOL (is_nodelay)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_notimeout --NCURSES_BOOL is_notimeout( -+NCURSES_BOOL (is_notimeout)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_pad --NCURSES_BOOL is_pad( -+NCURSES_BOOL (is_pad)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_scrollok --NCURSES_BOOL is_scrollok( -+NCURSES_BOOL (is_scrollok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_subwin --NCURSES_BOOL is_subwin( -+NCURSES_BOOL (is_subwin)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_syncok --NCURSES_BOOL is_syncok( -+NCURSES_BOOL (is_syncok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef wgetscrreg --int wgetscrreg( -+int (wgetscrreg)( - const WINDOW *a1, - int *a2, - int *z) - { return(*(int *)0); } - - #undef mouse_trafo --NCURSES_BOOL mouse_trafo( -+NCURSES_BOOL (mouse_trafo)( - int *a1, - int *a2, - NCURSES_BOOL z) -@@ -1257,8 +1253,6 @@ - - /* ./base/lib_getch.c */ - --#include <fifo_defs.h> -- - #undef ESCDELAY - int ESCDELAY; - -@@ -1523,6 +1517,23 @@ - void _nc_mvcur_wrap(void) - { /* void */ } - -+#undef _nc_mvcur_sp -+int _nc_mvcur_sp( -+ SCREEN *sp, -+ int yold, -+ int xold, -+ int ynew, -+ int xnew) -+ { return(*(int *)0); } -+ -+#undef _nc_mvcur -+int _nc_mvcur( -+ int yold, -+ int xold, -+ int ynew, -+ int xnew) -+ { return(*(int *)0); } -+ - #undef mvcur_sp - int mvcur_sp( - SCREEN *sp, -@@ -1932,8 +1943,8 @@ - void _nc_scroll_window( - WINDOW *win, - int const n, -- short const top, -- short const bottom, -+ int const top, -+ int const bottom, - chtype blank) - { /* void */ } - -@@ -1978,7 +1989,7 @@ - int slines, - int scolumns, - FILE *output, -- NCURSES_BOOL filtered, -+ int filtered, - int slk_format) - { return(*(int *)0); } - -@@ -1987,7 +1998,7 @@ - int slines, - int scolumns, - FILE *output, -- NCURSES_BOOL filtered, -+ int filtered, - int slk_format) - { return(*(int *)0); } - -@@ -2263,11 +2274,9 @@ - - /* ./tty/lib_tstp.c */ - --#include <SigAction.h> -- - #undef _nc_signal_handler - void _nc_signal_handler( -- NCURSES_BOOL enable) -+ int enable) - { /* void */ } - - /* ./base/lib_ungetch.c */ -@@ -2425,9 +2434,6 @@ - - /* ./tty/tty_update.c */ - --#include <sys/time.h> --#include <sys/times.h> -- - #undef doupdate_sp - int doupdate_sp( - SCREEN *sp) -@@ -2504,12 +2510,6 @@ - va_list ap) - { return(*(char **)0); } - --/* ./base/memmove.c */ -- --#undef _nc_memmove --void _nc_memmove(void) -- { /* void */ } -- - /* ./base/vsscanf.c */ - - #undef _nc_vsscanf -@@ -2769,7 +2769,7 @@ - #undef _nc_copy_termtype - void _nc_copy_termtype( - TERMTYPE *dst, -- TERMTYPE *src) -+ const TERMTYPE *src) - { /* void */ } - - /* ./codes.c */ -@@ -2783,8 +2783,6 @@ - - /* ./comp_captab.c */ - --#include <hashsize.h> -- - #undef _nc_get_table - const struct name_table_entry *_nc_get_table( - NCURSES_BOOL termcap) -@@ -2959,6 +2957,12 @@ - const char *name) - { return(*(int *)0); } - -+#undef _nc_setenv_num -+void _nc_setenv_num( -+ const char *name, -+ int value) -+ { /* void */ } -+ - /* ./tinfo/home_terminfo.c */ - - #undef _nc_home_terminfo -@@ -2967,15 +2971,6 @@ - - /* ./tinfo/init_keytry.c */ - --#if 0 -- --#include <init_keytry.h> -- --#undef _nc_tinfo_fkeys --const struct tinfo_fkeys _nc_tinfo_fkeys[] = {0}; -- --#endif -- - #undef _nc_init_keytry - void _nc_init_keytry( - SCREEN *sp) -@@ -2997,8 +2992,6 @@ - - /* ./tinfo/lib_baudrate.c */ - --#include <termcap.h> -- - struct speed { - int s; - int sp; -@@ -3144,8 +3137,6 @@ - - /* ./tinfo/lib_napms.c */ - --#include <time.h> -- - #undef napms_sp - int napms_sp( - SCREEN *sp, -@@ -3255,7 +3246,7 @@ - #undef _nc_keypad - int _nc_keypad( - SCREEN *sp, -- NCURSES_BOOL flag) -+ int flag) - { return(*(int *)0); } - - /* ./tinfo/lib_raw.c */ -@@ -3329,10 +3320,6 @@ - - /* ./tinfo/lib_setup.c */ - --#include <locale.h> --#include <sys/ioctl.h> --#include <langinfo.h> -- - #undef ttytype - char ttytype[256]; - #undef LINES -@@ -3364,11 +3351,22 @@ - NCURSES_BOOL f) - { /* void */ } - -+#undef use_tioctl_sp -+void use_tioctl_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ - #undef use_env - void use_env( - NCURSES_BOOL f) - { /* void */ } - -+#undef use_tioctl -+void use_tioctl( -+ NCURSES_BOOL f) -+ { /* void */ } -+ - #undef _nc_get_screensize - void _nc_get_screensize( - SCREEN *sp, -@@ -3390,7 +3388,7 @@ - #undef _nc_tinfo_cmdch - void _nc_tinfo_cmdch( - TERMINAL *termp, -- char proto) -+ int proto) - { /* void */ } - - #undef _nc_get_locale -@@ -3411,7 +3409,7 @@ - char *tname, - int Filedes, - int *errret, -- NCURSES_BOOL reuse) -+ int reuse) - { return(*(int *)0); } - - #undef new_prescr -@@ -3439,12 +3437,6 @@ - const char *name) - { return(*(int *)0); } - --#if 0 -- --#include <capdefaults.c> -- --#endif -- - #undef tgetent - int tgetent( - char *bufp, -@@ -3550,7 +3542,7 @@ - int _nc_tparm_analyze( - const char *string, - char *p_is_s[9], -- int *popcount) -+ int *_nc_popcount) - { return(*(int *)0); } - - #undef tparm -@@ -3570,7 +3562,7 @@ - #undef PC - char PC; - #undef ospeed --NCURSES_OSPEED ospeed; -+short ospeed; - #undef _nc_nulls_sent - int _nc_nulls_sent; - -@@ -3610,12 +3602,28 @@ - int ch) - { return(*(int *)0); } - -+#undef _nc_putchar_sp -+int _nc_putchar_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar -+int _nc_putchar( -+ int ch) -+ { return(*(int *)0); } -+ - #undef putp_sp - int putp_sp( - SCREEN *sp, - const char *string) - { return(*(int *)0); } - -+#undef putp -+int putp( -+ const char *string) -+ { return(*(int *)0); } -+ - #undef _nc_putp_sp - int _nc_putp_sp( - SCREEN *sp, -@@ -3623,11 +3631,6 @@ - const char *string) - { return(*(int *)0); } - --#undef putp --int putp( -- const char *string) -- { return(*(int *)0); } -- - #undef _nc_putp - int _nc_putp( - const char *name, -@@ -3678,12 +3681,12 @@ - - #undef _nc_retrace_bool - NCURSES_BOOL _nc_retrace_bool( -- NCURSES_BOOL code) -+ int code) - { return(*(NCURSES_BOOL *)0); } - - #undef _nc_retrace_char - char _nc_retrace_char( -- char code) -+ int code) - { return(*(char *)0); } - - #undef _nc_retrace_int -@@ -3917,9 +3920,27 @@ - #undef strfnames - char *const strfnames[] = {0}; - -+/* ./tinfo/obsolete.c */ -+ -+#undef _nc_set_buffer_sp -+void _nc_set_buffer_sp( -+ SCREEN *sp, -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+#undef _nc_set_buffer -+void _nc_set_buffer( -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ - /* ./tinfo/read_entry.c */ - --#include <hashed_db.h> -+#undef _nc_init_termtype -+void _nc_init_termtype( -+ TERMTYPE *const tp) -+ { /* void */ } - - #undef _nc_read_termtype - int _nc_read_termtype( -@@ -3943,27 +3964,8 @@ - - /* ./tinfo/read_termcap.c */ - --#include <sys/types.h> -- --#undef _nc_read_termcap_entry --int _nc_read_termcap_entry( -- const char *const tn, -- TERMTYPE *const tp) -- { return(*(int *)0); } -- --/* ./tinfo/setbuf.c */ -- --#undef _nc_set_buffer_sp --void _nc_set_buffer_sp( -- SCREEN *sp, -- FILE *ofp, -- NCURSES_BOOL buffered) -- { /* void */ } -- --#undef _nc_set_buffer --void _nc_set_buffer( -- FILE *ofp, -- NCURSES_BOOL buffered) -+#undef _nc_read_termcap -+void _nc_read_termcap(void) - { /* void */ } - - /* ./tinfo/strings.c */ -@@ -4189,6 +4191,8 @@ - - #undef _nc_syntax - int _nc_syntax; -+#undef _nc_strict_bsd -+int _nc_strict_bsd; - #undef _nc_curr_file_pos - long _nc_curr_file_pos; - #undef _nc_comment_start -diff -Naur ncurses-5.9/ncurses/llib-lncursest ncurses-5.9.patch/ncurses/llib-lncursest ---- ncurses-5.9/ncurses/llib-lncursest 2011-01-08 20:03:20.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-lncursest 2014-09-01 16:33:22.415792222 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2008-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 2008-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -332,17 +332,17 @@ - #undef _nc_do_color_sp - void _nc_do_color_sp( - SCREEN *sp, -- short old_pair, -- short pair, -- NCURSES_BOOL reverse, -+ int old_pair, -+ int pair, -+ int reverse, - NCURSES_OUTC_sp outc) - { /* void */ } - - #undef _nc_do_color - void _nc_do_color( -- short old_pair, -- short pair, -- NCURSES_BOOL reverse, -+ int old_pair, -+ int pair, -+ int reverse, - NCURSES_OUTC outc) - { /* void */ } - -@@ -420,86 +420,88 @@ - - /* ./lib_gen.c */ - -+#include <ncurses_cfg.h> -+ - #undef addch --int addch( -+int (addch)( - const chtype z) - { return(*(int *)0); } - - #undef addchnstr --int addchnstr( -+int (addchnstr)( - const chtype *a1, - int z) - { return(*(int *)0); } - - #undef addchstr --int addchstr( -+int (addchstr)( - const chtype *z) - { return(*(int *)0); } - - #undef addnstr --int addnstr( -+int (addnstr)( - const char *a1, - int z) - { return(*(int *)0); } - - #undef addstr --int addstr( -+int (addstr)( - const char *z) - { return(*(int *)0); } - - #undef attroff --int attroff( -- NCURSES_ATTR_T z) -+int (attroff)( -+ int z) - { return(*(int *)0); } - - #undef attron --int attron( -- NCURSES_ATTR_T z) -+int (attron)( -+ int z) - { return(*(int *)0); } - - #undef attrset --int attrset( -- NCURSES_ATTR_T z) -+int (attrset)( -+ int z) - { return(*(int *)0); } - - #undef attr_get --int attr_get( -+int (attr_get)( - attr_t *a1, - short *a2, - void *z) - { return(*(int *)0); } - - #undef attr_off --int attr_off( -+int (attr_off)( - attr_t a1, - void *z) - { return(*(int *)0); } - - #undef attr_on --int attr_on( -+int (attr_on)( - attr_t a1, - void *z) - { return(*(int *)0); } - - #undef attr_set --int attr_set( -+int (attr_set)( - attr_t a1, - short a2, - void *z) - { return(*(int *)0); } - - #undef bkgd --int bkgd( -+int (bkgd)( - chtype z) - { return(*(int *)0); } - - #undef bkgdset --void bkgdset( -+void (bkgdset)( - chtype z) - { /* void */ } - - #undef border --int border( -+int (border)( - chtype a1, - chtype a2, - chtype a3, -@@ -511,14 +513,14 @@ - { return(*(int *)0); } - - #undef box --int box( -+int (box)( - WINDOW *a1, - chtype a2, - chtype z) - { return(*(int *)0); } - - #undef chgat --int chgat( -+int (chgat)( - int a1, - attr_t a2, - short a3, -@@ -526,137 +528,137 @@ - { return(*(int *)0); } - - #undef clear --int clear(void) -+int (clear)(void) - { return(*(int *)0); } - - #undef clrtobot --int clrtobot(void) -+int (clrtobot)(void) - { return(*(int *)0); } - - #undef clrtoeol --int clrtoeol(void) -+int (clrtoeol)(void) - { return(*(int *)0); } - - #undef color_set --int color_set( -+int (color_set)( - short a1, - void *z) - { return(*(int *)0); } - - #undef COLOR_PAIR --int COLOR_PAIR( -+int (COLOR_PAIR)( - int z) - { return(*(int *)0); } - - #undef delch --int delch(void) -+int (delch)(void) - { return(*(int *)0); } - - #undef deleteln --int deleteln(void) -+int (deleteln)(void) - { return(*(int *)0); } - - #undef echochar --int echochar( -+int (echochar)( - const chtype z) - { return(*(int *)0); } - - #undef erase --int erase(void) -+int (erase)(void) - { return(*(int *)0); } - - #undef getbkgd --chtype getbkgd( -+chtype (getbkgd)( - WINDOW *z) - { return(*(chtype *)0); } - - #undef getch --int getch(void) -+int (getch)(void) - { return(*(int *)0); } - - #undef getnstr --int getnstr( -+int (getnstr)( - char *a1, - int z) - { return(*(int *)0); } - - #undef getstr --int getstr( -+int (getstr)( - char *z) - { return(*(int *)0); } - - #undef hline --int hline( -+int (hline)( - chtype a1, - int z) - { return(*(int *)0); } - - #undef inch --chtype inch(void) -+chtype (inch)(void) - { return(*(chtype *)0); } - - #undef inchnstr --int inchnstr( -+int (inchnstr)( - chtype *a1, - int z) - { return(*(int *)0); } - - #undef inchstr --int inchstr( -+int (inchstr)( - chtype *z) - { return(*(int *)0); } - - #undef innstr --int innstr( -+int (innstr)( - char *a1, - int z) - { return(*(int *)0); } - - #undef insch --int insch( -+int (insch)( - chtype z) - { return(*(int *)0); } - - #undef insdelln --int insdelln( -+int (insdelln)( - int z) - { return(*(int *)0); } - - #undef insertln --int insertln(void) -+int (insertln)(void) - { return(*(int *)0); } - - #undef insnstr --int insnstr( -+int (insnstr)( - const char *a1, - int z) - { return(*(int *)0); } - - #undef insstr --int insstr( -+int (insstr)( - const char *z) - { return(*(int *)0); } - - #undef instr --int instr( -+int (instr)( - char *z) - { return(*(int *)0); } - - #undef move --int move( -+int (move)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvaddch --int mvaddch( -+int (mvaddch)( - int a1, - int a2, - const chtype z) - { return(*(int *)0); } - - #undef mvaddchnstr --int mvaddchnstr( -+int (mvaddchnstr)( - int a1, - int a2, - const chtype *a3, -@@ -664,14 +666,14 @@ - { return(*(int *)0); } - - #undef mvaddchstr --int mvaddchstr( -+int (mvaddchstr)( - int a1, - int a2, - const chtype *z) - { return(*(int *)0); } - - #undef mvaddnstr --int mvaddnstr( -+int (mvaddnstr)( - int a1, - int a2, - const char *a3, -@@ -679,14 +681,14 @@ - { return(*(int *)0); } - - #undef mvaddstr --int mvaddstr( -+int (mvaddstr)( - int a1, - int a2, - const char *z) - { return(*(int *)0); } - - #undef mvchgat --int mvchgat( -+int (mvchgat)( - int a1, - int a2, - int a3, -@@ -696,19 +698,19 @@ - { return(*(int *)0); } - - #undef mvdelch --int mvdelch( -+int (mvdelch)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvgetch --int mvgetch( -+int (mvgetch)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvgetnstr --int mvgetnstr( -+int (mvgetnstr)( - int a1, - int a2, - char *a3, -@@ -716,14 +718,14 @@ - { return(*(int *)0); } - - #undef mvgetstr --int mvgetstr( -+int (mvgetstr)( - int a1, - int a2, - char *z) - { return(*(int *)0); } - - #undef mvhline --int mvhline( -+int (mvhline)( - int a1, - int a2, - chtype a3, -@@ -731,13 +733,13 @@ - { return(*(int *)0); } - - #undef mvinch --chtype mvinch( -+chtype (mvinch)( - int a1, - int z) - { return(*(chtype *)0); } - - #undef mvinchnstr --int mvinchnstr( -+int (mvinchnstr)( - int a1, - int a2, - chtype *a3, -@@ -745,14 +747,14 @@ - { return(*(int *)0); } - - #undef mvinchstr --int mvinchstr( -+int (mvinchstr)( - int a1, - int a2, - chtype *z) - { return(*(int *)0); } - - #undef mvinnstr --int mvinnstr( -+int (mvinnstr)( - int a1, - int a2, - char *a3, -@@ -760,14 +762,14 @@ - { return(*(int *)0); } - - #undef mvinsch --int mvinsch( -+int (mvinsch)( - int a1, - int a2, - chtype z) - { return(*(int *)0); } - - #undef mvinsnstr --int mvinsnstr( -+int (mvinsnstr)( - int a1, - int a2, - const char *a3, -@@ -775,21 +777,21 @@ - { return(*(int *)0); } - - #undef mvinsstr --int mvinsstr( -+int (mvinsstr)( - int a1, - int a2, - const char *z) - { return(*(int *)0); } - - #undef mvinstr --int mvinstr( -+int (mvinstr)( - int a1, - int a2, - char *z) - { return(*(int *)0); } - - #undef mvvline --int mvvline( -+int (mvvline)( - int a1, - int a2, - chtype a3, -@@ -797,7 +799,7 @@ - { return(*(int *)0); } - - #undef mvwaddch --int mvwaddch( -+int (mvwaddch)( - WINDOW *a1, - int a2, - int a3, -@@ -805,7 +807,7 @@ - { return(*(int *)0); } - - #undef mvwaddchnstr --int mvwaddchnstr( -+int (mvwaddchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -814,7 +816,7 @@ - { return(*(int *)0); } - - #undef mvwaddchstr --int mvwaddchstr( -+int (mvwaddchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -822,7 +824,7 @@ - { return(*(int *)0); } - - #undef mvwaddnstr --int mvwaddnstr( -+int (mvwaddnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -831,7 +833,7 @@ - { return(*(int *)0); } - - #undef mvwaddstr --int mvwaddstr( -+int (mvwaddstr)( - WINDOW *a1, - int a2, - int a3, -@@ -839,7 +841,7 @@ - { return(*(int *)0); } - - #undef mvwchgat --int mvwchgat( -+int (mvwchgat)( - WINDOW *a1, - int a2, - int a3, -@@ -850,21 +852,21 @@ - { return(*(int *)0); } - - #undef mvwdelch --int mvwdelch( -+int (mvwdelch)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef mvwgetch --int mvwgetch( -+int (mvwgetch)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef mvwgetnstr --int mvwgetnstr( -+int (mvwgetnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -873,7 +875,7 @@ - { return(*(int *)0); } - - #undef mvwgetstr --int mvwgetstr( -+int (mvwgetstr)( - WINDOW *a1, - int a2, - int a3, -@@ -881,7 +883,7 @@ - { return(*(int *)0); } - - #undef mvwhline --int mvwhline( -+int (mvwhline)( - WINDOW *a1, - int a2, - int a3, -@@ -890,14 +892,14 @@ - { return(*(int *)0); } - - #undef mvwinch --chtype mvwinch( -+chtype (mvwinch)( - WINDOW *a1, - int a2, - int z) - { return(*(chtype *)0); } - - #undef mvwinchnstr --int mvwinchnstr( -+int (mvwinchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -906,7 +908,7 @@ - { return(*(int *)0); } - - #undef mvwinchstr --int mvwinchstr( -+int (mvwinchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -914,7 +916,7 @@ - { return(*(int *)0); } - - #undef mvwinnstr --int mvwinnstr( -+int (mvwinnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -923,7 +925,7 @@ - { return(*(int *)0); } - - #undef mvwinsch --int mvwinsch( -+int (mvwinsch)( - WINDOW *a1, - int a2, - int a3, -@@ -931,7 +933,7 @@ - { return(*(int *)0); } - - #undef mvwinsnstr --int mvwinsnstr( -+int (mvwinsnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -940,7 +942,7 @@ - { return(*(int *)0); } - - #undef mvwinsstr --int mvwinsstr( -+int (mvwinsstr)( - WINDOW *a1, - int a2, - int a3, -@@ -948,7 +950,7 @@ - { return(*(int *)0); } - - #undef mvwinstr --int mvwinstr( -+int (mvwinstr)( - WINDOW *a1, - int a2, - int a3, -@@ -956,7 +958,7 @@ - { return(*(int *)0); } - - #undef mvwvline --int mvwvline( -+int (mvwvline)( - WINDOW *a1, - int a2, - int a3, -@@ -965,117 +967,117 @@ - { return(*(int *)0); } - - #undef PAIR_NUMBER --int PAIR_NUMBER( -+int (PAIR_NUMBER)( - int z) - { return(*(int *)0); } - - #undef redrawwin --int redrawwin( -+int (redrawwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef refresh --int refresh(void) -+int (refresh)(void) - { return(*(int *)0); } - - #undef scrl --int scrl( -+int (scrl)( - int z) - { return(*(int *)0); } - - #undef scroll --int scroll( -+int (scroll)( - WINDOW *z) - { return(*(int *)0); } - - #undef setscrreg --int setscrreg( -+int (setscrreg)( - int a1, - int z) - { return(*(int *)0); } - - #undef standout --int standout(void) -+int (standout)(void) - { return(*(int *)0); } - - #undef standend --int standend(void) -+int (standend)(void) - { return(*(int *)0); } - - #undef timeout --void timeout( -+void (timeout)( - int z) - { /* void */ } - - #undef touchline --int touchline( -+int (touchline)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef touchwin --int touchwin( -+int (touchwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef untouchwin --int untouchwin( -+int (untouchwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef vline --int vline( -+int (vline)( - chtype a1, - int z) - { return(*(int *)0); } - - #undef vw_printw --int vw_printw( -+int (vw_printw)( - WINDOW *a1, - const char *a2, - va_list z) - { return(*(int *)0); } - - #undef vw_scanw --int vw_scanw( -+int (vw_scanw)( - WINDOW *a1, - char *a2, - va_list z) - { return(*(int *)0); } - - #undef waddchstr --int waddchstr( -+int (waddchstr)( - WINDOW *a1, - const chtype *z) - { return(*(int *)0); } - - #undef waddstr --int waddstr( -+int (waddstr)( - WINDOW *a1, - const char *z) - { return(*(int *)0); } - - #undef wattron --int wattron( -+int (wattron)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattroff --int wattroff( -+int (wattroff)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattrset --int wattrset( -+int (wattrset)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattr_get --int wattr_get( -+int (wattr_get)( - WINDOW *a1, - attr_t *a2, - short *a3, -@@ -1083,7 +1085,7 @@ - { return(*(int *)0); } - - #undef wattr_set --int wattr_set( -+int (wattr_set)( - WINDOW *a1, - attr_t a2, - short a3, -@@ -1091,168 +1093,168 @@ - { return(*(int *)0); } - - #undef wdeleteln --int wdeleteln( -+int (wdeleteln)( - WINDOW *z) - { return(*(int *)0); } - - #undef wgetstr --int wgetstr( -+int (wgetstr)( - WINDOW *a1, - char *z) - { return(*(int *)0); } - - #undef winchstr --int winchstr( -+int (winchstr)( - WINDOW *a1, - chtype *z) - { return(*(int *)0); } - - #undef winsertln --int winsertln( -+int (winsertln)( - WINDOW *z) - { return(*(int *)0); } - - #undef winsstr --int winsstr( -+int (winsstr)( - WINDOW *a1, - const char *z) - { return(*(int *)0); } - - #undef winstr --int winstr( -+int (winstr)( - WINDOW *a1, - char *z) - { return(*(int *)0); } - - #undef wstandout --int wstandout( -+int (wstandout)( - WINDOW *z) - { return(*(int *)0); } - - #undef wstandend --int wstandend( -+int (wstandend)( - WINDOW *z) - { return(*(int *)0); } - - #undef getattrs --int getattrs( -+int (getattrs)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getcurx --int getcurx( -+int (getcurx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getcury --int getcury( -+int (getcury)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getbegx --int getbegx( -+int (getbegx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getbegy --int getbegy( -+int (getbegy)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getmaxx --int getmaxx( -+int (getmaxx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getmaxy --int getmaxy( -+int (getmaxy)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getparx --int getparx( -+int (getparx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getpary --int getpary( -+int (getpary)( - const WINDOW *z) - { return(*(int *)0); } - - #undef wgetparent --WINDOW *wgetparent( -+WINDOW *(wgetparent)( - const WINDOW *z) - { return(*(WINDOW **)0); } - - #undef is_cleared --NCURSES_BOOL is_cleared( -+NCURSES_BOOL (is_cleared)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_idcok --NCURSES_BOOL is_idcok( -+NCURSES_BOOL (is_idcok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_idlok --NCURSES_BOOL is_idlok( -+NCURSES_BOOL (is_idlok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_immedok --NCURSES_BOOL is_immedok( -+NCURSES_BOOL (is_immedok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_keypad --NCURSES_BOOL is_keypad( -+NCURSES_BOOL (is_keypad)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_leaveok --NCURSES_BOOL is_leaveok( -+NCURSES_BOOL (is_leaveok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_nodelay --NCURSES_BOOL is_nodelay( -+NCURSES_BOOL (is_nodelay)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_notimeout --NCURSES_BOOL is_notimeout( -+NCURSES_BOOL (is_notimeout)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_pad --NCURSES_BOOL is_pad( -+NCURSES_BOOL (is_pad)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_scrollok --NCURSES_BOOL is_scrollok( -+NCURSES_BOOL (is_scrollok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_subwin --NCURSES_BOOL is_subwin( -+NCURSES_BOOL (is_subwin)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_syncok --NCURSES_BOOL is_syncok( -+NCURSES_BOOL (is_syncok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef wgetscrreg --int wgetscrreg( -+int (wgetscrreg)( - const WINDOW *a1, - int *a2, - int *z) - { return(*(int *)0); } - - #undef mouse_trafo --NCURSES_BOOL mouse_trafo( -+NCURSES_BOOL (mouse_trafo)( - int *a1, - int *a2, - NCURSES_BOOL z) -@@ -1532,6 +1534,23 @@ - void _nc_mvcur_wrap(void) - { /* void */ } - -+#undef _nc_mvcur_sp -+int _nc_mvcur_sp( -+ SCREEN *sp, -+ int yold, -+ int xold, -+ int ynew, -+ int xnew) -+ { return(*(int *)0); } -+ -+#undef _nc_mvcur -+int _nc_mvcur( -+ int yold, -+ int xold, -+ int ynew, -+ int xnew) -+ { return(*(int *)0); } -+ - #undef mvcur_sp - int mvcur_sp( - SCREEN *sp, -@@ -1598,6 +1617,8 @@ - - /* ./base/lib_newwin.c */ - -+#include "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/stddef.h" -+ - #undef _nc_freewin - int _nc_freewin( - WINDOW *win) -@@ -1987,7 +2008,7 @@ - int slines, - int scolumns, - FILE *output, -- NCURSES_BOOL filtered, -+ int filtered, - int slk_format) - { return(*(int *)0); } - -@@ -1996,7 +2017,7 @@ - int slines, - int scolumns, - FILE *output, -- NCURSES_BOOL filtered, -+ int filtered, - int slk_format) - { return(*(int *)0); } - -@@ -2276,7 +2297,7 @@ - - #undef _nc_signal_handler - void _nc_signal_handler( -- NCURSES_BOOL enable) -+ int enable) - { /* void */ } - - /* ./base/lib_ungetch.c */ -@@ -2513,12 +2534,6 @@ - va_list ap) - { return(*(char **)0); } - --/* ./base/memmove.c */ -- --#undef _nc_memmove --void _nc_memmove(void) -- { /* void */ } -- - /* ./base/vsscanf.c */ - - #undef _nc_vsscanf -@@ -2778,7 +2793,7 @@ - #undef _nc_copy_termtype - void _nc_copy_termtype( - TERMTYPE *dst, -- TERMTYPE *src) -+ const TERMTYPE *src) - { /* void */ } - - /* ./codes.c */ -@@ -2882,6 +2897,8 @@ - - /* ./tinfo/db_iterator.c */ - -+#include <time.h> -+ - #undef _nc_tic_dir - const char *_nc_tic_dir( - const char *path) -@@ -2973,6 +2990,12 @@ - const char *name) - { return(*(int *)0); } - -+#undef _nc_setenv_num -+void _nc_setenv_num( -+ const char *name, -+ int value) -+ { /* void */ } -+ - /* ./tinfo/home_terminfo.c */ - - #undef _nc_home_terminfo -@@ -3313,7 +3336,7 @@ - #undef _nc_keypad - int _nc_keypad( - SCREEN *sp, -- NCURSES_BOOL flag) -+ int flag) - { return(*(int *)0); } - - /* ./tinfo/lib_raw.c */ -@@ -3444,11 +3467,22 @@ - NCURSES_BOOL f) - { /* void */ } - -+#undef use_tioctl_sp -+void use_tioctl_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ - #undef use_env - void use_env( - NCURSES_BOOL f) - { /* void */ } - -+#undef use_tioctl -+void use_tioctl( -+ NCURSES_BOOL f) -+ { /* void */ } -+ - #undef _nc_get_screensize - void _nc_get_screensize( - SCREEN *sp, -@@ -3470,7 +3504,7 @@ - #undef _nc_tinfo_cmdch - void _nc_tinfo_cmdch( - TERMINAL *termp, -- char proto) -+ int proto) - { /* void */ } - - #undef _nc_get_locale -@@ -3491,7 +3525,7 @@ - char *tname, - int Filedes, - int *errret, -- NCURSES_BOOL reuse) -+ int reuse) - { return(*(int *)0); } - - #undef new_prescr -@@ -3630,7 +3664,7 @@ - int _nc_tparm_analyze( - const char *string, - char *p_is_s[9], -- int *popcount) -+ int *_nc_popcount) - { return(*(int *)0); } - - #undef tparm -@@ -3650,7 +3684,7 @@ - #undef PC - char PC; - #undef ospeed --NCURSES_OSPEED ospeed; -+short ospeed; - #undef _nc_nulls_sent - int _nc_nulls_sent; - -@@ -3690,12 +3724,28 @@ - int ch) - { return(*(int *)0); } - -+#undef _nc_putchar_sp -+int _nc_putchar_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar -+int _nc_putchar( -+ int ch) -+ { return(*(int *)0); } -+ - #undef putp_sp - int putp_sp( - SCREEN *sp, - const char *string) - { return(*(int *)0); } - -+#undef putp -+int putp( -+ const char *string) -+ { return(*(int *)0); } -+ - #undef _nc_putp_sp - int _nc_putp_sp( - SCREEN *sp, -@@ -3703,11 +3753,6 @@ - const char *string) - { return(*(int *)0); } - --#undef putp --int putp( -- const char *string) -- { return(*(int *)0); } -- - #undef _nc_putp - int _nc_putp( - const char *name, -@@ -3772,12 +3817,12 @@ - - #undef _nc_retrace_bool - NCURSES_BOOL _nc_retrace_bool( -- NCURSES_BOOL code) -+ int code) - { return(*(NCURSES_BOOL *)0); } - - #undef _nc_retrace_char - char _nc_retrace_char( -- char code) -+ int code) - { return(*(char *)0); } - - #undef _nc_retrace_int -@@ -4033,10 +4078,30 @@ - char *const *_nc_strfnames(void) - { return(*(char **)0); } - -+/* ./tinfo/obsolete.c */ -+ -+#undef _nc_set_buffer_sp -+void _nc_set_buffer_sp( -+ SCREEN *sp, -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+#undef _nc_set_buffer -+void _nc_set_buffer( -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ - /* ./tinfo/read_entry.c */ - - #include <hashed_db.h> - -+#undef _nc_init_termtype -+void _nc_init_termtype( -+ TERMTYPE *const tp) -+ { /* void */ } -+ - #undef _nc_read_termtype - int _nc_read_termtype( - TERMTYPE *ptr, -@@ -4061,25 +4126,8 @@ - - #include <sys/types.h> - --#undef _nc_read_termcap_entry --int _nc_read_termcap_entry( -- const char *const tn, -- TERMTYPE *const tp) -- { return(*(int *)0); } -- --/* ./tinfo/setbuf.c */ -- --#undef _nc_set_buffer_sp --void _nc_set_buffer_sp( -- SCREEN *sp, -- FILE *ofp, -- NCURSES_BOOL buffered) -- { /* void */ } -- --#undef _nc_set_buffer --void _nc_set_buffer( -- FILE *ofp, -- NCURSES_BOOL buffered) -+#undef _nc_read_termcap -+void _nc_read_termcap(void) - { /* void */ } - - /* ./tinfo/strings.c */ -@@ -4305,6 +4353,8 @@ - - #undef _nc_syntax - int _nc_syntax; -+#undef _nc_strict_bsd -+int _nc_strict_bsd; - #undef _nc_curr_file_pos - long _nc_curr_file_pos; - #undef _nc_comment_start -diff -Naur ncurses-5.9/ncurses/llib-lncursestw ncurses-5.9.patch/ncurses/llib-lncursestw ---- ncurses-5.9/ncurses/llib-lncursestw 2011-01-08 20:11:35.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-lncursestw 2014-09-01 16:33:22.416792223 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2009-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 2009-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - ****************************************************************************/ - - /**************************************************************************** -- * Author: Thomas E. Dickey 2009-2010,2011 * -+ * Author: Thomas E. Dickey 2009-on * - ****************************************************************************/ - /* LINTLIBRARY */ - -@@ -369,17 +369,17 @@ - #undef _nc_do_color_sp - void _nc_do_color_sp( - SCREEN *sp, -- short old_pair, -- short pair, -- NCURSES_BOOL reverse, -+ int old_pair, -+ int pair, -+ int reverse, - NCURSES_OUTC_sp outc) - { /* void */ } - - #undef _nc_do_color - void _nc_do_color( -- short old_pair, -- short pair, -- NCURSES_BOOL reverse, -+ int old_pair, -+ int pair, -+ int reverse, - NCURSES_OUTC outc) - { /* void */ } - -@@ -457,86 +457,88 @@ - - /* ./lib_gen.c */ - -+#include <ncurses_cfg.h> -+ - #undef addch --int addch( -+int (addch)( - const chtype z) - { return(*(int *)0); } - - #undef addchnstr --int addchnstr( -+int (addchnstr)( - const chtype *a1, - int z) - { return(*(int *)0); } - - #undef addchstr --int addchstr( -+int (addchstr)( - const chtype *z) - { return(*(int *)0); } - - #undef addnstr --int addnstr( -+int (addnstr)( - const char *a1, - int z) - { return(*(int *)0); } - - #undef addstr --int addstr( -+int (addstr)( - const char *z) - { return(*(int *)0); } - - #undef attroff --int attroff( -- NCURSES_ATTR_T z) -+int (attroff)( -+ int z) - { return(*(int *)0); } - - #undef attron --int attron( -- NCURSES_ATTR_T z) -+int (attron)( -+ int z) - { return(*(int *)0); } - - #undef attrset --int attrset( -- NCURSES_ATTR_T z) -+int (attrset)( -+ int z) - { return(*(int *)0); } - - #undef attr_get --int attr_get( -+int (attr_get)( - attr_t *a1, - short *a2, - void *z) - { return(*(int *)0); } - - #undef attr_off --int attr_off( -+int (attr_off)( - attr_t a1, - void *z) - { return(*(int *)0); } - - #undef attr_on --int attr_on( -+int (attr_on)( - attr_t a1, - void *z) - { return(*(int *)0); } - - #undef attr_set --int attr_set( -+int (attr_set)( - attr_t a1, - short a2, - void *z) - { return(*(int *)0); } - - #undef bkgd --int bkgd( -+int (bkgd)( - chtype z) - { return(*(int *)0); } - - #undef bkgdset --void bkgdset( -+void (bkgdset)( - chtype z) - { /* void */ } - - #undef border --int border( -+int (border)( - chtype a1, - chtype a2, - chtype a3, -@@ -548,14 +550,14 @@ - { return(*(int *)0); } - - #undef box --int box( -+int (box)( - WINDOW *a1, - chtype a2, - chtype z) - { return(*(int *)0); } - - #undef chgat --int chgat( -+int (chgat)( - int a1, - attr_t a2, - short a3, -@@ -563,137 +565,137 @@ - { return(*(int *)0); } - - #undef clear --int clear(void) -+int (clear)(void) - { return(*(int *)0); } - - #undef clrtobot --int clrtobot(void) -+int (clrtobot)(void) - { return(*(int *)0); } - - #undef clrtoeol --int clrtoeol(void) -+int (clrtoeol)(void) - { return(*(int *)0); } - - #undef color_set --int color_set( -+int (color_set)( - short a1, - void *z) - { return(*(int *)0); } - - #undef COLOR_PAIR --int COLOR_PAIR( -+int (COLOR_PAIR)( - int z) - { return(*(int *)0); } - - #undef delch --int delch(void) -+int (delch)(void) - { return(*(int *)0); } - - #undef deleteln --int deleteln(void) -+int (deleteln)(void) - { return(*(int *)0); } - - #undef echochar --int echochar( -+int (echochar)( - const chtype z) - { return(*(int *)0); } - - #undef erase --int erase(void) -+int (erase)(void) - { return(*(int *)0); } - - #undef getbkgd --chtype getbkgd( -+chtype (getbkgd)( - WINDOW *z) - { return(*(chtype *)0); } - - #undef getch --int getch(void) -+int (getch)(void) - { return(*(int *)0); } - - #undef getnstr --int getnstr( -+int (getnstr)( - char *a1, - int z) - { return(*(int *)0); } - - #undef getstr --int getstr( -+int (getstr)( - char *z) - { return(*(int *)0); } - - #undef hline --int hline( -+int (hline)( - chtype a1, - int z) - { return(*(int *)0); } - - #undef inch --chtype inch(void) -+chtype (inch)(void) - { return(*(chtype *)0); } - - #undef inchnstr --int inchnstr( -+int (inchnstr)( - chtype *a1, - int z) - { return(*(int *)0); } - - #undef inchstr --int inchstr( -+int (inchstr)( - chtype *z) - { return(*(int *)0); } - - #undef innstr --int innstr( -+int (innstr)( - char *a1, - int z) - { return(*(int *)0); } - - #undef insch --int insch( -+int (insch)( - chtype z) - { return(*(int *)0); } - - #undef insdelln --int insdelln( -+int (insdelln)( - int z) - { return(*(int *)0); } - - #undef insertln --int insertln(void) -+int (insertln)(void) - { return(*(int *)0); } - - #undef insnstr --int insnstr( -+int (insnstr)( - const char *a1, - int z) - { return(*(int *)0); } - - #undef insstr --int insstr( -+int (insstr)( - const char *z) - { return(*(int *)0); } - - #undef instr --int instr( -+int (instr)( - char *z) - { return(*(int *)0); } - - #undef move --int move( -+int (move)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvaddch --int mvaddch( -+int (mvaddch)( - int a1, - int a2, - const chtype z) - { return(*(int *)0); } - - #undef mvaddchnstr --int mvaddchnstr( -+int (mvaddchnstr)( - int a1, - int a2, - const chtype *a3, -@@ -701,14 +703,14 @@ - { return(*(int *)0); } - - #undef mvaddchstr --int mvaddchstr( -+int (mvaddchstr)( - int a1, - int a2, - const chtype *z) - { return(*(int *)0); } - - #undef mvaddnstr --int mvaddnstr( -+int (mvaddnstr)( - int a1, - int a2, - const char *a3, -@@ -716,14 +718,14 @@ - { return(*(int *)0); } - - #undef mvaddstr --int mvaddstr( -+int (mvaddstr)( - int a1, - int a2, - const char *z) - { return(*(int *)0); } - - #undef mvchgat --int mvchgat( -+int (mvchgat)( - int a1, - int a2, - int a3, -@@ -733,19 +735,19 @@ - { return(*(int *)0); } - - #undef mvdelch --int mvdelch( -+int (mvdelch)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvgetch --int mvgetch( -+int (mvgetch)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvgetnstr --int mvgetnstr( -+int (mvgetnstr)( - int a1, - int a2, - char *a3, -@@ -753,14 +755,14 @@ - { return(*(int *)0); } - - #undef mvgetstr --int mvgetstr( -+int (mvgetstr)( - int a1, - int a2, - char *z) - { return(*(int *)0); } - - #undef mvhline --int mvhline( -+int (mvhline)( - int a1, - int a2, - chtype a3, -@@ -768,13 +770,13 @@ - { return(*(int *)0); } - - #undef mvinch --chtype mvinch( -+chtype (mvinch)( - int a1, - int z) - { return(*(chtype *)0); } - - #undef mvinchnstr --int mvinchnstr( -+int (mvinchnstr)( - int a1, - int a2, - chtype *a3, -@@ -782,14 +784,14 @@ - { return(*(int *)0); } - - #undef mvinchstr --int mvinchstr( -+int (mvinchstr)( - int a1, - int a2, - chtype *z) - { return(*(int *)0); } - - #undef mvinnstr --int mvinnstr( -+int (mvinnstr)( - int a1, - int a2, - char *a3, -@@ -797,14 +799,14 @@ - { return(*(int *)0); } - - #undef mvinsch --int mvinsch( -+int (mvinsch)( - int a1, - int a2, - chtype z) - { return(*(int *)0); } - - #undef mvinsnstr --int mvinsnstr( -+int (mvinsnstr)( - int a1, - int a2, - const char *a3, -@@ -812,21 +814,21 @@ - { return(*(int *)0); } - - #undef mvinsstr --int mvinsstr( -+int (mvinsstr)( - int a1, - int a2, - const char *z) - { return(*(int *)0); } - - #undef mvinstr --int mvinstr( -+int (mvinstr)( - int a1, - int a2, - char *z) - { return(*(int *)0); } - - #undef mvvline --int mvvline( -+int (mvvline)( - int a1, - int a2, - chtype a3, -@@ -834,7 +836,7 @@ - { return(*(int *)0); } - - #undef mvwaddch --int mvwaddch( -+int (mvwaddch)( - WINDOW *a1, - int a2, - int a3, -@@ -842,7 +844,7 @@ - { return(*(int *)0); } - - #undef mvwaddchnstr --int mvwaddchnstr( -+int (mvwaddchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -851,7 +853,7 @@ - { return(*(int *)0); } - - #undef mvwaddchstr --int mvwaddchstr( -+int (mvwaddchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -859,7 +861,7 @@ - { return(*(int *)0); } - - #undef mvwaddnstr --int mvwaddnstr( -+int (mvwaddnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -868,7 +870,7 @@ - { return(*(int *)0); } - - #undef mvwaddstr --int mvwaddstr( -+int (mvwaddstr)( - WINDOW *a1, - int a2, - int a3, -@@ -876,7 +878,7 @@ - { return(*(int *)0); } - - #undef mvwchgat --int mvwchgat( -+int (mvwchgat)( - WINDOW *a1, - int a2, - int a3, -@@ -887,21 +889,21 @@ - { return(*(int *)0); } - - #undef mvwdelch --int mvwdelch( -+int (mvwdelch)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef mvwgetch --int mvwgetch( -+int (mvwgetch)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef mvwgetnstr --int mvwgetnstr( -+int (mvwgetnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -910,7 +912,7 @@ - { return(*(int *)0); } - - #undef mvwgetstr --int mvwgetstr( -+int (mvwgetstr)( - WINDOW *a1, - int a2, - int a3, -@@ -918,7 +920,7 @@ - { return(*(int *)0); } - - #undef mvwhline --int mvwhline( -+int (mvwhline)( - WINDOW *a1, - int a2, - int a3, -@@ -927,14 +929,14 @@ - { return(*(int *)0); } - - #undef mvwinch --chtype mvwinch( -+chtype (mvwinch)( - WINDOW *a1, - int a2, - int z) - { return(*(chtype *)0); } - - #undef mvwinchnstr --int mvwinchnstr( -+int (mvwinchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -943,7 +945,7 @@ - { return(*(int *)0); } - - #undef mvwinchstr --int mvwinchstr( -+int (mvwinchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -951,7 +953,7 @@ - { return(*(int *)0); } - - #undef mvwinnstr --int mvwinnstr( -+int (mvwinnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -960,7 +962,7 @@ - { return(*(int *)0); } - - #undef mvwinsch --int mvwinsch( -+int (mvwinsch)( - WINDOW *a1, - int a2, - int a3, -@@ -968,7 +970,7 @@ - { return(*(int *)0); } - - #undef mvwinsnstr --int mvwinsnstr( -+int (mvwinsnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -977,7 +979,7 @@ - { return(*(int *)0); } - - #undef mvwinsstr --int mvwinsstr( -+int (mvwinsstr)( - WINDOW *a1, - int a2, - int a3, -@@ -985,7 +987,7 @@ - { return(*(int *)0); } - - #undef mvwinstr --int mvwinstr( -+int (mvwinstr)( - WINDOW *a1, - int a2, - int a3, -@@ -993,7 +995,7 @@ - { return(*(int *)0); } - - #undef mvwvline --int mvwvline( -+int (mvwvline)( - WINDOW *a1, - int a2, - int a3, -@@ -1002,129 +1004,129 @@ - { return(*(int *)0); } - - #undef PAIR_NUMBER --int PAIR_NUMBER( -+int (PAIR_NUMBER)( - int z) - { return(*(int *)0); } - - #undef redrawwin --int redrawwin( -+int (redrawwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef refresh --int refresh(void) -+int (refresh)(void) - { return(*(int *)0); } - - #undef scrl --int scrl( -+int (scrl)( - int z) - { return(*(int *)0); } - - #undef scroll --int scroll( -+int (scroll)( - WINDOW *z) - { return(*(int *)0); } - - #undef setscrreg --int setscrreg( -+int (setscrreg)( - int a1, - int z) - { return(*(int *)0); } - - #undef slk_attr_off --int slk_attr_off( -+int (slk_attr_off)( - const attr_t a1, - void *z) - { return(*(int *)0); } - - #undef slk_attr_on --int slk_attr_on( -+int (slk_attr_on)( - attr_t a1, - void *z) - { return(*(int *)0); } - - #undef standout --int standout(void) -+int (standout)(void) - { return(*(int *)0); } - - #undef standend --int standend(void) -+int (standend)(void) - { return(*(int *)0); } - - #undef timeout --void timeout( -+void (timeout)( - int z) - { /* void */ } - - #undef touchline --int touchline( -+int (touchline)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef touchwin --int touchwin( -+int (touchwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef untouchwin --int untouchwin( -+int (untouchwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef vline --int vline( -+int (vline)( - chtype a1, - int z) - { return(*(int *)0); } - - #undef vw_printw --int vw_printw( -+int (vw_printw)( - WINDOW *a1, - const char *a2, - va_list z) - { return(*(int *)0); } - - #undef vw_scanw --int vw_scanw( -+int (vw_scanw)( - WINDOW *a1, - char *a2, - va_list z) - { return(*(int *)0); } - - #undef waddchstr --int waddchstr( -+int (waddchstr)( - WINDOW *a1, - const chtype *z) - { return(*(int *)0); } - - #undef waddstr --int waddstr( -+int (waddstr)( - WINDOW *a1, - const char *z) - { return(*(int *)0); } - - #undef wattron --int wattron( -+int (wattron)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattroff --int wattroff( -+int (wattroff)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattrset --int wattrset( -+int (wattrset)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattr_get --int wattr_get( -+int (wattr_get)( - WINDOW *a1, - attr_t *a2, - short *a3, -@@ -1132,7 +1134,7 @@ - { return(*(int *)0); } - - #undef wattr_set --int wattr_set( -+int (wattr_set)( - WINDOW *a1, - attr_t a2, - short a3, -@@ -1140,205 +1142,205 @@ - { return(*(int *)0); } - - #undef wdeleteln --int wdeleteln( -+int (wdeleteln)( - WINDOW *z) - { return(*(int *)0); } - - #undef wgetstr --int wgetstr( -+int (wgetstr)( - WINDOW *a1, - char *z) - { return(*(int *)0); } - - #undef winchstr --int winchstr( -+int (winchstr)( - WINDOW *a1, - chtype *z) - { return(*(int *)0); } - - #undef winsertln --int winsertln( -+int (winsertln)( - WINDOW *z) - { return(*(int *)0); } - - #undef winsstr --int winsstr( -+int (winsstr)( - WINDOW *a1, - const char *z) - { return(*(int *)0); } - - #undef winstr --int winstr( -+int (winstr)( - WINDOW *a1, - char *z) - { return(*(int *)0); } - - #undef wstandout --int wstandout( -+int (wstandout)( - WINDOW *z) - { return(*(int *)0); } - - #undef wstandend --int wstandend( -+int (wstandend)( - WINDOW *z) - { return(*(int *)0); } - - #undef getattrs --int getattrs( -+int (getattrs)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getcurx --int getcurx( -+int (getcurx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getcury --int getcury( -+int (getcury)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getbegx --int getbegx( -+int (getbegx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getbegy --int getbegy( -+int (getbegy)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getmaxx --int getmaxx( -+int (getmaxx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getmaxy --int getmaxy( -+int (getmaxy)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getparx --int getparx( -+int (getparx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getpary --int getpary( -+int (getpary)( - const WINDOW *z) - { return(*(int *)0); } - - #undef wgetparent --WINDOW *wgetparent( -+WINDOW *(wgetparent)( - const WINDOW *z) - { return(*(WINDOW **)0); } - - #undef is_cleared --NCURSES_BOOL is_cleared( -+NCURSES_BOOL (is_cleared)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_idcok --NCURSES_BOOL is_idcok( -+NCURSES_BOOL (is_idcok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_idlok --NCURSES_BOOL is_idlok( -+NCURSES_BOOL (is_idlok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_immedok --NCURSES_BOOL is_immedok( -+NCURSES_BOOL (is_immedok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_keypad --NCURSES_BOOL is_keypad( -+NCURSES_BOOL (is_keypad)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_leaveok --NCURSES_BOOL is_leaveok( -+NCURSES_BOOL (is_leaveok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_nodelay --NCURSES_BOOL is_nodelay( -+NCURSES_BOOL (is_nodelay)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_notimeout --NCURSES_BOOL is_notimeout( -+NCURSES_BOOL (is_notimeout)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_pad --NCURSES_BOOL is_pad( -+NCURSES_BOOL (is_pad)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_scrollok --NCURSES_BOOL is_scrollok( -+NCURSES_BOOL (is_scrollok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_subwin --NCURSES_BOOL is_subwin( -+NCURSES_BOOL (is_subwin)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_syncok --NCURSES_BOOL is_syncok( -+NCURSES_BOOL (is_syncok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef wgetscrreg --int wgetscrreg( -+int (wgetscrreg)( - const WINDOW *a1, - int *a2, - int *z) - { return(*(int *)0); } - - #undef add_wch --int add_wch( -+int (add_wch)( - const cchar_t *z) - { return(*(int *)0); } - - #undef add_wchnstr --int add_wchnstr( -+int (add_wchnstr)( - const cchar_t *a1, - int z) - { return(*(int *)0); } - - #undef add_wchstr --int add_wchstr( -+int (add_wchstr)( - const cchar_t *z) - { return(*(int *)0); } - - #undef addnwstr --int addnwstr( -+int (addnwstr)( - const wchar_t *a1, - int z) - { return(*(int *)0); } - - #undef addwstr --int addwstr( -+int (addwstr)( - const wchar_t *z) - { return(*(int *)0); } - - #undef bkgrnd --int bkgrnd( -+int (bkgrnd)( - const cchar_t *z) - { return(*(int *)0); } - - #undef bkgrndset --void bkgrndset( -+void (bkgrndset)( - const cchar_t *z) - { /* void */ } - - #undef border_set --int border_set( -+int (border_set)( - const cchar_t *a1, - const cchar_t *a2, - const cchar_t *a3, -@@ -1350,96 +1352,96 @@ - { return(*(int *)0); } - - #undef box_set --int box_set( -+int (box_set)( - WINDOW *a1, - const cchar_t *a2, - const cchar_t *z) - { return(*(int *)0); } - - #undef echo_wchar --int echo_wchar( -+int (echo_wchar)( - const cchar_t *z) - { return(*(int *)0); } - - #undef get_wch --int get_wch( -+int (get_wch)( - wint_t *z) - { return(*(int *)0); } - - #undef get_wstr --int get_wstr( -+int (get_wstr)( - wint_t *z) - { return(*(int *)0); } - - #undef getbkgrnd --int getbkgrnd( -+int (getbkgrnd)( - cchar_t *z) - { return(*(int *)0); } - - #undef getn_wstr --int getn_wstr( -+int (getn_wstr)( - wint_t *a1, - int z) - { return(*(int *)0); } - - #undef hline_set --int hline_set( -+int (hline_set)( - const cchar_t *a1, - int z) - { return(*(int *)0); } - - #undef in_wch --int in_wch( -+int (in_wch)( - cchar_t *z) - { return(*(int *)0); } - - #undef in_wchnstr --int in_wchnstr( -+int (in_wchnstr)( - cchar_t *a1, - int z) - { return(*(int *)0); } - - #undef in_wchstr --int in_wchstr( -+int (in_wchstr)( - cchar_t *z) - { return(*(int *)0); } - - #undef innwstr --int innwstr( -+int (innwstr)( - wchar_t *a1, - int z) - { return(*(int *)0); } - - #undef ins_nwstr --int ins_nwstr( -+int (ins_nwstr)( - const wchar_t *a1, - int z) - { return(*(int *)0); } - - #undef ins_wch --int ins_wch( -+int (ins_wch)( - const cchar_t *z) - { return(*(int *)0); } - - #undef ins_wstr --int ins_wstr( -+int (ins_wstr)( - const wchar_t *z) - { return(*(int *)0); } - - #undef inwstr --int inwstr( -+int (inwstr)( - wchar_t *z) - { return(*(int *)0); } - - #undef mvadd_wch --int mvadd_wch( -+int (mvadd_wch)( - int a1, - int a2, - const cchar_t *z) - { return(*(int *)0); } - - #undef mvadd_wchnstr --int mvadd_wchnstr( -+int (mvadd_wchnstr)( - int a1, - int a2, - const cchar_t *a3, -@@ -1447,14 +1449,14 @@ - { return(*(int *)0); } - - #undef mvadd_wchstr --int mvadd_wchstr( -+int (mvadd_wchstr)( - int a1, - int a2, - const cchar_t *z) - { return(*(int *)0); } - - #undef mvaddnwstr --int mvaddnwstr( -+int (mvaddnwstr)( - int a1, - int a2, - const wchar_t *a3, -@@ -1462,28 +1464,28 @@ - { return(*(int *)0); } - - #undef mvaddwstr --int mvaddwstr( -+int (mvaddwstr)( - int a1, - int a2, - const wchar_t *z) - { return(*(int *)0); } - - #undef mvget_wch --int mvget_wch( -+int (mvget_wch)( - int a1, - int a2, - wint_t *z) - { return(*(int *)0); } - - #undef mvget_wstr --int mvget_wstr( -+int (mvget_wstr)( - int a1, - int a2, - wint_t *z) - { return(*(int *)0); } - - #undef mvgetn_wstr --int mvgetn_wstr( -+int (mvgetn_wstr)( - int a1, - int a2, - wint_t *a3, -@@ -1491,7 +1493,7 @@ - { return(*(int *)0); } - - #undef mvhline_set --int mvhline_set( -+int (mvhline_set)( - int a1, - int a2, - const cchar_t *a3, -@@ -1499,14 +1501,14 @@ - { return(*(int *)0); } - - #undef mvin_wch --int mvin_wch( -+int (mvin_wch)( - int a1, - int a2, - cchar_t *z) - { return(*(int *)0); } - - #undef mvin_wchnstr --int mvin_wchnstr( -+int (mvin_wchnstr)( - int a1, - int a2, - cchar_t *a3, -@@ -1514,14 +1516,14 @@ - { return(*(int *)0); } - - #undef mvin_wchstr --int mvin_wchstr( -+int (mvin_wchstr)( - int a1, - int a2, - cchar_t *z) - { return(*(int *)0); } - - #undef mvinnwstr --int mvinnwstr( -+int (mvinnwstr)( - int a1, - int a2, - wchar_t *a3, -@@ -1529,7 +1531,7 @@ - { return(*(int *)0); } - - #undef mvins_nwstr --int mvins_nwstr( -+int (mvins_nwstr)( - int a1, - int a2, - const wchar_t *a3, -@@ -1537,28 +1539,28 @@ - { return(*(int *)0); } - - #undef mvins_wch --int mvins_wch( -+int (mvins_wch)( - int a1, - int a2, - const cchar_t *z) - { return(*(int *)0); } - - #undef mvins_wstr --int mvins_wstr( -+int (mvins_wstr)( - int a1, - int a2, - const wchar_t *z) - { return(*(int *)0); } - - #undef mvinwstr --int mvinwstr( -+int (mvinwstr)( - int a1, - int a2, - wchar_t *z) - { return(*(int *)0); } - - #undef mvvline_set --int mvvline_set( -+int (mvvline_set)( - int a1, - int a2, - const cchar_t *a3, -@@ -1566,7 +1568,7 @@ - { return(*(int *)0); } - - #undef mvwadd_wch --int mvwadd_wch( -+int (mvwadd_wch)( - WINDOW *a1, - int a2, - int a3, -@@ -1574,7 +1576,7 @@ - { return(*(int *)0); } - - #undef mvwadd_wchnstr --int mvwadd_wchnstr( -+int (mvwadd_wchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1583,7 +1585,7 @@ - { return(*(int *)0); } - - #undef mvwadd_wchstr --int mvwadd_wchstr( -+int (mvwadd_wchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1591,7 +1593,7 @@ - { return(*(int *)0); } - - #undef mvwaddnwstr --int mvwaddnwstr( -+int (mvwaddnwstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1600,7 +1602,7 @@ - { return(*(int *)0); } - - #undef mvwaddwstr --int mvwaddwstr( -+int (mvwaddwstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1608,7 +1610,7 @@ - { return(*(int *)0); } - - #undef mvwget_wch --int mvwget_wch( -+int (mvwget_wch)( - WINDOW *a1, - int a2, - int a3, -@@ -1616,7 +1618,7 @@ - { return(*(int *)0); } - - #undef mvwget_wstr --int mvwget_wstr( -+int (mvwget_wstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1624,7 +1626,7 @@ - { return(*(int *)0); } - - #undef mvwgetn_wstr --int mvwgetn_wstr( -+int (mvwgetn_wstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1633,7 +1635,7 @@ - { return(*(int *)0); } - - #undef mvwhline_set --int mvwhline_set( -+int (mvwhline_set)( - WINDOW *a1, - int a2, - int a3, -@@ -1642,7 +1644,7 @@ - { return(*(int *)0); } - - #undef mvwin_wch --int mvwin_wch( -+int (mvwin_wch)( - WINDOW *a1, - int a2, - int a3, -@@ -1650,7 +1652,7 @@ - { return(*(int *)0); } - - #undef mvwin_wchnstr --int mvwin_wchnstr( -+int (mvwin_wchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1659,7 +1661,7 @@ - { return(*(int *)0); } - - #undef mvwin_wchstr --int mvwin_wchstr( -+int (mvwin_wchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1667,7 +1669,7 @@ - { return(*(int *)0); } - - #undef mvwinnwstr --int mvwinnwstr( -+int (mvwinnwstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1676,7 +1678,7 @@ - { return(*(int *)0); } - - #undef mvwins_nwstr --int mvwins_nwstr( -+int (mvwins_nwstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1685,7 +1687,7 @@ - { return(*(int *)0); } - - #undef mvwins_wch --int mvwins_wch( -+int (mvwins_wch)( - WINDOW *a1, - int a2, - int a3, -@@ -1693,7 +1695,7 @@ - { return(*(int *)0); } - - #undef mvwins_wstr --int mvwins_wstr( -+int (mvwins_wstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1701,7 +1703,7 @@ - { return(*(int *)0); } - - #undef mvwinwstr --int mvwinwstr( -+int (mvwinwstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1709,7 +1711,7 @@ - { return(*(int *)0); } - - #undef mvwvline_set --int mvwvline_set( -+int (mvwvline_set)( - WINDOW *a1, - int a2, - int a3, -@@ -1718,49 +1720,49 @@ - { return(*(int *)0); } - - #undef vline_set --int vline_set( -+int (vline_set)( - const cchar_t *a1, - int z) - { return(*(int *)0); } - - #undef wadd_wchstr --int wadd_wchstr( -+int (wadd_wchstr)( - WINDOW *a1, - const cchar_t *z) - { return(*(int *)0); } - - #undef waddwstr --int waddwstr( -+int (waddwstr)( - WINDOW *a1, - const wchar_t *z) - { return(*(int *)0); } - - #undef wget_wstr --int wget_wstr( -+int (wget_wstr)( - WINDOW *a1, - wint_t *z) - { return(*(int *)0); } - - #undef wgetbkgrnd --int wgetbkgrnd( -+int (wgetbkgrnd)( - WINDOW *a1, - cchar_t *z) - { return(*(int *)0); } - - #undef win_wchstr --int win_wchstr( -+int (win_wchstr)( - WINDOW *a1, - cchar_t *z) - { return(*(int *)0); } - - #undef wins_wstr --int wins_wstr( -+int (wins_wstr)( - WINDOW *a1, - const wchar_t *z) - { return(*(int *)0); } - - #undef mouse_trafo --NCURSES_BOOL mouse_trafo( -+NCURSES_BOOL (mouse_trafo)( - int *a1, - int *a2, - NCURSES_BOOL z) -@@ -2040,6 +2042,23 @@ - void _nc_mvcur_wrap(void) - { /* void */ } - -+#undef _nc_mvcur_sp -+int _nc_mvcur_sp( -+ SCREEN *sp, -+ int yold, -+ int xold, -+ int ynew, -+ int xnew) -+ { return(*(int *)0); } -+ -+#undef _nc_mvcur -+int _nc_mvcur( -+ int yold, -+ int xold, -+ int ynew, -+ int xnew) -+ { return(*(int *)0); } -+ - #undef mvcur_sp - int mvcur_sp( - SCREEN *sp, -@@ -2106,6 +2125,8 @@ - - /* ./base/lib_newwin.c */ - -+#include "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/stddef.h" -+ - #undef _nc_freewin - int _nc_freewin( - WINDOW *win) -@@ -2495,7 +2516,7 @@ - int slines, - int scolumns, - FILE *output, -- NCURSES_BOOL filtered, -+ int filtered, - int slk_format) - { return(*(int *)0); } - -@@ -2504,7 +2525,7 @@ - int slines, - int scolumns, - FILE *output, -- NCURSES_BOOL filtered, -+ int filtered, - int slk_format) - { return(*(int *)0); } - -@@ -2786,7 +2807,7 @@ - - #undef _nc_signal_handler - void _nc_signal_handler( -- NCURSES_BOOL enable) -+ int enable) - { /* void */ } - - /* ./base/lib_ungetch.c */ -@@ -3023,12 +3044,6 @@ - va_list ap) - { return(*(char **)0); } - --/* ./base/memmove.c */ -- --#undef _nc_memmove --void _nc_memmove(void) -- { /* void */ } -- - /* ./base/vsscanf.c */ - - #undef _nc_vsscanf -@@ -3563,7 +3578,7 @@ - #undef _nc_copy_termtype - void _nc_copy_termtype( - TERMTYPE *dst, -- TERMTYPE *src) -+ const TERMTYPE *src) - { /* void */ } - - /* ./codes.c */ -@@ -3667,6 +3682,8 @@ - - /* ./tinfo/db_iterator.c */ - -+#include <time.h> -+ - #undef _nc_tic_dir - const char *_nc_tic_dir( - const char *path) -@@ -3758,6 +3775,12 @@ - const char *name) - { return(*(int *)0); } - -+#undef _nc_setenv_num -+void _nc_setenv_num( -+ const char *name, -+ int value) -+ { /* void */ } -+ - /* ./tinfo/home_terminfo.c */ - - #undef _nc_home_terminfo -@@ -4098,7 +4121,7 @@ - #undef _nc_keypad - int _nc_keypad( - SCREEN *sp, -- NCURSES_BOOL flag) -+ int flag) - { return(*(int *)0); } - - /* ./tinfo/lib_raw.c */ -@@ -4229,11 +4252,22 @@ - NCURSES_BOOL f) - { /* void */ } - -+#undef use_tioctl_sp -+void use_tioctl_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ - #undef use_env - void use_env( - NCURSES_BOOL f) - { /* void */ } - -+#undef use_tioctl -+void use_tioctl( -+ NCURSES_BOOL f) -+ { /* void */ } -+ - #undef _nc_get_screensize - void _nc_get_screensize( - SCREEN *sp, -@@ -4255,7 +4289,7 @@ - #undef _nc_tinfo_cmdch - void _nc_tinfo_cmdch( - TERMINAL *termp, -- char proto) -+ int proto) - { /* void */ } - - #undef _nc_get_locale -@@ -4276,7 +4310,7 @@ - char *tname, - int Filedes, - int *errret, -- NCURSES_BOOL reuse) -+ int reuse) - { return(*(int *)0); } - - #undef new_prescr -@@ -4415,7 +4449,7 @@ - int _nc_tparm_analyze( - const char *string, - char *p_is_s[9], -- int *popcount) -+ int *_nc_popcount) - { return(*(int *)0); } - - #undef tparm -@@ -4435,7 +4469,7 @@ - #undef PC - char PC; - #undef ospeed --NCURSES_OSPEED ospeed; -+short ospeed; - #undef _nc_nulls_sent - int _nc_nulls_sent; - -@@ -4475,12 +4509,28 @@ - int ch) - { return(*(int *)0); } - -+#undef _nc_putchar_sp -+int _nc_putchar_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar -+int _nc_putchar( -+ int ch) -+ { return(*(int *)0); } -+ - #undef putp_sp - int putp_sp( - SCREEN *sp, - const char *string) - { return(*(int *)0); } - -+#undef putp -+int putp( -+ const char *string) -+ { return(*(int *)0); } -+ - #undef _nc_putp_sp - int _nc_putp_sp( - SCREEN *sp, -@@ -4488,11 +4538,6 @@ - const char *string) - { return(*(int *)0); } - --#undef putp --int putp( -- const char *string) -- { return(*(int *)0); } -- - #undef _nc_putp - int _nc_putp( - const char *name, -@@ -4557,12 +4602,12 @@ - - #undef _nc_retrace_bool - NCURSES_BOOL _nc_retrace_bool( -- NCURSES_BOOL code) -+ int code) - { return(*(NCURSES_BOOL *)0); } - - #undef _nc_retrace_char - char _nc_retrace_char( -- char code) -+ int code) - { return(*(char *)0); } - - #undef _nc_retrace_int -@@ -4829,10 +4874,30 @@ - char *const *_nc_strfnames(void) - { return(*(char **)0); } - -+/* ./tinfo/obsolete.c */ -+ -+#undef _nc_set_buffer_sp -+void _nc_set_buffer_sp( -+ SCREEN *sp, -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+#undef _nc_set_buffer -+void _nc_set_buffer( -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ - /* ./tinfo/read_entry.c */ - - #include <hashed_db.h> - -+#undef _nc_init_termtype -+void _nc_init_termtype( -+ TERMTYPE *const tp) -+ { /* void */ } -+ - #undef _nc_read_termtype - int _nc_read_termtype( - TERMTYPE *ptr, -@@ -4857,25 +4922,8 @@ - - #include <sys/types.h> - --#undef _nc_read_termcap_entry --int _nc_read_termcap_entry( -- const char *const tn, -- TERMTYPE *const tp) -- { return(*(int *)0); } -- --/* ./tinfo/setbuf.c */ -- --#undef _nc_set_buffer_sp --void _nc_set_buffer_sp( -- SCREEN *sp, -- FILE *ofp, -- NCURSES_BOOL buffered) -- { /* void */ } -- --#undef _nc_set_buffer --void _nc_set_buffer( -- FILE *ofp, -- NCURSES_BOOL buffered) -+#undef _nc_read_termcap -+void _nc_read_termcap(void) - { /* void */ } - - /* ./tinfo/strings.c */ -@@ -5123,6 +5171,8 @@ - - #undef _nc_syntax - int _nc_syntax; -+#undef _nc_strict_bsd -+int _nc_strict_bsd; - #undef _nc_curr_file_pos - long _nc_curr_file_pos; - #undef _nc_comment_start -diff -Naur ncurses-5.9/ncurses/llib-lncursesw ncurses-5.9.patch/ncurses/llib-lncursesw ---- ncurses-5.9/ncurses/llib-lncursesw 2011-01-08 20:01:11.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-lncursesw 2014-09-01 16:33:22.417792224 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2001-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 2001-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,7 +27,7 @@ - ****************************************************************************/ - - /**************************************************************************** -- * Author: Thomas E. Dickey 2001-2010,2011 * -+ * Author: Thomas E. Dickey 2001-on * - ****************************************************************************/ - /* LINTLIBRARY */ - -@@ -366,17 +366,17 @@ - #undef _nc_do_color_sp - void _nc_do_color_sp( - SCREEN *sp, -- short old_pair, -- short pair, -- NCURSES_BOOL reverse, -+ int old_pair, -+ int pair, -+ int reverse, - NCURSES_OUTC_sp outc) - { /* void */ } - - #undef _nc_do_color - void _nc_do_color( -- short old_pair, -- short pair, -- NCURSES_BOOL reverse, -+ int old_pair, -+ int pair, -+ int reverse, - NCURSES_OUTC outc) - { /* void */ } - -@@ -454,86 +454,88 @@ - - /* ./lib_gen.c */ - -+#include <ncurses_cfg.h> -+ - #undef addch --int addch( -+int (addch)( - const chtype z) - { return(*(int *)0); } - - #undef addchnstr --int addchnstr( -+int (addchnstr)( - const chtype *a1, - int z) - { return(*(int *)0); } - - #undef addchstr --int addchstr( -+int (addchstr)( - const chtype *z) - { return(*(int *)0); } - - #undef addnstr --int addnstr( -+int (addnstr)( - const char *a1, - int z) - { return(*(int *)0); } - - #undef addstr --int addstr( -+int (addstr)( - const char *z) - { return(*(int *)0); } - - #undef attroff --int attroff( -- NCURSES_ATTR_T z) -+int (attroff)( -+ int z) - { return(*(int *)0); } - - #undef attron --int attron( -- NCURSES_ATTR_T z) -+int (attron)( -+ int z) - { return(*(int *)0); } - - #undef attrset --int attrset( -- NCURSES_ATTR_T z) -+int (attrset)( -+ int z) - { return(*(int *)0); } - - #undef attr_get --int attr_get( -+int (attr_get)( - attr_t *a1, - short *a2, - void *z) - { return(*(int *)0); } - - #undef attr_off --int attr_off( -+int (attr_off)( - attr_t a1, - void *z) - { return(*(int *)0); } - - #undef attr_on --int attr_on( -+int (attr_on)( - attr_t a1, - void *z) - { return(*(int *)0); } - - #undef attr_set --int attr_set( -+int (attr_set)( - attr_t a1, - short a2, - void *z) - { return(*(int *)0); } - - #undef bkgd --int bkgd( -+int (bkgd)( - chtype z) - { return(*(int *)0); } - - #undef bkgdset --void bkgdset( -+void (bkgdset)( - chtype z) - { /* void */ } - - #undef border --int border( -+int (border)( - chtype a1, - chtype a2, - chtype a3, -@@ -545,14 +547,14 @@ - { return(*(int *)0); } - - #undef box --int box( -+int (box)( - WINDOW *a1, - chtype a2, - chtype z) - { return(*(int *)0); } - - #undef chgat --int chgat( -+int (chgat)( - int a1, - attr_t a2, - short a3, -@@ -560,137 +562,137 @@ - { return(*(int *)0); } - - #undef clear --int clear(void) -+int (clear)(void) - { return(*(int *)0); } - - #undef clrtobot --int clrtobot(void) -+int (clrtobot)(void) - { return(*(int *)0); } - - #undef clrtoeol --int clrtoeol(void) -+int (clrtoeol)(void) - { return(*(int *)0); } - - #undef color_set --int color_set( -+int (color_set)( - short a1, - void *z) - { return(*(int *)0); } - - #undef COLOR_PAIR --int COLOR_PAIR( -+int (COLOR_PAIR)( - int z) - { return(*(int *)0); } - - #undef delch --int delch(void) -+int (delch)(void) - { return(*(int *)0); } - - #undef deleteln --int deleteln(void) -+int (deleteln)(void) - { return(*(int *)0); } - - #undef echochar --int echochar( -+int (echochar)( - const chtype z) - { return(*(int *)0); } - - #undef erase --int erase(void) -+int (erase)(void) - { return(*(int *)0); } - - #undef getbkgd --chtype getbkgd( -+chtype (getbkgd)( - WINDOW *z) - { return(*(chtype *)0); } - - #undef getch --int getch(void) -+int (getch)(void) - { return(*(int *)0); } - - #undef getnstr --int getnstr( -+int (getnstr)( - char *a1, - int z) - { return(*(int *)0); } - - #undef getstr --int getstr( -+int (getstr)( - char *z) - { return(*(int *)0); } - - #undef hline --int hline( -+int (hline)( - chtype a1, - int z) - { return(*(int *)0); } - - #undef inch --chtype inch(void) -+chtype (inch)(void) - { return(*(chtype *)0); } - - #undef inchnstr --int inchnstr( -+int (inchnstr)( - chtype *a1, - int z) - { return(*(int *)0); } - - #undef inchstr --int inchstr( -+int (inchstr)( - chtype *z) - { return(*(int *)0); } - - #undef innstr --int innstr( -+int (innstr)( - char *a1, - int z) - { return(*(int *)0); } - - #undef insch --int insch( -+int (insch)( - chtype z) - { return(*(int *)0); } - - #undef insdelln --int insdelln( -+int (insdelln)( - int z) - { return(*(int *)0); } - - #undef insertln --int insertln(void) -+int (insertln)(void) - { return(*(int *)0); } - - #undef insnstr --int insnstr( -+int (insnstr)( - const char *a1, - int z) - { return(*(int *)0); } - - #undef insstr --int insstr( -+int (insstr)( - const char *z) - { return(*(int *)0); } - - #undef instr --int instr( -+int (instr)( - char *z) - { return(*(int *)0); } - - #undef move --int move( -+int (move)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvaddch --int mvaddch( -+int (mvaddch)( - int a1, - int a2, - const chtype z) - { return(*(int *)0); } - - #undef mvaddchnstr --int mvaddchnstr( -+int (mvaddchnstr)( - int a1, - int a2, - const chtype *a3, -@@ -698,14 +700,14 @@ - { return(*(int *)0); } - - #undef mvaddchstr --int mvaddchstr( -+int (mvaddchstr)( - int a1, - int a2, - const chtype *z) - { return(*(int *)0); } - - #undef mvaddnstr --int mvaddnstr( -+int (mvaddnstr)( - int a1, - int a2, - const char *a3, -@@ -713,14 +715,14 @@ - { return(*(int *)0); } - - #undef mvaddstr --int mvaddstr( -+int (mvaddstr)( - int a1, - int a2, - const char *z) - { return(*(int *)0); } - - #undef mvchgat --int mvchgat( -+int (mvchgat)( - int a1, - int a2, - int a3, -@@ -730,19 +732,19 @@ - { return(*(int *)0); } - - #undef mvdelch --int mvdelch( -+int (mvdelch)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvgetch --int mvgetch( -+int (mvgetch)( - int a1, - int z) - { return(*(int *)0); } - - #undef mvgetnstr --int mvgetnstr( -+int (mvgetnstr)( - int a1, - int a2, - char *a3, -@@ -750,14 +752,14 @@ - { return(*(int *)0); } - - #undef mvgetstr --int mvgetstr( -+int (mvgetstr)( - int a1, - int a2, - char *z) - { return(*(int *)0); } - - #undef mvhline --int mvhline( -+int (mvhline)( - int a1, - int a2, - chtype a3, -@@ -765,13 +767,13 @@ - { return(*(int *)0); } - - #undef mvinch --chtype mvinch( -+chtype (mvinch)( - int a1, - int z) - { return(*(chtype *)0); } - - #undef mvinchnstr --int mvinchnstr( -+int (mvinchnstr)( - int a1, - int a2, - chtype *a3, -@@ -779,14 +781,14 @@ - { return(*(int *)0); } - - #undef mvinchstr --int mvinchstr( -+int (mvinchstr)( - int a1, - int a2, - chtype *z) - { return(*(int *)0); } - - #undef mvinnstr --int mvinnstr( -+int (mvinnstr)( - int a1, - int a2, - char *a3, -@@ -794,14 +796,14 @@ - { return(*(int *)0); } - - #undef mvinsch --int mvinsch( -+int (mvinsch)( - int a1, - int a2, - chtype z) - { return(*(int *)0); } - - #undef mvinsnstr --int mvinsnstr( -+int (mvinsnstr)( - int a1, - int a2, - const char *a3, -@@ -809,21 +811,21 @@ - { return(*(int *)0); } - - #undef mvinsstr --int mvinsstr( -+int (mvinsstr)( - int a1, - int a2, - const char *z) - { return(*(int *)0); } - - #undef mvinstr --int mvinstr( -+int (mvinstr)( - int a1, - int a2, - char *z) - { return(*(int *)0); } - - #undef mvvline --int mvvline( -+int (mvvline)( - int a1, - int a2, - chtype a3, -@@ -831,7 +833,7 @@ - { return(*(int *)0); } - - #undef mvwaddch --int mvwaddch( -+int (mvwaddch)( - WINDOW *a1, - int a2, - int a3, -@@ -839,7 +841,7 @@ - { return(*(int *)0); } - - #undef mvwaddchnstr --int mvwaddchnstr( -+int (mvwaddchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -848,7 +850,7 @@ - { return(*(int *)0); } - - #undef mvwaddchstr --int mvwaddchstr( -+int (mvwaddchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -856,7 +858,7 @@ - { return(*(int *)0); } - - #undef mvwaddnstr --int mvwaddnstr( -+int (mvwaddnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -865,7 +867,7 @@ - { return(*(int *)0); } - - #undef mvwaddstr --int mvwaddstr( -+int (mvwaddstr)( - WINDOW *a1, - int a2, - int a3, -@@ -873,7 +875,7 @@ - { return(*(int *)0); } - - #undef mvwchgat --int mvwchgat( -+int (mvwchgat)( - WINDOW *a1, - int a2, - int a3, -@@ -884,21 +886,21 @@ - { return(*(int *)0); } - - #undef mvwdelch --int mvwdelch( -+int (mvwdelch)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef mvwgetch --int mvwgetch( -+int (mvwgetch)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef mvwgetnstr --int mvwgetnstr( -+int (mvwgetnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -907,7 +909,7 @@ - { return(*(int *)0); } - - #undef mvwgetstr --int mvwgetstr( -+int (mvwgetstr)( - WINDOW *a1, - int a2, - int a3, -@@ -915,7 +917,7 @@ - { return(*(int *)0); } - - #undef mvwhline --int mvwhline( -+int (mvwhline)( - WINDOW *a1, - int a2, - int a3, -@@ -924,14 +926,14 @@ - { return(*(int *)0); } - - #undef mvwinch --chtype mvwinch( -+chtype (mvwinch)( - WINDOW *a1, - int a2, - int z) - { return(*(chtype *)0); } - - #undef mvwinchnstr --int mvwinchnstr( -+int (mvwinchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -940,7 +942,7 @@ - { return(*(int *)0); } - - #undef mvwinchstr --int mvwinchstr( -+int (mvwinchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -948,7 +950,7 @@ - { return(*(int *)0); } - - #undef mvwinnstr --int mvwinnstr( -+int (mvwinnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -957,7 +959,7 @@ - { return(*(int *)0); } - - #undef mvwinsch --int mvwinsch( -+int (mvwinsch)( - WINDOW *a1, - int a2, - int a3, -@@ -965,7 +967,7 @@ - { return(*(int *)0); } - - #undef mvwinsnstr --int mvwinsnstr( -+int (mvwinsnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -974,7 +976,7 @@ - { return(*(int *)0); } - - #undef mvwinsstr --int mvwinsstr( -+int (mvwinsstr)( - WINDOW *a1, - int a2, - int a3, -@@ -982,7 +984,7 @@ - { return(*(int *)0); } - - #undef mvwinstr --int mvwinstr( -+int (mvwinstr)( - WINDOW *a1, - int a2, - int a3, -@@ -990,7 +992,7 @@ - { return(*(int *)0); } - - #undef mvwvline --int mvwvline( -+int (mvwvline)( - WINDOW *a1, - int a2, - int a3, -@@ -999,129 +1001,129 @@ - { return(*(int *)0); } - - #undef PAIR_NUMBER --int PAIR_NUMBER( -+int (PAIR_NUMBER)( - int z) - { return(*(int *)0); } - - #undef redrawwin --int redrawwin( -+int (redrawwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef refresh --int refresh(void) -+int (refresh)(void) - { return(*(int *)0); } - - #undef scrl --int scrl( -+int (scrl)( - int z) - { return(*(int *)0); } - - #undef scroll --int scroll( -+int (scroll)( - WINDOW *z) - { return(*(int *)0); } - - #undef setscrreg --int setscrreg( -+int (setscrreg)( - int a1, - int z) - { return(*(int *)0); } - - #undef slk_attr_off --int slk_attr_off( -+int (slk_attr_off)( - const attr_t a1, - void *z) - { return(*(int *)0); } - - #undef slk_attr_on --int slk_attr_on( -+int (slk_attr_on)( - attr_t a1, - void *z) - { return(*(int *)0); } - - #undef standout --int standout(void) -+int (standout)(void) - { return(*(int *)0); } - - #undef standend --int standend(void) -+int (standend)(void) - { return(*(int *)0); } - - #undef timeout --void timeout( -+void (timeout)( - int z) - { /* void */ } - - #undef touchline --int touchline( -+int (touchline)( - WINDOW *a1, - int a2, - int z) - { return(*(int *)0); } - - #undef touchwin --int touchwin( -+int (touchwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef untouchwin --int untouchwin( -+int (untouchwin)( - WINDOW *z) - { return(*(int *)0); } - - #undef vline --int vline( -+int (vline)( - chtype a1, - int z) - { return(*(int *)0); } - - #undef vw_printw --int vw_printw( -+int (vw_printw)( - WINDOW *a1, - const char *a2, - va_list z) - { return(*(int *)0); } - - #undef vw_scanw --int vw_scanw( -+int (vw_scanw)( - WINDOW *a1, - char *a2, - va_list z) - { return(*(int *)0); } - - #undef waddchstr --int waddchstr( -+int (waddchstr)( - WINDOW *a1, - const chtype *z) - { return(*(int *)0); } - - #undef waddstr --int waddstr( -+int (waddstr)( - WINDOW *a1, - const char *z) - { return(*(int *)0); } - - #undef wattron --int wattron( -+int (wattron)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattroff --int wattroff( -+int (wattroff)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattrset --int wattrset( -+int (wattrset)( - WINDOW *a1, - int z) - { return(*(int *)0); } - - #undef wattr_get --int wattr_get( -+int (wattr_get)( - WINDOW *a1, - attr_t *a2, - short *a3, -@@ -1129,7 +1131,7 @@ - { return(*(int *)0); } - - #undef wattr_set --int wattr_set( -+int (wattr_set)( - WINDOW *a1, - attr_t a2, - short a3, -@@ -1137,205 +1139,205 @@ - { return(*(int *)0); } - - #undef wdeleteln --int wdeleteln( -+int (wdeleteln)( - WINDOW *z) - { return(*(int *)0); } - - #undef wgetstr --int wgetstr( -+int (wgetstr)( - WINDOW *a1, - char *z) - { return(*(int *)0); } - - #undef winchstr --int winchstr( -+int (winchstr)( - WINDOW *a1, - chtype *z) - { return(*(int *)0); } - - #undef winsertln --int winsertln( -+int (winsertln)( - WINDOW *z) - { return(*(int *)0); } - - #undef winsstr --int winsstr( -+int (winsstr)( - WINDOW *a1, - const char *z) - { return(*(int *)0); } - - #undef winstr --int winstr( -+int (winstr)( - WINDOW *a1, - char *z) - { return(*(int *)0); } - - #undef wstandout --int wstandout( -+int (wstandout)( - WINDOW *z) - { return(*(int *)0); } - - #undef wstandend --int wstandend( -+int (wstandend)( - WINDOW *z) - { return(*(int *)0); } - - #undef getattrs --int getattrs( -+int (getattrs)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getcurx --int getcurx( -+int (getcurx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getcury --int getcury( -+int (getcury)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getbegx --int getbegx( -+int (getbegx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getbegy --int getbegy( -+int (getbegy)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getmaxx --int getmaxx( -+int (getmaxx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getmaxy --int getmaxy( -+int (getmaxy)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getparx --int getparx( -+int (getparx)( - const WINDOW *z) - { return(*(int *)0); } - - #undef getpary --int getpary( -+int (getpary)( - const WINDOW *z) - { return(*(int *)0); } - - #undef wgetparent --WINDOW *wgetparent( -+WINDOW *(wgetparent)( - const WINDOW *z) - { return(*(WINDOW **)0); } - - #undef is_cleared --NCURSES_BOOL is_cleared( -+NCURSES_BOOL (is_cleared)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_idcok --NCURSES_BOOL is_idcok( -+NCURSES_BOOL (is_idcok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_idlok --NCURSES_BOOL is_idlok( -+NCURSES_BOOL (is_idlok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_immedok --NCURSES_BOOL is_immedok( -+NCURSES_BOOL (is_immedok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_keypad --NCURSES_BOOL is_keypad( -+NCURSES_BOOL (is_keypad)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_leaveok --NCURSES_BOOL is_leaveok( -+NCURSES_BOOL (is_leaveok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_nodelay --NCURSES_BOOL is_nodelay( -+NCURSES_BOOL (is_nodelay)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_notimeout --NCURSES_BOOL is_notimeout( -+NCURSES_BOOL (is_notimeout)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_pad --NCURSES_BOOL is_pad( -+NCURSES_BOOL (is_pad)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_scrollok --NCURSES_BOOL is_scrollok( -+NCURSES_BOOL (is_scrollok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_subwin --NCURSES_BOOL is_subwin( -+NCURSES_BOOL (is_subwin)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef is_syncok --NCURSES_BOOL is_syncok( -+NCURSES_BOOL (is_syncok)( - const WINDOW *z) - { return(*(NCURSES_BOOL *)0); } - - #undef wgetscrreg --int wgetscrreg( -+int (wgetscrreg)( - const WINDOW *a1, - int *a2, - int *z) - { return(*(int *)0); } - - #undef add_wch --int add_wch( -+int (add_wch)( - const cchar_t *z) - { return(*(int *)0); } - - #undef add_wchnstr --int add_wchnstr( -+int (add_wchnstr)( - const cchar_t *a1, - int z) - { return(*(int *)0); } - - #undef add_wchstr --int add_wchstr( -+int (add_wchstr)( - const cchar_t *z) - { return(*(int *)0); } - - #undef addnwstr --int addnwstr( -+int (addnwstr)( - const wchar_t *a1, - int z) - { return(*(int *)0); } - - #undef addwstr --int addwstr( -+int (addwstr)( - const wchar_t *z) - { return(*(int *)0); } - - #undef bkgrnd --int bkgrnd( -+int (bkgrnd)( - const cchar_t *z) - { return(*(int *)0); } - - #undef bkgrndset --void bkgrndset( -+void (bkgrndset)( - const cchar_t *z) - { /* void */ } - - #undef border_set --int border_set( -+int (border_set)( - const cchar_t *a1, - const cchar_t *a2, - const cchar_t *a3, -@@ -1347,96 +1349,96 @@ - { return(*(int *)0); } - - #undef box_set --int box_set( -+int (box_set)( - WINDOW *a1, - const cchar_t *a2, - const cchar_t *z) - { return(*(int *)0); } - - #undef echo_wchar --int echo_wchar( -+int (echo_wchar)( - const cchar_t *z) - { return(*(int *)0); } - - #undef get_wch --int get_wch( -+int (get_wch)( - wint_t *z) - { return(*(int *)0); } - - #undef get_wstr --int get_wstr( -+int (get_wstr)( - wint_t *z) - { return(*(int *)0); } - - #undef getbkgrnd --int getbkgrnd( -+int (getbkgrnd)( - cchar_t *z) - { return(*(int *)0); } - - #undef getn_wstr --int getn_wstr( -+int (getn_wstr)( - wint_t *a1, - int z) - { return(*(int *)0); } - - #undef hline_set --int hline_set( -+int (hline_set)( - const cchar_t *a1, - int z) - { return(*(int *)0); } - - #undef in_wch --int in_wch( -+int (in_wch)( - cchar_t *z) - { return(*(int *)0); } - - #undef in_wchnstr --int in_wchnstr( -+int (in_wchnstr)( - cchar_t *a1, - int z) - { return(*(int *)0); } - - #undef in_wchstr --int in_wchstr( -+int (in_wchstr)( - cchar_t *z) - { return(*(int *)0); } - - #undef innwstr --int innwstr( -+int (innwstr)( - wchar_t *a1, - int z) - { return(*(int *)0); } - - #undef ins_nwstr --int ins_nwstr( -+int (ins_nwstr)( - const wchar_t *a1, - int z) - { return(*(int *)0); } - - #undef ins_wch --int ins_wch( -+int (ins_wch)( - const cchar_t *z) - { return(*(int *)0); } - - #undef ins_wstr --int ins_wstr( -+int (ins_wstr)( - const wchar_t *z) - { return(*(int *)0); } - - #undef inwstr --int inwstr( -+int (inwstr)( - wchar_t *z) - { return(*(int *)0); } - - #undef mvadd_wch --int mvadd_wch( -+int (mvadd_wch)( - int a1, - int a2, - const cchar_t *z) - { return(*(int *)0); } - - #undef mvadd_wchnstr --int mvadd_wchnstr( -+int (mvadd_wchnstr)( - int a1, - int a2, - const cchar_t *a3, -@@ -1444,14 +1446,14 @@ - { return(*(int *)0); } - - #undef mvadd_wchstr --int mvadd_wchstr( -+int (mvadd_wchstr)( - int a1, - int a2, - const cchar_t *z) - { return(*(int *)0); } - - #undef mvaddnwstr --int mvaddnwstr( -+int (mvaddnwstr)( - int a1, - int a2, - const wchar_t *a3, -@@ -1459,28 +1461,28 @@ - { return(*(int *)0); } - - #undef mvaddwstr --int mvaddwstr( -+int (mvaddwstr)( - int a1, - int a2, - const wchar_t *z) - { return(*(int *)0); } - - #undef mvget_wch --int mvget_wch( -+int (mvget_wch)( - int a1, - int a2, - wint_t *z) - { return(*(int *)0); } - - #undef mvget_wstr --int mvget_wstr( -+int (mvget_wstr)( - int a1, - int a2, - wint_t *z) - { return(*(int *)0); } - - #undef mvgetn_wstr --int mvgetn_wstr( -+int (mvgetn_wstr)( - int a1, - int a2, - wint_t *a3, -@@ -1488,7 +1490,7 @@ - { return(*(int *)0); } - - #undef mvhline_set --int mvhline_set( -+int (mvhline_set)( - int a1, - int a2, - const cchar_t *a3, -@@ -1496,14 +1498,14 @@ - { return(*(int *)0); } - - #undef mvin_wch --int mvin_wch( -+int (mvin_wch)( - int a1, - int a2, - cchar_t *z) - { return(*(int *)0); } - - #undef mvin_wchnstr --int mvin_wchnstr( -+int (mvin_wchnstr)( - int a1, - int a2, - cchar_t *a3, -@@ -1511,14 +1513,14 @@ - { return(*(int *)0); } - - #undef mvin_wchstr --int mvin_wchstr( -+int (mvin_wchstr)( - int a1, - int a2, - cchar_t *z) - { return(*(int *)0); } - - #undef mvinnwstr --int mvinnwstr( -+int (mvinnwstr)( - int a1, - int a2, - wchar_t *a3, -@@ -1526,7 +1528,7 @@ - { return(*(int *)0); } - - #undef mvins_nwstr --int mvins_nwstr( -+int (mvins_nwstr)( - int a1, - int a2, - const wchar_t *a3, -@@ -1534,28 +1536,28 @@ - { return(*(int *)0); } - - #undef mvins_wch --int mvins_wch( -+int (mvins_wch)( - int a1, - int a2, - const cchar_t *z) - { return(*(int *)0); } - - #undef mvins_wstr --int mvins_wstr( -+int (mvins_wstr)( - int a1, - int a2, - const wchar_t *z) - { return(*(int *)0); } - - #undef mvinwstr --int mvinwstr( -+int (mvinwstr)( - int a1, - int a2, - wchar_t *z) - { return(*(int *)0); } - - #undef mvvline_set --int mvvline_set( -+int (mvvline_set)( - int a1, - int a2, - const cchar_t *a3, -@@ -1563,7 +1565,7 @@ - { return(*(int *)0); } - - #undef mvwadd_wch --int mvwadd_wch( -+int (mvwadd_wch)( - WINDOW *a1, - int a2, - int a3, -@@ -1571,7 +1573,7 @@ - { return(*(int *)0); } - - #undef mvwadd_wchnstr --int mvwadd_wchnstr( -+int (mvwadd_wchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1580,7 +1582,7 @@ - { return(*(int *)0); } - - #undef mvwadd_wchstr --int mvwadd_wchstr( -+int (mvwadd_wchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1588,7 +1590,7 @@ - { return(*(int *)0); } - - #undef mvwaddnwstr --int mvwaddnwstr( -+int (mvwaddnwstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1597,7 +1599,7 @@ - { return(*(int *)0); } - - #undef mvwaddwstr --int mvwaddwstr( -+int (mvwaddwstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1605,7 +1607,7 @@ - { return(*(int *)0); } - - #undef mvwget_wch --int mvwget_wch( -+int (mvwget_wch)( - WINDOW *a1, - int a2, - int a3, -@@ -1613,7 +1615,7 @@ - { return(*(int *)0); } - - #undef mvwget_wstr --int mvwget_wstr( -+int (mvwget_wstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1621,7 +1623,7 @@ - { return(*(int *)0); } - - #undef mvwgetn_wstr --int mvwgetn_wstr( -+int (mvwgetn_wstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1630,7 +1632,7 @@ - { return(*(int *)0); } - - #undef mvwhline_set --int mvwhline_set( -+int (mvwhline_set)( - WINDOW *a1, - int a2, - int a3, -@@ -1639,7 +1641,7 @@ - { return(*(int *)0); } - - #undef mvwin_wch --int mvwin_wch( -+int (mvwin_wch)( - WINDOW *a1, - int a2, - int a3, -@@ -1647,7 +1649,7 @@ - { return(*(int *)0); } - - #undef mvwin_wchnstr --int mvwin_wchnstr( -+int (mvwin_wchnstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1656,7 +1658,7 @@ - { return(*(int *)0); } - - #undef mvwin_wchstr --int mvwin_wchstr( -+int (mvwin_wchstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1664,7 +1666,7 @@ - { return(*(int *)0); } - - #undef mvwinnwstr --int mvwinnwstr( -+int (mvwinnwstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1673,7 +1675,7 @@ - { return(*(int *)0); } - - #undef mvwins_nwstr --int mvwins_nwstr( -+int (mvwins_nwstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1682,7 +1684,7 @@ - { return(*(int *)0); } - - #undef mvwins_wch --int mvwins_wch( -+int (mvwins_wch)( - WINDOW *a1, - int a2, - int a3, -@@ -1690,7 +1692,7 @@ - { return(*(int *)0); } - - #undef mvwins_wstr --int mvwins_wstr( -+int (mvwins_wstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1698,7 +1700,7 @@ - { return(*(int *)0); } - - #undef mvwinwstr --int mvwinwstr( -+int (mvwinwstr)( - WINDOW *a1, - int a2, - int a3, -@@ -1706,7 +1708,7 @@ - { return(*(int *)0); } - - #undef mvwvline_set --int mvwvline_set( -+int (mvwvline_set)( - WINDOW *a1, - int a2, - int a3, -@@ -1715,49 +1717,49 @@ - { return(*(int *)0); } - - #undef vline_set --int vline_set( -+int (vline_set)( - const cchar_t *a1, - int z) - { return(*(int *)0); } - - #undef wadd_wchstr --int wadd_wchstr( -+int (wadd_wchstr)( - WINDOW *a1, - const cchar_t *z) - { return(*(int *)0); } - - #undef waddwstr --int waddwstr( -+int (waddwstr)( - WINDOW *a1, - const wchar_t *z) - { return(*(int *)0); } - - #undef wget_wstr --int wget_wstr( -+int (wget_wstr)( - WINDOW *a1, - wint_t *z) - { return(*(int *)0); } - - #undef wgetbkgrnd --int wgetbkgrnd( -+int (wgetbkgrnd)( - WINDOW *a1, - cchar_t *z) - { return(*(int *)0); } - - #undef win_wchstr --int win_wchstr( -+int (win_wchstr)( - WINDOW *a1, - cchar_t *z) - { return(*(int *)0); } - - #undef wins_wstr --int wins_wstr( -+int (wins_wstr)( - WINDOW *a1, - const wchar_t *z) - { return(*(int *)0); } - - #undef mouse_trafo --NCURSES_BOOL mouse_trafo( -+NCURSES_BOOL (mouse_trafo)( - int *a1, - int *a2, - NCURSES_BOOL z) -@@ -2031,6 +2033,23 @@ - void _nc_mvcur_wrap(void) - { /* void */ } - -+#undef _nc_mvcur_sp -+int _nc_mvcur_sp( -+ SCREEN *sp, -+ int yold, -+ int xold, -+ int ynew, -+ int xnew) -+ { return(*(int *)0); } -+ -+#undef _nc_mvcur -+int _nc_mvcur( -+ int yold, -+ int xold, -+ int ynew, -+ int xnew) -+ { return(*(int *)0); } -+ - #undef mvcur_sp - int mvcur_sp( - SCREEN *sp, -@@ -2097,6 +2116,8 @@ - - /* ./base/lib_newwin.c */ - -+#include "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/stddef.h" -+ - #undef _nc_freewin - int _nc_freewin( - WINDOW *win) -@@ -2440,8 +2461,8 @@ - void _nc_scroll_window( - WINDOW *win, - int const n, -- short const top, -- short const bottom, -+ int const top, -+ int const bottom, - cchar_t blank) - { /* void */ } - -@@ -2486,7 +2507,7 @@ - int slines, - int scolumns, - FILE *output, -- NCURSES_BOOL filtered, -+ int filtered, - int slk_format) - { return(*(int *)0); } - -@@ -2495,7 +2516,7 @@ - int slines, - int scolumns, - FILE *output, -- NCURSES_BOOL filtered, -+ int filtered, - int slk_format) - { return(*(int *)0); } - -@@ -2777,7 +2798,7 @@ - - #undef _nc_signal_handler - void _nc_signal_handler( -- NCURSES_BOOL enable) -+ int enable) - { /* void */ } - - /* ./base/lib_ungetch.c */ -@@ -3014,12 +3035,6 @@ - va_list ap) - { return(*(char **)0); } - --/* ./base/memmove.c */ -- --#undef _nc_memmove --void _nc_memmove(void) -- { /* void */ } -- - /* ./base/vsscanf.c */ - - #undef _nc_vsscanf -@@ -3554,7 +3569,7 @@ - #undef _nc_copy_termtype - void _nc_copy_termtype( - TERMTYPE *dst, -- TERMTYPE *src) -+ const TERMTYPE *src) - { /* void */ } - - /* ./codes.c */ -@@ -3653,6 +3668,8 @@ - - /* ./tinfo/db_iterator.c */ - -+#include <time.h> -+ - #undef _nc_tic_dir - const char *_nc_tic_dir( - const char *path) -@@ -3744,6 +3761,12 @@ - const char *name) - { return(*(int *)0); } - -+#undef _nc_setenv_num -+void _nc_setenv_num( -+ const char *name, -+ int value) -+ { /* void */ } -+ - /* ./tinfo/home_terminfo.c */ - - #undef _nc_home_terminfo -@@ -3929,8 +3952,6 @@ - - /* ./tinfo/lib_napms.c */ - --#include <time.h> -- - #undef napms_sp - int napms_sp( - SCREEN *sp, -@@ -4040,7 +4061,7 @@ - #undef _nc_keypad - int _nc_keypad( - SCREEN *sp, -- NCURSES_BOOL flag) -+ int flag) - { return(*(int *)0); } - - /* ./tinfo/lib_raw.c */ -@@ -4149,11 +4170,22 @@ - NCURSES_BOOL f) - { /* void */ } - -+#undef use_tioctl_sp -+void use_tioctl_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ - #undef use_env - void use_env( - NCURSES_BOOL f) - { /* void */ } - -+#undef use_tioctl -+void use_tioctl( -+ NCURSES_BOOL f) -+ { /* void */ } -+ - #undef _nc_get_screensize - void _nc_get_screensize( - SCREEN *sp, -@@ -4175,7 +4207,7 @@ - #undef _nc_tinfo_cmdch - void _nc_tinfo_cmdch( - TERMINAL *termp, -- char proto) -+ int proto) - { /* void */ } - - #undef _nc_get_locale -@@ -4196,7 +4228,7 @@ - char *tname, - int Filedes, - int *errret, -- NCURSES_BOOL reuse) -+ int reuse) - { return(*(int *)0); } - - #undef new_prescr -@@ -4335,7 +4367,7 @@ - int _nc_tparm_analyze( - const char *string, - char *p_is_s[9], -- int *popcount) -+ int *_nc_popcount) - { return(*(int *)0); } - - #undef tparm -@@ -4355,7 +4387,7 @@ - #undef PC - char PC; - #undef ospeed --NCURSES_OSPEED ospeed; -+short ospeed; - #undef _nc_nulls_sent - int _nc_nulls_sent; - -@@ -4395,12 +4427,28 @@ - int ch) - { return(*(int *)0); } - -+#undef _nc_putchar_sp -+int _nc_putchar_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar -+int _nc_putchar( -+ int ch) -+ { return(*(int *)0); } -+ - #undef putp_sp - int putp_sp( - SCREEN *sp, - const char *string) - { return(*(int *)0); } - -+#undef putp -+int putp( -+ const char *string) -+ { return(*(int *)0); } -+ - #undef _nc_putp_sp - int _nc_putp_sp( - SCREEN *sp, -@@ -4408,11 +4456,6 @@ - const char *string) - { return(*(int *)0); } - --#undef putp --int putp( -- const char *string) -- { return(*(int *)0); } -- - #undef _nc_putp - int _nc_putp( - const char *name, -@@ -4463,12 +4506,12 @@ - - #undef _nc_retrace_bool - NCURSES_BOOL _nc_retrace_bool( -- NCURSES_BOOL code) -+ int code) - { return(*(NCURSES_BOOL *)0); } - - #undef _nc_retrace_char - char _nc_retrace_char( -- char code) -+ int code) - { return(*(char *)0); } - - #undef _nc_retrace_int -@@ -4713,10 +4756,30 @@ - #undef strfnames - char *const strfnames[] = {0}; - -+/* ./tinfo/obsolete.c */ -+ -+#undef _nc_set_buffer_sp -+void _nc_set_buffer_sp( -+ SCREEN *sp, -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+#undef _nc_set_buffer -+void _nc_set_buffer( -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ - /* ./tinfo/read_entry.c */ - - #include <hashed_db.h> - -+#undef _nc_init_termtype -+void _nc_init_termtype( -+ TERMTYPE *const tp) -+ { /* void */ } -+ - #undef _nc_read_termtype - int _nc_read_termtype( - TERMTYPE *ptr, -@@ -4741,25 +4804,8 @@ - - #include <sys/types.h> - --#undef _nc_read_termcap_entry --int _nc_read_termcap_entry( -- const char *const tn, -- TERMTYPE *const tp) -- { return(*(int *)0); } -- --/* ./tinfo/setbuf.c */ -- --#undef _nc_set_buffer_sp --void _nc_set_buffer_sp( -- SCREEN *sp, -- FILE *ofp, -- NCURSES_BOOL buffered) -- { /* void */ } -- --#undef _nc_set_buffer --void _nc_set_buffer( -- FILE *ofp, -- NCURSES_BOOL buffered) -+#undef _nc_read_termcap -+void _nc_read_termcap(void) - { /* void */ } - - /* ./tinfo/strings.c */ -@@ -5007,6 +5053,8 @@ - - #undef _nc_syntax - int _nc_syntax; -+#undef _nc_strict_bsd -+int _nc_strict_bsd; - #undef _nc_curr_file_pos - long _nc_curr_file_pos; - #undef _nc_comment_start -diff -Naur ncurses-5.9/ncurses/llib-ltic ncurses-5.9.patch/ncurses/llib-ltic ---- ncurses-5.9/ncurses/llib-ltic 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-ltic 2014-09-01 16:33:22.417792224 +0200 -@@ -0,0 +1,212 @@ -+/**************************************************************************** -+ * Copyright (c) 2012 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2012 * -+ ****************************************************************************/ -+/* LINTLIBRARY */ -+ -+/* ./tinfo/alloc_entry.c */ -+ -+#include <curses.priv.h> -+#include <tic.h> -+ -+#undef _nc_init_entry -+void _nc_init_entry( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_copy_entry -+ENTRY *_nc_copy_entry( -+ ENTRY *oldp) -+ { return(*(ENTRY **)0); } -+ -+#undef _nc_save_str -+char *_nc_save_str( -+ const char *const string) -+ { return(*(char **)0); } -+ -+#undef _nc_wrap_entry -+void _nc_wrap_entry( -+ ENTRY *const ep, -+ NCURSES_BOOL copy_strings) -+ { /* void */ } -+ -+#undef _nc_merge_entry -+void _nc_merge_entry( -+ TERMTYPE *const to, -+ TERMTYPE *const from) -+ { /* void */ } -+ -+/* ./tinfo/captoinfo.c */ -+ -+#include <ctype.h> -+ -+#undef _nc_captoinfo -+char *_nc_captoinfo( -+ const char *cap, -+ const char *s, -+ int const parameterized) -+ { return(*(char **)0); } -+ -+#undef _nc_infotocap -+char *_nc_infotocap( -+ const char *cap, -+ const char *str, -+ int const parameterized) -+ { return(*(char **)0); } -+ -+/* ./tinfo/comp_expand.c */ -+ -+#undef _nc_tic_expand -+char *_nc_tic_expand( -+ const char *srcp, -+ NCURSES_BOOL tic_format, -+ int numbers) -+ { return(*(char **)0); } -+ -+/* ./tinfo/comp_parse.c */ -+ -+#undef _nc_check_termtype2 -+void (*_nc_check_termtype2)( -+ TERMTYPE *p1, -+ NCURSES_BOOL p2); -+#undef _nc_check_termtype -+void (*_nc_check_termtype)( -+ TERMTYPE *p1); -+ -+#undef _nc_entry_match -+NCURSES_BOOL _nc_entry_match( -+ char *n1, -+ char *n2) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_read_entry_source -+void _nc_read_entry_source( -+ FILE *fp, -+ char *buf, -+ int literal, -+ NCURSES_BOOL silent, -+ NCURSES_BOOL (*hook)( -+ ENTRY *p1)) -+ { /* void */ } -+ -+#undef _nc_resolve_uses2 -+int _nc_resolve_uses2( -+ NCURSES_BOOL fullresolve, -+ NCURSES_BOOL literal) -+ { return(*(int *)0); } -+ -+#undef _nc_resolve_uses -+int _nc_resolve_uses( -+ NCURSES_BOOL fullresolve) -+ { return(*(int *)0); } -+ -+/* ./tinfo/comp_scan.c */ -+ -+#undef _nc_syntax -+int _nc_syntax; -+#undef _nc_strict_bsd -+int _nc_strict_bsd; -+#undef _nc_curr_file_pos -+long _nc_curr_file_pos; -+#undef _nc_comment_start -+long _nc_comment_start; -+#undef _nc_comment_end -+long _nc_comment_end; -+#undef _nc_start_line -+long _nc_start_line; -+#undef _nc_curr_token -+struct token _nc_curr_token; -+#undef _nc_disable_period -+NCURSES_BOOL _nc_disable_period; -+ -+#undef _nc_reset_input -+void _nc_reset_input( -+ FILE *fp, -+ char *buf) -+ { /* void */ } -+ -+#undef _nc_get_token -+int _nc_get_token( -+ NCURSES_BOOL silent) -+ { return(*(int *)0); } -+ -+#undef _nc_trans_string -+int _nc_trans_string( -+ char *ptr, -+ char *last) -+ { return(*(int *)0); } -+ -+#undef _nc_push_token -+void _nc_push_token( -+ int tokclass) -+ { /* void */ } -+ -+#undef _nc_panic_mode -+void _nc_panic_mode( -+ char ch) -+ { /* void */ } -+ -+/* ./tinfo/parse_entry.c */ -+ -+#undef _nc_parse_entry -+int _nc_parse_entry( -+ struct entry *entryp, -+ int literal, -+ NCURSES_BOOL silent) -+ { return(*(int *)0); } -+ -+#undef _nc_capcmp -+int _nc_capcmp( -+ const char *s, -+ const char *t) -+ { return(*(int *)0); } -+ -+typedef struct { -+ const char *from; -+ const char *to; -+} assoc; -+ -+/* ./tinfo/write_entry.c */ -+ -+#include <hashed_db.h> -+ -+#undef _nc_set_writedir -+void _nc_set_writedir( -+ char *dir) -+ { /* void */ } -+ -+#undef _nc_write_entry -+void _nc_write_entry( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_tic_written -+int _nc_tic_written(void) -+ { return(*(int *)0); } -diff -Naur ncurses-5.9/ncurses/llib-ltict ncurses-5.9.patch/ncurses/llib-ltict ---- ncurses-5.9/ncurses/llib-ltict 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-ltict 2014-09-01 16:33:22.417792224 +0200 -@@ -0,0 +1,212 @@ -+/**************************************************************************** -+ * Copyright (c) 2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2013 * -+ ****************************************************************************/ -+/* LINTLIBRARY */ -+ -+/* ./tinfo/alloc_entry.c */ -+ -+#include <curses.priv.h> -+#include <tic.h> -+ -+#undef _nc_init_entry -+void _nc_init_entry( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_copy_entry -+ENTRY *_nc_copy_entry( -+ ENTRY *oldp) -+ { return(*(ENTRY **)0); } -+ -+#undef _nc_save_str -+char *_nc_save_str( -+ const char *const string) -+ { return(*(char **)0); } -+ -+#undef _nc_wrap_entry -+void _nc_wrap_entry( -+ ENTRY *const ep, -+ NCURSES_BOOL copy_strings) -+ { /* void */ } -+ -+#undef _nc_merge_entry -+void _nc_merge_entry( -+ TERMTYPE *const to, -+ TERMTYPE *const from) -+ { /* void */ } -+ -+/* ./tinfo/captoinfo.c */ -+ -+#include <ctype.h> -+ -+#undef _nc_captoinfo -+char *_nc_captoinfo( -+ const char *cap, -+ const char *s, -+ int const parameterized) -+ { return(*(char **)0); } -+ -+#undef _nc_infotocap -+char *_nc_infotocap( -+ const char *cap, -+ const char *str, -+ int const parameterized) -+ { return(*(char **)0); } -+ -+/* ./tinfo/comp_expand.c */ -+ -+#undef _nc_tic_expand -+char *_nc_tic_expand( -+ const char *srcp, -+ NCURSES_BOOL tic_format, -+ int numbers) -+ { return(*(char **)0); } -+ -+/* ./tinfo/comp_parse.c */ -+ -+#undef _nc_check_termtype2 -+void (*_nc_check_termtype2)( -+ TERMTYPE *p1, -+ NCURSES_BOOL p2); -+#undef _nc_check_termtype -+void (*_nc_check_termtype)( -+ TERMTYPE *p1); -+ -+#undef _nc_entry_match -+NCURSES_BOOL _nc_entry_match( -+ char *n1, -+ char *n2) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_read_entry_source -+void _nc_read_entry_source( -+ FILE *fp, -+ char *buf, -+ int literal, -+ NCURSES_BOOL silent, -+ NCURSES_BOOL (*hook)( -+ ENTRY *p1)) -+ { /* void */ } -+ -+#undef _nc_resolve_uses2 -+int _nc_resolve_uses2( -+ NCURSES_BOOL fullresolve, -+ NCURSES_BOOL literal) -+ { return(*(int *)0); } -+ -+#undef _nc_resolve_uses -+int _nc_resolve_uses( -+ NCURSES_BOOL fullresolve) -+ { return(*(int *)0); } -+ -+/* ./tinfo/comp_scan.c */ -+ -+#undef _nc_syntax -+int _nc_syntax; -+#undef _nc_strict_bsd -+int _nc_strict_bsd; -+#undef _nc_curr_file_pos -+long _nc_curr_file_pos; -+#undef _nc_comment_start -+long _nc_comment_start; -+#undef _nc_comment_end -+long _nc_comment_end; -+#undef _nc_start_line -+long _nc_start_line; -+#undef _nc_curr_token -+struct token _nc_curr_token; -+#undef _nc_disable_period -+NCURSES_BOOL _nc_disable_period; -+ -+#undef _nc_reset_input -+void _nc_reset_input( -+ FILE *fp, -+ char *buf) -+ { /* void */ } -+ -+#undef _nc_get_token -+int _nc_get_token( -+ NCURSES_BOOL silent) -+ { return(*(int *)0); } -+ -+#undef _nc_trans_string -+int _nc_trans_string( -+ char *ptr, -+ char *last) -+ { return(*(int *)0); } -+ -+#undef _nc_push_token -+void _nc_push_token( -+ int tokclass) -+ { /* void */ } -+ -+#undef _nc_panic_mode -+void _nc_panic_mode( -+ char ch) -+ { /* void */ } -+ -+/* ./tinfo/parse_entry.c */ -+ -+#undef _nc_parse_entry -+int _nc_parse_entry( -+ struct entry *entryp, -+ int literal, -+ NCURSES_BOOL silent) -+ { return(*(int *)0); } -+ -+#undef _nc_capcmp -+int _nc_capcmp( -+ const char *s, -+ const char *t) -+ { return(*(int *)0); } -+ -+typedef struct { -+ const char *from; -+ const char *to; -+} assoc; -+ -+/* ./tinfo/write_entry.c */ -+ -+#include <hashed_db.h> -+ -+#undef _nc_set_writedir -+void _nc_set_writedir( -+ char *dir) -+ { /* void */ } -+ -+#undef _nc_write_entry -+void _nc_write_entry( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_tic_written -+int _nc_tic_written(void) -+ { return(*(int *)0); } -diff -Naur ncurses-5.9/ncurses/llib-ltictw ncurses-5.9.patch/ncurses/llib-ltictw ---- ncurses-5.9/ncurses/llib-ltictw 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-ltictw 2014-09-01 16:33:22.417792224 +0200 -@@ -0,0 +1,212 @@ -+/**************************************************************************** -+ * Copyright (c) 2012 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2012 * -+ ****************************************************************************/ -+/* LINTLIBRARY */ -+ -+/* ./tinfo/alloc_entry.c */ -+ -+#include <curses.priv.h> -+#include <tic.h> -+ -+#undef _nc_init_entry -+void _nc_init_entry( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_copy_entry -+ENTRY *_nc_copy_entry( -+ ENTRY *oldp) -+ { return(*(ENTRY **)0); } -+ -+#undef _nc_save_str -+char *_nc_save_str( -+ const char *const string) -+ { return(*(char **)0); } -+ -+#undef _nc_wrap_entry -+void _nc_wrap_entry( -+ ENTRY *const ep, -+ NCURSES_BOOL copy_strings) -+ { /* void */ } -+ -+#undef _nc_merge_entry -+void _nc_merge_entry( -+ TERMTYPE *const to, -+ TERMTYPE *const from) -+ { /* void */ } -+ -+/* ./tinfo/captoinfo.c */ -+ -+#include <ctype.h> -+ -+#undef _nc_captoinfo -+char *_nc_captoinfo( -+ const char *cap, -+ const char *s, -+ int const parameterized) -+ { return(*(char **)0); } -+ -+#undef _nc_infotocap -+char *_nc_infotocap( -+ const char *cap, -+ const char *str, -+ int const parameterized) -+ { return(*(char **)0); } -+ -+/* ./tinfo/comp_expand.c */ -+ -+#undef _nc_tic_expand -+char *_nc_tic_expand( -+ const char *srcp, -+ NCURSES_BOOL tic_format, -+ int numbers) -+ { return(*(char **)0); } -+ -+/* ./tinfo/comp_parse.c */ -+ -+#undef _nc_check_termtype2 -+void (*_nc_check_termtype2)( -+ TERMTYPE *p1, -+ NCURSES_BOOL p2); -+#undef _nc_check_termtype -+void (*_nc_check_termtype)( -+ TERMTYPE *p1); -+ -+#undef _nc_entry_match -+NCURSES_BOOL _nc_entry_match( -+ char *n1, -+ char *n2) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_read_entry_source -+void _nc_read_entry_source( -+ FILE *fp, -+ char *buf, -+ int literal, -+ NCURSES_BOOL silent, -+ NCURSES_BOOL (*hook)( -+ ENTRY *p1)) -+ { /* void */ } -+ -+#undef _nc_resolve_uses2 -+int _nc_resolve_uses2( -+ NCURSES_BOOL fullresolve, -+ NCURSES_BOOL literal) -+ { return(*(int *)0); } -+ -+#undef _nc_resolve_uses -+int _nc_resolve_uses( -+ NCURSES_BOOL fullresolve) -+ { return(*(int *)0); } -+ -+/* ./tinfo/comp_scan.c */ -+ -+#undef _nc_syntax -+int _nc_syntax; -+#undef _nc_strict_bsd -+int _nc_strict_bsd; -+#undef _nc_curr_file_pos -+long _nc_curr_file_pos; -+#undef _nc_comment_start -+long _nc_comment_start; -+#undef _nc_comment_end -+long _nc_comment_end; -+#undef _nc_start_line -+long _nc_start_line; -+#undef _nc_curr_token -+struct token _nc_curr_token; -+#undef _nc_disable_period -+NCURSES_BOOL _nc_disable_period; -+ -+#undef _nc_reset_input -+void _nc_reset_input( -+ FILE *fp, -+ char *buf) -+ { /* void */ } -+ -+#undef _nc_get_token -+int _nc_get_token( -+ NCURSES_BOOL silent) -+ { return(*(int *)0); } -+ -+#undef _nc_trans_string -+int _nc_trans_string( -+ char *ptr, -+ char *last) -+ { return(*(int *)0); } -+ -+#undef _nc_push_token -+void _nc_push_token( -+ int tokclass) -+ { /* void */ } -+ -+#undef _nc_panic_mode -+void _nc_panic_mode( -+ char ch) -+ { /* void */ } -+ -+/* ./tinfo/parse_entry.c */ -+ -+#undef _nc_parse_entry -+int _nc_parse_entry( -+ struct entry *entryp, -+ int literal, -+ NCURSES_BOOL silent) -+ { return(*(int *)0); } -+ -+#undef _nc_capcmp -+int _nc_capcmp( -+ const char *s, -+ const char *t) -+ { return(*(int *)0); } -+ -+typedef struct { -+ const char *from; -+ const char *to; -+} assoc; -+ -+/* ./tinfo/write_entry.c */ -+ -+#include <hashed_db.h> -+ -+#undef _nc_set_writedir -+void _nc_set_writedir( -+ char *dir) -+ { /* void */ } -+ -+#undef _nc_write_entry -+void _nc_write_entry( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_tic_written -+int _nc_tic_written(void) -+ { return(*(int *)0); } -diff -Naur ncurses-5.9/ncurses/llib-lticw ncurses-5.9.patch/ncurses/llib-lticw ---- ncurses-5.9/ncurses/llib-lticw 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-lticw 2014-09-01 16:33:22.417792224 +0200 -@@ -0,0 +1,212 @@ -+/**************************************************************************** -+ * Copyright (c) 2012 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2012 * -+ ****************************************************************************/ -+/* LINTLIBRARY */ -+ -+/* ./tinfo/alloc_entry.c */ -+ -+#include <curses.priv.h> -+#include <tic.h> -+ -+#undef _nc_init_entry -+void _nc_init_entry( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_copy_entry -+ENTRY *_nc_copy_entry( -+ ENTRY *oldp) -+ { return(*(ENTRY **)0); } -+ -+#undef _nc_save_str -+char *_nc_save_str( -+ const char *const string) -+ { return(*(char **)0); } -+ -+#undef _nc_wrap_entry -+void _nc_wrap_entry( -+ ENTRY *const ep, -+ NCURSES_BOOL copy_strings) -+ { /* void */ } -+ -+#undef _nc_merge_entry -+void _nc_merge_entry( -+ TERMTYPE *const to, -+ TERMTYPE *const from) -+ { /* void */ } -+ -+/* ./tinfo/captoinfo.c */ -+ -+#include <ctype.h> -+ -+#undef _nc_captoinfo -+char *_nc_captoinfo( -+ const char *cap, -+ const char *s, -+ int const parameterized) -+ { return(*(char **)0); } -+ -+#undef _nc_infotocap -+char *_nc_infotocap( -+ const char *cap, -+ const char *str, -+ int const parameterized) -+ { return(*(char **)0); } -+ -+/* ./tinfo/comp_expand.c */ -+ -+#undef _nc_tic_expand -+char *_nc_tic_expand( -+ const char *srcp, -+ NCURSES_BOOL tic_format, -+ int numbers) -+ { return(*(char **)0); } -+ -+/* ./tinfo/comp_parse.c */ -+ -+#undef _nc_check_termtype2 -+void (*_nc_check_termtype2)( -+ TERMTYPE *p1, -+ NCURSES_BOOL p2); -+#undef _nc_check_termtype -+void (*_nc_check_termtype)( -+ TERMTYPE *p1); -+ -+#undef _nc_entry_match -+NCURSES_BOOL _nc_entry_match( -+ char *n1, -+ char *n2) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_read_entry_source -+void _nc_read_entry_source( -+ FILE *fp, -+ char *buf, -+ int literal, -+ NCURSES_BOOL silent, -+ NCURSES_BOOL (*hook)( -+ ENTRY *p1)) -+ { /* void */ } -+ -+#undef _nc_resolve_uses2 -+int _nc_resolve_uses2( -+ NCURSES_BOOL fullresolve, -+ NCURSES_BOOL literal) -+ { return(*(int *)0); } -+ -+#undef _nc_resolve_uses -+int _nc_resolve_uses( -+ NCURSES_BOOL fullresolve) -+ { return(*(int *)0); } -+ -+/* ./tinfo/comp_scan.c */ -+ -+#undef _nc_syntax -+int _nc_syntax; -+#undef _nc_strict_bsd -+int _nc_strict_bsd; -+#undef _nc_curr_file_pos -+long _nc_curr_file_pos; -+#undef _nc_comment_start -+long _nc_comment_start; -+#undef _nc_comment_end -+long _nc_comment_end; -+#undef _nc_start_line -+long _nc_start_line; -+#undef _nc_curr_token -+struct token _nc_curr_token; -+#undef _nc_disable_period -+NCURSES_BOOL _nc_disable_period; -+ -+#undef _nc_reset_input -+void _nc_reset_input( -+ FILE *fp, -+ char *buf) -+ { /* void */ } -+ -+#undef _nc_get_token -+int _nc_get_token( -+ NCURSES_BOOL silent) -+ { return(*(int *)0); } -+ -+#undef _nc_trans_string -+int _nc_trans_string( -+ char *ptr, -+ char *last) -+ { return(*(int *)0); } -+ -+#undef _nc_push_token -+void _nc_push_token( -+ int tokclass) -+ { /* void */ } -+ -+#undef _nc_panic_mode -+void _nc_panic_mode( -+ char ch) -+ { /* void */ } -+ -+/* ./tinfo/parse_entry.c */ -+ -+#undef _nc_parse_entry -+int _nc_parse_entry( -+ struct entry *entryp, -+ int literal, -+ NCURSES_BOOL silent) -+ { return(*(int *)0); } -+ -+#undef _nc_capcmp -+int _nc_capcmp( -+ const char *s, -+ const char *t) -+ { return(*(int *)0); } -+ -+typedef struct { -+ const char *from; -+ const char *to; -+} assoc; -+ -+/* ./tinfo/write_entry.c */ -+ -+#include <hashed_db.h> -+ -+#undef _nc_set_writedir -+void _nc_set_writedir( -+ char *dir) -+ { /* void */ } -+ -+#undef _nc_write_entry -+void _nc_write_entry( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_tic_written -+int _nc_tic_written(void) -+ { return(*(int *)0); } -diff -Naur ncurses-5.9/ncurses/llib-ltinfo ncurses-5.9.patch/ncurses/llib-ltinfo ---- ncurses-5.9/ncurses/llib-ltinfo 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-ltinfo 2014-09-01 16:33:22.418792225 +0200 -@@ -0,0 +1,1526 @@ -+/**************************************************************************** -+ * Copyright (c) 2012,2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2012 * -+ ****************************************************************************/ -+/* LINTLIBRARY */ -+ -+/* ./tinfo/access.c */ -+ -+#include <curses.priv.h> -+#include <ctype.h> -+#include <tic.h> -+ -+#undef _nc_rootname -+char *_nc_rootname( -+ char *path) -+ { return(*(char **)0); } -+ -+#undef _nc_is_abs_path -+NCURSES_BOOL _nc_is_abs_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_pathlast -+unsigned _nc_pathlast( -+ const char *path) -+ { return(*(unsigned *)0); } -+ -+#undef _nc_basename -+char *_nc_basename( -+ char *path) -+ { return(*(char **)0); } -+ -+#undef _nc_access -+int _nc_access( -+ const char *path, -+ int mode) -+ { return(*(int *)0); } -+ -+#undef _nc_is_dir_path -+NCURSES_BOOL _nc_is_dir_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_is_file_path -+NCURSES_BOOL _nc_is_file_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_env_access -+int _nc_env_access(void) -+ { return(*(int *)0); } -+ -+/* ./tinfo/add_tries.c */ -+ -+#undef _nc_add_to_try -+int _nc_add_to_try( -+ TRIES **tree, -+ const char *str, -+ unsigned code) -+ { return(*(int *)0); } -+ -+/* ./tinfo/alloc_ttype.c */ -+ -+#undef _nc_align_termtype -+void _nc_align_termtype( -+ TERMTYPE *to, -+ TERMTYPE *from) -+ { /* void */ } -+ -+#undef _nc_copy_termtype -+void _nc_copy_termtype( -+ TERMTYPE *dst, -+ const TERMTYPE *src) -+ { /* void */ } -+ -+/* ./codes.c */ -+ -+#undef boolcodes -+char *const boolcodes[] = {0}; -+#undef numcodes -+char *const numcodes[] = {0}; -+#undef strcodes -+char *const strcodes[] = {0}; -+ -+/* ./comp_captab.c */ -+ -+#include <hashsize.h> -+ -+#undef _nc_get_table -+const struct name_table_entry *_nc_get_table( -+ NCURSES_BOOL termcap) -+ { return(*(const struct name_table_entry **)0); } -+ -+#undef _nc_get_hash_table -+const HashValue *_nc_get_hash_table( -+ NCURSES_BOOL termcap) -+ { return(*(const HashValue **)0); } -+ -+#undef _nc_get_alias_table -+const struct alias *_nc_get_alias_table( -+ NCURSES_BOOL termcap) -+ { return(*(const struct alias **)0); } -+ -+#undef _nc_get_hash_info -+const HashData *_nc_get_hash_info( -+ NCURSES_BOOL termcap) -+ { return(*(const HashData **)0); } -+ -+/* ./tinfo/comp_error.c */ -+ -+#undef _nc_suppress_warnings -+NCURSES_BOOL _nc_suppress_warnings; -+#undef _nc_curr_line -+int _nc_curr_line; -+#undef _nc_curr_col -+int _nc_curr_col; -+ -+#undef _nc_get_source -+const char *_nc_get_source(void) -+ { return(*(const char **)0); } -+ -+#undef _nc_set_source -+void _nc_set_source( -+ const char *const name) -+ { /* void */ } -+ -+#undef _nc_set_type -+void _nc_set_type( -+ const char *const name) -+ { /* void */ } -+ -+#undef _nc_get_type -+void _nc_get_type( -+ char *name) -+ { /* void */ } -+ -+#undef _nc_warning -+void _nc_warning( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_err_abort -+void _nc_err_abort( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_syserr_abort -+void _nc_syserr_abort( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+/* ./tinfo/comp_hash.c */ -+ -+#undef _nc_find_entry -+struct name_table_entry const *_nc_find_entry( -+ const char *string, -+ const HashValue *hash_table) -+ { return(*(struct name_table_entry const **)0); } -+ -+#undef _nc_find_type_entry -+struct name_table_entry const *_nc_find_type_entry( -+ const char *string, -+ int type, -+ NCURSES_BOOL termcap) -+ { return(*(struct name_table_entry const **)0); } -+ -+/* ./tinfo/db_iterator.c */ -+ -+#include <time.h> -+ -+#undef _nc_tic_dir -+const char *_nc_tic_dir( -+ const char *path) -+ { return(*(const char **)0); } -+ -+#undef _nc_keep_tic_dir -+void _nc_keep_tic_dir( -+ const char *path) -+ { /* void */ } -+ -+#undef _nc_last_db -+void _nc_last_db(void) -+ { /* void */ } -+ -+#undef _nc_next_db -+const char *_nc_next_db( -+ DBDIRS *state, -+ int *offset) -+ { return(*(const char **)0); } -+ -+#undef _nc_first_db -+void _nc_first_db( -+ DBDIRS *state, -+ int *offset) -+ { /* void */ } -+ -+/* ./tinfo/doalloc.c */ -+ -+#undef _nc_doalloc -+void *_nc_doalloc( -+ void *oldp, -+ size_t amount) -+ { return(*(void **)0); } -+ -+/* ./tinfo/entries.c */ -+ -+#undef _nc_head -+ENTRY *_nc_head; -+#undef _nc_tail -+ENTRY *_nc_tail; -+ -+#undef _nc_free_entry -+void _nc_free_entry( -+ ENTRY *headp, -+ TERMTYPE *tterm) -+ { /* void */ } -+ -+#undef _nc_free_entries -+void _nc_free_entries( -+ ENTRY *headp) -+ { /* void */ } -+ -+#undef _nc_delink_entry -+ENTRY *_nc_delink_entry( -+ ENTRY *headp, -+ TERMTYPE *tterm) -+ { return(*(ENTRY **)0); } -+ -+#undef _nc_leaks_tinfo -+void _nc_leaks_tinfo(void) -+ { /* void */ } -+ -+/* ./fallback.c */ -+ -+#undef _nc_fallback -+const TERMTYPE *_nc_fallback( -+ const char *name) -+ { return(*(const TERMTYPE **)0); } -+ -+/* ./tinfo/free_ttype.c */ -+ -+#undef _nc_free_termtype -+void _nc_free_termtype( -+ TERMTYPE *ptr) -+ { /* void */ } -+ -+#undef _nc_user_definable -+NCURSES_BOOL _nc_user_definable; -+ -+#undef use_extended_names -+int use_extended_names( -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/getenv_num.c */ -+ -+#undef _nc_getenv_num -+int _nc_getenv_num( -+ const char *name) -+ { return(*(int *)0); } -+ -+#undef _nc_setenv_num -+void _nc_setenv_num( -+ const char *name, -+ int value) -+ { /* void */ } -+ -+/* ./tinfo/home_terminfo.c */ -+ -+#undef _nc_home_terminfo -+char *_nc_home_terminfo(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/init_keytry.c */ -+ -+#if 0 -+ -+#include <init_keytry.h> -+ -+#undef _nc_tinfo_fkeys -+const struct tinfo_fkeys _nc_tinfo_fkeys[] = {0}; -+ -+#endif -+ -+#undef _nc_init_keytry -+void _nc_init_keytry( -+ SCREEN *sp) -+ { /* void */ } -+ -+/* ./tinfo/lib_acs.c */ -+ -+#undef acs_map -+chtype acs_map[128]; -+ -+#undef _nc_init_acs_sp -+void _nc_init_acs_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_init_acs -+void _nc_init_acs(void) -+ { /* void */ } -+ -+/* ./tinfo/lib_baudrate.c */ -+ -+#include <termcap.h> -+ -+struct speed { -+ int s; -+ int sp; -+}; -+ -+#undef _nc_baudrate -+int _nc_baudrate( -+ int OSpeed) -+ { return(*(int *)0); } -+ -+#undef _nc_ospeed -+int _nc_ospeed( -+ int BaudRate) -+ { return(*(int *)0); } -+ -+#undef baudrate_sp -+int baudrate_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef baudrate -+int baudrate(void) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_cur_term.c */ -+ -+#undef cur_term -+TERMINAL *cur_term; -+ -+#undef set_curterm_sp -+TERMINAL *set_curterm_sp( -+ SCREEN *sp, -+ TERMINAL *termp) -+ { return(*(TERMINAL **)0); } -+ -+#undef set_curterm -+TERMINAL *set_curterm( -+ TERMINAL *termp) -+ { return(*(TERMINAL **)0); } -+ -+#undef del_curterm_sp -+int del_curterm_sp( -+ SCREEN *sp, -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+#undef del_curterm -+int del_curterm( -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_data.c */ -+ -+#undef stdscr -+WINDOW *stdscr; -+#undef curscr -+WINDOW *curscr; -+#undef newscr -+WINDOW *newscr; -+#undef _nc_screen_chain -+SCREEN *_nc_screen_chain; -+#undef SP -+SCREEN *SP; -+#undef _nc_globals -+NCURSES_GLOBALS _nc_globals; -+#undef _nc_prescreen -+NCURSES_PRESCREEN _nc_prescreen; -+ -+#undef _nc_screen_of -+SCREEN *_nc_screen_of( -+ WINDOW *win) -+ { return(*(SCREEN **)0); } -+ -+/* ./tinfo/lib_has_cap.c */ -+ -+#undef has_ic_sp -+NCURSES_BOOL has_ic_sp( -+ SCREEN *sp) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_ic -+NCURSES_BOOL has_ic(void) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_il_sp -+NCURSES_BOOL has_il_sp( -+ SCREEN *sp) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_il -+NCURSES_BOOL has_il(void) -+ { return(*(NCURSES_BOOL *)0); } -+ -+/* ./tinfo/lib_kernel.c */ -+ -+#undef erasechar_sp -+char erasechar_sp( -+ SCREEN *sp) -+ { return(*(char *)0); } -+ -+#undef erasechar -+char erasechar(void) -+ { return(*(char *)0); } -+ -+#undef killchar_sp -+char killchar_sp( -+ SCREEN *sp) -+ { return(*(char *)0); } -+ -+#undef killchar -+char killchar(void) -+ { return(*(char *)0); } -+ -+#undef flushinp_sp -+int flushinp_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef flushinp -+int flushinp(void) -+ { return(*(int *)0); } -+ -+/* ./lib_keyname.c */ -+ -+struct kn { short offset; int code; }; -+ -+#undef keyname_sp -+char *keyname_sp( -+ SCREEN *sp, -+ int c) -+ { return(*(char **)0); } -+ -+#undef keyname -+char *keyname( -+ int c) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_longname.c */ -+ -+#undef longname -+char *longname(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_napms.c */ -+ -+#include <sys/time.h> -+ -+#undef napms_sp -+int napms_sp( -+ SCREEN *sp, -+ int ms) -+ { return(*(int *)0); } -+ -+#undef napms -+int napms( -+ int ms) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_options.c */ -+ -+#undef idlok -+int idlok( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef idcok -+void idcok( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { /* void */ } -+ -+#undef halfdelay_sp -+int halfdelay_sp( -+ SCREEN *sp, -+ int t) -+ { return(*(int *)0); } -+ -+#undef halfdelay -+int halfdelay( -+ int t) -+ { return(*(int *)0); } -+ -+#undef nodelay -+int nodelay( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef notimeout -+int notimeout( -+ WINDOW *win, -+ NCURSES_BOOL f) -+ { return(*(int *)0); } -+ -+#undef wtimeout -+void wtimeout( -+ WINDOW *win, -+ int delay) -+ { /* void */ } -+ -+#undef keypad -+int keypad( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef meta -+int meta( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef curs_set_sp -+int curs_set_sp( -+ SCREEN *sp, -+ int vis) -+ { return(*(int *)0); } -+ -+#undef curs_set -+int curs_set( -+ int vis) -+ { return(*(int *)0); } -+ -+#undef typeahead_sp -+int typeahead_sp( -+ SCREEN *sp, -+ int fd) -+ { return(*(int *)0); } -+ -+#undef typeahead -+int typeahead( -+ int fd) -+ { return(*(int *)0); } -+ -+#undef has_key_sp -+int has_key_sp( -+ SCREEN *sp, -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef has_key -+int has_key( -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef _nc_putp_flush_sp -+int _nc_putp_flush_sp( -+ SCREEN *sp, -+ const char *name, -+ const char *value) -+ { return(*(int *)0); } -+ -+#undef _nc_keypad -+int _nc_keypad( -+ SCREEN *sp, -+ int flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_raw.c */ -+ -+#undef raw_sp -+int raw_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef raw -+int raw(void) -+ { return(*(int *)0); } -+ -+#undef cbreak_sp -+int cbreak_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef cbreak -+int cbreak(void) -+ { return(*(int *)0); } -+ -+#undef qiflush_sp -+void qiflush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef qiflush -+void qiflush(void) -+ { /* void */ } -+ -+#undef noraw_sp -+int noraw_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef noraw -+int noraw(void) -+ { return(*(int *)0); } -+ -+#undef nocbreak_sp -+int nocbreak_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef nocbreak -+int nocbreak(void) -+ { return(*(int *)0); } -+ -+#undef noqiflush_sp -+void noqiflush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef noqiflush -+void noqiflush(void) -+ { /* void */ } -+ -+#undef intrflush_sp -+int intrflush_sp( -+ SCREEN *sp, -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef intrflush -+int intrflush( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_setup.c */ -+ -+#include <locale.h> -+#include <sys/ioctl.h> -+#include <langinfo.h> -+ -+#undef ttytype -+char ttytype[256]; -+#undef LINES -+int LINES; -+#undef COLS -+int COLS; -+#undef TABSIZE -+int TABSIZE; -+ -+#undef set_tabsize_sp -+int set_tabsize_sp( -+ SCREEN *sp, -+ int value) -+ { return(*(int *)0); } -+ -+#undef set_tabsize -+int set_tabsize( -+ int value) -+ { return(*(int *)0); } -+ -+#undef _nc_handle_sigwinch -+int _nc_handle_sigwinch( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef use_env_sp -+void use_env_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_tioctl_sp -+void use_tioctl_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_env -+void use_env( -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_tioctl -+void use_tioctl( -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef _nc_get_screensize -+void _nc_get_screensize( -+ SCREEN *sp, -+ int *linep, -+ int *colp) -+ { /* void */ } -+ -+#undef _nc_update_screensize -+void _nc_update_screensize( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_setup_tinfo -+int _nc_setup_tinfo( -+ const char *const tn, -+ TERMTYPE *const tp) -+ { return(*(int *)0); } -+ -+#undef _nc_tinfo_cmdch -+void _nc_tinfo_cmdch( -+ TERMINAL *termp, -+ int proto) -+ { /* void */ } -+ -+#undef _nc_get_locale -+char *_nc_get_locale(void) -+ { return(*(char **)0); } -+ -+#undef _nc_unicode_locale -+int _nc_unicode_locale(void) -+ { return(*(int *)0); } -+ -+#undef _nc_locale_breaks_acs -+int _nc_locale_breaks_acs( -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+#undef _nc_setupterm -+int _nc_setupterm( -+ char *tname, -+ int Filedes, -+ int *errret, -+ int reuse) -+ { return(*(int *)0); } -+ -+#undef new_prescr -+SCREEN *new_prescr(void) -+ { return(*(SCREEN **)0); } -+ -+#undef setupterm -+int setupterm( -+ char *tname, -+ int Filedes, -+ int *errret) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_termcap.c */ -+ -+#undef UP -+char *UP; -+#undef BC -+char *BC; -+ -+#undef tgetent_sp -+int tgetent_sp( -+ SCREEN *sp, -+ char *bufp, -+ const char *name) -+ { return(*(int *)0); } -+ -+#if 0 -+ -+#include <capdefaults.c> -+ -+#endif -+ -+#undef tgetent -+int tgetent( -+ char *bufp, -+ const char *name) -+ { return(*(int *)0); } -+ -+#undef tgetflag_sp -+int tgetflag_sp( -+ SCREEN *sp, -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetflag -+int tgetflag( -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetnum_sp -+int tgetnum_sp( -+ SCREEN *sp, -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetnum -+int tgetnum( -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetstr_sp -+char *tgetstr_sp( -+ SCREEN *sp, -+ char *id, -+ char **area) -+ { return(*(char **)0); } -+ -+#undef tgetstr -+char *tgetstr( -+ char *id, -+ char **area) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_termname.c */ -+ -+#undef termname_sp -+char *termname_sp( -+ SCREEN *sp) -+ { return(*(char **)0); } -+ -+#undef termname -+char *termname(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tgoto.c */ -+ -+#undef tgoto -+char *tgoto( -+ const char *string, -+ int x, -+ int y) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_ti.c */ -+ -+#undef tigetflag_sp -+int tigetflag_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetflag -+int tigetflag( -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetnum_sp -+int tigetnum_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetnum -+int tigetnum( -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetstr_sp -+char *tigetstr_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(char **)0); } -+ -+#undef tigetstr -+char *tigetstr( -+ char *str) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tparm.c */ -+ -+#undef _nc_tparm_err -+int _nc_tparm_err; -+ -+#undef _nc_tparm_analyze -+int _nc_tparm_analyze( -+ const char *string, -+ char *p_is_s[9], -+ int *_nc_popcount) -+ { return(*(int *)0); } -+ -+#undef tparm -+char *tparm( -+ char *string, -+ ...) -+ { return(*(char **)0); } -+ -+#undef tiparm -+char *tiparm( -+ const char *string, -+ ...) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tputs.c */ -+ -+#undef PC -+char PC; -+#undef ospeed -+short ospeed; -+#undef _nc_nulls_sent -+int _nc_nulls_sent; -+ -+#undef _nc_set_no_padding -+void _nc_set_no_padding( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef delay_output_sp -+int delay_output_sp( -+ SCREEN *sp, -+ int ms) -+ { return(*(int *)0); } -+ -+#undef delay_output -+int delay_output( -+ int ms) -+ { return(*(int *)0); } -+ -+#undef _nc_flush_sp -+void _nc_flush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_flush -+void _nc_flush(void) -+ { /* void */ } -+ -+#undef _nc_outch_sp -+int _nc_outch_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_outch -+int _nc_outch( -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar_sp -+int _nc_putchar_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar -+int _nc_putchar( -+ int ch) -+ { return(*(int *)0); } -+ -+#undef putp_sp -+int putp_sp( -+ SCREEN *sp, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef putp -+int putp( -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef _nc_putp_sp -+int _nc_putp_sp( -+ SCREEN *sp, -+ const char *name, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef _nc_putp -+int _nc_putp( -+ const char *name, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef tputs_sp -+int tputs_sp( -+ SCREEN *sp, -+ const char *string, -+ int affcnt, -+ NCURSES_OUTC_sp outc) -+ { return(*(int *)0); } -+ -+#undef _nc_outc_wrapper -+int _nc_outc_wrapper( -+ SCREEN *sp, -+ int c) -+ { return(*(int *)0); } -+ -+#undef tputs -+int tputs( -+ const char *string, -+ int affcnt, -+ int (*outc)( -+ int p1)) -+ { return(*(int *)0); } -+ -+/* ./trace/lib_trace.c */ -+ -+#undef _nc_tracing -+unsigned _nc_tracing; -+#undef _nc_tputs_trace -+const char *_nc_tputs_trace = {0}; -+#undef _nc_outchars -+long _nc_outchars; -+ -+#undef trace -+void trace( -+ const unsigned int tracelevel) -+ { /* void */ } -+ -+#undef _tracef -+void _tracef( -+ const char *fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_retrace_bool -+NCURSES_BOOL _nc_retrace_bool( -+ int code) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_retrace_char -+char _nc_retrace_char( -+ int code) -+ { return(*(char *)0); } -+ -+#undef _nc_retrace_int -+int _nc_retrace_int( -+ int code) -+ { return(*(int *)0); } -+ -+#undef _nc_retrace_unsigned -+unsigned _nc_retrace_unsigned( -+ unsigned code) -+ { return(*(unsigned *)0); } -+ -+#undef _nc_retrace_ptr -+char *_nc_retrace_ptr( -+ char *code) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_cptr -+const char *_nc_retrace_cptr( -+ const char *code) -+ { return(*(const char **)0); } -+ -+#undef _nc_retrace_cvoid_ptr -+void *_nc_retrace_cvoid_ptr( -+ void *code) -+ { return(*(void **)0); } -+ -+#undef _nc_retrace_void_ptr -+void *_nc_retrace_void_ptr( -+ void *code) -+ { return(*(void **)0); } -+ -+#undef _nc_retrace_sp -+SCREEN *_nc_retrace_sp( -+ SCREEN *code) -+ { return(*(SCREEN **)0); } -+ -+#undef _nc_retrace_win -+WINDOW *_nc_retrace_win( -+ WINDOW *code) -+ { return(*(WINDOW **)0); } -+ -+/* ./trace/lib_traceatr.c */ -+ -+#undef _traceattr2 -+char *_traceattr2( -+ int bufnum, -+ chtype newmode) -+ { return(*(char **)0); } -+ -+#undef _traceattr -+char *_traceattr( -+ attr_t newmode) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_int_attr_t -+int _nc_retrace_int_attr_t( -+ attr_t code) -+ { return(*(int *)0); } -+ -+#undef _nc_retrace_attr_t -+attr_t _nc_retrace_attr_t( -+ attr_t code) -+ { return(*(attr_t *)0); } -+ -+#undef _nc_altcharset_name -+const char *_nc_altcharset_name( -+ attr_t attr, -+ chtype ch) -+ { return(*(const char **)0); } -+ -+#undef _tracechtype2 -+char *_tracechtype2( -+ int bufnum, -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef _tracechtype -+char *_tracechtype( -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_chtype -+chtype _nc_retrace_chtype( -+ chtype code) -+ { return(*(chtype *)0); } -+ -+/* ./trace/lib_tracebits.c */ -+ -+typedef struct { -+ unsigned int val; -+ const char *name; -+} BITNAMES; -+ -+#undef _nc_trace_ttymode -+char *_nc_trace_ttymode( -+ struct termios *tty) -+ { return(*(char **)0); } -+ -+#undef _nc_tracebits -+char *_nc_tracebits(void) -+ { return(*(char **)0); } -+ -+/* ./trace/lib_tracechr.c */ -+ -+#undef _nc_tracechar -+char *_nc_tracechar( -+ SCREEN *sp, -+ int ch) -+ { return(*(char **)0); } -+ -+#undef _tracechar -+char *_tracechar( -+ int ch) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_ttyflags.c */ -+ -+#undef _nc_get_tty_mode_sp -+int _nc_get_tty_mode_sp( -+ SCREEN *sp, -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_get_tty_mode -+int _nc_get_tty_mode( -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_set_tty_mode_sp -+int _nc_set_tty_mode_sp( -+ SCREEN *sp, -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_set_tty_mode -+int _nc_set_tty_mode( -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef def_shell_mode_sp -+int def_shell_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef def_shell_mode -+int def_shell_mode(void) -+ { return(*(int *)0); } -+ -+#undef def_prog_mode_sp -+int def_prog_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef def_prog_mode -+int def_prog_mode(void) -+ { return(*(int *)0); } -+ -+#undef reset_prog_mode_sp -+int reset_prog_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef reset_prog_mode -+int reset_prog_mode(void) -+ { return(*(int *)0); } -+ -+#undef reset_shell_mode_sp -+int reset_shell_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef reset_shell_mode -+int reset_shell_mode(void) -+ { return(*(int *)0); } -+ -+#undef savetty_sp -+int savetty_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef savetty -+int savetty(void) -+ { return(*(int *)0); } -+ -+#undef resetty_sp -+int resetty_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef resetty -+int resetty(void) -+ { return(*(int *)0); } -+ -+/* ./tty/lib_twait.c */ -+ -+#undef _nc_timed_wait -+int _nc_timed_wait( -+ SCREEN *sp, -+ int mode, -+ int milliseconds, -+ int *timeleft) -+ { return(*(int *)0); } -+ -+/* ./tinfo/name_match.c */ -+ -+#undef _nc_first_name -+char *_nc_first_name( -+ const char *const sp) -+ { return(*(char **)0); } -+ -+#undef _nc_name_match -+int _nc_name_match( -+ const char *const namelst, -+ const char *const name, -+ const char *const delim) -+ { return(*(int *)0); } -+ -+/* ./names.c */ -+ -+#undef boolnames -+char *const boolnames[] = {0}; -+#undef boolfnames -+char *const boolfnames[] = {0}; -+#undef numnames -+char *const numnames[] = {0}; -+#undef numfnames -+char *const numfnames[] = {0}; -+#undef strnames -+char *const strnames[] = {0}; -+#undef strfnames -+char *const strfnames[] = {0}; -+ -+/* ./tinfo/obsolete.c */ -+ -+#undef _nc_set_buffer_sp -+void _nc_set_buffer_sp( -+ SCREEN *sp, -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+#undef _nc_set_buffer -+void _nc_set_buffer( -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+/* ./tinfo/read_entry.c */ -+ -+#include <hashed_db.h> -+ -+#undef _nc_init_termtype -+void _nc_init_termtype( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_read_termtype -+int _nc_read_termtype( -+ TERMTYPE *ptr, -+ char *buffer, -+ int limit) -+ { return(*(int *)0); } -+ -+#undef _nc_read_file_entry -+int _nc_read_file_entry( -+ const char *const filename, -+ TERMTYPE *ptr) -+ { return(*(int *)0); } -+ -+#undef _nc_read_entry -+int _nc_read_entry( -+ const char *const name, -+ char *const filename, -+ TERMTYPE *const tp) -+ { return(*(int *)0); } -+ -+/* ./tinfo/read_termcap.c */ -+ -+#include <sys/types.h> -+ -+#undef _nc_read_termcap -+void _nc_read_termcap(void) -+ { /* void */ } -+ -+/* ./tinfo/strings.c */ -+ -+#undef _nc_str_init -+string_desc *_nc_str_init( -+ string_desc *dst, -+ char *src, -+ size_t len) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_str_null -+string_desc *_nc_str_null( -+ string_desc *dst, -+ size_t len) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_str_copy -+string_desc *_nc_str_copy( -+ string_desc *dst, -+ string_desc *src) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_safe_strcat -+NCURSES_BOOL _nc_safe_strcat( -+ string_desc *dst, -+ const char *src) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_safe_strcpy -+NCURSES_BOOL _nc_safe_strcpy( -+ string_desc *dst, -+ const char *src) -+ { return(*(NCURSES_BOOL *)0); } -+ -+/* ./trace/trace_buf.c */ -+ -+#undef _nc_trace_buf -+char *_nc_trace_buf( -+ int bufnum, -+ size_t want) -+ { return(*(char **)0); } -+ -+#undef _nc_trace_bufcat -+char *_nc_trace_bufcat( -+ int bufnum, -+ const char *value) -+ { return(*(char **)0); } -+ -+/* ./trace/trace_tries.c */ -+ -+#undef _nc_trace_tries -+void _nc_trace_tries( -+ TRIES *tree) -+ { /* void */ } -+ -+/* ./base/tries.c */ -+ -+#undef _nc_expand_try -+char *_nc_expand_try( -+ TRIES *tree, -+ unsigned code, -+ int *count, -+ size_t len) -+ { return(*(char **)0); } -+ -+#undef _nc_remove_key -+int _nc_remove_key( -+ TRIES **tree, -+ unsigned code) -+ { return(*(int *)0); } -+ -+#undef _nc_remove_string -+int _nc_remove_string( -+ TRIES **tree, -+ const char *string) -+ { return(*(int *)0); } -+ -+/* ./tinfo/trim_sgr0.c */ -+ -+#undef _nc_trim_sgr0 -+char *_nc_trim_sgr0( -+ TERMTYPE *tp) -+ { return(*(char **)0); } -+ -+/* ./unctrl.c */ -+ -+#undef unctrl_sp -+char *unctrl_sp( -+ SCREEN *sp, -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef unctrl -+char *unctrl( -+ chtype ch) -+ { return(*(char **)0); } -+ -+/* ./trace/visbuf.c */ -+ -+#undef _nc_visbuf2 -+const char *_nc_visbuf2( -+ int bufnum, -+ const char *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_visbuf -+const char *_nc_visbuf( -+ const char *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_visbufn -+const char *_nc_visbufn( -+ const char *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+#undef _nc_viscbuf2 -+const char *_nc_viscbuf2( -+ int bufnum, -+ const chtype *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+#undef _nc_viscbuf -+const char *_nc_viscbuf( -+ const chtype *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+/* ./base/define_key.c */ -+ -+#undef define_key_sp -+int define_key_sp( -+ SCREEN *sp, -+ const char *str, -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef define_key -+int define_key( -+ const char *str, -+ int keycode) -+ { return(*(int *)0); } -+ -+/* ./tinfo/hashed_db.c */ -+ -+#undef _nc_hashed_db -+void _nc_hashed_db(void) -+ { /* void */ } -+ -+/* ./base/key_defined.c */ -+ -+#undef key_defined_sp -+int key_defined_sp( -+ SCREEN *sp, -+ const char *str) -+ { return(*(int *)0); } -+ -+#undef key_defined -+int key_defined( -+ const char *str) -+ { return(*(int *)0); } -+ -+/* ./base/keybound.c */ -+ -+#undef keybound_sp -+char *keybound_sp( -+ SCREEN *sp, -+ int code, -+ int count) -+ { return(*(char **)0); } -+ -+#undef keybound -+char *keybound( -+ int code, -+ int count) -+ { return(*(char **)0); } -+ -+/* ./base/keyok.c */ -+ -+#undef keyok_sp -+int keyok_sp( -+ SCREEN *sp, -+ int c, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef keyok -+int keyok( -+ int c, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./base/version.c */ -+ -+#undef curses_version -+const char *curses_version(void) -+ { return(*(const char **)0); } -diff -Naur ncurses-5.9/ncurses/llib-ltinfot ncurses-5.9.patch/ncurses/llib-ltinfot ---- ncurses-5.9/ncurses/llib-ltinfot 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-ltinfot 2014-09-01 16:33:22.418792225 +0200 -@@ -0,0 +1,1635 @@ -+/**************************************************************************** -+ * Copyright (c) 2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2013 * -+ ****************************************************************************/ -+/* LINTLIBRARY */ -+ -+/* ./tinfo/access.c */ -+ -+#include <curses.priv.h> -+#include <ctype.h> -+#include <tic.h> -+ -+#undef _nc_rootname -+char *_nc_rootname( -+ char *path) -+ { return(*(char **)0); } -+ -+#undef _nc_is_abs_path -+NCURSES_BOOL _nc_is_abs_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_pathlast -+unsigned _nc_pathlast( -+ const char *path) -+ { return(*(unsigned *)0); } -+ -+#undef _nc_basename -+char *_nc_basename( -+ char *path) -+ { return(*(char **)0); } -+ -+#undef _nc_access -+int _nc_access( -+ const char *path, -+ int mode) -+ { return(*(int *)0); } -+ -+#undef _nc_is_dir_path -+NCURSES_BOOL _nc_is_dir_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_is_file_path -+NCURSES_BOOL _nc_is_file_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_env_access -+int _nc_env_access(void) -+ { return(*(int *)0); } -+ -+/* ./tinfo/add_tries.c */ -+ -+#undef _nc_add_to_try -+int _nc_add_to_try( -+ TRIES **tree, -+ const char *str, -+ unsigned code) -+ { return(*(int *)0); } -+ -+/* ./tinfo/alloc_ttype.c */ -+ -+#undef _nc_align_termtype -+void _nc_align_termtype( -+ TERMTYPE *to, -+ TERMTYPE *from) -+ { /* void */ } -+ -+#undef _nc_copy_termtype -+void _nc_copy_termtype( -+ TERMTYPE *dst, -+ const TERMTYPE *src) -+ { /* void */ } -+ -+/* ./codes.c */ -+ -+#undef _nc_boolcodes -+char *const *_nc_boolcodes(void) -+ { return(*(char **)0); } -+ -+#undef _nc_numcodes -+char *const *_nc_numcodes(void) -+ { return(*(char **)0); } -+ -+#undef _nc_strcodes -+char *const *_nc_strcodes(void) -+ { return(*(char **)0); } -+ -+/* ./comp_captab.c */ -+ -+#include <hashsize.h> -+ -+#undef _nc_get_table -+const struct name_table_entry *_nc_get_table( -+ NCURSES_BOOL termcap) -+ { return(*(const struct name_table_entry **)0); } -+ -+#undef _nc_get_hash_table -+const HashValue *_nc_get_hash_table( -+ NCURSES_BOOL termcap) -+ { return(*(const HashValue **)0); } -+ -+#undef _nc_get_alias_table -+const struct alias *_nc_get_alias_table( -+ NCURSES_BOOL termcap) -+ { return(*(const struct alias **)0); } -+ -+#undef _nc_get_hash_info -+const HashData *_nc_get_hash_info( -+ NCURSES_BOOL termcap) -+ { return(*(const HashData **)0); } -+ -+/* ./tinfo/comp_error.c */ -+ -+#undef _nc_suppress_warnings -+NCURSES_BOOL _nc_suppress_warnings; -+#undef _nc_curr_line -+int _nc_curr_line; -+#undef _nc_curr_col -+int _nc_curr_col; -+ -+#undef _nc_get_source -+const char *_nc_get_source(void) -+ { return(*(const char **)0); } -+ -+#undef _nc_set_source -+void _nc_set_source( -+ const char *const name) -+ { /* void */ } -+ -+#undef _nc_set_type -+void _nc_set_type( -+ const char *const name) -+ { /* void */ } -+ -+#undef _nc_get_type -+void _nc_get_type( -+ char *name) -+ { /* void */ } -+ -+#undef _nc_warning -+void _nc_warning( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_err_abort -+void _nc_err_abort( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_syserr_abort -+void _nc_syserr_abort( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+/* ./tinfo/comp_hash.c */ -+ -+#undef _nc_find_entry -+struct name_table_entry const *_nc_find_entry( -+ const char *string, -+ const HashValue *hash_table) -+ { return(*(struct name_table_entry const **)0); } -+ -+#undef _nc_find_type_entry -+struct name_table_entry const *_nc_find_type_entry( -+ const char *string, -+ int type, -+ NCURSES_BOOL termcap) -+ { return(*(struct name_table_entry const **)0); } -+ -+/* ./tinfo/db_iterator.c */ -+ -+#include <time.h> -+ -+#undef _nc_tic_dir -+const char *_nc_tic_dir( -+ const char *path) -+ { return(*(const char **)0); } -+ -+#undef _nc_keep_tic_dir -+void _nc_keep_tic_dir( -+ const char *path) -+ { /* void */ } -+ -+#undef _nc_last_db -+void _nc_last_db(void) -+ { /* void */ } -+ -+#undef _nc_next_db -+const char *_nc_next_db( -+ DBDIRS *state, -+ int *offset) -+ { return(*(const char **)0); } -+ -+#undef _nc_first_db -+void _nc_first_db( -+ DBDIRS *state, -+ int *offset) -+ { /* void */ } -+ -+/* ./tinfo/doalloc.c */ -+ -+#undef _nc_doalloc -+void *_nc_doalloc( -+ void *oldp, -+ size_t amount) -+ { return(*(void **)0); } -+ -+/* ./tinfo/entries.c */ -+ -+#undef _nc_head -+ENTRY *_nc_head; -+#undef _nc_tail -+ENTRY *_nc_tail; -+ -+#undef _nc_free_entry -+void _nc_free_entry( -+ ENTRY *headp, -+ TERMTYPE *tterm) -+ { /* void */ } -+ -+#undef _nc_free_entries -+void _nc_free_entries( -+ ENTRY *headp) -+ { /* void */ } -+ -+#undef _nc_delink_entry -+ENTRY *_nc_delink_entry( -+ ENTRY *headp, -+ TERMTYPE *tterm) -+ { return(*(ENTRY **)0); } -+ -+#undef _nc_leaks_tinfo -+void _nc_leaks_tinfo(void) -+ { /* void */ } -+ -+/* ./fallback.c */ -+ -+#undef _nc_fallback -+const TERMTYPE *_nc_fallback( -+ const char *name) -+ { return(*(const TERMTYPE **)0); } -+ -+/* ./tinfo/free_ttype.c */ -+ -+#undef _nc_free_termtype -+void _nc_free_termtype( -+ TERMTYPE *ptr) -+ { /* void */ } -+ -+#undef _nc_user_definable -+NCURSES_BOOL _nc_user_definable; -+ -+#undef use_extended_names -+int use_extended_names( -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/getenv_num.c */ -+ -+#undef _nc_getenv_num -+int _nc_getenv_num( -+ const char *name) -+ { return(*(int *)0); } -+ -+#undef _nc_setenv_num -+void _nc_setenv_num( -+ const char *name, -+ int value) -+ { /* void */ } -+ -+/* ./tinfo/home_terminfo.c */ -+ -+#undef _nc_home_terminfo -+char *_nc_home_terminfo(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/init_keytry.c */ -+ -+#if 0 -+ -+#include <init_keytry.h> -+ -+#undef _nc_tinfo_fkeys -+const struct tinfo_fkeys _nc_tinfo_fkeys[] = {0}; -+ -+#endif -+ -+#undef _nc_init_keytry -+void _nc_init_keytry( -+ SCREEN *sp) -+ { /* void */ } -+ -+/* ./tinfo/lib_acs.c */ -+ -+#undef _nc_acs_map -+chtype *_nc_acs_map(void) -+ { return(*(chtype **)0); } -+ -+#undef _nc_init_acs_sp -+void _nc_init_acs_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_init_acs -+void _nc_init_acs(void) -+ { /* void */ } -+ -+/* ./tinfo/lib_baudrate.c */ -+ -+#include <termcap.h> -+ -+struct speed { -+ int s; -+ int sp; -+}; -+ -+#undef _nc_baudrate -+int _nc_baudrate( -+ int OSpeed) -+ { return(*(int *)0); } -+ -+#undef _nc_ospeed -+int _nc_ospeed( -+ int BaudRate) -+ { return(*(int *)0); } -+ -+#undef baudrate_sp -+int baudrate_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef baudrate -+int baudrate(void) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_cur_term.c */ -+ -+#undef _nc_get_cur_term_sp -+TERMINAL *_nc_get_cur_term_sp( -+ SCREEN *sp) -+ { return(*(TERMINAL **)0); } -+ -+#undef _nc_get_cur_term -+TERMINAL *_nc_get_cur_term(void) -+ { return(*(TERMINAL **)0); } -+ -+#undef _nc_cur_term -+TERMINAL *_nc_cur_term(void) -+ { return(*(TERMINAL **)0); } -+ -+#undef set_curterm_sp -+TERMINAL *set_curterm_sp( -+ SCREEN *sp, -+ TERMINAL *termp) -+ { return(*(TERMINAL **)0); } -+ -+#undef set_curterm -+TERMINAL *set_curterm( -+ TERMINAL *termp) -+ { return(*(TERMINAL **)0); } -+ -+#undef del_curterm_sp -+int del_curterm_sp( -+ SCREEN *sp, -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+#undef del_curterm -+int del_curterm( -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_data.c */ -+ -+#undef _nc_stdscr -+WINDOW *_nc_stdscr(void) -+ { return(*(WINDOW **)0); } -+ -+#undef _nc_curscr -+WINDOW *_nc_curscr(void) -+ { return(*(WINDOW **)0); } -+ -+#undef _nc_newscr -+WINDOW *_nc_newscr(void) -+ { return(*(WINDOW **)0); } -+ -+#undef _nc_screen_chain -+SCREEN *_nc_screen_chain; -+#undef SP -+SCREEN *SP; -+#undef _nc_globals -+NCURSES_GLOBALS _nc_globals; -+#undef _nc_prescreen -+NCURSES_PRESCREEN _nc_prescreen; -+ -+#undef _nc_screen_of -+SCREEN *_nc_screen_of( -+ WINDOW *win) -+ { return(*(SCREEN **)0); } -+ -+#undef _nc_init_pthreads -+void _nc_init_pthreads(void) -+ { /* void */ } -+ -+#undef _nc_mutex_init -+void _nc_mutex_init( -+ pthread_mutex_t *obj) -+ { /* void */ } -+ -+#undef _nc_mutex_lock -+int _nc_mutex_lock( -+ pthread_mutex_t *obj) -+ { return(*(int *)0); } -+ -+#undef _nc_mutex_trylock -+int _nc_mutex_trylock( -+ pthread_mutex_t *obj) -+ { return(*(int *)0); } -+ -+#undef _nc_mutex_unlock -+int _nc_mutex_unlock( -+ pthread_mutex_t *obj) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_has_cap.c */ -+ -+#undef has_ic_sp -+NCURSES_BOOL has_ic_sp( -+ SCREEN *sp) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_ic -+NCURSES_BOOL has_ic(void) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_il_sp -+NCURSES_BOOL has_il_sp( -+ SCREEN *sp) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_il -+NCURSES_BOOL has_il(void) -+ { return(*(NCURSES_BOOL *)0); } -+ -+/* ./tinfo/lib_kernel.c */ -+ -+#undef erasechar_sp -+char erasechar_sp( -+ SCREEN *sp) -+ { return(*(char *)0); } -+ -+#undef erasechar -+char erasechar(void) -+ { return(*(char *)0); } -+ -+#undef killchar_sp -+char killchar_sp( -+ SCREEN *sp) -+ { return(*(char *)0); } -+ -+#undef killchar -+char killchar(void) -+ { return(*(char *)0); } -+ -+#undef flushinp_sp -+int flushinp_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef flushinp -+int flushinp(void) -+ { return(*(int *)0); } -+ -+/* ./lib_keyname.c */ -+ -+struct kn { short offset; int code; }; -+ -+#undef keyname_sp -+char *keyname_sp( -+ SCREEN *sp, -+ int c) -+ { return(*(char **)0); } -+ -+#undef keyname -+char *keyname( -+ int c) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_longname.c */ -+ -+#undef longname_sp -+char *longname_sp( -+ SCREEN *sp) -+ { return(*(char **)0); } -+ -+#undef longname -+char *longname(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_napms.c */ -+ -+#undef napms_sp -+int napms_sp( -+ SCREEN *sp, -+ int ms) -+ { return(*(int *)0); } -+ -+#undef napms -+int napms( -+ int ms) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_options.c */ -+ -+#undef idlok -+int idlok( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef idcok -+void idcok( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { /* void */ } -+ -+#undef halfdelay_sp -+int halfdelay_sp( -+ SCREEN *sp, -+ int t) -+ { return(*(int *)0); } -+ -+#undef halfdelay -+int halfdelay( -+ int t) -+ { return(*(int *)0); } -+ -+#undef nodelay -+int nodelay( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef notimeout -+int notimeout( -+ WINDOW *win, -+ NCURSES_BOOL f) -+ { return(*(int *)0); } -+ -+#undef wtimeout -+void wtimeout( -+ WINDOW *win, -+ int delay) -+ { /* void */ } -+ -+#undef keypad -+int keypad( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef meta -+int meta( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef curs_set_sp -+int curs_set_sp( -+ SCREEN *sp, -+ int vis) -+ { return(*(int *)0); } -+ -+#undef curs_set -+int curs_set( -+ int vis) -+ { return(*(int *)0); } -+ -+#undef typeahead_sp -+int typeahead_sp( -+ SCREEN *sp, -+ int fd) -+ { return(*(int *)0); } -+ -+#undef typeahead -+int typeahead( -+ int fd) -+ { return(*(int *)0); } -+ -+#undef has_key_sp -+int has_key_sp( -+ SCREEN *sp, -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef has_key -+int has_key( -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef _nc_putp_flush_sp -+int _nc_putp_flush_sp( -+ SCREEN *sp, -+ const char *name, -+ const char *value) -+ { return(*(int *)0); } -+ -+#undef _nc_keypad -+int _nc_keypad( -+ SCREEN *sp, -+ int flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_raw.c */ -+ -+#undef raw_sp -+int raw_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef raw -+int raw(void) -+ { return(*(int *)0); } -+ -+#undef cbreak_sp -+int cbreak_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef cbreak -+int cbreak(void) -+ { return(*(int *)0); } -+ -+#undef qiflush_sp -+void qiflush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef qiflush -+void qiflush(void) -+ { /* void */ } -+ -+#undef noraw_sp -+int noraw_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef noraw -+int noraw(void) -+ { return(*(int *)0); } -+ -+#undef nocbreak_sp -+int nocbreak_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef nocbreak -+int nocbreak(void) -+ { return(*(int *)0); } -+ -+#undef noqiflush_sp -+void noqiflush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef noqiflush -+void noqiflush(void) -+ { /* void */ } -+ -+#undef intrflush_sp -+int intrflush_sp( -+ SCREEN *sp, -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef intrflush -+int intrflush( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_setup.c */ -+ -+#include <locale.h> -+#include <sys/ioctl.h> -+#include <langinfo.h> -+ -+#undef _nc_ttytype -+char *_nc_ttytype(void) -+ { return(*(char **)0); } -+ -+#undef _nc_ptr_Lines -+int *_nc_ptr_Lines( -+ SCREEN *sp) -+ { return(*(int **)0); } -+ -+#undef _nc_LINES -+int _nc_LINES(void) -+ { return(*(int *)0); } -+ -+#undef _nc_ptr_Cols -+int *_nc_ptr_Cols( -+ SCREEN *sp) -+ { return(*(int **)0); } -+ -+#undef _nc_COLS -+int _nc_COLS(void) -+ { return(*(int *)0); } -+ -+#undef _nc_ptr_Tabsize -+int *_nc_ptr_Tabsize( -+ SCREEN *sp) -+ { return(*(int **)0); } -+ -+#undef _nc_TABSIZE -+int _nc_TABSIZE(void) -+ { return(*(int *)0); } -+ -+#undef set_tabsize_sp -+int set_tabsize_sp( -+ SCREEN *sp, -+ int value) -+ { return(*(int *)0); } -+ -+#undef set_tabsize -+int set_tabsize( -+ int value) -+ { return(*(int *)0); } -+ -+#undef _nc_handle_sigwinch -+int _nc_handle_sigwinch( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef use_env_sp -+void use_env_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_tioctl_sp -+void use_tioctl_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_env -+void use_env( -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_tioctl -+void use_tioctl( -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef _nc_get_screensize -+void _nc_get_screensize( -+ SCREEN *sp, -+ int *linep, -+ int *colp) -+ { /* void */ } -+ -+#undef _nc_update_screensize -+void _nc_update_screensize( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_setup_tinfo -+int _nc_setup_tinfo( -+ const char *const tn, -+ TERMTYPE *const tp) -+ { return(*(int *)0); } -+ -+#undef _nc_tinfo_cmdch -+void _nc_tinfo_cmdch( -+ TERMINAL *termp, -+ int proto) -+ { /* void */ } -+ -+#undef _nc_get_locale -+char *_nc_get_locale(void) -+ { return(*(char **)0); } -+ -+#undef _nc_unicode_locale -+int _nc_unicode_locale(void) -+ { return(*(int *)0); } -+ -+#undef _nc_locale_breaks_acs -+int _nc_locale_breaks_acs( -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+#undef _nc_setupterm -+int _nc_setupterm( -+ char *tname, -+ int Filedes, -+ int *errret, -+ int reuse) -+ { return(*(int *)0); } -+ -+#undef new_prescr -+SCREEN *new_prescr(void) -+ { return(*(SCREEN **)0); } -+ -+#undef setupterm -+int setupterm( -+ char *tname, -+ int Filedes, -+ int *errret) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_termcap.c */ -+ -+#undef UP -+char *UP; -+#undef BC -+char *BC; -+ -+#undef tgetent_sp -+int tgetent_sp( -+ SCREEN *sp, -+ char *bufp, -+ const char *name) -+ { return(*(int *)0); } -+ -+#if 0 -+ -+#include <capdefaults.c> -+ -+#endif -+ -+#undef tgetent -+int tgetent( -+ char *bufp, -+ const char *name) -+ { return(*(int *)0); } -+ -+#undef tgetflag_sp -+int tgetflag_sp( -+ SCREEN *sp, -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetflag -+int tgetflag( -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetnum_sp -+int tgetnum_sp( -+ SCREEN *sp, -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetnum -+int tgetnum( -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetstr_sp -+char *tgetstr_sp( -+ SCREEN *sp, -+ char *id, -+ char **area) -+ { return(*(char **)0); } -+ -+#undef tgetstr -+char *tgetstr( -+ char *id, -+ char **area) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_termname.c */ -+ -+#undef termname_sp -+char *termname_sp( -+ SCREEN *sp) -+ { return(*(char **)0); } -+ -+#undef termname -+char *termname(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tgoto.c */ -+ -+#undef tgoto -+char *tgoto( -+ const char *string, -+ int x, -+ int y) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_ti.c */ -+ -+#undef tigetflag_sp -+int tigetflag_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetflag -+int tigetflag( -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetnum_sp -+int tigetnum_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetnum -+int tigetnum( -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetstr_sp -+char *tigetstr_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(char **)0); } -+ -+#undef tigetstr -+char *tigetstr( -+ char *str) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tparm.c */ -+ -+#undef _nc_tparm_err -+int _nc_tparm_err; -+ -+#undef _nc_tparm_analyze -+int _nc_tparm_analyze( -+ const char *string, -+ char *p_is_s[9], -+ int *_nc_popcount) -+ { return(*(int *)0); } -+ -+#undef tparm -+char *tparm( -+ char *string, -+ ...) -+ { return(*(char **)0); } -+ -+#undef tiparm -+char *tiparm( -+ const char *string, -+ ...) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tputs.c */ -+ -+#undef PC -+char PC; -+#undef ospeed -+short ospeed; -+#undef _nc_nulls_sent -+int _nc_nulls_sent; -+ -+#undef _nc_set_no_padding -+void _nc_set_no_padding( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef delay_output_sp -+int delay_output_sp( -+ SCREEN *sp, -+ int ms) -+ { return(*(int *)0); } -+ -+#undef delay_output -+int delay_output( -+ int ms) -+ { return(*(int *)0); } -+ -+#undef _nc_flush_sp -+void _nc_flush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_flush -+void _nc_flush(void) -+ { /* void */ } -+ -+#undef _nc_outch_sp -+int _nc_outch_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_outch -+int _nc_outch( -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar_sp -+int _nc_putchar_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar -+int _nc_putchar( -+ int ch) -+ { return(*(int *)0); } -+ -+#undef putp_sp -+int putp_sp( -+ SCREEN *sp, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef putp -+int putp( -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef _nc_putp_sp -+int _nc_putp_sp( -+ SCREEN *sp, -+ const char *name, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef _nc_putp -+int _nc_putp( -+ const char *name, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef tputs_sp -+int tputs_sp( -+ SCREEN *sp, -+ const char *string, -+ int affcnt, -+ NCURSES_OUTC_sp outc) -+ { return(*(int *)0); } -+ -+#undef _nc_outc_wrapper -+int _nc_outc_wrapper( -+ SCREEN *sp, -+ int c) -+ { return(*(int *)0); } -+ -+#undef tputs -+int tputs( -+ const char *string, -+ int affcnt, -+ int (*outc)( -+ int p1)) -+ { return(*(int *)0); } -+ -+/* ./trace/lib_trace.c */ -+ -+#undef _nc_tracing -+unsigned _nc_tracing; -+ -+#undef _nc__nc_tputs_trace -+const char *_nc__nc_tputs_trace(void) -+ { return(*(const char **)0); } -+ -+#undef _nc__nc_outchars -+long _nc__nc_outchars(void) -+ { return(*(long *)0); } -+ -+#undef _nc_set_tputs_trace -+void _nc_set_tputs_trace( -+ const char *s) -+ { /* void */ } -+ -+#undef _nc_count_outchars -+void _nc_count_outchars( -+ long increment) -+ { /* void */ } -+ -+#undef trace -+void trace( -+ const unsigned int tracelevel) -+ { /* void */ } -+ -+#undef _tracef -+void _tracef( -+ const char *fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_retrace_bool -+NCURSES_BOOL _nc_retrace_bool( -+ int code) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_retrace_char -+char _nc_retrace_char( -+ int code) -+ { return(*(char *)0); } -+ -+#undef _nc_retrace_int -+int _nc_retrace_int( -+ int code) -+ { return(*(int *)0); } -+ -+#undef _nc_retrace_unsigned -+unsigned _nc_retrace_unsigned( -+ unsigned code) -+ { return(*(unsigned *)0); } -+ -+#undef _nc_retrace_ptr -+char *_nc_retrace_ptr( -+ char *code) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_cptr -+const char *_nc_retrace_cptr( -+ const char *code) -+ { return(*(const char **)0); } -+ -+#undef _nc_retrace_cvoid_ptr -+void *_nc_retrace_cvoid_ptr( -+ void *code) -+ { return(*(void **)0); } -+ -+#undef _nc_retrace_void_ptr -+void *_nc_retrace_void_ptr( -+ void *code) -+ { return(*(void **)0); } -+ -+#undef _nc_retrace_sp -+SCREEN *_nc_retrace_sp( -+ SCREEN *code) -+ { return(*(SCREEN **)0); } -+ -+#undef _nc_retrace_win -+WINDOW *_nc_retrace_win( -+ WINDOW *code) -+ { return(*(WINDOW **)0); } -+ -+#undef _nc_use_tracef -+int _nc_use_tracef( -+ unsigned mask) -+ { return(*(int *)0); } -+ -+#undef _nc_locked_tracef -+void _nc_locked_tracef( -+ const char *fmt, -+ ...) -+ { /* void */ } -+ -+/* ./trace/lib_traceatr.c */ -+ -+#undef _traceattr2 -+char *_traceattr2( -+ int bufnum, -+ chtype newmode) -+ { return(*(char **)0); } -+ -+#undef _traceattr -+char *_traceattr( -+ attr_t newmode) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_int_attr_t -+int _nc_retrace_int_attr_t( -+ attr_t code) -+ { return(*(int *)0); } -+ -+#undef _nc_retrace_attr_t -+attr_t _nc_retrace_attr_t( -+ attr_t code) -+ { return(*(attr_t *)0); } -+ -+#undef _nc_altcharset_name -+const char *_nc_altcharset_name( -+ attr_t attr, -+ chtype ch) -+ { return(*(const char **)0); } -+ -+#undef _tracechtype2 -+char *_tracechtype2( -+ int bufnum, -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef _tracechtype -+char *_tracechtype( -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_chtype -+chtype _nc_retrace_chtype( -+ chtype code) -+ { return(*(chtype *)0); } -+ -+/* ./trace/lib_tracebits.c */ -+ -+typedef struct { -+ unsigned int val; -+ const char *name; -+} BITNAMES; -+ -+#undef _nc_trace_ttymode -+char *_nc_trace_ttymode( -+ struct termios *tty) -+ { return(*(char **)0); } -+ -+#undef _nc_tracebits -+char *_nc_tracebits(void) -+ { return(*(char **)0); } -+ -+/* ./trace/lib_tracechr.c */ -+ -+#undef _nc_tracechar -+char *_nc_tracechar( -+ SCREEN *sp, -+ int ch) -+ { return(*(char **)0); } -+ -+#undef _tracechar -+char *_tracechar( -+ int ch) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_ttyflags.c */ -+ -+#undef _nc_get_tty_mode_sp -+int _nc_get_tty_mode_sp( -+ SCREEN *sp, -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_get_tty_mode -+int _nc_get_tty_mode( -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_set_tty_mode_sp -+int _nc_set_tty_mode_sp( -+ SCREEN *sp, -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_set_tty_mode -+int _nc_set_tty_mode( -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef def_shell_mode_sp -+int def_shell_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef def_shell_mode -+int def_shell_mode(void) -+ { return(*(int *)0); } -+ -+#undef def_prog_mode_sp -+int def_prog_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef def_prog_mode -+int def_prog_mode(void) -+ { return(*(int *)0); } -+ -+#undef reset_prog_mode_sp -+int reset_prog_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef reset_prog_mode -+int reset_prog_mode(void) -+ { return(*(int *)0); } -+ -+#undef reset_shell_mode_sp -+int reset_shell_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef reset_shell_mode -+int reset_shell_mode(void) -+ { return(*(int *)0); } -+ -+#undef savetty_sp -+int savetty_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef savetty -+int savetty(void) -+ { return(*(int *)0); } -+ -+#undef resetty_sp -+int resetty_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef resetty -+int resetty(void) -+ { return(*(int *)0); } -+ -+/* ./tty/lib_twait.c */ -+ -+#include <sys/time.h> -+ -+#undef _nc_timed_wait -+int _nc_timed_wait( -+ SCREEN *sp, -+ int mode, -+ int milliseconds, -+ int *timeleft) -+ { return(*(int *)0); } -+ -+/* ./tinfo/name_match.c */ -+ -+#undef _nc_first_name -+char *_nc_first_name( -+ const char *const sp) -+ { return(*(char **)0); } -+ -+#undef _nc_name_match -+int _nc_name_match( -+ const char *const namelst, -+ const char *const name, -+ const char *const delim) -+ { return(*(int *)0); } -+ -+/* ./names.c */ -+ -+#undef _nc_boolnames -+char *const *_nc_boolnames(void) -+ { return(*(char **)0); } -+ -+#undef _nc_boolfnames -+char *const *_nc_boolfnames(void) -+ { return(*(char **)0); } -+ -+#undef _nc_numnames -+char *const *_nc_numnames(void) -+ { return(*(char **)0); } -+ -+#undef _nc_numfnames -+char *const *_nc_numfnames(void) -+ { return(*(char **)0); } -+ -+#undef _nc_strnames -+char *const *_nc_strnames(void) -+ { return(*(char **)0); } -+ -+#undef _nc_strfnames -+char *const *_nc_strfnames(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/obsolete.c */ -+ -+#undef _nc_set_buffer_sp -+void _nc_set_buffer_sp( -+ SCREEN *sp, -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+#undef _nc_set_buffer -+void _nc_set_buffer( -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+/* ./tinfo/read_entry.c */ -+ -+#include <hashed_db.h> -+ -+#undef _nc_init_termtype -+void _nc_init_termtype( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_read_termtype -+int _nc_read_termtype( -+ TERMTYPE *ptr, -+ char *buffer, -+ int limit) -+ { return(*(int *)0); } -+ -+#undef _nc_read_file_entry -+int _nc_read_file_entry( -+ const char *const filename, -+ TERMTYPE *ptr) -+ { return(*(int *)0); } -+ -+#undef _nc_read_entry -+int _nc_read_entry( -+ const char *const name, -+ char *const filename, -+ TERMTYPE *const tp) -+ { return(*(int *)0); } -+ -+/* ./tinfo/read_termcap.c */ -+ -+#include <sys/types.h> -+ -+#undef _nc_read_termcap -+void _nc_read_termcap(void) -+ { /* void */ } -+ -+/* ./tinfo/strings.c */ -+ -+#undef _nc_str_init -+string_desc *_nc_str_init( -+ string_desc *dst, -+ char *src, -+ size_t len) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_str_null -+string_desc *_nc_str_null( -+ string_desc *dst, -+ size_t len) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_str_copy -+string_desc *_nc_str_copy( -+ string_desc *dst, -+ string_desc *src) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_safe_strcat -+NCURSES_BOOL _nc_safe_strcat( -+ string_desc *dst, -+ const char *src) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_safe_strcpy -+NCURSES_BOOL _nc_safe_strcpy( -+ string_desc *dst, -+ const char *src) -+ { return(*(NCURSES_BOOL *)0); } -+ -+/* ./trace/trace_buf.c */ -+ -+#undef _nc_trace_buf -+char *_nc_trace_buf( -+ int bufnum, -+ size_t want) -+ { return(*(char **)0); } -+ -+#undef _nc_trace_bufcat -+char *_nc_trace_bufcat( -+ int bufnum, -+ const char *value) -+ { return(*(char **)0); } -+ -+/* ./trace/trace_tries.c */ -+ -+#undef _nc_trace_tries -+void _nc_trace_tries( -+ TRIES *tree) -+ { /* void */ } -+ -+/* ./base/tries.c */ -+ -+#undef _nc_expand_try -+char *_nc_expand_try( -+ TRIES *tree, -+ unsigned code, -+ int *count, -+ size_t len) -+ { return(*(char **)0); } -+ -+#undef _nc_remove_key -+int _nc_remove_key( -+ TRIES **tree, -+ unsigned code) -+ { return(*(int *)0); } -+ -+#undef _nc_remove_string -+int _nc_remove_string( -+ TRIES **tree, -+ const char *string) -+ { return(*(int *)0); } -+ -+/* ./tinfo/trim_sgr0.c */ -+ -+#undef _nc_trim_sgr0 -+char *_nc_trim_sgr0( -+ TERMTYPE *tp) -+ { return(*(char **)0); } -+ -+/* ./unctrl.c */ -+ -+#undef unctrl_sp -+char *unctrl_sp( -+ SCREEN *sp, -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef unctrl -+char *unctrl( -+ chtype ch) -+ { return(*(char **)0); } -+ -+/* ./trace/visbuf.c */ -+ -+#undef _nc_visbuf2 -+const char *_nc_visbuf2( -+ int bufnum, -+ const char *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_visbuf -+const char *_nc_visbuf( -+ const char *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_visbufn -+const char *_nc_visbufn( -+ const char *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+#undef _nc_viscbuf2 -+const char *_nc_viscbuf2( -+ int bufnum, -+ const chtype *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+#undef _nc_viscbuf -+const char *_nc_viscbuf( -+ const chtype *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+/* ./base/define_key.c */ -+ -+#undef define_key_sp -+int define_key_sp( -+ SCREEN *sp, -+ const char *str, -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef define_key -+int define_key( -+ const char *str, -+ int keycode) -+ { return(*(int *)0); } -+ -+/* ./tinfo/hashed_db.c */ -+ -+#undef _nc_hashed_db -+void _nc_hashed_db(void) -+ { /* void */ } -+ -+/* ./base/key_defined.c */ -+ -+#undef key_defined_sp -+int key_defined_sp( -+ SCREEN *sp, -+ const char *str) -+ { return(*(int *)0); } -+ -+#undef key_defined -+int key_defined( -+ const char *str) -+ { return(*(int *)0); } -+ -+/* ./base/keybound.c */ -+ -+#undef keybound_sp -+char *keybound_sp( -+ SCREEN *sp, -+ int code, -+ int count) -+ { return(*(char **)0); } -+ -+#undef keybound -+char *keybound( -+ int code, -+ int count) -+ { return(*(char **)0); } -+ -+/* ./base/keyok.c */ -+ -+#undef keyok_sp -+int keyok_sp( -+ SCREEN *sp, -+ int c, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef keyok -+int keyok( -+ int c, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./base/version.c */ -+ -+#undef curses_version -+const char *curses_version(void) -+ { return(*(const char **)0); } -diff -Naur ncurses-5.9/ncurses/llib-ltinfotw ncurses-5.9.patch/ncurses/llib-ltinfotw ---- ncurses-5.9/ncurses/llib-ltinfotw 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-ltinfotw 2014-09-01 16:33:22.418792225 +0200 -@@ -0,0 +1,1668 @@ -+/**************************************************************************** -+ * Copyright (c) 2012,2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2012 * -+ ****************************************************************************/ -+/* LINTLIBRARY */ -+ -+/* ./tinfo/access.c */ -+ -+#include <curses.priv.h> -+#include <ctype.h> -+#include <tic.h> -+ -+#undef _nc_rootname -+char *_nc_rootname( -+ char *path) -+ { return(*(char **)0); } -+ -+#undef _nc_is_abs_path -+NCURSES_BOOL _nc_is_abs_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_pathlast -+unsigned _nc_pathlast( -+ const char *path) -+ { return(*(unsigned *)0); } -+ -+#undef _nc_basename -+char *_nc_basename( -+ char *path) -+ { return(*(char **)0); } -+ -+#undef _nc_access -+int _nc_access( -+ const char *path, -+ int mode) -+ { return(*(int *)0); } -+ -+#undef _nc_is_dir_path -+NCURSES_BOOL _nc_is_dir_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_is_file_path -+NCURSES_BOOL _nc_is_file_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_env_access -+int _nc_env_access(void) -+ { return(*(int *)0); } -+ -+/* ./tinfo/add_tries.c */ -+ -+#undef _nc_add_to_try -+int _nc_add_to_try( -+ TRIES **tree, -+ const char *str, -+ unsigned code) -+ { return(*(int *)0); } -+ -+/* ./tinfo/alloc_ttype.c */ -+ -+#undef _nc_align_termtype -+void _nc_align_termtype( -+ TERMTYPE *to, -+ TERMTYPE *from) -+ { /* void */ } -+ -+#undef _nc_copy_termtype -+void _nc_copy_termtype( -+ TERMTYPE *dst, -+ const TERMTYPE *src) -+ { /* void */ } -+ -+/* ./codes.c */ -+ -+#undef _nc_boolcodes -+char *const *_nc_boolcodes(void) -+ { return(*(char **)0); } -+ -+#undef _nc_numcodes -+char *const *_nc_numcodes(void) -+ { return(*(char **)0); } -+ -+#undef _nc_strcodes -+char *const *_nc_strcodes(void) -+ { return(*(char **)0); } -+ -+/* ./comp_captab.c */ -+ -+#include <hashsize.h> -+ -+#undef _nc_get_table -+const struct name_table_entry *_nc_get_table( -+ NCURSES_BOOL termcap) -+ { return(*(const struct name_table_entry **)0); } -+ -+#undef _nc_get_hash_table -+const HashValue *_nc_get_hash_table( -+ NCURSES_BOOL termcap) -+ { return(*(const HashValue **)0); } -+ -+#undef _nc_get_alias_table -+const struct alias *_nc_get_alias_table( -+ NCURSES_BOOL termcap) -+ { return(*(const struct alias **)0); } -+ -+#undef _nc_get_hash_info -+const HashData *_nc_get_hash_info( -+ NCURSES_BOOL termcap) -+ { return(*(const HashData **)0); } -+ -+/* ./tinfo/comp_error.c */ -+ -+#undef _nc_suppress_warnings -+NCURSES_BOOL _nc_suppress_warnings; -+#undef _nc_curr_line -+int _nc_curr_line; -+#undef _nc_curr_col -+int _nc_curr_col; -+ -+#undef _nc_get_source -+const char *_nc_get_source(void) -+ { return(*(const char **)0); } -+ -+#undef _nc_set_source -+void _nc_set_source( -+ const char *const name) -+ { /* void */ } -+ -+#undef _nc_set_type -+void _nc_set_type( -+ const char *const name) -+ { /* void */ } -+ -+#undef _nc_get_type -+void _nc_get_type( -+ char *name) -+ { /* void */ } -+ -+#undef _nc_warning -+void _nc_warning( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_err_abort -+void _nc_err_abort( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_syserr_abort -+void _nc_syserr_abort( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+/* ./tinfo/comp_hash.c */ -+ -+#undef _nc_find_entry -+struct name_table_entry const *_nc_find_entry( -+ const char *string, -+ const HashValue *hash_table) -+ { return(*(struct name_table_entry const **)0); } -+ -+#undef _nc_find_type_entry -+struct name_table_entry const *_nc_find_type_entry( -+ const char *string, -+ int type, -+ NCURSES_BOOL termcap) -+ { return(*(struct name_table_entry const **)0); } -+ -+/* ./tinfo/db_iterator.c */ -+ -+#include <time.h> -+ -+#undef _nc_tic_dir -+const char *_nc_tic_dir( -+ const char *path) -+ { return(*(const char **)0); } -+ -+#undef _nc_keep_tic_dir -+void _nc_keep_tic_dir( -+ const char *path) -+ { /* void */ } -+ -+#undef _nc_last_db -+void _nc_last_db(void) -+ { /* void */ } -+ -+#undef _nc_next_db -+const char *_nc_next_db( -+ DBDIRS *state, -+ int *offset) -+ { return(*(const char **)0); } -+ -+#undef _nc_first_db -+void _nc_first_db( -+ DBDIRS *state, -+ int *offset) -+ { /* void */ } -+ -+/* ./tinfo/doalloc.c */ -+ -+#undef _nc_doalloc -+void *_nc_doalloc( -+ void *oldp, -+ size_t amount) -+ { return(*(void **)0); } -+ -+/* ./tinfo/entries.c */ -+ -+#undef _nc_head -+ENTRY *_nc_head; -+#undef _nc_tail -+ENTRY *_nc_tail; -+ -+#undef _nc_free_entry -+void _nc_free_entry( -+ ENTRY *headp, -+ TERMTYPE *tterm) -+ { /* void */ } -+ -+#undef _nc_free_entries -+void _nc_free_entries( -+ ENTRY *headp) -+ { /* void */ } -+ -+#undef _nc_delink_entry -+ENTRY *_nc_delink_entry( -+ ENTRY *headp, -+ TERMTYPE *tterm) -+ { return(*(ENTRY **)0); } -+ -+#undef _nc_leaks_tinfo -+void _nc_leaks_tinfo(void) -+ { /* void */ } -+ -+/* ./fallback.c */ -+ -+#undef _nc_fallback -+const TERMTYPE *_nc_fallback( -+ const char *name) -+ { return(*(const TERMTYPE **)0); } -+ -+/* ./tinfo/free_ttype.c */ -+ -+#undef _nc_free_termtype -+void _nc_free_termtype( -+ TERMTYPE *ptr) -+ { /* void */ } -+ -+#undef _nc_user_definable -+NCURSES_BOOL _nc_user_definable; -+ -+#undef use_extended_names -+int use_extended_names( -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/getenv_num.c */ -+ -+#undef _nc_getenv_num -+int _nc_getenv_num( -+ const char *name) -+ { return(*(int *)0); } -+ -+#undef _nc_setenv_num -+void _nc_setenv_num( -+ const char *name, -+ int value) -+ { /* void */ } -+ -+/* ./tinfo/home_terminfo.c */ -+ -+#undef _nc_home_terminfo -+char *_nc_home_terminfo(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/init_keytry.c */ -+ -+#if 0 -+ -+#include <init_keytry.h> -+ -+#undef _nc_tinfo_fkeys -+const struct tinfo_fkeys _nc_tinfo_fkeys[] = {0}; -+ -+#endif -+ -+#undef _nc_init_keytry -+void _nc_init_keytry( -+ SCREEN *sp) -+ { /* void */ } -+ -+/* ./tinfo/lib_acs.c */ -+ -+#undef _nc_acs_map -+chtype *_nc_acs_map(void) -+ { return(*(chtype **)0); } -+ -+#undef _nc_init_acs_sp -+void _nc_init_acs_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_init_acs -+void _nc_init_acs(void) -+ { /* void */ } -+ -+/* ./tinfo/lib_baudrate.c */ -+ -+#include <termcap.h> -+ -+struct speed { -+ int s; -+ int sp; -+}; -+ -+#undef _nc_baudrate -+int _nc_baudrate( -+ int OSpeed) -+ { return(*(int *)0); } -+ -+#undef _nc_ospeed -+int _nc_ospeed( -+ int BaudRate) -+ { return(*(int *)0); } -+ -+#undef baudrate_sp -+int baudrate_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef baudrate -+int baudrate(void) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_cur_term.c */ -+ -+#undef _nc_get_cur_term_sp -+TERMINAL *_nc_get_cur_term_sp( -+ SCREEN *sp) -+ { return(*(TERMINAL **)0); } -+ -+#undef _nc_get_cur_term -+TERMINAL *_nc_get_cur_term(void) -+ { return(*(TERMINAL **)0); } -+ -+#undef _nc_cur_term -+TERMINAL *_nc_cur_term(void) -+ { return(*(TERMINAL **)0); } -+ -+#undef set_curterm_sp -+TERMINAL *set_curterm_sp( -+ SCREEN *sp, -+ TERMINAL *termp) -+ { return(*(TERMINAL **)0); } -+ -+#undef set_curterm -+TERMINAL *set_curterm( -+ TERMINAL *termp) -+ { return(*(TERMINAL **)0); } -+ -+#undef del_curterm_sp -+int del_curterm_sp( -+ SCREEN *sp, -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+#undef del_curterm -+int del_curterm( -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_data.c */ -+ -+#undef _nc_stdscr -+WINDOW *_nc_stdscr(void) -+ { return(*(WINDOW **)0); } -+ -+#undef _nc_curscr -+WINDOW *_nc_curscr(void) -+ { return(*(WINDOW **)0); } -+ -+#undef _nc_newscr -+WINDOW *_nc_newscr(void) -+ { return(*(WINDOW **)0); } -+ -+#undef _nc_screen_chain -+SCREEN *_nc_screen_chain; -+#undef SP -+SCREEN *SP; -+#undef _nc_globals -+NCURSES_GLOBALS _nc_globals; -+#undef _nc_prescreen -+NCURSES_PRESCREEN _nc_prescreen; -+ -+#undef _nc_screen_of -+SCREEN *_nc_screen_of( -+ WINDOW *win) -+ { return(*(SCREEN **)0); } -+ -+#undef _nc_init_pthreads -+void _nc_init_pthreads(void) -+ { /* void */ } -+ -+#undef _nc_mutex_init -+void _nc_mutex_init( -+ pthread_mutex_t *obj) -+ { /* void */ } -+ -+#undef _nc_mutex_lock -+int _nc_mutex_lock( -+ pthread_mutex_t *obj) -+ { return(*(int *)0); } -+ -+#undef _nc_mutex_trylock -+int _nc_mutex_trylock( -+ pthread_mutex_t *obj) -+ { return(*(int *)0); } -+ -+#undef _nc_mutex_unlock -+int _nc_mutex_unlock( -+ pthread_mutex_t *obj) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_has_cap.c */ -+ -+#undef has_ic_sp -+NCURSES_BOOL has_ic_sp( -+ SCREEN *sp) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_ic -+NCURSES_BOOL has_ic(void) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_il_sp -+NCURSES_BOOL has_il_sp( -+ SCREEN *sp) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_il -+NCURSES_BOOL has_il(void) -+ { return(*(NCURSES_BOOL *)0); } -+ -+/* ./tinfo/lib_kernel.c */ -+ -+#undef erasechar_sp -+char erasechar_sp( -+ SCREEN *sp) -+ { return(*(char *)0); } -+ -+#undef erasechar -+char erasechar(void) -+ { return(*(char *)0); } -+ -+#undef killchar_sp -+char killchar_sp( -+ SCREEN *sp) -+ { return(*(char *)0); } -+ -+#undef killchar -+char killchar(void) -+ { return(*(char *)0); } -+ -+#undef flushinp_sp -+int flushinp_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef flushinp -+int flushinp(void) -+ { return(*(int *)0); } -+ -+/* ./lib_keyname.c */ -+ -+struct kn { short offset; int code; }; -+ -+#undef keyname_sp -+char *keyname_sp( -+ SCREEN *sp, -+ int c) -+ { return(*(char **)0); } -+ -+#undef keyname -+char *keyname( -+ int c) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_longname.c */ -+ -+#undef longname_sp -+char *longname_sp( -+ SCREEN *sp) -+ { return(*(char **)0); } -+ -+#undef longname -+char *longname(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_napms.c */ -+ -+#undef napms_sp -+int napms_sp( -+ SCREEN *sp, -+ int ms) -+ { return(*(int *)0); } -+ -+#undef napms -+int napms( -+ int ms) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_options.c */ -+ -+#undef idlok -+int idlok( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef idcok -+void idcok( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { /* void */ } -+ -+#undef halfdelay_sp -+int halfdelay_sp( -+ SCREEN *sp, -+ int t) -+ { return(*(int *)0); } -+ -+#undef halfdelay -+int halfdelay( -+ int t) -+ { return(*(int *)0); } -+ -+#undef nodelay -+int nodelay( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef notimeout -+int notimeout( -+ WINDOW *win, -+ NCURSES_BOOL f) -+ { return(*(int *)0); } -+ -+#undef wtimeout -+void wtimeout( -+ WINDOW *win, -+ int delay) -+ { /* void */ } -+ -+#undef keypad -+int keypad( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef meta -+int meta( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef curs_set_sp -+int curs_set_sp( -+ SCREEN *sp, -+ int vis) -+ { return(*(int *)0); } -+ -+#undef curs_set -+int curs_set( -+ int vis) -+ { return(*(int *)0); } -+ -+#undef typeahead_sp -+int typeahead_sp( -+ SCREEN *sp, -+ int fd) -+ { return(*(int *)0); } -+ -+#undef typeahead -+int typeahead( -+ int fd) -+ { return(*(int *)0); } -+ -+#undef has_key_sp -+int has_key_sp( -+ SCREEN *sp, -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef has_key -+int has_key( -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef _nc_putp_flush_sp -+int _nc_putp_flush_sp( -+ SCREEN *sp, -+ const char *name, -+ const char *value) -+ { return(*(int *)0); } -+ -+#undef _nc_keypad -+int _nc_keypad( -+ SCREEN *sp, -+ int flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_raw.c */ -+ -+#undef raw_sp -+int raw_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef raw -+int raw(void) -+ { return(*(int *)0); } -+ -+#undef cbreak_sp -+int cbreak_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef cbreak -+int cbreak(void) -+ { return(*(int *)0); } -+ -+#undef qiflush_sp -+void qiflush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef qiflush -+void qiflush(void) -+ { /* void */ } -+ -+#undef noraw_sp -+int noraw_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef noraw -+int noraw(void) -+ { return(*(int *)0); } -+ -+#undef nocbreak_sp -+int nocbreak_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef nocbreak -+int nocbreak(void) -+ { return(*(int *)0); } -+ -+#undef noqiflush_sp -+void noqiflush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef noqiflush -+void noqiflush(void) -+ { /* void */ } -+ -+#undef intrflush_sp -+int intrflush_sp( -+ SCREEN *sp, -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef intrflush -+int intrflush( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_setup.c */ -+ -+#include <locale.h> -+#include <sys/ioctl.h> -+#include <langinfo.h> -+ -+#undef _nc_ttytype -+char *_nc_ttytype(void) -+ { return(*(char **)0); } -+ -+#undef _nc_ptr_Lines -+int *_nc_ptr_Lines( -+ SCREEN *sp) -+ { return(*(int **)0); } -+ -+#undef _nc_LINES -+int _nc_LINES(void) -+ { return(*(int *)0); } -+ -+#undef _nc_ptr_Cols -+int *_nc_ptr_Cols( -+ SCREEN *sp) -+ { return(*(int **)0); } -+ -+#undef _nc_COLS -+int _nc_COLS(void) -+ { return(*(int *)0); } -+ -+#undef _nc_ptr_Tabsize -+int *_nc_ptr_Tabsize( -+ SCREEN *sp) -+ { return(*(int **)0); } -+ -+#undef _nc_TABSIZE -+int _nc_TABSIZE(void) -+ { return(*(int *)0); } -+ -+#undef set_tabsize_sp -+int set_tabsize_sp( -+ SCREEN *sp, -+ int value) -+ { return(*(int *)0); } -+ -+#undef set_tabsize -+int set_tabsize( -+ int value) -+ { return(*(int *)0); } -+ -+#undef _nc_handle_sigwinch -+int _nc_handle_sigwinch( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef use_env_sp -+void use_env_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_tioctl_sp -+void use_tioctl_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_env -+void use_env( -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_tioctl -+void use_tioctl( -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef _nc_get_screensize -+void _nc_get_screensize( -+ SCREEN *sp, -+ int *linep, -+ int *colp) -+ { /* void */ } -+ -+#undef _nc_update_screensize -+void _nc_update_screensize( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_setup_tinfo -+int _nc_setup_tinfo( -+ const char *const tn, -+ TERMTYPE *const tp) -+ { return(*(int *)0); } -+ -+#undef _nc_tinfo_cmdch -+void _nc_tinfo_cmdch( -+ TERMINAL *termp, -+ int proto) -+ { /* void */ } -+ -+#undef _nc_get_locale -+char *_nc_get_locale(void) -+ { return(*(char **)0); } -+ -+#undef _nc_unicode_locale -+int _nc_unicode_locale(void) -+ { return(*(int *)0); } -+ -+#undef _nc_locale_breaks_acs -+int _nc_locale_breaks_acs( -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+#undef _nc_setupterm -+int _nc_setupterm( -+ char *tname, -+ int Filedes, -+ int *errret, -+ int reuse) -+ { return(*(int *)0); } -+ -+#undef new_prescr -+SCREEN *new_prescr(void) -+ { return(*(SCREEN **)0); } -+ -+#undef setupterm -+int setupterm( -+ char *tname, -+ int Filedes, -+ int *errret) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_termcap.c */ -+ -+#undef UP -+char *UP; -+#undef BC -+char *BC; -+ -+#undef tgetent_sp -+int tgetent_sp( -+ SCREEN *sp, -+ char *bufp, -+ const char *name) -+ { return(*(int *)0); } -+ -+#if 0 -+ -+#include <capdefaults.c> -+ -+#endif -+ -+#undef tgetent -+int tgetent( -+ char *bufp, -+ const char *name) -+ { return(*(int *)0); } -+ -+#undef tgetflag_sp -+int tgetflag_sp( -+ SCREEN *sp, -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetflag -+int tgetflag( -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetnum_sp -+int tgetnum_sp( -+ SCREEN *sp, -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetnum -+int tgetnum( -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetstr_sp -+char *tgetstr_sp( -+ SCREEN *sp, -+ char *id, -+ char **area) -+ { return(*(char **)0); } -+ -+#undef tgetstr -+char *tgetstr( -+ char *id, -+ char **area) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_termname.c */ -+ -+#undef termname_sp -+char *termname_sp( -+ SCREEN *sp) -+ { return(*(char **)0); } -+ -+#undef termname -+char *termname(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tgoto.c */ -+ -+#undef tgoto -+char *tgoto( -+ const char *string, -+ int x, -+ int y) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_ti.c */ -+ -+#undef tigetflag_sp -+int tigetflag_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetflag -+int tigetflag( -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetnum_sp -+int tigetnum_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetnum -+int tigetnum( -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetstr_sp -+char *tigetstr_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(char **)0); } -+ -+#undef tigetstr -+char *tigetstr( -+ char *str) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tparm.c */ -+ -+#undef _nc_tparm_err -+int _nc_tparm_err; -+ -+#undef _nc_tparm_analyze -+int _nc_tparm_analyze( -+ const char *string, -+ char *p_is_s[9], -+ int *_nc_popcount) -+ { return(*(int *)0); } -+ -+#undef tparm -+char *tparm( -+ char *string, -+ ...) -+ { return(*(char **)0); } -+ -+#undef tiparm -+char *tiparm( -+ const char *string, -+ ...) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tputs.c */ -+ -+#undef PC -+char PC; -+#undef ospeed -+short ospeed; -+#undef _nc_nulls_sent -+int _nc_nulls_sent; -+ -+#undef _nc_set_no_padding -+void _nc_set_no_padding( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef delay_output_sp -+int delay_output_sp( -+ SCREEN *sp, -+ int ms) -+ { return(*(int *)0); } -+ -+#undef delay_output -+int delay_output( -+ int ms) -+ { return(*(int *)0); } -+ -+#undef _nc_flush_sp -+void _nc_flush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_flush -+void _nc_flush(void) -+ { /* void */ } -+ -+#undef _nc_outch_sp -+int _nc_outch_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_outch -+int _nc_outch( -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar_sp -+int _nc_putchar_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar -+int _nc_putchar( -+ int ch) -+ { return(*(int *)0); } -+ -+#undef putp_sp -+int putp_sp( -+ SCREEN *sp, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef putp -+int putp( -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef _nc_putp_sp -+int _nc_putp_sp( -+ SCREEN *sp, -+ const char *name, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef _nc_putp -+int _nc_putp( -+ const char *name, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef tputs_sp -+int tputs_sp( -+ SCREEN *sp, -+ const char *string, -+ int affcnt, -+ NCURSES_OUTC_sp outc) -+ { return(*(int *)0); } -+ -+#undef _nc_outc_wrapper -+int _nc_outc_wrapper( -+ SCREEN *sp, -+ int c) -+ { return(*(int *)0); } -+ -+#undef tputs -+int tputs( -+ const char *string, -+ int affcnt, -+ int (*outc)( -+ int p1)) -+ { return(*(int *)0); } -+ -+/* ./trace/lib_trace.c */ -+ -+#undef _nc_tracing -+unsigned _nc_tracing; -+ -+#undef _nc__nc_tputs_trace -+const char *_nc__nc_tputs_trace(void) -+ { return(*(const char **)0); } -+ -+#undef _nc__nc_outchars -+long _nc__nc_outchars(void) -+ { return(*(long *)0); } -+ -+#undef _nc_set_tputs_trace -+void _nc_set_tputs_trace( -+ const char *s) -+ { /* void */ } -+ -+#undef _nc_count_outchars -+void _nc_count_outchars( -+ long increment) -+ { /* void */ } -+ -+#undef trace -+void trace( -+ const unsigned int tracelevel) -+ { /* void */ } -+ -+#undef _tracef -+void _tracef( -+ const char *fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_retrace_bool -+NCURSES_BOOL _nc_retrace_bool( -+ int code) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_retrace_char -+char _nc_retrace_char( -+ int code) -+ { return(*(char *)0); } -+ -+#undef _nc_retrace_int -+int _nc_retrace_int( -+ int code) -+ { return(*(int *)0); } -+ -+#undef _nc_retrace_unsigned -+unsigned _nc_retrace_unsigned( -+ unsigned code) -+ { return(*(unsigned *)0); } -+ -+#undef _nc_retrace_ptr -+char *_nc_retrace_ptr( -+ char *code) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_cptr -+const char *_nc_retrace_cptr( -+ const char *code) -+ { return(*(const char **)0); } -+ -+#undef _nc_retrace_cvoid_ptr -+void *_nc_retrace_cvoid_ptr( -+ void *code) -+ { return(*(void **)0); } -+ -+#undef _nc_retrace_void_ptr -+void *_nc_retrace_void_ptr( -+ void *code) -+ { return(*(void **)0); } -+ -+#undef _nc_retrace_sp -+SCREEN *_nc_retrace_sp( -+ SCREEN *code) -+ { return(*(SCREEN **)0); } -+ -+#undef _nc_retrace_win -+WINDOW *_nc_retrace_win( -+ WINDOW *code) -+ { return(*(WINDOW **)0); } -+ -+#undef _nc_use_tracef -+int _nc_use_tracef( -+ unsigned mask) -+ { return(*(int *)0); } -+ -+#undef _nc_locked_tracef -+void _nc_locked_tracef( -+ const char *fmt, -+ ...) -+ { /* void */ } -+ -+/* ./trace/lib_traceatr.c */ -+ -+#undef _traceattr2 -+char *_traceattr2( -+ int bufnum, -+ chtype newmode) -+ { return(*(char **)0); } -+ -+#undef _traceattr -+char *_traceattr( -+ attr_t newmode) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_int_attr_t -+int _nc_retrace_int_attr_t( -+ attr_t code) -+ { return(*(int *)0); } -+ -+#undef _nc_retrace_attr_t -+attr_t _nc_retrace_attr_t( -+ attr_t code) -+ { return(*(attr_t *)0); } -+ -+#undef _nc_altcharset_name -+const char *_nc_altcharset_name( -+ attr_t attr, -+ chtype ch) -+ { return(*(const char **)0); } -+ -+#undef _tracechtype2 -+char *_tracechtype2( -+ int bufnum, -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef _tracechtype -+char *_tracechtype( -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_chtype -+chtype _nc_retrace_chtype( -+ chtype code) -+ { return(*(chtype *)0); } -+ -+#undef _tracecchar_t2 -+char *_tracecchar_t2( -+ int bufnum, -+ const cchar_t *ch) -+ { return(*(char **)0); } -+ -+#undef _tracecchar_t -+char *_tracecchar_t( -+ const cchar_t *ch) -+ { return(*(char **)0); } -+ -+/* ./trace/lib_tracebits.c */ -+ -+typedef struct { -+ unsigned int val; -+ const char *name; -+} BITNAMES; -+ -+#undef _nc_trace_ttymode -+char *_nc_trace_ttymode( -+ struct termios *tty) -+ { return(*(char **)0); } -+ -+#undef _nc_tracebits -+char *_nc_tracebits(void) -+ { return(*(char **)0); } -+ -+/* ./trace/lib_tracechr.c */ -+ -+#undef _nc_tracechar -+char *_nc_tracechar( -+ SCREEN *sp, -+ int ch) -+ { return(*(char **)0); } -+ -+#undef _tracechar -+char *_tracechar( -+ int ch) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_ttyflags.c */ -+ -+#undef _nc_get_tty_mode_sp -+int _nc_get_tty_mode_sp( -+ SCREEN *sp, -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_get_tty_mode -+int _nc_get_tty_mode( -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_set_tty_mode_sp -+int _nc_set_tty_mode_sp( -+ SCREEN *sp, -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_set_tty_mode -+int _nc_set_tty_mode( -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef def_shell_mode_sp -+int def_shell_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef def_shell_mode -+int def_shell_mode(void) -+ { return(*(int *)0); } -+ -+#undef def_prog_mode_sp -+int def_prog_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef def_prog_mode -+int def_prog_mode(void) -+ { return(*(int *)0); } -+ -+#undef reset_prog_mode_sp -+int reset_prog_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef reset_prog_mode -+int reset_prog_mode(void) -+ { return(*(int *)0); } -+ -+#undef reset_shell_mode_sp -+int reset_shell_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef reset_shell_mode -+int reset_shell_mode(void) -+ { return(*(int *)0); } -+ -+#undef savetty_sp -+int savetty_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef savetty -+int savetty(void) -+ { return(*(int *)0); } -+ -+#undef resetty_sp -+int resetty_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef resetty -+int resetty(void) -+ { return(*(int *)0); } -+ -+/* ./tty/lib_twait.c */ -+ -+#include <sys/time.h> -+ -+#undef _nc_timed_wait -+int _nc_timed_wait( -+ SCREEN *sp, -+ int mode, -+ int milliseconds, -+ int *timeleft) -+ { return(*(int *)0); } -+ -+/* ./tinfo/name_match.c */ -+ -+#undef _nc_first_name -+char *_nc_first_name( -+ const char *const sp) -+ { return(*(char **)0); } -+ -+#undef _nc_name_match -+int _nc_name_match( -+ const char *const namelst, -+ const char *const name, -+ const char *const delim) -+ { return(*(int *)0); } -+ -+/* ./names.c */ -+ -+#undef _nc_boolnames -+char *const *_nc_boolnames(void) -+ { return(*(char **)0); } -+ -+#undef _nc_boolfnames -+char *const *_nc_boolfnames(void) -+ { return(*(char **)0); } -+ -+#undef _nc_numnames -+char *const *_nc_numnames(void) -+ { return(*(char **)0); } -+ -+#undef _nc_numfnames -+char *const *_nc_numfnames(void) -+ { return(*(char **)0); } -+ -+#undef _nc_strnames -+char *const *_nc_strnames(void) -+ { return(*(char **)0); } -+ -+#undef _nc_strfnames -+char *const *_nc_strfnames(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/obsolete.c */ -+ -+#undef _nc_set_buffer_sp -+void _nc_set_buffer_sp( -+ SCREEN *sp, -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+#undef _nc_set_buffer -+void _nc_set_buffer( -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+/* ./tinfo/read_entry.c */ -+ -+#include <hashed_db.h> -+ -+#undef _nc_init_termtype -+void _nc_init_termtype( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_read_termtype -+int _nc_read_termtype( -+ TERMTYPE *ptr, -+ char *buffer, -+ int limit) -+ { return(*(int *)0); } -+ -+#undef _nc_read_file_entry -+int _nc_read_file_entry( -+ const char *const filename, -+ TERMTYPE *ptr) -+ { return(*(int *)0); } -+ -+#undef _nc_read_entry -+int _nc_read_entry( -+ const char *const name, -+ char *const filename, -+ TERMTYPE *const tp) -+ { return(*(int *)0); } -+ -+/* ./tinfo/read_termcap.c */ -+ -+#include <sys/types.h> -+ -+#undef _nc_read_termcap -+void _nc_read_termcap(void) -+ { /* void */ } -+ -+/* ./tinfo/strings.c */ -+ -+#undef _nc_str_init -+string_desc *_nc_str_init( -+ string_desc *dst, -+ char *src, -+ size_t len) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_str_null -+string_desc *_nc_str_null( -+ string_desc *dst, -+ size_t len) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_str_copy -+string_desc *_nc_str_copy( -+ string_desc *dst, -+ string_desc *src) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_safe_strcat -+NCURSES_BOOL _nc_safe_strcat( -+ string_desc *dst, -+ const char *src) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_safe_strcpy -+NCURSES_BOOL _nc_safe_strcpy( -+ string_desc *dst, -+ const char *src) -+ { return(*(NCURSES_BOOL *)0); } -+ -+/* ./trace/trace_buf.c */ -+ -+#undef _nc_trace_buf -+char *_nc_trace_buf( -+ int bufnum, -+ size_t want) -+ { return(*(char **)0); } -+ -+#undef _nc_trace_bufcat -+char *_nc_trace_bufcat( -+ int bufnum, -+ const char *value) -+ { return(*(char **)0); } -+ -+/* ./trace/trace_tries.c */ -+ -+#undef _nc_trace_tries -+void _nc_trace_tries( -+ TRIES *tree) -+ { /* void */ } -+ -+/* ./base/tries.c */ -+ -+#undef _nc_expand_try -+char *_nc_expand_try( -+ TRIES *tree, -+ unsigned code, -+ int *count, -+ size_t len) -+ { return(*(char **)0); } -+ -+#undef _nc_remove_key -+int _nc_remove_key( -+ TRIES **tree, -+ unsigned code) -+ { return(*(int *)0); } -+ -+#undef _nc_remove_string -+int _nc_remove_string( -+ TRIES **tree, -+ const char *string) -+ { return(*(int *)0); } -+ -+/* ./tinfo/trim_sgr0.c */ -+ -+#undef _nc_trim_sgr0 -+char *_nc_trim_sgr0( -+ TERMTYPE *tp) -+ { return(*(char **)0); } -+ -+/* ./unctrl.c */ -+ -+#undef unctrl_sp -+char *unctrl_sp( -+ SCREEN *sp, -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef unctrl -+char *unctrl( -+ chtype ch) -+ { return(*(char **)0); } -+ -+/* ./trace/visbuf.c */ -+ -+#undef _nc_visbuf2 -+const char *_nc_visbuf2( -+ int bufnum, -+ const char *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_visbuf -+const char *_nc_visbuf( -+ const char *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_visbufn -+const char *_nc_visbufn( -+ const char *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+#undef _nc_viswbuf2 -+const char *_nc_viswbuf2( -+ int bufnum, -+ const wchar_t *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_viswbuf -+const char *_nc_viswbuf( -+ const wchar_t *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_viswbufn -+const char *_nc_viswbufn( -+ const wchar_t *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+#undef _nc_viswibuf -+const char *_nc_viswibuf( -+ const wint_t *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_viscbuf2 -+const char *_nc_viscbuf2( -+ int bufnum, -+ const cchar_t *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+#undef _nc_viscbuf -+const char *_nc_viscbuf( -+ const cchar_t *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+/* ./base/define_key.c */ -+ -+#undef define_key_sp -+int define_key_sp( -+ SCREEN *sp, -+ const char *str, -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef define_key -+int define_key( -+ const char *str, -+ int keycode) -+ { return(*(int *)0); } -+ -+/* ./tinfo/hashed_db.c */ -+ -+#undef _nc_hashed_db -+void _nc_hashed_db(void) -+ { /* void */ } -+ -+/* ./base/key_defined.c */ -+ -+#undef key_defined_sp -+int key_defined_sp( -+ SCREEN *sp, -+ const char *str) -+ { return(*(int *)0); } -+ -+#undef key_defined -+int key_defined( -+ const char *str) -+ { return(*(int *)0); } -+ -+/* ./base/keybound.c */ -+ -+#undef keybound_sp -+char *keybound_sp( -+ SCREEN *sp, -+ int code, -+ int count) -+ { return(*(char **)0); } -+ -+#undef keybound -+char *keybound( -+ int code, -+ int count) -+ { return(*(char **)0); } -+ -+/* ./base/keyok.c */ -+ -+#undef keyok_sp -+int keyok_sp( -+ SCREEN *sp, -+ int c, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef keyok -+int keyok( -+ int c, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./base/version.c */ -+ -+#undef curses_version -+const char *curses_version(void) -+ { return(*(const char **)0); } -diff -Naur ncurses-5.9/ncurses/llib-ltinfow ncurses-5.9.patch/ncurses/llib-ltinfow ---- ncurses-5.9/ncurses/llib-ltinfow 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/llib-ltinfow 2014-09-01 16:33:22.419792227 +0200 -@@ -0,0 +1,1559 @@ -+/**************************************************************************** -+ * Copyright (c) 2012,2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2012 * -+ ****************************************************************************/ -+/* LINTLIBRARY */ -+ -+/* ./tinfo/access.c */ -+ -+#include <curses.priv.h> -+#include <ctype.h> -+#include <tic.h> -+ -+#undef _nc_rootname -+char *_nc_rootname( -+ char *path) -+ { return(*(char **)0); } -+ -+#undef _nc_is_abs_path -+NCURSES_BOOL _nc_is_abs_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_pathlast -+unsigned _nc_pathlast( -+ const char *path) -+ { return(*(unsigned *)0); } -+ -+#undef _nc_basename -+char *_nc_basename( -+ char *path) -+ { return(*(char **)0); } -+ -+#undef _nc_access -+int _nc_access( -+ const char *path, -+ int mode) -+ { return(*(int *)0); } -+ -+#undef _nc_is_dir_path -+NCURSES_BOOL _nc_is_dir_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_is_file_path -+NCURSES_BOOL _nc_is_file_path( -+ const char *path) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_env_access -+int _nc_env_access(void) -+ { return(*(int *)0); } -+ -+/* ./tinfo/add_tries.c */ -+ -+#undef _nc_add_to_try -+int _nc_add_to_try( -+ TRIES **tree, -+ const char *str, -+ unsigned code) -+ { return(*(int *)0); } -+ -+/* ./tinfo/alloc_ttype.c */ -+ -+#undef _nc_align_termtype -+void _nc_align_termtype( -+ TERMTYPE *to, -+ TERMTYPE *from) -+ { /* void */ } -+ -+#undef _nc_copy_termtype -+void _nc_copy_termtype( -+ TERMTYPE *dst, -+ const TERMTYPE *src) -+ { /* void */ } -+ -+/* ./codes.c */ -+ -+#undef boolcodes -+char *const boolcodes[] = {0}; -+#undef numcodes -+char *const numcodes[] = {0}; -+#undef strcodes -+char *const strcodes[] = {0}; -+ -+/* ./comp_captab.c */ -+ -+#include <hashsize.h> -+ -+#undef _nc_get_table -+const struct name_table_entry *_nc_get_table( -+ NCURSES_BOOL termcap) -+ { return(*(const struct name_table_entry **)0); } -+ -+#undef _nc_get_hash_table -+const HashValue *_nc_get_hash_table( -+ NCURSES_BOOL termcap) -+ { return(*(const HashValue **)0); } -+ -+#undef _nc_get_alias_table -+const struct alias *_nc_get_alias_table( -+ NCURSES_BOOL termcap) -+ { return(*(const struct alias **)0); } -+ -+#undef _nc_get_hash_info -+const HashData *_nc_get_hash_info( -+ NCURSES_BOOL termcap) -+ { return(*(const HashData **)0); } -+ -+/* ./tinfo/comp_error.c */ -+ -+#undef _nc_suppress_warnings -+NCURSES_BOOL _nc_suppress_warnings; -+#undef _nc_curr_line -+int _nc_curr_line; -+#undef _nc_curr_col -+int _nc_curr_col; -+ -+#undef _nc_get_source -+const char *_nc_get_source(void) -+ { return(*(const char **)0); } -+ -+#undef _nc_set_source -+void _nc_set_source( -+ const char *const name) -+ { /* void */ } -+ -+#undef _nc_set_type -+void _nc_set_type( -+ const char *const name) -+ { /* void */ } -+ -+#undef _nc_get_type -+void _nc_get_type( -+ char *name) -+ { /* void */ } -+ -+#undef _nc_warning -+void _nc_warning( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_err_abort -+void _nc_err_abort( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_syserr_abort -+void _nc_syserr_abort( -+ const char *const fmt, -+ ...) -+ { /* void */ } -+ -+/* ./tinfo/comp_hash.c */ -+ -+#undef _nc_find_entry -+struct name_table_entry const *_nc_find_entry( -+ const char *string, -+ const HashValue *hash_table) -+ { return(*(struct name_table_entry const **)0); } -+ -+#undef _nc_find_type_entry -+struct name_table_entry const *_nc_find_type_entry( -+ const char *string, -+ int type, -+ NCURSES_BOOL termcap) -+ { return(*(struct name_table_entry const **)0); } -+ -+/* ./tinfo/db_iterator.c */ -+ -+#include <time.h> -+ -+#undef _nc_tic_dir -+const char *_nc_tic_dir( -+ const char *path) -+ { return(*(const char **)0); } -+ -+#undef _nc_keep_tic_dir -+void _nc_keep_tic_dir( -+ const char *path) -+ { /* void */ } -+ -+#undef _nc_last_db -+void _nc_last_db(void) -+ { /* void */ } -+ -+#undef _nc_next_db -+const char *_nc_next_db( -+ DBDIRS *state, -+ int *offset) -+ { return(*(const char **)0); } -+ -+#undef _nc_first_db -+void _nc_first_db( -+ DBDIRS *state, -+ int *offset) -+ { /* void */ } -+ -+/* ./tinfo/doalloc.c */ -+ -+#undef _nc_doalloc -+void *_nc_doalloc( -+ void *oldp, -+ size_t amount) -+ { return(*(void **)0); } -+ -+/* ./tinfo/entries.c */ -+ -+#undef _nc_head -+ENTRY *_nc_head; -+#undef _nc_tail -+ENTRY *_nc_tail; -+ -+#undef _nc_free_entry -+void _nc_free_entry( -+ ENTRY *headp, -+ TERMTYPE *tterm) -+ { /* void */ } -+ -+#undef _nc_free_entries -+void _nc_free_entries( -+ ENTRY *headp) -+ { /* void */ } -+ -+#undef _nc_delink_entry -+ENTRY *_nc_delink_entry( -+ ENTRY *headp, -+ TERMTYPE *tterm) -+ { return(*(ENTRY **)0); } -+ -+#undef _nc_leaks_tinfo -+void _nc_leaks_tinfo(void) -+ { /* void */ } -+ -+/* ./fallback.c */ -+ -+#undef _nc_fallback -+const TERMTYPE *_nc_fallback( -+ const char *name) -+ { return(*(const TERMTYPE **)0); } -+ -+/* ./tinfo/free_ttype.c */ -+ -+#undef _nc_free_termtype -+void _nc_free_termtype( -+ TERMTYPE *ptr) -+ { /* void */ } -+ -+#undef _nc_user_definable -+NCURSES_BOOL _nc_user_definable; -+ -+#undef use_extended_names -+int use_extended_names( -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/getenv_num.c */ -+ -+#undef _nc_getenv_num -+int _nc_getenv_num( -+ const char *name) -+ { return(*(int *)0); } -+ -+#undef _nc_setenv_num -+void _nc_setenv_num( -+ const char *name, -+ int value) -+ { /* void */ } -+ -+/* ./tinfo/home_terminfo.c */ -+ -+#undef _nc_home_terminfo -+char *_nc_home_terminfo(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/init_keytry.c */ -+ -+#if 0 -+ -+#include <init_keytry.h> -+ -+#undef _nc_tinfo_fkeys -+const struct tinfo_fkeys _nc_tinfo_fkeys[] = {0}; -+ -+#endif -+ -+#undef _nc_init_keytry -+void _nc_init_keytry( -+ SCREEN *sp) -+ { /* void */ } -+ -+/* ./tinfo/lib_acs.c */ -+ -+#undef acs_map -+chtype acs_map[128]; -+ -+#undef _nc_init_acs_sp -+void _nc_init_acs_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_init_acs -+void _nc_init_acs(void) -+ { /* void */ } -+ -+/* ./tinfo/lib_baudrate.c */ -+ -+#include <termcap.h> -+ -+struct speed { -+ int s; -+ int sp; -+}; -+ -+#undef _nc_baudrate -+int _nc_baudrate( -+ int OSpeed) -+ { return(*(int *)0); } -+ -+#undef _nc_ospeed -+int _nc_ospeed( -+ int BaudRate) -+ { return(*(int *)0); } -+ -+#undef baudrate_sp -+int baudrate_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef baudrate -+int baudrate(void) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_cur_term.c */ -+ -+#undef cur_term -+TERMINAL *cur_term; -+ -+#undef set_curterm_sp -+TERMINAL *set_curterm_sp( -+ SCREEN *sp, -+ TERMINAL *termp) -+ { return(*(TERMINAL **)0); } -+ -+#undef set_curterm -+TERMINAL *set_curterm( -+ TERMINAL *termp) -+ { return(*(TERMINAL **)0); } -+ -+#undef del_curterm_sp -+int del_curterm_sp( -+ SCREEN *sp, -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+#undef del_curterm -+int del_curterm( -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_data.c */ -+ -+#undef stdscr -+WINDOW *stdscr; -+#undef curscr -+WINDOW *curscr; -+#undef newscr -+WINDOW *newscr; -+#undef _nc_screen_chain -+SCREEN *_nc_screen_chain; -+#undef SP -+SCREEN *SP; -+#undef _nc_globals -+NCURSES_GLOBALS _nc_globals; -+#undef _nc_prescreen -+NCURSES_PRESCREEN _nc_prescreen; -+ -+#undef _nc_screen_of -+SCREEN *_nc_screen_of( -+ WINDOW *win) -+ { return(*(SCREEN **)0); } -+ -+/* ./tinfo/lib_has_cap.c */ -+ -+#undef has_ic_sp -+NCURSES_BOOL has_ic_sp( -+ SCREEN *sp) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_ic -+NCURSES_BOOL has_ic(void) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_il_sp -+NCURSES_BOOL has_il_sp( -+ SCREEN *sp) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef has_il -+NCURSES_BOOL has_il(void) -+ { return(*(NCURSES_BOOL *)0); } -+ -+/* ./tinfo/lib_kernel.c */ -+ -+#undef erasechar_sp -+char erasechar_sp( -+ SCREEN *sp) -+ { return(*(char *)0); } -+ -+#undef erasechar -+char erasechar(void) -+ { return(*(char *)0); } -+ -+#undef killchar_sp -+char killchar_sp( -+ SCREEN *sp) -+ { return(*(char *)0); } -+ -+#undef killchar -+char killchar(void) -+ { return(*(char *)0); } -+ -+#undef flushinp_sp -+int flushinp_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef flushinp -+int flushinp(void) -+ { return(*(int *)0); } -+ -+/* ./lib_keyname.c */ -+ -+struct kn { short offset; int code; }; -+ -+#undef keyname_sp -+char *keyname_sp( -+ SCREEN *sp, -+ int c) -+ { return(*(char **)0); } -+ -+#undef keyname -+char *keyname( -+ int c) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_longname.c */ -+ -+#undef longname -+char *longname(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_napms.c */ -+ -+#include <sys/time.h> -+ -+#undef napms_sp -+int napms_sp( -+ SCREEN *sp, -+ int ms) -+ { return(*(int *)0); } -+ -+#undef napms -+int napms( -+ int ms) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_options.c */ -+ -+#undef idlok -+int idlok( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef idcok -+void idcok( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { /* void */ } -+ -+#undef halfdelay_sp -+int halfdelay_sp( -+ SCREEN *sp, -+ int t) -+ { return(*(int *)0); } -+ -+#undef halfdelay -+int halfdelay( -+ int t) -+ { return(*(int *)0); } -+ -+#undef nodelay -+int nodelay( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef notimeout -+int notimeout( -+ WINDOW *win, -+ NCURSES_BOOL f) -+ { return(*(int *)0); } -+ -+#undef wtimeout -+void wtimeout( -+ WINDOW *win, -+ int delay) -+ { /* void */ } -+ -+#undef keypad -+int keypad( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef meta -+int meta( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef curs_set_sp -+int curs_set_sp( -+ SCREEN *sp, -+ int vis) -+ { return(*(int *)0); } -+ -+#undef curs_set -+int curs_set( -+ int vis) -+ { return(*(int *)0); } -+ -+#undef typeahead_sp -+int typeahead_sp( -+ SCREEN *sp, -+ int fd) -+ { return(*(int *)0); } -+ -+#undef typeahead -+int typeahead( -+ int fd) -+ { return(*(int *)0); } -+ -+#undef has_key_sp -+int has_key_sp( -+ SCREEN *sp, -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef has_key -+int has_key( -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef _nc_putp_flush_sp -+int _nc_putp_flush_sp( -+ SCREEN *sp, -+ const char *name, -+ const char *value) -+ { return(*(int *)0); } -+ -+#undef _nc_keypad -+int _nc_keypad( -+ SCREEN *sp, -+ int flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_raw.c */ -+ -+#undef raw_sp -+int raw_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef raw -+int raw(void) -+ { return(*(int *)0); } -+ -+#undef cbreak_sp -+int cbreak_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef cbreak -+int cbreak(void) -+ { return(*(int *)0); } -+ -+#undef qiflush_sp -+void qiflush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef qiflush -+void qiflush(void) -+ { /* void */ } -+ -+#undef noraw_sp -+int noraw_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef noraw -+int noraw(void) -+ { return(*(int *)0); } -+ -+#undef nocbreak_sp -+int nocbreak_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef nocbreak -+int nocbreak(void) -+ { return(*(int *)0); } -+ -+#undef noqiflush_sp -+void noqiflush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef noqiflush -+void noqiflush(void) -+ { /* void */ } -+ -+#undef intrflush_sp -+int intrflush_sp( -+ SCREEN *sp, -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef intrflush -+int intrflush( -+ WINDOW *win, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_setup.c */ -+ -+#include <locale.h> -+#include <sys/ioctl.h> -+#include <langinfo.h> -+ -+#undef ttytype -+char ttytype[256]; -+#undef LINES -+int LINES; -+#undef COLS -+int COLS; -+#undef TABSIZE -+int TABSIZE; -+ -+#undef set_tabsize_sp -+int set_tabsize_sp( -+ SCREEN *sp, -+ int value) -+ { return(*(int *)0); } -+ -+#undef set_tabsize -+int set_tabsize( -+ int value) -+ { return(*(int *)0); } -+ -+#undef _nc_handle_sigwinch -+int _nc_handle_sigwinch( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef use_env_sp -+void use_env_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_tioctl_sp -+void use_tioctl_sp( -+ SCREEN *sp, -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_env -+void use_env( -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef use_tioctl -+void use_tioctl( -+ NCURSES_BOOL f) -+ { /* void */ } -+ -+#undef _nc_get_screensize -+void _nc_get_screensize( -+ SCREEN *sp, -+ int *linep, -+ int *colp) -+ { /* void */ } -+ -+#undef _nc_update_screensize -+void _nc_update_screensize( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_setup_tinfo -+int _nc_setup_tinfo( -+ const char *const tn, -+ TERMTYPE *const tp) -+ { return(*(int *)0); } -+ -+#undef _nc_tinfo_cmdch -+void _nc_tinfo_cmdch( -+ TERMINAL *termp, -+ int proto) -+ { /* void */ } -+ -+#undef _nc_get_locale -+char *_nc_get_locale(void) -+ { return(*(char **)0); } -+ -+#undef _nc_unicode_locale -+int _nc_unicode_locale(void) -+ { return(*(int *)0); } -+ -+#undef _nc_locale_breaks_acs -+int _nc_locale_breaks_acs( -+ TERMINAL *termp) -+ { return(*(int *)0); } -+ -+#undef _nc_setupterm -+int _nc_setupterm( -+ char *tname, -+ int Filedes, -+ int *errret, -+ int reuse) -+ { return(*(int *)0); } -+ -+#undef new_prescr -+SCREEN *new_prescr(void) -+ { return(*(SCREEN **)0); } -+ -+#undef setupterm -+int setupterm( -+ char *tname, -+ int Filedes, -+ int *errret) -+ { return(*(int *)0); } -+ -+/* ./tinfo/lib_termcap.c */ -+ -+#undef UP -+char *UP; -+#undef BC -+char *BC; -+ -+#undef tgetent_sp -+int tgetent_sp( -+ SCREEN *sp, -+ char *bufp, -+ const char *name) -+ { return(*(int *)0); } -+ -+#if 0 -+ -+#include <capdefaults.c> -+ -+#endif -+ -+#undef tgetent -+int tgetent( -+ char *bufp, -+ const char *name) -+ { return(*(int *)0); } -+ -+#undef tgetflag_sp -+int tgetflag_sp( -+ SCREEN *sp, -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetflag -+int tgetflag( -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetnum_sp -+int tgetnum_sp( -+ SCREEN *sp, -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetnum -+int tgetnum( -+ char *id) -+ { return(*(int *)0); } -+ -+#undef tgetstr_sp -+char *tgetstr_sp( -+ SCREEN *sp, -+ char *id, -+ char **area) -+ { return(*(char **)0); } -+ -+#undef tgetstr -+char *tgetstr( -+ char *id, -+ char **area) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_termname.c */ -+ -+#undef termname_sp -+char *termname_sp( -+ SCREEN *sp) -+ { return(*(char **)0); } -+ -+#undef termname -+char *termname(void) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tgoto.c */ -+ -+#undef tgoto -+char *tgoto( -+ const char *string, -+ int x, -+ int y) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_ti.c */ -+ -+#undef tigetflag_sp -+int tigetflag_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetflag -+int tigetflag( -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetnum_sp -+int tigetnum_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetnum -+int tigetnum( -+ char *str) -+ { return(*(int *)0); } -+ -+#undef tigetstr_sp -+char *tigetstr_sp( -+ SCREEN *sp, -+ char *str) -+ { return(*(char **)0); } -+ -+#undef tigetstr -+char *tigetstr( -+ char *str) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tparm.c */ -+ -+#undef _nc_tparm_err -+int _nc_tparm_err; -+ -+#undef _nc_tparm_analyze -+int _nc_tparm_analyze( -+ const char *string, -+ char *p_is_s[9], -+ int *_nc_popcount) -+ { return(*(int *)0); } -+ -+#undef tparm -+char *tparm( -+ char *string, -+ ...) -+ { return(*(char **)0); } -+ -+#undef tiparm -+char *tiparm( -+ const char *string, -+ ...) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_tputs.c */ -+ -+#undef PC -+char PC; -+#undef ospeed -+short ospeed; -+#undef _nc_nulls_sent -+int _nc_nulls_sent; -+ -+#undef _nc_set_no_padding -+void _nc_set_no_padding( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef delay_output_sp -+int delay_output_sp( -+ SCREEN *sp, -+ int ms) -+ { return(*(int *)0); } -+ -+#undef delay_output -+int delay_output( -+ int ms) -+ { return(*(int *)0); } -+ -+#undef _nc_flush_sp -+void _nc_flush_sp( -+ SCREEN *sp) -+ { /* void */ } -+ -+#undef _nc_flush -+void _nc_flush(void) -+ { /* void */ } -+ -+#undef _nc_outch_sp -+int _nc_outch_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_outch -+int _nc_outch( -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar_sp -+int _nc_putchar_sp( -+ SCREEN *sp, -+ int ch) -+ { return(*(int *)0); } -+ -+#undef _nc_putchar -+int _nc_putchar( -+ int ch) -+ { return(*(int *)0); } -+ -+#undef putp_sp -+int putp_sp( -+ SCREEN *sp, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef putp -+int putp( -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef _nc_putp_sp -+int _nc_putp_sp( -+ SCREEN *sp, -+ const char *name, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef _nc_putp -+int _nc_putp( -+ const char *name, -+ const char *string) -+ { return(*(int *)0); } -+ -+#undef tputs_sp -+int tputs_sp( -+ SCREEN *sp, -+ const char *string, -+ int affcnt, -+ NCURSES_OUTC_sp outc) -+ { return(*(int *)0); } -+ -+#undef _nc_outc_wrapper -+int _nc_outc_wrapper( -+ SCREEN *sp, -+ int c) -+ { return(*(int *)0); } -+ -+#undef tputs -+int tputs( -+ const char *string, -+ int affcnt, -+ int (*outc)( -+ int p1)) -+ { return(*(int *)0); } -+ -+/* ./trace/lib_trace.c */ -+ -+#undef _nc_tracing -+unsigned _nc_tracing; -+#undef _nc_tputs_trace -+const char *_nc_tputs_trace = {0}; -+#undef _nc_outchars -+long _nc_outchars; -+ -+#undef trace -+void trace( -+ const unsigned int tracelevel) -+ { /* void */ } -+ -+#undef _tracef -+void _tracef( -+ const char *fmt, -+ ...) -+ { /* void */ } -+ -+#undef _nc_retrace_bool -+NCURSES_BOOL _nc_retrace_bool( -+ int code) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_retrace_char -+char _nc_retrace_char( -+ int code) -+ { return(*(char *)0); } -+ -+#undef _nc_retrace_int -+int _nc_retrace_int( -+ int code) -+ { return(*(int *)0); } -+ -+#undef _nc_retrace_unsigned -+unsigned _nc_retrace_unsigned( -+ unsigned code) -+ { return(*(unsigned *)0); } -+ -+#undef _nc_retrace_ptr -+char *_nc_retrace_ptr( -+ char *code) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_cptr -+const char *_nc_retrace_cptr( -+ const char *code) -+ { return(*(const char **)0); } -+ -+#undef _nc_retrace_cvoid_ptr -+void *_nc_retrace_cvoid_ptr( -+ void *code) -+ { return(*(void **)0); } -+ -+#undef _nc_retrace_void_ptr -+void *_nc_retrace_void_ptr( -+ void *code) -+ { return(*(void **)0); } -+ -+#undef _nc_retrace_sp -+SCREEN *_nc_retrace_sp( -+ SCREEN *code) -+ { return(*(SCREEN **)0); } -+ -+#undef _nc_retrace_win -+WINDOW *_nc_retrace_win( -+ WINDOW *code) -+ { return(*(WINDOW **)0); } -+ -+/* ./trace/lib_traceatr.c */ -+ -+#undef _traceattr2 -+char *_traceattr2( -+ int bufnum, -+ chtype newmode) -+ { return(*(char **)0); } -+ -+#undef _traceattr -+char *_traceattr( -+ attr_t newmode) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_int_attr_t -+int _nc_retrace_int_attr_t( -+ attr_t code) -+ { return(*(int *)0); } -+ -+#undef _nc_retrace_attr_t -+attr_t _nc_retrace_attr_t( -+ attr_t code) -+ { return(*(attr_t *)0); } -+ -+#undef _nc_altcharset_name -+const char *_nc_altcharset_name( -+ attr_t attr, -+ chtype ch) -+ { return(*(const char **)0); } -+ -+#undef _tracechtype2 -+char *_tracechtype2( -+ int bufnum, -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef _tracechtype -+char *_tracechtype( -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef _nc_retrace_chtype -+chtype _nc_retrace_chtype( -+ chtype code) -+ { return(*(chtype *)0); } -+ -+#undef _tracecchar_t2 -+char *_tracecchar_t2( -+ int bufnum, -+ const cchar_t *ch) -+ { return(*(char **)0); } -+ -+#undef _tracecchar_t -+char *_tracecchar_t( -+ const cchar_t *ch) -+ { return(*(char **)0); } -+ -+/* ./trace/lib_tracebits.c */ -+ -+typedef struct { -+ unsigned int val; -+ const char *name; -+} BITNAMES; -+ -+#undef _nc_trace_ttymode -+char *_nc_trace_ttymode( -+ struct termios *tty) -+ { return(*(char **)0); } -+ -+#undef _nc_tracebits -+char *_nc_tracebits(void) -+ { return(*(char **)0); } -+ -+/* ./trace/lib_tracechr.c */ -+ -+#undef _nc_tracechar -+char *_nc_tracechar( -+ SCREEN *sp, -+ int ch) -+ { return(*(char **)0); } -+ -+#undef _tracechar -+char *_tracechar( -+ int ch) -+ { return(*(char **)0); } -+ -+/* ./tinfo/lib_ttyflags.c */ -+ -+#undef _nc_get_tty_mode_sp -+int _nc_get_tty_mode_sp( -+ SCREEN *sp, -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_get_tty_mode -+int _nc_get_tty_mode( -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_set_tty_mode_sp -+int _nc_set_tty_mode_sp( -+ SCREEN *sp, -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef _nc_set_tty_mode -+int _nc_set_tty_mode( -+ struct termios *buf) -+ { return(*(int *)0); } -+ -+#undef def_shell_mode_sp -+int def_shell_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef def_shell_mode -+int def_shell_mode(void) -+ { return(*(int *)0); } -+ -+#undef def_prog_mode_sp -+int def_prog_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef def_prog_mode -+int def_prog_mode(void) -+ { return(*(int *)0); } -+ -+#undef reset_prog_mode_sp -+int reset_prog_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef reset_prog_mode -+int reset_prog_mode(void) -+ { return(*(int *)0); } -+ -+#undef reset_shell_mode_sp -+int reset_shell_mode_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef reset_shell_mode -+int reset_shell_mode(void) -+ { return(*(int *)0); } -+ -+#undef savetty_sp -+int savetty_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef savetty -+int savetty(void) -+ { return(*(int *)0); } -+ -+#undef resetty_sp -+int resetty_sp( -+ SCREEN *sp) -+ { return(*(int *)0); } -+ -+#undef resetty -+int resetty(void) -+ { return(*(int *)0); } -+ -+/* ./tty/lib_twait.c */ -+ -+#undef _nc_timed_wait -+int _nc_timed_wait( -+ SCREEN *sp, -+ int mode, -+ int milliseconds, -+ int *timeleft) -+ { return(*(int *)0); } -+ -+/* ./tinfo/name_match.c */ -+ -+#undef _nc_first_name -+char *_nc_first_name( -+ const char *const sp) -+ { return(*(char **)0); } -+ -+#undef _nc_name_match -+int _nc_name_match( -+ const char *const namelst, -+ const char *const name, -+ const char *const delim) -+ { return(*(int *)0); } -+ -+/* ./names.c */ -+ -+#undef boolnames -+char *const boolnames[] = {0}; -+#undef boolfnames -+char *const boolfnames[] = {0}; -+#undef numnames -+char *const numnames[] = {0}; -+#undef numfnames -+char *const numfnames[] = {0}; -+#undef strnames -+char *const strnames[] = {0}; -+#undef strfnames -+char *const strfnames[] = {0}; -+ -+/* ./tinfo/obsolete.c */ -+ -+#undef _nc_set_buffer_sp -+void _nc_set_buffer_sp( -+ SCREEN *sp, -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+#undef _nc_set_buffer -+void _nc_set_buffer( -+ FILE *ofp, -+ int buffered) -+ { /* void */ } -+ -+/* ./tinfo/read_entry.c */ -+ -+#include <hashed_db.h> -+ -+#undef _nc_init_termtype -+void _nc_init_termtype( -+ TERMTYPE *const tp) -+ { /* void */ } -+ -+#undef _nc_read_termtype -+int _nc_read_termtype( -+ TERMTYPE *ptr, -+ char *buffer, -+ int limit) -+ { return(*(int *)0); } -+ -+#undef _nc_read_file_entry -+int _nc_read_file_entry( -+ const char *const filename, -+ TERMTYPE *ptr) -+ { return(*(int *)0); } -+ -+#undef _nc_read_entry -+int _nc_read_entry( -+ const char *const name, -+ char *const filename, -+ TERMTYPE *const tp) -+ { return(*(int *)0); } -+ -+/* ./tinfo/read_termcap.c */ -+ -+#include <sys/types.h> -+ -+#undef _nc_read_termcap -+void _nc_read_termcap(void) -+ { /* void */ } -+ -+/* ./tinfo/strings.c */ -+ -+#undef _nc_str_init -+string_desc *_nc_str_init( -+ string_desc *dst, -+ char *src, -+ size_t len) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_str_null -+string_desc *_nc_str_null( -+ string_desc *dst, -+ size_t len) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_str_copy -+string_desc *_nc_str_copy( -+ string_desc *dst, -+ string_desc *src) -+ { return(*(string_desc **)0); } -+ -+#undef _nc_safe_strcat -+NCURSES_BOOL _nc_safe_strcat( -+ string_desc *dst, -+ const char *src) -+ { return(*(NCURSES_BOOL *)0); } -+ -+#undef _nc_safe_strcpy -+NCURSES_BOOL _nc_safe_strcpy( -+ string_desc *dst, -+ const char *src) -+ { return(*(NCURSES_BOOL *)0); } -+ -+/* ./trace/trace_buf.c */ -+ -+#undef _nc_trace_buf -+char *_nc_trace_buf( -+ int bufnum, -+ size_t want) -+ { return(*(char **)0); } -+ -+#undef _nc_trace_bufcat -+char *_nc_trace_bufcat( -+ int bufnum, -+ const char *value) -+ { return(*(char **)0); } -+ -+/* ./trace/trace_tries.c */ -+ -+#undef _nc_trace_tries -+void _nc_trace_tries( -+ TRIES *tree) -+ { /* void */ } -+ -+/* ./base/tries.c */ -+ -+#undef _nc_expand_try -+char *_nc_expand_try( -+ TRIES *tree, -+ unsigned code, -+ int *count, -+ size_t len) -+ { return(*(char **)0); } -+ -+#undef _nc_remove_key -+int _nc_remove_key( -+ TRIES **tree, -+ unsigned code) -+ { return(*(int *)0); } -+ -+#undef _nc_remove_string -+int _nc_remove_string( -+ TRIES **tree, -+ const char *string) -+ { return(*(int *)0); } -+ -+/* ./tinfo/trim_sgr0.c */ -+ -+#undef _nc_trim_sgr0 -+char *_nc_trim_sgr0( -+ TERMTYPE *tp) -+ { return(*(char **)0); } -+ -+/* ./unctrl.c */ -+ -+#undef unctrl_sp -+char *unctrl_sp( -+ SCREEN *sp, -+ chtype ch) -+ { return(*(char **)0); } -+ -+#undef unctrl -+char *unctrl( -+ chtype ch) -+ { return(*(char **)0); } -+ -+/* ./trace/visbuf.c */ -+ -+#undef _nc_visbuf2 -+const char *_nc_visbuf2( -+ int bufnum, -+ const char *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_visbuf -+const char *_nc_visbuf( -+ const char *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_visbufn -+const char *_nc_visbufn( -+ const char *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+#undef _nc_viswbuf2 -+const char *_nc_viswbuf2( -+ int bufnum, -+ const wchar_t *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_viswbuf -+const char *_nc_viswbuf( -+ const wchar_t *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_viswbufn -+const char *_nc_viswbufn( -+ const wchar_t *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+#undef _nc_viswibuf -+const char *_nc_viswibuf( -+ const wint_t *buf) -+ { return(*(const char **)0); } -+ -+#undef _nc_viscbuf2 -+const char *_nc_viscbuf2( -+ int bufnum, -+ const cchar_t *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+#undef _nc_viscbuf -+const char *_nc_viscbuf( -+ const cchar_t *buf, -+ int len) -+ { return(*(const char **)0); } -+ -+/* ./base/define_key.c */ -+ -+#undef define_key_sp -+int define_key_sp( -+ SCREEN *sp, -+ const char *str, -+ int keycode) -+ { return(*(int *)0); } -+ -+#undef define_key -+int define_key( -+ const char *str, -+ int keycode) -+ { return(*(int *)0); } -+ -+/* ./tinfo/hashed_db.c */ -+ -+#undef _nc_hashed_db -+void _nc_hashed_db(void) -+ { /* void */ } -+ -+/* ./base/key_defined.c */ -+ -+#undef key_defined_sp -+int key_defined_sp( -+ SCREEN *sp, -+ const char *str) -+ { return(*(int *)0); } -+ -+#undef key_defined -+int key_defined( -+ const char *str) -+ { return(*(int *)0); } -+ -+/* ./base/keybound.c */ -+ -+#undef keybound_sp -+char *keybound_sp( -+ SCREEN *sp, -+ int code, -+ int count) -+ { return(*(char **)0); } -+ -+#undef keybound -+char *keybound( -+ int code, -+ int count) -+ { return(*(char **)0); } -+ -+/* ./base/keyok.c */ -+ -+#undef keyok_sp -+int keyok_sp( -+ SCREEN *sp, -+ int c, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+#undef keyok -+int keyok( -+ int c, -+ NCURSES_BOOL flag) -+ { return(*(int *)0); } -+ -+/* ./base/version.c */ -+ -+#undef curses_version -+const char *curses_version(void) -+ { return(*(const char **)0); } -diff -Naur ncurses-5.9/ncurses/Makefile.in ncurses-5.9.patch/ncurses/Makefile.in ---- ncurses-5.9/ncurses/Makefile.in 2010-11-27 22:45:27.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/Makefile.in 2014-09-01 16:33:22.369792144 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.130 2010/11/27 21:45:27 tom Exp $ -+# $Id: Makefile.in,v 1.139 2013/08/04 20:20:45 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -64,7 +64,11 @@ - bindir = @bindir@ - libdir = @libdir@ - includedir = @includedir@ -+datarootdir = @datarootdir@ - datadir = @datadir@ -+includesubdir = @includesubdir@ -+ -+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir) - - LIBTOOL = @LIBTOOL@ - LIBTOOL_CLEAN = @LIB_CLEAN@ -@@ -84,6 +88,7 @@ - AWK = @AWK@ - LD = @LD@ - LN_S = @LN_S@ -+NM = @NM@ - - CTAGS = @CTAGS@ - ETAGS = @ETAGS@ -@@ -107,7 +112,7 @@ - # is compiled into the build, or are test-programs that are not installed. - - BUILD_EXEEXT = @BUILD_EXEEXT@ --x = @PROG_EXT@ -+x = @EXEEXT@ - - CFLAGS_LIBTOOL = $(CCFLAGS) - CFLAGS_NORMAL = $(CCFLAGS) -@@ -125,6 +130,7 @@ - TINFO_LIST = $(SHLIB_DIRS) @TINFO_LIST@ - TICS_LIST = $(SHLIB_DIRS) @TICS_LIST@ - -+RPATH_LIST = @RPATH_LIST@ - MK_SHARED_LIB = @MK_SHARED_LIB@ - - NCURSES_MAJOR = @NCURSES_MAJOR@ -@@ -134,7 +140,7 @@ - - RANLIB = @LIB_PREP@ - --LIBRARIES = @LIBS_TO_MAKE@ -+LIBRARIES = @Libs_To_Make@ - - LINT = @LINT@ - LINT_OPTS = @LINT_OPTS@ -@@ -254,6 +260,9 @@ - @MAKE_UPPER_TAGS@TAGS: - @MAKE_UPPER_TAGS@ $(ETAGS) *.[ch] */*.[ch] - -+ncurses.map : $(LIBRARIES) -+ $(NM) -p $(LIBRARIES) >$@ -+ - mostlyclean :: - -rm -f core tags TAGS *~ *.bak *.i *.ln *.atac trace - -rm -f $(TEST_PROGS) -@@ -262,7 +271,7 @@ - -rm -f $(AUTO_SRC) - -rm -f make_keys$(BUILD_EXEEXT) - -rm -f make_hash$(BUILD_EXEEXT) -- -rm -rf .libs -+ -rm -rf .libs *.dSYM *.map - - distclean :: clean - -rm -f Makefile -@@ -282,21 +291,21 @@ - sh -e $(base)/MKlib_gen.sh "$(CPP) $(CPPFLAGS)" "$(AWK)" implemented <../include/curses.h >$@ - - captoinfo$x : $(tinfo)/captoinfo.c $(TEST_DEPS) -- @ECHO_LINK@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DMAIN $(tinfo)/captoinfo.c $(TEST_LDFLAGS) -+ @ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DMAIN $(tinfo)/captoinfo.c $(TEST_LDFLAGS) - - hardscroll$x : $(serial)/hardscroll.c $(TEST_DEPS) -- @ECHO_LINK@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DSCROLLDEBUG $(serial)/hardscroll.c $(TEST_LDFLAGS) -+ @ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DSCROLLDEBUG $(serial)/hardscroll.c $(TEST_LDFLAGS) - - hashmap$x : $(serial)/hashmap.c $(serial)/hardscroll.c $(TEST_DEPS) -- @ECHO_LINK@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DHASHDEBUG $(serial)/hashmap.c $(serial)/hardscroll.c $(TEST_LDFLAGS) -+ @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_LINK@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DNCURSES_TEST -I$(serial)/../../progs $(serial)/lib_mvcur.c ../@DFT_OBJ_SUBDIR@/dump_entry$o $(TEST_LDFLAGS) -+ @ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DNCURSES_TEST -I$(serial)/../../progs $(serial)/lib_mvcur.c ../@DFT_OBJ_SUBDIR@/dump_entry$o $(TEST_LDFLAGS) - - link_test$x : ./link_test.c $(TEST_DEPS) \ - ../@DFT_OBJ_SUBDIR@/link_test$o -- @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) ../@DFT_OBJ_SUBDIR@/link_test$o $(TEST_LDFLAGS) -+ @ECHO_LD@ $(CC) -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 -diff -Naur ncurses-5.9/ncurses/modules ncurses-5.9.patch/ncurses/modules ---- ncurses-5.9/ncurses/modules 2010-08-07 20:41:02.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/modules 2014-09-01 16:33:22.419792227 +0200 -@@ -1,6 +1,6 @@ --# $Id: modules,v 1.117 2010/08/07 18:41:02 tom Exp $ -+# $Id: modules,v 1.120 2013/01/26 22:17:55 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -115,7 +115,6 @@ - varargs lib $(trace) $(HEADER_DEPS) - - # Modules for porting --memmove lib $(base) $(HEADER_DEPS) - vsscanf lib $(base) $(HEADER_DEPS) - - # actually an extension, but with its own configure option (--disable-leaks) -@@ -199,9 +198,9 @@ - lib_twait lib $(serial) $(HEADER_DEPS) - name_match lib $(tinfo) $(HEADER_DEPS) $(INCDIR)/tic.h - names lib . $(HEADER_DEPS) -+obsolete lib $(tinfo) $(HEADER_DEPS) - read_entry lib $(tinfo) $(HEADER_DEPS) $(INCDIR)/tic.h $(INCDIR)/hashed_db.h - read_termcap lib $(tinfo) $(HEADER_DEPS) $(INCDIR)/tic.h --setbuf lib $(tinfo) $(HEADER_DEPS) - strings lib $(tinfo) $(HEADER_DEPS) - trace_buf lib $(trace) $(HEADER_DEPS) - trace_tries lib $(trace) $(HEADER_DEPS) -@@ -236,6 +235,7 @@ - @ port_win32con - gettimeofday lib $(win32con) $(HEADER_DEPS) - wcwidth lib $(win32con) $(HEADER_DEPS) -+widechars lib $(wide) $(HEADER_DEPS) - win_driver lib $(win32con) $(HEADER_DEPS) - - @ port_tinfo -diff -Naur ncurses-5.9/ncurses/tinfo/access.c ncurses-5.9.patch/ncurses/tinfo/access.c ---- ncurses-5.9/ncurses/tinfo/access.c 2010-01-23 18:57:43.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/access.c 2014-09-01 16:33:22.419792227 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -33,11 +33,18 @@ - #include <curses.priv.h> - - #include <ctype.h> --#include <sys/stat.h> - - #include <tic.h> - --MODULE_ID("$Id: access.c,v 1.16 2010/01/23 17:57:43 tom Exp $") -+MODULE_ID("$Id: access.c,v 1.23 2012/09/01 19:21:29 tom Exp $") -+ -+#ifdef __TANDEM -+#define ROOT_UID 65535 -+#endif -+ -+#ifndef ROOT_UID -+#define ROOT_UID 0 -+#endif - - #define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c)) - -@@ -53,7 +60,7 @@ - result = temp; - #if !MIXEDCASE_FILENAMES - for (s = result; *s != '\0'; ++s) { -- *s = LOWERCASE(*s); -+ *s = (char) LOWERCASE(*s); - } - #endif - #if defined(PROG_EXT) -@@ -108,24 +115,33 @@ - NCURSES_EXPORT(int) - _nc_access(const char *path, int mode) - { -- if (access(path, mode) < 0) { -+ int result; -+ -+ if (path == 0) { -+ result = -1; -+ } else if (access(path, mode) < 0) { - if ((mode & W_OK) != 0 - && errno == ENOENT - && strlen(path) < PATH_MAX) { - char head[PATH_MAX]; -- char *leaf = _nc_basename(strcpy(head, path)); -+ char *leaf; - -+ _nc_STRCPY(head, path, sizeof(head)); -+ leaf = _nc_basename(head); - if (leaf == 0) - leaf = head; - *leaf = '\0'; - if (head == leaf) -- (void) strcpy(head, "."); -+ _nc_STRCPY(head, ".", sizeof(head)); - -- return access(head, R_OK | W_OK | X_OK); -+ result = access(head, R_OK | W_OK | X_OK); -+ } else { -+ result = -1; - } -- return -1; -+ } else { -+ result = 0; - } -- return 0; -+ return result; - } - - NCURSES_EXPORT(bool) -@@ -135,7 +151,7 @@ - struct stat sb; - - if (stat(path, &sb) == 0 -- && (sb.st_mode & S_IFMT) == S_IFDIR) { -+ && S_ISDIR(sb.st_mode)) { - result = TRUE; - } - return result; -@@ -148,7 +164,7 @@ - struct stat sb; - - if (stat(path, &sb) == 0 -- && (sb.st_mode & S_IFMT) == S_IFREG) { -+ && S_ISREG(sb.st_mode)) { - result = TRUE; - } - return result; -@@ -170,6 +186,7 @@ - || getgid() != getegid()) - return FALSE; - #endif -- return getuid() != 0 && geteuid() != 0; /* ...finally, disallow root */ -+ /* ...finally, disallow root */ -+ return (getuid() != ROOT_UID) && (geteuid() != ROOT_UID); - } - #endif -diff -Naur ncurses-5.9/ncurses/tinfo/alloc_entry.c ncurses-5.9.patch/ncurses/tinfo/alloc_entry.c ---- ncurses-5.9/ncurses/tinfo/alloc_entry.c 2010-12-26 00:06:01.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/alloc_entry.c 2014-09-01 16:33:22.419792227 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -47,7 +47,7 @@ - - #include <tic.h> - --MODULE_ID("$Id: alloc_entry.c,v 1.51 2010/12/25 23:06:01 tom Exp $") -+MODULE_ID("$Id: alloc_entry.c,v 1.58 2013/08/17 19:20:38 tom Exp $") - - #define ABSENT_OFFSET -1 - #define CANCELLED_OFFSET -2 -@@ -61,8 +61,6 @@ - _nc_init_entry(TERMTYPE *const tp) - /* initialize a terminal type data block */ - { -- unsigned i; -- - #if NO_LEAKS - if (tp == 0) { - if (stringbuf != 0) { -@@ -73,33 +71,11 @@ - #endif - - if (stringbuf == 0) -- stringbuf = (char *) malloc(MAX_STRTAB); -- --#if NCURSES_XNAMES -- tp->num_Booleans = BOOLCOUNT; -- tp->num_Numbers = NUMCOUNT; -- tp->num_Strings = STRCOUNT; -- tp->ext_Booleans = 0; -- tp->ext_Numbers = 0; -- tp->ext_Strings = 0; --#endif -- if (tp->Booleans == 0) -- tp->Booleans = typeMalloc(NCURSES_SBOOL, BOOLCOUNT); -- if (tp->Numbers == 0) -- tp->Numbers = typeMalloc(short, NUMCOUNT); -- if (tp->Strings == 0) -- tp->Strings = typeMalloc(char *, STRCOUNT); -- -- for_each_boolean(i, tp) -- tp->Booleans[i] = FALSE; -- -- for_each_number(i, tp) -- tp->Numbers[i] = ABSENT_NUMERIC; -- -- for_each_string(i, tp) -- tp->Strings[i] = ABSENT_STRING; -+ TYPE_MALLOC(char, (size_t) MAX_STRTAB, stringbuf); - - next_free = 0; -+ -+ _nc_init_termtype(tp); - } - - NCURSES_EXPORT(ENTRY *) -@@ -131,13 +107,13 @@ - result = (stringbuf + next_free - 1); - } - } else if (next_free + len < MAX_STRTAB) { -- strcpy(&stringbuf[next_free], string); -+ _nc_STRCPY(&stringbuf[next_free], string, MAX_STRTAB); - DEBUG(7, ("Saved string %s", _nc_visbuf(string))); - DEBUG(7, ("at location %d", (int) next_free)); - next_free += len; - result = (stringbuf + old_next_free); - } else { -- _nc_warning("Too much data, some is lost"); -+ _nc_warning("Too much data, some is lost: %s", string); - } - return result; - } -@@ -194,8 +170,7 @@ - useoffsets[i] = (int) (ep->uses[i].name - stringbuf); - } - -- if ((tp->str_table = typeMalloc(char, next_free)) == (char *) 0) -- _nc_err_abort(MSG_NO_MEMORY); -+ TYPE_MALLOC(char, next_free, tp->str_table); - (void) memcpy(tp->str_table, stringbuf, next_free); - - tp->term_names = tp->str_table + n; -@@ -216,16 +191,18 @@ - if ((n = (unsigned) NUM_EXT_NAMES(tp)) != 0) { - if (n < SIZEOF(offsets)) { - size_t length = 0; -+ size_t offset; - for (i = 0; i < n; i++) { - length += strlen(tp->ext_Names[i]) + 1; - offsets[i] = (int) (tp->ext_Names[i] - stringbuf); - } -- if ((tp->ext_str_table = typeMalloc(char, length)) == 0) -- _nc_err_abort(MSG_NO_MEMORY); -- for (i = 0, length = 0; i < n; i++) { -- tp->ext_Names[i] = tp->ext_str_table + length; -- strcpy(tp->ext_Names[i], stringbuf + offsets[i]); -- length += strlen(tp->ext_Names[i]) + 1; -+ TYPE_MALLOC(char, length, tp->ext_str_table); -+ for (i = 0, offset = 0; i < n; i++) { -+ tp->ext_Names[i] = tp->ext_str_table + offset; -+ _nc_STRCPY(tp->ext_Names[i], -+ stringbuf + offsets[i], -+ length - offset); -+ offset += strlen(tp->ext_Names[i]) + 1; - } - } - } -diff -Naur ncurses-5.9/ncurses/tinfo/alloc_ttype.c ncurses-5.9.patch/ncurses/tinfo/alloc_ttype.c ---- ncurses-5.9/ncurses/tinfo/alloc_ttype.c 2010-12-19 01:24:09.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/alloc_ttype.c 2014-09-01 16:33:22.419792227 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1999-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1999-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,7 +42,7 @@ - - #include <tic.h> - --MODULE_ID("$Id: alloc_ttype.c,v 1.22 2010/12/19 00:24:09 tom Exp $") -+MODULE_ID("$Id: alloc_ttype.c,v 1.27 2013/06/08 16:54:50 tom Exp $") - - #if NCURSES_XNAMES - /* -@@ -104,7 +104,7 @@ - - if (to->ext_Booleans != ext_Booleans) { - EXTEND_NUM(num_Booleans, ext_Booleans); -- to->Booleans = typeRealloc(NCURSES_SBOOL, to->num_Booleans, to->Booleans); -+ TYPE_REALLOC(NCURSES_SBOOL, to->num_Booleans, to->Booleans); - for (n = to->ext_Booleans - 1, - m = ext_Booleans - 1, - base = to->num_Booleans - (m + 1); m >= 0; m--) { -@@ -116,9 +116,10 @@ - } - to->ext_Booleans = UShort(ext_Booleans); - } -+ - if (to->ext_Numbers != ext_Numbers) { - EXTEND_NUM(num_Numbers, ext_Numbers); -- to->Numbers = typeRealloc(short, to->num_Numbers, to->Numbers); -+ TYPE_REALLOC(short, to->num_Numbers, to->Numbers); - for (n = to->ext_Numbers - 1, - m = ext_Numbers - 1, - base = to->num_Numbers - (m + 1); m >= 0; m--) { -@@ -132,7 +133,7 @@ - } - if (to->ext_Strings != ext_Strings) { - EXTEND_NUM(num_Strings, ext_Strings); -- to->Strings = typeRealloc(char *, to->num_Strings, to->Strings); -+ TYPE_REALLOC(char *, to->num_Strings, to->Strings); - for (n = to->ext_Strings - 1, - m = ext_Strings - 1, - base = to->num_Strings - (m + 1); m >= 0; m--) { -@@ -301,7 +302,7 @@ - } - } - -- tp->ext_Names = typeRealloc(char *, total, tp->ext_Names); -+ TYPE_REALLOC(char *, total, tp->ext_Names); - for (k = total - 1; k > j; k--) - tp->ext_Names[k] = tp->ext_Names[k - 1]; - tp->ext_Names[j] = name; -@@ -311,21 +312,21 @@ - case BOOLEAN: - tp->ext_Booleans++; - tp->num_Booleans++; -- tp->Booleans = typeRealloc(NCURSES_SBOOL, tp->num_Booleans, tp->Booleans); -+ TYPE_REALLOC(NCURSES_SBOOL, tp->num_Booleans, tp->Booleans); - for (k = (unsigned) (tp->num_Booleans - 1); k > j; k--) - tp->Booleans[k] = tp->Booleans[k - 1]; - break; - case NUMBER: - tp->ext_Numbers++; - tp->num_Numbers++; -- tp->Numbers = typeRealloc(short, tp->num_Numbers, tp->Numbers); -+ TYPE_REALLOC(short, tp->num_Numbers, tp->Numbers); - for (k = (unsigned) (tp->num_Numbers - 1); k > j; k--) - tp->Numbers[k] = tp->Numbers[k - 1]; - break; - case STRING: - tp->ext_Strings++; - tp->num_Strings++; -- tp->Strings = typeRealloc(char *, tp->num_Strings, tp->Strings); -+ TYPE_REALLOC(char *, tp->num_Strings, tp->Strings); - for (k = (unsigned) (tp->num_Strings - 1); k > j; k--) - tp->Strings[k] = tp->Strings[k - 1]; - break; -@@ -417,7 +418,7 @@ - * into it, updating to's counts for booleans, etc. Fortunately we do - * this only for the terminfo compiler (tic) and comparer (infocmp). - */ -- ext_Names = typeMalloc(char *, (size_t)(na + nb)); -+ TYPE_MALLOC(char *, (size_t)(na + nb), ext_Names); - - if (to->ext_Strings && (from->ext_Booleans + from->ext_Numbers)) - adjust_cancels(to, from); -@@ -461,7 +462,7 @@ - if (nb != (ext_Booleans + ext_Numbers + ext_Strings)) { - nb = (ext_Booleans + ext_Numbers + ext_Strings); - realign_data(from, ext_Names, ext_Booleans, ext_Numbers, ext_Strings); -- from->ext_Names = typeRealloc(char *, (size_t) nb, from->ext_Names); -+ TYPE_REALLOC(char *, (size_t) nb, from->ext_Names); - memcpy(from->ext_Names, ext_Names, sizeof(char *) * (size_t) nb); - DEBUG(2, ("realigned %d extended names for '%s' (from)", - NUM_EXT_NAMES(from), from->term_names)); -@@ -473,22 +474,27 @@ - #endif - - NCURSES_EXPORT(void) --_nc_copy_termtype(TERMTYPE *dst, TERMTYPE *src) -+_nc_copy_termtype(TERMTYPE *dst, const TERMTYPE *src) - { -+#if NCURSES_XNAMES - unsigned i; -+#endif - - *dst = *src; /* ...to copy the sizes and string-tables */ -- dst->Booleans = typeMalloc(NCURSES_SBOOL, NUM_BOOLEANS(dst)); -- dst->Numbers = typeMalloc(short, NUM_NUMBERS(dst)); -- dst->Strings = typeMalloc(char *, NUM_STRINGS(dst)); -- -- /* FIXME: use memcpy for these and similar loops */ -- for_each_boolean(i, dst) -- dst->Booleans[i] = src->Booleans[i]; -- for_each_number(i, dst) -- dst->Numbers[i] = src->Numbers[i]; -- for_each_string(i, dst) -- dst->Strings[i] = src->Strings[i]; -+ -+ TYPE_MALLOC(NCURSES_SBOOL, NUM_BOOLEANS(dst), dst->Booleans); -+ TYPE_MALLOC(short, NUM_NUMBERS(dst), dst->Numbers); -+ TYPE_MALLOC(char *, NUM_STRINGS(dst), dst->Strings); -+ -+ memcpy(dst->Booleans, -+ src->Booleans, -+ NUM_BOOLEANS(dst) * sizeof(dst->Booleans[0])); -+ memcpy(dst->Numbers, -+ src->Numbers, -+ NUM_NUMBERS(dst) * sizeof(dst->Numbers[0])); -+ memcpy(dst->Strings, -+ src->Strings, -+ NUM_STRINGS(dst) * sizeof(dst->Strings[0])); - - /* FIXME: we probably should also copy str_table and ext_str_table, - * but tic and infocmp are not written to exploit that (yet). -@@ -496,11 +502,10 @@ - - #if NCURSES_XNAMES - if ((i = NUM_EXT_NAMES(src)) != 0) { -- dst->ext_Names = typeMalloc(char *, i); -+ TYPE_MALLOC(char *, i, dst->ext_Names); - memcpy(dst->ext_Names, src->ext_Names, i * sizeof(char *)); - } else { - dst->ext_Names = 0; - } - #endif -- - } -diff -Naur ncurses-5.9/ncurses/tinfo/captoinfo.c ncurses-5.9.patch/ncurses/tinfo/captoinfo.c ---- ncurses-5.9/ncurses/tinfo/captoinfo.c 2010-12-04 21:08:19.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/captoinfo.c 2014-09-01 16:33:22.420792229 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -93,7 +93,7 @@ - #include <ctype.h> - #include <tic.h> - --MODULE_ID("$Id: captoinfo.c,v 1.58 2010/12/04 20:08:19 tom Exp $") -+MODULE_ID("$Id: captoinfo.c,v 1.77 2012/12/30 00:50:40 tom Exp $") - - #define MAX_PUSHED 16 /* max # args we can push onto the stack */ - -@@ -114,9 +114,7 @@ - /* initialize 'my_string', 'my_length' */ - { - if (my_string == 0) -- my_string = typeMalloc(char, my_length = 256); -- if (my_string == 0) -- _nc_err_abort(MSG_NO_MEMORY); -+ TYPE_MALLOC(char, my_length = 256, my_string); - - *my_string = '\0'; - return my_string; -@@ -133,7 +131,7 @@ - _nc_err_abort(MSG_NO_MEMORY); - d = my_string + have; - } -- (void) strcpy(d, s); -+ _nc_STRCPY(d, s, my_length - have); - return d + strlen(d); - } - -@@ -240,6 +238,12 @@ - else if (parm == 2) - parm = 1; - } -+ -+ while (n--) { -+ dp = save_string(dp, "%p"); -+ dp = save_char(dp, '0' + parm); -+ } -+ - if (onstack == parm) { - if (n > 1) { - _nc_warning("string may not be optimal"); -@@ -255,11 +259,6 @@ - - onstack = parm; - -- while (n--) { -- dp = save_string(dp, "%p"); -- dp = save_char(dp, '0' + parm); -- } -- - if (seenn && parm < 3) { - dp = save_string(dp, "%{96}%^"); - } -@@ -469,73 +468,9 @@ - break; - } - break; --#ifdef REVISIBILIZE -- case '\\': -- dp = save_char(dp, *s++); -- dp = save_char(dp, *s++); -- break; -- case '\n': -- dp = save_string(dp, "\\n"); -- s++; -- break; -- case '\t': -- dp = save_string(dp, "\\t"); -- s++; -- break; -- case '\r': -- dp = save_string(dp, "\\r"); -- s++; -- break; -- case '\200': -- dp = save_string(dp, "\\0"); -- s++; -- break; -- case '\f': -- dp = save_string(dp, "\\f"); -- s++; -- break; -- case '\b': -- dp = save_string(dp, "\\b"); -- s++; -- break; -- case ' ': -- dp = save_string(dp, "\\s"); -- s++; -- break; -- case '^': -- dp = save_string(dp, "\\^"); -- s++; -- break; -- case ':': -- dp = save_string(dp, "\\:"); -- s++; -- break; -- case ',': -- dp = save_string(dp, "\\,"); -- s++; -- break; -- default: -- if (*s == '\033') { -- dp = save_string(dp, "\\E"); -- s++; -- } else if (*s > 0 && *s < 32) { -- dp = save_char(dp, '^'); -- dp = save_char(dp, *s + '@'); -- s++; -- } else if (*s <= 0 || *s >= 127) { -- dp = save_char(dp, '\\'); -- dp = save_char(dp, ((*s & 0300) >> 6) + '0'); -- dp = save_char(dp, ((*s & 0070) >> 3) + '0'); -- dp = save_char(dp, (*s & 0007) + '0'); -- s++; -- } else -- dp = save_char(dp, *s++); -- break; --#else - default: - dp = save_char(dp, *s++); - break; --#endif - } - } - -@@ -578,7 +513,7 @@ - { - char buffer[80]; - int tst; -- sprintf(buffer, fmt, ch1, ch2); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) fmt, ch1, ch2); - tst = strlen(buffer) - 1; - assert(len == tst); - } -@@ -597,10 +532,13 @@ - bufptr = save_char(bufptr, '\\'); - bufptr = save_char(bufptr, c1); - } else { -- if (c1 == (c1 & 0x1f)) /* iscntrl() returns T on 255 */ -- (void) strcpy(temp, unctrl((chtype) c1)); -- else -- (void) sprintf(temp, "\\%03o", c1); -+ if (c1 == (c1 & 0x1f)) { /* iscntrl() returns T on 255 */ -+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) -+ "%.20s", unctrl((chtype) c1)); -+ } else { -+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) -+ "\\%03o", c1); -+ } - bufptr = save_string(bufptr, temp); - } - return bufptr; -@@ -646,13 +584,15 @@ - int in0, in1, in2; - char ch1 = 0, ch2 = 0; - char *bufptr = init_string(); -+ char octal[4]; - int len; - bool syntax_error = FALSE; - - /* we may have to move some trailing mandatory padding up front */ - padding = str + strlen(str) - 1; -- if (padding > str && *padding == '>' && *--padding == '/') { -- --padding; -+ if (padding > str && *padding == '>') { -+ if (*--padding == '/') -+ --padding; - while (isdigit(UChar(*padding)) || *padding == '.' || *padding == '*') - padding--; - if (padding > str && *padding == '<' && *--padding == '$') -@@ -663,7 +603,7 @@ - bufptr = save_char(bufptr, *padding++); - } - -- for (; *str && str != trimmed; str++) { -+ for (; *str && ((trimmed == 0) || (str < trimmed)); str++) { - int c1, c2; - char *cp = 0; - -@@ -685,8 +625,72 @@ - } else if (str[1] == ',') { - bufptr = save_char(bufptr, *++str); - } else { -+ int xx1, xx2; -+ - bufptr = save_char(bufptr, *str++); -- bufptr = save_char(bufptr, *str); -+ xx1 = *str; -+ if (_nc_strict_bsd) { -+ if (isdigit(UChar(xx1))) { -+ int pad = 0; -+ -+ if (!isdigit(UChar(str[1]))) -+ pad = 2; -+ else if (str[1] && !isdigit(UChar(str[2]))) -+ pad = 1; -+ -+ /* -+ * Test for "\0", "\00" or "\000" and transform those -+ * into "\200". -+ */ -+ if (xx1 == '0' -+ && ((pad == 2) || (str[1] == '0')) -+ && ((pad >= 1) || (str[2] == '0'))) { -+ xx2 = '2'; -+ } else { -+ xx2 = '0'; -+ pad = 0; /* FIXME - optionally pad to 3 digits */ -+ } -+ while (pad-- > 0) { -+ bufptr = save_char(bufptr, xx2); -+ xx2 = '0'; -+ } -+ } else if (strchr("E\\nrtbf", xx1) == 0) { -+ switch (xx1) { -+ case 'e': -+ xx1 = 'E'; -+ break; -+ case 'l': -+ xx1 = 'n'; -+ break; -+ case 's': -+ bufptr = save_char(bufptr, '0'); -+ bufptr = save_char(bufptr, '4'); -+ xx1 = '0'; -+ break; -+ case ':': -+ /* -+ * Note: termcap documentation claims that ":" -+ * must be escaped as "\072", however the -+ * documentation is incorrect - read the code. -+ * The replacement does not work reliably, -+ * so the advice is not helpful. -+ */ -+ bufptr = save_char(bufptr, '0'); -+ bufptr = save_char(bufptr, '7'); -+ xx1 = '2'; -+ break; -+ default: -+ /* should not happen, but handle this anyway */ -+ _nc_SPRINTF(octal, _nc_SLIMIT(sizeof(octal)) -+ "%03o", UChar(xx1)); -+ bufptr = save_char(bufptr, octal[0]); -+ bufptr = save_char(bufptr, octal[1]); -+ xx1 = octal[2]; -+ break; -+ } -+ } -+ } -+ bufptr = save_char(bufptr, xx1); - } - } else if (str[0] == '$' && str[1] == '<') { /* discard padding */ - str += 2; -@@ -703,7 +707,8 @@ - && ((in0 == 4 && in1 == 10 && in2 == 48) - || (in0 == 3 && in1 == 9 && in2 == 38))) { - /* dumb-down an optimized case from xterm-256color for termcap */ -- str = strstr(str, ";m"); -+ if ((str = strstr(str, ";m")) == 0) -+ break; /* cannot happen */ - ++str; - if (in2 == 48) { - bufptr = save_string(bufptr, "[48;5;%dm"); -@@ -720,13 +725,13 @@ - bufptr = save_tc_inequality(bufptr, c1, c2); - } else if (sscanf(str, "%%?%%{%d}%%>%%t%%'%c'%%+%%;", &c1, &ch2) == 2) { - str = strchr(str, ';'); -- bufptr = save_tc_inequality(bufptr, c1, c2); -+ bufptr = save_tc_inequality(bufptr, c1, ch2); - } else if (sscanf(str, "%%?%%'%c'%%>%%t%%{%d}%%+%%;", &ch1, &c2) == 2) { - str = strchr(str, ';'); -- bufptr = save_tc_inequality(bufptr, c1, c2); -+ bufptr = save_tc_inequality(bufptr, ch1, c2); - } else if (sscanf(str, "%%?%%'%c'%%>%%t%%'%c'%%+%%;", &ch1, &ch2) == 2) { - str = strchr(str, ';'); -- bufptr = save_tc_inequality(bufptr, c1, c2); -+ bufptr = save_tc_inequality(bufptr, ch1, ch2); - } else if ((len = bcd_expression(str)) != 0) { - str += len; - bufptr = save_string(bufptr, "%B"); -@@ -741,15 +746,15 @@ - bufptr = save_tc_char(bufptr, c1); - } - /* FIXME: this "works" for 'delta' */ -- else if (strncmp(str, "%{2}%*%-", 8) == 0) { -+ else if (strncmp(str, "%{2}%*%-", (size_t) 8) == 0) { - str += 7; - bufptr = save_string(bufptr, "%D"); -- } else if (strncmp(str, "%{96}%^", 7) == 0) { -+ } else if (strncmp(str, "%{96}%^", (size_t) 7) == 0) { - str += 6; - if (saw_m++ == 0) { - bufptr = save_string(bufptr, "%n"); - } -- } else if (strncmp(str, "%{127}%^", 8) == 0) { -+ } else if (strncmp(str, "%{127}%^", (size_t) 8) == 0) { - str += 7; - if (saw_n++ == 0) { - bufptr = save_string(bufptr, "%m"); -@@ -772,8 +777,25 @@ - case '8': - case '9': - bufptr = save_char(bufptr, '%'); -- while (isdigit(UChar(*str))) -- bufptr = save_char(bufptr, *str++); -+ ch1 = 0; -+ ch2 = 0; -+ while (isdigit(UChar(*str))) { -+ ch2 = ch1; -+ ch1 = *str++; -+ if (_nc_strict_bsd) { -+ if (ch1 > '3') -+ return 0; -+ } else { -+ bufptr = save_char(bufptr, ch1); -+ } -+ } -+ if (_nc_strict_bsd) { -+ if (ch2 != 0 && ch2 != '0') -+ return 0; -+ if (ch1 < '2') -+ ch1 = 'd'; -+ bufptr = save_char(bufptr, ch1); -+ } - if (strchr("doxX.", *str)) { - if (*str != 'd') /* termcap doesn't have octal, hex */ - return 0; -@@ -794,6 +816,8 @@ - * termcap notation. - */ - case 's': -+ if (_nc_strict_bsd) -+ return 0; - bufptr = save_string(bufptr, "%s"); - break; - -@@ -826,7 +850,7 @@ - * but that may not be the end of the string. - */ - assert(str != 0); -- if (*str == '\0') -+ if (str == 0 || *str == '\0') - break; - - } /* endwhile (*str) */ -diff -Naur ncurses-5.9/ncurses/tinfo/comp_error.c ncurses-5.9.patch/ncurses/tinfo/comp_error.c ---- ncurses-5.9/ncurses/tinfo/comp_error.c 2007-04-22 01:38:32.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/comp_error.c 2014-09-01 16:33:22.420792229 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2005,2007 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -41,7 +41,7 @@ - - #include <tic.h> - --MODULE_ID("$Id: comp_error.c,v 1.31 2007/04/21 23:38:32 tom Exp $") -+MODULE_ID("$Id: comp_error.c,v 1.36 2012/02/22 22:34:31 tom Exp $") - - NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings = FALSE; - NCURSES_EXPORT_VAR(int) _nc_curr_line = 0; /* current line # in input */ -@@ -59,7 +59,8 @@ - NCURSES_EXPORT(void) - _nc_set_source(const char *const name) - { -- SourceName = name; -+ FreeIfNeeded(SourceName); -+ SourceName = strdup(name); - } - - NCURSES_EXPORT(void) -@@ -70,7 +71,7 @@ - if (TermType != 0) { - TermType[0] = '\0'; - if (name) -- strncat(TermType, name, MAX_NAME_SIZE); -+ strncat(TermType, name, (size_t) MAX_NAME_SIZE); - } - } - -@@ -84,7 +85,7 @@ - } - #endif - if (name != 0) -- strcpy(name, TermType != 0 ? TermType : ""); -+ _nc_STRCPY(name, TermType != 0 ? TermType : "", MAX_NAME_SIZE); - } - - static NCURSES_INLINE void -@@ -151,3 +152,12 @@ - exit(EXIT_FAILURE); - #endif - } -+ -+#if NO_LEAKS -+NCURSES_EXPORT(void) -+_nc_comp_error_leaks(void) -+{ -+ FreeAndNull(SourceName); -+ FreeAndNull(TermType); -+} -+#endif -diff -Naur ncurses-5.9/ncurses/tinfo/comp_expand.c ncurses-5.9.patch/ncurses/tinfo/comp_expand.c ---- ncurses-5.9/ncurses/tinfo/comp_expand.c 2010-01-16 18:11:23.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/comp_expand.c 2014-09-01 16:33:22.420792229 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,7 +35,7 @@ - #include <ctype.h> - #include <tic.h> - --MODULE_ID("$Id: comp_expand.c,v 1.21 2010/01/16 17:11:23 tom Exp $") -+MODULE_ID("$Id: comp_expand.c,v 1.25 2012/03/24 18:37:17 tom Exp $") - - static int - trailing_spaces(const char *src) -@@ -49,6 +49,8 @@ - #define REALCTL(s) (UChar(*(s)) < 127 && iscntrl(UChar(*(s)))) - #define REALPRINT(s) (UChar(*(s)) < 127 && isprint(UChar(*(s)))) - -+#define P_LIMIT(p) (length - (size_t)(p)) -+ - NCURSES_EXPORT(char *) - _nc_tic_expand(const char *srcp, bool tic_format, int numbers) - { -@@ -61,15 +63,15 @@ - size_t need = (2 + strlen(str)) * 4; - int ch; - --#if NO_LEAKS - if (srcp == 0) { -+#if NO_LEAKS - if (buffer != 0) { - FreeAndNull(buffer); - length = 0; - } -+#endif - return 0; - } --#endif - if (buffer == 0 || need > length) { - if ((buffer = typeRealloc(char, length = need, buffer)) == 0) - return 0; -@@ -90,7 +92,8 @@ - && str[1] != '\\' - && REALPRINT(str + 1) - && str[2] == S_QUOTE) { -- sprintf(buffer + bufp, "{%d}", str[1]); -+ _nc_SPRINTF(buffer + bufp, _nc_SLIMIT(P_LIMIT(bufp)) -+ "{%d}", str[1]); - bufp += (int) strlen(buffer + bufp); - str += 2; - } else { -@@ -177,10 +180,12 @@ - #define UnCtl(c) ((c) + '@') - else if (REALCTL(str) && ch != '\\' - && (!islong || isdigit(UChar(str[1])))) { -- (void) sprintf(&buffer[bufp], "^%c", UnCtl(ch)); -+ _nc_SPRINTF(&buffer[bufp], _nc_SLIMIT(P_LIMIT(bufp)) -+ "^%c", UnCtl(ch)); - bufp += 2; - } else { -- (void) sprintf(&buffer[bufp], "\\%03o", ch); -+ _nc_SPRINTF(&buffer[bufp], _nc_SLIMIT(P_LIMIT(bufp)) -+ "\\%03o", ch); - bufp += 4; - } - -diff -Naur ncurses-5.9/ncurses/tinfo/comp_parse.c ncurses-5.9.patch/ncurses/tinfo/comp_parse.c ---- ncurses-5.9/ncurses/tinfo/comp_parse.c 2010-12-26 00:06:37.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/comp_parse.c 2014-09-01 16:33:22.420792229 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,15 +35,10 @@ - /* - * comp_parse.c -- parser driver loop and use handling. - * -- * _nc_read_entry_source(FILE *, literal, bool, bool (*hook)()) -- * _nc_resolve_uses2(void) -- * _nc_free_entries(void) -- * - * Use this code by calling _nc_read_entry_source() on as many source - * files as you like (either terminfo or termcap syntax). If you - * want use-resolution, call _nc_resolve_uses2(). To free the list - * storage, do _nc_free_entries(). -- * - */ - - #include <curses.priv.h> -@@ -52,7 +47,7 @@ - - #include <tic.h> - --MODULE_ID("$Id: comp_parse.c,v 1.73 2010/12/25 23:06:37 tom Exp $") -+MODULE_ID("$Id: comp_parse.c,v 1.90 2013/08/31 15:22:31 tom Exp $") - - static void sanity_check2(TERMTYPE *, bool); - NCURSES_IMPEXP void NCURSES_API(*_nc_check_termtype2) (TERMTYPE *, bool) = sanity_check2; -@@ -61,6 +56,8 @@ - static void sanity_check(TERMTYPE *); - NCURSES_IMPEXP void NCURSES_API(*_nc_check_termtype) (TERMTYPE *) = sanity_check; - -+static void fixup_acsc(TERMTYPE *, int); -+ - static void - enqueue(ENTRY * ep) - /* add an entry to the in-core list */ -@@ -86,16 +83,28 @@ - if (len > MAX_NAME_SIZE) - len = MAX_NAME_SIZE; - (void) strncpy(dst, src, len); -- (void) strcpy(dst + len, "|"); -+ _nc_STRCPY(dst + len, "|", MAX_NAME_SIZE); - src = dst; - } - return src; - } - #define ForceBar(dst, src) ((strchr(src, '|') == 0) ? force_bar(dst, src) : src) - --NCURSES_EXPORT(bool) --_nc_entry_match(char *n1, char *n2) --/* do any of the aliases in a pair of terminal names match? */ -+#if NCURSES_USE_TERMCAP && NCURSES_XNAMES -+static char * -+skip_index(char *name) -+{ -+ char *bar = strchr(name, '|'); -+ -+ if (bar != 0 && (bar - name) == 2) -+ name = bar + 1; -+ -+ return name; -+} -+#endif -+ -+static bool -+check_collisions(char *n1, char *n2, int counter) - { - char *pstart, *qstart, *pend, *qend; - char nc1[MAX_NAME_SIZE + 2]; -@@ -104,15 +113,95 @@ - n1 = ForceBar(nc1, n1); - n2 = ForceBar(nc2, n2); - -- for (pstart = n1; (pend = strchr(pstart, '|')); pstart = pend + 1) -- for (qstart = n2; (qend = strchr(qstart, '|')); qstart = qend + 1) -+#if NCURSES_USE_TERMCAP && NCURSES_XNAMES -+ if ((_nc_syntax == SYN_TERMCAP) && _nc_user_definable) { -+ n1 = skip_index(n1); -+ n2 = skip_index(n2); -+ } -+#endif -+ -+ for (pstart = n1; (pend = strchr(pstart, '|')); pstart = pend + 1) { -+ for (qstart = n2; (qend = strchr(qstart, '|')); qstart = qend + 1) { - if ((pend - pstart == qend - qstart) -- && memcmp(pstart, qstart, (size_t) (pend - pstart)) == 0) -+ && memcmp(pstart, qstart, (size_t) (pend - pstart)) == 0) { -+ if (counter > 0) -+ (void) fprintf(stderr, "Name collision '%.*s' between\n", -+ (int) (pend - pstart), pstart); - return (TRUE); -+ } -+ } -+ } - - return (FALSE); - } - -+static char * -+next_name(char *name) -+{ -+ if (*name != '\0') -+ ++name; -+ return name; -+} -+ -+static char * -+name_ending(char *name) -+{ -+ if (*name == '\0') { -+ name = 0; -+ } else { -+ while (*name != '\0' && *name != '|') -+ ++name; -+ } -+ return name; -+} -+ -+/* -+ * Essentially, find the conflict reported in check_collisions() and remove -+ * it from the second name, unless that happens to be the last alias. -+ */ -+static bool -+remove_collision(char *n1, char *n2) -+{ -+ char *p2 = n2; -+ char *pstart, *qstart, *pend, *qend; -+ bool removed = FALSE; -+ -+#if NCURSES_USE_TERMCAP && NCURSES_XNAMES -+ if ((_nc_syntax == SYN_TERMCAP) && _nc_user_definable) { -+ n1 = skip_index(n1); -+ p2 = n2 = skip_index(n2); -+ } -+#endif -+ -+ for (pstart = n1; (pend = name_ending(pstart)); pstart = next_name(pend)) { -+ for (qstart = n2; (qend = name_ending(qstart)); qstart = next_name(qend)) { -+ if ((pend - pstart == qend - qstart) -+ && memcmp(pstart, qstart, (size_t) (pend - pstart)) == 0) { -+ if (qstart != p2 || *qend == '|') { -+ if (*qend == '|') -+ ++qend; -+ while ((*qstart++ = *qend++) != '\0') ; -+ fprintf(stderr, "...now\t%s\n", p2); -+ } else { -+ fprintf(stderr, "Cannot remove alias '%.*s'\n", -+ (int) (qend - qstart), qstart); -+ } -+ removed = TRUE; -+ break; -+ } -+ } -+ } -+ -+ return removed; -+} -+ -+/* do any of the aliases in a pair of terminal names match? */ -+NCURSES_EXPORT(bool) -+_nc_entry_match(char *n1, char *n2) -+{ -+ return check_collisions(n1, n2, 0); -+} -+ - /**************************************************************************** - * - * Entry compiler and resolution logic -@@ -198,19 +287,19 @@ - - for_entry_list(rp) { - if (qp > rp -- && _nc_entry_match(qp->tterm.term_names, rp->tterm.term_names)) { -- matchcount++; -- if (matchcount == 1) { -- (void) fprintf(stderr, "Name collision between %s", -- _nc_first_name(qp->tterm.term_names)); -- multiples++; -+ && check_collisions(qp->tterm.term_names, -+ rp->tterm.term_names, -+ matchcount + 1)) { -+ if (!matchcount++) { -+ (void) fprintf(stderr, "\t%s\n", rp->tterm.term_names); -+ } -+ (void) fprintf(stderr, "and\t%s\n", qp->tterm.term_names); -+ if (!remove_collision(rp->tterm.term_names, -+ qp->tterm.term_names)) { -+ ++multiples; - } -- if (matchcount >= 1) -- (void) fprintf(stderr, " %s", _nc_first_name(rp->tterm.term_names)); - } - } -- if (matchcount >= 1) -- (void) putc('\n', stderr); - } - if (multiples > 0) - return (FALSE); -@@ -256,9 +345,7 @@ - DEBUG(2, ("%s: resolving use=%s (compiled)", - child, lookfor)); - -- rp = typeMalloc(ENTRY, 1); -- if (rp == 0) -- _nc_err_abort(MSG_NO_MEMORY); -+ TYPE_MALLOC(ENTRY, 1, rp); - rp->tterm = thisterm; - rp->nuses = 0; - rp->next = lastread; -@@ -378,7 +465,34 @@ - for_entry_list(qp) { - _nc_curr_line = (int) qp->startline; - _nc_set_type(_nc_first_name(qp->tterm.term_names)); -- _nc_check_termtype2(&qp->tterm, literal); -+ /* -+ * tic overrides this function pointer to provide more verbose -+ * checking. -+ */ -+ if (_nc_check_termtype2 != sanity_check2) { -+ SCREEN *save_SP = SP; -+ SCREEN fake_sp; -+ TERMINAL fake_tm; -+ TERMINAL *save_tm = cur_term; -+ -+ /* -+ * Setup so that tic can use ordinary terminfo interface -+ * to obtain capability information. -+ */ -+ memset(&fake_sp, 0, sizeof(fake_sp)); -+ memset(&fake_tm, 0, sizeof(fake_tm)); -+ fake_sp._term = &fake_tm; -+ fake_tm.type = qp->tterm; -+ _nc_set_screen(&fake_sp); -+ set_curterm(&fake_tm); -+ -+ _nc_check_termtype2(&qp->tterm, literal); -+ -+ _nc_set_screen(save_SP); -+ set_curterm(save_tm); -+ } else { -+ fixup_acsc(&qp->tterm, literal); -+ } - } - DEBUG(2, ("SANITY CHECK FINISHED")); - } -@@ -403,6 +517,17 @@ - #define CUR tp-> - - static void -+fixup_acsc(TERMTYPE *tp, int literal) -+{ -+ if (!literal) { -+ if (acs_chars == 0 -+ && enter_alt_charset_mode != 0 -+ && exit_alt_charset_mode != 0) -+ acs_chars = strdup(VT_ACSC); -+ } -+} -+ -+static void - sanity_check2(TERMTYPE *tp, bool literal) - { - if (!PRESENT(exit_attribute_mode)) { -@@ -422,16 +547,14 @@ - #endif /* __UNUSED__ */ - PAIRED(enter_standout_mode, exit_standout_mode); - PAIRED(enter_underline_mode, exit_underline_mode); -+ PAIRED(enter_italics_mode, exit_italics_mode); - } - - /* we do this check/fix in postprocess_termcap(), but some packagers - * prefer to bypass it... - */ - if (!literal) { -- if (acs_chars == 0 -- && enter_alt_charset_mode != 0 -- && exit_alt_charset_mode != 0) -- acs_chars = strdup(VT_ACSC); -+ fixup_acsc(tp, literal); - ANDMISSING(enter_alt_charset_mode, acs_chars); - ANDMISSING(exit_alt_charset_mode, acs_chars); - } -diff -Naur ncurses-5.9/ncurses/tinfo/comp_scan.c ncurses-5.9.patch/ncurses/tinfo/comp_scan.c ---- ncurses-5.9/ncurses/tinfo/comp_scan.c 2010-12-26 00:06:37.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/comp_scan.c 2014-09-01 16:33:22.421792231 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -50,7 +50,7 @@ - #include <ctype.h> - #include <tic.h> - --MODULE_ID("$Id: comp_scan.c,v 1.89 2010/12/25 23:06:37 tom Exp $") -+MODULE_ID("$Id: comp_scan.c,v 1.102 2013/11/16 19:57:50 tom Exp $") - - /* - * Maximum length of string capability we'll accept before raising an error. -@@ -61,6 +61,7 @@ - #define iswhite(ch) (ch == ' ' || ch == '\t') - - NCURSES_EXPORT_VAR (int) _nc_syntax = 0; /* termcap or terminfo? */ -+NCURSES_EXPORT_VAR (int) _nc_strict_bsd = 1; /* ncurses extended termcap? */ - NCURSES_EXPORT_VAR (long) _nc_curr_file_pos = 0; /* file offset of current line */ - NCURSES_EXPORT_VAR (long) _nc_comment_start = 0; /* start of comment range before name */ - NCURSES_EXPORT_VAR (long) _nc_comment_end = 0; /* end of comment range before name */ -@@ -127,14 +128,19 @@ - * Returns the final nonblank character on the current input buffer - */ - static int --last_char(void) -+last_char(int from_end) - { - size_t len = strlen(bufptr); -+ int result = 0; -+ - while (len--) { -- if (!isspace(UChar(bufptr[len]))) -- return bufptr[len]; -+ if (!isspace(UChar(bufptr[len]))) { -+ if (from_end < (int) len) -+ result = bufptr[(int) len - from_end]; -+ break; -+ } - } -- return 0; -+ return result; - } - - /* -@@ -195,7 +201,8 @@ - result = typeRealloc(char, allocated, result); - if (result == 0) - return (EOF); -- bufstart = result; -+ if (bufstart) -+ bufstart = result; - } - if (used == 0) - _nc_curr_file_pos = ftell(yyin); -@@ -212,7 +219,7 @@ - } - } else { - if (used != 0) -- strcat(result, "\n"); -+ _nc_STRCAT(result, "\n", allocated); - } - if ((bufptr = bufstart) != 0) { - used = strlen(bufptr); -@@ -256,12 +263,12 @@ - } - - static void --push_back(char c) -+push_back(int c) - /* push a character back onto the input stream */ - { - if (bufptr == bufstart) - _nc_syserr_abort("Can't backspace off beginning of line"); -- *--bufptr = c; -+ *--bufptr = (char) c; - _nc_curr_col--; - } - -@@ -299,6 +306,8 @@ - *tok_ptr++ = (char) ch; \ - *tok_ptr = '\0' - -+static char *tok_buf; -+ - /* - * int - * get_token() -@@ -336,15 +345,14 @@ - _nc_get_token(bool silent) - { - static const char terminfo_punct[] = "@%&*!#"; -- static char *tok_buf; - -- char *after_list; -- char *after_name; -+ char *after_name; /* after primary name */ -+ char *after_list; /* after primary and alias list */ - char *numchk; - char *tok_ptr; - char *s; - char numbuf[80]; -- int ch; -+ int ch, c0, c1; - int dot_flag = FALSE; - int type; - long number; -@@ -372,11 +380,10 @@ - - if (end_of_stream()) { - yyin = 0; -- next_char(); /* frees its allocated memory */ -+ (void) next_char(); /* frees its allocated memory */ - if (tok_buf != 0) { - if (_nc_curr_token.tk_name == tok_buf) - _nc_curr_token.tk_name = 0; -- FreeAndNull(tok_buf); - } - return (EOF); - } -@@ -390,6 +397,7 @@ - } - - ch = eat_escaped_newline(ch); -+ _nc_curr_token.tk_valstring = 0; - - #ifdef TRACE - old_line = _nc_curr_line; -@@ -424,7 +432,7 @@ - #if NCURSES_EXT_FUNCS - && !(ch == '.' && _nc_disable_period) - #endif -- && !strchr(terminfo_punct, (char) ch)) { -+ && ((strchr) (terminfo_punct, (char) ch) == 0)) { - if (!silent) - _nc_warning("Illegal character (expected alphanumeric or %s) - '%s'", - terminfo_punct, unctrl(UChar(ch))); -@@ -457,7 +465,7 @@ - after_list = tok_ptr; - if (after_name == 0) - after_name = tok_ptr; -- } else if (ch == ':' && last_char() != ',') { -+ } else if (ch == ':' && last_char(0) != ',') { - _nc_syntax = SYN_TERMCAP; - separator = ':'; - break; -@@ -471,12 +479,64 @@ - if (after_name == 0) - break; - /* -- * If we see a comma, we assume this is terminfo unless we -- * subsequently run into a colon. But we don't stop -- * looking for a colon until hitting a newline. This -- * allows commas to be embedded in description fields of -- * either syntax. -+ * We saw a comma, but are not entirely sure this is -+ * terminfo format, since we can still be parsing the -+ * description field (for either syntax). -+ * -+ * A properly formatted termcap line ends with either a -+ * colon, or a backslash after a colon. It is possible -+ * to have a backslash in the middle of a capability, but -+ * then there would be no leading whitespace on the next -+ * line - something we want to discourage. - */ -+ c0 = last_char(0); -+ c1 = last_char(1); -+ if (c1 != ':' && c0 != '\\' && c0 != ':') { -+ bool capability = FALSE; -+ -+ /* -+ * Since it is not termcap, assume the line is terminfo -+ * format. However, the comma can be embedded in a -+ * description field. It also can be a separator -+ * between a description field and a capability. -+ * -+ * Improve the guess by checking if the next word after -+ * the comma does not look like a capability. In that -+ * case, extend the description past the comma. -+ */ -+ for (s = bufptr; isspace(UChar(*s)); ++s) { -+ ; -+ } -+ if (islower(UChar(*s))) { -+ char *name = s; -+ while (isalnum(UChar(*s))) { -+ ++s; -+ } -+ if (*s == '#' || *s == '=' || *s == '@') { -+ /* -+ * Checking solely with syntax allows us to -+ * support extended capabilities with string -+ * values. -+ */ -+ capability = TRUE; -+ } else if (*s == ',') { -+ c0 = *s; -+ *s = '\0'; -+ /* -+ * Otherwise, we can handle predefined boolean -+ * capabilities, still aided by syntax. -+ */ -+ if (_nc_find_entry(name, -+ _nc_get_hash_table(FALSE))) { -+ capability = TRUE; -+ } -+ *s = (char) c0; -+ } -+ } -+ if (capability) { -+ break; -+ } -+ } - } else - ch = eat_escaped_newline(ch); - -@@ -748,7 +808,7 @@ - if (!(is7bits(c) && isprint(c))) { - _nc_warning("Illegal ^ character - '%s'", unctrl(UChar(c))); - } -- if (c == '?') { -+ if (c == '?' && (_nc_syntax != SYN_TERMCAP)) { - *(ptr++) = '\177'; - if (_nc_tracing) - _nc_warning("Allow ^? as synonym for \\177"); -@@ -758,23 +818,29 @@ - *(ptr++) = (char) (c); - } - } else if (c == '\\') { -+ bool strict_bsd = ((_nc_syntax == SYN_TERMCAP) && _nc_strict_bsd); -+ - c = next_char(); - if (c == EOF) - _nc_err_abort(MSG_NO_INPUTS); - -- if (c >= '0' && c <= '7') { -+#define isoctal(c) ((c) >= '0' && (c) <= '7') -+ -+ if (isoctal(c) || (strict_bsd && isdigit(c))) { - number = c - '0'; - for (i = 0; i < 2; i++) { - c = next_char(); - if (c == EOF) - _nc_err_abort(MSG_NO_INPUTS); - -- if (c < '0' || c > '7') { -+ if (!isoctal(c)) { - if (isdigit(c)) { -- _nc_warning("Non-octal digit `%c' in \\ sequence", c); -- /* allow the digit; it'll do less harm */ -+ if (!strict_bsd) { -+ _nc_warning("Non-octal digit `%c' in \\ sequence", c); -+ /* allow the digit; it'll do less harm */ -+ } - } else { -- push_back((char) c); -+ push_back(c); - break; - } - } -@@ -782,21 +848,16 @@ - number = number * 8 + c - '0'; - } - -- if (number == 0) -+ number = UChar(number); -+ if (number == 0 && !strict_bsd) - number = 0200; - *(ptr++) = (char) number; - } else { - switch (c) { - case 'E': -- case 'e': - *(ptr++) = '\033'; - break; - -- case 'a': -- *(ptr++) = '\007'; -- break; -- -- case 'l': - case 'n': - *(ptr++) = '\n'; - break; -@@ -809,10 +870,6 @@ - *(ptr++) = '\010'; - break; - -- case 's': -- *(ptr++) = ' '; -- break; -- - case 'f': - *(ptr++) = '\014'; - break; -@@ -833,16 +890,33 @@ - *(ptr++) = ','; - break; - -- case ':': -- *(ptr++) = ':'; -- break; -- - case '\n': - continue; - - default: -- _nc_warning("Illegal character '%s' in \\ sequence", -- unctrl(UChar(c))); -+ if ((_nc_syntax == SYN_TERMINFO) || !_nc_strict_bsd) { -+ switch (c) { -+ case 'a': -+ c = '\007'; -+ break; -+ case 'e': -+ c = '\033'; -+ break; -+ case 'l': -+ c = '\n'; -+ break; -+ case 's': -+ c = ' '; -+ break; -+ case ':': -+ c = ':'; -+ break; -+ default: -+ _nc_warning("Illegal character '%s' in \\ sequence", -+ unctrl(UChar(c))); -+ break; -+ } -+ } - /* FALLTHRU */ - case '|': - *(ptr++) = (char) c; -@@ -862,7 +936,7 @@ - - if (!ignored) { - if (_nc_curr_col <= 1) { -- push_back((char) c); -+ push_back(c); - c = '\n'; - break; - } -@@ -934,5 +1008,8 @@ - if (pushname != 0) { - FreeAndNull(pushname); - } -+ if (tok_buf != 0) { -+ FreeAndNull(tok_buf); -+ } - } - #endif -diff -Naur ncurses-5.9/ncurses/tinfo/db_iterator.c ncurses-5.9.patch/ncurses/tinfo/db_iterator.c ---- ncurses-5.9/ncurses/tinfo/db_iterator.c 2010-12-26 00:00:25.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/db_iterator.c 2014-09-01 16:33:22.421792231 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2006-2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2006-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,13 +36,142 @@ - - #include <curses.priv.h> - -+#include <time.h> - #include <tic.h> - --MODULE_ID("$Id: db_iterator.c,v 1.9 2010/12/25 23:00:25 tom Exp $") -+#if USE_HASHED_DB -+#include <hashed_db.h> -+#endif -+ -+MODULE_ID("$Id: db_iterator.c,v 1.38 2013/12/14 21:23:20 tom Exp $") - - #define HaveTicDirectory _nc_globals.have_tic_directory - #define KeepTicDirectory _nc_globals.keep_tic_directory - #define TicDirectory _nc_globals.tic_directory -+#define my_blob _nc_globals.dbd_blob -+#define my_list _nc_globals.dbd_list -+#define my_size _nc_globals.dbd_size -+#define my_time _nc_globals.dbd_time -+#define my_vars _nc_globals.dbd_vars -+ -+static void -+add_to_blob(const char *text, size_t limit) -+{ -+ (void) limit; -+ -+ if (*text != '\0') { -+ char *last = my_blob + strlen(my_blob); -+ if (last != my_blob) -+ *last++ = NCURSES_PATHSEP; -+ _nc_STRCPY(last, text, limit); -+ } -+} -+ -+static bool -+check_existence(const char *name, struct stat *sb) -+{ -+ bool result = FALSE; -+ -+ if (stat(name, sb) == 0 -+ && (S_ISDIR(sb->st_mode) || S_ISREG(sb->st_mode))) { -+ result = TRUE; -+ } -+#if USE_HASHED_DB -+ else if (strlen(name) < PATH_MAX - sizeof(DBM_SUFFIX)) { -+ char temp[PATH_MAX]; -+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "%s%s", name, DBM_SUFFIX); -+ if (stat(temp, sb) == 0 && S_ISREG(sb->st_mode)) { -+ result = TRUE; -+ } -+ } -+#endif -+ return result; -+} -+ -+/* -+ * Store the latest value of an environment variable in my_vars[] so we can -+ * detect if one changes, invalidating the cached search-list. -+ */ -+static bool -+update_getenv(const char *name, DBDIRS which) -+{ -+ bool result = FALSE; -+ -+ if (which < dbdLAST) { -+ char *value; -+ -+ if ((value = getenv(name)) == 0 || (value = strdup(value)) == 0) { -+ ; -+ } else if (my_vars[which].name == 0 || strcmp(my_vars[which].name, name)) { -+ FreeIfNeeded(my_vars[which].value); -+ my_vars[which].name = name; -+ my_vars[which].value = value; -+ result = TRUE; -+ } else if ((my_vars[which].value != 0) ^ (value != 0)) { -+ FreeIfNeeded(my_vars[which].value); -+ my_vars[which].value = value; -+ result = TRUE; -+ } else if (value != 0 && strcmp(value, my_vars[which].value)) { -+ FreeIfNeeded(my_vars[which].value); -+ my_vars[which].value = value; -+ result = TRUE; -+ } else { -+ free(value); -+ } -+ } -+ return result; -+} -+ -+static char * -+cache_getenv(const char *name, DBDIRS which) -+{ -+ char *result = 0; -+ -+ (void) update_getenv(name, which); -+ if (which < dbdLAST) { -+ result = my_vars[which].value; -+ } -+ return result; -+} -+ -+/* -+ * The cache expires if at least a second has passed since the initial lookup, -+ * or if one of the environment variables changed. -+ * -+ * Only a few applications use multiple lookups of terminal entries, seems that -+ * aside from bulk I/O such as tic and toe, that leaves interactive programs -+ * which should not be modifying the terminal databases in a way that would -+ * invalidate the search-list. -+ * -+ * The "1-second" is to allow for user-directed changes outside the program. -+ */ -+static bool -+cache_expired(void) -+{ -+ bool result = FALSE; -+ time_t now = time((time_t *) 0); -+ -+ if (now > my_time) { -+ result = TRUE; -+ } else { -+ DBDIRS n; -+ for (n = (DBDIRS) 0; n < dbdLAST; ++n) { -+ if (my_vars[n].name != 0 -+ && update_getenv(my_vars[n].name, n)) { -+ result = TRUE; -+ break; -+ } -+ } -+ } -+ return result; -+} -+ -+static void -+free_cache(void) -+{ -+ FreeAndNull(my_blob); -+ FreeAndNull(my_list); -+} - - /* - * Record the "official" location of the terminfo directory, according to -@@ -51,17 +180,20 @@ - NCURSES_EXPORT(const char *) - _nc_tic_dir(const char *path) - { -+ T(("_nc_tic_dir %s", NonNull(path))); - if (!KeepTicDirectory) { - if (path != 0) { - TicDirectory = path; - HaveTicDirectory = TRUE; -- } else if (!HaveTicDirectory && use_terminfo_vars()) { -- char *envp; -- if ((envp = getenv("TERMINFO")) != 0) -- return _nc_tic_dir(envp); -+ } else if (HaveTicDirectory == 0) { -+ if (use_terminfo_vars()) { -+ char *envp; -+ if ((envp = getenv("TERMINFO")) != 0) -+ return _nc_tic_dir(envp); -+ } - } - } -- return TicDirectory; -+ return TicDirectory ? TicDirectory : TERMINFO; - } - - /* -@@ -77,61 +209,16 @@ - } - - /* -- * Process the list of :-separated directories, looking for the terminal type. -- * We don't use strtok because it does not show us empty tokens. -- */ --#define ThisDbList _nc_globals.dbi_list --#define ThisDbSize _nc_globals.dbi_size -- --/* - * Cleanup. - */ - NCURSES_EXPORT(void) - _nc_last_db(void) - { -- if (ThisDbList != 0) { -- FreeAndNull(ThisDbList); -+ if (my_blob != 0 && cache_expired()) { -+ free_cache(); - } -- ThisDbSize = 0; - } - --/* The TERMINFO_DIRS value, if defined by the configure script, begins with a -- * ":", which will be interpreted as TERMINFO. -- */ --static const char * --next_list_item(const char *source, int *offset) --{ -- if (source != 0) { -- FreeIfNeeded(ThisDbList); -- ThisDbList = strdup(source); -- ThisDbSize = (int) strlen(source); -- } -- -- if (ThisDbList != 0 && ThisDbSize && *offset < ThisDbSize) { -- static char system_db[] = TERMINFO; -- char *result = ThisDbList + *offset; -- char *marker = strchr(result, NCURSES_PATHSEP); -- -- /* -- * Put a null on the marker if a separator was found. Set the offset -- * to the next position after the marker so we can call this function -- * again, using the data at the offset. -- */ -- if (marker == 0) { -- *offset += (int) strlen(result); -- } else { -- *marker++ = 0; -- *offset = (int) (marker - ThisDbList); -- } -- if (*result == 0 && result != (ThisDbList + ThisDbSize)) -- result = system_db; -- return result; -- } -- return 0; --} -- --#define NEXT_DBD(var, offset) next_list_item((*offset == 0) ? var : 0, offset) -- - /* - * This is a simple iterator which allows the caller to step through the - * possible locations for a terminfo directory. ncurses uses this to find -@@ -141,84 +228,186 @@ - _nc_next_db(DBDIRS * state, int *offset) - { - const char *result; -- char *envp; -- -- while (*state < dbdLAST) { -- DBDIRS next = (DBDIRS) ((int) (*state) + 1); - -+ (void) offset; -+ if ((int) *state < my_size -+ && my_list != 0 -+ && my_list[*state] != 0) { -+ result = my_list[*state]; -+ (*state)++; -+ } else { - result = 0; -+ } -+ if (result != 0) { -+ T(("_nc_next_db %d %s", *state, result)); -+ } -+ return result; -+} - -- switch (*state) { -- case dbdTIC: -- if (HaveTicDirectory) -- result = _nc_tic_dir(0); -- break; --#if USE_DATABASE -- case dbdEnvOnce: -- if (use_terminfo_vars()) { -- if ((envp = getenv("TERMINFO")) != 0) -- result = _nc_tic_dir(envp); -+NCURSES_EXPORT(void) -+_nc_first_db(DBDIRS * state, int *offset) -+{ -+ bool cache_has_expired = FALSE; -+ *state = dbdTIC; -+ *offset = 0; -+ -+ T(("_nc_first_db")); -+ -+ /* build a blob containing all of the strings we will use for a lookup -+ * table. -+ */ -+ if (my_blob == 0 || (cache_has_expired = cache_expired())) { -+ size_t blobsize = 0; -+ const char *values[dbdLAST]; -+ struct stat *my_stat; -+ int j, k; -+ -+ if (cache_has_expired) -+ free_cache(); -+ -+ for (j = 0; j < dbdLAST; ++j) -+ values[j] = 0; -+ -+ /* -+ * This is the first item in the list, and is used only when tic is -+ * writing to the database, as a performance improvement. -+ */ -+ values[dbdTIC] = TicDirectory; -+ -+#if NCURSES_USE_DATABASE -+#ifdef TERMINFO_DIRS -+ values[dbdCfgList] = TERMINFO_DIRS; -+#endif -+#ifdef TERMINFO -+ values[dbdCfgOnce] = TERMINFO; -+#endif -+#endif -+ -+#if NCURSES_USE_TERMCAP -+ values[dbdCfgList2] = TERMPATH; -+#endif -+ -+ if (use_terminfo_vars()) { -+#if NCURSES_USE_DATABASE -+ values[dbdEnvOnce] = cache_getenv("TERMINFO", dbdEnvOnce); -+ values[dbdHome] = _nc_home_terminfo(); -+ (void) cache_getenv("HOME", dbdHome); -+ values[dbdEnvList] = cache_getenv("TERMINFO_DIRS", dbdEnvList); -+ -+#endif -+#if NCURSES_USE_TERMCAP -+ values[dbdEnvOnce2] = cache_getenv("TERMCAP", dbdEnvOnce2); -+ /* only use $TERMCAP if it is an absolute path */ -+ if (values[dbdEnvOnce2] != 0 -+ && *values[dbdEnvOnce2] != '/') { -+ values[dbdEnvOnce2] = 0; - } -- break; -- case dbdHome: -- if (use_terminfo_vars()) { -- result = _nc_home_terminfo(); -+ values[dbdEnvList2] = cache_getenv("TERMPATH", dbdEnvList2); -+#endif /* NCURSES_USE_TERMCAP */ -+ } -+ -+ for (j = 0; j < dbdLAST; ++j) { -+ if (values[j] == 0) -+ values[j] = ""; -+ blobsize += 2 + strlen(values[j]); -+ } -+ -+ my_blob = malloc(blobsize); -+ if (my_blob != 0) { -+ *my_blob = '\0'; -+ for (j = 0; j < dbdLAST; ++j) { -+ add_to_blob(values[j], blobsize); - } -- break; -- case dbdEnvList: -- if (use_terminfo_vars()) { -- if ((result = NEXT_DBD(getenv("TERMINFO_DIRS"), offset)) != 0) -- next = *state; -+ -+ /* Now, build an array which will be pointers to the distinct -+ * strings in the blob. -+ */ -+ blobsize = 2; -+ for (j = 0; my_blob[j] != '\0'; ++j) { -+ if (my_blob[j] == NCURSES_PATHSEP) -+ ++blobsize; - } -- break; -- case dbdCfgList: --#ifdef TERMINFO_DIRS -- if ((result = NEXT_DBD(TERMINFO_DIRS, offset)) != 0) -- next = *state; -+ my_list = typeCalloc(char *, blobsize); -+ my_stat = typeCalloc(struct stat, blobsize); -+ if (my_list != 0 && my_stat != 0) { -+ k = 0; -+ my_list[k++] = my_blob; -+ for (j = 0; my_blob[j] != '\0'; ++j) { -+ if (my_blob[j] == NCURSES_PATHSEP) { -+ my_blob[j] = '\0'; -+ my_list[k++] = &my_blob[j + 1]; -+ } -+ } -+ -+ /* -+ * Eliminate duplicates from the list. -+ */ -+ for (j = 0; my_list[j] != 0; ++j) { -+#ifdef TERMINFO -+ if (*my_list[j] == '\0') -+ my_list[j] = strdup(TERMINFO); - #endif -- break; -- case dbdCfgOnce: --#ifndef TERMINFO_DIRS -- result = TERMINFO; --#endif -- break; --#endif /* USE_DATABASE */ --#if USE_TERMCAP -- case dbdEnvOnce2: -- if (use_terminfo_vars()) { -- if ((envp = getenv("TERMCAP")) != 0) -- result = _nc_tic_dir(envp); -- } -- break; -- case dbdEnvList2: -- if (use_terminfo_vars()) { -- if ((result = NEXT_DBD(getenv("TERMPATH"), offset)) != 0) -- next = *state; -+ for (k = 0; k < j; ++k) { -+ if (!strcmp(my_list[j], my_list[k])) { -+ k = j - 1; -+ while ((my_list[j] = my_list[j + 1]) != 0) { -+ ++j; -+ } -+ j = k; -+ break; -+ } -+ } -+ } -+ -+ /* -+ * Eliminate non-existent databases, and those that happen to -+ * be symlinked to another location. -+ */ -+ for (j = 0; my_list[j] != 0; ++j) { -+ bool found = check_existence(my_list[j], &my_stat[j]); -+#if HAVE_LINK -+ if (found) { -+ for (k = 0; k < j; ++k) { -+ if (my_stat[j].st_dev == my_stat[k].st_dev -+ && my_stat[j].st_ino == my_stat[k].st_ino) { -+ found = FALSE; -+ break; -+ } -+ } -+ } -+#endif -+ if (!found) { -+ k = j; -+ while ((my_list[k] = my_list[k + 1]) != 0) { -+ ++k; -+ } -+ --j; -+ } -+ } -+ my_size = j; -+ my_time = time((time_t *) 0); -+ } else { -+ FreeAndNull(my_blob); - } -- break; -- case dbdCfgList2: -- if ((result = NEXT_DBD(TERMPATH, offset)) != 0) -- next = *state; -- break; --#endif /* USE_TERMCAP */ -- case dbdLAST: -- break; -- } -- if (*state != next) { -- *state = next; -- *offset = 0; -- _nc_last_db(); -- } -- if (result != 0) { -- return result; -+ free(my_stat); - } - } -- return 0; - } - --NCURSES_EXPORT(void) --_nc_first_db(DBDIRS * state, int *offset) -+#if NO_LEAKS -+void -+_nc_db_iterator_leaks(void) - { -- *state = dbdTIC; -- *offset = 0; -+ DBDIRS which; -+ -+ if (my_blob != 0) -+ FreeAndNull(my_blob); -+ if (my_list != 0) -+ FreeAndNull(my_list); -+ for (which = 0; (int) which < dbdLAST; ++which) { -+ my_vars[which].name = 0; -+ FreeIfNeeded(my_vars[which].value); -+ my_vars[which].value = 0; -+ } - } -+#endif -diff -Naur ncurses-5.9/ncurses/tinfo/doalloc.c ncurses-5.9.patch/ncurses/tinfo/doalloc.c ---- ncurses-5.9/ncurses/tinfo/doalloc.c 2002-08-31 23:48:11.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/doalloc.c 2014-09-01 16:33:22.421792231 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998,2000 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2000,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: doalloc.c,v 1.8 2002/08/31 21:48:11 Philippe.Blain Exp $") -+MODULE_ID("$Id: doalloc.c,v 1.11 2012/11/03 19:27:41 tom Exp $") - - NCURSES_EXPORT(void *) - _nc_doalloc(void *oldp, size_t amount) -@@ -56,20 +56,3 @@ - } - return newp; - } -- --#if !HAVE_STRDUP --NCURSES_EXPORT(char *) --_nc_strdup(const char *src) --{ -- char *dst; -- if (src != 0) { -- dst = typeMalloc(char, strlen(src) + 1); -- if (dst != 0) { -- (void) strcpy(dst, src); -- } -- } else { -- dst = 0; -- } -- return dst; --} --#endif -diff -Naur ncurses-5.9/ncurses/tinfo/entries.c ncurses-5.9.patch/ncurses/tinfo/entries.c ---- ncurses-5.9/ncurses/tinfo/entries.c 2010-01-23 18:57:43.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/entries.c 2014-09-01 16:33:22.421792231 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2006-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2006-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - - #include <tic.h> - --MODULE_ID("$Id: entries.c,v 1.17 2010/01/23 17:57:43 tom Exp $") -+MODULE_ID("$Id: entries.c,v 1.21 2012/05/05 20:33:44 tom Exp $") - - /**************************************************************************** - * -@@ -96,6 +96,9 @@ - if (last != 0) { - last->next = ep->next; - } -+ if (ep->next != 0) { -+ ep->next->last = last; -+ } - if (ep == _nc_head) { - _nc_head = ep->next; - } -@@ -128,19 +131,21 @@ - _nc_free_entries(_nc_head); - _nc_get_type(0); - _nc_first_name(0); -+ _nc_db_iterator_leaks(); - _nc_keyname_leaks(); - #if BROKEN_LINKER || USE_REENTRANT - _nc_names_leaks(); - _nc_codes_leaks(); - FreeIfNeeded(_nc_prescreen.real_acs_map); - #endif -+ _nc_comp_error_leaks(); - - if ((s = _nc_home_terminfo()) != 0) - free(s); - - #ifdef TRACE - trace(0); -- _nc_trace_buf(-1, 0); -+ _nc_trace_buf(-1, (size_t) 0); - #endif - - #endif /* NO_LEAKS */ -diff -Naur ncurses-5.9/ncurses/tinfo/getenv_num.c ncurses-5.9.patch/ncurses/tinfo/getenv_num.c ---- ncurses-5.9/ncurses/tinfo/getenv_num.c 2000-12-10 03:55:07.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/getenv_num.c 2014-09-01 16:33:22.421792231 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998,2000 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,7 +36,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: getenv_num.c,v 1.3 2000/12/10 02:55:07 tom Exp $") -+MODULE_ID("$Id: getenv_num.c,v 1.6 2013/09/28 20:25:08 tom Exp $") - - NCURSES_EXPORT(int) - _nc_getenv_num(const char *name) -@@ -54,3 +54,20 @@ - - return (int) value; - } -+ -+NCURSES_EXPORT(void) -+_nc_setenv_num(const char *name, int value) -+{ -+ if (name != 0 && value >= 0) { -+ char buffer[128]; -+#if HAVE_SETENV -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) "%d", value); -+ setenv(name, buffer, 1); -+#elif HAVE_PUTENV -+ char *s; -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) "%s=%d", name, value); -+ if ((s = strdup(buffer)) != 0) -+ putenv(s); -+#endif -+ } -+} -diff -Naur ncurses-5.9/ncurses/tinfo/hashed_db.c ncurses-5.9.patch/ncurses/tinfo/hashed_db.c ---- ncurses-5.9/ncurses/tinfo/hashed_db.c 2008-12-13 21:59:02.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/hashed_db.c 2014-09-01 16:33:22.421792231 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2006,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 2006-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,12 +36,81 @@ - - #if USE_HASHED_DB - --MODULE_ID("$Id: hashed_db.c,v 1.14 2008/12/13 20:59:02 tom Exp $") -+MODULE_ID("$Id: hashed_db.c,v 1.17 2013/12/15 00:33:01 tom Exp $") - - #if HASHED_DB_API >= 2 - static DBC *cursor; - #endif - -+typedef struct _myconn { -+ struct _myconn *next; -+ DB *db; -+ char *path; -+ bool modify; -+} MYCONN; -+ -+static MYCONN *connections; -+ -+static void -+cleanup(void) -+{ -+ while (connections != 0) { -+ _nc_db_close(connections->db); -+ } -+} -+ -+static DB * -+find_connection(const char *path, bool modify) -+{ -+ DB *result = 0; -+ MYCONN *p; -+ -+ for (p = connections; p != 0; p = p->next) { -+ if (!strcmp(p->path, path) && p->modify == modify) { -+ result = p->db; -+ break; -+ } -+ } -+ -+ return result; -+} -+ -+static void -+drop_connection(DB * db) -+{ -+ MYCONN *p, *q; -+ -+ for (p = connections, q = 0; p != 0; q = p, p = p->next) { -+ if (p->db == db) { -+ if (q != 0) -+ q->next = p->next; -+ else -+ connections = p->next; -+ free(p->path); -+ free(p); -+ break; -+ } -+ } -+} -+ -+static void -+make_connection(DB * db, const char *path, bool modify) -+{ -+ MYCONN *p = typeCalloc(MYCONN, 1); -+ -+ if (p != 0) { -+ p->db = db; -+ p->path = strdup(path); -+ p->modify = modify; -+ if (p->path != 0) { -+ p->next = connections; -+ connections = p; -+ } else { -+ free(p); -+ } -+ } -+} -+ - /* - * Open the database. - */ -@@ -51,50 +120,57 @@ - DB *result = 0; - int code; - -+ if (connections == 0) -+ atexit(cleanup); -+ -+ if ((result = find_connection(path, modify)) == 0) { -+ - #if HASHED_DB_API >= 4 -- db_create(&result, NULL, 0); -- if ((code = result->open(result, -- NULL, -- path, -- NULL, -- DB_HASH, -- modify ? DB_CREATE : DB_RDONLY, -- 0644)) != 0) { -- result = 0; -- } -+ db_create(&result, NULL, 0); -+ if ((code = result->open(result, -+ NULL, -+ path, -+ NULL, -+ DB_HASH, -+ modify ? DB_CREATE : DB_RDONLY, -+ 0644)) != 0) { -+ result = 0; -+ } - #elif HASHED_DB_API >= 3 -- db_create(&result, NULL, 0); -- if ((code = result->open(result, -- path, -- NULL, -- DB_HASH, -- modify ? DB_CREATE : DB_RDONLY, -- 0644)) != 0) { -- result = 0; -- } -+ db_create(&result, NULL, 0); -+ if ((code = result->open(result, -+ path, -+ NULL, -+ DB_HASH, -+ modify ? DB_CREATE : DB_RDONLY, -+ 0644)) != 0) { -+ result = 0; -+ } - #elif HASHED_DB_API >= 2 -- if ((code = db_open(path, -- DB_HASH, -- modify ? DB_CREATE : DB_RDONLY, -- 0644, -- (DB_ENV *) 0, -- (DB_INFO *) 0, -- &result)) != 0) { -- result = 0; -- } --#else -- if ((result = dbopen(path, -- modify ? (O_CREAT | O_RDWR) : O_RDONLY, -- 0644, -- DB_HASH, -- NULL)) == 0) { -- code = errno; -- } -+ if ((code = db_open(path, -+ DB_HASH, -+ modify ? DB_CREATE : DB_RDONLY, -+ 0644, -+ (DB_ENV *) 0, -+ (DB_INFO *) 0, -+ &result)) != 0) { -+ result = 0; -+ } -+#else -+ if ((result = dbopen(path, -+ modify ? (O_CREAT | O_RDWR) : O_RDONLY, -+ 0644, -+ DB_HASH, -+ NULL)) == 0) { -+ code = errno; -+ } - #endif -- if (result != 0) { -- T(("opened %s", path)); -- } else { -- T(("cannot open %s: %s", path, strerror(code))); -+ if (result != 0) { -+ make_connection(result, path, modify); -+ T(("opened %s", path)); -+ } else { -+ T(("cannot open %s: %s", path, strerror(code))); -+ } - } - return result; - } -@@ -107,6 +183,7 @@ - { - int result; - -+ drop_connection(db); - #if HASHED_DB_API >= 2 - result = db->close(db, 0); - #else -@@ -209,7 +286,7 @@ - _nc_db_have_index(DBT * key, DBT * data, char **buffer, int *size) - { - bool result = FALSE; -- int used = data->size - 1; -+ int used = (int) data->size - 1; - char *have = (char *) data->data; - - (void) key; -@@ -232,7 +309,7 @@ - _nc_db_have_data(DBT * key, DBT * data, char **buffer, int *size) - { - bool result = FALSE; -- int used = data->size - 1; -+ int used = (int) data->size - 1; - char *have = (char *) data->data; - - if (*have++ == 0) { -diff -Naur ncurses-5.9/ncurses/tinfo/home_terminfo.c ncurses-5.9.patch/ncurses/tinfo/home_terminfo.c ---- ncurses-5.9/ncurses/tinfo/home_terminfo.c 2010-12-26 00:43:58.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/home_terminfo.c 2014-09-01 16:33:22.421792231 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,7 +37,7 @@ - #include <curses.priv.h> - #include <tic.h> - --MODULE_ID("$Id: home_terminfo.c,v 1.12 2010/12/25 23:43:58 tom Exp $") -+MODULE_ID("$Id: home_terminfo.c,v 1.15 2012/10/27 21:49:14 tom Exp $") - - /* ncurses extension...fall back on user's private directory */ - -@@ -54,10 +54,8 @@ - if (MyBuffer == 0) { - if ((home = getenv("HOME")) != 0) { - size_t want = (strlen(home) + sizeof(PRIVATE_INFO)); -- MyBuffer = typeMalloc(char, want); -- if (MyBuffer == 0) -- _nc_err_abort(MSG_NO_MEMORY); -- (void) sprintf(MyBuffer, PRIVATE_INFO, home); -+ TYPE_MALLOC(char, want, MyBuffer); -+ _nc_SPRINTF(MyBuffer, _nc_SLIMIT(want) PRIVATE_INFO, home); - } - } - result = MyBuffer; -diff -Naur ncurses-5.9/ncurses/tinfo/lib_acs.c ncurses-5.9.patch/ncurses/tinfo/lib_acs.c ---- ncurses-5.9/ncurses/tinfo/lib_acs.c 2010-12-26 00:00:45.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_acs.c 2014-09-01 16:33:22.422792233 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_acs.c,v 1.43 2010/12/25 23:00:45 tom Exp $") -+MODULE_ID("$Id: lib_acs.c,v 1.45 2014/03/08 20:32:59 tom Exp $") - - #if BROKEN_LINKER || USE_REENTRANT - #define MyBuffer _nc_prescreen.real_acs_map -@@ -166,11 +166,10 @@ - real_map['E'] = '+'; /* large plus or crossover */ - - #ifdef USE_TERM_DRIVER -- CallDriver_2(SP_PARM, initacs, real_map, fake_map); -+ CallDriver_2(SP_PARM, td_initacs, real_map, fake_map); - #else - if (ena_acs != NULL) { -- TPUTS_TRACE("ena_acs"); -- putp(ena_acs); -+ NCURSES_PUTP2("ena_acs", ena_acs); - } - #if NCURSES_EXT_FUNCS - /* -diff -Naur ncurses-5.9/ncurses/tinfo/lib_baudrate.c ncurses-5.9.patch/ncurses/tinfo/lib_baudrate.c ---- ncurses-5.9/ncurses/tinfo/lib_baudrate.c 2010-12-19 02:50:50.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_baudrate.c 2014-09-01 16:33:22.422792233 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -49,7 +49,7 @@ - * of the indices up to B115200 fit nicely in a 'short', allowing us to retain - * ospeed's type for compatibility. - */ --#if (defined(__FreeBSD__) && (__FreeBSD_version < 700000)) || defined(__NetBSD__) || defined(__OpenBSD__) -+#if NCURSES_OSPEED_COMPAT && ((defined(__FreeBSD__) && (__FreeBSD_version < 700000)) || defined(__NetBSD__) || defined(__OpenBSD__)) - #undef B0 - #undef B50 - #undef B75 -@@ -79,7 +79,7 @@ - #undef USE_OLD_TTY - #endif /* USE_OLD_TTY */ - --MODULE_ID("$Id: lib_baudrate.c,v 1.31 2010/12/19 01:50:50 tom Exp $") -+MODULE_ID("$Id: lib_baudrate.c,v 1.34 2013/12/15 01:29:02 tom Exp $") - - /* - * int -@@ -90,54 +90,55 @@ - */ - - struct speed { -- int s; /* value for 'ospeed' is an index */ -+ NCURSES_OSPEED s; /* values for 'ospeed' */ - int sp; /* the actual speed */ - }; - -+#define DATA(number) { B##number, number } -+ - static struct speed const speeds[] = - { -- {B0, 0}, -- {B50, 50}, -- {B75, 75}, -- {B110, 110}, -- {B134, 134}, -- {B150, 150}, -- {B200, 200}, -- {B300, 300}, -- {B600, 600}, -- {B1200, 1200}, -- {B1800, 1800}, -- {B2400, 2400}, -- {B4800, 4800}, -- {B9600, 9600}, -+ DATA(0), -+ DATA(50), -+ DATA(75), -+ DATA(110), -+ DATA(134), -+ DATA(150), -+ DATA(200), -+ DATA(300), -+ DATA(600), -+ DATA(1200), -+ DATA(1800), -+ DATA(2400), -+ DATA(4800), -+ DATA(9600), - #ifdef B19200 -- {B19200, 19200}, --#else --#ifdef EXTA -+ DATA(19200), -+#elif defined(EXTA) - {EXTA, 19200}, - #endif --#endif - #ifdef B38400 -- {B38400, 38400}, --#else --#ifdef EXTB -+ DATA(38400), -+#elif defined(EXTB) - {EXTB, 38400}, - #endif --#endif - #ifdef B57600 -- {B57600, 57600}, -+ DATA(57600), - #endif -+ /* ifdef to prevent overflow when OLD_TTY is not available */ -+#if !(NCURSES_OSPEED_COMPAT && defined(__FreeBSD__) && (__FreeBSD_version > 700000)) - #ifdef B115200 -- {B115200, 115200}, -+ DATA(115200), - #endif - #ifdef B230400 -- {B230400, 230400}, -+ DATA(230400), - #endif - #ifdef B460800 -- {B460800, 460800}, -+ DATA(460800), - #endif - #ifdef B921600 -- {B921600, 921600}, -+ DATA(921600), -+#endif - #endif - }; - -@@ -167,7 +168,7 @@ - } - } - #if !USE_REENTRANT -- if (OSpeed == last_OSpeed) { -+ if (OSpeed != last_OSpeed) { - last_OSpeed = OSpeed; - last_baudrate = result; - } -@@ -219,8 +220,8 @@ - - if (IsValidTIScreen(SP_PARM)) { - #ifdef USE_OLD_TTY -- result = cfgetospeed(&(TerminalOf(SP_PARM)->Nttyb)); -- ospeed = _nc_ospeed(result); -+ result = (int) cfgetospeed(&(TerminalOf(SP_PARM)->Nttyb)); -+ ospeed = (NCURSES_OSPEED) _nc_ospeed(result); - #else /* !USE_OLD_TTY */ - #ifdef TERMIOS - ospeed = (NCURSES_OSPEED) cfgetospeed(&(TerminalOf(SP_PARM)->Nttyb)); -diff -Naur ncurses-5.9/ncurses/tinfo/lib_cur_term.c ncurses-5.9.patch/ncurses/tinfo/lib_cur_term.c ---- ncurses-5.9/ncurses/tinfo/lib_cur_term.c 2010-12-19 02:38:45.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_cur_term.c 2014-09-01 16:33:22.422792233 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,14 +39,12 @@ - #include <curses.priv.h> - #include <termcap.h> /* ospeed */ - --MODULE_ID("$Id: lib_cur_term.c,v 1.30 2010/12/19 01:38:45 tom Exp $") -+MODULE_ID("$Id: lib_cur_term.c,v 1.33 2014/03/08 20:32:59 tom Exp $") - - #undef CUR - #define CUR termp->type. - --#if BROKEN_LINKER && !USE_REENTRANT --NCURSES_EXPORT_VAR(TERMINAL *) cur_term = 0; --#elif BROKEN_LINKER || USE_REENTRANT -+#if USE_REENTRANT - - NCURSES_EXPORT(TERMINAL *) - NCURSES_SP_NAME(_nc_get_cur_term) (NCURSES_SP_DCL0) -@@ -55,6 +53,7 @@ - } - - #if NCURSES_SP_FUNCS -+ - NCURSES_EXPORT(TERMINAL *) - _nc_get_cur_term(void) - { -@@ -87,10 +86,10 @@ - oldterm = cur_term; - if (SP_PARM) - SP_PARM->_term = termp; --#if BROKEN_LINKER && !USE_REENTRANT -- cur_term = termp; --#else -+#if USE_REENTRANT - CurTerm = termp; -+#else -+ cur_term = termp; - #endif - if (termp != 0) { - #ifdef USE_TERM_DRIVER -@@ -133,9 +132,7 @@ - TERMINAL_CONTROL_BLOCK *TCB = (TERMINAL_CONTROL_BLOCK *) termp; - #endif - TERMINAL *cur = ( --#if BROKEN_LINKER && !USE_REENTRANT -- cur_term --#elif BROKEN_LINKER || USE_REENTRANT -+#if USE_REENTRANT - NCURSES_SP_NAME(_nc_get_cur_term) (NCURSES_SP_ARG) - #else - cur_term -@@ -148,12 +145,13 @@ - - FreeIfNeeded(termp->_termname); - #if USE_HOME_TERMINFO -- if (_nc_globals.home_terminfo != 0) -+ if (_nc_globals.home_terminfo != 0) { - FreeAndNull(_nc_globals.home_terminfo); -+ } - #endif - #ifdef USE_TERM_DRIVER - if (TCB->drv) -- TCB->drv->release(TCB); -+ TCB->drv->td_release(TCB); - #endif - free(termp); - -diff -Naur ncurses-5.9/ncurses/tinfo/lib_data.c ncurses-5.9.patch/ncurses/tinfo/lib_data.c ---- ncurses-5.9/ncurses/tinfo/lib_data.c 2010-05-16 00:06:56.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_data.c 2014-09-01 16:33:22.422792233 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,7 +42,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_data.c,v 1.61 2010/05/15 22:06:56 tom Exp $") -+MODULE_ID("$Id: lib_data.c,v 1.66 2013/08/24 17:28:24 tom Exp $") - - /* - * OS/2's native linker complains if we don't initialize public data when -@@ -114,6 +114,7 @@ - #define TGETENT_0s { TGETENT_0, TGETENT_0, TGETENT_0, TGETENT_0 } - - NCURSES_EXPORT_VAR(NCURSES_GLOBALS) _nc_globals = { -+ 0, /* have_sigtstp */ - 0, /* have_sigwinch */ - 0, /* cleanup_nested */ - -@@ -125,13 +126,14 @@ - - FALSE, /* have_tic_directory */ - FALSE, /* keep_tic_directory */ -- TERMINFO, /* tic_directory */ -+ 0, /* tic_directory */ - - NULL, /* dbi_list */ - 0, /* dbi_size */ - - NULL, /* first_name */ - NULL, /* keyname_table */ -+ 0, /* init_keyname */ - - 0, /* slk_format */ - -@@ -142,6 +144,12 @@ - 0, /* tgetent_index */ - 0, /* tgetent_sequence */ - -+ 0, /* dbd_blob */ -+ 0, /* dbd_list */ -+ 0, /* dbd_size */ -+ 0, /* dbd_time */ -+ { { 0, 0 } }, /* dbd_vars */ -+ - #ifndef USE_SP_WINDOWLIST - 0, /* _nc_windowlist */ - #endif -@@ -249,6 +257,7 @@ - NULL, /* _tputs_trace */ - #endif - #endif -+ FALSE, /* use_tioctl */ - }; - /* *INDENT-ON* */ - -diff -Naur ncurses-5.9/ncurses/tinfo/lib_has_cap.c ncurses-5.9.patch/ncurses/tinfo/lib_has_cap.c ---- ncurses-5.9/ncurses/tinfo/lib_has_cap.c 2009-10-25 00:15:47.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_has_cap.c 2014-09-01 16:33:22.422792233 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -46,7 +46,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_has_cap.c,v 1.9 2009/10/24 22:15:47 tom Exp $") -+MODULE_ID("$Id: lib_has_cap.c,v 1.10 2013/11/16 19:57:22 tom Exp $") - - NCURSES_EXPORT(bool) - NCURSES_SP_NAME(has_ic) (NCURSES_SP_DCL0) -@@ -55,7 +55,7 @@ - - T((T_CALLED("has_ic(%p)"), (void *) SP_PARM)); - -- if (IsValidTIScreen(SP_PARM) && IsTermInfo(SP_PARM)) { -+ if (HasTInfoTerminal(SP_PARM)) { - code = ((insert_character || parm_ich - || (enter_insert_mode && exit_insert_mode)) - && (delete_character || parm_dch)) ? TRUE : FALSE; -@@ -77,7 +77,7 @@ - { - bool code = FALSE; - T((T_CALLED("has_il(%p)"), (void *) SP_PARM)); -- if (IsValidTIScreen(SP_PARM) && IsTermInfo(SP_PARM)) { -+ if (HasTInfoTerminal(SP_PARM)) { - code = ((insert_line || parm_insert_line) - && (delete_line || parm_delete_line)) ? TRUE : FALSE; - } -diff -Naur ncurses-5.9/ncurses/tinfo/lib_napms.c ncurses-5.9.patch/ncurses/tinfo/lib_napms.c ---- ncurses-5.9/ncurses/tinfo/lib_napms.c 2009-11-07 21:37:30.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_napms.c 2014-09-01 16:33:22.422792233 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -51,17 +51,21 @@ - #endif - #endif - --MODULE_ID("$Id: lib_napms.c,v 1.20 2009/11/07 20:37:30 tom Exp $") -+MODULE_ID("$Id: lib_napms.c,v 1.24 2014/03/08 20:32:59 tom Exp $") - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(napms) (NCURSES_SP_DCLx int ms) - { -- (void) SP_PARM; - T((T_CALLED("napms(%d)"), ms)); - - #ifdef USE_TERM_DRIVER -- CallDriver_1(SP_PARM, nap, ms); -+ if (HasTerminal(SP_PARM)) { -+ CallDriver_1(SP_PARM, td_nap, ms); -+ } - #else /* !USE_TERM_DRIVER */ -+#if NCURSES_SP_FUNCS -+ (void) sp; -+#endif - #if HAVE_NANOSLEEP - { - struct timespec request, remaining; -diff -Naur ncurses-5.9/ncurses/tinfo/lib_options.c ncurses-5.9.patch/ncurses/tinfo/lib_options.c ---- ncurses-5.9/ncurses/tinfo/lib_options.c 2009-10-24 23:56:15.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_options.c 2014-09-01 16:33:22.422792233 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -46,7 +46,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_options.c,v 1.71 2009/10/24 21:56:15 tom Exp $") -+MODULE_ID("$Id: lib_options.c,v 1.77 2014/03/08 20:32:59 tom Exp $") - - NCURSES_EXPORT(int) - idlok(WINDOW *win, bool flag) -@@ -56,7 +56,11 @@ - - if (win) { - SCREEN *sp = _nc_screen_of(win); -- if (sp && IsTermInfo(sp)) { -+ if (sp != 0 -+#ifdef USE_TERM_DRIVER -+ && IsTermInfo(sp) -+#endif -+ ) { - sp->_nc_sp_idlok = - win->_idlok = (flag && (NCURSES_SP_NAME(has_il) (NCURSES_SP_ARG) - || change_scroll_region)); -@@ -165,16 +169,16 @@ - #ifdef USE_TERM_DRIVER - if (IsTermInfo(sp)) { - if (flag) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "meta_on", meta_on); -+ NCURSES_PUTP2("meta_on", meta_on); - } else { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "meta_off", meta_off); -+ NCURSES_PUTP2("meta_off", meta_off); - } - } - #else - if (flag) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "meta_on", meta_on); -+ NCURSES_PUTP2("meta_on", meta_on); - } else { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "meta_off", meta_off); -+ NCURSES_PUTP2("meta_off", meta_off); - } - #endif - result = OK; -@@ -199,19 +203,16 @@ - if (!bBuiltIn) { - switch (vis) { - case 2: -- code = NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_ARGx -- "cursor_visible", -- cursor_visible); -+ code = NCURSES_PUTP2_FLUSH("cursor_visible", -+ cursor_visible); - break; - case 1: -- code = NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_ARGx -- "cursor_normal", -- cursor_normal); -+ code = NCURSES_PUTP2_FLUSH("cursor_normal", -+ cursor_normal); - break; - case 0: -- code = NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_ARGx -- "cursor_invisible", -- cursor_invisible); -+ code = NCURSES_PUTP2_FLUSH("cursor_invisible", -+ cursor_invisible); - break; - } - } else -@@ -301,7 +302,7 @@ - NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_DCLx - const char *name, const char *value) - { -- int rc = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx name, value); -+ int rc = NCURSES_PUTP2(name, value); - if (rc != ERR) { - _nc_flush(); - } -@@ -324,7 +325,7 @@ - * the terminal state _before_ switching modes. - */ - NCURSES_EXPORT(int) --_nc_keypad(SCREEN *sp, bool flag) -+_nc_keypad(SCREEN *sp, int flag) - { - int rc = ERR; - -@@ -349,18 +350,14 @@ - #endif - { - #ifdef USE_TERM_DRIVER -- rc = CallDriver_1(sp, kpad, flag); -+ rc = CallDriver_1(sp, td_kpad, flag); - if (rc == OK) - sp->_keypad_on = flag; - #else - if (flag) { -- (void) NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_ARGx -- "keypad_xmit", -- keypad_xmit); -+ (void) NCURSES_PUTP2_FLUSH("keypad_xmit", keypad_xmit); - } else if (!flag && keypad_local) { -- (void) NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_ARGx -- "keypad_local", -- keypad_local); -+ (void) NCURSES_PUTP2_FLUSH("keypad_local", keypad_local); - } - - if (flag && !sp->_tried) { -diff -Naur ncurses-5.9/ncurses/tinfo/lib_print.c ncurses-5.9.patch/ncurses/tinfo/lib_print.c ---- ncurses-5.9/ncurses/tinfo/lib_print.c 2010-06-06 00:18:35.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_print.c 2014-09-01 16:33:22.423792234 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_print.c,v 1.20 2010/06/05 22:18:35 tom Exp $") -+MODULE_ID("$Id: lib_print.c,v 1.23 2012/02/22 22:34:31 tom Exp $") - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(mcprint) (NCURSES_SP_DCLx char *data, int len) -@@ -76,10 +76,10 @@ - return (ERR); - } - -- (void) strcpy(mybuf, switchon); -- memcpy(mybuf + onsize, data, (unsigned) len); -+ _nc_STRCPY(mybuf, switchon, need); -+ memcpy(mybuf + onsize, data, (size_t) len); - if (offsize) -- (void) strcpy(mybuf + onsize + len, prtr_off); -+ _nc_STRCPY(mybuf + onsize + len, prtr_off, need); - - /* - * We're relying on the atomicity of UNIX writes here. The -diff -Naur ncurses-5.9/ncurses/tinfo/lib_raw.c ncurses-5.9.patch/ncurses/tinfo/lib_raw.c ---- ncurses-5.9/ncurses/tinfo/lib_raw.c 2010-04-25 01:49:12.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_raw.c 2014-09-01 16:33:22.423792234 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -49,11 +49,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_raw.c,v 1.19 2010/04/24 23:49:12 tom Exp $") -- --#if SVR4_TERMIO && !defined(_POSIX_SOURCE) --#define _POSIX_SOURCE --#endif -+MODULE_ID("$Id: lib_raw.c,v 1.21 2012/01/21 19:21:29 KO.Myung-Hun Exp $") - - #if HAVE_SYS_TERMIO_H - #include <sys/termio.h> /* needed for ISC */ -@@ -66,6 +62,11 @@ - #define _nc_setmode(mode) /* nothing */ - #endif - -+#if USE_KLIBC_KBD -+#define INCL_KBD -+#include <os2.h> -+#endif -+ - #define COOKED_INPUT (IXON|BRKINT|PARMRK) - - #ifdef TRACE -@@ -100,6 +101,17 @@ - #endif - result = NCURSES_SP_NAME(_nc_set_tty_mode) (NCURSES_SP_ARGx &buf); - if (result == OK) { -+#if USE_KLIBC_KBD -+ KBDINFO kbdinfo; -+ -+ kbdinfo.cb = sizeof(kbdinfo); -+ KbdGetStatus(&kbdinfo, 0); -+ -+ kbdinfo.cb = sizeof(kbdinfo); -+ kbdinfo.fsMask &= ~KEYBOARD_ASCII_MODE; -+ kbdinfo.fsMask |= KEYBOARD_BINARY_MODE; -+ KbdSetStatus(&kbdinfo, 0); -+#endif - SP_PARM->_raw = TRUE; - SP_PARM->_cbreak = 1; - termp->Nttyb = buf; -@@ -218,6 +230,17 @@ - #endif - result = NCURSES_SP_NAME(_nc_set_tty_mode) (NCURSES_SP_ARGx &buf); - if (result == OK) { -+#if USE_KLIBC_KBD -+ KBDINFO kbdinfo; -+ -+ kbdinfo.cb = sizeof(kbdinfo); -+ KbdGetStatus(&kbdinfo, 0); -+ -+ kbdinfo.cb = sizeof(kbdinfo); -+ kbdinfo.fsMask &= ~KEYBOARD_BINARY_MODE; -+ kbdinfo.fsMask |= KEYBOARD_ASCII_MODE; -+ KbdSetStatus(&kbdinfo, 0); -+#endif - SP_PARM->_raw = FALSE; - SP_PARM->_cbreak = 0; - termp->Nttyb = buf; -diff -Naur ncurses-5.9/ncurses/tinfo/lib_setup.c ncurses-5.9.patch/ncurses/tinfo/lib_setup.c ---- ncurses-5.9/ncurses/tinfo/lib_setup.c 2011-02-06 02:04:21.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_setup.c 2014-09-01 16:33:22.423792234 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,21 +37,18 @@ - * Terminal setup routines common to termcap and terminfo: - * - * use_env(bool) -+ * use_tioctl(bool) - * setupterm(char *, int, int *) - */ - - #include <curses.priv.h> - #include <tic.h> /* for MAX_NAME_SIZE */ - --#if SVR4_TERMIO && !defined(_POSIX_SOURCE) --#define _POSIX_SOURCE --#endif -- - #if HAVE_LOCALE_H - #include <locale.h> - #endif - --MODULE_ID("$Id: lib_setup.c,v 1.135 2011/02/06 01:04:21 tom Exp $") -+MODULE_ID("$Id: lib_setup.c,v 1.159 2014/03/08 20:32:59 tom Exp $") - - /**************************************************************************** - * -@@ -225,6 +222,7 @@ - { - T((T_CALLED("use_env(%p,%d)"), (void *) SP_PARM, (int) f)); - #if NCURSES_SP_FUNCS -+ START_TRACE(); - if (IsPreScreen(SP_PARM)) { - SP_PARM->_use_env = f; - } -@@ -234,14 +232,39 @@ - returnVoid; - } - -+NCURSES_EXPORT(void) -+NCURSES_SP_NAME(use_tioctl) (NCURSES_SP_DCLx bool f) -+{ -+ T((T_CALLED("use_tioctl(%p,%d)"), (void *) SP_PARM, (int) f)); -+#if NCURSES_SP_FUNCS -+ START_TRACE(); -+ if (IsPreScreen(SP_PARM)) { -+ SP_PARM->_use_tioctl = f; -+ } -+#else -+ _nc_prescreen.use_tioctl = f; -+#endif -+ returnVoid; -+} -+ - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(void) - use_env(bool f) - { - T((T_CALLED("use_env(%d)"), (int) f)); -+ START_TRACE(); - _nc_prescreen.use_env = f; - returnVoid; - } -+ -+NCURSES_EXPORT(void) -+use_tioctl(bool f) -+{ -+ T((T_CALLED("use_tioctl(%d)"), (int) f)); -+ START_TRACE(); -+ _nc_prescreen.use_tioctl = f; -+ returnVoid; -+} - #endif - - NCURSES_EXPORT(void) -@@ -260,7 +283,7 @@ - TCB = (TERMINAL_CONTROL_BLOCK *) termp; - - my_tabsize = TCB->info.tabsize; -- TCB->drv->size(TCB, linep, colp); -+ TCB->drv->td_size(TCB, linep, colp); - - #if USE_REENTRANT - if (sp != 0) { -@@ -281,7 +304,7 @@ - *linep = (int) lines; - *colp = (int) columns; - -- if (_nc_prescreen.use_env) { -+ if (_nc_prescreen.use_env || _nc_prescreen.use_tioctl) { - int value; - - #ifdef __EMX__ -@@ -289,7 +312,9 @@ - int screendata[2]; - _scrsize(screendata); - *colp = screendata[0]; -- *linep = screendata[1]; -+ *linep = ((sp != 0 && sp->_filtered) -+ ? 1 -+ : screendata[1]); - T(("EMX screen size: environment LINES = %d COLUMNS = %d", - *linep, *colp)); - } -@@ -315,19 +340,33 @@ - } - #endif /* HAVE_SIZECHANGE */ - -- /* -- * Finally, look for environment variables. -- * -- * Solaris lets users override either dimension with an environment -- * variable. -- */ -- if ((value = _nc_getenv_num("LINES")) > 0) { -- *linep = value; -- T(("screen size: environment LINES = %d", *linep)); -- } -- if ((value = _nc_getenv_num("COLUMNS")) > 0) { -- *colp = value; -- T(("screen size: environment COLUMNS = %d", *colp)); -+ if (_nc_prescreen.use_env) { -+ if (_nc_prescreen.use_tioctl) { -+ /* -+ * If environment variables are used, update them. -+ */ -+ if ((sp == 0 || !sp->_filtered) && _nc_getenv_num("LINES") > 0) { -+ _nc_setenv_num("LINES", *linep); -+ } -+ if (_nc_getenv_num("COLUMNS") > 0) { -+ _nc_setenv_num("COLUMNS", *colp); -+ } -+ } -+ -+ /* -+ * Finally, look for environment variables. -+ * -+ * Solaris lets users override either dimension with an environment -+ * variable. -+ */ -+ if ((value = _nc_getenv_num("LINES")) > 0) { -+ *linep = value; -+ T(("screen size: environment LINES = %d", *linep)); -+ } -+ if ((value = _nc_getenv_num("COLUMNS")) > 0) { -+ *colp = value; -+ T(("screen size: environment COLUMNS = %d", *colp)); -+ } - } - - /* if we can't get dynamic info about the size, use static */ -@@ -384,7 +423,7 @@ - - assert(sp != 0); - -- CallDriver_2(sp, getsize, &old_lines, &old_cols); -+ CallDriver_2(sp, td_getsize, &old_lines, &old_cols); - - #else - TERMINAL *termp = cur_term; -@@ -399,10 +438,12 @@ - * We're doing it this way because those functions belong to the upper - * ncurses library, while this resides in the lower terminfo library. - */ -- if (sp != 0 -- && sp->_resize != 0) { -- if ((new_lines != old_lines) || (new_cols != old_cols)) -+ if (sp != 0 && sp->_resize != 0) { -+ if ((new_lines != old_lines) || (new_cols != old_cols)) { - sp->_resize(NCURSES_SP_ARGx new_lines, new_cols); -+ } else if (sp->_sig_winch && (sp->_ungetch != 0)) { -+ sp->_ungetch(SP_PARM, KEY_RESIZE); /* so application can know this */ -+ } - sp->_sig_winch = FALSE; - } - } -@@ -414,23 +455,7 @@ - * - ****************************************************************************/ - --#define ret_error(code, fmt, arg) if (errret) {\ -- *errret = code;\ -- returnCode(ERR);\ -- } else {\ -- fprintf(stderr, fmt, arg);\ -- exit(EXIT_FAILURE);\ -- } -- --#define ret_error0(code, msg) if (errret) {\ -- *errret = code;\ -- returnCode(ERR);\ -- } else {\ -- fprintf(stderr, msg);\ -- exit(EXIT_FAILURE);\ -- } -- --#if USE_DATABASE || USE_TERMCAP -+#if NCURSES_USE_DATABASE || NCURSES_USE_TERMCAP - /* - * Return 1 if entry found, 0 if not found, -1 if database not accessible, - * just like tgetent(). -@@ -467,7 +492,7 @@ - ** and substitute it in for the prototype given in 'command_character'. - */ - void --_nc_tinfo_cmdch(TERMINAL * termp, char proto) -+_nc_tinfo_cmdch(TERMINAL * termp, int proto) - { - unsigned i; - char CC; -@@ -481,8 +506,8 @@ - if ((tmp = getenv("CC")) != 0 && strlen(tmp) == 1) { - CC = *tmp; - for_each_string(i, &(termp->type)) { -- for (tmp = termp->type.Strings[i]; *tmp; tmp++) { -- if (*tmp == proto) -+ for (tmp = termp->type.Strings[i]; tmp && *tmp; tmp++) { -+ if (UChar(*tmp) == proto) - *tmp = CC; - } - } -@@ -520,7 +545,9 @@ - _nc_unicode_locale(void) - { - int result = 0; --#if HAVE_LANGINFO_CODESET -+#if defined(__MINGW32__) && USE_WIDEC_SUPPORT -+ result = 1; -+#elif HAVE_LANGINFO_CODESET - char *env = nl_langinfo(CODESET); - result = !strcmp(env, "UTF-8"); - T(("_nc_unicode_locale(%s) ->%d", env, result)); -@@ -551,7 +578,7 @@ - int value; - int result = 0; - -- if ((env = getenv(env_name)) != 0) { -+ if (getenv(env_name) != 0) { - result = _nc_getenv_num(env_name); - } else if ((value = tigetnum("U8")) >= 0) { - result = value; /* use extension feature */ -@@ -578,7 +605,7 @@ - NCURSES_CONST char *tname, - int Filedes, - int *errret, -- bool reuse) -+ int reuse) - { - #ifdef USE_TERM_DRIVER - TERMINAL_CONTROL_BLOCK *TCB = 0; -@@ -608,7 +635,11 @@ - if (tname == 0) { - tname = getenv("TERM"); - if (tname == 0 || *tname == '\0') { -+#ifdef USE_TERM_DRIVER -+ tname = "unknown"; -+#else - ret_error0(TGETENT_ERR, "TERM environment variable not set.\n"); -+#endif - } - } - -@@ -651,9 +682,14 @@ - && _nc_name_match(termp->type.term_names, tname, "|")) { - T(("reusing existing terminal information and mode-settings")); - code = OK; -+#ifdef USE_TERM_DRIVER -+ TCB = (TERMINAL_CONTROL_BLOCK *) termp; -+#endif - } else { - #ifdef USE_TERM_DRIVER -- termp = (TERMINAL *) typeCalloc(TERMINAL_CONTROL_BLOCK, 1); -+ TERMINAL_CONTROL_BLOCK *my_tcb; -+ my_tcb = typeCalloc(TERMINAL_CONTROL_BLOCK, 1); -+ termp = &(my_tcb->term); - #else - termp = typeCalloc(TERMINAL, 1); - #endif -@@ -673,7 +709,7 @@ - "Could not find any driver to handle this terminal.\n"); - } - #else --#if USE_DATABASE || USE_TERMCAP -+#if NCURSES_USE_DATABASE || NCURSES_USE_TERMCAP - status = _nc_setup_tinfo(tname, &termp->type); - #else - status = TGETENT_NO; -@@ -684,7 +720,7 @@ - const TERMTYPE *fallback = _nc_fallback(tname); - - if (fallback) { -- termp->type = *fallback; -+ _nc_copy_termtype(&(termp->type), fallback); - status = TGETENT_YES; - } - } -@@ -694,11 +730,11 @@ - if (status == TGETENT_ERR) { - ret_error0(status, "terminals database is inaccessible\n"); - } else if (status == TGETENT_NO) { -- ret_error(status, "'%s': unknown terminal type.\n", tname); -+ ret_error1(status, "unknown terminal type.\n", tname); - } - } - #if !USE_REENTRANT -- strncpy(ttytype, termp->type.term_names, NAMESIZE - 1); -+ strncpy(ttytype, termp->type.term_names, (size_t) (NAMESIZE - 1)); - ttytype[NAMESIZE - 1] = '\0'; - #endif - -@@ -708,7 +744,7 @@ - set_curterm(termp); - - if (command_character) -- _nc_tinfo_cmdch(termp, *command_character); -+ _nc_tinfo_cmdch(termp, UChar(*command_character)); - - /* - * If an application calls setupterm() rather than initscr() or -@@ -727,7 +763,7 @@ - #ifdef USE_TERM_DRIVER - *tp = termp; - NCURSES_SP_NAME(set_curterm) (sp, termp); -- TCB->drv->init(TCB); -+ TCB->drv->td_init(TCB); - #else - sp = SP; - #endif -@@ -742,10 +778,20 @@ - - #ifndef USE_TERM_DRIVER - if (generic_type) { -- ret_error(TGETENT_NO, "'%s': I need something more specific.\n", tname); -- } -- if (hard_copy) { -- ret_error(TGETENT_YES, "'%s': I can't handle hardcopy terminals.\n", tname); -+ /* -+ * BSD 4.3's termcap contains mis-typed "gn" for wy99. Do a sanity -+ * check before giving up. -+ */ -+ if ((VALID_STRING(cursor_address) -+ || (VALID_STRING(cursor_down) && VALID_STRING(cursor_home))) -+ && VALID_STRING(clear_screen)) { -+ ret_error1(TGETENT_YES, "terminal is not really generic.\n", tname); -+ } else { -+ del_curterm(termp); -+ ret_error1(TGETENT_NO, "I need something more specific.\n", tname); -+ } -+ } else if (hard_copy) { -+ ret_error1(TGETENT_YES, "I can't handle hardcopy terminals.\n", tname); - } - #endif - returnCode(code); -@@ -798,10 +844,10 @@ - _nc_setupterm(NCURSES_CONST char *tname, - int Filedes, - int *errret, -- bool reuse) -+ int reuse) - { - int res; -- TERMINAL *termp; -+ TERMINAL *termp = 0; - res = TINFO_SETUP_TERM(&termp, tname, Filedes, errret, reuse); - if (ERR != res) - NCURSES_SP_NAME(set_curterm) (CURRENT_SCREEN_PRE, termp); -diff -Naur ncurses-5.9/ncurses/tinfo/lib_termcap.c ncurses-5.9.patch/ncurses/tinfo/lib_termcap.c ---- ncurses-5.9/ncurses/tinfo/lib_termcap.c 2010-12-25 20:27:12.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_termcap.c 2014-09-01 16:33:22.423792234 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -48,7 +48,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_termcap.c,v 1.73 2010/12/25 19:27:12 tom Exp $") -+MODULE_ID("$Id: lib_termcap.c,v 1.80 2013/06/08 16:48:47 tom Exp $") - - NCURSES_EXPORT_VAR(char *) UP = 0; - NCURSES_EXPORT_VAR(char *) BC = 0; -@@ -63,6 +63,15 @@ - #define LAST_USE MyCache[CacheInx].last_used - #define LAST_SEQ MyCache[CacheInx].sequence - -+/* -+ * Termcap names are matched only using the first two bytes. -+ * Ignore any extended names longer than two bytes, to avoid problems -+ * with legacy code which passes in parameters whose use is long forgotten. -+ */ -+#define ValidCap(cap) (((cap)[0] != '\0') && ((cap)[1] != '\0')) -+#define SameCap(a,b) (((a)[0] == (b)[0]) && ((a)[1] == (b)[1])) -+#define ValidExt(ext) (ValidCap(ext) && (ext)[2] == '\0') -+ - /*************************************************************************** - * - * tgetent(bufp, term) -@@ -97,7 +106,7 @@ - #ifdef USE_TERM_DRIVER - if (termp == 0 || - !((TERMINAL_CONTROL_BLOCK *) termp)->drv->isTerminfo) -- return (rc); -+ returnCode(rc); - #endif - - /* -@@ -202,11 +211,13 @@ - static bool - same_tcname(const char *a, const char *b) - { -- fprintf(stderr, "compare(%s,%s)\n", a, b); -- return !strncmp(a, b, 2); -+ bool code = SameCap(a, b); -+ fprintf(stderr, "compare(%s,%s) %s\n", a, b, code ? "same" : "diff"); -+ return code; - } -+ - #else --#define same_tcname(a,b) !strncmp(a,b,2) -+#define same_tcname(a,b) SameCap(a,b) - #endif - - /*************************************************************************** -@@ -222,10 +233,10 @@ - NCURSES_SP_NAME(tgetflag) (NCURSES_SP_DCLx NCURSES_CONST char *id) - { - int result = 0; /* Solaris returns zero for missing flag */ -- int i, j; -+ int j = -1; - - T((T_CALLED("tgetflag(%p, %s)"), (void *) SP_PARM, id)); -- if (HasTInfoTerminal(SP_PARM)) { -+ if (HasTInfoTerminal(SP_PARM) && ValidCap(id)) { - TERMTYPE *tp = &(TerminalOf(SP_PARM)->type); - struct name_table_entry const *entry_ptr; - -@@ -235,10 +246,10 @@ - } - #if NCURSES_XNAMES - else { -- j = -1; -+ int i; - for_each_ext_boolean(i, tp) { - const char *capname = ExtBoolname(tp, i, boolcodes); -- if (same_tcname(id, capname)) { -+ if (same_tcname(id, capname) && ValidExt(capname)) { - j = i; - break; - } -@@ -274,10 +285,10 @@ - NCURSES_SP_NAME(tgetnum) (NCURSES_SP_DCLx NCURSES_CONST char *id) - { - int result = ABSENT_NUMERIC; -- int i, j; -+ int j = -1; - - T((T_CALLED("tgetnum(%p, %s)"), (void *) SP_PARM, id)); -- if (HasTInfoTerminal(SP_PARM)) { -+ if (HasTInfoTerminal(SP_PARM) && ValidCap(id)) { - TERMTYPE *tp = &(TerminalOf(SP_PARM)->type); - struct name_table_entry const *entry_ptr; - -@@ -287,10 +298,10 @@ - } - #if NCURSES_XNAMES - else { -- j = -1; -+ int i; - for_each_ext_number(i, tp) { - const char *capname = ExtNumname(tp, i, numcodes); -- if (same_tcname(id, capname)) { -+ if (same_tcname(id, capname) && ValidExt(capname)) { - j = i; - break; - } -@@ -326,10 +337,10 @@ - NCURSES_SP_NAME(tgetstr) (NCURSES_SP_DCLx NCURSES_CONST char *id, char **area) - { - char *result = NULL; -- int i, j; -+ int j = -1; - - T((T_CALLED("tgetstr(%s,%p)"), id, (void *) area)); -- if (HasTInfoTerminal(SP_PARM)) { -+ if (HasTInfoTerminal(SP_PARM) && ValidCap(id)) { - TERMTYPE *tp = &(TerminalOf(SP_PARM)->type); - struct name_table_entry const *entry_ptr; - -@@ -339,10 +350,10 @@ - } - #if NCURSES_XNAMES - else { -- j = -1; -+ int i; - for_each_ext_string(i, tp) { - const char *capname = ExtStrname(tp, i, strcodes); -- if (same_tcname(id, capname)) { -+ if (same_tcname(id, capname) && ValidExt(capname)) { - j = i; - break; - } -@@ -351,7 +362,7 @@ - #endif - if (j >= 0) { - result = tp->Strings[j]; -- TR(TRACE_DATABASE, ("found match : %s", _nc_visbuf(result))); -+ TR(TRACE_DATABASE, ("found match %d: %s", j, _nc_visbuf(result))); - /* setupterm forces canceled strings to null */ - if (VALID_STRING(result)) { - if (result == exit_attribute_mode -@@ -361,7 +372,7 @@ - } - if (area != 0 - && *area != 0) { -- (void) strcpy(*area, result); -+ _nc_STRCPY(*area, result, 1024); - result = *area; - *area += strlen(*area) + 1; - } -diff -Naur ncurses-5.9/ncurses/tinfo/lib_tgoto.c ncurses-5.9.patch/ncurses/tinfo/lib_tgoto.c ---- ncurses-5.9/ncurses/tinfo/lib_tgoto.c 2008-08-16 21:29:32.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_tgoto.c 2014-09-01 16:33:22.423792234 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2000-2006,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 2000-2008,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,7 +35,7 @@ - #include <ctype.h> - #include <termcap.h> - --MODULE_ID("$Id: lib_tgoto.c,v 1.13 2008/08/16 19:29:32 tom Exp $") -+MODULE_ID("$Id: lib_tgoto.c,v 1.16 2012/02/24 02:08:08 tom Exp $") - - #if !PURE_TERMINFO - static bool -@@ -159,7 +159,8 @@ - break; - } - if (fmt != 0) { -- sprintf(result + used, fmt, *value++); -+ _nc_SPRINTF(result + used, _nc_SLIMIT(length - used) -+ fmt, *value++); - used += strlen(result + used); - fmt = 0; - } -@@ -174,7 +175,7 @@ - } - if (result != 0) { - if (need_BC) { -- strcpy(result + used, BC); -+ _nc_STRCPY(result + used, BC, length - used); - used += strlen(BC); - } - result[used] = '\0'; -diff -Naur ncurses-5.9/ncurses/tinfo/lib_ti.c ncurses-5.9.patch/ncurses/tinfo/lib_ti.c ---- ncurses-5.9/ncurses/tinfo/lib_ti.c 2010-01-23 18:57:43.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_ti.c 2014-09-01 16:33:22.423792234 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,7 +36,7 @@ - - #include <tic.h> - --MODULE_ID("$Id: lib_ti.c,v 1.29 2010/01/23 17:57:43 tom Exp $") -+MODULE_ID("$Id: lib_ti.c,v 1.30 2013/06/08 16:55:05 tom Exp $") - - #if 0 - static bool -@@ -53,7 +53,7 @@ - NCURSES_SP_NAME(tigetflag) (NCURSES_SP_DCLx NCURSES_CONST char *str) - { - int result = ABSENT_BOOLEAN; -- int i, j; -+ int j = -1; - - T((T_CALLED("tigetflag(%p, %s)"), (void *) SP_PARM, str)); - -@@ -67,7 +67,7 @@ - } - #if NCURSES_XNAMES - else { -- j = -1; -+ int i; - for_each_ext_boolean(i, tp) { - const char *capname = ExtBoolname(tp, i, boolnames); - if (same_name(str, capname)) { -@@ -97,7 +97,7 @@ - NCURSES_EXPORT(int) - NCURSES_SP_NAME(tigetnum) (NCURSES_SP_DCLx NCURSES_CONST char *str) - { -- int i, j; -+ int j = -1; - int result = CANCELLED_NUMERIC; /* Solaris returns a -1 on error */ - - T((T_CALLED("tigetnum(%p, %s)"), (void *) SP_PARM, str)); -@@ -112,7 +112,7 @@ - } - #if NCURSES_XNAMES - else { -- j = -1; -+ int i; - for_each_ext_number(i, tp) { - const char *capname = ExtNumname(tp, i, numnames); - if (same_name(str, capname)) { -@@ -145,7 +145,7 @@ - NCURSES_SP_NAME(tigetstr) (NCURSES_SP_DCLx NCURSES_CONST char *str) - { - char *result = CANCELLED_STRING; -- int i, j; -+ int j = -1; - - T((T_CALLED("tigetstr(%p, %s)"), (void *) SP_PARM, str)); - -@@ -159,7 +159,7 @@ - } - #if NCURSES_XNAMES - else { -- j = -1; -+ int i; - for_each_ext_string(i, tp) { - const char *capname = ExtStrname(tp, i, strnames); - if (same_name(str, capname)) { -diff -Naur ncurses-5.9/ncurses/tinfo/lib_tparm.c ncurses-5.9.patch/ncurses/tinfo/lib_tparm.c ---- ncurses-5.9/ncurses/tinfo/lib_tparm.c 2011-01-15 23:19:12.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_tparm.c 2014-09-01 16:33:22.424792236 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,7 +42,7 @@ - #include <ctype.h> - #include <tic.h> - --MODULE_ID("$Id: lib_tparm.c,v 1.82 2011/01/15 22:19:12 tom Exp $") -+MODULE_ID("$Id: lib_tparm.c,v 1.90 2013/11/09 14:53:05 tom Exp $") - - /* - * char * -@@ -53,7 +53,7 @@ - * - * Cursor addressing and other strings requiring parame- - * ters in the terminal are described by a parameterized string -- * capability, with like escapes %x in it. For example, to -+ * capability, with escapes like %x in it. For example, to - * address the cursor, the cup capability is given, using two - * parameters: the row and column to address to. (Rows and - * columns are numbered from zero and refer to the physical -@@ -107,6 +107,7 @@ - NCURSES_EXPORT_VAR(int) _nc_tparm_err = 0; - - #define TPS(var) _nc_prescreen.tparm_state.var -+#define popcount _nc_popcount /* workaround for NetBSD 6.0 defect */ - - #if NO_LEAKS - NCURSES_EXPORT(void) -@@ -128,9 +129,7 @@ - need += TPS(out_used); - if (need > TPS(out_size)) { - TPS(out_size) = need * 2; -- TPS(out_buff) = typeRealloc(char, TPS(out_size), TPS(out_buff)); -- if (TPS(out_buff) == 0) -- _nc_err_abort(MSG_NO_MEMORY); -+ TYPE_REALLOC(char, TPS(out_size), TPS(out_buff)); - } - } - -@@ -143,7 +142,9 @@ - - get_space(s_len + 1); - -- (void) sprintf(TPS(out_buff) + TPS(out_used), fmt, s); -+ _nc_SPRINTF(TPS(out_buff) + TPS(out_used), -+ _nc_SLIMIT(TPS(out_size) - TPS(out_used)) -+ fmt, s); - TPS(out_used) += strlen(TPS(out_buff) + TPS(out_used)); - } - -@@ -153,9 +154,11 @@ - if (len < 30) - len = 30; /* actually log10(MAX_INT)+1 */ - -- get_space((unsigned) len + 1); -+ get_space((size_t) len + 1); - -- (void) sprintf(TPS(out_buff) + TPS(out_used), fmt, number); -+ _nc_SPRINTF(TPS(out_buff) + TPS(out_used), -+ _nc_SLIMIT(TPS(out_size) - TPS(out_used)) -+ fmt, number); - TPS(out_used) += strlen(TPS(out_buff) + TPS(out_used)); - } - -@@ -164,7 +167,7 @@ - { - if (c == 0) - c = 0200; -- get_space(1); -+ get_space((size_t) 1); - TPS(out_buff)[TPS(out_used)++] = (char) c; - } - -@@ -450,7 +453,7 @@ - } - - static NCURSES_INLINE char * --tparam_internal(bool use_TPARM_ARG, const char *string, va_list ap) -+tparam_internal(int use_TPARM_ARG, const char *string, va_list ap) - { - char *p_is_s[NUM_PARM]; - TPARM_ARG param[NUM_PARM]; -@@ -522,7 +525,7 @@ - } - #ifdef TRACE - if (USE_TRACEF(TRACE_CALLS)) { -- for (i = 0; i < popcount; i++) { -+ for (i = 0; i < num_args; i++) { - if (p_is_s[i] != 0) - save_text(", %s", _nc_visbuf(p_is_s[i]), 0); - else -@@ -559,7 +562,7 @@ - break; - - case 'l': -- save_number("%d", (int) strlen(spop()), 0); -+ npush((int) strlen(spop())); - break; - - case 's': -@@ -757,7 +760,7 @@ - cp++; - } /* endwhile (*cp) */ - -- get_space(1); -+ get_space((size_t) 1); - TPS(out_buff)[TPS(out_used)] = '\0'; - - T((T_RETURN("%s"), _nc_visbuf(TPS(out_buff)))); -diff -Naur ncurses-5.9/ncurses/tinfo/lib_tputs.c ncurses-5.9.patch/ncurses/tinfo/lib_tputs.c ---- ncurses-5.9/ncurses/tinfo/lib_tputs.c 2010-12-20 01:42:50.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_tputs.c 2014-09-01 16:33:22.424792236 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -51,7 +51,7 @@ - #include <termcap.h> /* ospeed */ - #include <tic.h> - --MODULE_ID("$Id: lib_tputs.c,v 1.81 2010/12/20 00:42:50 tom Exp $") -+MODULE_ID("$Id: lib_tputs.c,v 1.93 2013/01/12 20:57:32 tom Exp $") - - NCURSES_EXPORT_VAR(char) PC = 0; /* used by termcap library */ - NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed = 0; /* used by termcap library */ -@@ -119,7 +119,17 @@ - NCURSES_EXPORT(void) - NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_DCL0) - { -- (void) fflush(NC_OUTPUT(SP_PARM)); -+ if (SP_PARM != 0 && SP_PARM->_ofd >= 0) { -+ if (SP_PARM->out_inuse) { -+ size_t amount = SP->out_inuse; -+ /* -+ * Help a little, if the write is interrupted, by first resetting -+ * our amount. -+ */ -+ SP->out_inuse = 0; -+ IGNORE_RC(write(SP_PARM->_ofd, SP_PARM->out_buffer, amount)); -+ } -+ } - } - - #if NCURSES_SP_FUNCS -@@ -138,17 +148,23 @@ - COUNT_OUTCHARS(1); - - if (HasTInfoTerminal(SP_PARM) -- && SP_PARM != 0 -- && SP_PARM->_cleanup) { -- char tmp = (char) ch; -- /* -- * POSIX says write() is safe in a signal handler, but the -- * buffered I/O is not. -- */ -- if (write(fileno(NC_OUTPUT(SP_PARM)), &tmp, 1) == -1) -- rc = ERR; -+ && SP_PARM != 0) { -+ if (SP_PARM->out_buffer != 0) { -+ if (SP_PARM->out_inuse + 1 >= SP_PARM->out_limit) -+ NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG); -+ SP_PARM->out_buffer[SP_PARM->out_inuse++] = (char) ch; -+ } else { -+ char tmp = (char) ch; -+ /* -+ * POSIX says write() is safe in a signal handler, but the -+ * buffered I/O is not. -+ */ -+ if (write(fileno(NC_OUTPUT(SP_PARM)), &tmp, (size_t) 1) == -1) -+ rc = ERR; -+ } - } else { -- if (putc(ch, NC_OUTPUT(SP_PARM)) == EOF) -+ char tmp = (char) ch; -+ if (write(fileno(stdout), &tmp, (size_t) 1) == -1) - rc = ERR; - } - return rc; -@@ -162,13 +178,48 @@ - } - #endif - -+/* -+ * This is used for the putp special case. -+ */ -+NCURSES_EXPORT(int) -+NCURSES_SP_NAME(_nc_putchar) (NCURSES_SP_DCLx int ch) -+{ -+ (void) SP_PARM; -+ return putchar(ch); -+} -+ -+#if NCURSES_SP_FUNCS -+NCURSES_EXPORT(int) -+_nc_putchar(int ch) -+{ -+ return putchar(ch); -+} -+#endif -+ -+/* -+ * putp is special - per documentation it calls tputs with putchar as the -+ * parameter for outputting characters. This means that it uses stdio, which -+ * is not signal-safe. Applications call this entrypoint; we do not call it -+ * from within the library. -+ */ - NCURSES_EXPORT(int) - NCURSES_SP_NAME(putp) (NCURSES_SP_DCLx const char *string) - { - return NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx -- string, 1, NCURSES_SP_NAME(_nc_outch)); -+ string, 1, NCURSES_SP_NAME(_nc_putchar)); - } - -+#if NCURSES_SP_FUNCS -+NCURSES_EXPORT(int) -+putp(const char *string) -+{ -+ return NCURSES_SP_NAME(putp) (CURRENT_SCREEN, string); -+} -+#endif -+ -+/* -+ * Use these entrypoints rather than "putp" within the library. -+ */ - NCURSES_EXPORT(int) - NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_DCLx - const char *name GCC_UNUSED, -@@ -178,19 +229,14 @@ - - if (string != 0) { - TPUTS_TRACE(name); -- rc = NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx string); -+ rc = NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx -+ string, 1, NCURSES_SP_NAME(_nc_outch)); - } - return rc; - } - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(int) --putp(const char *string) --{ -- return NCURSES_SP_NAME(putp) (CURRENT_SCREEN, string); --} -- --NCURSES_EXPORT(int) - _nc_putp(const char *name, const char *string) - { - return NCURSES_SP_NAME(_nc_putp) (CURRENT_SCREEN, name, string); -@@ -216,9 +262,9 @@ - - if (USE_TRACEF(TRACE_TPUTS)) { - if (outc == NCURSES_SP_NAME(_nc_outch)) -- (void) strcpy(addrbuf, "_nc_outch"); -+ _nc_STRCPY(addrbuf, "_nc_outch", sizeof(addrbuf)); - else -- (void) sprintf(addrbuf, "%p", outc); -+ _nc_SPRINTF(addrbuf, _nc_SLIMIT(sizeof(addrbuf)) "%p", outc); - if (_nc_tputs_trace) { - _tracef("tputs(%s = %s, %d, %s) called", _nc_tputs_trace, - _nc_visbuf(string), affcnt, addrbuf); -diff -Naur ncurses-5.9/ncurses/tinfo/lib_ttyflags.c ncurses-5.9.patch/ncurses/tinfo/lib_ttyflags.c ---- ncurses-5.9/ncurses/tinfo/lib_ttyflags.c 2010-12-26 00:43:58.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/lib_ttyflags.c 2014-09-01 16:33:22.452792282 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -41,7 +41,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_ttyflags.c,v 1.27 2010/12/25 23:43:58 tom Exp $") -+MODULE_ID("$Id: lib_ttyflags.c,v 1.29 2014/03/08 20:32:59 tom Exp $") - - NCURSES_EXPORT(int) - NCURSES_SP_NAME(_nc_get_tty_mode) (NCURSES_SP_DCLx TTY * buf) -@@ -57,7 +57,7 @@ - result = ERR; - } else { - #ifdef USE_TERM_DRIVER -- result = CallDriver_2(SP_PARM, sgmode, FALSE, buf); -+ result = CallDriver_2(SP_PARM, td_sgmode, FALSE, buf); - #else - for (;;) { - if (GET_TTY(termp->Filedes, buf) != 0) { -@@ -102,10 +102,14 @@ - result = ERR; - } else { - #ifdef USE_TERM_DRIVER -- result = CallDriver_2(SP_PARM, sgmode, TRUE, buf); -+ result = CallDriver_2(SP_PARM, td_sgmode, TRUE, buf); - #else - for (;;) { -- if (SET_TTY(termp->Filedes, buf) != 0) { -+ if ((SET_TTY(termp->Filedes, buf) != 0) -+#if USE_KLIBC_KBD -+ && !isatty(termp->Filedes) -+#endif -+ ) { - if (errno == EINTR) - continue; - if ((errno == ENOTTY) && (SP_PARM != 0)) -@@ -141,7 +145,7 @@ - - if (termp != 0) { - #ifdef USE_TERM_DRIVER -- rc = CallDriver_2(SP_PARM, mode, FALSE, TRUE); -+ rc = CallDriver_2(SP_PARM, td_mode, FALSE, TRUE); - #else - /* - * If XTABS was on, remove the tab and backtab capabilities. -@@ -179,7 +183,7 @@ - - if (termp != 0) { - #ifdef USE_TERM_DRIVER -- rc = CallDriver_2(SP_PARM, mode, TRUE, TRUE); -+ rc = CallDriver_2(SP_PARM, td_mode, TRUE, TRUE); - #else - /* - * Turn off the XTABS bit in the tty structure if it was on. -@@ -215,13 +219,12 @@ - - if (termp != 0) { - #ifdef USE_TERM_DRIVER -- rc = CallDriver_2(SP_PARM, mode, TRUE, FALSE); -+ rc = CallDriver_2(SP_PARM, td_mode, TRUE, FALSE); - #else - if (_nc_set_tty_mode(&termp->Nttyb) == OK) { - if (SP_PARM) { - if (SP_PARM->_keypad_on) - _nc_keypad(SP_PARM, TRUE); -- NC_BUFFERED(SP_PARM, TRUE); - } - rc = OK; - } -@@ -248,12 +251,11 @@ - - if (termp != 0) { - #ifdef USE_TERM_DRIVER -- rc = CallDriver_2(SP_PARM, mode, FALSE, FALSE); -+ rc = CallDriver_2(SP_PARM, td_mode, FALSE, FALSE); - #else - if (SP_PARM) { - _nc_keypad(SP_PARM, FALSE); - _nc_flush(); -- NC_BUFFERED(SP_PARM, FALSE); - } - rc = _nc_set_tty_mode(&termp->Ottyb); - #endif -diff -Naur ncurses-5.9/ncurses/tinfo/make_hash.c ncurses-5.9.patch/ncurses/tinfo/make_hash.c ---- ncurses-5.9/ncurses/tinfo/make_hash.c 2010-05-22 20:02:50.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/make_hash.c 2014-09-01 16:33:22.452792282 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -44,7 +44,7 @@ - - #include <ctype.h> - --MODULE_ID("$Id: make_hash.c,v 1.3 2010/05/22 18:02:50 tom Exp $") -+MODULE_ID("$Id: make_hash.c,v 1.13 2013/09/28 20:55:47 tom Exp $") - - /* - * _nc_make_hash_table() -@@ -59,6 +59,24 @@ - #define MODULE_ID(id) /*nothing */ - #include <tinfo/doalloc.c> - -+static void -+failed(const char *s) -+{ -+ perror(s); -+ exit(EXIT_FAILURE); -+} -+ -+static char * -+strmalloc(char *s) -+{ -+ size_t need = strlen(s) + 1; -+ char *result = malloc(need); -+ if (result == 0) -+ failed("strmalloc"); -+ _nc_STRCPY(result, s, need); -+ return result; -+} -+ - /* - * int hash_function(string) - * -@@ -119,6 +137,18 @@ - - #define MAX_COLUMNS BUFSIZ /* this _has_ to be worst-case */ - -+static int -+count_columns(char **list) -+{ -+ int result = 0; -+ if (list != 0) { -+ while (*list++) { -+ ++result; -+ } -+ } -+ return result; -+} -+ - static char ** - parse_columns(char *buffer) - { -@@ -126,7 +156,7 @@ - - int col = 0; - -- if (list == 0 && (list = typeCalloc(char *, MAX_COLUMNS)) == 0) -+ if (list == 0 && (list = typeCalloc(char *, (MAX_COLUMNS + 1))) == 0) - return (0); - - if (*buffer != '#') { -@@ -201,8 +231,15 @@ - list = parse_columns(buffer); - if (list == 0) /* blank or comment */ - continue; -+ if (column > count_columns(list)) { -+ fprintf(stderr, "expected %d columns, have %d:\n%s\n", -+ column, -+ count_columns(list), -+ buffer); -+ exit(EXIT_FAILURE); -+ } - name_table[n].nte_link = -1; /* end-of-hash */ -- name_table[n].nte_name = strdup(list[column]); -+ name_table[n].nte_name = strmalloc(list[column]); - if (!strcmp(list[2], "bool")) { - name_table[n].nte_type = BOOLEAN; - name_table[n].nte_index = BoolCount++; -@@ -256,13 +293,12 @@ - printf("static struct name_table_entry *_nc_%s_table = 0;\n\n", root_name); - } else { - -- printf("static struct name_table_entry %s _nc_%s_table[] =\n", -- bigstring ? "" : "const", -+ printf("static struct name_table_entry const _nc_%s_table[] =\n", - root_name); - printf("{\n"); - for (n = 0; n < CAPTABSIZE; n++) { -- sprintf(buffer, "\"%s\"", -- name_table[n].nte_name); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) "\"%s\"", -+ name_table[n].nte_name); - printf("\t{ %15s,\t%10s,\t%3d, %3d }%c\n", - buffer, - typenames[name_table[n].nte_type], -diff -Naur ncurses-5.9/ncurses/tinfo/make_keys.c ncurses-5.9.patch/ncurses/tinfo/make_keys.c ---- ncurses-5.9/ncurses/tinfo/make_keys.c 2010-06-06 00:08:00.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/make_keys.c 2014-09-01 16:33:22.452792282 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - #define USE_TERMLIB 1 - #include <build.priv.h> - --MODULE_ID("$Id: make_keys.c,v 1.19 2010/06/05 22:08:00 tom Exp $") -+MODULE_ID("$Id: make_keys.c,v 1.20 2011/10/22 16:34:50 tom Exp $") - - #include <names.c> - -@@ -76,7 +76,7 @@ - unsigned maxlen = 16; - int scanned; - -- while (fgets(buffer, sizeof(buffer), ifp) != 0) { -+ while (fgets(buffer, (int) sizeof(buffer), ifp) != 0) { - if (*buffer == '#') - continue; - -diff -Naur ncurses-5.9/ncurses/tinfo/MKcaptab.sh ncurses-5.9.patch/ncurses/tinfo/MKcaptab.sh ---- ncurses-5.9/ncurses/tinfo/MKcaptab.sh 2010-12-26 00:43:58.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/MKcaptab.sh 2014-09-01 16:33:22.419792227 +0200 -@@ -1,6 +1,6 @@ - #!/bin/sh - ############################################################################## --# Copyright (c) 2007-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 2007-2010,2011 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -26,7 +26,7 @@ - # use or other dealings in this Software without prior written # - # authorization. # - ############################################################################## --# $Id: MKcaptab.sh,v 1.13 2010/12/25 23:43:58 tom Exp $ -+# $Id: MKcaptab.sh,v 1.14 2011/10/22 16:34:50 tom Exp $ - AWK=${1-awk} - OPT1=${2-0} - OPT2=${3-tinfo/MKcaptab.awk} -@@ -99,12 +99,12 @@ - _nc_build_alias(struct alias **actual, - const alias_table_data *source, - const char *strings, -- unsigned tablesize) -+ size_t tablesize) - { - if (*actual == 0) { - *actual = typeCalloc(struct alias, tablesize + 1); - if (*actual != 0) { -- unsigned n; -+ size_t n; - for (n = 0; n < tablesize; ++n) { - add_alias(from); - add_alias(to); -@@ -178,7 +178,7 @@ - static int - compare_tcap_names(const char *a, const char *b) - { -- return !strncmp(a, b, TCAP_LEN); -+ return !strncmp(a, b, (size_t) TCAP_LEN); - } - - static int -diff -Naur ncurses-5.9/ncurses/tinfo/name_match.c ncurses-5.9.patch/ncurses/tinfo/name_match.c ---- ncurses-5.9/ncurses/tinfo/name_match.c 2008-11-16 01:19:59.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/name_match.c 2014-09-01 16:33:22.452792282 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1999-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1999-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -33,25 +33,38 @@ - #include <curses.priv.h> - #include <tic.h> - --MODULE_ID("$Id: name_match.c,v 1.18 2008/11/16 00:19:59 juergen Exp $") -+MODULE_ID("$Id: name_match.c,v 1.23 2013/05/25 20:20:08 tom Exp $") - --/* -- * _nc_first_name(char *names) -- * -- * Extract the primary name from a compiled entry. -- */ - #define FirstName _nc_globals.first_name - -+#if NCURSES_USE_TERMCAP && NCURSES_XNAMES -+static const char * -+skip_index(const char *name) -+{ -+ if ((_nc_syntax == SYN_TERMCAP) && _nc_user_definable) { -+ const char *bar = strchr(name, '|'); -+ if (bar != 0 && (bar - name) == 2) -+ name = bar + 1; -+ } -+ return name; -+} -+#endif -+ -+/* -+ * Get the primary name from the given name list. For terminfo, this is the -+ * first name. For termcap, this may be the second name, if the first one -+ * happens to be two characters. -+ */ - NCURSES_EXPORT(char *) - _nc_first_name(const char *const sp) --/* get the first name from the given name list */ - { - unsigned n; - - #if NO_LEAKS - if (sp == 0) { -- if (FirstName != 0) -+ if (FirstName != 0) { - FreeAndNull(FirstName); -+ } - } else - #endif - { -@@ -59,8 +72,12 @@ - FirstName = typeMalloc(char, MAX_NAME_SIZE + 1); - - if (FirstName != 0) { -+ const char *src = sp; -+#if NCURSES_USE_TERMCAP && NCURSES_XNAMES -+ src = skip_index(sp); -+#endif - for (n = 0; n < MAX_NAME_SIZE; n++) { -- if ((FirstName[n] = sp[n]) == '\0' -+ if ((FirstName[n] = src[n]) == '\0' - || (FirstName[n] == '|')) - break; - } -@@ -71,11 +88,8 @@ - } - - /* -- * int _nc_name_match(namelist, name, delim) -- * -- * Is the given name matched in namelist? -+ * Is the given name matched in namelist? - */ -- - NCURSES_EXPORT(int) - _nc_name_match(const char *const namelst, const char *const name, const char *const delim) - { -diff -Naur ncurses-5.9/ncurses/tinfo/obsolete.c ncurses-5.9.patch/ncurses/tinfo/obsolete.c ---- ncurses-5.9/ncurses/tinfo/obsolete.c 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/obsolete.c 2014-09-01 16:33:22.452792282 +0200 -@@ -0,0 +1,102 @@ -+/**************************************************************************** -+ * Copyright (c) 2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Thomas E. Dickey 2013 * -+ ****************************************************************************/ -+ -+/* -+** Support for obsolete features. -+*/ -+ -+#include <curses.priv.h> -+ -+MODULE_ID("$Id: obsolete.c,v 1.1 2013/01/26 22:07:51 tom Exp $") -+ -+/* -+ * Obsolete entrypoint retained for binary compatbility. -+ */ -+NCURSES_EXPORT(void) -+NCURSES_SP_NAME(_nc_set_buffer) (NCURSES_SP_DCLx FILE *ofp, int buffered) -+{ -+#if NCURSES_SP_FUNCS -+ (void) SP_PARM; -+#endif -+ (void) ofp; -+ (void) buffered; -+} -+ -+#if NCURSES_SP_FUNCS -+NCURSES_EXPORT(void) -+_nc_set_buffer(FILE *ofp, int buffered) -+{ -+ NCURSES_SP_NAME(_nc_set_buffer) (CURRENT_SCREEN, ofp, buffered); -+} -+#endif -+ -+#if !HAVE_STRDUP -+NCURSES_EXPORT(char *) -+_nc_strdup(const char *s) -+{ -+ char *result = 0; -+ if (s != 0) { -+ size_t need = strlen(s); -+ result = malloc(need + 1); -+ if (result != 0) { -+ strcpy(result, s); -+ } -+ } -+ return result; -+} -+#endif -+ -+#if USE_MY_MEMMOVE -+#define DST ((char *)s1) -+#define SRC ((const char *)s2) -+NCURSES_EXPORT(void *) -+_nc_memmove(void *s1, const void *s2, size_t n) -+{ -+ if (n != 0) { -+ if ((DST + n > SRC) && (SRC + n > DST)) { -+ static char *bfr; -+ static size_t length; -+ register size_t j; -+ if (length < n) { -+ length = (n * 3) / 2; -+ bfr = typeRealloc(char, length, bfr); -+ } -+ for (j = 0; j < n; j++) -+ bfr[j] = SRC[j]; -+ s2 = bfr; -+ } -+ while (n-- != 0) -+ DST[n] = SRC[n]; -+ } -+ return s1; -+} -+#endif /* USE_MY_MEMMOVE */ -diff -Naur ncurses-5.9/ncurses/tinfo/parse_entry.c ncurses-5.9.patch/ncurses/tinfo/parse_entry.c ---- ncurses-5.9/ncurses/tinfo/parse_entry.c 2010-05-01 21:35:09.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/parse_entry.c 2014-09-01 16:33:22.452792282 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -47,7 +47,7 @@ - #include <ctype.h> - #include <tic.h> - --MODULE_ID("$Id: parse_entry.c,v 1.75 2010/05/01 19:35:09 tom Exp $") -+MODULE_ID("$Id: parse_entry.c,v 1.79 2012/10/27 21:43:45 tom Exp $") - - #ifdef LINT - static short const parametrized[] = -@@ -145,27 +145,27 @@ - case BOOLEAN: - tp->ext_Booleans++; - tp->num_Booleans++; -- tp->Booleans = typeRealloc(NCURSES_SBOOL, tp->num_Booleans, tp->Booleans); -+ TYPE_REALLOC(NCURSES_SBOOL, tp->num_Booleans, tp->Booleans); - for_each_value(tp->num_Booleans) - tp->Booleans[last] = tp->Booleans[last - 1]; - break; - case NUMBER: - tp->ext_Numbers++; - tp->num_Numbers++; -- tp->Numbers = typeRealloc(short, tp->num_Numbers, tp->Numbers); -+ TYPE_REALLOC(short, tp->num_Numbers, tp->Numbers); - for_each_value(tp->num_Numbers) - tp->Numbers[last] = tp->Numbers[last - 1]; - break; - case STRING: - tp->ext_Strings++; - tp->num_Strings++; -- tp->Strings = typeRealloc(char *, tp->num_Strings, tp->Strings); -+ TYPE_REALLOC(char *, tp->num_Strings, tp->Strings); - for_each_value(tp->num_Strings) - tp->Strings[last] = tp->Strings[last - 1]; - break; - } - actual = NUM_EXT_NAMES(tp); -- tp->ext_Names = typeRealloc(char *, actual, tp->ext_Names); -+ TYPE_REALLOC(char *, actual, tp->ext_Names); - while (--actual > offset) - tp->ext_Names[actual] = tp->ext_Names[actual - 1]; - tp->ext_Names[offset] = _nc_save_str(name); -@@ -203,6 +203,8 @@ - { bad_tc_usage = TRUE; \ - _nc_warning("Legacy termcap allows only a trailing tc= clause"); } - -+#define MAX_NUMBER 0x7fff /* positive shorts only */ -+ - NCURSES_EXPORT(int) - _nc_parse_entry(struct entry *entryp, int literal, bool silent) - { -@@ -444,8 +446,12 @@ - break; - - case NUMBER: -- entryp->tterm.Numbers[entry_ptr->nte_index] = -- (short) _nc_curr_token.tk_valnumber; -+ if (_nc_curr_token.tk_valnumber > MAX_NUMBER) { -+ entryp->tterm.Numbers[entry_ptr->nte_index] = MAX_NUMBER; -+ } else { -+ entryp->tterm.Numbers[entry_ptr->nte_index] = -+ (short) _nc_curr_token.tk_valnumber; -+ } - break; - - case STRING: -@@ -654,14 +660,16 @@ - - if (WANTED(carriage_return)) { - if (carriage_return_delay > 0) { -- sprintf(buf, "%s$<%d>", C_CR, carriage_return_delay); -+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) -+ "%s$<%d>", C_CR, carriage_return_delay); - carriage_return = _nc_save_str(buf); - } else - carriage_return = _nc_save_str(C_CR); - } - if (WANTED(cursor_left)) { - if (backspace_delay > 0) { -- sprintf(buf, "%s$<%d>", C_BS, backspace_delay); -+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) -+ "%s$<%d>", C_BS, backspace_delay); - cursor_left = _nc_save_str(buf); - } else if (backspaces_with_bs == 1) - cursor_left = _nc_save_str(C_BS); -@@ -674,7 +682,8 @@ - cursor_down = linefeed_if_not_lf; - else if (linefeed_is_newline != 1) { - if (new_line_delay > 0) { -- sprintf(buf, "%s$<%d>", C_LF, new_line_delay); -+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) -+ "%s$<%d>", C_LF, new_line_delay); - cursor_down = _nc_save_str(buf); - } else - cursor_down = _nc_save_str(C_LF); -@@ -685,7 +694,8 @@ - cursor_down = linefeed_if_not_lf; - else if (linefeed_is_newline != 1) { - if (new_line_delay > 0) { -- sprintf(buf, "%s$<%d>", C_LF, new_line_delay); -+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) -+ "%s$<%d>", C_LF, new_line_delay); - scroll_forward = _nc_save_str(buf); - } else - scroll_forward = _nc_save_str(C_LF); -@@ -694,7 +704,8 @@ - if (WANTED(newline)) { - if (linefeed_is_newline == 1) { - if (new_line_delay > 0) { -- sprintf(buf, "%s$<%d>", C_LF, new_line_delay); -+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) -+ "%s$<%d>", C_LF, new_line_delay); - newline = _nc_save_str(buf); - } else - newline = _nc_save_str(C_LF); -@@ -736,7 +747,8 @@ - */ - if (WANTED(tab)) { - if (horizontal_tab_delay > 0) { -- sprintf(buf, "%s$<%d>", C_HT, horizontal_tab_delay); -+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) -+ "%s$<%d>", C_HT, horizontal_tab_delay); - tab = _nc_save_str(buf); - } else - tab = _nc_save_str(C_HT); -diff -Naur ncurses-5.9/ncurses/tinfo/read_entry.c ncurses-5.9.patch/ncurses/tinfo/read_entry.c ---- ncurses-5.9/ncurses/tinfo/read_entry.c 2011-02-26 16:36:06.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/read_entry.c 2014-09-01 16:33:22.453792284 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -41,11 +41,11 @@ - - #include <tic.h> - --MODULE_ID("$Id: read_entry.c,v 1.108 2011/02/26 15:36:06 tom Exp $") -+MODULE_ID("$Id: read_entry.c,v 1.127 2014/03/08 22:07:31 Xin.Li Exp $") - - #define TYPE_CALLOC(type,elts) typeCalloc(type, (unsigned)(elts)) - --#if USE_DATABASE -+#if NCURSES_USE_DATABASE - static void - convert_shorts(char *buf, short *Numbers, int count) - { -@@ -99,7 +99,7 @@ - if (have > 0) { - if ((int) want > have) - want = (unsigned) have; -- memcpy(dst, src + *offset, want); -+ memcpy(dst, src + *offset, (size_t) want); - *offset += (int) want; - } else { - want = 0; -@@ -107,22 +107,56 @@ - return (int) want; - } - --#define Read(buf, count) fake_read(buffer, &offset, limit, buf, count) -+#define Read(buf, count) fake_read(buffer, &offset, limit, (char *) buf, (unsigned) count) - - #define read_shorts(buf, count) \ -- (Read(buf, (unsigned) (count)*2) == (int) (count)*2) -+ (Read(buf, (count)*2) == (int) (count)*2) - - #define even_boundary(value) \ - if ((value) % 2 != 0) Read(buf, 1) -+#endif -+ -+NCURSES_EXPORT(void) -+_nc_init_termtype(TERMTYPE *const tp) -+{ -+ unsigned i; -+ -+#if NCURSES_XNAMES -+ tp->num_Booleans = BOOLCOUNT; -+ tp->num_Numbers = NUMCOUNT; -+ tp->num_Strings = STRCOUNT; -+ tp->ext_Booleans = 0; -+ tp->ext_Numbers = 0; -+ tp->ext_Strings = 0; -+#endif -+ if (tp->Booleans == 0) -+ TYPE_MALLOC(NCURSES_SBOOL, BOOLCOUNT, tp->Booleans); -+ if (tp->Numbers == 0) -+ TYPE_MALLOC(short, NUMCOUNT, tp->Numbers); -+ if (tp->Strings == 0) -+ TYPE_MALLOC(char *, STRCOUNT, tp->Strings); -+ -+ for_each_boolean(i, tp) -+ tp->Booleans[i] = FALSE; -+ -+ for_each_number(i, tp) -+ tp->Numbers[i] = ABSENT_NUMERIC; - -+ for_each_string(i, tp) -+ tp->Strings[i] = ABSENT_STRING; -+} -+ -+#if NCURSES_USE_DATABASE -+/* -+ * Return TGETENT_YES if read, TGETENT_NO if not found or garbled. -+ */ - NCURSES_EXPORT(int) - _nc_read_termtype(TERMTYPE *ptr, char *buffer, int limit) --/* return 1 if read, 0 if not found or garbled */ - { - int offset = 0; - int name_size, bool_count, num_count, str_count, str_size; - int i; -- char buf[MAX_ENTRY_SIZE + 1]; -+ char buf[MAX_ENTRY_SIZE + 2]; - char *string_table; - unsigned want, have; - -@@ -157,7 +191,7 @@ - want = (unsigned) (str_size + name_size + 1); - if (str_size) { - /* try to allocate space for the string table */ -- if (str_count * 2 >= (int) sizeof(buf) -+ if (str_count * 2 >= MAX_ENTRY_SIZE - || (string_table = typeMalloc(char, want)) == 0) { - return (TGETENT_NO); - } -@@ -173,7 +207,7 @@ - ptr->str_table = string_table; - ptr->term_names = string_table; - if ((have = (unsigned) Read(ptr->term_names, want)) != want) { -- memset(ptr->term_names + have, 0, want - have); -+ memset(ptr->term_names + have, 0, (size_t) (want - have)); - } - ptr->term_names[want] = '\0'; - string_table += (want + 1); -@@ -236,9 +270,9 @@ - unsigned need = (unsigned) (ext_bool_count + ext_num_count + ext_str_count); - int base = 0; - -- if (need >= sizeof(buf) -- || ext_str_size >= (int) sizeof(buf) -- || ext_str_limit >= (int) sizeof(buf) -+ if (need >= (MAX_ENTRY_SIZE / 2) -+ || ext_str_size >= MAX_ENTRY_SIZE -+ || ext_str_limit >= MAX_ENTRY_SIZE - || ext_bool_count < 0 - || ext_num_count < 0 - || ext_str_count < 0 -@@ -250,9 +284,9 @@ - ptr->num_Numbers = UShort(NUMCOUNT + ext_num_count); - ptr->num_Strings = UShort(STRCOUNT + ext_str_count); - -- ptr->Booleans = typeRealloc(NCURSES_SBOOL, ptr->num_Booleans, ptr->Booleans); -- ptr->Numbers = typeRealloc(short, ptr->num_Numbers, ptr->Numbers); -- ptr->Strings = typeRealloc(char *, ptr->num_Strings, ptr->Strings); -+ TYPE_REALLOC(NCURSES_SBOOL, ptr->num_Booleans, ptr->Booleans); -+ TYPE_REALLOC(short, ptr->num_Numbers, ptr->Numbers); -+ TYPE_REALLOC(char *, ptr->num_Strings, ptr->Strings); - - TR(TRACE_DATABASE, ("extended header is %d/%d/%d(%d:%d)", - ext_bool_count, ext_num_count, ext_str_count, -@@ -277,6 +311,8 @@ - } - - TR(TRACE_DATABASE, ("READ extended-offsets @%d", offset)); -+ if ((unsigned) (ext_str_count + (int) need) >= (MAX_ENTRY_SIZE / 2)) -+ return (TGETENT_NO); - if ((ext_str_count || need) - && !read_shorts(buf, ext_str_count + (int) need)) - return (TGETENT_NO); -@@ -313,7 +349,7 @@ - } - - if (need) { -- if (ext_str_count >= (MAX_ENTRY_SIZE * 2)) -+ if (ext_str_count >= (MAX_ENTRY_SIZE / 2)) - return (TGETENT_NO); - if ((ptr->ext_Names = TYPE_CALLOC(char *, need)) == 0) - return (TGETENT_NO); -@@ -326,17 +362,18 @@ - ext_str_limit, ptr->ext_str_table + base); - } - -- T(("...done reading terminfo bool %d(%d) num %d(%d) str %d(%d)", -- ptr->num_Booleans, ptr->ext_Booleans, -- ptr->num_Numbers, ptr->ext_Numbers, -- ptr->num_Strings, ptr->ext_Strings)); -+ TR(TRACE_DATABASE, -+ ("...done reading terminfo bool %d(%d) num %d(%d) str %d(%d)", -+ ptr->num_Booleans, ptr->ext_Booleans, -+ ptr->num_Numbers, ptr->ext_Numbers, -+ ptr->num_Strings, ptr->ext_Strings)); - - TR(TRACE_DATABASE, ("extend: num_Booleans:%d", ptr->num_Booleans)); - } else - #endif /* NCURSES_XNAMES */ - { -- T(("...done reading terminfo bool %d num %d str %d", -- bool_count, num_count, str_count)); -+ TR(TRACE_DATABASE, ("...done reading terminfo bool %d num %d str %d", -+ bool_count, num_count, str_count)); - #if NCURSES_XNAMES - TR(TRACE_DATABASE, ("normal: num_Booleans:%d", ptr->num_Booleans)); - #endif -@@ -371,13 +408,13 @@ - - if (_nc_access(filename, R_OK) < 0 - || (fp = fopen(filename, "rb")) == 0) { -- T(("cannot open terminfo %s (errno=%d)", filename, errno)); -+ TR(TRACE_DATABASE, ("cannot open terminfo %s (errno=%d)", filename, errno)); - code = TGETENT_NO; - } else { - if ((limit = (int) fread(buffer, sizeof(char), sizeof(buffer), fp)) - > 0) { - -- T(("read terminfo %s", filename)); -+ TR(TRACE_DATABASE, ("read terminfo %s", filename)); - if ((code = _nc_read_termtype(ptr, buffer, limit)) == TGETENT_NO) { - _nc_free_termtype(ptr); - } -@@ -390,6 +427,58 @@ - return (code); - } - -+#if USE_HASHED_DB -+/* -+ * Return if if we can build the filename of a ".db" file. -+ */ -+static bool -+make_db_filename(char *filename, unsigned limit, const char *const path) -+{ -+ static const char suffix[] = DBM_SUFFIX; -+ -+ size_t lens = sizeof(suffix) - 1; -+ size_t size = strlen(path); -+ size_t test = lens + size; -+ bool result = FALSE; -+ -+ if (test < limit) { -+ if (size >= lens -+ && !strcmp(path + size - lens, suffix)) -+ _nc_STRCPY(filename, path, limit); -+ else -+ _nc_SPRINTF(filename, _nc_SLIMIT(limit) "%s%s", path, suffix); -+ result = TRUE; -+ } -+ return result; -+} -+#endif -+ -+/* -+ * Return true if we can build the name of a filesystem entry. -+ */ -+static bool -+make_dir_filename(char *filename, -+ unsigned limit, -+ const char *const path, -+ const char *name) -+{ -+ bool result = FALSE; -+ -+#if NCURSES_USE_TERMCAP -+ if (_nc_is_dir_path(path)) -+#endif -+ { -+ unsigned need = (unsigned) (LEAF_LEN + 3 + strlen(path) + strlen(name)); -+ -+ if (need <= limit) { -+ _nc_SPRINTF(filename, _nc_SLIMIT(limit) -+ "%s/" LEAF_FMT "/%s", path, *name, name); -+ result = TRUE; -+ } -+ } -+ return result; -+} -+ - /* - * Build a terminfo pathname and try to read the data. Returns TGETENT_YES on - * success, TGETENT_NO on failure. -@@ -401,103 +490,82 @@ - const char *name, - TERMTYPE *const tp) - { -- int result = TGETENT_NO; -- -- /* -- * If we are looking in a directory, assume the entry is a file under that, -- * according to the normal rules. -- */ -- unsigned need = (unsigned) (LEAF_LEN + 3 + strlen(path) + strlen(name)); -- if (need <= limit) -- (void) sprintf(filename, "%s/" LEAF_FMT "/%s", path, *name, name); -+ int code = TGETENT_NO; - -- if (_nc_is_dir_path(path)) -- result = _nc_read_file_entry(filename, tp); - #if USE_HASHED_DB -- else { -- static const char suffix[] = DBM_SUFFIX; -- DB *capdbp; -- unsigned lens = sizeof(suffix) - 1; -- unsigned size = strlen(path); -- unsigned test = lens + size; -- -- if (test < limit) { -- if (size >= lens -- && !strcmp(path + size - lens, suffix)) -- (void) strcpy(filename, path); -- else -- (void) sprintf(filename, "%s%s", path, suffix); -+ DB *capdbp; - -- /* -- * It would be nice to optimize the dbopen/close activity, as -- * done in the cgetent implementation for tc= clauses. However, -- * since we support multiple database locations, we cannot do -- * that. -- */ -- if ((capdbp = _nc_db_open(filename, FALSE)) != 0) { -- DBT key, data; -- int reccnt = 0; -- char *save = strdup(name); -- -- memset(&key, 0, sizeof(key)); -- key.data = save; -- key.size = strlen(save); -- -- /* -- * This lookup could return termcap data, which we do not want. -- * We are looking for compiled (binary) terminfo data. -- * -- * cgetent uses a two-level lookup. On the first it uses the -- * given name to return a record containing only the aliases -- * for an entry. On the second (using that list of aliases as -- * a key), it returns the content of the terminal description. -- * We expect second lookup to return data beginning with the -- * same set of aliases. -- * -- * For compiled terminfo, the list of aliases in the second -- * case will be null-terminated. A termcap entry will not be, -- * and will run on into the description. So we can easily -- * distinguish between the two (source/binary) by checking the -- * lengths. -- */ -- while (_nc_db_get(capdbp, &key, &data) == 0) { -- int used = data.size - 1; -- char *have = (char *) data.data; -- -- if (*have++ == 0) { -- if (data.size > key.size -- && IS_TIC_MAGIC(have)) { -- result = _nc_read_termtype(tp, have, used); -- if (result == TGETENT_NO) { -- _nc_free_termtype(tp); -- } -- } -- break; -- } -+ if (make_db_filename(filename, limit, path) -+ && (capdbp = _nc_db_open(filename, FALSE)) != 0) { - -- /* -- * Just in case we have a corrupt database, do not waste -- * time with it. -- */ -- if (++reccnt >= 3) -- break; -- -- /* -- * Prepare for the second level. -- */ -- key.data = have; -- key.size = used; -+ DBT key, data; -+ int reccnt = 0; -+ char *save = strdup(name); -+ -+ memset(&key, 0, sizeof(key)); -+ key.data = save; -+ key.size = strlen(save); -+ -+ /* -+ * This lookup could return termcap data, which we do not want. We are -+ * looking for compiled (binary) terminfo data. -+ * -+ * cgetent uses a two-level lookup. On the first it uses the given -+ * name to return a record containing only the aliases for an entry. -+ * On the second (using that list of aliases as a key), it returns the -+ * content of the terminal description. We expect second lookup to -+ * return data beginning with the same set of aliases. -+ * -+ * For compiled terminfo, the list of aliases in the second case will -+ * be null-terminated. A termcap entry will not be, and will run on -+ * into the description. So we can easily distinguish between the two -+ * (source/binary) by checking the lengths. -+ */ -+ while (_nc_db_get(capdbp, &key, &data) == 0) { -+ int used = (int) data.size - 1; -+ char *have = (char *) data.data; -+ -+ if (*have++ == 0) { -+ if (data.size > key.size -+ && IS_TIC_MAGIC(have)) { -+ code = _nc_read_termtype(tp, have, used); -+ if (code == TGETENT_NO) { -+ _nc_free_termtype(tp); -+ } - } -- -- _nc_db_close(capdbp); -- free(save); -+ break; - } -+ -+ /* -+ * Just in case we have a corrupt database, do not waste time with -+ * it. -+ */ -+ if (++reccnt >= 3) -+ break; -+ -+ /* -+ * Prepare for the second level. -+ */ -+ key.data = have; -+ key.size = used; - } -+ -+ free(save); -+ } else /* may be either filesystem or flat file */ -+#endif -+ if (make_dir_filename(filename, limit, path, name)) { -+ code = _nc_read_file_entry(filename, tp); -+ } -+#if NCURSES_USE_TERMCAP -+ else if (code != TGETENT_YES) { -+ code = _nc_read_termcap_entry(name, tp); -+ _nc_SPRINTF(filename, _nc_SLIMIT(PATH_MAX) -+ "%.*s", PATH_MAX - 1, _nc_get_source()); - } - #endif -- return result; -+ return code; - } --#endif /* USE_DATABASE */ -+#endif /* NCURSES_USE_DATABASE */ - - /* - * _nc_read_entry(char *name, char *filename, TERMTYPE *tp) -@@ -513,31 +581,35 @@ - { - int code = TGETENT_NO; - -- sprintf(filename, "%.*s", PATH_MAX - 1, name); -+ _nc_SPRINTF(filename, _nc_SLIMIT(PATH_MAX) -+ "%.*s", PATH_MAX - 1, name); -+ - if (strlen(name) == 0 - || strcmp(name, ".") == 0 - || strcmp(name, "..") == 0 - || _nc_pathlast(name) != 0 - || strchr(name, NCURSES_PATHSEP) != 0) { -- T(("illegal or missing entry name '%s'", name)); -+ TR(TRACE_DATABASE, ("illegal or missing entry name '%s'", name)); - } else { --#if USE_DATABASE -- DBDIRS state = dbdTIC; -- int offset = 0; -+#if NCURSES_USE_DATABASE -+ DBDIRS state; -+ int offset; - const char *path; - -+ _nc_first_db(&state, &offset); - while ((path = _nc_next_db(&state, &offset)) != 0) { -+ TR(TRACE_DATABASE, ("_nc_read_tic_entry path=%s, name=%s", path, name)); - code = _nc_read_tic_entry(filename, PATH_MAX, path, name, tp); - if (code == TGETENT_YES) { - _nc_last_db(); - break; - } - } --#endif --#if USE_TERMCAP -+#elif NCURSES_USE_TERMCAP - if (code != TGETENT_YES) { - code = _nc_read_termcap_entry(name, tp); -- sprintf(filename, "%.*s", PATH_MAX - 1, _nc_get_source()); -+ _nc_SPRINTF(filename, _nc_SLIMIT(PATH_MAX) -+ "%.*s", PATH_MAX - 1, _nc_get_source()); - } - #endif - } -diff -Naur ncurses-5.9/ncurses/tinfo/read_termcap.c ncurses-5.9.patch/ncurses/tinfo/read_termcap.c ---- ncurses-5.9/ncurses/tinfo/read_termcap.c 2010-01-23 18:57:43.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/read_termcap.c 2014-09-01 16:33:22.453792284 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -54,10 +54,9 @@ - - #include <ctype.h> - #include <sys/types.h> --#include <sys/stat.h> - #include <tic.h> - --MODULE_ID("$Id: read_termcap.c,v 1.74 2010/01/23 17:57:43 tom Exp $") -+MODULE_ID("$Id: read_termcap.c,v 1.89 2013/12/15 00:32:43 tom Exp $") - - #if !PURE_TERMINFO - -@@ -74,7 +73,7 @@ - - if (!use_terminfo_vars() || (result = getenv("TERMPATH")) == 0) - result = TERMPATH; -- T(("TERMPATH is %s", result)); -+ TR(TRACE_DATABASE, ("TERMPATH is %s", result)); - return result; - } - -@@ -162,7 +161,7 @@ - return (-1); - } - gottoprec = 0; -- (void) strcpy(toprec, ent); -+ _nc_STRCPY(toprec, ent, topreclen); - return (0); - } - -@@ -295,7 +294,7 @@ - errno = ENOMEM; - return (TC_SYS_ERR); - } -- (void) strcpy(record, toprec); -+ _nc_STRCPY(record, toprec, topreclen + BFRAG); - rp = record + topreclen + 1; - r_end = rp + BFRAG; - current = in_array; -@@ -384,7 +383,14 @@ - c = *bp++; - if (c == '\n') { - lineno++; -- if (rp == record || *(rp - 1) != '\\') -+ /* -+ * Unlike BSD 4.3, this ignores a backslash at the -+ * end of a comment-line. That makes it consistent -+ * with the rest of ncurses -TD -+ */ -+ if (rp == record -+ || *record == '#' -+ || *(rp - 1) != '\\') - break; - } - *rp++ = c; -@@ -442,8 +448,10 @@ - break; - } - -- if (!foundit) -+ if (!foundit) { -+ free(record); - return (TC_NOT_FOUND); -+ } - } - - /* -@@ -455,7 +463,7 @@ - register int newilen; - unsigned ilen; - int diff, iret, tclen, oline; -- char *icap, *scan, *tc, *tcstart, *tcend; -+ char *icap = 0, *scan, *tc, *tcstart, *tcend; - - /* - * Loop invariants: -@@ -468,8 +476,9 @@ - scan = record; - tc_not_resolved = FALSE; - for (;;) { -- if ((tc = _nc_cgetcap(scan, "tc", '=')) == 0) -+ if ((tc = _nc_cgetcap(scan, "tc", '=')) == 0) { - break; -+ } - - /* - * Find end of tc=name and stomp on the trailing `:' -@@ -486,6 +495,7 @@ - tclen = s - tcstart; - tcend = s; - -+ icap = 0; - iret = _nc_getent(&icap, &ilen, &oline, current, db_array, fd, - tc, depth + 1, 0); - newicap = icap; /* Put into a register. */ -@@ -496,12 +506,13 @@ - if (myfd) - (void) close(fd); - free(record); -+ FreeIfNeeded(icap); - return (iret); - } -- if (iret == TC_UNRESOLVED) -+ if (iret == TC_UNRESOLVED) { - tc_not_resolved = TRUE; -- /* couldn't resolve tc */ -- if (iret == TC_NOT_FOUND) { -+ /* couldn't resolve tc */ -+ } else if (iret == TC_NOT_FOUND) { - *(s - 1) = ':'; - scan = s - 1; - tc_not_resolved = TRUE; -@@ -581,8 +592,9 @@ - } - - *cap = record; -- if (tc_not_resolved) -+ if (tc_not_resolved) { - return (TC_UNRESOLVED); -+ } - return (current); - } - -@@ -697,8 +709,6 @@ - #define PVECSIZ 32 /* max number of names in path */ - #define TBUFSIZ (2048*2) - --static char *tbuf; -- - /* - * On entry, srcp points to a non ':' character which is the beginning of the - * token, if any. We'll try to return a string that doesn't end with a ':'. -@@ -760,7 +770,7 @@ - dst = 0; - break; - } -- *dst++ = ch; -+ *dst++ = (char) ch; - } - return dst; - } -@@ -776,18 +786,16 @@ - register char *p; - register char *cp; - char *dummy = NULL; -- char **fname; -+ CGETENT_CONST char **fname; - char *home; - int i; - char pathbuf[PBUFSIZ]; /* holds raw path of filenames */ -- char *pathvec[PVECSIZ]; /* to point to names in pathbuf */ -- char **pvec; /* holds usable tail of path vector */ -+ CGETENT_CONST char *pathvec[PVECSIZ]; /* point to names in pathbuf */ - NCURSES_CONST char *termpath; - string_desc desc; - -+ *lineno = 1; - fname = pathvec; -- pvec = pathvec; -- tbuf = bp; - p = pathbuf; - cp = use_terminfo_vars()? getenv("TERMCAP") : NULL; - -@@ -812,10 +820,11 @@ - if ((home = getenv("HOME")) != 0 && *home != '\0' - && strchr(home, ' ') == 0 - && strlen(home) < sizeof(temp) - 10) { /* setup path */ -- sprintf(temp, "%s/", home); /* $HOME first */ -+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) -+ "%s/", home); /* $HOME first */ - } - /* if no $HOME look in current directory */ -- strcat(temp, ".termcap"); -+ _nc_STRCAT(temp, ".termcap", sizeof(temp)); - _nc_safe_strcat(&desc, temp); - _nc_safe_strcat(&desc, " "); - _nc_safe_strcat(&desc, get_termpath()); -@@ -841,6 +850,9 @@ - } - } - *fname = 0; /* mark end of vector */ -+#if !HAVE_BSD_CGETENT -+ (void) _nc_cgetset(0); -+#endif - if (_nc_is_abs_path(cp)) { - if (_nc_cgetset(cp) < 0) { - return (TC_SYS_ERR); -@@ -853,6 +865,7 @@ - * empty fields, and mistakenly use the last valid cap entry instead of - * the first (breaks tc= includes) - */ -+ *bp = '\0'; - if (i >= 0) { - char *pd, *ps, *tok; - int endflag = FALSE; -@@ -874,7 +887,7 @@ - } - if (ignore != TRUE) { - list[count++] = tok; -- pd = copy_tc_token(pd, tok, TBUFSIZ - (2 + pd - bp)); -+ pd = copy_tc_token(pd, tok, (size_t) (TBUFSIZ - (2 + pd - bp))); - if (pd == 0) { - i = -1; - break; -@@ -932,7 +945,7 @@ - if (count < MAXPATHS - && _nc_access(path, R_OK) == 0) { - termpaths[count++] = path; -- T(("Adding termpath %s", path)); -+ TR(TRACE_DATABASE, ("Adding termpath %s", path)); - } - termpaths[count] = 0; - if (save != 0) -@@ -956,13 +969,13 @@ - static char *source; - static int lineno; - -- T(("read termcap entry for %s", tn)); -+ TR(TRACE_DATABASE, ("read termcap entry for %s", tn)); - - if (strlen(tn) == 0 - || strcmp(tn, ".") == 0 - || strcmp(tn, "..") == 0 - || _nc_pathlast(tn) != 0) { -- T(("illegal or missing entry name '%s'", tn)); -+ TR(TRACE_DATABASE, ("illegal or missing entry name '%s'", tn)); - return TGETENT_NO; - } - -@@ -980,7 +993,7 @@ - _nc_curr_line = lineno; - _nc_set_source(source); - } -- _nc_read_entry_source((FILE *) 0, tc, FALSE, FALSE, NULLHOOK); -+ _nc_read_entry_source((FILE *) 0, tc, FALSE, TRUE, NULLHOOK); - #else - /* - * Here is what the 4.4BSD termcap(3) page prescribes: -@@ -1027,7 +1040,9 @@ - normal = FALSE; - } else if (_nc_name_match(tc, tn, "|:")) { /* treat as a capability file */ - use_buffer = TRUE; -- (void) sprintf(tc_buf, "%.*s\n", (int) sizeof(tc_buf) - 2, tc); -+ _nc_SPRINTF(tc_buf, -+ _nc_SLIMIT(sizeof(tc_buf)) -+ "%.*s\n", (int) sizeof(tc_buf) - 2, tc); - normal = FALSE; - } - } -@@ -1049,8 +1064,9 @@ - if (use_terminfo_vars() && (h = getenv("HOME")) != NULL && *h != '\0' - && (strlen(h) + sizeof(PRIVATE_CAP)) < PATH_MAX) { - /* user's .termcap, if any, should override it */ -- (void) strcpy(envhome, h); -- (void) sprintf(pathbuf, PRIVATE_CAP, envhome); -+ _nc_STRCPY(envhome, h, sizeof(envhome)); -+ _nc_SPRINTF(pathbuf, _nc_SLIMIT(sizeof(pathbuf)) -+ PRIVATE_CAP, envhome); - ADD_TC(pathbuf, filecount); - } - } -@@ -1063,7 +1079,7 @@ - for (j = 0; j < filecount; j++) { - bool omit = FALSE; - if (stat(termpaths[j], &test_stat[j]) != 0 -- || (test_stat[j].st_mode & S_IFMT) != S_IFREG) { -+ || !S_ISREG(test_stat[j].st_mode)) { - omit = TRUE; - } else { - for (k = 0; k < j; k++) { -@@ -1075,7 +1091,7 @@ - } - } - if (omit) { -- T(("Path %s is a duplicate", termpaths[j])); -+ TR(TRACE_DATABASE, ("Path %s is a duplicate", termpaths[j])); - for (k = j + 1; k < filecount; k++) { - termpaths[k - 1] = termpaths[k]; - test_stat[k - 1] = test_stat[k]; -@@ -1100,7 +1116,7 @@ - - for (i = 0; i < filecount; i++) { - -- T(("Looking for %s in %s", tn, termpaths[i])); -+ TR(TRACE_DATABASE, ("Looking for %s in %s", tn, termpaths[i])); - if (_nc_access(termpaths[i], R_OK) == 0 - && (fp = fopen(termpaths[i], "r")) != (FILE *) 0) { - _nc_set_source(termpaths[i]); -@@ -1138,8 +1154,7 @@ - * from the list. - */ - *tp = ep->tterm; -- _nc_delink_entry(_nc_head, &(ep->tterm)); -- free(ep); -+ _nc_free_entry(_nc_head, &(ep->tterm)); - - /* - * OK, now try to write the type to user's terminfo directory. -diff -Naur ncurses-5.9/ncurses/tinfo/setbuf.c ncurses-5.9.patch/ncurses/tinfo/setbuf.c ---- ncurses-5.9/ncurses/tinfo/setbuf.c 2010-08-28 23:08:31.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/setbuf.c 1970-01-01 01:00:00.000000000 +0100 -@@ -1,169 +0,0 @@ --/**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -- * * -- * Permission is hereby granted, free of charge, to any person obtaining a * -- * copy of this software and associated documentation files (the * -- * "Software"), to deal in the Software without restriction, including * -- * without limitation the rights to use, copy, modify, merge, publish, * -- * distribute, distribute with modifications, sublicense, and/or sell * -- * copies of the Software, and to permit persons to whom the Software is * -- * furnished to do so, subject to the following conditions: * -- * * -- * The above copyright notice and this permission notice shall be included * -- * in all copies or substantial portions of the Software. * -- * * -- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -- * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -- * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -- * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -- * * -- * Except as contained in this notice, the name(s) of the above copyright * -- * holders shall not be used in advertising or otherwise to promote the * -- * sale, use or other dealings in this Software without prior written * -- * authorization. * -- ****************************************************************************/ -- --/**************************************************************************** -- * Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995 * -- * and: Eric S. Raymond <esr@snark.thyrsus.com> * -- * and: Thomas E. Dickey 1996-on * -- * and: Juergen Pfeifer 2008 * -- ****************************************************************************/ -- --/* --** setbuf.c --** --** Support for set_term(), reset_shell_mode(), reset_prog_mode(). --** --*/ -- --#include <curses.priv.h> -- --MODULE_ID("$Id: setbuf.c,v 1.16 2010/08/28 21:08:31 tom Exp $") -- --/* -- * If the output file descriptor is connected to a tty (the typical case) it -- * will probably be line-buffered. Keith Bostic pointed out that we don't want -- * this; it hoses people running over networks by forcing out a bunch of small -- * packets instead of one big one, so screen updates on ptys look jerky. -- * Restore block buffering to prevent this minor lossage. -- * -- * The buffer size is a compromise. Ideally we'd like a buffer that can hold -- * the maximum possible update size (the whole screen plus cup commands to -- * change lines as it's painted). On a 66-line xterm this can become -- * excessive. So we min it with the amount of data we think we can get through -- * two Ethernet packets (maximum packet size - 100 for TCP/IP overhead). -- * -- * Why two ethernet packets? It used to be one, on the theory that said -- * packets define the maximum size of atomic update. But that's less than the -- * 2000 chars on a 25 x 80 screen, and we don't want local updates to flicker -- * either. Two packet lengths will handle up to a 35 x 80 screen. -- * -- * The magic '6' is the estimated length of the end-of-line cup sequence to go -- * to the next line. It's generous. We used to mess with the buffering in -- * init_mvcur() after cost computation, but that lost the sequences emitted by -- * init_acs() in setupscreen(). -- * -- * "The setvbuf function may be used only after the stream pointed to by stream -- * has been associated with an open file and before any other operation is -- * performed on the stream." (ISO 7.9.5.6.) -- * -- * Grrrr... -- * -- * On a lighter note, many implementations do in fact allow an application to -- * reset the buffering after it has been written to. We try to do this because -- * otherwise we leave stdout in buffered mode after endwin() is called. (This -- * also happens with SVr4 curses). -- * -- * There are pros/cons: -- * -- * con: -- * There is no guarantee that we can reestablish buffering once we've -- * dropped it. -- * -- * We _may_ lose data if the implementation does not coordinate this with -- * fflush. -- * -- * pro: -- * An implementation is more likely to refuse to change the buffering than -- * to do it in one of the ways mentioned above. -- * -- * The alternative is to have the application try to change buffering -- * itself, which is certainly no improvement. -- * -- * Just in case it does not work well on a particular system, the calls to -- * change buffering are all via the macro NC_BUFFERED. Some implementations -- * do indeed get confused by changing setbuf on/off, and will overrun the -- * buffer. So we disable this by default (there may yet be a workaround). -- */ --NCURSES_EXPORT(void) --NCURSES_SP_NAME(_nc_set_buffer) (NCURSES_SP_DCLx FILE *ofp, bool buffered) --{ -- int Cols; -- int Lines; -- -- if (0 == SP_PARM) -- return; -- -- Cols = *(ptrCols(SP_PARM)); -- Lines = *(ptrLines(SP_PARM)); -- -- /* optional optimization hack -- do before any output to ofp */ --#if HAVE_SETVBUF || HAVE_SETBUFFER -- if (SP_PARM->_buffered != buffered) { -- unsigned buf_len; -- char *buf_ptr; -- -- if (getenv("NCURSES_NO_SETBUF") != 0) -- return; -- -- fflush(ofp); --#ifdef __DJGPP__ -- setmode(ofp, O_BINARY); --#endif -- if (buffered != 0) { -- buf_len = (unsigned) min(Lines * (Cols + 6), 2800); -- if ((buf_ptr = SP_PARM->_setbuf) == 0) { -- if ((buf_ptr = typeMalloc(char, buf_len)) == NULL) -- return; -- SP_PARM->_setbuf = buf_ptr; -- /* Don't try to free this! */ -- } --#if !USE_SETBUF_0 -- else -- return; --#endif -- } else { --#if !USE_SETBUF_0 -- return; --#else -- buf_len = 0; -- buf_ptr = 0; --#endif -- } -- --#if HAVE_SETVBUF --#ifdef SETVBUF_REVERSED /* pre-svr3? */ -- (void) setvbuf(ofp, buf_ptr, buf_len, buf_len ? _IOFBF : _IOLBF); --#else -- (void) setvbuf(ofp, buf_ptr, buf_len ? _IOFBF : _IOLBF, buf_len); --#endif --#elif HAVE_SETBUFFER -- (void) setbuffer(ofp, buf_ptr, (int) buf_len); --#endif -- -- SP_PARM->_buffered = buffered; -- } --#endif /* HAVE_SETVBUF || HAVE_SETBUFFER */ --} -- --#if NCURSES_SP_FUNCS --NCURSES_EXPORT(void) --_nc_set_buffer(FILE *ofp, bool buffered) --{ -- NCURSES_SP_NAME(_nc_set_buffer) (CURRENT_SCREEN, ofp, buffered); --} --#endif -diff -Naur ncurses-5.9/ncurses/tinfo/strings.c ncurses-5.9.patch/ncurses/tinfo/strings.c ---- ncurses-5.9/ncurses/tinfo/strings.c 2007-08-11 19:12:17.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tinfo/strings.c 2014-09-01 16:33:22.453792284 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2000-2003,2007 Free Software Foundation, Inc. * -+ * Copyright (c) 2000-2007,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,7 +36,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: strings.c,v 1.6 2007/08/11 17:12:17 tom Exp $") -+MODULE_ID("$Id: strings.c,v 1.8 2012/02/22 22:34:31 tom Exp $") - - /**************************************************************************** - * Useful string functions (especially for mvcur) -@@ -110,7 +110,7 @@ - - if (len < dst->s_size) { - if (dst->s_tail != 0) { -- strcpy(dst->s_tail, src); -+ _nc_STRCPY(dst->s_tail, src, dst->s_size); - dst->s_tail += len; - } - dst->s_size -= len; -@@ -131,7 +131,7 @@ - - if (len < dst->s_size) { - if (dst->s_head != 0) { -- strcpy(dst->s_head, src); -+ _nc_STRCPY(dst->s_head, src, dst->s_size); - dst->s_tail = dst->s_head + len; - } - dst->s_size = dst->s_init - len; -diff -Naur ncurses-5.9/ncurses/tinfo/tinfo_driver.c ncurses-5.9.patch/ncurses/tinfo/tinfo_driver.c ---- ncurses-5.9/ncurses/tinfo/tinfo_driver.c 2010-12-20 02:47:09.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/tinfo_driver.c 2014-09-01 16:33:22.454792285 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2008-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -50,7 +50,7 @@ - # endif - #endif - --MODULE_ID("$Id: tinfo_driver.c,v 1.13 2010/12/20 01:47:09 tom Exp $") -+MODULE_ID("$Id: tinfo_driver.c,v 1.33 2014/03/08 20:33:38 tom Exp $") - - /* - * SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS, -@@ -93,7 +93,7 @@ - - #define TCBMAGIC NCDRV_MAGIC(NCDRV_TINFO) - #define AssertTCB() assert(TCB!=0 && TCB->magic==TCBMAGIC) --#define SetSP() assert(TCB->csp!=0); sp = TCB->csp -+#define SetSP() assert(TCB->csp!=0); sp = TCB->csp; (void) sp - - /* - * This routine needs to do all the work to make curscr look -@@ -106,22 +106,6 @@ - return TINFO_DOUPDATE(TCB->csp); - } - --#define ret_error(code, fmt, arg) if (errret) {\ -- *errret = code;\ -- return(FALSE); \ -- } else {\ -- fprintf(stderr, fmt, arg);\ -- exit(EXIT_FAILURE);\ -- } -- --#define ret_error0(code, msg) if (errret) {\ -- *errret = code;\ -- return(FALSE);\ -- } else {\ -- fprintf(stderr, msg);\ -- exit(EXIT_FAILURE);\ -- } -- - static bool - drv_CanHandle(TERMINAL_CONTROL_BLOCK * TCB, const char *tname, int *errret) - { -@@ -135,7 +119,7 @@ - sp = TCB->csp; - TCB->magic = TCBMAGIC; - --#if (USE_DATABASE || USE_TERMCAP) -+#if (NCURSES_USE_DATABASE || NCURSES_USE_TERMCAP) - status = _nc_setup_tinfo(tname, &termp->type); - #else - status = TGETENT_NO; -@@ -156,12 +140,12 @@ - if (status == TGETENT_ERR) { - ret_error0(status, "terminals database is inaccessible\n"); - } else if (status == TGETENT_NO) { -- ret_error(status, "'%s': unknown terminal type.\n", tname); -+ ret_error1(status, "unknown terminal type.\n", tname); - } - } - result = TRUE; - #if !USE_REENTRANT -- strncpy(ttytype, termp->type.term_names, NAMESIZE - 1); -+ strncpy(ttytype, termp->type.term_names, (size_t) NAMESIZE - 1); - ttytype[NAMESIZE - 1] = '\0'; - #endif - -@@ -169,17 +153,27 @@ - _nc_tinfo_cmdch(termp, *command_character); - - if (generic_type) { -- ret_error(TGETENT_NO, "'%s': I need something more specific.\n", tname); -+ /* -+ * BSD 4.3's termcap contains mis-typed "gn" for wy99. Do a sanity -+ * check before giving up. -+ */ -+ if ((VALID_STRING(cursor_address) -+ || (VALID_STRING(cursor_down) && VALID_STRING(cursor_home))) -+ && VALID_STRING(clear_screen)) { -+ ret_error1(TGETENT_YES, "terminal is not really generic.\n", tname); -+ } else { -+ ret_error1(TGETENT_NO, "I need something more specific.\n", tname); -+ } - } - if (hard_copy) { -- ret_error(TGETENT_YES, "'%s': I can't handle hardcopy terminals.\n", tname); -+ ret_error1(TGETENT_YES, "I can't handle hardcopy terminals.\n", tname); - } - - return result; - } - - static int --drv_dobeepflash(TERMINAL_CONTROL_BLOCK * TCB, bool beepFlag) -+drv_dobeepflash(TERMINAL_CONTROL_BLOCK * TCB, int beepFlag) - { - SCREEN *sp; - int res = ERR; -@@ -190,22 +184,18 @@ - /* FIXME: should make sure that we are not in altchar mode */ - if (beepFlag) { - if (bell) { -- res = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "bell", bell); -+ res = NCURSES_PUTP2("bell", bell); - NCURSES_SP_NAME(_nc_flush) (sp); - } else if (flash_screen) { -- res = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "flash_screen", -- flash_screen); -+ res = NCURSES_PUTP2("flash_screen", flash_screen); - NCURSES_SP_NAME(_nc_flush) (sp); - } - } else { - if (flash_screen) { -- res = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "flash_screen", -- flash_screen); -+ res = NCURSES_PUTP2("flash_screen", flash_screen); - NCURSES_SP_NAME(_nc_flush) (sp); - } else if (bell) { -- res = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "bell", bell); -+ res = NCURSES_PUTP2("bell", bell); - NCURSES_SP_NAME(_nc_flush) (sp); - } - } -@@ -277,7 +267,7 @@ - - static void - drv_setcolor(TERMINAL_CONTROL_BLOCK * TCB, -- bool fore, -+ int fore, - int color, - NCURSES_SP_OUTC outc) - { -@@ -321,7 +311,7 @@ - SetSP(); - - if (orig_pair != 0) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "orig_pair", orig_pair); -+ NCURSES_PUTP2("orig_pair", orig_pair); - result = TRUE; - } - return result; -@@ -337,7 +327,7 @@ - SetSP(); - - if (orig_colors != 0) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "orig_colors", orig_colors); -+ NCURSES_PUTP2("orig_colors", orig_colors); - result = TRUE; - } - return result; -@@ -348,14 +338,18 @@ - { - SCREEN *sp; - bool useEnv = TRUE; -+ bool useTioctl = TRUE; - - AssertTCB(); - sp = TCB->csp; /* can be null here */ - - if (sp) { - useEnv = sp->_use_env; -- } else -+ useTioctl = sp->_use_tioctl; -+ } else { - useEnv = _nc_prescreen.use_env; -+ useTioctl = _nc_prescreen.use_tioctl; -+ } - - /* figure out the size of the screen */ - T(("screen size: terminfo lines = %d columns = %d", lines, columns)); -@@ -363,7 +357,7 @@ - *linep = (int) lines; - *colp = (int) columns; - -- if (useEnv) { -+ if (useEnv || useTioctl) { - int value; - - #ifdef __EMX__ -@@ -371,7 +365,9 @@ - int screendata[2]; - _scrsize(screendata); - *colp = screendata[0]; -- *linep = screendata[1]; -+ *linep = ((sp != 0 && sp->_filtered) -+ ? 1 -+ : screendata[1]); - T(("EMX screen size: environment LINES = %d COLUMNS = %d", - *linep, *colp)); - } -@@ -400,19 +396,33 @@ - } - #endif /* HAVE_SIZECHANGE */ - -- /* -- * Finally, look for environment variables. -- * -- * Solaris lets users override either dimension with an environment -- * variable. -- */ -- if ((value = _nc_getenv_num("LINES")) > 0) { -- *linep = value; -- T(("screen size: environment LINES = %d", *linep)); -- } -- if ((value = _nc_getenv_num("COLUMNS")) > 0) { -- *colp = value; -- T(("screen size: environment COLUMNS = %d", *colp)); -+ if (useEnv) { -+ if (useTioctl) { -+ /* -+ * If environment variables are used, update them. -+ */ -+ if ((sp == 0 || !sp->_filtered) && _nc_getenv_num("LINES") > 0) { -+ _nc_setenv_num("LINES", *linep); -+ } -+ if (_nc_getenv_num("COLUMNS") > 0) { -+ _nc_setenv_num("COLUMNS", *colp); -+ } -+ } -+ -+ /* -+ * Finally, look for environment variables. -+ * -+ * Solaris lets users override either dimension with an environment -+ * variable. -+ */ -+ if ((value = _nc_getenv_num("LINES")) > 0) { -+ *linep = value; -+ T(("screen size: environment LINES = %d", *linep)); -+ } -+ if ((value = _nc_getenv_num("COLUMNS")) > 0) { -+ *colp = value; -+ T(("screen size: environment COLUMNS = %d", *colp)); -+ } - } - - /* if we can't get dynamic info about the size, use static */ -@@ -463,7 +473,7 @@ - } - - static int --drv_sgmode(TERMINAL_CONTROL_BLOCK * TCB, bool setFlag, TTY * buf) -+drv_sgmode(TERMINAL_CONTROL_BLOCK * TCB, int setFlag, TTY * buf) - { - SCREEN *sp = TCB->csp; - TERMINAL *_term = (TERMINAL *) TCB; -@@ -497,7 +507,7 @@ - } - - static int --drv_mode(TERMINAL_CONTROL_BLOCK * TCB, bool progFlag, bool defFlag) -+drv_mode(TERMINAL_CONTROL_BLOCK * TCB, int progFlag, int defFlag) - { - SCREEN *sp; - TERMINAL *_term = (TERMINAL *) TCB; -@@ -527,7 +537,6 @@ - if (sp) { - if (sp->_keypad_on) - _nc_keypad(sp, TRUE); -- NC_BUFFERED(sp, TRUE); - } - code = OK; - } -@@ -553,7 +562,6 @@ - if (sp) { - _nc_keypad(sp, FALSE); - NCURSES_SP_NAME(_nc_flush) (sp); -- NC_BUFFERED(sp, FALSE); - } - code = drv_sgmode(TCB, TRUE, &(_term->Ottyb)); - } -@@ -620,15 +628,13 @@ - static void - drv_init(TERMINAL_CONTROL_BLOCK * TCB) - { -- SCREEN *sp; - TERMINAL *trm; - - AssertTCB(); - - trm = (TERMINAL *) TCB; -- sp = TCB->csp; - -- TCB->info.initcolor = initialize_color; -+ TCB->info.initcolor = VALID_STRING(initialize_color); - TCB->info.canchange = can_change; - TCB->info.hascolor = ((VALID_NUMERIC(max_colors) && VALID_NUMERIC(max_pairs) - && (((set_foreground != NULL) -@@ -657,7 +663,7 @@ - * baudrate. - */ - if (isatty(trm->Filedes)) { -- TCB->drv->mode(TCB, TRUE, TRUE); -+ TCB->drv->td_mode(TCB, TRUE, TRUE); - } - } - -@@ -665,7 +671,7 @@ - #define InPalette(n) ((n) >= 0 && (n) < MAX_PALETTE) - - static void --drv_initpair(TERMINAL_CONTROL_BLOCK * TCB, short pair, short f, short b) -+drv_initpair(TERMINAL_CONTROL_BLOCK * TCB, int pair, int f, int b) - { - SCREEN *sp; - -@@ -681,12 +687,11 @@ - tp[f].red, tp[f].green, tp[f].blue, - tp[b].red, tp[b].green, tp[b].blue)); - -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "initialize_pair", -- TPARM_7(initialize_pair, -- pair, -- tp[f].red, tp[f].green, tp[f].blue, -- tp[b].red, tp[b].green, tp[b].blue)); -+ NCURSES_PUTP2("initialize_pair", -+ TPARM_7(initialize_pair, -+ pair, -+ tp[f].red, tp[f].green, tp[f].blue, -+ tp[b].red, tp[b].green, tp[b].blue)); - } - } - -@@ -712,23 +717,22 @@ - - static void - drv_initcolor(TERMINAL_CONTROL_BLOCK * TCB, -- short color, short r, short g, short b) -+ int color, int r, int g, int b) - { - SCREEN *sp = TCB->csp; - - AssertTCB(); - if (initialize_color != NULL) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "initialize_color", -- TPARM_4(initialize_color, color, r, g, b)); -+ NCURSES_PUTP2("initialize_color", -+ TPARM_4(initialize_color, color, r, g, b)); - } - } - - static void - drv_do_color(TERMINAL_CONTROL_BLOCK * TCB, -- short old_pair, -- short pair, -- bool reverse, -+ int old_pair, -+ int pair, -+ int reverse, - NCURSES_SP_OUTC outc) - { - SCREEN *sp = TCB->csp; -@@ -759,7 +763,7 @@ - if (old_pair >= 0 - && sp != 0 - && NCURSES_SP_NAME(pair_content) (NCURSES_SP_ARGx -- old_pair, -+ (short) old_pair, - &old_fg, - &old_bg) !=ERR) { - if ((isDefaultColor(fg) && !isDefaultColor(old_fg)) -@@ -845,7 +849,9 @@ - } - - static int --drv_testmouse(TERMINAL_CONTROL_BLOCK * TCB, int delay) -+drv_testmouse(TERMINAL_CONTROL_BLOCK * TCB, -+ int delay -+ EVENTLIST_2nd(_nc_eventlist * evl)) - { - int rc = 0; - SCREEN *sp; -@@ -860,11 +866,11 @@ - } else - #endif - { -- rc = TCBOf(sp)->drv->twait(TCBOf(sp), -- TWAIT_MASK, -- delay, -- (int *) 0 -- EVENTLIST_2nd(evl)); -+ rc = TCBOf(sp)->drv->td_twait(TCBOf(sp), -+ TWAIT_MASK, -+ delay, -+ (int *) 0 -+ EVENTLIST_2nd(evl)); - #if USE_SYSMOUSE - if ((sp->_mouse_type == M_SYSMOUSE) - && (sp->_sysmouse_head < sp->_sysmouse_tail) -@@ -882,7 +888,7 @@ - { - SCREEN *sp = TCB->csp; - AssertTCB(); -- return TINFO_MVCUR(sp, yold, xold, ynew, xnew); -+ return NCURSES_SP_NAME(_nc_mvcur) (sp, yold, xold, ynew, xnew); - } - - static void -@@ -892,22 +898,21 @@ - - AssertTCB(); - if (labnum > 0 && labnum <= num_labels) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "plab_norm", -- TPARM_2(plab_norm, labnum, text)); -+ NCURSES_PUTP2("plab_norm", -+ TPARM_2(plab_norm, labnum, text)); - } - } - - static void --drv_hwlabelOnOff(TERMINAL_CONTROL_BLOCK * TCB, bool OnFlag) -+drv_hwlabelOnOff(TERMINAL_CONTROL_BLOCK * TCB, int OnFlag) - { - SCREEN *sp = TCB->csp; - - AssertTCB(); - if (OnFlag) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "label_on", label_on); -+ NCURSES_PUTP2("label_on", label_on); - } else { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "label_off", label_off); -+ NCURSES_PUTP2("label_off", label_off); - } - } - -@@ -948,6 +953,11 @@ - if (sp && sp->_coloron) - attrs |= A_COLOR; - -+#if USE_ITALIC -+ if (enter_italics_mode) -+ attrs |= A_ITALIC; -+#endif -+ - return (attrs); - } - -@@ -972,7 +982,7 @@ - AssertTCB(); - assert(sp != 0); - if (ena_acs != NULL) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "ena_acs", ena_acs); -+ NCURSES_PUTP2("ena_acs", ena_acs); - } - #if NCURSES_EXT_FUNCS - /* -@@ -1074,16 +1084,7 @@ - - if (magic_cookie_glitch > 0) { /* tvi, wyse */ - -- sp->_xmc_triggers = sp->_ok_attributes & ( -- A_STANDOUT | -- A_UNDERLINE | -- A_REVERSE | -- A_BLINK | -- A_DIM | -- A_BOLD | -- A_INVIS | -- A_PROTECT -- ); -+ sp->_xmc_triggers = sp->_ok_attributes & XMC_CONFLICT; - #if 0 - /* - * We "should" treat colors as an attribute. The wyse350 (and its -@@ -1176,7 +1177,7 @@ - if ((pthread_self) && (pthread_kill) && (pthread_equal)) - _nc_globals.read_thread = pthread_self(); - # endif -- n = read(sp->_ifd, &c2, 1); -+ n = read(sp->_ifd, &c2, (size_t) 1); - #if USE_PTHREADS_EINTR - _nc_globals.read_thread = 0; - #endif -@@ -1209,7 +1210,7 @@ - int rc = ERR; - - if (value) { -- rc = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx name, value); -+ rc = NCURSES_PUTP2(name, value); - } - return rc; - } -@@ -1225,7 +1226,7 @@ - } - - static int --drv_kpad(TERMINAL_CONTROL_BLOCK * TCB, bool flag) -+drv_kpad(TERMINAL_CONTROL_BLOCK * TCB, int flag) - { - int ret = ERR; - SCREEN *sp; -@@ -1251,7 +1252,7 @@ - } - - static int --drv_keyok(TERMINAL_CONTROL_BLOCK * TCB, int c, bool flag) -+drv_keyok(TERMINAL_CONTROL_BLOCK * TCB, int c, int flag) - { - SCREEN *sp; - int code = ERR; -@@ -1264,7 +1265,8 @@ - if (c >= 0) { - unsigned ch = (unsigned) c; - if (flag) { -- while ((s = _nc_expand_try(sp->_key_ok, ch, &count, 0)) != 0 -+ while ((s = _nc_expand_try(sp->_key_ok, -+ ch, &count, (size_t) 0)) != 0 - && _nc_remove_key(&(sp->_key_ok), ch)) { - code = _nc_add_to_try(&(sp->_keytry), s, ch); - free(s); -@@ -1273,7 +1275,8 @@ - break; - } - } else { -- while ((s = _nc_expand_try(sp->_keytry, ch, &count, 0)) != 0 -+ while ((s = _nc_expand_try(sp->_keytry, -+ ch, &count, (size_t) 0)) != 0 - && _nc_remove_key(&(sp->_keytry), ch)) { - code = _nc_add_to_try(&(sp->_key_ok), s, ch); - free(s); -diff -Naur ncurses-5.9/ncurses/tinfo/trim_sgr0.c ncurses-5.9.patch/ncurses/tinfo/trim_sgr0.c ---- ncurses-5.9/ncurses/tinfo/trim_sgr0.c 2010-12-26 00:03:57.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/trim_sgr0.c 2014-09-01 16:33:22.454792285 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2005-2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2005-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,7 +36,7 @@ - - #include <tic.h> - --MODULE_ID("$Id: trim_sgr0.c,v 1.12 2010/12/25 23:03:57 tom Exp $") -+MODULE_ID("$Id: trim_sgr0.c,v 1.15 2012/12/15 20:57:17 tom Exp $") - - #undef CUR - #define CUR tp-> -@@ -48,21 +48,28 @@ - static char * - set_attribute_9(TERMTYPE *tp, int flag) - { -- const char *result; -+ const char *value; -+ char *result; - -- if ((result = tparm(set_attributes, 0, 0, 0, 0, 0, 0, 0, 0, flag)) == 0) -- result = ""; -- return strdup(result); -+ value = tparm(set_attributes, 0, 0, 0, 0, 0, 0, 0, 0, flag); -+ if (PRESENT(value)) -+ result = strdup(value); -+ else -+ result = 0; -+ return result; - } - - static int - is_csi(const char *s) - { -- if (UChar(s[0]) == CSI) -- return 1; -- else if (s[0] == ESC && s[1] == L_BRACK) -- return 2; -- return 0; -+ int result = 0; -+ if (s != 0) { -+ if (UChar(s[0]) == CSI) -+ result = 1; -+ else if (s[0] == ESC && s[1] == L_BRACK) -+ result = 2; -+ } -+ return result; - } - - static char * -@@ -97,7 +104,7 @@ - static bool - rewrite_sgr(char *s, char *attr) - { -- if (PRESENT(s)) { -+ if (s != 0) { - if (PRESENT(attr)) { - size_t len_s = strlen(s); - size_t len_a = strlen(attr); -@@ -108,7 +115,7 @@ - for (n = 0; n < len_s - len_a; ++n) { - s[n] = s[n + len_a]; - } -- strcpy(s + n, attr); -+ _nc_STRCPY(s + n, attr, strlen(s) + 1); - TR(TRACE_DATABASE, ("to:\n\t%s", s)); - } - } -@@ -121,33 +128,35 @@ - similar_sgr(char *a, char *b) - { - bool result = FALSE; -- int csi_a = is_csi(a); -- int csi_b = is_csi(b); -- size_t len_a; -- size_t len_b; -- -- TR(TRACE_DATABASE, ("similar_sgr:\n\t%s\n\t%s", -- _nc_visbuf2(1, a), -- _nc_visbuf2(2, b))); -- if (csi_a != 0 && csi_b != 0 && csi_a == csi_b) { -- a += csi_a; -- b += csi_b; -- if (*a != *b) { -- a = skip_zero(a); -- b = skip_zero(b); -+ if (a != 0 && b != 0) { -+ int csi_a = is_csi(a); -+ int csi_b = is_csi(b); -+ size_t len_a; -+ size_t len_b; -+ -+ TR(TRACE_DATABASE, ("similar_sgr:\n\t%s\n\t%s", -+ _nc_visbuf2(1, a), -+ _nc_visbuf2(2, b))); -+ if (csi_a != 0 && csi_b != 0 && csi_a == csi_b) { -+ a += csi_a; -+ b += csi_b; -+ if (*a != *b) { -+ a = skip_zero(a); -+ b = skip_zero(b); -+ } - } -+ len_a = strlen(a); -+ len_b = strlen(b); -+ if (len_a && len_b) { -+ if (len_a > len_b) -+ result = (strncmp(a, b, len_b) == 0); -+ else -+ result = (strncmp(a, b, len_a) == 0); -+ } -+ TR(TRACE_DATABASE, ("...similar_sgr: %d\n\t%s\n\t%s", result, -+ _nc_visbuf2(1, a), -+ _nc_visbuf2(2, b))); - } -- len_a = strlen(a); -- len_b = strlen(b); -- if (len_a && len_b) { -- if (len_a > len_b) -- result = (strncmp(a, b, len_b) == 0); -- else -- result = (strncmp(a, b, len_a) == 0); -- } -- TR(TRACE_DATABASE, ("...similar_sgr: %d\n\t%s\n\t%s", result, -- _nc_visbuf2(1, a), -- _nc_visbuf2(2, b))); - return result; - } - -diff -Naur ncurses-5.9/ncurses/tinfo/write_entry.c ncurses-5.9.patch/ncurses/tinfo/write_entry.c ---- ncurses-5.9/ncurses/tinfo/write_entry.c 2010-12-26 00:23:08.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tinfo/write_entry.c 2014-09-01 16:33:22.454792285 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,21 +39,15 @@ - #include <curses.priv.h> - #include <hashed_db.h> - --#include <sys/stat.h> -- - #include <tic.h> - --#ifndef S_ISDIR --#define S_ISDIR(mode) ((mode & S_IFMT) == S_IFDIR) --#endif -- - #if 1 - #define TRACE_OUT(p) DEBUG(2, p) - #else - #define TRACE_OUT(p) /*nothing */ - #endif - --MODULE_ID("$Id: write_entry.c,v 1.78 2010/12/25 23:23:08 tom Exp $") -+MODULE_ID("$Id: write_entry.c,v 1.91 2013/12/14 21:29:42 tom Exp $") - - static int total_written; - -@@ -76,7 +70,7 @@ - DEBUG(1, ("Created %s", filename)); - - if (write_object(tp, buffer, &offset, limit) == ERR -- || fwrite(buffer, sizeof(char), offset, fp) != offset) { -+ || fwrite(buffer, sizeof(char), (size_t) offset, fp) != offset) { - _nc_syserr_abort("error writing %s/%s", _nc_tic_dir(0), filename); - } - -@@ -99,13 +93,13 @@ - char dir[sizeof(LEAF_FMT)]; - char *s = 0; - -- if (code == 0 || (s = strchr(dirnames, code)) == 0) -+ if (code == 0 || (s = (strchr) (dirnames, code)) == 0) - _nc_err_abort("Illegal terminfo subdirectory \"" LEAF_FMT "\"", code); - - if (verified[s - dirnames]) - return; - -- sprintf(dir, LEAF_FMT, code); -+ _nc_SPRINTF(dir, _nc_SLIMIT(sizeof(dir)) LEAF_FMT, code); - if (make_db_root(dir) < 0) { - _nc_err_abort("%s/%s: permission denied", _nc_tic_dir(0), dir); - } -@@ -115,36 +109,35 @@ - #endif /* !USE_HASHED_DB */ - - static int --make_db_path(char *dst, const char *src, unsigned limit) -+make_db_path(char *dst, const char *src, size_t limit) - { - int rc = -1; - const char *top = _nc_tic_dir(0); - - if (src == top || _nc_is_abs_path(src)) { - if (strlen(src) + 1 <= limit) { -- (void) strcpy(dst, src); -+ _nc_STRCPY(dst, src, limit); - rc = 0; - } - } else { - if (strlen(top) + strlen(src) + 2 <= limit) { -- (void) sprintf(dst, "%s/%s", top, src); -+ _nc_SPRINTF(dst, _nc_SLIMIT(limit) "%s/%s", top, src); - rc = 0; - } - } - #if USE_HASHED_DB - if (rc == 0) { -- if (_nc_is_dir_path(dst)) { -- rc = -1; -- } else { -- static const char suffix[] = DBM_SUFFIX; -- unsigned have = strlen(dst); -- unsigned need = strlen(suffix); -- if (have > need && strcmp(dst + have - need, suffix)) { -- if (have + need <= limit) -- strcat(dst, suffix); -- else -- rc = -1; -+ static const char suffix[] = DBM_SUFFIX; -+ size_t have = strlen(dst); -+ size_t need = strlen(suffix); -+ if (have > need && strcmp(dst + (int) (have - need), suffix)) { -+ if (have + need <= limit) { -+ _nc_STRCAT(dst, suffix, limit); -+ } else { -+ rc = -1; - } -+ } else if (_nc_is_dir_path(dst)) { -+ rc = -1; - } - } - #endif -@@ -164,10 +157,11 @@ - #if USE_HASHED_DB - DB *capdbp; - -- if ((capdbp = _nc_db_open(fullpath, TRUE)) == NULL) -+ if ((capdbp = _nc_db_open(fullpath, TRUE)) == NULL) { - rc = -1; -- else if (_nc_db_close(capdbp) < 0) -+ } else if (_nc_db_close(capdbp) < 0) { - rc = -1; -+ } - #else - struct stat statbuf; - -@@ -197,7 +191,10 @@ - char actual[PATH_MAX]; - - if (dir == 0 -- && use_terminfo_vars()) -+#ifndef USE_ROOT_ENVIRON -+ && use_terminfo_vars() -+#endif -+ ) - dir = getenv("TERMINFO"); - - if (dir != 0) -@@ -279,16 +276,21 @@ - char name_list[MAX_TERMINFO_LENGTH]; - char *first_name, *other_names; - char *ptr; -+ char *term_names = tp->term_names; -+ size_t name_size = strlen(term_names); - -- assert(strlen(tp->term_names) != 0); -- assert(strlen(tp->term_names) < sizeof(name_list)); -+ if (name_size == 0) { -+ _nc_syserr_abort("no terminal name found."); -+ } else if (name_size >= sizeof(name_list) - 1) { -+ _nc_syserr_abort("terminal name too long: %s", term_names); -+ } - -- (void) strcpy(name_list, tp->term_names); -+ _nc_STRCPY(name_list, term_names, sizeof(name_list)); - DEBUG(7, ("Name list = '%s'", name_list)); - - first_name = name_list; - -- ptr = &name_list[strlen(name_list) - 1]; -+ ptr = &name_list[name_size - 1]; - other_names = ptr + 1; - - while (ptr > name_list && *ptr != '|') -@@ -322,8 +324,8 @@ - buffer[0] = 0; - - memset(&key, 0, sizeof(key)); -- key.data = tp->term_names; -- key.size = strlen(tp->term_names); -+ key.data = term_names; -+ key.size = name_size; - - memset(&data, 0, sizeof(data)); - data.data = buffer; -@@ -336,8 +338,10 @@ - key.data = name_list; - key.size = strlen(name_list); - -- strcpy(buffer + 1, tp->term_names); -- data.size = strlen(tp->term_names) + 1; -+ _nc_STRCPY(buffer + 1, -+ term_names, -+ sizeof(buffer) - 1); -+ data.size = name_size + 1; - - _nc_db_put(capdb, &key, &data); - -@@ -355,7 +359,6 @@ - - _nc_db_put(capdb, &key, &data); - } -- _nc_db_close(capdb); - } - } - #else /* !USE_HASHED_DB */ -@@ -366,7 +369,8 @@ - if (strlen(first_name) >= sizeof(filename) - (2 + LEAF_LEN)) - _nc_warning("terminal name too long."); - -- sprintf(filename, LEAF_FMT "/%s", first_name[0], first_name); -+ _nc_SPRINTF(filename, _nc_SLIMIT(sizeof(filename)) -+ LEAF_FMT "/%s", first_name[0], first_name); - - /* - * Has this primary name been written since the first call to -@@ -376,7 +380,22 @@ - if (start_time > 0 && - stat(filename, &statbuf) >= 0 - && statbuf.st_mtime >= start_time) { -+#if HAVE_LINK && !USE_SYMLINKS -+ /* -+ * If the file has more than one link, the reason for the previous -+ * write could be that the current primary name used to be an alias for -+ * the previous entry. In that case, unlink the file so that we will -+ * not modify the previous entry as we write this one. -+ */ -+ if (statbuf.st_nlink > 1) { -+ _nc_warning("name redefined."); -+ unlink(filename); -+ } else { -+ _nc_warning("name multiply defined."); -+ } -+#else - _nc_warning("name multiply defined."); -+#endif - } - - check_writeable(first_name[0]); -@@ -407,7 +426,8 @@ - } - - check_writeable(ptr[0]); -- sprintf(linkname, LEAF_FMT "/%s", ptr[0], ptr); -+ _nc_SPRINTF(linkname, _nc_SLIMIT(sizeof(linkname)) -+ LEAF_FMT "/%s", ptr[0], ptr); - - if (strcmp(filename, linkname) == 0) { - _nc_warning("self-synonym ignored"); -@@ -422,7 +442,7 @@ - if (first_name[0] == linkname[0]) - strncpy(symlinkname, first_name, sizeof(symlinkname) - 1); - else { -- strcpy(symlinkname, "../"); -+ _nc_STRCPY(symlinkname, "../", sizeof(suymlinkname)); - strncat(symlinkname, filename, sizeof(symlinkname) - 4); - } - symlinkname[sizeof(symlinkname) - 1] = '\0'; -@@ -491,7 +511,7 @@ - return (want / size); - } - --#define Write(buf, size, count) fake_write(buffer, offset, limit, (char *) buf, count, size) -+#define Write(buf, size, count) fake_write(buffer, offset, (size_t) limit, (char *) buf, (size_t) count, (size_t) size) - - #undef LITTLE_ENDIAN /* BSD/OS defines this as a feature macro */ - #define HI(x) ((x) / 256) -@@ -706,7 +726,7 @@ - return (ERR); - - nextfree = compute_offsets(tp->Strings + STRCOUNT, -- tp->ext_Strings, -+ (size_t) tp->ext_Strings, - offsets); - TRACE_OUT(("after extended string capabilities, nextfree=%d", nextfree)); - -@@ -714,7 +734,7 @@ - return (ERR); - - nextfree += compute_offsets(tp->ext_Names, -- extcnt, -+ (size_t) extcnt, - offsets + tp->ext_Strings); - TRACE_OUT(("after extended capnames, nextfree=%d", nextfree)); - strmax = tp->ext_Strings + extcnt; -@@ -742,7 +762,7 @@ - - TRACE_OUT(("WRITE %d numbers @%d", tp->ext_Numbers, *offset)); - if (tp->ext_Numbers) { -- convert_shorts(buf, tp->Numbers + NUMCOUNT, tp->ext_Numbers); -+ convert_shorts(buf, tp->Numbers + NUMCOUNT, (size_t) tp->ext_Numbers); - if (Write(buf, 2, tp->ext_Numbers) != tp->ext_Numbers) - return (ERR); - } -diff -Naur ncurses-5.9/ncurses/trace/lib_traceatr.c ncurses-5.9.patch/ncurses/trace/lib_traceatr.c ---- ncurses-5.9/ncurses/trace/lib_traceatr.c 2011-01-22 20:48:01.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/trace/lib_traceatr.c 2014-09-01 16:33:22.454792285 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -43,10 +43,13 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_traceatr.c,v 1.74 2011/01/22 19:48:01 tom Exp $") -+MODULE_ID("$Id: lib_traceatr.c,v 1.81 2014/02/01 22:09:27 tom Exp $") - - #define COLOR_OF(c) ((c < 0) ? "default" : (c > 7 ? color_of(c) : colors[c].name)) - -+#define TRACE_BUF_SIZE(num) (_nc_globals.tracebuf_ptr[num].size) -+#define COLOR_BUF_SIZE(num) (sizeof(my_buffer[num])) -+ - #ifdef TRACE - - static const char l_brace[] = StringOf(L_BRACE); -@@ -65,9 +68,12 @@ - my_cached = c; - my_select = !my_select; - if (c == COLOR_DEFAULT) -- strcpy(my_buffer[my_select], "default"); -+ _nc_STRCPY(my_buffer[my_select], "default", -+ COLOR_BUF_SIZE(my_select)); - else -- sprintf(my_buffer[my_select], "color%d", c); -+ _nc_SPRINTF(my_buffer[my_select], -+ _nc_SLIMIT(COLOR_BUF_SIZE(my_select)) -+ "color%d", c); - } - return my_buffer[my_select]; - } -@@ -97,6 +103,9 @@ - { A_CHARTEXT, "A_CHARTEXT" }, - { A_NORMAL, "A_NORMAL" }, - { A_COLOR, "A_COLOR" }, -+#if USE_ITALIC -+ { A_ITALIC, "A_ITALIC" }, -+#endif - /* *INDENT-ON* */ - - } -@@ -120,14 +129,14 @@ - ; - size_t n; - char temp[80]; -- char *result = _nc_trace_buf(bufnum, BUFSIZ); -+ char *result = _nc_trace_buf(bufnum, (size_t) BUFSIZ); - - if (result != 0) { - unsigned save_nc_tracing = _nc_tracing; - - _nc_tracing = 0; - -- strcpy(result, l_brace); -+ _nc_STRCPY(result, l_brace, TRACE_BUF_SIZE(bufnum)); - - for (n = 0; n < SIZEOF(names); n++) { - if ((newmode & names[n].val) != 0) { -@@ -139,18 +148,20 @@ - short pairnum = (short) PairNumber(newmode); - #ifdef USE_TERMLIB - /* pair_content lives in libncurses */ -- (void) sprintf(temp, "{%d}", pairnum); -+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) -+ "{%d}", pairnum); - #else -- short fg, bg; -+ NCURSES_COLOR_T fg, bg; - - if (pair_content(pairnum, &fg, &bg) == OK) { -- (void) sprintf(temp, -- "{%d = {%s, %s}}", -- pairnum, -- COLOR_OF(fg), -- COLOR_OF(bg)); -+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) -+ "{%d = {%s, %s}}", -+ pairnum, -+ COLOR_OF(fg), -+ COLOR_OF(bg)); - } else { -- (void) sprintf(temp, "{%d}", pairnum); -+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) -+ "{%d}", pairnum); - } - #endif - result = _nc_trace_bufcat(bufnum, temp); -@@ -243,7 +254,7 @@ - #if NCURSES_SP_FUNCS - (void) sp; - #endif -- if ((attr & A_ALTCHARSET) && (acs_chars != 0)) { -+ if (SP_PARM != 0 && (attr & A_ALTCHARSET) && (acs_chars != 0)) { - char *cp; - char *found = 0; - const ALT_NAMES *strp; -@@ -271,10 +282,10 @@ - _tracechtype2(int bufnum, chtype ch) - { - const char *found; -- char *result = _nc_trace_buf(bufnum, BUFSIZ); -+ char *result = _nc_trace_buf(bufnum, (size_t) BUFSIZ); - - if (result != 0) { -- strcpy(result, l_brace); -+ _nc_STRCPY(result, l_brace, TRACE_BUF_SIZE(bufnum)); - if ((found = _nc_altcharset_name(ChAttrOf(ch), ch)) != 0) { - (void) _nc_trace_bufcat(bufnum, found); - } else -@@ -311,12 +322,12 @@ - NCURSES_EXPORT(char *) - _tracecchar_t2(int bufnum, const cchar_t *ch) - { -- char *result = _nc_trace_buf(bufnum, BUFSIZ); -+ char *result = _nc_trace_buf(bufnum, (size_t) BUFSIZ); - attr_t attr; - const char *found; - - if (result != 0) { -- strcpy(result, l_brace); -+ _nc_STRCPY(result, l_brace, TRACE_BUF_SIZE(bufnum)); - if (ch != 0) { - attr = AttrOfD(ch); - if ((found = _nc_altcharset_name(attr, (chtype) CharOfD(ch))) != 0) { -diff -Naur ncurses-5.9/ncurses/trace/lib_tracebits.c ncurses-5.9.patch/ncurses/trace/lib_tracebits.c ---- ncurses-5.9/ncurses/trace/lib_tracebits.c 2011-01-09 01:23:03.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/trace/lib_tracebits.c 2014-09-01 16:33:22.454792285 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,11 +34,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_tracebits.c,v 1.19 2011/01/09 00:23:03 tom Exp $") -- --#if SVR4_TERMIO && !defined(_POSIX_SOURCE) --#define _POSIX_SOURCE --#endif -+MODULE_ID("$Id: lib_tracebits.c,v 1.23 2012/06/09 19:55:46 tom Exp $") - - #if HAVE_SYS_TERMIO_H - #include <sys/termio.h> /* needed for ISC */ -@@ -80,22 +76,24 @@ - const char *name; - } BITNAMES; - -+#define TRACE_BUF_SIZE(num) (_nc_globals.tracebuf_ptr[num].size) -+ - static void - lookup_bits(char *buf, const BITNAMES * table, const char *label, unsigned int val) - { - const BITNAMES *sp; - -- (void) strcat(buf, label); -- (void) strcat(buf, ": {"); -+ _nc_STRCAT(buf, label, TRACE_BUF_SIZE(0)); -+ _nc_STRCAT(buf, ": {", TRACE_BUF_SIZE(0)); - for (sp = table; sp->name; sp++) - if (sp->val != 0 - && (val & sp->val) == sp->val) { -- (void) strcat(buf, sp->name); -- (void) strcat(buf, ", "); -+ _nc_STRCAT(buf, sp->name, TRACE_BUF_SIZE(0)); -+ _nc_STRCAT(buf, ", ", TRACE_BUF_SIZE(0)); - } - if (buf[strlen(buf) - 2] == ',') - buf[strlen(buf) - 2] = '\0'; -- (void) strcat(buf, "} "); -+ _nc_STRCAT(buf, "} ", TRACE_BUF_SIZE(0)); - } - - NCURSES_EXPORT(char *) -@@ -192,7 +190,7 @@ - CS_DATA(CS8), - }; - const char *result = "CSIZE? "; -- int value = (tty->c_cflag & CSIZE); -+ int value = (int) (tty->c_cflag & CSIZE); - unsigned n; - - if (value != 0) { -@@ -203,7 +201,7 @@ - } - } - } -- strcat(buf, result); -+ _nc_STRCAT(buf, result, TRACE_BUF_SIZE(0)); - } - #endif - -diff -Naur ncurses-5.9/ncurses/trace/lib_trace.c ncurses-5.9.patch/ncurses/trace/lib_trace.c ---- ncurses-5.9/ncurses/trace/lib_trace.c 2010-12-19 02:21:19.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/trace/lib_trace.c 2014-09-01 16:33:22.454792285 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -47,7 +47,7 @@ - - #include <ctype.h> - --MODULE_ID("$Id: lib_trace.c,v 1.76 2010/12/19 01:21:19 tom Exp $") -+MODULE_ID("$Id: lib_trace.c,v 1.82 2013/07/06 19:42:09 tom Exp $") - - NCURSES_EXPORT_VAR(unsigned) _nc_tracing = 0; /* always define this */ - -@@ -103,9 +103,9 @@ - } - TracePath[size] = '\0'; - assert(strlen(TracePath) <= size); -- strcat(TracePath, "/trace"); -+ _nc_STRCAT(TracePath, "/trace", sizeof(TracePath)); - if (_nc_is_dir_path(TracePath)) { -- strcat(TracePath, ".log"); -+ _nc_STRCAT(TracePath, ".log", sizeof(TracePath)); - } - } - -@@ -121,7 +121,7 @@ - * end of each line. This is useful in case the program dies. - */ - #if HAVE_SETVBUF /* ANSI */ -- (void) setvbuf(TraceFP, (char *) 0, _IOLBF, 0); -+ (void) setvbuf(TraceFP, (char *) 0, _IOLBF, (size_t) 0); - #elif HAVE_SETBUF /* POSIX */ - (void) setbuffer(TraceFP, (char *) 0); - #endif -@@ -185,9 +185,9 @@ - if ((pthread_self)) - # endif - #ifdef __MINGW32__ -- fprintf(TraceFP, "%#lx:", (long) (void *) pthread_self().p); -+ fprintf(TraceFP, "%#lx:", (long) (intptr_t) pthread_self().p); - #else -- fprintf(TraceFP, "%#lx:", (long) (void *) pthread_self()); -+ fprintf(TraceFP, "%#lx:", (long) (intptr_t) pthread_self()); - #endif - #endif - if (before || after) { -@@ -218,7 +218,7 @@ - - /* Trace 'bool' return-values */ - NCURSES_EXPORT(NCURSES_BOOL) --_nc_retrace_bool(NCURSES_BOOL code) -+_nc_retrace_bool(int code) - { - T((T_RETURN("%s"), code ? "TRUE" : "FALSE")); - return code; -@@ -226,10 +226,10 @@ - - /* Trace 'char' return-values */ - NCURSES_EXPORT(char) --_nc_retrace_char(char code) -+_nc_retrace_char(int code) - { - T((T_RETURN("%c"), code)); -- return code; -+ return (char) code; - } - - /* Trace 'int' return-values */ -@@ -339,8 +339,9 @@ - _nc_va_tracef(fmt, ap); - va_end(ap); - -- if (--(_nc_globals.nested_tracef) == 0) -+ if (--(_nc_globals.nested_tracef) == 0) { - _nc_unlock_global(tracef); -+ } - } - #endif /* USE_REENTRANT */ - -diff -Naur ncurses-5.9/ncurses/trace/lib_tracechr.c ncurses-5.9.patch/ncurses/trace/lib_tracechr.c ---- ncurses-5.9/ncurses/trace/lib_tracechr.c 2009-04-19 00:48:29.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/trace/lib_tracechr.c 2014-09-01 16:33:22.455792287 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,10 +39,12 @@ - - #include <ctype.h> - --MODULE_ID("$Id: lib_tracechr.c,v 1.20 2009/04/18 22:48:29 tom Exp $") -+MODULE_ID("$Id: lib_tracechr.c,v 1.22 2012/02/22 22:40:24 tom Exp $") - - #ifdef TRACE - -+#define MyBufSize sizeof(_nc_globals.tracechr_buf) -+ - NCURSES_EXPORT(char *) - _nc_tracechar(SCREEN *sp, int ch) - { -@@ -55,19 +57,22 @@ - name = safe_keyname(SP_PARM, ch); - if (name == 0 || *name == '\0') - name = "NULL"; -- (void) sprintf(MyBuffer, "'%.30s' = %#03o", name, ch); -+ _nc_SPRINTF(MyBuffer, _nc_SLIMIT(MyBufSize) -+ "'%.30s' = %#03o", name, ch); - } else if (!is8bits(ch) || !isprint(UChar(ch))) { - /* - * workaround for glibc bug: - * sprintf changes the result from unctrl() to an empty string if it - * does not correspond to a valid multibyte sequence. - */ -- (void) sprintf(MyBuffer, "%#03o", ch); -+ _nc_SPRINTF(MyBuffer, _nc_SLIMIT(MyBufSize) -+ "%#03o", ch); - } else { - name = safe_unctrl(SP_PARM, (chtype) ch); - if (name == 0 || *name == 0) - name = "null"; /* shouldn't happen */ -- (void) sprintf(MyBuffer, "'%.30s' = %#03o", name, ch); -+ _nc_SPRINTF(MyBuffer, _nc_SLIMIT(MyBufSize) -+ "'%.30s' = %#03o", name, ch); - } - return (MyBuffer); - } -diff -Naur ncurses-5.9/ncurses/trace/lib_tracedmp.c ncurses-5.9.patch/ncurses/trace/lib_tracedmp.c ---- ncurses-5.9/ncurses/trace/lib_tracedmp.c 2009-04-18 23:01:38.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/trace/lib_tracedmp.c 2014-09-01 16:33:22.455792287 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - #include <curses.priv.h> - #include <ctype.h> - --MODULE_ID("$Id: lib_tracedmp.c,v 1.32 2009/04/18 21:01:38 tom Exp $") -+MODULE_ID("$Id: lib_tracedmp.c,v 1.34 2012/10/27 20:54:42 tom Exp $") - - #ifdef TRACE - -@@ -70,6 +70,8 @@ - if (++width + 1 > (int) my_length) { - my_length = (unsigned) (2 * (width + 1)); - my_buffer = typeRealloc(char, my_length, my_buffer); -+ if (my_buffer == 0) -+ return; - } - - for (n = 0; n <= win->_maxy; ++n) { -@@ -111,7 +113,7 @@ - if (multicolumn) { - ep = my_buffer; - for (j = 0; j < width; ++j) { -- chtype test = WidecExt(win->_line[n].text[j]); -+ int test = WidecExt(win->_line[n].text[j]); - if (test) { - ep[j] = (char) (test + '0'); - } else { -diff -Naur ncurses-5.9/ncurses/trace/lib_tracemse.c ncurses-5.9.patch/ncurses/trace/lib_tracemse.c ---- ncurses-5.9/ncurses/trace/lib_tracemse.c 2011-01-22 20:48:08.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/trace/lib_tracemse.c 2014-09-01 16:33:22.455792287 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -38,7 +38,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_tracemse.c,v 1.18 2011/01/22 19:48:08 tom Exp $") -+MODULE_ID("$Id: lib_tracemse.c,v 1.21 2012/12/15 23:51:19 tom Exp $") - - #ifdef TRACE - -@@ -47,7 +47,11 @@ - static char * - _trace_mmask_t(SCREEN *sp, mmask_t code) - { --#define SHOW(m, s) if ((code & m) == m) strcat(strcat(my_buffer, s), ", ") -+#define SHOW(m, s) \ -+ if ((code & m) == m) { \ -+ _nc_STRCAT(my_buffer, s, sizeof(my_buffer)); \ -+ _nc_STRCAT(my_buffer, ", ", sizeof(my_buffer)); \ -+ } - - SHOW(BUTTON1_RELEASED, "release-1"); - SHOW(BUTTON1_PRESSED, "press-1"); -@@ -110,23 +114,33 @@ - NCURSES_EXPORT(char *) - _nc_tracemouse(SCREEN *sp, MEVENT const *ep) - { -- (void) sprintf(my_buffer, TRACEMSE_FMT, -- ep->id, -- ep->x, -- ep->y, -- ep->z, -- (unsigned long) ep->bstate); -+ char *result = 0; - -- (void) _trace_mmask_t(sp, ep->bstate); -- (void) strcat(my_buffer, "}"); -- return (my_buffer); -+ if (sp != 0) { -+ _nc_SPRINTF(my_buffer, _nc_SLIMIT(sizeof(my_buffer)) -+ TRACEMSE_FMT, -+ ep->id, -+ ep->x, -+ ep->y, -+ ep->z, -+ (unsigned long) ep->bstate); -+ -+ (void) _trace_mmask_t(sp, ep->bstate); -+ _nc_STRCAT(my_buffer, "}", sizeof(my_buffer)); -+ result = (my_buffer); -+ } -+ return result; - } - - NCURSES_EXPORT(mmask_t) - _nc_retrace_mmask_t(SCREEN *sp, mmask_t code) - { -- *my_buffer = '\0'; -- T((T_RETURN("{%s}"), _trace_mmask_t(sp, code))); -+ if (sp != 0) { -+ *my_buffer = '\0'; -+ T((T_RETURN("{%s}"), _trace_mmask_t(sp, code))); -+ } else { -+ T((T_RETURN("{?}"))); -+ } - return code; - } - -diff -Naur ncurses-5.9/ncurses/trace/trace_buf.c ncurses-5.9.patch/ncurses/trace/trace_buf.c ---- ncurses-5.9/ncurses/trace/trace_buf.c 2011-01-22 20:48:16.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/trace/trace_buf.c 2014-09-01 16:33:22.455792287 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,7 +35,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: trace_buf.c,v 1.17 2011/01/22 19:48:16 tom Exp $") -+MODULE_ID("$Id: trace_buf.c,v 1.20 2012/02/22 22:34:31 tom Exp $") - - #ifdef TRACE - -@@ -103,13 +103,14 @@ - NCURSES_EXPORT(char *) - _nc_trace_bufcat(int bufnum, const char *value) - { -- char *buffer = _nc_trace_alloc(bufnum, 0); -+ char *buffer = _nc_trace_alloc(bufnum, (size_t) 0); - if (buffer != 0) { - size_t have = strlen(buffer); -+ size_t need = strlen(value) + have; - -- buffer = _nc_trace_alloc(bufnum, 1 + have + strlen(value)); -+ buffer = _nc_trace_alloc(bufnum, 1 + need); - if (buffer != 0) -- (void) strcpy(buffer + have, value); -+ _nc_STRCPY(buffer + have, value, need); - - } - return buffer; -diff -Naur ncurses-5.9/ncurses/trace/trace_tries.c ncurses-5.9.patch/ncurses/trace/trace_tries.c ---- ncurses-5.9/ncurses/trace/trace_tries.c 2011-01-09 01:23:27.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/trace/trace_tries.c 2014-09-01 16:33:22.455792287 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1999-2009,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1999-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,7 +35,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: trace_tries.c,v 1.16 2011/01/09 00:23:27 tom Exp $") -+MODULE_ID("$Id: trace_tries.c,v 1.17 2012/10/27 20:50:50 tom Exp $") - - #ifdef TRACE - #define my_buffer _nc_globals.tracetry_buf -@@ -49,28 +49,31 @@ - my_buffer = (unsigned char *) _nc_doalloc(my_buffer, my_length); - } - -- while (tree != 0) { -- if ((my_buffer[level] = tree->ch) == 0) -- my_buffer[level] = 128; -- my_buffer[level + 1] = 0; -- if (tree->value != 0) { -- _tracef("%5d: %s (%s)", tree->value, -- _nc_visbuf((char *) my_buffer), keyname(tree->value)); -+ if (my_buffer != 0) { -+ while (tree != 0) { -+ if ((my_buffer[level] = tree->ch) == 0) -+ my_buffer[level] = 128; -+ my_buffer[level + 1] = 0; -+ if (tree->value != 0) { -+ _tracef("%5d: %s (%s)", tree->value, -+ _nc_visbuf((char *) my_buffer), keyname(tree->value)); -+ } -+ if (tree->child) -+ recur_tries(tree->child, level + 1); -+ tree = tree->sibling; - } -- if (tree->child) -- recur_tries(tree->child, level + 1); -- tree = tree->sibling; - } - } - - NCURSES_EXPORT(void) - _nc_trace_tries(TRIES * tree) - { -- my_buffer = typeMalloc(unsigned char, my_length = 80); -- _tracef("BEGIN tries %p", (void *) tree); -- recur_tries(tree, 0); -- _tracef(". . . tries %p", (void *) tree); -- free(my_buffer); -+ if ((my_buffer = typeMalloc(unsigned char, my_length = 80)) != 0) { -+ _tracef("BEGIN tries %p", (void *) tree); -+ recur_tries(tree, 0); -+ _tracef(". . . tries %p", (void *) tree); -+ free(my_buffer); -+ } - } - - #else -diff -Naur ncurses-5.9/ncurses/trace/varargs.c ncurses-5.9.patch/ncurses/trace/varargs.c ---- ncurses-5.9/ncurses/trace/varargs.c 2008-11-16 01:19:59.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/trace/varargs.c 2014-09-01 16:33:22.455792287 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2001-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 2001-2008,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,7 +34,7 @@ - - #include <ctype.h> - --MODULE_ID("$Id: varargs.c,v 1.8 2008/11/16 00:19:59 juergen Exp $") -+MODULE_ID("$Id: varargs.c,v 1.11 2012/10/27 21:03:28 tom Exp $") - - #ifdef TRACE - -@@ -149,25 +149,32 @@ - param = buffer; - switch (used) { - case atInteger: -- sprintf(buffer, "%d", ival); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "%d", ival); - break; - case atFloat: -- sprintf(buffer, "%f", fval); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "%f", fval); - break; - case atPoint: -- sprintf(buffer, "%p", pval); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "%p", pval); - break; - case atString: - param = _nc_visbuf2(1, sval); - break; - case atUnknown: - default: -- strcpy(buffer, "?"); -+ _nc_STRCPY(buffer, "?", sizeof(buffer)); - break; - } - MyLength += strlen(param) + 2; - MyBuffer = typeRealloc(char, MyLength, MyBuffer); -- sprintf(MyBuffer + strlen(MyBuffer), ", %s", param); -+ if (MyBuffer != 0) { -+ _nc_SPRINTF(MyBuffer + strlen(MyBuffer), -+ _nc_SLIMIT(MyLength - strlen(MyBuffer)) -+ ", %s", param); -+ } - } - } - used = atUnknown; -@@ -177,7 +184,7 @@ - } - } - -- return (MyBuffer); -+ return (MyBuffer ? MyBuffer : dummy); - } - #else - EMPTY_MODULE(_nc_varargs) -diff -Naur ncurses-5.9/ncurses/trace/visbuf.c ncurses-5.9.patch/ncurses/trace/visbuf.c ---- ncurses-5.9/ncurses/trace/visbuf.c 2010-05-29 20:51:41.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/trace/visbuf.c 2014-09-01 16:33:22.455792287 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2001-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2001-2012,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,7 +42,7 @@ - #include <tic.h> - #include <ctype.h> - --MODULE_ID("$Id: visbuf.c,v 1.37 2010/05/29 18:51:41 tom Exp $") -+MODULE_ID("$Id: visbuf.c,v 1.43 2014/02/23 01:21:08 tom Exp $") - - #define NUM_VISBUFS 4 - -@@ -55,13 +55,21 @@ - static const char r_brace[] = StringOf(R_BRACE); - #endif - -+#if USE_STRING_HACKS && HAVE_SNPRINTF -+#define VisChar(tp, chr, limit) _nc_vischar(tp, chr, limit) -+#define LIMIT_ARG ,size_t limit -+#else -+#define VisChar(tp, chr, limit) _nc_vischar(tp, chr) -+#define LIMIT_ARG /* nothing */ -+#endif -+ - static char * --_nc_vischar(char *tp, unsigned c) -+_nc_vischar(char *tp, unsigned c LIMIT_ARG) - { - if (c == '"' || c == '\\') { - *tp++ = '\\'; - *tp++ = (char) c; -- } else if (is7bits(c) && (isgraph(c) || c == ' ')) { -+ } else if (is7bits((int)c) && (isgraph((int)c) || c == ' ')) { - *tp++ = (char) c; - } else if (c == '\n') { - *tp++ = '\\'; -@@ -84,7 +92,8 @@ - *tp++ = '^'; - *tp++ = (char) ('@' + c); - } else { -- sprintf(tp, "\\%03lo", (unsigned long) ChCharOf(c)); -+ _nc_SPRINTF(tp, _nc_SLIMIT(limit) -+ "\\%03lo", (unsigned long) ChCharOf(c)); - tp += strlen(tp); - } - *tp = 0; -@@ -97,6 +106,7 @@ - const char *vbuf = 0; - char *tp; - int c; -+ int count; - - if (buf == 0) - return ("(null)"); -@@ -106,6 +116,7 @@ - if (len < 0) - len = (int) strlen(buf); - -+ count = len; - #ifdef TRACE - vbuf = tp = _nc_trace_buf(bufnum, NormalLen(len)); - #else -@@ -124,8 +135,8 @@ - #endif - if (tp != 0) { - *tp++ = D_QUOTE; -- while ((--len >= 0) && (c = *buf++) != '\0') { -- tp = _nc_vischar(tp, UChar(c)); -+ while ((--count >= 0) && (c = *buf++) != '\0') { -+ tp = VisChar(tp, UChar(c), NormalLen(len)); - } - *tp++ = D_QUOTE; - *tp = '\0'; -@@ -175,6 +186,7 @@ - const char *vbuf; - char *tp; - wchar_t c; -+ int count; - - if (buf == 0) - return ("(null)"); -@@ -182,6 +194,7 @@ - if (len < 0) - len = (int) wcslen(buf); - -+ count = len; - #ifdef TRACE - vbuf = tp = _nc_trace_buf(bufnum, WideLen(len)); - #else -@@ -193,15 +206,16 @@ - #endif - if (tp != 0) { - *tp++ = D_QUOTE; -- while ((--len >= 0) && (c = *buf++) != '\0') { -+ while ((--count >= 0) && (c = *buf++) != '\0') { - char temp[CCHARW_MAX + 80]; - int j = wctomb(temp, c), k; - if (j <= 0) { -- sprintf(temp, "\\u%08X", (unsigned) c); -+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) -+ "\\u%08X", (unsigned) c); - j = (int) strlen(temp); - } - for (k = 0; k < j; ++k) { -- tp = _nc_vischar(tp, UChar(temp[k])); -+ tp = VisChar(tp, UChar(temp[k]), WideLen(len)); - } - } - *tp++ = D_QUOTE; -@@ -248,10 +262,12 @@ - else - mybuf = typeMalloc(wchar_t, mylen); - } -- for (n = 0; buf[n] != 0; ++n) { -- mybuf[n] = (wchar_t) buf[n]; -+ if (mybuf != 0) { -+ for (n = 0; buf[n] != 0; ++n) { -+ mybuf[n] = (wchar_t) buf[n]; -+ } -+ mybuf[n] = L'\0'; - } -- mybuf[n] = L'\0'; - - return _nc_viswbuf2(0, mybuf); - } -@@ -261,7 +277,7 @@ - NCURSES_EXPORT(const char *) - _nc_viscbuf2(int bufnum, const NCURSES_CH_T * buf, int len) - { -- char *result = _nc_trace_buf(bufnum, BUFSIZ); -+ char *result = _nc_trace_buf(bufnum, (size_t) BUFSIZ); - int first; - const char *found; - -@@ -315,7 +331,7 @@ - break; - for (k = 0; k < PUTC_n; k++) { - char temp[80]; -- _nc_vischar(temp, UChar(PUTC_buf[k])); -+ VisChar(temp, UChar(PUTC_buf[k]), sizeof(temp)); - (void) _nc_trace_bufcat(bufnum, temp); - } - } -@@ -323,8 +339,8 @@ - #else - { - char temp[80]; -- _nc_vischar(temp, UChar(buf[j])); -- result = _nc_trace_bufcat(bufnum, temp); -+ VisChar(temp, UChar(buf[j]), sizeof(temp)); -+ (void) _nc_trace_bufcat(bufnum, temp); - } - #endif /* USE_WIDEC_SUPPORT */ - } -diff -Naur ncurses-5.9/ncurses/tty/hardscroll.c ncurses-5.9.patch/ncurses/tty/hardscroll.c ---- ncurses-5.9/ncurses/tty/hardscroll.c 2010-04-25 01:46:47.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tty/hardscroll.c 2014-09-01 16:33:22.456792288 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -147,7 +147,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: hardscroll.c,v 1.47 2010/04/24 23:46:47 tom Exp $") -+MODULE_ID("$Id: hardscroll.c,v 1.51 2012/10/17 09:01:10 tom Exp $") - - #if defined(SCROLLDEBUG) || defined(HASHDEBUG) - -@@ -173,9 +173,9 @@ - # if USE_HASHMAP - # define oldnums(sp) (sp)->_oldnum_list - # define OLDNUM(sp,n) oldnums(sp)[n] --# else /* !USE_HASHMAP */ -+# else /* !USE_HASHMAP */ - # define OLDNUM(sp,n) NewScreen(sp)->_line[n].oldindex --# endif /* !USE_HASHMAP */ -+# endif /* !USE_HASHMAP */ - - #define OLDNUM_SIZE(sp) (sp)->_oldnum_size - -@@ -193,14 +193,20 @@ - #if !defined(SCROLLDEBUG) && !defined(HASHDEBUG) - #if USE_HASHMAP - /* get enough storage */ -- if (OLDNUM_SIZE(SP_PARM) < screen_lines(SP_PARM)) { -+ assert(OLDNUM_SIZE(SP_PARM) >= 0); -+ assert(screen_lines(SP_PARM) > 0); -+ if ((oldnums(SP_PARM) == 0) -+ || (OLDNUM_SIZE(SP_PARM) < screen_lines(SP_PARM))) { -+ int need_lines = ((OLDNUM_SIZE(SP_PARM) < screen_lines(SP_PARM)) -+ ? screen_lines(SP_PARM) -+ : OLDNUM_SIZE(SP_PARM)); - int *new_oldnums = typeRealloc(int, -- (size_t) screen_lines(SP_PARM), -+ (size_t) need_lines, - oldnums(SP_PARM)); - if (!new_oldnums) - return; - oldnums(SP_PARM) = new_oldnums; -- OLDNUM_SIZE(SP_PARM) = screen_lines(SP_PARM); -+ OLDNUM_SIZE(SP_PARM) = need_lines; - } - /* calculate the indices */ - NCURSES_SP_NAME(_nc_hash_map) (NCURSES_SP_ARG); -@@ -302,7 +308,9 @@ - - *buf = '\0'; - for (n = 0; n < screen_lines(SP_PARM); n++) -- (void) sprintf(buf + strlen(buf), " %02d", OLDNUM(SP_PARM, n)); -+ _nc_SPRINTF(buf + strlen(buf), -+ _nc_SLIMIT(want - strlen(buf)) -+ " %02d", OLDNUM(SP_PARM, n)); - TR(TRACE_UPDATE | TRACE_MOVE, ("virt %s", buf)); - free(buf); - } -diff -Naur ncurses-5.9/ncurses/tty/hashmap.c ncurses-5.9.patch/ncurses/tty/hashmap.c ---- ncurses-5.9/ncurses/tty/hashmap.c 2010-04-25 01:46:07.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tty/hashmap.c 2014-09-01 16:33:22.456792288 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -73,7 +73,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: hashmap.c,v 1.62 2010/04/24 23:46:07 tom Exp $") -+MODULE_ID("$Id: hashmap.c,v 1.63 2011/10/22 16:34:50 tom Exp $") - - #ifdef HASHDEBUG - -@@ -163,7 +163,7 @@ - * effective. 'blank' indicates whether the line 'to' would become blank. - */ - static NCURSES_INLINE bool --cost_effective(SCREEN *sp, const int from, const int to, const bool blank) -+cost_effective(SCREEN *sp, const int from, const int to, const int blank) - { - int new_from; - -diff -Naur ncurses-5.9/ncurses/tty/lib_mvcur.c ncurses-5.9.patch/ncurses/tty/lib_mvcur.c ---- ncurses-5.9/ncurses/tty/lib_mvcur.c 2011-01-22 20:48:21.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tty/lib_mvcur.c 2014-09-01 16:33:22.456792288 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -159,7 +159,7 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_mvcur.c,v 1.126 2011/01/22 19:48:21 tom Exp $") -+MODULE_ID("$Id: lib_mvcur.c,v 1.134 2014/03/08 20:32:59 tom Exp $") - - #define WANT_CHAR(sp, y, x) NewScreen(sp)->_line[y].text[x] /* desired state */ - -@@ -176,6 +176,9 @@ - static float diff; - #endif /* MAIN */ - -+#undef NCURSES_OUTC_FUNC -+#define NCURSES_OUTC_FUNC myOutCh -+ - #define OPT_SIZE 512 - - static int normalized_cost(NCURSES_SP_DCLx const char *const cap, int affcnt); -@@ -274,10 +277,9 @@ - /* Set the scroll-region to a known state (the default) */ - { - if (change_scroll_region) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "change_scroll_region", -- TPARM_2(change_scroll_region, -- 0, screen_lines(SP_PARM) - 1)); -+ NCURSES_PUTP2("change_scroll_region", -+ TPARM_2(change_scroll_region, -+ 0, screen_lines(SP_PARM) - 1)); - } - } - -@@ -285,14 +287,12 @@ - NCURSES_SP_NAME(_nc_mvcur_resume) (NCURSES_SP_DCL0) - /* what to do at initialization time and after each shellout */ - { -- if (SP_PARM && !IsTermInfo(SP_PARM)) -+ if (!SP_PARM || !IsTermInfo(SP_PARM)) - return; - - /* initialize screen for cursor access */ - if (enter_ca_mode) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "enter_ca_mode", -- enter_ca_mode); -+ NCURSES_PUTP2("enter_ca_mode", enter_ca_mode); - } - - /* -@@ -327,13 +327,14 @@ - NCURSES_SP_NAME(_nc_mvcur_init) (NCURSES_SP_DCL0) - /* initialize the cost structure */ - { -- if (SP_PARM->_ofp && isatty(fileno(SP_PARM->_ofp))) -+ if (SP_PARM->_ofp && isatty(fileno(SP_PARM->_ofp))) { - SP_PARM->_char_padding = ((BAUDBYTE * 1000 * 10) - / (BAUDRATE(SP_PARM) > 0 - ? BAUDRATE(SP_PARM) - : 9600)); -- else -+ } else { - SP_PARM->_char_padding = 1; /* must be nonzero */ -+ } - if (SP_PARM->_char_padding <= 0) - SP_PARM->_char_padding = 1; /* must be nonzero */ - TR(TRACE_CHARPUT | TRACE_MOVE, ("char_padding %d msecs", SP_PARM->_char_padding)); -@@ -481,9 +482,7 @@ - } - - if (exit_ca_mode) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "exit_ca_mode", -- exit_ca_mode); -+ NCURSES_PUTP2("exit_ca_mode", exit_ca_mode); - } - /* - * Reset terminal's tab counter. There's a long-time bug that -@@ -549,7 +548,7 @@ - int from_x, - int to_y, - int to_x, -- bool ovw) -+ int ovw) - /* move via local motions (cuu/cuu1/cud/cud1/cub1/cub/cuf1/cuf/vpa/hpa) */ - { - string_desc save; -@@ -770,7 +769,10 @@ - */ - - static NCURSES_INLINE int --onscreen_mvcur(NCURSES_SP_DCLx int yold, int xold, int ynew, int xnew, bool ovw) -+onscreen_mvcur(NCURSES_SP_DCLx -+ int yold, int xold, -+ int ynew, int xnew, int ovw, -+ NCURSES_SP_OUTC myOutCh) - /* onscreen move from (yold, xold) to (ynew, xnew) */ - { - string_desc result; -@@ -935,7 +937,7 @@ - if (usecost != INFINITY) { - TPUTS_TRACE("mvcur"); - NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx -- buffer, 1, NCURSES_SP_NAME(_nc_outch)); -+ buffer, 1, myOutCh); - SP_PARM->_cursrow = ynew; - SP_PARM->_curscol = xnew; - return (OK); -@@ -943,9 +945,15 @@ - return (ERR); - } - --NCURSES_EXPORT(int) --TINFO_MVCUR(NCURSES_SP_DCLx int yold, int xold, int ynew, int xnew) --/* optimized cursor move from (yold, xold) to (ynew, xnew) */ -+/* -+ * optimized cursor move from (yold, xold) to (ynew, xnew) -+ */ -+static int -+_nc_real_mvcur(NCURSES_SP_DCLx -+ int yold, int xold, -+ int ynew, int xnew, -+ NCURSES_SP_OUTC myOutCh, -+ int ovw) - { - NCURSES_CH_T oldattr; - int code; -@@ -994,20 +1002,18 @@ - - if (l > 0) { - if (carriage_return) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "carriage_return", -- carriage_return); -- } else -- NCURSES_SP_NAME(_nc_outch) (NCURSES_SP_ARGx '\r'); -+ NCURSES_PUTP2("carriage_return", carriage_return); -+ } else { -+ myOutCh(NCURSES_SP_ARGx '\r'); -+ } - xold = 0; - - while (l > 0) { - if (newline) { -- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx -- "newline", -- newline); -- } else -- NCURSES_SP_NAME(_nc_outch) (NCURSES_SP_ARGx '\n'); -+ NCURSES_PUTP2("newline", newline); -+ } else { -+ myOutCh(NCURSES_SP_ARGx '\n'); -+ } - l--; - } - } -@@ -1027,7 +1033,7 @@ - ynew = screen_lines(SP_PARM) - 1; - - /* destination location is on screen now */ -- code = onscreen_mvcur(NCURSES_SP_ARGx yold, xold, ynew, xnew, TRUE); -+ code = onscreen_mvcur(NCURSES_SP_ARGx yold, xold, ynew, xnew, ovw, myOutCh); - - /* - * Restore attributes if we disabled them before moving. -@@ -1042,13 +1048,66 @@ - returnCode(code); - } - --#if NCURSES_SP_FUNCS && !defined(USE_TERM_DRIVER) -+/* -+ * These entrypoints are used within the library. -+ */ -+NCURSES_EXPORT(int) -+NCURSES_SP_NAME(_nc_mvcur) (NCURSES_SP_DCLx -+ int yold, int xold, -+ int ynew, int xnew) -+{ -+ return _nc_real_mvcur(NCURSES_SP_ARGx yold, xold, ynew, xnew, -+ NCURSES_SP_NAME(_nc_outch), -+ TRUE); -+} -+ -+#if NCURSES_SP_FUNCS -+NCURSES_EXPORT(int) -+_nc_mvcur(int yold, int xold, -+ int ynew, int xnew) -+{ -+ return NCURSES_SP_NAME(_nc_mvcur) (CURRENT_SCREEN, yold, xold, ynew, xnew); -+} -+#endif -+ -+#if defined(USE_TERM_DRIVER) -+/* -+ * The terminal driver does not support the external "mvcur()". -+ */ -+NCURSES_EXPORT(int) -+TINFO_MVCUR(NCURSES_SP_DCLx int yold, int xold, int ynew, int xnew) -+{ -+ return _nc_real_mvcur(NCURSES_SP_ARGx -+ yold, xold, -+ ynew, xnew, -+ NCURSES_SP_NAME(_nc_outch), -+ TRUE); -+} -+ -+#else /* !USE_TERM_DRIVER */ -+ -+/* -+ * These entrypoints support users of the library. -+ */ -+NCURSES_EXPORT(int) -+NCURSES_SP_NAME(mvcur) (NCURSES_SP_DCLx int yold, int xold, int ynew, -+ int xnew) -+{ -+ return _nc_real_mvcur(NCURSES_SP_ARGx -+ yold, xold, -+ ynew, xnew, -+ NCURSES_SP_NAME(_nc_putchar), -+ FALSE); -+} -+ -+#if NCURSES_SP_FUNCS - NCURSES_EXPORT(int) - mvcur(int yold, int xold, int ynew, int xnew) - { - return NCURSES_SP_NAME(mvcur) (CURRENT_SCREEN, yold, xold, ynew, xnew); - } - #endif -+#endif /* USE_TERM_DRIVER */ - - #if defined(TRACE) || defined(NCURSES_TEST) - NCURSES_EXPORT_VAR(int) _nc_optimize_enable = OPTIMIZE_ALL; -@@ -1128,7 +1187,6 @@ - baudrate(); - - _nc_mvcur_init(); -- NC_BUFFERED(FALSE); - - (void) puts("The mvcur tester. Type ? for help"); - -diff -Naur ncurses-5.9/ncurses/tty/lib_tstp.c ncurses-5.9.patch/ncurses/tty/lib_tstp.c ---- ncurses-5.9/ncurses/tty/lib_tstp.c 2010-05-15 23:31:12.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tty/lib_tstp.c 2014-09-01 16:33:22.456792288 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,11 +42,7 @@ - - #include <SigAction.h> - --#if SVR4_ACTION && !defined(_POSIX_SOURCE) --#define _POSIX_SOURCE --#endif -- --MODULE_ID("$Id: lib_tstp.c,v 1.41 2010/05/15 21:31:12 tom Exp $") -+MODULE_ID("$Id: lib_tstp.c,v 1.47 2013/04/27 19:50:17 tom Exp $") - - #if defined(SIGTSTP) && (HAVE_SIGACTION || HAVE_SIGVEC) - #define USE_SIGTSTP 1 -@@ -138,7 +134,7 @@ - - #if USE_SIGTSTP - static void --tstp(int dummy GCC_UNUSED) -+handle_SIGTSTP(int dummy GCC_UNUSED) - { - SCREEN *sp = CURRENT_SCREEN; - sigset_t mask, omask; -@@ -148,7 +144,8 @@ - int sigttou_blocked; - #endif - -- T(("tstp() called")); -+ _nc_globals.have_sigtstp = 1; -+ T(("handle_SIGTSTP() called")); - - /* - * The user may have changed the prog_mode tty bits, so save them. -@@ -239,21 +236,24 @@ - #endif /* USE_SIGTSTP */ - - static void --cleanup(int sig) -+handle_SIGINT(int sig) - { - SCREEN *sp = CURRENT_SCREEN; - - /* -- * Actually, doing any sort of I/O from within an signal handler is -- * "unsafe". But we'll _try_ to clean up the screen and terminal -- * settings on the way out. -+ * Much of this is unsafe from a signal handler. But we'll _try_ to clean -+ * up the screen and terminal settings on the way out. -+ * -+ * There are at least the following problems: -+ * 1) Walking the SCREEN list is unsafe, since all list management -+ * is done without any signal blocking. -+ * 2) On systems which have REENTRANT turned on, set_term() uses -+ * _nc_lock_global() which could deadlock or misbehave in other ways. -+ * 3) endwin() calls all sorts of stuff, many of which use stdio or -+ * other library functions which are clearly unsafe. - */ - if (!_nc_globals.cleanup_nested++ -- && (sig == SIGINT --#ifdef SIGQUIT -- || sig == SIGQUIT --#endif -- )) { -+ && (sig == SIGINT || sig == SIGTERM)) { - #if HAVE_SIGACTION || HAVE_SIGVEC - sigaction_t act; - sigemptyset(&act.sa_mask); -@@ -268,22 +268,21 @@ - for (each_screen(scan)) { - if (scan->_ofp != 0 - && isatty(fileno(scan->_ofp))) { -- scan->_cleanup = TRUE; - scan->_outch = NCURSES_SP_NAME(_nc_outch); - } - set_term(scan); - NCURSES_SP_NAME(endwin) (NCURSES_SP_ARG); - if (sp) -- sp->_endwin = FALSE; /* in case we have an atexit! */ -+ sp->_endwin = FALSE; /* in case of reuse */ - } - } - } -- exit(EXIT_FAILURE); -+ _exit(EXIT_FAILURE); - } - - #if USE_SIGWINCH - static void --sigwinch(int sig GCC_UNUSED) -+handle_SIGWINCH(int sig GCC_UNUSED) - { - _nc_globals.have_sigwinch = 1; - # if USE_PTHREADS_EINTR -@@ -301,7 +300,7 @@ - * handler. - */ - static int --CatchIfDefault(int sig, RETSIGTYPE (*handler) (int)) -+CatchIfDefault(int sig, void (*handler) (int)) - { - int result; - #if HAVE_SIGACTION || HAVE_SIGVEC -@@ -331,7 +330,7 @@ - result = FALSE; - } - #else /* !HAVE_SIGACTION */ -- RETSIGTYPE (*ohandler) (int); -+ void (*ohandler) (int); - - ohandler = signal(sig, SIG_IGN); - if (ohandler == SIG_DFL -@@ -364,7 +363,7 @@ - * the caller later changes its mind, but that doesn't seem correct. - */ - NCURSES_EXPORT(void) --_nc_signal_handler(bool enable) -+_nc_signal_handler(int enable) - { - T((T_CALLED("_nc_signal_handler(%d)"), enable)); - #if USE_SIGTSTP /* Xenix 2.x doesn't have SIGTSTP, for example */ -@@ -385,7 +384,7 @@ - #ifdef SA_RESTART - new_sigaction.sa_flags |= SA_RESTART; - #endif /* SA_RESTART */ -- new_sigaction.sa_handler = tstp; -+ new_sigaction.sa_handler = handle_SIGTSTP; - (void) sigaction(SIGTSTP, &new_sigaction, NULL); - } else { - ignore_tstp = TRUE; -@@ -396,10 +395,10 @@ - - if (!_nc_globals.init_signals) { - if (enable) { -- CatchIfDefault(SIGINT, cleanup); -- CatchIfDefault(SIGTERM, cleanup); -+ CatchIfDefault(SIGINT, handle_SIGINT); -+ CatchIfDefault(SIGTERM, handle_SIGINT); - #if USE_SIGWINCH -- CatchIfDefault(SIGWINCH, sigwinch); -+ CatchIfDefault(SIGWINCH, handle_SIGWINCH); - #endif - _nc_globals.init_signals = TRUE; - } -diff -Naur ncurses-5.9/ncurses/tty/lib_twait.c ncurses-5.9.patch/ncurses/tty/lib_twait.c ---- ncurses-5.9/ncurses/tty/lib_twait.c 2010-12-26 00:43:58.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tty/lib_twait.c 2014-09-01 16:33:22.456792288 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -53,6 +53,11 @@ - #include <OS.h> - #endif - -+#if USE_KLIBC_KBD -+#define INCL_KBD -+#include <os2.h> -+#endif -+ - #if USE_FUNC_POLL - # if HAVE_SYS_TIME_H - # include <sys/time.h> -@@ -70,10 +75,10 @@ - #endif - #undef CUR - --MODULE_ID("$Id: lib_twait.c,v 1.61 2010/12/25 23:43:58 tom Exp $") -+MODULE_ID("$Id: lib_twait.c,v 1.68 2014/03/08 20:32:59 tom Exp $") - - static long --_nc_gettime(TimeType * t0, bool first) -+_nc_gettime(TimeType * t0, int first) - { - long res; - -@@ -97,7 +102,7 @@ - if (first) { - *t0 = t1; - } -- res = (t1 - *t0) * 1000; -+ res = (long) ((t1 - *t0) * 1000); - #endif - TR(TRACE_IEVENT, ("%s time: %ld msec", first ? "get" : "elapsed", res)); - return res; -@@ -184,6 +189,12 @@ - fd_set set; - #endif - -+#if USE_KLIBC_KBD -+ fd_set saved_set; -+ KBDKEYINFO ki; -+ struct timeval tv; -+#endif -+ - long starttime, returntime; - - TR(TRACE_IEVENT, ("start twait: %d milliseconds, mode: %d", -@@ -207,6 +218,7 @@ - starttime = _nc_gettime(&t0, TRUE); - - count = 0; -+ (void) count; - - #ifdef NCURSES_WGETCH_EVENTS - if ((mode & TW_EVENT) && evl) -@@ -217,8 +229,11 @@ - memset(fd_list, 0, sizeof(fd_list)); - - #ifdef NCURSES_WGETCH_EVENTS -- if ((mode & TW_EVENT) && evl) -+ if ((mode & TW_EVENT) && evl) { - fds = typeMalloc(struct pollfd, MIN_FDS + evl->count); -+ if (fds == 0) -+ return TW_NONE; -+ } - #endif - - if (mode & TW_INPUT) { -@@ -247,7 +262,7 @@ - } - #endif - -- result = poll(fds, (unsigned) count, milliseconds); -+ result = poll(fds, (size_t) count, milliseconds); - - #ifdef NCURSES_WGETCH_EVENTS - if ((mode & TW_EVENT) && evl) { -@@ -274,10 +289,6 @@ - } - } - } -- -- if (fds != fd_list) -- free((char *) fds); -- - #endif - - #elif defined(__BEOS__) -@@ -329,10 +340,12 @@ - */ - FD_ZERO(&set); - -+#if !USE_KLIBC_KBD - if (mode & TW_INPUT) { - FD_SET(sp->_ifd, &set); - count = sp->_ifd + 1; - } -+#endif - if ((mode & TW_MOUSE) - && (fd = sp->_mouse_fd) >= 0) { - FD_SET(fd, &set); -@@ -352,6 +365,31 @@ - } - #endif - -+#if USE_KLIBC_KBD -+ for (saved_set = set;; set = saved_set) { -+ if ((mode & TW_INPUT) -+ && (sp->_extended_key -+ || (KbdPeek(&ki, 0) == 0 -+ && (ki.fbStatus & KBDTRF_FINAL_CHAR_IN)))) { -+ FD_ZERO(&set); -+ FD_SET(sp->_ifd, &set); -+ result = 1; -+ break; -+ } -+ -+ tv.tv_sec = 0; -+ tv.tv_usec = (milliseconds == 0) ? 0 : (10 * 1000); -+ -+ if ((result = select(count, &set, NULL, NULL, &tv)) != 0) -+ break; -+ -+ /* Time out ? */ -+ if (milliseconds >= 0 && _nc_gettime(&t0, FALSE) >= milliseconds) { -+ result = 0; -+ break; -+ } -+ } -+#else - if (milliseconds >= 0) { - struct timeval ntimeout; - ntimeout.tv_sec = milliseconds / 1000; -@@ -360,6 +398,7 @@ - } else { - result = select(count, &set, NULL, NULL, NULL); - } -+#endif - - #ifdef NCURSES_WGETCH_EVENTS - if ((mode & TW_EVENT) && evl) { -@@ -462,5 +501,12 @@ - result |= TW_EVENT; - #endif - -+#if USE_FUNC_POLL -+#ifdef NCURSES_WGETCH_EVENTS -+ if (fds != fd_list) -+ free((char *) fds); -+#endif -+#endif -+ - return (result); - } -diff -Naur ncurses-5.9/ncurses/tty/lib_vidattr.c ncurses-5.9.patch/ncurses/tty/lib_vidattr.c ---- ncurses-5.9/ncurses/tty/lib_vidattr.c 2010-06-06 00:22:04.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/tty/lib_vidattr.c 2014-09-01 16:33:22.457792290 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -69,27 +69,27 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_vidattr.c,v 1.61 2010/06/05 22:22:04 tom Exp $") -+MODULE_ID("$Id: lib_vidattr.c,v 1.68 2014/03/08 20:32:59 tom Exp $") - - #define doPut(mode) \ - TPUTS_TRACE(#mode); \ - NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx mode, 1, outc) - --#define TurnOn(mask,mode) \ -+#define TurnOn(mask, mode) \ - if ((turn_on & mask) && mode) { doPut(mode); } - --#define TurnOff(mask,mode) \ -+#define TurnOff(mask, mode) \ - if ((turn_off & mask) && mode) { doPut(mode); turn_off &= ~mask; } - - /* if there is no current screen, assume we *can* do color */ --#define SetColorsIf(why,old_attr) \ -+#define SetColorsIf(why, old_attr) \ - if (can_color && (why)) { \ - int old_pair = PairNumber(old_attr); \ - TR(TRACE_ATTRS, ("old pair = %d -- new pair = %d", old_pair, pair)); \ - if ((pair != old_pair) \ - || (fix_pair0 && (pair == 0)) \ - || (reverse ^ ((old_attr & A_REVERSE) != 0))) { \ -- NCURSES_SP_NAME(_nc_do_color)(NCURSES_SP_ARGx \ -+ NCURSES_SP_NAME(_nc_do_color) (NCURSES_SP_ARGx \ - (short) old_pair, \ - (short) pair, \ - reverse, outc); \ -@@ -139,6 +139,9 @@ - A_BOLD, - A_INVIS, - A_PROTECT, -+#if USE_ITALIC -+ A_ITALIC, -+#endif - }; - unsigned n; - int used = 0; -@@ -229,6 +232,11 @@ - if (!SP_PARM || SP_PARM->_use_rmso) { - TurnOff(A_STANDOUT, exit_standout_mode); - } -+#if USE_ITALIC -+ if (!SP_PARM || SP_PARM->_use_ritm) { -+ TurnOff(A_ITALIC, exit_italics_mode); -+ } -+#endif - } - PreviousAttr &= ALL_BUT_COLOR; - } -@@ -251,6 +259,15 @@ - 1, outc); - PreviousAttr &= ALL_BUT_COLOR; - } -+#if USE_ITALIC -+ if (!SP_PARM || SP_PARM->_use_ritm) { -+ if (turn_on & A_ITALIC) { -+ TurnOn(A_ITALIC, enter_italics_mode); -+ } else if (turn_off & A_ITALIC) { -+ TurnOff(A_ITALIC, exit_italics_mode); -+ } -+ } -+#endif - SetColorsIf((pair != 0) || fix_pair0, PreviousAttr); - } else { - -@@ -265,7 +282,11 @@ - if (!SP_PARM || SP_PARM->_use_rmso) { - TurnOff(A_STANDOUT, exit_standout_mode); - } -- -+#if USE_ITALIC -+ if (!SP_PARM || SP_PARM->_use_ritm) { -+ TurnOff(A_ITALIC, exit_italics_mode); -+ } -+#endif - if (turn_off && exit_attribute_mode) { - doPut(exit_attribute_mode); - turn_on |= (newmode & ALL_BUT_COLOR); -@@ -284,6 +305,9 @@ - TurnOn(A_PROTECT, enter_protected_mode); - TurnOn(A_INVIS, enter_secure_mode); - TurnOn(A_UNDERLINE, enter_underline_mode); -+#if USE_ITALIC -+ TurnOn(A_ITALIC, enter_italics_mode); -+#endif - #if USE_WIDEC_SUPPORT - TurnOn(A_HORIZONTAL, enter_horizontal_hl_mode); - TurnOn(A_LEFT, enter_left_hl_mode); -@@ -324,7 +348,7 @@ - T((T_CALLED("vidattr(%p,%s)"), (void *) SP_PARM, _traceattr(newmode))); - returnCode(NCURSES_SP_NAME(vidputs) (NCURSES_SP_ARGx - newmode, -- NCURSES_SP_NAME(_nc_outch))); -+ NCURSES_SP_NAME(_nc_putchar))); - } - - #if NCURSES_SP_FUNCS -@@ -341,42 +365,49 @@ - chtype attrs = A_NORMAL; - - T((T_CALLED("termattrs(%p)"), (void *) SP_PARM)); -+ -+ if (HasTerminal(SP_PARM)) { - #ifdef USE_TERM_DRIVER -- if (HasTerminal(SP_PARM)) -- attrs = CallDriver(SP_PARM, conattr); --#else -+ attrs = CallDriver(SP_PARM, td_conattr); -+#else /* ! USE_TERM_DRIVER */ - -- if (enter_alt_charset_mode) -- attrs |= A_ALTCHARSET; -+ if (enter_alt_charset_mode) -+ attrs |= A_ALTCHARSET; - -- if (enter_blink_mode) -- attrs |= A_BLINK; -+ if (enter_blink_mode) -+ attrs |= A_BLINK; - -- if (enter_bold_mode) -- attrs |= A_BOLD; -+ if (enter_bold_mode) -+ attrs |= A_BOLD; - -- if (enter_dim_mode) -- attrs |= A_DIM; -+ if (enter_dim_mode) -+ attrs |= A_DIM; - -- if (enter_reverse_mode) -- attrs |= A_REVERSE; -+ if (enter_reverse_mode) -+ attrs |= A_REVERSE; - -- if (enter_standout_mode) -- attrs |= A_STANDOUT; -+ if (enter_standout_mode) -+ attrs |= A_STANDOUT; - -- if (enter_protected_mode) -- attrs |= A_PROTECT; -+ if (enter_protected_mode) -+ attrs |= A_PROTECT; - -- if (enter_secure_mode) -- attrs |= A_INVIS; -+ if (enter_secure_mode) -+ attrs |= A_INVIS; - -- if (enter_underline_mode) -- attrs |= A_UNDERLINE; -+ if (enter_underline_mode) -+ attrs |= A_UNDERLINE; - -- if (SP_PARM->_coloron) -- attrs |= A_COLOR; -+ if (SP_PARM->_coloron) -+ attrs |= A_COLOR; - -+#if USE_ITALIC -+ if (enter_italics_mode) -+ attrs |= A_ITALIC; - #endif -+ -+#endif /* USE_TERM_DRIVER */ -+ } - returnChtype(attrs); - } - -diff -Naur ncurses-5.9/ncurses/tty/tty_display.h ncurses-5.9.patch/ncurses/tty/tty_display.h ---- ncurses-5.9/ncurses/tty/tty_display.h 2005-01-02 00:41:12.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tty/tty_display.h 1970-01-01 01:00:00.000000000 +0100 -@@ -1,140 +0,0 @@ --/**************************************************************************** -- * Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. * -- * * -- * Permission is hereby granted, free of charge, to any person obtaining a * -- * copy of this software and associated documentation files (the * -- * "Software"), to deal in the Software without restriction, including * -- * without limitation the rights to use, copy, modify, merge, publish, * -- * distribute, distribute with modifications, sublicense, and/or sell * -- * copies of the Software, and to permit persons to whom the Software is * -- * furnished to do so, subject to the following conditions: * -- * * -- * The above copyright notice and this permission notice shall be included * -- * in all copies or substantial portions of the Software. * -- * * -- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -- * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -- * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -- * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -- * * -- * Except as contained in this notice, the name(s) of the above copyright * -- * holders shall not be used in advertising or otherwise to promote the * -- * sale, use or other dealings in this Software without prior written * -- * authorization. * -- ************************************************************************** */ -- --#ifndef TTY_DISPLAY_H --#define TTY_DISPLAY_H 1 -- --/* -- * $Id: tty_display.h,v 1.6 2005/01/01 23:41:12 tom Exp $ -- */ --extern NCURSES_EXPORT(bool) _nc_tty_beep (void); --extern NCURSES_EXPORT(bool) _nc_tty_check_resize (void); --extern NCURSES_EXPORT(bool) _nc_tty_cursor (int); --extern NCURSES_EXPORT(bool) _nc_tty_flash (void); --extern NCURSES_EXPORT(bool) _nc_tty_init_color (int,int,int,int); --extern NCURSES_EXPORT(bool) _nc_tty_init_pair (int,int,int); --extern NCURSES_EXPORT(bool) _nc_tty_slk_hide (bool); --extern NCURSES_EXPORT(bool) _nc_tty_slk_update (int,const char *); --extern NCURSES_EXPORT(bool) _nc_tty_start_color (void); --extern NCURSES_EXPORT(void) _nc_tty_display_resume (void); --extern NCURSES_EXPORT(void) _nc_tty_display_suspend (void); --extern NCURSES_EXPORT(void) _nc_tty_dispose (void); /* frees SP->_term */ --extern NCURSES_EXPORT(void) _nc_tty_switch_to (void); --extern NCURSES_EXPORT(void) _nc_tty_update (void); -- --struct tty_display_data { -- int _fifohold; /* set if breakout marked */ -- unsigned long _current_attr; /* terminal attribute current set */ -- int _cursrow; /* physical cursor row (-1=unknown) */ -- int _curscol; /* physical cursor column */ -- -- /* cursor movement costs; units are 10ths of milliseconds */ -- int _char_padding; /* cost of character put */ -- int _cr_cost; /* cost of (carriage_return) */ -- int _cup_cost; /* cost of (cursor_address) */ -- int _home_cost; /* cost of (cursor_home) */ -- int _ll_cost; /* cost of (cursor_to_ll) */ --#if USE_HARD_TABS -- int _ht_cost; /* cost of (tab) */ -- int _cbt_cost; /* cost of (backtab) */ --#endif /* USE_HARD_TABS */ -- int _cub1_cost; /* cost of (cursor_left) */ -- int _cuf1_cost; /* cost of (cursor_right) */ -- int _cud1_cost; /* cost of (cursor_down) */ -- int _cuu1_cost; /* cost of (cursor_up) */ -- int _cub_cost; /* cost of (parm_cursor_left) */ -- int _cuf_cost; /* cost of (parm_cursor_right) */ -- int _cud_cost; /* cost of (parm_cursor_down) */ -- int _cuu_cost; /* cost of (parm_cursor_up) */ -- int _hpa_cost; /* cost of (column_address) */ -- int _vpa_cost; /* cost of (row_address) */ -- /* used in lib_doupdate.c, must be chars */ -- int _ed_cost; /* cost of (clr_eos) */ -- int _el_cost; /* cost of (clr_eol) */ -- int _el1_cost; /* cost of (clr_bol) */ -- int _dch1_cost; /* cost of (delete_character) */ -- int _ich1_cost; /* cost of (insert_character) */ -- int _dch_cost; /* cost of (parm_dch) */ -- int _ich_cost; /* cost of (parm_ich) */ -- int _ech_cost; /* cost of (erase_chars) */ -- int _rep_cost; /* cost of (repeat_char) */ -- int _hpa_ch_cost; /* cost of (column_address) */ -- int _cup_ch_cost; /* cost of (cursor_address) */ -- int _smir_cost; /* cost of (enter_insert_mode) */ -- int _rmir_cost; /* cost of (exit_insert_mode) */ -- int _ip_cost; /* cost of (insert_padding) */ -- /* used in lib_mvcur.c */ -- char * _address_cursor; -- int _carriage_return_length; -- int _cursor_home_length; -- int _cursor_to_ll_length; -- -- chtype _xmc_suppress; /* attributes to suppress if xmc */ -- chtype _xmc_triggers; /* attributes to process if xmc */ -- -- bool _sig_winch; --}; -- -- --#define DelCharCost(count) \ -- ((parm_dch != 0) \ -- ? D->_dch_cost \ -- : ((delete_character != 0) \ -- ? (D->_dch1_cost * count) \ -- : INFINITY)) -- --#define InsCharCost(count) \ -- ((parm_ich != 0) \ -- ? D->_ich_cost \ -- : ((enter_insert_mode && exit_insert_mode) \ -- ? D->_smir_cost + D->_rmir_cost + (D->_ip_cost * count) \ -- : ((insert_character != 0) \ -- ? ((D->_ich1_cost + D->_ip_cost) * count) \ -- : INFINITY))) -- --#if USE_XMC_SUPPORT --#define UpdateAttrs(c) if (!SameAttrOf(D->_current_attr, AttrOf(c))) { \ -- attr_t chg = D->_current_attr; \ -- vidattr(AttrOf(c)); \ -- if (magic_cookie_glitch > 0 \ -- && XMC_CHANGES((chg ^ D->_current_attr))) { \ -- T(("%s @%d before glitch %d,%d", \ -- __FILE__, __LINE__, \ -- D->_cursrow, \ -- D->_curscol)); \ -- _nc_do_xmc_glitch(chg); \ -- } \ -- } --#else --#define UpdateAttrs(c) if (!SameAttrOf(D->_current_attr, AttrOf(c))) \ -- vidattr(AttrOf(c)); --#endif -- --#define XMC_CHANGES(c) ((c) & D->_xmc_suppress) -- --#endif /* TTY_DISPLAY_H */ -diff -Naur ncurses-5.9/ncurses/tty/tty_input.h ncurses-5.9.patch/ncurses/tty/tty_input.h ---- ncurses-5.9/ncurses/tty/tty_input.h 2000-12-10 03:26:51.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tty/tty_input.h 1970-01-01 01:00:00.000000000 +0100 -@@ -1,61 +0,0 @@ --/**************************************************************************** -- * Copyright (c) 1998,2000 Free Software Foundation, Inc. * -- * * -- * Permission is hereby granted, free of charge, to any person obtaining a * -- * copy of this software and associated documentation files (the * -- * "Software"), to deal in the Software without restriction, including * -- * without limitation the rights to use, copy, modify, merge, publish, * -- * distribute, distribute with modifications, sublicense, and/or sell * -- * copies of the Software, and to permit persons to whom the Software is * -- * furnished to do so, subject to the following conditions: * -- * * -- * The above copyright notice and this permission notice shall be included * -- * in all copies or substantial portions of the Software. * -- * * -- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -- * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -- * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -- * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -- * * -- * Except as contained in this notice, the name(s) of the above copyright * -- * holders shall not be used in advertising or otherwise to promote the * -- * sale, use or other dealings in this Software without prior written * -- * authorization. * -- ****************************************************************************/ -- --/* -- * $Id: tty_input.h,v 1.2 2000/12/10 02:26:51 tom Exp $ -- */ -- --#ifndef TTY_INPUT_H --#define TTY_INPUT_H 1 -- --extern NCURSES_EXPORT(bool) _nc_tty_mouse_mask (mmask_t); --extern NCURSES_EXPORT(bool) _nc_tty_pending (void); --extern NCURSES_EXPORT(int) _nc_tty_next_event (int); --extern NCURSES_EXPORT(void) _nc_tty_flags_changed (void); --extern NCURSES_EXPORT(void) _nc_tty_flush (void); --extern NCURSES_EXPORT(void) _nc_tty_input_resume (void); --extern NCURSES_EXPORT(void) _nc_tty_input_suspend (void); -- --struct tty_input_data { -- int _ifd; /* input file ptr for screen */ -- int _keypad_xmit; /* current terminal state */ -- int _meta_on; /* current terminal state */ -- -- /* -- * These are the data that support the mouse interface. -- */ -- bool (*_mouse_event) (SCREEN *); -- bool (*_mouse_inline)(SCREEN *); -- bool (*_mouse_parse) (int); -- void (*_mouse_resume)(SCREEN *); -- void (*_mouse_wrap) (SCREEN *); -- int _mouse_fd; /* file-descriptor, if any */ -- int mousetype; --}; -- --#endif /* TTY_INPUT_H */ -diff -Naur ncurses-5.9/ncurses/tty/tty_update.c ncurses-5.9.patch/ncurses/tty/tty_update.c ---- ncurses-5.9/ncurses/tty/tty_update.c 2010-12-19 02:21:02.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/tty/tty_update.c 2014-09-01 16:33:22.457792290 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -82,7 +82,7 @@ - - #include <ctype.h> - --MODULE_ID("$Id: tty_update.c,v 1.264 2010/12/19 01:21:02 tom Exp $") -+MODULE_ID("$Id: tty_update.c,v 1.277 2014/02/01 22:09:27 tom Exp $") - - /* - * This define controls the line-breakout optimization. Every once in a -@@ -145,8 +145,7 @@ - - NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG); - memset(buf, '\0', sizeof(buf)); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx "\033[6n"); /* only works on ANSI-compatibles */ -- NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG); -+ NCURSES_PUTP2_FLUSH("cpr", "\033[6n"); /* only works on ANSI-compatibles */ - *(s = buf) = 0; - do { - int ask = sizeof(buf) - 1 - (s - buf); -@@ -209,7 +208,9 @@ - { - int chlen = 1; - NCURSES_CH_T my_ch; -+#if USE_WIDEC_SUPPORT - PUTC_DATA; -+#endif - NCURSES_CH_T tilde; - NCURSES_CH_T attr = CHDEREF(ch); - -@@ -276,6 +277,11 @@ - && SP_PARM->_screen_acs_map[CharOf(my_ch)]) { - RemAttr(attr, A_ALTCHARSET); - my_ch = _nc_wacs[CharOf(my_ch)]; -+ } else if (SP_PARM->_screen_unicode -+ && !SP_PARM->_screen_acs_map[CharOf(my_ch)] -+ && _nc_wacs[CharOf(my_ch)].chars[0]) { -+ RemAttr(attr, A_ALTCHARSET); -+ my_ch = _nc_wacs[CharOf(my_ch)]; - } - #endif - /* -@@ -288,13 +294,12 @@ - int j = CharOfD(ch); - chtype temp = UChar(SP_PARM->_acs_map[j]); - -- if (!(SP_PARM->_screen_acs_map[j])) { -+ if (temp != 0) { -+ SetChar(my_ch, temp, AttrOf(attr)); -+ } else { -+ my_ch = CHDEREF(ch); - RemAttr(attr, A_ALTCHARSET); -- if (temp == 0) -- temp = ' '; - } -- if (temp != 0) -- SetChar(my_ch, temp, AttrOf(attr)); - } - ch = CHREF(my_ch); - } -@@ -304,22 +309,13 @@ - } - - UpdateAttrs(SP_PARM, attr); -+ PUTC(CHDEREF(ch)); - #if !USE_WIDEC_SUPPORT -- /* FIXME - we do this special case for signal handling, should see how to -- * make it work for wide characters. -- */ -- if (SP_PARM->_outch != 0) { -- SP_PARM->_outch(NCURSES_SP_ARGx UChar(ch)); -- } else -+ COUNT_OUTCHARS(1); - #endif -- { -- PUTC(CHDEREF(ch), SP_PARM->_ofp); /* macro's fastest... */ -- COUNT_OUTCHARS(1); -- } - SP_PARM->_curscol += chlen; - if (char_padding) { -- TPUTS_TRACE("char_padding"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx char_padding); -+ NCURSES_PUTP2("char_padding", char_padding); - } - } - -@@ -342,7 +338,7 @@ - struct pollfd fds[1]; - fds[0].fd = SP_PARM->_checkfd; - fds[0].events = POLLIN; -- if (poll(fds, 1, 0) > 0) { -+ if (poll(fds, (size_t) 1, 0) > 0) { - have_pending = TRUE; - } - #elif defined(__BEOS__) -@@ -390,8 +386,7 @@ - PutAttrChar(NCURSES_SP_ARGx ch); - } else if (enter_am_mode && exit_am_mode) { - /* we can suppress automargin */ -- TPUTS_TRACE("exit_am_mode"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_am_mode); -+ NCURSES_PUTP2("exit_am_mode", exit_am_mode); - - PutAttrChar(NCURSES_SP_ARGx ch); - SP_PARM->_curscol--; -@@ -400,8 +395,7 @@ - SP_PARM->_curscol, - "exit_am_mode"); - -- TPUTS_TRACE("enter_am_mode"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx enter_am_mode); -+ NCURSES_PUTP2("enter_am_mode", enter_am_mode); - } else if ((enter_insert_mode && exit_insert_mode) - || insert_character || parm_ich) { - GoTo(NCURSES_SP_ARGx -@@ -496,12 +490,13 @@ - if (SP_PARM->_default_fg != C_MASK || SP_PARM->_default_bg != C_MASK) - return FALSE; - if ((pair = GetPair(CHDEREF(ch))) != 0) { -- short fg, bg; -- NCURSES_SP_NAME(pair_content) (NCURSES_SP_ARGx -- (short) pair, -- &fg, &bg); -- if (fg != C_MASK || bg != C_MASK) -+ NCURSES_COLOR_T fg, bg; -+ if (NCURSES_SP_NAME(pair_content) (NCURSES_SP_ARGx -+ (short) pair, -+ &fg, &bg) == ERR -+ || (fg != C_MASK || bg != C_MASK)) { - return FALSE; -+ } - } - #else - if (AttrOfD(ch) & A_COLOR) -@@ -563,8 +558,7 @@ - && runcount > SP_PARM->_ech_cost + SP_PARM->_cup_ch_cost - && can_clear_with(NCURSES_SP_ARGx CHREF(ntext0))) { - UpdateAttrs(SP_PARM, ntext0); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx -- TPARM_1(erase_chars, runcount)); -+ NCURSES_PUTP2("erase_chars", TPARM_1(erase_chars, runcount)); - - /* - * If this is the last part of the given interval, -@@ -677,6 +671,9 @@ - - T((T_CALLED("_nc_tinfo:doupdate(%p)"), (void *) SP_PARM)); - -+ if (SP_PARM == 0) -+ returnCode(ERR); -+ - #if !USE_REENTRANT - /* - * It is "legal" but unlikely that an application could assign a new -@@ -1076,32 +1073,29 @@ - */ - - static void --ClrToEOL(NCURSES_SP_DCLx NCURSES_CH_T blank, bool needclear) -+ClrToEOL(NCURSES_SP_DCLx NCURSES_CH_T blank, int needclear) - { - int j; - -- if (SP_PARM != 0) { -- if (CurScreen(SP_PARM) != 0 -- && SP_PARM->_cursrow >= 0) { -- for (j = SP_PARM->_curscol; j < screen_columns(SP_PARM); j++) { -- if (j >= 0) { -- NCURSES_CH_T *cp = -- &(CurScreen(SP_PARM)->_line[SP_PARM->_cursrow].text[j]); -- -- if (!CharEq(*cp, blank)) { -- *cp = blank; -- needclear = TRUE; -- } -+ if (CurScreen(SP_PARM) != 0 -+ && SP_PARM->_cursrow >= 0) { -+ for (j = SP_PARM->_curscol; j < screen_columns(SP_PARM); j++) { -+ if (j >= 0) { -+ NCURSES_CH_T *cp = -+ &(CurScreen(SP_PARM)->_line[SP_PARM->_cursrow].text[j]); -+ -+ if (!CharEq(*cp, blank)) { -+ *cp = blank; -+ needclear = TRUE; - } - } - } - } - -- if (needclear && (SP_PARM != 0)) { -+ if (needclear) { - UpdateAttrs(SP_PARM, blank); -- TPUTS_TRACE("clr_eol"); - if (clr_eol && SP_PARM->_el_cost <= (screen_columns(SP_PARM) - SP_PARM->_curscol)) { -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx clr_eol); -+ NCURSES_PUTP2("clr_eol", clr_eol); - } else { - int count = (screen_columns(SP_PARM) - SP_PARM->_curscol); - while (count-- > 0) -@@ -1121,12 +1115,14 @@ - { - int row, col; - -- if (0 == SP_PARM) -- return; -- - row = SP_PARM->_cursrow; - col = SP_PARM->_curscol; - -+ if (row < 0) -+ row = 0; -+ if (col < 0) -+ col = 0; -+ - UpdateAttrs(SP_PARM, blank); - TPUTS_TRACE("clr_eos"); - NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx -@@ -1370,13 +1366,11 @@ - && SP_PARM->_el_cost <= SP_PARM->_el1_cost) { - GoTo(NCURSES_SP_ARGx lineno, 0); - UpdateAttrs(SP_PARM, blank); -- TPUTS_TRACE("clr_eol"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx clr_eol); -+ NCURSES_PUTP2("clr_eol", clr_eol); - } else { - GoTo(NCURSES_SP_ARGx lineno, nFirstChar - 1); - UpdateAttrs(SP_PARM, blank); -- TPUTS_TRACE("clr_bol"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx clr_bol); -+ NCURSES_PUTP2("clr_bol", clr_bol); - } - - while (firstChar < nFirstChar) -@@ -1574,8 +1568,7 @@ - if (fast_clear) { - if (clear_screen) { - UpdateAttrs(SP_PARM, blank); -- TPUTS_TRACE("clear_screen"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx clear_screen); -+ NCURSES_PUTP2("clear_screen", clear_screen); - SP_PARM->_cursrow = SP_PARM->_curscol = 0; - position_check(SP_PARM, - SP_PARM->_cursrow, -@@ -1595,8 +1588,7 @@ - UpdateAttrs(SP_PARM, blank); - for (i = 0; i < screen_lines(SP_PARM); i++) { - GoTo(NCURSES_SP_ARGx i, 0); -- TPUTS_TRACE("clr_eol"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx clr_eol); -+ NCURSES_PUTP2("clr_eol", clr_eol); - } - GoTo(NCURSES_SP_ARGx 0, 0); - } -@@ -1647,27 +1639,22 @@ - count--; - } - } else if (enter_insert_mode && exit_insert_mode) { -- TPUTS_TRACE("enter_insert_mode"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx enter_insert_mode); -+ NCURSES_PUTP2("enter_insert_mode", enter_insert_mode); - while (count) { - PutAttrChar(NCURSES_SP_ARGx CHREF(*line)); - if (insert_padding) { -- TPUTS_TRACE("insert_padding"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_padding); -+ NCURSES_PUTP2("insert_padding", insert_padding); - } - line++; - count--; - } -- TPUTS_TRACE("exit_insert_mode"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_insert_mode); -+ NCURSES_PUTP2("exit_insert_mode", exit_insert_mode); - } else { - while (count) { -- TPUTS_TRACE("insert_character"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_character); -+ NCURSES_PUTP2("insert_character", insert_character); - PutAttrChar(NCURSES_SP_ARGx CHREF(*line)); - if (insert_padding) { -- TPUTS_TRACE("insert_padding"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_padding); -+ NCURSES_PUTP2("insert_padding", insert_padding); - } - line++; - count--; -@@ -1701,8 +1688,7 @@ - NCURSES_SP_NAME(_nc_outch)); - } else { - for (n = 0; n < count; n++) { -- TPUTS_TRACE("delete_character"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx delete_character); -+ NCURSES_PUTP2("delete_character", delete_character); - } - } - } -@@ -1754,13 +1740,11 @@ - if (n == 1 && scroll_forward && top == miny && bot == maxy) { - GoTo(NCURSES_SP_ARGx bot, 0); - UpdateAttrs(SP_PARM, blank); -- TPUTS_TRACE("scroll_forward"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx scroll_forward); -+ NCURSES_PUTP2("scroll_forward", scroll_forward); - } else if (n == 1 && delete_line && bot == maxy) { - GoTo(NCURSES_SP_ARGx top, 0); - UpdateAttrs(SP_PARM, blank); -- TPUTS_TRACE("delete_line"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx delete_line); -+ NCURSES_PUTP2("delete_line", delete_line); - } else if (parm_index && top == miny && bot == maxy) { - GoTo(NCURSES_SP_ARGx bot, 0); - UpdateAttrs(SP_PARM, blank); -@@ -1781,15 +1765,13 @@ - GoTo(NCURSES_SP_ARGx bot, 0); - UpdateAttrs(SP_PARM, blank); - for (i = 0; i < n; i++) { -- TPUTS_TRACE("scroll_forward"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx scroll_forward); -+ NCURSES_PUTP2("scroll_forward", scroll_forward); - } - } else if (delete_line && bot == maxy) { - GoTo(NCURSES_SP_ARGx top, 0); - UpdateAttrs(SP_PARM, blank); - for (i = 0; i < n; i++) { -- TPUTS_TRACE("delete_line"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx delete_line); -+ NCURSES_PUTP2("delete_line", delete_line); - } - } else - return ERR; -@@ -1823,13 +1805,11 @@ - if (n == 1 && scroll_reverse && top == miny && bot == maxy) { - GoTo(NCURSES_SP_ARGx top, 0); - UpdateAttrs(SP_PARM, blank); -- TPUTS_TRACE("scroll_reverse"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx scroll_reverse); -+ NCURSES_PUTP2("scroll_reverse", scroll_reverse); - } else if (n == 1 && insert_line && bot == maxy) { - GoTo(NCURSES_SP_ARGx top, 0); - UpdateAttrs(SP_PARM, blank); -- TPUTS_TRACE("insert_line"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_line); -+ NCURSES_PUTP2("insert_line", insert_line); - } else if (parm_rindex && top == miny && bot == maxy) { - GoTo(NCURSES_SP_ARGx top, 0); - UpdateAttrs(SP_PARM, blank); -@@ -1850,15 +1830,13 @@ - GoTo(NCURSES_SP_ARGx top, 0); - UpdateAttrs(SP_PARM, blank); - for (i = 0; i < n; i++) { -- TPUTS_TRACE("scroll_reverse"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx scroll_reverse); -+ NCURSES_PUTP2("scroll_reverse", scroll_reverse); - } - } else if (insert_line && bot == maxy) { - GoTo(NCURSES_SP_ARGx top, 0); - UpdateAttrs(SP_PARM, blank); - for (i = 0; i < n; i++) { -- TPUTS_TRACE("insert_line"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_line); -+ NCURSES_PUTP2("insert_line", insert_line); - } - } else - return ERR; -@@ -1889,8 +1867,7 @@ - GoTo(NCURSES_SP_ARGx del, 0); - UpdateAttrs(SP_PARM, blank); - if (n == 1 && delete_line) { -- TPUTS_TRACE("delete_line"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx delete_line); -+ NCURSES_PUTP2("delete_line", delete_line); - } else if (parm_delete_line) { - TPUTS_TRACE("parm_delete_line"); - NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx -@@ -1899,16 +1876,14 @@ - NCURSES_SP_NAME(_nc_outch)); - } else { /* if (delete_line) */ - for (i = 0; i < n; i++) { -- TPUTS_TRACE("delete_line"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx delete_line); -+ NCURSES_PUTP2("delete_line", delete_line); - } - } - - GoTo(NCURSES_SP_ARGx ins, 0); - UpdateAttrs(SP_PARM, blank); - if (n == 1 && insert_line) { -- TPUTS_TRACE("insert_line"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_line); -+ NCURSES_PUTP2("insert_line", insert_line); - } else if (parm_insert_line) { - TPUTS_TRACE("parm_insert_line"); - NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx -@@ -1917,8 +1892,7 @@ - NCURSES_SP_NAME(_nc_outch)); - } else { /* if (insert_line) */ - for (i = 0; i < n; i++) { -- TPUTS_TRACE("insert_line"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_line); -+ NCURSES_PUTP2("insert_line", insert_line); - } - } - -@@ -1975,24 +1949,20 @@ - && (SP_PARM->_cursrow == bot || SP_PARM->_cursrow == bot - 1)) - && save_cursor && restore_cursor) { - cursor_saved = TRUE; -- TPUTS_TRACE("save_cursor"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx save_cursor); -+ NCURSES_PUTP2("save_cursor", save_cursor); - } -- TPUTS_TRACE("change_scroll_region"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx -- TPARM_2(change_scroll_region, top, bot)); -+ NCURSES_PUTP2("change_scroll_region", -+ TPARM_2(change_scroll_region, top, bot)); - if (cursor_saved) { -- TPUTS_TRACE("restore_cursor"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx restore_cursor); -+ NCURSES_PUTP2("restore_cursor", restore_cursor); - } else { - SP_PARM->_cursrow = SP_PARM->_curscol = -1; - } - - res = scroll_csr_forward(NCURSES_SP_ARGx n, top, bot, top, bot, blank); - -- TPUTS_TRACE("change_scroll_region"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx -- TPARM_2(change_scroll_region, 0, maxy)); -+ NCURSES_PUTP2("change_scroll_region", -+ TPARM_2(change_scroll_region, 0, maxy)); - SP_PARM->_cursrow = SP_PARM->_curscol = -1; - } - -@@ -2025,15 +1995,12 @@ - SP_PARM->_cursrow == top - 1) - && save_cursor && restore_cursor) { - cursor_saved = TRUE; -- TPUTS_TRACE("save_cursor"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx save_cursor); -+ NCURSES_PUTP2("save_cursor", save_cursor); - } -- TPUTS_TRACE("change_scroll_region"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx -- TPARM_2(change_scroll_region, top, bot)); -+ NCURSES_PUTP2("change_scroll_region", -+ TPARM_2(change_scroll_region, top, bot)); - if (cursor_saved) { -- TPUTS_TRACE("restore_cursor"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx restore_cursor); -+ NCURSES_PUTP2("restore_cursor", restore_cursor); - } else { - SP_PARM->_cursrow = SP_PARM->_curscol = -1; - } -@@ -2041,9 +2008,8 @@ - res = scroll_csr_backward(NCURSES_SP_ARGx - -n, top, bot, top, bot, blank); - -- TPUTS_TRACE("change_scroll_region"); -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx -- TPARM_2(change_scroll_region, 0, maxy)); -+ NCURSES_PUTP2("change_scroll_region", -+ TPARM_2(change_scroll_region, 0, maxy)); - SP_PARM->_cursrow = SP_PARM->_curscol = -1; - } - -@@ -2114,23 +2080,25 @@ - } - - if (exit_attribute_mode) -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_attribute_mode); -+ NCURSES_PUTP2("exit_attribute_mode", exit_attribute_mode); - else { - /* turn off attributes */ - if (exit_alt_charset_mode) -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_alt_charset_mode); -+ NCURSES_PUTP2("exit_alt_charset_mode", exit_alt_charset_mode); - if (exit_standout_mode) -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_standout_mode); -+ NCURSES_PUTP2("exit_standout_mode", exit_standout_mode); - if (exit_underline_mode) -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_underline_mode); -+ NCURSES_PUTP2("exit_underline_mode", exit_underline_mode); - } - if (exit_insert_mode) -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_insert_mode); -- if (enter_am_mode && exit_am_mode) -- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx -- (auto_right_margin -- ? enter_am_mode -- : exit_am_mode)); -+ NCURSES_PUTP2("exit_insert_mode", exit_insert_mode); -+ if (enter_am_mode && exit_am_mode) { -+ if (auto_right_margin) { -+ NCURSES_PUTP2("enter_am_mode", enter_am_mode); -+ } else { -+ NCURSES_PUTP2("exit_am_mode", exit_am_mode); -+ } -+ } - } - - #if NCURSES_SP_FUNCS -@@ -2159,33 +2127,33 @@ - NCURSES_EXPORT(void) - NCURSES_SP_NAME(_nc_screen_wrap) (NCURSES_SP_DCL0) - { -- if (SP_PARM == 0) -- return; -+ if (SP_PARM != 0) { - -- UpdateAttrs(SP_PARM, normal); -+ UpdateAttrs(SP_PARM, normal); - #if NCURSES_EXT_FUNCS -- if (SP_PARM->_coloron -- && !SP_PARM->_default_color) { -- static const NCURSES_CH_T blank = NewChar(BLANK_TEXT); -- SP_PARM->_default_color = TRUE; -- NCURSES_SP_NAME(_nc_do_color) (NCURSES_SP_ARGx -- -1, -- 0, -- FALSE, -- NCURSES_SP_NAME(_nc_outch)); -- SP_PARM->_default_color = FALSE; -- -- TINFO_MVCUR(NCURSES_SP_ARGx -- SP_PARM->_cursrow, -- SP_PARM->_curscol, -- screen_lines(SP_PARM) - 1, -- 0); -+ if (SP_PARM->_coloron -+ && !SP_PARM->_default_color) { -+ static const NCURSES_CH_T blank = NewChar(BLANK_TEXT); -+ SP_PARM->_default_color = TRUE; -+ NCURSES_SP_NAME(_nc_do_color) (NCURSES_SP_ARGx -+ -1, -+ 0, -+ FALSE, -+ NCURSES_SP_NAME(_nc_outch)); -+ SP_PARM->_default_color = FALSE; -+ -+ TINFO_MVCUR(NCURSES_SP_ARGx -+ SP_PARM->_cursrow, -+ SP_PARM->_curscol, -+ screen_lines(SP_PARM) - 1, -+ 0); - -- ClrToEOL(NCURSES_SP_ARGx blank, TRUE); -- } -+ ClrToEOL(NCURSES_SP_ARGx blank, TRUE); -+ } - #endif -- if (SP_PARM->_color_defs) { -- NCURSES_SP_NAME(_nc_reset_colors) (NCURSES_SP_ARG); -+ if (SP_PARM->_color_defs) { -+ NCURSES_SP_NAME(_nc_reset_colors) (NCURSES_SP_ARG); -+ } - } - } - -diff -Naur ncurses-5.9/ncurses/wcwidth.h ncurses-5.9.patch/ncurses/wcwidth.h ---- ncurses-5.9/ncurses/wcwidth.h 2010-08-07 20:28:09.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/wcwidth.h 2014-09-01 16:33:22.457792290 +0200 -@@ -192,15 +192,18 @@ - (ucs <= 0x115f || /* Hangul Jamo init. consonants */ - ucs == 0x2329 || ucs == 0x232a || - (ucs >= 0x2e80 && ucs <= 0xa4cf && -- ucs != 0x303f) || /* CJK ... Yi */ -- (ucs >= 0xac00 && ucs <= 0xd7a3) || /* Hangul Syllables */ -- (ucs >= 0xf900 && ucs <= 0xfaff) || /* CJK Compatibility Ideographs */ -- (ucs >= 0xfe10 && ucs <= 0xfe19) || /* Vertical forms */ -- (ucs >= 0xfe30 && ucs <= 0xfe6f) || /* CJK Compatibility Forms */ -- (ucs >= 0xff00 && ucs <= 0xff60) || /* Fullwidth Forms */ -- (ucs >= 0xffe0 && ucs <= 0xffe6) || -- (ucs >= 0x20000 && ucs <= 0x2fffd) || -- (ucs >= 0x30000 && ucs <= 0x3fffd))); -+ ucs != 0x303f) /* CJK ... Yi */ -+ || (ucs >= 0xac00 && ucs <= 0xd7a3) /* Hangul Syllables */ -+ || (ucs >= 0xf900 && ucs <= 0xfaff) /* CJK Compatibility Ideographs */ -+ || (ucs >= 0xfe10 && ucs <= 0xfe19) /* Vertical forms */ -+ || (ucs >= 0xfe30 && ucs <= 0xfe6f) /* CJK Compatibility Forms */ -+ || (ucs >= 0xff00 && ucs <= 0xff60) /* Fullwidth Forms */ -+ || (ucs >= 0xffe0 && ucs <= 0xffe6) -+#if !defined(SIZEOF_WCHAR_T) || (SIZEOF_WCHAR_T >= 4) -+ || (ucs >= 0x20000 && ucs <= 0x2fffd) -+ || (ucs >= 0x30000 && ucs <= 0x3fffd) -+#endif -+ )); - } - - -diff -Naur ncurses-5.9/ncurses/widechar/lib_box_set.c ncurses-5.9.patch/ncurses/widechar/lib_box_set.c ---- ncurses-5.9/ncurses/widechar/lib_box_set.c 2009-10-25 00:36:56.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/widechar/lib_box_set.c 2014-09-01 16:33:22.457792290 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2003,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2009,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_box_set.c,v 1.5 2009/10/24 22:36:56 tom Exp $") -+MODULE_ID("$Id: lib_box_set.c,v 1.6 2011/06/25 19:02:07 Vassili.Courzakis Exp $") - - NCURSES_EXPORT(int) - wborder_set(WINDOW *win, -@@ -52,7 +52,7 @@ - NCURSES_SIZE_T endx, endy; - NCURSES_CH_T wls, wrs, wts, wbs, wtl, wtr, wbl, wbr; - -- T((T_CALLED("wborder(%p,%s,%s,%s,%s,%s,%s,%s,%s)"), -+ T((T_CALLED("wborder_set(%p,%s,%s,%s,%s,%s,%s,%s,%s)"), - (void *) win, - _tracech_t2(1, ls), - _tracech_t2(2, rs), -diff -Naur ncurses-5.9/ncurses/widechar/lib_cchar.c ncurses-5.9.patch/ncurses/widechar/lib_cchar.c ---- ncurses-5.9/ncurses/widechar/lib_cchar.c 2010-12-26 00:46:26.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/widechar/lib_cchar.c 2014-09-01 16:33:22.458792292 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2001-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2001-2012,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,7 +35,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_cchar.c,v 1.20 2010/12/25 23:46:26 tom Exp $") -+MODULE_ID("$Id: lib_cchar.c,v 1.27 2014/02/01 22:10:42 tom Exp $") - - /* - * The SuSv2 description leaves some room for interpretation. We'll assume wch -@@ -47,7 +47,7 @@ - setcchar(cchar_t *wcval, - const wchar_t *wch, - const attr_t attrs, -- short color_pair, -+ NCURSES_PAIRS_T color_pair, - const void *opts) - { - unsigned i; -@@ -56,11 +56,11 @@ - - TR(TRACE_CCALLS, (T_CALLED("setcchar(%p,%s,%lu,%d,%p)"), - (void *) wcval, _nc_viswbuf(wch), -- (unsigned long) attrs, color_pair, opts)); -+ (unsigned long) attrs, (int) color_pair, opts)); - -- len = (unsigned) wcslen(wch); - if (opts != NULL -- || (len > 1 && wcwidth(wch[0]) < 0)) { -+ || wch == NULL -+ || ((len = (unsigned) wcslen(wch)) > 1 && wcwidth(wch[0]) < 0)) { - code = ERR; - } else { - if (len > CCHARW_MAX) -@@ -80,7 +80,7 @@ - memset(wcval, 0, sizeof(*wcval)); - - if (len != 0) { -- SetAttr(*wcval, attrs | (attr_t) ColorPair(color_pair)); -+ SetAttr(*wcval, attrs); - SetPair(CHDEREF(wcval), color_pair); - memcpy(&wcval->chars, wch, len * sizeof(wchar_t)); - TR(TRACE_CCALLS, ("copy %d wchars, first is %s", len, -@@ -96,7 +96,7 @@ - getcchar(const cchar_t *wcval, - wchar_t *wch, - attr_t *attrs, -- short *color_pair, -+ NCURSES_PAIRS_T *color_pair, - void *opts) - { - wchar_t *wp; -@@ -110,8 +110,8 @@ - (void *) color_pair, - opts)); - -- if (opts == NULL) { -- len = ((wp = wmemchr(wcval->chars, L'\0', CCHARW_MAX)) -+ if (opts == NULL && wcval != NULL) { -+ len = ((wp = wmemchr(wcval->chars, L'\0', (size_t) CCHARW_MAX)) - ? (int) (wp - wcval->chars) - : CCHARW_MAX); - -@@ -125,8 +125,8 @@ - code = ERR; - } else if (len >= 0) { - *attrs = AttrOf(*wcval) & A_ATTRIBUTES; -- *color_pair = (short) GetPair(*wcval); -- wmemcpy(wch, wcval->chars, (unsigned) len); -+ *color_pair = (NCURSES_PAIRS_T) GetPair(*wcval); -+ wmemcpy(wch, wcval->chars, (size_t) len); - wch[len] = L'\0'; - code = OK; - } -diff -Naur ncurses-5.9/ncurses/widechar/lib_erasewchar.c ncurses-5.9.patch/ncurses/widechar/lib_erasewchar.c ---- ncurses-5.9/ncurses/widechar/lib_erasewchar.c 2010-07-24 13:35:12.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/widechar/lib_erasewchar.c 2014-09-01 16:33:22.458792292 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_erasewchar.c,v 1.2 2010/07/24 11:35:12 tom Exp $") -+MODULE_ID("$Id: lib_erasewchar.c,v 1.3 2014/02/23 01:21:08 tom Exp $") - - /* - * erasewchar() -@@ -49,7 +49,7 @@ - - T((T_CALLED("erasewchar()"))); - if ((value = erasechar()) != ERR) { -- *wch = value; -+ *wch = (wchar_t) value; - result = OK; - } - returnCode(result); -@@ -70,7 +70,7 @@ - - T((T_CALLED("killwchar()"))); - if ((value = killchar()) != ERR) { -- *wch = value; -+ *wch = (wchar_t) value; - result = OK; - } - returnCode(result); -diff -Naur ncurses-5.9/ncurses/widechar/lib_get_wch.c ncurses-5.9.patch/ncurses/widechar/lib_get_wch.c ---- ncurses-5.9/ncurses/widechar/lib_get_wch.c 2010-08-28 23:00:35.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/widechar/lib_get_wch.c 2014-09-01 16:33:22.458792292 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -40,7 +40,7 @@ - #include <curses.priv.h> - #include <ctype.h> - --MODULE_ID("$Id: lib_get_wch.c,v 1.22 2010/08/28 21:00:35 tom Exp $") -+MODULE_ID("$Id: lib_get_wch.c,v 1.23 2011/05/28 23:00:29 tom Exp $") - - NCURSES_EXPORT(int) - wget_wch(WINDOW *win, wint_t *result) -@@ -106,7 +106,10 @@ - } else { - code = ERR; - } -- *result = (wint_t) value; -+ -+ if (result != 0) -+ *result = (wint_t) value; -+ - _nc_unlock_global(curses); - T(("result %#o", value)); - returnCode(code); -diff -Naur ncurses-5.9/ncurses/widechar/lib_get_wstr.c ncurses-5.9.patch/ncurses/widechar/lib_get_wstr.c ---- ncurses-5.9/ncurses/widechar/lib_get_wstr.c 2009-10-25 00:38:11.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/widechar/lib_get_wstr.c 2014-09-01 16:33:22.458792292 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2009,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_get_wstr.c,v 1.12 2009/10/24 22:38:11 tom Exp $") -+MODULE_ID("$Id: lib_get_wstr.c,v 1.13 2011/10/22 16:31:35 tom Exp $") - - static int - wadd_wint(WINDOW *win, wint_t *src) -@@ -49,7 +49,7 @@ - - wch[0] = (wchar_t) (*src); - wch[1] = 0; -- setcchar(&tmp, wch, A_NORMAL, 0, NULL); -+ setcchar(&tmp, wch, A_NORMAL, (short) 0, NULL); - return wadd_wch(win, &tmp); - } - -@@ -58,7 +58,7 @@ - * or other character, and handles reverse wraparound. - */ - static wint_t * --WipeOut(WINDOW *win, int y, int x, wint_t *first, wint_t *last, bool echoed) -+WipeOut(WINDOW *win, int y, int x, wint_t *first, wint_t *last, int echoed) - { - if (last > first) { - *--last = '\0'; -diff -Naur ncurses-5.9/ncurses/widechar/lib_ins_wch.c ncurses-5.9.patch/ncurses/widechar/lib_ins_wch.c ---- ncurses-5.9/ncurses/widechar/lib_ins_wch.c 2010-12-19 02:34:04.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/widechar/lib_ins_wch.c 2014-09-01 16:33:22.458792292 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_ins_wch.c,v 1.16 2010/12/19 01:34:04 tom Exp $") -+MODULE_ID("$Id: lib_ins_wch.c,v 1.17 2011/10/22 16:34:50 tom Exp $") - - /* - * Insert the given character, updating the current location to simplify -@@ -132,7 +132,7 @@ - (void) setcchar(&tmp_cchar, - &tmp_wchar, - WA_NORMAL, -- 0, -+ (short) 0, - (void *) 0); - code = _nc_insert_wch(win, &tmp_cchar); - } else { -diff -Naur ncurses-5.9/ncurses/widechar/lib_inwstr.c ncurses-5.9.patch/ncurses/widechar/lib_inwstr.c ---- ncurses-5.9/ncurses/widechar/lib_inwstr.c 2009-10-25 00:37:29.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/widechar/lib_inwstr.c 2014-09-01 16:33:22.458792292 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2004,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2009,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_inwstr.c,v 1.5 2009/10/24 22:37:29 tom Exp $") -+MODULE_ID("$Id: lib_inwstr.c,v 1.6 2011/05/28 22:49:49 tom Exp $") - - NCURSES_EXPORT(int) - winnwstr(WINDOW *win, wchar_t *wstr, int n) -@@ -93,8 +93,13 @@ - winwstr(WINDOW *win, wchar_t *wstr) - { - int result = OK; -+ - T((T_CALLED("winwstr(%p,%p)"), (void *) win, (void *) wstr)); -- if (winnwstr(win, wstr, CCHARW_MAX * (win->_maxx - win->_curx + 1)) == ERR) -+ if (win == 0) { -+ result = ERR; -+ } else if (winnwstr(win, wstr, -+ CCHARW_MAX * (win->_maxx - win->_curx + 1)) == ERR) { - result = ERR; -+ } - returnCode(result); - } -diff -Naur ncurses-5.9/ncurses/widechar/lib_slk_wset.c ncurses-5.9.patch/ncurses/widechar/lib_slk_wset.c ---- ncurses-5.9/ncurses/widechar/lib_slk_wset.c 2005-01-16 02:03:53.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/widechar/lib_slk_wset.c 2014-09-01 16:33:22.458792292 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2003-2004,2005 Free Software Foundation, Inc. * -+ * Copyright (c) 2003-2002,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -40,7 +40,7 @@ - #include <wctype.h> - #endif - --MODULE_ID("$Id: lib_slk_wset.c,v 1.11 2005/01/16 01:03:53 tom Exp $") -+MODULE_ID("$Id: lib_slk_wset.c,v 1.13 2011/10/22 15:52:20 tom Exp $") - - NCURSES_EXPORT(int) - slk_wset(int i, const wchar_t *astr, int format) -@@ -53,19 +53,21 @@ - - T((T_CALLED("slk_wset(%d, %s, %d)"), i, _nc_viswbuf(astr), format)); - -- init_mb(state); -- str = astr; -- if ((arglen = wcsrtombs(NULL, &str, 0, &state)) != (size_t) -1) { -- if ((mystr = (char *) _nc_doalloc(0, arglen + 1)) != 0) { -- str = astr; -- if (wcsrtombs(mystr, &str, arglen, &state) != (size_t) -1) { -- /* glibc documentation claims that the terminating L'\0' -- * is written, but it is not... -- */ -- mystr[arglen] = 0; -- result = slk_set(i, mystr, format); -+ if (astr != 0) { -+ init_mb(state); -+ str = astr; -+ if ((arglen = wcsrtombs(NULL, &str, (size_t) 0, &state)) != (size_t) -1) { -+ if ((mystr = (char *) _nc_doalloc(0, arglen + 1)) != 0) { -+ str = astr; -+ if (wcsrtombs(mystr, &str, arglen, &state) != (size_t) -1) { -+ /* glibc documentation claims that the terminating L'\0' -+ * is written, but it is not... -+ */ -+ mystr[arglen] = 0; -+ result = slk_set(i, mystr, format); -+ } -+ free(mystr); - } -- free(mystr); - } - } - returnCode(result); -diff -Naur ncurses-5.9/ncurses/widechar/lib_unget_wch.c ncurses-5.9.patch/ncurses/widechar/lib_unget_wch.c ---- ncurses-5.9/ncurses/widechar/lib_unget_wch.c 2010-07-24 13:35:21.000000000 +0200 -+++ ncurses-5.9.patch/ncurses/widechar/lib_unget_wch.c 2014-09-01 16:33:22.458792292 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_unget_wch.c,v 1.14 2010/07/24 11:35:21 tom Exp $") -+MODULE_ID("$Id: lib_unget_wch.c,v 1.15 2011/10/22 16:34:50 tom Exp $") - - /* - * Wrapper for wcrtomb() which obtains the length needed for the given -@@ -55,7 +55,7 @@ - const wchar_t *tempp = temp; - temp[0] = source; - temp[1] = 0; -- result = (int) wcsrtombs(NULL, &tempp, 0, state); -+ result = (int) wcsrtombs(NULL, &tempp, (size_t) 0, state); - } else { - result = (int) wcrtomb(target, source, state); - } -diff -Naur ncurses-5.9/ncurses/widechar/lib_vid_attr.c ncurses-5.9.patch/ncurses/widechar/lib_vid_attr.c ---- ncurses-5.9/ncurses/widechar/lib_vid_attr.c 2010-12-19 02:44:24.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/widechar/lib_vid_attr.c 2014-09-01 16:33:22.459792294 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,14 +36,16 @@ - #define CUR SP_TERMTYPE - #endif - --MODULE_ID("$Id: lib_vid_attr.c,v 1.14 2010/12/19 01:44:24 tom Exp $") -+MODULE_ID("$Id: lib_vid_attr.c,v 1.22 2014/02/01 22:09:27 tom Exp $") - --#define doPut(mode) TPUTS_TRACE(#mode); NCURSES_SP_NAME(tputs)(NCURSES_SP_ARGx mode, 1, outc) -+#define doPut(mode) \ -+ TPUTS_TRACE(#mode); \ -+ NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx mode, 1, outc) - --#define TurnOn(mask,mode) \ -+#define TurnOn(mask, mode) \ - if ((turn_on & mask) && mode) { doPut(mode); } - --#define TurnOff(mask,mode) \ -+#define TurnOff(mask, mode) \ - if ((turn_off & mask) && mode) { doPut(mode); turn_off &= ~mask; } - - /* if there is no current screen, assume we *can* do color */ -@@ -66,7 +68,7 @@ - NCURSES_EXPORT(int) - NCURSES_SP_NAME(vid_puts) (NCURSES_SP_DCLx - attr_t newmode, -- short pair, -+ NCURSES_PAIRS_T pair, - void *opts GCC_UNUSED, - NCURSES_SP_OUTC outc) - { -@@ -120,7 +122,7 @@ - * A_ALTCHARSET (256) down 2 to line up. We use the NCURSES_BITS - * macro so this will work properly for the wide-character layout. - */ -- unsigned value = no_color_video; -+ unsigned value = (unsigned) no_color_video; - attr_t mask = NCURSES_BITS((value & 63) - | ((value & 192) << 1) - | ((value & 256) >> 2), 8); -@@ -161,6 +163,11 @@ - if (!SP_PARM || SP_PARM->_use_rmso) { - TurnOff(A_STANDOUT, exit_standout_mode); - } -+#if USE_ITALIC -+ if (!SP_PARM || SP_PARM->_use_ritm) { -+ TurnOff(A_ITALIC, exit_italics_mode); -+ } -+#endif - } - previous_attr &= ALL_BUT_COLOR; - previous_pair = 0; -@@ -185,6 +192,15 @@ - previous_attr &= ALL_BUT_COLOR; - previous_pair = 0; - } -+#if USE_ITALIC -+ if (!SP_PARM || SP_PARM->_use_ritm) { -+ if (turn_on & A_ITALIC) { -+ TurnOn(A_ITALIC, enter_italics_mode); -+ } else if (turn_off & A_ITALIC) { -+ TurnOff(A_ITALIC, exit_italics_mode); -+ } -+ } -+#endif - SetColorsIf((pair != 0) || fix_pair0, previous_attr, previous_pair); - } else { - -@@ -199,7 +215,11 @@ - if (!SP_PARM || SP_PARM->_use_rmso) { - TurnOff(A_STANDOUT, exit_standout_mode); - } -- -+#if USE_ITALIC -+ if (!SP_PARM || SP_PARM->_use_ritm) { -+ TurnOff(A_ITALIC, exit_italics_mode); -+ } -+#endif - if (turn_off && exit_attribute_mode) { - doPut(exit_attribute_mode); - turn_on |= (newmode & ALL_BUT_COLOR); -@@ -219,6 +239,9 @@ - TurnOn(A_PROTECT, enter_protected_mode); - TurnOn(A_INVIS, enter_secure_mode); - TurnOn(A_UNDERLINE, enter_underline_mode); -+#if USE_ITALIC -+ TurnOn(A_ITALIC, enter_italics_mode); -+#endif - #if USE_WIDEC_SUPPORT - TurnOn(A_HORIZONTAL, enter_horizontal_hl_mode); - TurnOn(A_LEFT, enter_left_hl_mode); -@@ -244,7 +267,7 @@ - - returnCode(OK); - #else -- T((T_CALLED("vid_puts(%s,%d)"), _traceattr(newmode), pair)); -+ T((T_CALLED("vid_puts(%s,%d)"), _traceattr(newmode), (int) pair)); - set_color(newmode, pair); - returnCode(NCURSES_SP_NAME(vidputs) (NCURSES_SP_ARGx newmode, outc)); - #endif -@@ -253,7 +276,7 @@ - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(int) - vid_puts(attr_t newmode, -- short pair, -+ NCURSES_PAIRS_T pair, - void *opts GCC_UNUSED, - NCURSES_OUTC outc) - { -@@ -270,20 +293,20 @@ - NCURSES_EXPORT(int) - NCURSES_SP_NAME(vid_attr) (NCURSES_SP_DCLx - attr_t newmode, -- short pair, -+ NCURSES_PAIRS_T pair, - void *opts) - { -- T((T_CALLED("vid_attr(%s,%d)"), _traceattr(newmode), pair)); -+ T((T_CALLED("vid_attr(%s,%d)"), _traceattr(newmode), (int) pair)); - returnCode(NCURSES_SP_NAME(vid_puts) (NCURSES_SP_ARGx - newmode, - pair, - opts, -- NCURSES_SP_NAME(_nc_outch))); -+ NCURSES_SP_NAME(_nc_putchar))); - } - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(int) --vid_attr(attr_t newmode, short pair, void *opts) -+vid_attr(attr_t newmode, NCURSES_PAIRS_T pair, void *opts) - { - return NCURSES_SP_NAME(vid_attr) (CURRENT_SCREEN, newmode, pair, opts); - } -@@ -296,24 +319,26 @@ - NCURSES_EXPORT(attr_t) - NCURSES_SP_NAME(term_attrs) (NCURSES_SP_DCL0) - { -- attr_t attrs; -+ attr_t attrs = 0; - - T((T_CALLED("term_attrs()"))); -- attrs = SP_PARM ? NCURSES_SP_NAME(termattrs) (NCURSES_SP_ARG) : 0; -+ if (SP_PARM) { -+ attrs = NCURSES_SP_NAME(termattrs) (NCURSES_SP_ARG); - -- /* these are only supported for wide-character mode */ -- if (enter_horizontal_hl_mode) -- attrs |= WA_HORIZONTAL; -- if (enter_left_hl_mode) -- attrs |= WA_LEFT; -- if (enter_low_hl_mode) -- attrs |= WA_LOW; -- if (enter_right_hl_mode) -- attrs |= WA_RIGHT; -- if (enter_top_hl_mode) -- attrs |= WA_TOP; -- if (enter_vertical_hl_mode) -- attrs |= WA_VERTICAL; -+ /* these are only supported for wide-character mode */ -+ if (enter_horizontal_hl_mode) -+ attrs |= WA_HORIZONTAL; -+ if (enter_left_hl_mode) -+ attrs |= WA_LEFT; -+ if (enter_low_hl_mode) -+ attrs |= WA_LOW; -+ if (enter_right_hl_mode) -+ attrs |= WA_RIGHT; -+ if (enter_top_hl_mode) -+ attrs |= WA_TOP; -+ if (enter_vertical_hl_mode) -+ attrs |= WA_VERTICAL; -+ } - - returnAttr(attrs); - } -diff -Naur ncurses-5.9/ncurses/widechar/lib_wacs.c ncurses-5.9.patch/ncurses/widechar/lib_wacs.c ---- ncurses-5.9/ncurses/widechar/lib_wacs.c 2010-12-19 02:43:19.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/widechar/lib_wacs.c 2014-09-01 16:33:22.459792294 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,7 +32,7 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_wacs.c,v 1.10 2010/12/19 01:43:19 tom Exp $") -+MODULE_ID("$Id: lib_wacs.c,v 1.14 2014/02/23 01:21:08 tom Exp $") - - NCURSES_EXPORT_VAR(cchar_t) * _nc_wacs = 0; - -@@ -119,22 +119,24 @@ - T(("initializing WIDE-ACS map (Unicode is%s active)", - active ? "" : " not")); - -- _nc_wacs = typeCalloc(cchar_t, ACS_LEN); -- for (n = 0; n < SIZEOF(table); ++n) { -- int wide = wcwidth(table[n].value[active]); -- -- m = table[n].map; -- if (active && (wide == 1)) { -- SetChar(_nc_wacs[m], table[n].value[active], A_NORMAL); -- } else if (acs_map[m] & A_ALTCHARSET) { -- SetChar(_nc_wacs[m], m, A_ALTCHARSET); -- } else { -- SetChar(_nc_wacs[m], table[n].value[0], A_NORMAL); -- } -+ if ((_nc_wacs = typeCalloc(cchar_t, ACS_LEN)) != 0) { -+ -+ for (n = 0; n < SIZEOF(table); ++n) { -+ int wide = wcwidth((wchar_t) table[n].value[active]); - -- T(("#%d, SetChar(%c, %#04x) = %s", -- n, m, -- table[n].value[active], -- _tracecchar_t(&_nc_wacs[m]))); -+ m = table[n].map; -+ if (active && (wide == 1)) { -+ SetChar(_nc_wacs[m], table[n].value[1], A_NORMAL); -+ } else if (acs_map[m] & A_ALTCHARSET) { -+ SetChar(_nc_wacs[m], m, A_ALTCHARSET); -+ } else { -+ SetChar(_nc_wacs[m], table[n].value[0], A_NORMAL); -+ } -+ -+ T(("#%d, SetChar(%c, %#04x) = %s", -+ n, m, -+ table[n].value[active], -+ _tracecchar_t(&_nc_wacs[m]))); -+ } - } - } -diff -Naur ncurses-5.9/ncurses/widechar/lib_wunctrl.c ncurses-5.9.patch/ncurses/widechar/lib_wunctrl.c ---- ncurses-5.9/ncurses/widechar/lib_wunctrl.c 2010-12-19 02:42:15.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/widechar/lib_wunctrl.c 2014-09-01 16:33:22.459792294 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2001-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2001-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,14 +35,17 @@ - - #include <curses.priv.h> - --MODULE_ID("$Id: lib_wunctrl.c,v 1.14 2010/12/19 01:42:15 tom Exp $") -+MODULE_ID("$Id: lib_wunctrl.c,v 1.16 2012/12/15 20:53:42 tom Exp $") - - NCURSES_EXPORT(wchar_t *) - NCURSES_SP_NAME(wunctrl) (NCURSES_SP_DCLx cchar_t *wc) - { - static wchar_t str[CCHARW_MAX + 1], *wsp; -+ wchar_t *result; - -- if (Charable(*wc)) { -+ if (wc == 0) { -+ result = 0; -+ } else if (SP_PARM != 0 && Charable(*wc)) { - const char *p = - NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx - (unsigned) _nc_to_char((wint_t)CharOf(*wc))); -@@ -51,9 +54,11 @@ - *wsp++ = (wchar_t) _nc_to_widechar(*p); - } - *wsp = 0; -- return str; -- } else -- return wc->chars; -+ result = str; -+ } else { -+ result = wc->chars; -+ } -+ return result; - } - - #if NCURSES_SP_FUNCS -diff -Naur ncurses-5.9/ncurses/widechar/widechars.c ncurses-5.9.patch/ncurses/widechar/widechars.c ---- ncurses-5.9/ncurses/widechar/widechars.c 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/widechar/widechars.c 2014-09-01 16:33:22.518792397 +0200 -@@ -0,0 +1,152 @@ -+/**************************************************************************** -+ * Copyright (c) 2012,2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+#include <curses.priv.h> -+ -+#if USE_WIDEC_SUPPORT -+ -+MODULE_ID("$Id: widechars.c,v 1.5 2013/03/02 18:55:51 tom Exp $") -+ -+#if defined(__MINGW32__) -+/* -+ * MinGW has wide-character functions, but they do not work correctly. -+ */ -+ -+int -+_nc_mbtowc(wchar_t *pwc, const char *s, size_t n) -+{ -+ int result; -+ int count; -+ int try; -+ -+ if (s != 0 && n != 0) { -+ /* -+ * MultiByteToWideChar() can decide to return more than one -+ * wide-character. We want only one. Ignore any trailing null, both -+ * in the initial count and in the conversion. -+ */ -+ count = 0; -+ for (try = 1; try <= (int) n; ++try) { -+ count = MultiByteToWideChar(CP_UTF8, -+ MB_ERR_INVALID_CHARS, -+ s, -+ try, -+ pwc, -+ 0); -+ TR(TRACE_BITS, ("...try %d:%d", try, count)); -+ if (count > 0) { -+ break; -+ } -+ } -+ if (count < 1 || count > 2) { -+ result = -1; -+ } else { -+ wchar_t actual[2]; -+ memset(&actual, 0, sizeof(actual)); -+ count = MultiByteToWideChar(CP_UTF8, -+ MB_ERR_INVALID_CHARS, -+ s, -+ try, -+ actual, -+ 2); -+ TR(TRACE_BITS, ("\twin32 ->%#x, %#x", actual[0], actual[1])); -+ *pwc = actual[0]; -+ if (actual[1] != 0) -+ result = -1; -+ else -+ result = try; -+ } -+ } else { -+ result = 0; -+ } -+ -+ return result; -+} -+ -+int -+_nc_mblen(const char *s, size_t n) -+{ -+ int result = -1; -+ int count; -+ wchar_t temp; -+ -+ if (s != 0 && n != 0) { -+ count = _nc_mbtowc(&temp, s, n); -+ if (count == 1) { -+ int check = WideCharToMultiByte(CP_UTF8, -+ 0, -+ &temp, -+ 1, -+ NULL, -+ 0, /* compute length only */ -+ NULL, -+ NULL); -+ TR(TRACE_BITS, ("\tcheck ->%d\n", check)); -+ if (check > 0 && (size_t) check <= n) { -+ result = check; -+ } -+ } -+ } else { -+ result = 0; -+ } -+ -+ return result; -+} -+ -+int __MINGW_NOTHROW -+_nc_wctomb(char *s, wchar_t wc) -+{ -+ int result; -+ int check; -+ -+ check = WideCharToMultiByte(CP_UTF8, -+ 0, -+ &wc, -+ 1, -+ NULL, -+ 0, /* compute length only */ -+ NULL, -+ NULL); -+ if (check > 0) { -+ result = WideCharToMultiByte(CP_UTF8, -+ 0, -+ &wc, -+ 1, -+ s, -+ check + 1, -+ NULL, -+ NULL); -+ } else { -+ result = -1; -+ } -+ return result; -+} -+ -+#endif /* __MINGW32__ */ -+ -+#endif /* USE_WIDEC_SUPPORT */ -diff -Naur ncurses-5.9/ncurses/win32con/win_driver.c ncurses-5.9.patch/ncurses/win32con/win_driver.c ---- ncurses-5.9/ncurses/win32con/win_driver.c 2010-12-25 20:28:21.000000000 +0100 -+++ ncurses-5.9.patch/ncurses/win32con/win_driver.c 2014-09-01 16:33:22.518792397 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - - /**************************************************************************** - * Author: Juergen Pfeifer * -- * * -+ * and: Thomas E. Dickey * - ****************************************************************************/ - - /* -@@ -39,15 +39,21 @@ - #include <curses.priv.h> - #define CUR my_term.type. - --MODULE_ID("$Id: win_driver.c,v 1.10 2010/12/25 19:28:21 tom Exp $") -+MODULE_ID("$Id: win_driver.c,v 1.28 2014/03/08 21:44:53 tom Exp $") - - #define WINMAGIC NCDRV_MAGIC(NCDRV_WINCONSOLE) - --#define AssertTCB() assert(TCB!=0 && TCB->magic==WINMAGIC) --#define SetSP() assert(TCB->csp!=0); sp = TCB->csp -+#define EXP_OPTIMIZE 0 -+ -+#define okConsoleHandle(TCB) (TCB != 0 && !InvalidConsoleHandle(TCB->hdl)) -+ -+#define AssertTCB() assert(TCB != 0 && (TCB->magic == WINMAGIC)) -+#define SetSP() assert(TCB->csp != 0); sp = TCB->csp; (void) sp - - #define GenMap(vKey,key) MAKELONG(key, vKey) - -+#define AdjustY(p) ((p)->buffered ? 0 : (int) (p)->SBI.srWindow.Top) -+ - static const LONG keylist[] = - { - GenMap(VK_PRIOR, KEY_PPAGE), -@@ -69,9 +75,14 @@ - typedef struct props { - CONSOLE_SCREEN_BUFFER_INFO SBI; - bool progMode; -+ TERM_HANDLE lastOut; - DWORD map[MAPSIZE]; - DWORD rmap[MAPSIZE]; - WORD pairs[NUMPAIRS]; -+ bool buffered; /* normally allocate console-buffer */ -+ bool window_only; /* ..if not, we save buffer or window-only */ -+ COORD origin; -+ CHAR_INFO *save_screen; - } Properties; - - #define PropOf(TCB) ((Properties*)TCB->prop) -@@ -103,7 +114,7 @@ - } - - static WORD --MapAttr(TERMINAL_CONTROL_BLOCK * TCB, WORD res, chtype ch) -+MapAttr(TERMINAL_CONTROL_BLOCK * TCB, WORD res, attr_t ch) - { - if (ch & A_COLOR) { - int p; -@@ -115,16 +126,22 @@ - if (p > 0 && p < NUMPAIRS && TCB != 0 && sp != 0) { - WORD a; - a = PropOf(TCB)->pairs[p]; -- res = (res & 0xff00) | a; -+ res = (WORD) ((res & 0xff00) | a); - } - } - -- if (ch & A_REVERSE) -- res = ((res & 0xff00) | (((res & 0x07) << 4) | ((res & 0x70) >> 4))); -+ if (ch & A_REVERSE) { -+ res = (WORD) ((res & 0xff00) | -+ (((res & 0x07) << 4) | -+ ((res & 0x70) >> 4))); -+ } - -- if (ch & A_STANDOUT) -- res = ((res & 0xff00) | (((res & 0x07) << 4) | ((res & 0x70) >> 4)) -- | BACKGROUND_INTENSITY); -+ if (ch & A_STANDOUT) { -+ res = (WORD) ((res & 0xff00) | -+ (((res & 0x07) << 4) | -+ ((res & 0x70) >> 4)) | -+ BACKGROUND_INTENSITY); -+ } - - if (ch & A_BOLD) - res |= FOREGROUND_INTENSITY; -@@ -135,8 +152,69 @@ - return res; - } - -+#if USE_WIDEC_SUPPORT -+/* -+ * TODO: support surrogate pairs -+ * TODO: support combining characters -+ * TODO: support acsc -+ * TODO: check wcwidth of base character, fill if needed for double-width -+ * TODO: _nc_wacs should be part of sp. -+ */ - static BOOL --con_write(TERMINAL_CONTROL_BLOCK * TCB, int y, int x, chtype *str, int n) -+con_write16(TERMINAL_CONTROL_BLOCK * TCB, int y, int x, cchar_t *str, int limit) -+{ -+ int actual = 0; -+ CHAR_INFO ci[limit]; -+ COORD loc, siz; -+ SMALL_RECT rec; -+ int i; -+ cchar_t ch; -+ SCREEN *sp; -+ Properties *p = PropOf(TCB); -+ -+ AssertTCB(); -+ -+ SetSP(); -+ -+ for (i = actual = 0; i < limit; i++) { -+ ch = str[i]; -+ if (isWidecExt(ch)) -+ continue; -+ ci[actual].Char.UnicodeChar = CharOf(ch); -+ ci[actual].Attributes = MapAttr(TCB, -+ PropOf(TCB)->SBI.wAttributes, -+ AttrOf(ch)); -+ if (AttrOf(ch) & A_ALTCHARSET) { -+ if (_nc_wacs) { -+ int which = CharOf(ch); -+ if (which > 0 -+ && which < ACS_LEN -+ && CharOf(_nc_wacs[which]) != 0) { -+ ci[actual].Char.UnicodeChar = CharOf(_nc_wacs[which]); -+ } else { -+ ci[actual].Char.UnicodeChar = ' '; -+ } -+ } -+ } -+ ++actual; -+ } -+ -+ loc.X = (short) 0; -+ loc.Y = (short) 0; -+ siz.X = (short) actual; -+ siz.Y = 1; -+ -+ rec.Left = (short) x; -+ rec.Top = (SHORT) (y + AdjustY(p)); -+ rec.Right = (short) (x + limit - 1); -+ rec.Bottom = rec.Top; -+ -+ return WriteConsoleOutputW(TCB->hdl, ci, siz, loc, &rec); -+} -+#define con_write(tcb, y, x, str, n) con_write16(tcb, y, x, str, n) -+#else -+static BOOL -+con_write8(TERMINAL_CONTROL_BLOCK * TCB, int y, int x, chtype *str, int n) - { - CHAR_INFO ci[n]; - COORD loc, siz; -@@ -147,9 +225,6 @@ - - AssertTCB(); - -- if (TCB == 0 || InvalidConsoleHandle(TCB->hdl)) -- return FALSE; -- - SetSP(); - - for (i = 0; i < n; i++) { -@@ -161,7 +236,7 @@ - if (ChAttrOf(ch) & A_ALTCHARSET) { - if (sp->_acs_map) - ci[i].Char.AsciiChar = -- ChCharOf(NCURSES_SP_NAME(_nc_acs_char) (sp, ChCharOf(ch))); -+ ChCharOf(NCURSES_SP_NAME(_nc_acs_char) (sp, ChCharOf(ch))); - } - } - -@@ -177,55 +252,199 @@ - - return WriteConsoleOutput(TCB->hdl, ci, siz, loc, &rec); - } -+#define con_write(tcb, y, x, str, n) con_write8(tcb, y, x, str, n) -+#endif -+ -+#if EXP_OPTIMIZE -+/* -+ * Comparing new/current screens, determine the last column-index for a change -+ * beginning on the given row,col position. Unlike a serial terminal, there is -+ * no cost for "moving" the "cursor" on the line as we update it. -+ */ -+static int -+find_end_of_change(SCREEN *sp, int row, int col) -+{ -+ int result = col; -+ struct ldat *curdat = CurScreen(sp)->_line + row; -+ struct ldat *newdat = NewScreen(sp)->_line + row; -+ -+ while (col <= newdat->lastchar) { -+#if USE_WIDEC_SUPPORT -+ if (isWidecExt(curdat->text[col]) || isWidecExt(newdat->text[col])) { -+ result = col; -+ } else if (memcmp(&curdat->text[col], -+ &newdat->text[col], -+ sizeof(curdat->text[0]))) { -+ result = col; -+ } else { -+ break; -+ } -+#else -+ if (curdat->text[col] != newdat->text[col]) { -+ result = col; -+ } else { -+ break; -+ } -+#endif -+ ++col; -+ } -+ return result; -+} -+ -+/* -+ * Given a row,col position at the end of a change-chunk, look for the -+ * beginning of the next change-chunk. -+ */ -+static int -+find_next_change(SCREEN *sp, int row, int col) -+{ -+ struct ldat *curdat = CurScreen(sp)->_line + row; -+ struct ldat *newdat = NewScreen(sp)->_line + row; -+ int result = newdat->lastchar + 1; -+ -+ while (++col <= newdat->lastchar) { -+#if USE_WIDEC_SUPPORT -+ if (isWidecExt(curdat->text[col]) != isWidecExt(newdat->text[col])) { -+ result = col; -+ break; -+ } else if (memcmp(&curdat->text[col], -+ &newdat->text[col], -+ sizeof(curdat->text[0]))) { -+ result = col; -+ break; -+ } -+#else -+ if (curdat->text[col] != newdat->text[col]) { -+ result = col; -+ break; -+ } -+#endif -+ } -+ return result; -+} -+ -+#define EndChange(first) \ -+ find_end_of_change(sp, y, first) -+#define NextChange(last) \ -+ find_next_change(sp, y, last) -+ -+#endif /* EXP_OPTIMIZE */ - - #define MARK_NOCHANGE(win,row) \ - win->_line[row].firstchar = _NOCHANGE; \ - win->_line[row].lastchar = _NOCHANGE - -+static void -+selectActiveHandle(TERMINAL_CONTROL_BLOCK * TCB) -+{ -+ if (PropOf(TCB)->lastOut != TCB->hdl) { -+ PropOf(TCB)->lastOut = TCB->hdl; -+ SetConsoleActiveScreenBuffer(PropOf(TCB)->lastOut); -+ } -+} -+ -+static bool -+restore_original_screen(TERMINAL_CONTROL_BLOCK * TCB) -+{ -+ COORD bufferCoord; -+ SMALL_RECT writeRegion; -+ Properties *p = PropOf(TCB); -+ bool result = FALSE; -+ -+ if (p->window_only) { -+ writeRegion.Top = p->SBI.srWindow.Top; -+ writeRegion.Left = p->SBI.srWindow.Left; -+ writeRegion.Bottom = p->SBI.srWindow.Bottom; -+ writeRegion.Right = p->SBI.srWindow.Right; -+ T(("... restoring window")); -+ } else { -+ writeRegion.Top = 0; -+ writeRegion.Left = 0; -+ writeRegion.Bottom = (SHORT) (p->SBI.dwSize.Y - 1); -+ writeRegion.Right = (SHORT) (p->SBI.dwSize.X - 1); -+ T(("... restoring entire buffer")); -+ } -+ -+ bufferCoord.X = bufferCoord.Y = 0; -+ -+ if (WriteConsoleOutput(TCB->hdl, -+ p->save_screen, -+ p->SBI.dwSize, -+ bufferCoord, -+ &writeRegion)) { -+ result = TRUE; -+ mvcur(-1, -1, LINES - 2, 0); -+ } -+ T(("... restore original screen contents %s", result ? "ok" : "err")); -+ return result; -+} -+ - static int - drv_doupdate(TERMINAL_CONTROL_BLOCK * TCB) - { -+ int result = ERR; - int y, nonempty, n, x0, x1, Width, Height; - SCREEN *sp; - - AssertTCB(); - SetSP(); - -- Width = screen_columns(sp); -- Height = screen_lines(sp); -- nonempty = min(Height, NewScreen(sp)->_maxy + 1); -- -- if ((CurScreen(sp)->_clear || NewScreen(sp)->_clear)) { -- int x; -- chtype empty[Width]; -+ T((T_CALLED("win32con::drv_doupdate(%p)"), TCB)); -+ if (okConsoleHandle(TCB)) { - -- for (x = 0; x < Width; x++) -- empty[x] = ' '; -+ Width = screen_columns(sp); -+ Height = screen_lines(sp); -+ nonempty = min(Height, NewScreen(sp)->_maxy + 1); -+ -+ if ((CurScreen(sp)->_clear || NewScreen(sp)->_clear)) { -+ int x; -+#if USE_WIDEC_SUPPORT -+ cchar_t empty[Width]; -+ wchar_t blank[2] = -+ { -+ L' ', L'\0' -+ }; -+ -+ for (x = 0; x < Width; x++) -+ setcchar(&empty[x], blank, 0, 0, 0); -+#else -+ chtype empty[Width]; -+ -+ for (x = 0; x < Width; x++) -+ empty[x] = ' '; -+#endif -+ -+ for (y = 0; y < nonempty; y++) { -+ con_write(TCB, y, 0, empty, Width); -+ memcpy(empty, -+ CurScreen(sp)->_line[y].text, -+ (size_t) Width * sizeof(empty[0])); -+ } -+ CurScreen(sp)->_clear = FALSE; -+ NewScreen(sp)->_clear = FALSE; -+ touchwin(NewScreen(sp)); -+ } - - for (y = 0; y < nonempty; y++) { -- con_write(TCB, y, 0, empty, Width); -- memcpy(empty, -- CurScreen(sp)->_line[y].text, -- Width * sizeof(chtype)); -- } -- CurScreen(sp)->_clear = FALSE; -- NewScreen(sp)->_clear = FALSE; -- touchwin(NewScreen(sp)); -- } -- -- for (y = 0; y < nonempty; y++) { -- x0 = NewScreen(sp)->_line[y].firstchar; -- if (x0 != _NOCHANGE) { -- x1 = NewScreen(sp)->_line[y].lastchar; -- n = x1 - x0 + 1; -- if (n > 0) { -- memcpy(CurScreen(sp)->_line[y].text + x0, -- NewScreen(sp)->_line[y].text + x0, -- n * sizeof(chtype)); -- con_write(TCB, -- y, -- x0, -- ((chtype *) CurScreen(sp)->_line[y].text) + x0, n); -+ x0 = NewScreen(sp)->_line[y].firstchar; -+ if (x0 != _NOCHANGE) { -+#if EXP_OPTIMIZE -+ int x2; -+ int limit = NewScreen(sp)->_line[y].lastchar; -+ while ((x1 = EndChange(x0)) <= limit) { -+ while ((x2 = NextChange(x1)) <= limit && x2 <= (x1 + 2)) { -+ x1 = x2; -+ } -+ n = x1 - x0 + 1; -+ memcpy(&CurScreen(sp)->_line[y].text[x0], -+ &NewScreen(sp)->_line[y].text[x0], -+ n * sizeof(CurScreen(sp)->_line[y].text[x0])); -+ con_write(TCB, -+ y, -+ x0, -+ &CurScreen(sp)->_line[y].text[x0], n); -+ x0 = NextChange(x1); -+ } - - /* mark line changed successfully */ - if (y <= NewScreen(sp)->_maxy) { -@@ -234,26 +453,50 @@ - if (y <= CurScreen(sp)->_maxy) { - MARK_NOCHANGE(CurScreen(sp), y); - } -+#else -+ x1 = NewScreen(sp)->_line[y].lastchar; -+ n = x1 - x0 + 1; -+ if (n > 0) { -+ memcpy(&CurScreen(sp)->_line[y].text[x0], -+ &NewScreen(sp)->_line[y].text[x0], -+ (size_t) n * sizeof(CurScreen(sp)->_line[y].text[x0])); -+ con_write(TCB, -+ y, -+ x0, -+ &CurScreen(sp)->_line[y].text[x0], n); -+ -+ /* mark line changed successfully */ -+ if (y <= NewScreen(sp)->_maxy) { -+ MARK_NOCHANGE(NewScreen(sp), y); -+ } -+ if (y <= CurScreen(sp)->_maxy) { -+ MARK_NOCHANGE(CurScreen(sp), y); -+ } -+ } -+#endif - } - } -- } -- -- /* put everything back in sync */ -- for (y = nonempty; y <= NewScreen(sp)->_maxy; y++) { -- MARK_NOCHANGE(NewScreen(sp), y); -- } -- for (y = nonempty; y <= CurScreen(sp)->_maxy; y++) { -- MARK_NOCHANGE(CurScreen(sp), y); -- } - -- if (!NewScreen(sp)->_leaveok) { -- CurScreen(sp)->_curx = NewScreen(sp)->_curx; -- CurScreen(sp)->_cury = NewScreen(sp)->_cury; -+ /* put everything back in sync */ -+ for (y = nonempty; y <= NewScreen(sp)->_maxy; y++) { -+ MARK_NOCHANGE(NewScreen(sp), y); -+ } -+ for (y = nonempty; y <= CurScreen(sp)->_maxy; y++) { -+ MARK_NOCHANGE(CurScreen(sp), y); -+ } - -- TCB->drv->hwcur(TCB, 0, 0, CurScreen(sp)->_cury, CurScreen(sp)->_curx); -+ if (!NewScreen(sp)->_leaveok) { -+ CurScreen(sp)->_curx = NewScreen(sp)->_curx; -+ CurScreen(sp)->_cury = NewScreen(sp)->_cury; -+ -+ TCB->drv->td_hwcur(TCB, -+ 0, 0, -+ CurScreen(sp)->_cury, CurScreen(sp)->_curx); -+ } -+ selectActiveHandle(TCB); -+ result = OK; - } -- SetConsoleActiveScreenBuffer(TCB->hdl); -- return OK; -+ returnCode(result); - } - - static bool -@@ -269,14 +512,14 @@ - assert(tname != 0); - - TCB->magic = WINMAGIC; -- if (*tname == 0 || *tname == 0) { -+ if (*tname == 0 || *tname == 0 || *tname == '#') { - code = TRUE; - } else { - TERMINAL my_term; - int status; - - code = FALSE; --#if (USE_DATABASE || USE_TERMCAP) -+#if (NCURSES_USE_DATABASE || NCURSES_USE_TERMCAP) - status = _nc_setup_tinfo(tname, &my_term.type); - #else - status = TGETENT_NO; -@@ -299,7 +542,7 @@ - - if (code) { - if ((TCB->term.type.Booleans) == 0) { -- _nc_init_entry(&(TCB->term.type)); -+ _nc_init_termtype(&(TCB->term.type)); - } - } - -@@ -308,7 +551,7 @@ - - static int - drv_dobeepflash(TERMINAL_CONTROL_BLOCK * TCB, -- bool beepFlag GCC_UNUSED) -+ int beepFlag GCC_UNUSED) - { - SCREEN *sp; - int res = ERR; -@@ -346,19 +589,55 @@ - return (code); - } - -+static bool -+get_SBI(TERMINAL_CONTROL_BLOCK * TCB) -+{ -+ bool rc = FALSE; -+ Properties *p = PropOf(TCB); -+ if (GetConsoleScreenBufferInfo(TCB->hdl, &(p->SBI))) { -+ T(("GetConsoleScreenBufferInfo")); -+ T(("... buffer(X:%d Y:%d)", -+ p->SBI.dwSize.X, -+ p->SBI.dwSize.Y)); -+ T(("... window(X:%d Y:%d)", -+ p->SBI.dwMaximumWindowSize.X, -+ p->SBI.dwMaximumWindowSize.Y)); -+ T(("... cursor(X:%d Y:%d)", -+ p->SBI.dwCursorPosition.X, -+ p->SBI.dwCursorPosition.Y)); -+ T(("... display(Top:%d Bottom:%d Left:%d Right:%d)", -+ p->SBI.srWindow.Top, -+ p->SBI.srWindow.Bottom, -+ p->SBI.srWindow.Left, -+ p->SBI.srWindow.Right)); -+ if (p->buffered) { -+ p->origin.X = 0; -+ p->origin.Y = 0; -+ } else { -+ p->origin.X = p->SBI.srWindow.Left; -+ p->origin.Y = p->SBI.srWindow.Top; -+ } -+ rc = TRUE; -+ } else { -+ T(("GetConsoleScreenBufferInfo ERR")); -+ } -+ return rc; -+} -+ - static void - drv_setcolor(TERMINAL_CONTROL_BLOCK * TCB, -- bool fore, -+ int fore, - int color, - int (*outc) (SCREEN *, int) GCC_UNUSED) - { - AssertTCB(); - -- if (TCB && !InvalidConsoleHandle(TCB->hdl)) { -+ if (okConsoleHandle(TCB) && -+ PropOf(TCB) != 0) { - WORD a = MapColor(fore, color); -- a = ((PropOf(TCB)->SBI.wAttributes) & (fore ? 0xfff8 : 0xff8f)) | a; -+ a |= (WORD) ((PropOf(TCB)->SBI.wAttributes) & (fore ? 0xfff8 : 0xff8f)); - SetConsoleTextAttribute(TCB->hdl, a); -- GetConsoleScreenBufferInfo(TCB->hdl, &(PropOf(TCB)->SBI)); -+ get_SBI(TCB); - } - } - -@@ -368,10 +647,10 @@ - bool res = FALSE; - - AssertTCB(); -- if (TCB && !InvalidConsoleHandle(TCB->hdl)) { -+ if (okConsoleHandle(TCB)) { - WORD a = FOREGROUND_BLUE | FOREGROUND_RED | FOREGROUND_GREEN; - SetConsoleTextAttribute(TCB->hdl, a); -- GetConsoleScreenBufferInfo(TCB->hdl, &(PropOf(TCB)->SBI)); -+ get_SBI(TCB); - res = TRUE; - } - return res; -@@ -392,14 +671,28 @@ - static int - drv_size(TERMINAL_CONTROL_BLOCK * TCB, int *Lines, int *Cols) - { -+ int result = ERR; -+ - AssertTCB(); - -- if (TCB == NULL || Lines == NULL || Cols == NULL || InvalidConsoleHandle(TCB->hdl)) -- return ERR; -+ T((T_CALLED("win32con::drv_size(%p)"), TCB)); - -- *Lines = (int) (PropOf(TCB)->SBI.dwSize.Y); -- *Cols = (int) (PropOf(TCB)->SBI.dwSize.X); -- return OK; -+ if (okConsoleHandle(TCB) && -+ PropOf(TCB) != 0 && -+ Lines != NULL && -+ Cols != NULL) { -+ if (PropOf(TCB)->buffered) { -+ *Lines = (int) (PropOf(TCB)->SBI.dwSize.Y); -+ *Cols = (int) (PropOf(TCB)->SBI.dwSize.X); -+ } else { -+ *Lines = (int) (PropOf(TCB)->SBI.srWindow.Bottom + 1 - -+ PropOf(TCB)->SBI.srWindow.Top); -+ *Cols = (int) (PropOf(TCB)->SBI.srWindow.Right + 1 - -+ PropOf(TCB)->SBI.srWindow.Left); -+ } -+ result = OK; -+ } -+ returnCode(result); - } - - static int -@@ -412,7 +705,7 @@ - } - - static int --drv_sgmode(TERMINAL_CONTROL_BLOCK * TCB, bool setFlag, TTY * buf) -+drv_sgmode(TERMINAL_CONTROL_BLOCK * TCB, int setFlag, TTY * buf) - { - DWORD dwFlag = 0; - tcflag_t iflag; -@@ -432,17 +725,17 @@ - if (lflag & ICANON) - dwFlag |= ENABLE_LINE_INPUT; - else -- dwFlag &= ~ENABLE_LINE_INPUT; -+ dwFlag &= (DWORD) (~ENABLE_LINE_INPUT); - - if (lflag & ECHO) - dwFlag |= ENABLE_ECHO_INPUT; - else -- dwFlag &= ~ENABLE_ECHO_INPUT; -+ dwFlag &= (DWORD) (~ENABLE_ECHO_INPUT); - - if (iflag & BRKINT) - dwFlag |= ENABLE_PROCESSED_INPUT; - else -- dwFlag &= ~ENABLE_PROCESSED_INPUT; -+ dwFlag &= (DWORD) (~ENABLE_PROCESSED_INPUT); - - dwFlag |= ENABLE_MOUSE_INPUT; - -@@ -458,17 +751,17 @@ - if (dwFlag & ENABLE_LINE_INPUT) - lflag |= ICANON; - else -- lflag &= ~ICANON; -+ lflag &= (tcflag_t) (~ICANON); - - if (dwFlag & ENABLE_ECHO_INPUT) - lflag |= ECHO; - else -- lflag &= ~ECHO; -+ lflag &= (tcflag_t) (~ECHO); - - if (dwFlag & ENABLE_PROCESSED_INPUT) - iflag |= BRKINT; - else -- iflag &= ~BRKINT; -+ iflag &= (tcflag_t) (~BRKINT); - - TCB->term.Nttyb.c_iflag = iflag; - TCB->term.Nttyb.c_lflag = lflag; -@@ -479,7 +772,7 @@ - } - - static int --drv_mode(TERMINAL_CONTROL_BLOCK * TCB, bool progFlag, bool defFlag) -+drv_mode(TERMINAL_CONTROL_BLOCK * TCB, int progFlag, int defFlag) - { - SCREEN *sp; - TERMINAL *_term = (TERMINAL *) TCB; -@@ -488,13 +781,15 @@ - AssertTCB(); - sp = TCB->csp; - -+ T((T_CALLED("win32con::drv_mode(%p, prog=%d, def=%d)"), TCB, progFlag, defFlag)); - PropOf(TCB)->progMode = progFlag; -- SetConsoleActiveScreenBuffer(progFlag ? TCB->hdl : TCB->out); -+ PropOf(TCB)->lastOut = progFlag ? TCB->hdl : TCB->out; -+ SetConsoleActiveScreenBuffer(PropOf(TCB)->lastOut); - - if (progFlag) /* prog mode */ { - if (defFlag) { - if ((drv_sgmode(TCB, FALSE, &(_term->Nttyb)) == OK)) { -- _term->Nttyb.c_oflag &= ~OFLAGS_TABS; -+ _term->Nttyb.c_oflag &= (tcflag_t) (~OFLAGS_TABS); - code = OK; - } - } else { -@@ -503,7 +798,6 @@ - if (sp) { - if (sp->_keypad_on) - _nc_keypad(sp, TRUE); -- NC_BUFFERED(sp, TRUE); - } - code = OK; - } -@@ -519,9 +813,12 @@ - if (sp) { - _nc_keypad(sp, FALSE); - NCURSES_SP_NAME(_nc_flush) (sp); -- NC_BUFFERED(sp, FALSE); - } - code = drv_sgmode(TCB, TRUE, &(_term->Ottyb)); -+ if (!PropOf(TCB)->buffered) { -+ if (!restore_original_screen(TCB)) -+ code = ERR; -+ } - } - } - -@@ -593,6 +890,93 @@ - returnVoid; - } - -+/* -+ * Attempt to save the screen contents. PDCurses does this if -+ * PDC_RESTORE_SCREEN is set, giving the same visual appearance on restoration -+ * as if the library had allocated a console buffer. -+ */ -+static bool -+save_original_screen(TERMINAL_CONTROL_BLOCK * TCB) -+{ -+ bool result = FALSE; -+ Properties *p = PropOf(TCB); -+ COORD bufferSize; -+ COORD bufferCoord; -+ SMALL_RECT readRegion; -+ size_t want; -+ -+ bufferSize.X = p->SBI.dwSize.X; -+ bufferSize.Y = p->SBI.dwSize.Y; -+ want = (size_t) (bufferSize.X * bufferSize.Y); -+ -+ if ((p->save_screen = malloc(want * sizeof(CHAR_INFO))) != 0) { -+ bufferCoord.X = bufferCoord.Y = 0; -+ -+ readRegion.Top = 0; -+ readRegion.Left = 0; -+ readRegion.Bottom = (SHORT) (bufferSize.Y - 1); -+ readRegion.Right = (SHORT) (bufferSize.X - 1); -+ -+ T(("... reading console buffer %dx%d into %d,%d - %d,%d at %d,%d", -+ bufferSize.Y, bufferSize.X, -+ readRegion.Top, -+ readRegion.Left, -+ readRegion.Bottom, -+ readRegion.Right, -+ bufferCoord.Y, -+ bufferCoord.X)); -+ -+ if (ReadConsoleOutput(TCB->hdl, -+ p->save_screen, -+ bufferSize, -+ bufferCoord, -+ &readRegion)) { -+ result = TRUE; -+ } else { -+ T((" error %#lx", (unsigned long) GetLastError())); -+ FreeAndNull(p->save_screen); -+ -+ bufferSize.X = (SHORT) (p->SBI.srWindow.Right -+ - p->SBI.srWindow.Left + 1); -+ bufferSize.Y = (SHORT) (p->SBI.srWindow.Bottom -+ - p->SBI.srWindow.Top + 1); -+ want = (size_t) (bufferSize.X * bufferSize.Y); -+ -+ if ((p->save_screen = malloc(want * sizeof(CHAR_INFO))) != 0) { -+ bufferCoord.X = bufferCoord.Y = 0; -+ -+ readRegion.Top = p->SBI.srWindow.Top; -+ readRegion.Left = p->SBI.srWindow.Left; -+ readRegion.Bottom = p->SBI.srWindow.Bottom; -+ readRegion.Right = p->SBI.srWindow.Right; -+ -+ T(("... reading console window %dx%d into %d,%d - %d,%d at %d,%d", -+ bufferSize.Y, bufferSize.X, -+ readRegion.Top, -+ readRegion.Left, -+ readRegion.Bottom, -+ readRegion.Right, -+ bufferCoord.Y, -+ bufferCoord.X)); -+ -+ if (ReadConsoleOutput(TCB->hdl, -+ p->save_screen, -+ bufferSize, -+ bufferCoord, -+ &readRegion)) { -+ result = TRUE; -+ p->window_only = TRUE; -+ } else { -+ T((" error %#lx", (unsigned long) GetLastError())); -+ } -+ } -+ } -+ } -+ -+ T(("... save original screen contents %s", result ? "ok" : "err")); -+ return result; -+} -+ - static void - drv_init(TERMINAL_CONTROL_BLOCK * TCB) - { -@@ -606,6 +990,7 @@ - BOOL b = AllocConsole(); - WORD a; - int i; -+ bool buffered = TRUE; - - if (!b) - b = AttachConsole(ATTACH_PARENT_PROCESS); -@@ -613,18 +998,32 @@ - TCB->inp = GetStdHandle(STD_INPUT_HANDLE); - TCB->out = GetStdHandle(STD_OUTPUT_HANDLE); - -- if (getenv("NCGDB")) -+ if (getenv("NCGDB") || getenv("NCURSES_CONSOLE2")) { - TCB->hdl = TCB->out; -- else -+ buffered = FALSE; -+ } else { - TCB->hdl = CreateConsoleScreenBuffer(GENERIC_READ | GENERIC_WRITE, - 0, - NULL, - CONSOLE_TEXTMODE_BUFFER, - NULL); -+ } - -- if (!InvalidConsoleHandle(TCB->hdl)) { -- TCB->prop = typeCalloc(Properties, 1); -- GetConsoleScreenBufferInfo(TCB->hdl, &(PropOf(TCB)->SBI)); -+ if (InvalidConsoleHandle(TCB->hdl)) { -+ returnVoid; -+ } else if ((TCB->prop = typeCalloc(Properties, 1)) != 0) { -+ PropOf(TCB)->buffered = buffered; -+ PropOf(TCB)->window_only = FALSE; -+ if (!get_SBI(TCB)) { -+ FreeAndNull(TCB->prop); /* force error in drv_size */ -+ returnVoid; -+ } -+ if (!buffered) { -+ if (!save_original_screen(TCB)) { -+ FreeAndNull(TCB->prop); /* force error in drv_size */ -+ returnVoid; -+ } -+ } - } - - TCB->info.initcolor = TRUE; -@@ -642,7 +1041,7 @@ - - if (GetNumberOfConsoleMouseButtons(&num_buttons)) { - T(("mouse has %ld buttons", num_buttons)); -- TCB->info.numbuttons = num_buttons; -+ TCB->info.numbuttons = (int) num_buttons; - } else { - TCB->info.numbuttons = 1; - } -@@ -651,10 +1050,10 @@ - - for (i = 0; i < (N_INI + FKEYS); i++) { - if (i < N_INI) -- PropOf(TCB)->rmap[i] = PropOf(TCB)->map[i] = keylist[i]; -+ PropOf(TCB)->rmap[i] = PropOf(TCB)->map[i] = (DWORD) keylist[i]; - else - PropOf(TCB)->rmap[i] = PropOf(TCB)->map[i] = -- GenMap((VK_F1 + (i - N_INI)), (KEY_F(1) + (i - N_INI))); -+ (DWORD) GenMap((VK_F1 + (i - N_INI)), (KEY_F(1) + (i - N_INI))); - } - qsort(PropOf(TCB)->map, - (size_t) (MAPSIZE), -@@ -674,9 +1073,9 @@ - - static void - drv_initpair(TERMINAL_CONTROL_BLOCK * TCB, -- short pair, -- short f, -- short b) -+ int pair, -+ int f, -+ int b) - { - SCREEN *sp; - -@@ -691,10 +1090,10 @@ - - static void - drv_initcolor(TERMINAL_CONTROL_BLOCK * TCB, -- short color GCC_UNUSED, -- short r GCC_UNUSED, -- short g GCC_UNUSED, -- short b GCC_UNUSED) -+ int color GCC_UNUSED, -+ int r GCC_UNUSED, -+ int g GCC_UNUSED, -+ int b GCC_UNUSED) - { - SCREEN *sp; - -@@ -704,9 +1103,9 @@ - - static void - drv_do_color(TERMINAL_CONTROL_BLOCK * TCB, -- short old_pair GCC_UNUSED, -- short pair GCC_UNUSED, -- bool reverse GCC_UNUSED, -+ int old_pair GCC_UNUSED, -+ int pair GCC_UNUSED, -+ int reverse GCC_UNUSED, - int (*outc) (SCREEN *, int) GCC_UNUSED - ) - { -@@ -739,11 +1138,11 @@ - if (sp->_drv_mouse_head < sp->_drv_mouse_tail) { - rc = TW_MOUSE; - } else { -- rc = TCBOf(sp)->drv->twait(TCBOf(sp), -- TWAIT_MASK, -- delay, -- (int *) 0 -- EVENTLIST_2nd(evl)); -+ rc = TCBOf(sp)->drv->td_twait(TCBOf(sp), -+ TWAIT_MASK, -+ delay, -+ (int *) 0 -+ EVENTLIST_2nd(evl)); - } - - return rc; -@@ -755,10 +1154,11 @@ - int y, int x) - { - int ret = ERR; -- if (TCB && !InvalidConsoleHandle(TCB->hdl)) { -+ if (okConsoleHandle(TCB)) { -+ Properties *p = PropOf(TCB); - COORD loc; - loc.X = (short) x; -- loc.Y = (short) y; -+ loc.Y = (short) (y + AdjustY(p)); - SetConsoleCursorPosition(TCB->hdl, loc); - ret = OK; - } -@@ -778,7 +1178,7 @@ - - static void - drv_hwlabelOnOff(TERMINAL_CONTROL_BLOCK * TCB, -- bool OnFlag GCC_UNUSED) -+ int OnFlag GCC_UNUSED) - { - SCREEN *sp; - -@@ -844,7 +1244,7 @@ - SetSP(); - - for (n = 0; n < SIZEOF(table); ++n) { -- real_map[table[n].acs_code] = table[n].use_code | A_ALTCHARSET; -+ real_map[table[n].acs_code] = (chtype) table[n].use_code | A_ALTCHARSET; - if (sp != 0) - sp->_screen_acs_map[table[n].acs_code] = TRUE; - } -@@ -931,7 +1331,7 @@ - SCREEN *sp; - INPUT_RECORD inp_rec; - BOOL b; -- DWORD nRead = 0, rc = -1; -+ DWORD nRead = 0, rc = (DWORD) (-1); - int code = 0; - FILETIME fstart; - FILETIME fend; -@@ -953,7 +1353,7 @@ - - while (true) { - GetSystemTimeAsFileTime(&fstart); -- rc = WaitForSingleObject(TCB->inp, milliseconds); -+ rc = WaitForSingleObject(TCB->inp, (DWORD) milliseconds); - GetSystemTimeAsFileTime(&fend); - diff = (int) tdiff(fstart, fend); - milliseconds = Adjust(milliseconds, diff); -@@ -999,8 +1399,7 @@ - } - continue; - default: -- SetConsoleActiveScreenBuffer(!PropOf(TCB)->progMode ? -- TCB->hdl : TCB->out); -+ selectActiveHandle(TCB); - continue; - } - } -@@ -1046,23 +1445,26 @@ - * FIXME: implement continuous event-tracking. - */ - if (sp->_drv_mouse_new_buttons != sp->_drv_mouse_old_buttons) { -+ Properties *p = PropOf(TCB); - - memset(&work, 0, sizeof(work)); - - if (sp->_drv_mouse_new_buttons) { - -- work.bstate |= decode_mouse(TCB, sp->_drv_mouse_new_buttons); -+ work.bstate |= (mmask_t) decode_mouse(TCB, sp->_drv_mouse_new_buttons); - - } else { - - /* cf: BUTTON_PRESSED, BUTTON_RELEASED */ -- work.bstate |= (decode_mouse(TCB, sp->_drv_mouse_old_buttons) >> 1); -+ work.bstate |= (mmask_t) (decode_mouse(TCB, -+ sp->_drv_mouse_old_buttons) -+ >> 1); - - result = TRUE; - } - - work.x = mer.dwMousePosition.X; -- work.y = mer.dwMousePosition.Y; -+ work.y = mer.dwMousePosition.Y - AdjustY(p); - - sp->_drv_mouse_fifo[sp->_drv_mouse_tail] = work; - sp->_drv_mouse_tail += 1; -@@ -1080,7 +1482,6 @@ - BOOL b; - DWORD nRead; - WORD vk; -- WORD sc; - - AssertTCB(); - assert(buf); -@@ -1096,7 +1497,6 @@ - continue; - *buf = (int) inp_rec.Event.KeyEvent.uChar.AsciiChar; - vk = inp_rec.Event.KeyEvent.wVirtualKeyCode; -- sc = inp_rec.Event.KeyEvent.wVirtualScanCode; - if (*buf == 0) { - if (sp->_keypad_on) { - *buf = MapKey(TCB, vk); -@@ -1124,8 +1524,9 @@ - static int - drv_nap(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED, int ms) - { -- Sleep(ms); -- return OK; -+ T((T_CALLED("win32con::drv_nap(%p, %d)"), TCB, ms)); -+ Sleep((DWORD) ms); -+ returnCode(OK); - } - - static bool -@@ -1142,6 +1543,7 @@ - - AssertTCB(); - -+ T((T_CALLED("win32con::drv_kyExist(%p, %d)"), TCB, keycode)); - res = bsearch(&key, - PropOf(TCB)->rmap, - (size_t) (N_INI + FKEYS), -@@ -1153,11 +1555,11 @@ - if (!(nKey & 0x8000)) - found = TRUE; - } -- return found; -+ returnCode(found); - } - - static int --drv_kpad(TERMINAL_CONTROL_BLOCK * TCB, bool flag GCC_UNUSED) -+drv_kpad(TERMINAL_CONTROL_BLOCK * TCB, int flag GCC_UNUSED) - { - SCREEN *sp; - int code = ERR; -@@ -1165,14 +1567,15 @@ - AssertTCB(); - sp = TCB->csp; - -+ T((T_CALLED("win32con::drv_kpad(%p, %d)"), TCB, flag)); - if (sp) { - code = OK; - } -- return code; -+ returnCode(code); - } - - static int --drv_keyok(TERMINAL_CONTROL_BLOCK * TCB, int keycode, bool flag) -+drv_keyok(TERMINAL_CONTROL_BLOCK * TCB, int keycode, int flag) - { - int code = ERR; - SCREEN *sp; -@@ -1184,6 +1587,7 @@ - AssertTCB(); - SetSP(); - -+ T((T_CALLED("win32con::drv_keyok(%p, %d, %d)"), TCB, keycode, flag)); - if (sp) { - res = bsearch(&key, - PropOf(TCB)->rmap, -@@ -1199,7 +1603,7 @@ - *(LONG *) res = GenMap(vKey, nKey); - } - } -- return code; -+ returnCode(code); - } - - NCURSES_EXPORT_VAR (TERM_DRIVER) _nc_WIN_DRIVER = { -diff -Naur ncurses-5.9/NEWS ncurses-5.9.patch/NEWS ---- ncurses-5.9/NEWS 2011-04-04 02:02:42.000000000 +0200 -+++ ncurses-5.9.patch/NEWS 2014-09-01 16:34:19.474887043 +0200 -@@ -1,5 +1,5 @@ - ------------------------------------------------------------------------------- ---- Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. -- -+-- Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. -- - -- -- - -- Permission is hereby granted, free of charge, to any person obtaining a -- - -- copy of this software and associated documentation files (the -- -@@ -25,7 +25,7 @@ - -- sale, use or other dealings in this Software without prior written -- - -- authorization. -- - ------------------------------------------------------------------------------- ---- $Id: NEWS,v 1.1682 2011/04/04 00:02:42 tom Exp $ -+-- $Id: NEWS,v 1.2185 2014/03/23 21:01:15 tom Exp $ - ------------------------------------------------------------------------------- - - This is a log of changes that ncurses has gone through since Zeyd started -@@ -45,6 +45,1389 @@ - Changes through 1.9.9e did not credit all contributions; - it is not possible to add this information. - -+20140323 -+ + fix typo in "mlterm" entry (report by Gabriele Balducci) -TD -+ -+20140322 -+ + use types from <stdint.h> in sample build-scripts for chtype, etc. -+ + modify configure script and curses.h.in to allow the types specified -+ using --with-chtype and related options to be defined in <stdint.h> -+ + add terminology entry -TD -+ + add mlterm3 entry, use that as "mlterm" -TD -+ + inherit mlterm-256color from mlterm -TD -+ -+20140315 -+ + modify _nc_New_TopRow_and_CurrentItem() to ensure that the menu's -+ top-row is adjusted as needed to ensure that the current item is -+ on the screen (patch by Johann Klammer). -+ + add wgetdelay() to retrieve _delay member of WINDOW if it happens to -+ be opaque, e.g., in the pthread configuration (prompted by patch by -+ Soren Brinkmann). -+ -+20140308 -+ + modify ifdef in read_entry.c to handle the case where -+ NCURSES_USE_DATABASE is not defined (patch by Xin Li). -+ + add cast in form_driver_w() to fix ARM build (patch by Xin Li). -+ + add logic to win_driver.c to save/restore screen contents when not -+ allocating a console-buffer (cf: 20140215). -+ -+20140301 -+ + clarify error-returns from newwin (report by Ruslan Nabioullin). -+ -+20140222 -+ + fix some compiler warnings in win_driver.c -+ + updated notes for wsvt25 based on tack and vttest -TD -+ + add teken entry to show actual properties of FreeBSD's "xterm" -+ console -TD -+ -+20140215 -+ + in-progress changes to win_driver.c to implement output without -+ allocating a console-buffer. This uses a pre-existing environment -+ variable NCGDB used by Juergen Pfeifer for debugging (prompted by -+ discussion with Erwin Waterlander regarding Console2, which hangs -+ when reading in an allocated console-buffer). -+ + add -t option to gdc.c, and modify to accept "S" to step through the -+ scrolling-stages. -+ + regenerate NCURSES-Programming-HOWTO.html to fix some of the broken -+ html emitted by docbook. -+ -+20140209 -+ + modify CF_XOPEN_SOURCE macro to omit followup check to determine if -+ _XOPEN_SOURCE can/should be defined. g++ 4.7.2 built on Solaris 10 -+ has some header breakage due to its own predefinition of this symbol -+ (report by Jean-Pierre Flori, Sage #15796). -+ -+20140201 -+ + add/use symbol NCURSES_PAIRS_T like NCURSES_COLOR_T, to illustrate -+ which "short" types are for color pairs and which are color values. -+ + fix build for s390x, by correcting field bit offsets in generated -+ representation clauses when int=32 long=64 and endian=big, or at -+ least on s390x (patch by Nicolas Boulenguez). -+ + minor cleanup change to test/form_driver_w.c (patch by Gaute Hope). -+ -+20140125 -+ + remove unnecessary ifdef's in Ada95/gen/gen.c, which reportedly do -+ not work as is with gcc 4.8 due to fixes using chtype cast made for -+ new compiler warnings by gcc 4.8 in 20130824 (Debian #735753, patch -+ by Nicolas Boulenguez). -+ -+20140118 -+ + apply includesubdir variable which was introduced in 20130805 to -+ gen-pkgconfig.in (Debian #735782). -+ -+20131221 -+ + further improved man2html, used this to fix broken links in html -+ manpages. See -+ ftp://invisible-island.net/ncurses/patches/man2html -+ -+20131214 -+ + modify configure-script/ifdef's to allow OLD_TTY feature to be -+ suppressed if the type of ospeed is configured using the option -+ --with-ospeed to not be a short. By default, it is a short for -+ termcap-compatibility (adapted from suggestion by Christian -+ Weisgerber). -+ + correct a typo in _nc_baudrate() (patch by Christian Weisgerber, -+ cf: 20061230). -+ + fix a few -Wlogical-op warnings. -+ + updated llib-l* files. -+ -+20131207 -+ + add form_driver_w() entrypoint to wide-character forms library, as -+ well as test program form_driver_w (adapted from patch by Gaute -+ Hope). -+ -+20131123 -+ + minor fix for CF_GCC_WARNINGS to special-case options which are not -+ recognized by clang. -+ -+20131116 -+ + add special case to configure script to move _XOPEN_SOURCE_EXTENDED -+ definition from CPPFLAGS to CFLAGS if it happens to be needed for -+ Solaris, because g++ errors with that definition (report by -+ Jean-Pierre Flori, Sage #15268). -+ + correct logic in infocmp's -i option which was intended to ignore -+ strings which correspond to function-keys as candidates for piecing -+ together initialization- or reset-strings. The problem dates to -+ 1.9.7a, but was overlooked until changes in -Wlogical-op warnings for -+ gcc 4.8 (report by David Binderman). -+ + updated CF_GCC_WARNINGS to documented options for gcc 4.9.0, adding -+ checks for -Wextra, -Wignored-qualifiers and -Wlogical-op -+ + updated CF_GCC_WARNINGS to documented options for gcc 4.9.0, moving -+ checks for -Wextra and -Wdeclaration-after-statement into the macro, -+ and adding checks for -Wignored-qualifiers, -Wlogical-op and -+ -Wvarargs -+ + updated CF_CURSES_UNCTRL_H and CF_SHARED_OPTS macros from ongoing -+ work on cdk. -+ + update config.sub from -+ http://git.savannah.gnu.org/cgit/config.git -+ -+20131110 -+ + minor cleanup of terminfo.tail -+ -+20131102 -+ + use TS extension to describe xterm's title-escapes -TD -+ + modify terminator and nsterm-s to use xterm+sl-twm building block -TD -+ + update hurd.ti, add xenl to reflect 2011-03-06 change in -+ http://git.savannah.gnu.org/cgit/hurd/hurd.git/log/console/display.c -+ (Debian #727119). -+ + simplify pfkey expression in ansi.sys -TD -+ -+20131027 -+ + correct/simplify ifdef's for cur_term versus broken-linker and -+ reentrant options (report by Jean-Pierre Flori, cf: 20090530). -+ + modify release/version combinations in test build-scripts to make -+ them more consistent with other packages. -+ -+20131019 -+ + add nc_mingw.h to installed headers for MinGW port; needed for -+ compiling ncurses-examples. -+ + add rpm-script for testing cross-compile of ncurses-examples. -+ -+20131014 -+ + fix new typo in CF_ADA_INCLUDE_DIRS macro (report by Roumen Petrov). -+ -+20131012 -+ + fix a few compiler warnings in progs and test. -+ + minor fix to package/debian-mingw/rules, do not strip dll's. -+ + minor fixes to configure script for empty $prefix, e.g., when doing -+ cross-compiles to MinGW. -+ + add script for building test-packages of binaries cross-compiled to -+ MinGW using NSIS. -+ -+20131005 -+ + minor fixes for ncurses-example package and makefile. -+ + add scripts for test-builds of cross-compiler packages for ncurses6 -+ to MinGW. -+ -+20130928 -+ + some build-fixes for ncurses-examples with NetBSD-6.0 curses, though -+ it lacks some common functions such as use_env() which is not yet -+ addressed. -+ + build-fix and some compiler warning fixes for ncurses-examples with -+ OpenBSD 5.3 -+ + fix a possible null-pointer reference in a trace message from newterm. -+ + quiet a few warnings from NetBSD 6.0 namespace pollution by -+ nonstandard popcount() function in standard strings.h header. -+ + ignore g++ 4.2.1 warnings for "-Weffc++" in c++/cursesmain.cc -+ + fix a few overlooked places for --enable-string-hacks option. -+ -+20130921 -+ + fix typo in curs_attr.3x (patch by Sven Joachim, cf: 20130831). -+ + build-fix for --with-shared option for DragonFly and FreeBSD (report -+ by Rong-En Fan, cf: 20130727). -+ -+20130907 -+ + build-fixes for MSYS for two test-programs (patches by Ray Donnelly, -+ Alexey Pavlov). -+ + revert change to two of the dpkg format files, to work with dpkg -+ before/after Debian #700177. -+ + fix gcc -Wconversion warning in wattr_get() macro. -+ + add msys and msysdll to known host/configuration types (patch by -+ Alexey Pavlov). -+ + modify CF_RPATH_HACK configure macro to not rely upon "-u" option -+ of sort, improving portability. -+ + minor improvements for test-programs from reviewing Solaris port. -+ + update config.guess, config.sub from -+ http://git.savannah.gnu.org/cgit/config.git -+ -+20130831 -+ + modify test/ncurses.c b/B tests to display lines only for the -+ attributes which a given terminal supports, to make room for an -+ italics test. -+ + completed ncv table in terminfo.tail; it did not list the wide -+ character codes listed in X/Open Curses issue 7. -+ + add A_ITALIC extension (prompted by discussion with Egmont Koblinger). -+ -+20130824 -+ + fix some gcc 4.8 -Wconversion warnings. -+ + change format of dpkg test-scripts to quilted to work around bug -+ introduced by Debian #700177. -+ + discard cached keyname() values if meta() is changed after a value -+ was cached using (report by Kurban Mallachiev). -+ -+20130816 -+ + add checks in tic to warn about terminals which lack cursor -+ addressing, capabilities or having those, are marked as hard_copy or -+ generic_type. -+ + use --without-progs in mingw-ncurses rpm. -+ + split out _nc_init_termtype() from alloc_entry.c to use in MinGW -+ port when tic and other programs are not needed. -+ -+20130805 -+ + minor fixes to the --disable-overwrite logic, to ensure that the -+ configured $(includedir) is not cancelled by the mingwxx-filesystem -+ rpm macros. -+ + add --disable-db-install configure option, to simplify building -+ cross-compile support packages. -+ + add mingw-ncurses.spec file, for testing cross-compiles. -+ -+20130727 -+ + improve configure macros from ongoing work on cdk, dialog, xterm: -+ + CF_ADD_LIB_AFTER - fix a problem with -Wl options -+ + CF_RPATH_HACK - add missing result-message -+ + CF_SHARED_OPTS - modify to use $rel_builddir in cygwin and mingw -+ dll symbols (which can be overridden) rather than explicit "../". -+ + CF_SHARED_OPTS - modify NetBSD and DragonFly symbols to use ${CC} -+ rather than ${LD} to improve rpath support. -+ + CF_SHARED_OPTS - add a symbol to denote the temporary files that -+ are created by the macro, to simplify clean-rules. -+ + CF_X_ATHENA - trim extra libraries to work with -Wl,--as-needed -+ + fix a regression in hashed-database support for NetBSD, which uses -+ the key-size differently from other implementations (cf: 20121229). -+ -+20130720 -+ + further improvements for setupterm manpage, clarifying the -+ initialization of cur_term. -+ -+20130713 -+ + improve manpages for initscr and setupterm. -+ + minor compiler-warning fixes -+ -+20130706 -+ + add fallback defs for <inttypes.h> and <stdint.h> (cf: 20120225). -+ + add check for size of wchar_t, use that to suppress a chunk of -+ wcwidth.h in MinGW port. -+ + quiet linker warnings for MinGW cross-compile with dll's using the -+ --enable-auto-import flag. -+ + add ncurses.map rule to ncurses/Makefile to help diagnose symbol -+ table issues. -+ -+20130622 -+ + modify the clear program to take into account the E3 extended -+ capability to clear the terminal's scrollback buffer (patch by -+ Miroslav Lichvar, Redhat #815790). -+ + clarify in resizeterm manpage that LINES and COLS are updated. -+ + updated ansi example in terminfo.tail, correct misordered example -+ of sgr. -+ + fix other doclifter warnings for manpages -+ + remove unnecessary ".ta" in terminfo.tail, add missing ".fi" -+ (patch by Eric Raymond). -+ -+20130615 -+ + minor changes to some configure macros to make them more reusable. -+ + fixes for tabs program (prompted by report by Nick Andrik): -+ + corrected logic in command-line parsing of -a and -c predefined -+ tab-lists options. -+ + allow "-0" and "-8" options to be combined with others, e.g.,"-0d". -+ + make warning messages more consistent with the other utilities by -+ not printing the full pathname of the program. -+ + add -V option for consistency with other utilities. -+ + fix off-by-one in columns for tabs program when processing an option -+ such as "-5" (patch by Nick Andrik). -+ -+20130608 -+ + add to test/demo_forms.c examples of using the menu-hooks as well -+ as showing how the menu item user-data can be used to pass a callback -+ function pointer. -+ + add test/dots_termcap.c -+ + remove setupterm call from test/demo_termcap.c -+ + build-fix if --disable-ext-funcs configure option is used. -+ + modified test/edit_field.c and test/demo_forms.c to move the lengths -+ into a user-data structure, keeping the original string for later -+ expansion to free-format input/out demo. -+ + modified test/demo_forms.c to load data from file. -+ + added note to clarify Terminal.app's non-emulation of the various -+ terminal types listed in the preferences dialog -TD -+ + fix regression in error-reporting in lib_setup.c (Debian #711134, -+ cf: 20121117). -+ + build-fix for a case where --enable-broken_linker and -+ --enable-reentrant options are combined (report by George R Goffe). -+ -+20130525 -+ + modify mvcur() to distinguish between internal use by the ncurses -+ library, and external callers, preventing it from reading the content -+ of the screen which is only nonblank when curses calls have updated -+ it. This makes test/dots_mvcur.c avoid painting colored cells in -+ the left margin of the display. -+ + minor fix to test/dots_mvcur.c -+ + move configured symbols USE_DATABASE and USE_TERMCAP to term.h as -+ NCURSES_USE_DATABASE and NCURSES_USE_TERMCAP to allow consistent -+ use of these symbols in term_entry.h -+ -+20130518 -+ + corrected ifdefs in test/testcurs.c to allow comparison of mouse -+ interface versus pdcurses (cf: 20130316). -+ + add pow() to configure-check for math library, needed since -+ 20121208 for test/hanoi (Debian #708056). -+ + regenerated html manpages. -+ + update doctype used for html documentation. -+ -+20130511 -+ + move nsterm-related entries out of "obsolete" section to more -+ plausible "ansi consoles" -TD -+ + additional cleanup of table-of-contents by reordering -TD -+ + revise fix for check for 8-bit value in _nc_insert_ch(); prior fix -+ prevented inserts when video attributes were attached to the data -+ (cf: 20121215) (Redhat #959534). -+ -+20130504 -+ + fixes for issues found by Coverity: -+ + correct FNKEY() macro in progs/dump_entry.c, allowing kf11-kf63 to -+ display when infocmp's -R option is used for HP or AIX subsets. -+ + fix dead-code issue with test/movewindow.c -+ + improve limited-checking in _nc_read_termtype(). -+ -+20130427 -+ + fix clang 3.2 warning in progs/dump_entry.c -+ + drop AC_TYPE_SIGNAL check; ncurses relies on c89 and later. -+ -+20130413 -+ + add MinGW to cases where ncurses installs by default into /usr -+ (prompted by discussion with Daniel Silva Ferreira). -+ + add -D option to infocmp's usage-message (patch by Miroslav Lichvar). -+ + add a missing 'int' type for main function in configure check for -+ type of bool variable, to work with clang 3.2 (report by Dmitri -+ Gribenko). -+ + improve configure check for static_cast, to work with clang 3.2 -+ (report by Dmitri Gribenko). -+ + re-order rule for demo.o and macros defining header dependencies in -+ c++/Makefile.in to accommodate gmake (report by Dmitri Gribenko). -+ -+20130406 -+ + improve parameter checking in copywin(). -+ + modify configure script to work around OS X's "libtool" program, to -+ choose glibtool instead. At the same time, chance the autoconf macro -+ to look for a "tool" rather than a "prog", to help with potential use -+ in cross-compiling. -+ + separate the rpath usage for c++ library from demo program -+ (Redhat #911540) -+ + update/correct header-dependencies in c++ makefile (report by Werner -+ Fink). -+ + add --with-cxx-shared to dpkg-script, as done for rpm-script. -+ -+20130324 -+ + build-fix for libtool configuration (reports by Daniel Silva Ferreira -+ and Roumen Petrov). -+ -+20130323 -+ + build-fix for OS X, to handle changes for --with-cxx-shared feature -+ (report by Christian Ebert). -+ + change initialization for vt220, similar entries for consistency -+ with cursor-key strings (NetBSD #47674) -TD -+ + further improvements to linux-16color (Benjamin Sittler) -+ -+20130316 -+ + additional fix for tic.c, to allocate missing buffer space. -+ + eliminate configure-script warnings for gen-pkgconfig.in -+ + correct typo in sgr string for sun-color, -+ add bold for consistency with sgr, -+ change smso for consistency with sgr -TD -+ + correct typo in sgr string for terminator -TD -+ + add blink to the attributes masked by ncv in linux-16color (report -+ by Benjamin Sittler) -+ + improve warning message from post-load checking for missing "%?" -+ operator by tic/infocmp by showing the entry name and capability. -+ + minor formatting improvement to tic/infocmp -f option to ensure -+ line split after "%;". -+ + amend scripting for --with-cxx-shared option to handle the debug -+ library "libncurses++_g.a" (report by Sven Joachim). -+ -+20130309 -+ + amend change to toe.c for reading from /dev/zero, to ensure that -+ there is a buffer for the temporary filename (cf: 20120324). -+ + regenerated html manpages. -+ + fix typo in terminfo.head (report by Sven Joachim, cf: 20130302). -+ + updated some autoconf macros: -+ + CF_ACVERSION_CHECK, from byacc 1.9 20130304 -+ + CF_INTEL_COMPILER, CF_XOPEN_SOURCE from luit 2.0-20130217 -+ + add configure option --with-cxx-shared to permit building -+ libncurses++ as a shared library when using g++, e.g., the same -+ limitations as libtool but better integrated with the usual build -+ configuration (Redhat #911540). -+ + modify MKkey_defs.sh to filter out build-path which was unnecessarily -+ shown in curses.h (Debian #689131). -+ -+20130302 -+ + add section to terminfo manpage discussing user-defined capabilities. -+ + update manpage description of NCURSES_NO_SETBUF, explaining why it -+ is obsolete. -+ + add a check in waddch_nosync() to ensure that tab characters are -+ treated as control characters; some broken locales claim they are -+ printable. -+ + add some traces to the Windows console driver. -+ + initialize a temporary array in _nc_mbtowc, needed for some cases -+ of raw input in MinGW port. -+ -+20130218 -+ + correct ifdef on change to lib_twait.c (report by Werner Fink). -+ + update config.guess, config.sub -+ -+20130216 -+ + modify test/testcurs.c to work with mouse for ncurses as it does for -+ pdcurses. -+ + modify test/knight.c to work with mouse for pdcurses as it does for -+ ncurses. -+ + modify internal recursion in wgetch() which handles cooked mode to -+ check if the call to wgetnstr() returned an error. This can happen -+ when both nocbreak() and nodelay() are set, for instance (report by -+ Nils Christopher Brause) (cf: 960418). -+ + fixes for issues found by Coverity: -+ + add a check for valid position in ClearToEOS() -+ + fix in lib_twait.c when --enable-wgetch-events is used, pointer -+ use after free. -+ + improve a limit-check in make_hash.c -+ + fix a memory leak in hashed_db.c -+ -+20130209 -+ + modify test/configure script to make it simpler to override names -+ of curses-related libraries, to help with linking with pdcurses in -+ MinGW environment. -+ + if the --with-terminfo-dirs configure option is not used, there is -+ no corresponding compiled-in value for that. Fill in "no default -+ value" for that part of the manpage substitution. -+ -+20130202 -+ + correct initialization in knight.c which let it occasionally make -+ an incorrect move (cf: 20001028). -+ + improve documentation of the terminfo/termcap search path. -+ -+20130126 -+ + further fixes to mvcur to pass callback function (cf: 20130112), -+ needed to make test/dots_mvcur work. -+ + reduce calls to SetConsoleActiveScreenBuffer in win_driver.c, to -+ help reduce flicker. -+ + modify configure script to omit "+b" from linker options for very -+ old HP-UX systems (report by Dennis Grevenstein) -+ + add HP-UX workaround for missing EILSEQ on old HP-UX systems (patch -+ by Dennis Grevenstein). -+ + restore memmove/strdup support for antique systems (request by -+ Dennis Grevenstein). -+ + change %l behavior in tparm to push the string length onto the stack -+ rather than saving the formatted length into the output buffer -+ (report by Roy Marples, cf: 980620). -+ -+20130119 -+ + fixes for issues found by Coverity: -+ + fix memory leak in safe_sprintf.c -+ + add check for return-value in tty_update.c -+ + correct initialization for -s option in test/view.c -+ + add check for numeric overflow in lib_instr.c -+ + improve error-checking in copywin -+ + add advice in infocmp manpage for termcap users (Debian #698469). -+ + add "-y" option to test/demo_termcap and test/demo_terminfo to -+ demonstrate behavior with/without extended capabilities. -+ + updated termcap manpage to document legacy termcap behavior for -+ matching capability names. -+ + modify name-comparison for tgetstr, etc., to accommodate legacy -+ applications as well as to improve compatbility with BSD 4.2 -+ termcap implementations (Debian #698299) (cf: 980725). -+ -+20130112 -+ + correct prototype in manpage for vid_puts. -+ + drop ncurses/tty/tty_display.h, ncurses/tty/tty_input.h, since they -+ are unused in the current driver model. -+ + modify mvcur to use stdout except when called within the ncurses -+ library. -+ + modify vidattr and vid_attr to use stdout as documented in manpage. -+ + amend changes made to buffering in 20120825 so that the low-level -+ putp() call uses stdout rather than ncurses' internal buffering. -+ The putp_sp() call does the same, for consistency (Redhat #892674). -+ -+20130105 -+ + add "-s" option to test/view.c to allow it to start in single-step -+ mode, reducing size of trace files when it is used for debugging -+ MinGW changes. -+ + revert part of 20121222 change to tinfo_driver.c -+ + add experimental logic in win_driver.c to improve optimization of -+ screen updates. This does not yet work with double-width characters, -+ so it is ifdef'd out for the moment (prompted by report by Erwin -+ Waterlander regarding screen flicker). -+ -+20121229 -+ + fix coverity warnings regarding copying into fixed-size buffers. -+ + add throw-declarations in the c++ binding per Coverity warning. -+ + minor changes to new-items for consistent reference to bug-report -+ numbers. -+ -+20121222 -+ + add *.dSYM directories to clean-rule in ncurses directory makefile, -+ for Mac OS builds. -+ + add a configure check for gcc option -no-cpp-precomp, which is not -+ available in all Mac OS X configurations (report by Andras Salamon, -+ cf: 20011208). -+ + improve 20021221 workaround for broken acs, handling a case where -+ that ACS_xxx character is not in the acsc string but there is a known -+ wide-character which can be used. -+ -+20121215 -+ + fix several warnings from clang 3.1 --analyze, includes correcting -+ a null-pointer check in _nc_mvcur_resume. -+ + correct display of double-width characters with MinGW port (report -+ by Erwin Waterlander). -+ + replace MinGW's wcrtomb(), fixing a problem with _nc_viscbuf -+ > fixes based on Coverity report: -+ + correct coloring in test/bs.c -+ + correct check for 8-bit value in _nc_insert_ch(). -+ + remove dead code in progs/tset.c, test/linedata.h -+ + add null-pointer checks in lib_tracemse.c, panel.priv.h, and some -+ test-programs. -+ -+20121208 -+ + modify test/knight.c to show the number of choices possible for -+ each position in automove option, e.g., to allow user to follow -+ Warnsdorff's rule to solve the puzzle. -+ + modify test/hanoi.c to show the minimum number of moves possible for -+ the given number of tiles (prompted by patch by Lucas Gioia). -+ > fixes based on Coverity report: -+ + remove a few redundant checks. -+ + correct logic in test/bs.c, when randomly placing a specific type of -+ ship. -+ + check return value from remove/unlink in tic. -+ + check return value from sscanf in test/ncurses.c -+ + fix a null dereference in c++/cursesw.cc -+ + fix two instances of uninitialized variables when configuring for the -+ terminal driver. -+ + correct scope of variable used in SetSafeOutcWrapper macro. -+ + set umask when calling mkstemp in tic. -+ + initialize wbkgrndset() temporary variable when extended-colors are -+ used. -+ -+20121201 -+ + also replace MinGW's wctomb(), fixing a problem with setcchar(). -+ + modify test/view.c to load UTF-8 when built with MinGW by using -+ regular win32 API because the MinGW functions mblen() and mbtowc() -+ do not work. -+ -+20121124 -+ + correct order of color initialization versus display in some of the -+ test-programs, e.g., test_addstr.c -+ > fixes based on Coverity report: -+ + delete windows on exit from some of the test-programs. -+ -+20121117 -+ > fixes based on Coverity report: -+ + add missing braces around FreeAndNull in two places. -+ + various fixes in test/ncurses.c -+ + improve limit-checks in tinfo/make_hash.c, tinfo/read_entry.c -+ + correct malloc size in progs/infocmp.c -+ + guard against negative array indices in test/knight.c -+ + fix off-by-one limit check in test/color_name.h -+ + add null-pointer check in progs/tabs.c, test/bs.c, test/demo_forms.c, -+ test/inchs.c -+ + fix memory-leak in tinfo/lib_setup.c, progs/toe.c, -+ test/clip_printw.c, test/demo_menus.c -+ + delete unused windows in test/chgat.c, test/clip_printw.c, -+ test/insdelln.c, test/newdemo.c on error-return. -+ -+20121110 -+ + modify configure macro CF_INCLUDE_DIRS to put $CPPFLAGS after the -+ local -I include options in case someone has set conflicting -I -+ options in $CPPFLAGS (prompted by patch for ncurses/Makefile.in by -+ Vassili Courzakis). -+ + modify the ncurses*-config scripts to eliminate relative paths from -+ the RPATH_LIST variable, e.g., "../lib" as used in installing shared -+ libraries or executables. -+ -+20121102 -+ + realign these related pages: -+ curs_add_wchstr.3x -+ curs_addchstr.3x -+ curs_addstr.3x -+ curs_addwstr.3x -+ and fix a long-ago error in curs_addstr.3x which said that a -1 -+ length parameter would only write as much as fit onto one line -+ (report by Reuben Thomas). -+ + remove obsolete fallback _nc_memmove() for memmove()/bcopy(). -+ + remove obsolete fallback _nc_strdup() for strdup(). -+ + cancel any debug-rpm in package/ncurses.spec -+ + reviewed vte-2012, reverted most of the change since it was incorrect -+ based on testing with tack -TD -+ + un-cancel the initc in vte-256color, since this was implemented -+ starting with version 0.20 in 2009 -TD -+ -+20121026 -+ + improve malloc/realloc checking (prompted by discussion in Redhat -+ #866989). -+ + add ncurses test-program as "ncurses6" to the rpm- and dpkg-scripts. -+ + updated configure macros CF_GCC_VERSION and CF_WITH_PATHLIST. The -+ first corrects pattern used for Mac OS X's customization of gcc. -+ -+20121017 -+ + fix change to _nc_scroll_optimize(), which incorrectly freed memory -+ (Redhat #866989). -+ -+20121013 -+ + add vte-2012, gnome-2012, making these the defaults for vte/gnome -+ (patch by Christian Persch). -+ -+20121006 -+ + improve CF_GCC_VERSION to work around Debian's customization of gcc -+ --version message. -+ + improve configure macros as done in byacc: -+ + drop 2.13 compatibility; use 2.52.xxxx version only since EMX port -+ has used that for a while. -+ + add 3rd parameter to AC_DEFINE's to allow autoheader to run, i.e., -+ for experimental use. -+ + remove unused configure macros. -+ + modify configure script and makefiles to quiet new autoconf warning -+ for LIBS_TO_MAKE variable. -+ + modify configure script to show $PATH_SEPARATOR variable. -+ + update config.guess, config.sub -+ -+20120922 -+ + modify setupterm to set its copy of TERM to "unknown" if configured -+ for the terminal driver and TERM was null or empty. -+ + modify treatment of TERM variable for MinGW port to allow explicit -+ use of the windows console driver by checking if $TERM is set to -+ "#win32con" or an abbreviation of that. -+ + undo recent change to fallback definition of vsscanf() to build with -+ older Solaris compilers (cf: 20120728). -+ -+20120908 -+ + add test-screens to test/ncurses to show 256-characters at a time, -+ to help with MinGW port. -+ -+20120903 -+ + simplify varargs logic in lib_printw.c; va_copy is no longer needed -+ there. -+ + modifications for MinGW port to make wide-character display usable. -+ -+20120902 -+ + regenerate configure script (report by Sven Joachim, cf: 20120901). -+ -+20120901 -+ + add a null-pointer check in _nc_flush (cf: 20120825). -+ + fix a case in _nc_scroll_optimize() where the _oldnums_list array -+ might not be allocated. -+ + improve comparisons in configure.in for unset shell variables. -+ -+20120826 -+ + increase size of ncurses' output-buffer, in case of very small -+ initial screen-sizes. -+ + fix evaluation of TERMINFO and TERMINFO_DIRS default values as needed -+ after changes to use --datarootdir (reports by Gabriele Balducci, -+ Roumen Petrov). -+ -+20120825 -+ + change output buffering scheme, using buffer maintained by ncurses -+ rather than stdio, to avoid problems with SIGTSTP handling (report -+ by Brian Bloniarz). -+ -+20120811 -+ + update autoconf patch to 2.52.20120811, adding --datarootdir -+ (prompted by discussion with Erwin Waterlander). -+ + improve description of --enable-reentrant option in README and the -+ INSTALL file. -+ + add nsterm-256color, make this the default nsterm -TD -+ + remove bw from nsterm-bce, per testing with tack -TD -+ -+20120804 -+ + update test/configure, adding check for tinfo library. -+ + improve limit-checks for the getch fifo (report by Werner Fink). -+ + fix a remaining mismatch between $with_echo and the symbols updated -+ for CF_DISABLE_ECHO affecting parameters for mk-2nd.awk (report by -+ Sven Joachim, cf: 20120317). -+ + modify followup check for pkg-config's library directory in the -+ --enable-pc-files option to validate syntax (report by Sven Joachim, -+ cf: 20110716). -+ -+20120728 -+ + correct path for ncurses_mingw.h in include/headers, in case build -+ is done outside source-tree (patch by Roumen Petrov). -+ + modify some older xterm entries to align with xterm source -TD -+ + separate "xterm-old" alias from "xterm-r6" -TD -+ + add E3 extended capability to xterm-basic and putty -TD -+ + parenthesize parameters of other macros in curses.h -TD -+ + parenthesize parameter of COLOR_PAIR and PAIR_NUMBER in curses.h -+ in case it happens to be a comma-expression, etc. (patch by Nick -+ Black). -+ -+20120721 -+ + improved form_request_by_name() and menu_request_by_name(). -+ + eliminate two fixed-size buffers in toe.c -+ + extend use_tioctl() to have expected behavior when use_env(FALSE) and -+ use_tioctl(TRUE) are called. -+ + modify ncurses test-program, adding -E and -T options to demonstrate -+ use_env() versus use_tioctl(). -+ -+20120714 -+ + add use_tioctl() function (adapted from patch by Werner Fink, -+ Novell #769788): -+ -+20120707 -+ + add ncurses_mingw.h to installed headers (prompted by patch by -+ Juergen Pfeifer). -+ + clarify return-codes from wgetch() in response to SIGWINCH (prompted -+ by Novell #769788). -+ + modify resizeterm() to always push a KEY_RESIZE onto the fifo, even -+ if screensize is unchanged. Modify _nc_update_screensize() to push a -+ KEY_RESIZE if there was a SIGWINCH, even if it does not call -+ resizeterm(). These changes eliminate the case where a SIGWINCH is -+ received, but ERR returned from wgetch or wgetnstr because the screen -+ dimensions did not change (Novell #769788). -+ -+20120630 -+ + add --enable-interop to sample package scripts (suggested by Juergen -+ Pfeifer). -+ + update CF_PATH_SYNTAX macro, from mawk changes. -+ + modify mk-0th.awk to allow for generating llib-ltic, etc., though -+ some work is needed on cproto to work with lib_gen.c to update -+ llib-lncurses. -+ + remove redundant getenv() cal in database-iterator leftover from -+ cleanup in 20120622 changes (report by Sven Joachim). -+ -+20120622 -+ + add -d, -e and -q options to test/demo_terminfo and test/demo_termcap -+ + fix caching of environment variables in database-iterator (patch by -+ Philippe Troin, Redhat #831366). -+ -+20120616 -+ + add configure check to distinguish clang from gcc to eliminate -+ warnings about unused command-line parameters when compiler warnings -+ are enabled. -+ + improve behavior when updating terminfo entries which are hardlinked -+ by allowing for the possibility that an alias has been repurposed to -+ a new primary name. -+ + fix some strict compiler warnings based on package scripts. -+ + further fixes for configure check for working poll (Debian #676461). -+ -+20120608 -+ + fix an uninitialized variable in -c/-n logic for infocmp changes -+ (cf: 20120526). -+ + corrected fix for building c++ binding with clang 3.0 (report/patch -+ by Richard Yao, Gentoo #417613, cf: 20110409) -+ + correct configure check for working poll, fixing the case where stdin -+ is redirected, e.g., in rpm/dpkg builds (Debian #676461). -+ + add rpm- and dpkg-scripts, to test those build-environments. -+ The resulting packages are used only for testing. -+ -+20120602 -+ + add kdch1 aka "Remove" to vt220 and vt220-8 entries -TD -+ + add kdch1, etc., to qvt108 -TD -+ + add dl1/il1 to some entries based on dl/il values -TD -+ + add dl to simpleterm -TD -+ + add consistency-checks in tic for insert-line vs delete-line -+ controls, and insert/delete-char keys -+ + correct no-leaks logic in infocmp when doing comparisons, fixing -+ duplicate free of entries given via the command-line, and freeing -+ entries loaded from the last-but-one of files specified on the -+ command-line. -+ + add kdch1 to wsvt25 entry from NetBSD CVS (reported by David Lord, -+ analysis by Martin Husemann). -+ + add cnorm/civis to wsvt25 entry from NetBSD CVS (report/analysis by -+ Onno van der Linden). -+ -+20120526 -+ + extend -c and -n options of infocmp to allow comparing more than two -+ entries. -+ + correct check in infocmp for number of terminal names when more than -+ two are given. -+ + correct typo in curs_threads.3x (report by Yanhui Shen on -+ freebsd-hackers mailing list). -+ -+20120512 -+ + corrected 'op' for bterm (report by Samuel Thibault) -TD -+ + modify test/background.c to demonstrate a background character -+ holding a colored ACS_HLINE. The behavior differs from SVr4 due to -+ the thick- and double-line extension (cf: 20091003). -+ + modify handling of acs characters in PutAttrChar to avoid mapping an -+ unmapped character to a space with A_ALTCHARSET set. -+ + rewrite vt520 entry based on vt420 -TD -+ -+20120505 -+ + remove p6 (bold) from opus3n1+ for consistency -TD -+ + remove acs stuff from env230 per clues in Ingres termcap -TD -+ + modify env230 sgr/sgr0 to match other capabilities -TD -+ + modify smacs/rmacs in bq300-8 to match sgr/sgr0 -TD -+ + make sgr for dku7202 agree with other caps -TD -+ + make sgr for ibmpc agree with other caps -TD -+ + make sgr for tek4107 agree with other caps -TD -+ + make sgr for ndr9500 agree with other caps -TD -+ + make sgr for sco-ansi agree with other caps -TD -+ + make sgr for d410 agree with other caps -TD -+ + make sgr for d210 agree with other caps -TD -+ + make sgr for d470c, d470c-7b agree with other caps -TD -+ + remove redundant AC_DEFINE for NDEBUG versus Makefile definition. -+ + fix a back-link in _nc_delink_entry(), which is needed if ncurses is -+ configured with --enable-termcap and --disable-getcap. -+ -+20120428 -+ + fix some inconsistencies between vt320/vt420, e.g., cnorm/civis -TD -+ + add eslok flag to dec+sl -TD -+ + dec+sl applies to vt320 and up -TD -+ + drop wsl width from xterm+sl -TD -+ + reuse xterm+sl in putty and nsca-m -TD -+ + add ansi+tabs to vt520 -TD -+ + add ansi+enq to vt220-vt520 -TD -+ + fix a compiler warning in example in ncurses-intro.doc (Paul Waring). -+ + added paragraph in keyname manpage telling how extended capabilities -+ are interpreted as key definitions. -+ + modify tic's check of conflicting key definitions to include extended -+ capability strings in addition to the existing check on predefined -+ keys. -+ -+20120421 -+ + improve cleanup of temporary files in tic using atexit(). -+ + add msgr to vt420, similar DEC vtXXX entries -TD -+ + add several missing vt420 capabilities from vt220 -TD -+ + factor out ansi+pp from several entries -TD -+ + change xterm+sl and xterm+sl-twm to include only the status-line -+ capabilities and not "use=xterm", making them more generally useful -+ as building-blocks -TD -+ + add dec+sl building block, as example -TD -+ -+20120414 -+ + add XT to some terminfo entries to improve usefulness for other -+ applications than screen, which would like to pretend that xterm's -+ title is a status-line. -TD -+ + change use-clauses in ansi-mtabs, hp2626, and hp2622 based on review -+ of ordering and overrides -TD -+ + add consistency check in tic for screen's "XT" capability. -+ + add section in terminfo.src summarizing the user-defined capabilities -+ used in that file -TD -+ -+20120407 -+ + fix an inconsistency between tic/infocmp "-x" option; tic omits all -+ non-standard capabilities, while infocmp was ignoring only the user -+ definable capabilities. -+ + improve special case in tic parsing of description to allow it to be -+ followed by terminfo capabilities. Previously the description had to -+ be the last field on an input line to allow tic to distinguish -+ between termcap and terminfo format while still allowing commas to be -+ embedded in the description. -+ + correct variable name in gen_edit.sh which broke configurability of -+ the --with-xterm-kbs option. -+ + revert 2011-07-16 change to "linux" alias, return to "linux2.2" -TD -+ + further amend 20110910 change, providing for configure-script -+ override of the "linux" terminfo entry to install and changing the -+ default for that to "linux2.2" (Debian #665959). -+ -+20120331 -+ + update Ada95/configure to use CF_DISABLE_ECHO (cf: 20120317). -+ + correct order of use-clauses in st-256color -TD -+ + modify configure script to look for gnatgcc if the Ada95 binding -+ is built, in preference to the default gcc/cc (suggested by -+ Nicolas Boulenguez). -+ + modify configure script to ensure that the same -On option used for -+ the C compiler in CFLAGS is used for ADAFLAGS rather than simply -+ using "-O3" (suggested by Nicolas Boulenguez) -+ -+20120324 -+ + amend an old fix so that next_char() exits properly for empty files, -+ e.g., from reading /dev/null (cf: 20080804). -+ + modify tic so that it can read from the standard input, or from -+ a character device. Because tic uses seek's, this requires writing -+ the data to a temporary file first (prompted by remark by Sven -+ Joachim) (cf: 20000923). -+ -+20120317 -+ + correct a check made in lib_napms.c, so that terminfo applications -+ can again use napms() (cf: 20110604). -+ + add a note in tic.h regarding required casts for ABSENT_BOOLEAN -+ (cf: 20040327). -+ + correct scripting for --disable-echo option in test/configure. -+ + amend check for missing c++ compiler to work when no error is -+ reported, and no variables set (cf: 20021206). -+ + add/use configure macro CF_DISABLE_ECHO. -+ -+20120310 -+ + fix some strict compiler warnings for abi6 and 64-bits. -+ + use begin_va_copy/end_va_copy macros in lib_printw.c (cf: 20120303). -+ + improve a limit-check in infocmp.c (Werner Fink): -+ -+20120303 -+ + minor tidying of terminfo.tail, clarify reason for limitation -+ regarding mapping of \0 to \200 -+ + minor improvement to _nc_copy_termtype(), using memcpy to replace -+ loops. -+ + fix no-leaks checking in test/demo_termcap.c to account for multiple -+ calls to setupterm(). -+ + modified the libgpm change to show previous load as a problem in the -+ debug-trace. -+ > merge some patches from OpenSUSE rpm (Werner Fink): -+ + ncurses-5.7-printw.dif, fixes for varargs handling in lib_printw.c -+ + ncurses-5.7-gpm.dif, do not dlopen libgpm if already loaded by -+ runtime linker -+ + ncurses-5.6-fallback.dif, do not free arrays and strings from static -+ fallback entries -+ -+20120228 -+ + fix breakage in tic/infocmp from 20120225 (report by Werner Fink). -+ -+20120225 -+ + modify configure script to allow creating dll's for MinGW when -+ cross-compiling. -+ + add --enable-string-hacks option to control whether strlcat and -+ strlcpy may be used. The same issue applies to OpenBSD's warnings -+ about snprintf, noting that this function is weakly standardized. -+ + add configure checks for strlcat, strlcpy and snprintf, to help -+ reduce bogus warnings with OpenBSD builds. -+ + build-fix for OpenBSD 4.9 to supply consistent intptr_t declaration -+ (cf:20111231) -+ + update config.guess, config.sub -+ -+20120218 -+ + correct CF_ETIP_DEFINES configure macro, making it exit properly on -+ the first success (patch by Pierre Labastie). -+ + improve configure macro CF_MKSTEMP by moving existence-check for -+ mkstemp out of the AC_TRY_RUN, to help with cross-compiles. -+ + improve configure macro CF_FUNC_POLL from luit changes to detect -+ broken implementations, e.g., with Mac OS X. -+ + add configure option --with-tparm-arg -+ + build-fix for MinGW cross-compiling, so that make_hash does not -+ depend on TTY definition (cf: 20111008). -+ -+20120211 -+ + make sgr for xterm-pcolor agree with other caps -TD -+ + make sgr for att5425 agree with other caps -TD -+ + make sgr for att630 agree with other caps -TD -+ + make sgr for linux entries agree with other caps -TD -+ + make sgr for tvi9065 agree with other caps -TD -+ + make sgr for ncr260vt200an agree with other caps -TD -+ + make sgr for ncr160vt100pp agree with other caps -TD -+ + make sgr for ncr260vt300an agree with other caps -TD -+ + make sgr for aaa-60-dec-rv, aaa+dec agree with other caps -TD -+ + make sgr for cygwin, cygwinDBG agree with other caps -TD -+ + add configure option --with-xterm-kbs to simplify configuration for -+ Linux versus most other systems. -+ -+20120204 -+ + improved tic -D option, avoid making target directory and provide -+ better diagnostics. -+ -+20120128 -+ + add mach-gnu (Debian #614316, patch by Samuel Thibault) -+ + add mach-gnu-color, tweaks to mach-gnu terminfo -TD -+ + make sgr for sun-color agree with smso -TD -+ + make sgr for prism9 agree with other caps -TD -+ + make sgr for icl6404 agree with other caps -TD -+ + make sgr for ofcons agree with other caps -TD -+ + make sgr for att5410v1, att4415, att620 agree with other caps -TD -+ + make sgr for aaa-unk, aaa-rv agree with other caps -TD -+ + make sgr for avt-ns agree with other caps -TD -+ + amend fix intended to separate fixups for acsc to allow "tic -cv" to -+ give verbose warnings (cf: 20110730). -+ + modify misc/gen-edit.sh to make the location of the tabset directory -+ consistent with misc/Makefile.in, i.e., using ${datadir}/tabset -+ (Debian #653435, patch by Sven Joachim). -+ -+20120121 -+ + add --with-lib-prefix option to allow configuring for old/new flavors -+ of OS/2 EMX. -+ + modify check for gnat version to allow for year, as used in FreeBSD -+ port. -+ + modify check_existence() in db_iterator.c to simply check if the -+ path is a directory or file, according to the need. Checking for -+ directory size also gives no usable result with OS/2 (cf: 20120107). -+ + support OS/2 kLIBC (patch by KO Myung-Han). -+ -+20120114 -+ + several improvements to test/movewindow.c (prompted by discussion on -+ Linux Mint forum): -+ + modify movement commands to make them continuous -+ + rewrote the test for mvderwin -+ + rewrote the test for recursive mvwin -+ + split-out reusable CF_WITH_NCURSES_ETC macro in test/configure.in -+ + updated configure macro CF_XOPEN_SOURCE, build-fixes for Mac OS X -+ and OpenBSD. -+ + regenerated html manpages. -+ -+20120107 -+ + various improvments for MinGW (Juergen Pfeifer): -+ + modify stat() calls to ignore the st_size member -+ + drop mk-dlls.sh script. -+ + change recommended regular expression library. -+ + modify rain.c to allow for threaded configuraton. -+ + modify tset.c to allow for case when size-change logic is not used. -+ -+20111231 -+ + modify toe's report when -a and -s options are combined, to add -+ a column showing which entries belong to a given database. -+ + add -s option to toe, to sort its output. -+ + modify progs/toe.c, simplifying use of db-iterator results to use -+ caching improvements from 20111001 and 20111126. -+ + correct generation of pc-files when ticlib or termlib options are -+ given to rename the corresponding tic- or tinfo-libraries (report -+ by Sven Joachim). -+ -+20111224 -+ + document a portability issue with tput, i.e., that scripts which work -+ with ncurses may fail in other implementations that do no parameter -+ analysis. -+ + add putty-sco entry -TD -+ -+20111217 -+ + review/fix places in manpages where --program-prefix configure option -+ was not being used. -+ + add -D option to infocmp, to show the database locations that it -+ could use. -+ + fix build for the special case where term-driver, ticlib and termlib -+ are all enabled. The terminal driver depends on a few features in -+ the base ncurses library, so tic's dependencies include both ncurses -+ and termlib. -+ + fix build work for term-driver when --enable-wgetch-events option is -+ enabled. -+ + use <stdint.h> types to fix some questionable casts to void*. -+ -+20111210 -+ + modify configure script to check if thread library provides -+ pthread_mutexattr_settype(), e.g., not provided by Solaris 2.6 -+ + modify configure script to suppress check to define _XOPEN_SOURCE -+ for IRIX64, since its header files have a conflict versus -+ _SGI_SOURCE. -+ + modify configure script to add ".pc" files for tic- and -+ tinfo-libraries, which were omitted in recent change (cf: 20111126). -+ + fix inconsistent checks on $PKG_CONFIG variable in configure script. -+ -+20111203 -+ + modify configure-check for etip.h dependencies, supplying a temporary -+ copy of ncurses_dll.h since it is a generated file (prompted by -+ Debian #646977). -+ + modify CF_CPP_PARAM_INIT "main" function to work with current C++. -+ -+20111126 -+ + correct database iterator's check for duplicate entries -+ (cf: 20111001). -+ + modify database iterator to ignore $TERMCAP when it is not an -+ absolute pathname. -+ + add -D option to tic, to show the database locations that it could -+ use. -+ + improve description of database locations in tic manpage. -+ + modify the configure script to generate a list of the ".pc" files to -+ generate, rather than deriving the list from the libraries which have -+ been built (patch by Mike Frysinger). -+ + use AC_CHECK_TOOLS in preference to AC_PATH_PROGS when searching for -+ ncurses*-config, e.g., in Ada95/configure and test/configure (adapted -+ from patch by Mike Frysinger). -+ -+20111119 -+ + remove obsolete/conflicting fallback definition for _POSIX_SOURCE -+ from curses.priv.h, fixing a regression with IRIX64 and Tru64 -+ (cf: 20110416) -+ + modify _nc_tic_dir() to ensure that its return-value is nonnull, -+ i.e., the database iterator was not initialized. This case is needed -+ to when tic is translating to termcap, rather than loading the -+ database (cf: 20111001). -+ -+20111112 -+ + add pccon entries for OpenBSD console (Alexei Malinin). -+ + build-fix for OpenBSD 4.9 with gcc 4.2.1, setting _XOPEN_SOURCE to -+ 600 to work around inconsistent ifdef'ing of wcstof between C and -+ C++ header files. -+ + modify capconvert script to accept more than exact match on "xterm", -+ e.g., the "xterm-*" variants, to exclude from the conversion (patch -+ by Robert Millan). -+ + add -lc_r as alternative for -lpthread, allows build of threaded code -+ in older FreeBSD machines. -+ + build-fix for MirBSD, which fails when either _XOPEN_SOURCE or -+ _POSIX_SOURCE are defined. -+ + fix a typo misc/Makefile.in, used in uninstalling pc-files. -+ -+20111030 -+ + modify make_db_path() to allow creating "terminfo.db" in the same -+ directory as an existing "terminfo" directory. This fixes a case -+ where switching between hashed/filesystem databases would cause the -+ new hashed database to be installed in the next best location - -+ root's home directory. -+ + add variable cf_cv_prog_gnat_correct to those passed to -+ config.status, fixing a problem with Ada95 builds (cf: 20111022). -+ + change feature test from _XPG5 to _XOPEN_SOURCE in two places, to -+ accommodate broken implementations for _XPG6. -+ + eliminate usage of NULL symbol from etip.h, to reduce header -+ interdependencies. -+ + add configure check to decide when to add _XOPEN_SOURCE define to -+ compiler options, i.e., for Solaris 10 and later (cf: 20100403). -+ This is a workaround for gcc 4.6, which fails to build the c++ -+ binding if that symbol is defined by the application, due to -+ incorrectly combining the corresponding feature test macros -+ (report by Peter Kruse). -+ -+20111022 -+ + correct logic for discarding mouse events, retaining the partial -+ events used to build up click, double-click, etc, until needed -+ (cf: 20110917). -+ + fix configure script to avoid creating unused Ada95 makefile when -+ gnat does not work. -+ + cleanup width-related gcc 3.4.3 warnings for 64-bit platform, for the -+ internal functions of libncurses. The external interface of courses -+ uses bool, which still produces these warnings. -+ -+20111015 -+ + improve description of --disable-tic-depends option to make it -+ clear that it may be useful whether or not the --with-termlib -+ option is also given (report by Sven Joachim). -+ + amend termcap equivalent for set_pglen_inch to use the X/Open -+ "YI" rather than the obsolete Solaris 2.5 "sL" (cf: 990109). -+ + improve manpage for tgetent differences from termcap library. -+ -+20111008 -+ + moved static data from db_iterator.c to lib_data.c -+ + modify db_iterator.c for memory-leak checking, fix one leak. -+ + modify misc/gen-pkgconfig.in to use Requires.private for the parts -+ of ncurses rather than Requires, as well as Libs.private for the -+ other library dependencies (prompted by Debian #644728). -+ -+20111001 -+ + modify tic "-K" option to only set the strict-flag rather than force -+ source-output. That allows the same flag to control the parser for -+ input and output of termcap source. -+ + modify _nc_getent() to ignore backslash at the end of a comment line, -+ making it consistent with ncurses' parser. -+ + restore a special-case check for directory needed to make termcap -+ text files load as if they were databases (cf: 20110924). -+ + modify tic's resolution/collision checking to attempt to remove the -+ conflicting alias from the second entry in the pair, which is -+ normally following in the source file. Also improved the warning -+ message to make it simpler to see which alias is the problem. -+ + improve performance of the database iterator by caching search-list. -+ -+20110925 -+ + add a missing "else" in changes to _nc_read_tic_entry(). -+ -+20110924 -+ + modify _nc_read_tic_entry() so that hashed-database is checked before -+ filesystem. -+ + updated CF_CURSES_LIBS check in test/configure script. -+ + modify configure script and makefiles to split TIC_ARGS and -+ TINFO_ARGS into pieces corresponding to LDFLAGS and LIBS variables, -+ to help separate searches for tic- and tinfo-libraries (patch by Nick -+ Alcock aka "Nix"). -+ + build-fix for lib_mouse.c changes (cf: 20110917). -+ -+20110917 -+ + fix compiler warning for clang 2.9 -+ + improve merging of mouse events (integrated patch by Damien -+ Guibouret). -+ + correct mask-check used in lib_mouse for wheel mouse buttons 4/5 -+ (patch by Damien Guibouret). -+ -+20110910 -+ + modify misc/gen_edit.sh to select a "linux" entry which works with -+ the current kernel rather than assuming it is always "linux3.0" -+ (cf: 20110716). -+ + revert a change to getmouse() which had the undesirable side-effect -+ of suppressing button-release events (report by Damien Guibouret, -+ cf: 20100102). -+ + add xterm+kbs fragment from xterm #272 -TD -+ + add configure option --with-pkg-config-libdir to provide control over -+ the actual directory into which pc-files are installed, do not use -+ the pkg-config environment variables (discussion with Frederic L W -+ Meunier). -+ + add link to mailing-list archive in announce.html.in, as done in -+ FAQ (prompted by question by Andrius Bentkus). -+ + improve manpage install by adjusting the "#include" examples to -+ show the ncurses-subdirectory used when --disable-overwrite option -+ is used. -+ + install an alias for "curses" to the ncurses manpage, tied to the -+ --with-curses-h configure option (suggested by Reuben Thomas). -+ -+20110903 -+ + propagate error-returns from wresize, i.e., the internal -+ increase_size and decrease_size functions through resize_term (report -+ by Tim van der Molen, cf: 20020713). -+ + fix typo in tset manpage (patch by Sven Joachim). -+ -+20110820 -+ + add a check to ensure that termcap files which might have "^?" do -+ not use the terminfo interpretation as "\177". -+ + minor cleanup of X-terminal emulator section of terminfo.src -TD -+ + add terminator entry -TD -+ + add simpleterm entry -TD -+ + improve wattr_get macros by ensuring that if the window pointer is -+ null, then the attribute and color values returned will be zero -+ (cf: 20110528). -+ -+20110813 -+ + add substitution for $RPATH_LIST to misc/ncurses-config.in -+ + improve performance of tic with hashed-database by caching the -+ database connection, using atexit() to cleanup. -+ + modify treatment of 2-character aliases at the beginning of termcap -+ entries so they are not counted in use-resolution, since these are -+ guaranteed to be unique. Also ignore these aliases when reporting -+ the primary name of the entry (cf: 20040501) -+ + double-check gn (generic) flag in terminal descriptions to -+ accommodate old/buggy termcap databases which misused that feature. -+ + minor fixes to _nc_tgetent(), ensure buffer is initialized even on -+ error-return. -+ -+20110807 -+ + improve rpath fix from 20110730 by ensuring that the new $RPATH_LIST -+ variable is defined in the makefiles which use it. -+ + build-fix for DragonFlyBSD's pkgsrc in test/configure script. -+ + build-fixes for NetBSD 5.1 with termcap support enabled. -+ + corrected k9 in dg460-ansi, add other features based on manuals -TD -+ + improve trimming of whitespace at the end of terminfo/termcap output -+ from tic/infocmp. -+ + when writing termcap source, ensure that colons in the description -+ field are translated to a non-delimiter, i.e., "=". -+ + add "-0" option to tic/infocmp, to make the termcap/terminfo source -+ use a single line. -+ + add a null-pointer check when handling the $CC variable. -+ -+20110730 -+ + modify configure script and makefiles in c++ and progs to allow the -+ directory used for rpath option to be overridden, e.g., to work -+ around updates to the variables used by tic during an install. -+ + add -K option to tic/infocmp, to provide stricter BSD-compatibility -+ for termcap output. -+ + add _nc_strict_bsd variable in tic library which controls the -+ "strict" BSD termcap compatibility from 20110723, plus these -+ features: -+ + allow escapes such as "\8" and "\9" when reading termcap -+ + disallow "\a", "\e", "\l", "\s" and "\:" escapes when reading -+ termcap files, passing through "a", "e", etc. -+ + expand "\:" as "\072" on output. -+ + modify _nc_get_token() to reset the token's string value in case -+ there is a string-typed token lacking the "=" marker. -+ + fix a few memory leaks in _nc_tgetent. -+ + fix a few places where reading from a termcap file could refer to -+ freed memory. -+ + add an overflow check when converting terminfo/termcap numeric -+ values, since terminfo stores those in a short, and they must be -+ positive. -+ + correct internal variables used for translating to termcap "%>" -+ feature, and translating from termcap %B to terminfo, needed by -+ tctest (cf: 19991211). -+ + amend a minor fix to acsc when loading a termcap file to separate it -+ from warnings needed for tic (cf: 20040710) -+ + modify logic in _nc_read_entry() and _nc_read_tic_entry() to allow -+ a termcap file to be handled via TERMINFO_DIRS. -+ + modify _nc_infotocap() to include non-mandatory padding when -+ translating to termcap. -+ + modify _nc_read_termcap_entry(), passing a flag in the case where -+ getcap is used, to reduce interactive warning messages. -+ -+20110723 -+ + add a check in start_color() to limit color-pairs to 256 when -+ extended colors are not supported (patch by David Benjamin). -+ + modify setcchar to omit no-longer-needed OR'ing of color pair in -+ the SetAttr() macro (patch by David Benjamin). -+ + add kich1 to sun terminfo entry (Yuri Pankov) -+ + use bold rather than reverse for smso in sun-color terminfo entry -+ (Yuri Pankov). -+ + improve generation of termcap using tic/infocmp -C option, e.g., -+ to correspond with 4.2BSD (prompted by discussion with Yuri Pankov -+ regarding Schilling's test program): -+ + translate %02 and %03 to %2 and %3 respectively. -+ + suppress string capabilities which use %s, not supported by tgoto -+ + use \040 rather than \s -+ + expand null characters as \200 rather than \0 -+ + modify configure script to support shared libraries for DragonFlyBSD. -+ -+20110716 -+ + replace an assert() in _nc_Free_Argument() with a regular null -+ pointer check (report/analysis by Franjo Ivancic). -+ + modify configure --enable-pc-files option to take into account the -+ PKG_CONFIG_PATH variable (report by Frederic L W Meunier). -+ + add/use xterm+tmux chunk from xterm #271 -TD -+ + resync xterm-new entry from xterm #271 -TD -+ + add E3 extended capability to linux-basic (Miroslav Lichvar) -+ + add linux2.2, linux2.6, linux3.0 entries to give context for E3 -TD -+ + add SI/SO change to linux2.6 entry (Debian #515609) -TD -+ + fix inconsistent tabset path in pcmw (Todd C. Miller). -+ + remove a backslash which continued comment, obscuring altos3 -+ definition with OpenBSD toolset (Nicholas Marriott). -+ -+20110702 -+ + add workaround from xterm #271 changes to ensure that compiler flags -+ are not used in the $CC variable. -+ + improve support for shared libraries, tested with AIX 5.3, 6.1 and -+ 7.1 with both gcc 4.2.4 and cc. -+ + modify configure checks for AIX to include release 7.x -+ + add loader flags/libraries to libtool options so that dynamic loading -+ works properly, adapted from ncurses-5.7-ldflags-with-libtool.patch -+ at gentoo prefix repository (patch by Michael Haubenwallner). -+ -+20110626 -+ + move include of nc_termios.h out of term_entry.h, since the latter -+ is installed, e.g., for tack while the former is not (report by -+ Sven Joachim). -+ -+20110625 -+ + improve cleanup() function in lib_tstp.c, using _exit() rather than -+ exit() and checking for SIGTERM rather than SIGQUIT (prompted by -+ comments forwarded by Nicholas Marriott). -+ + reduce name pollution from term.h, moving fallback #define's for -+ tcgetattr(), etc., to new private header nc_termios.h (report by -+ Sergio NNX). -+ + two minor fixes for tracing (patch by Vassili Courzakis). -+ + improve trace initialization by starting it in use_env() and -+ ripoffline(). -+ + review old email, add details for some changelog entries. -+ -+20110611 -+ + update minix entry to minix 3.2 (Thomas Cort). -+ + fix a strict compiler warning in change to wattr_get (cf: 20110528). -+ -+20110604 -+ + fixes for MirBSD port: -+ + set default prefix to /usr. -+ + add support for shared libraries in configure script. -+ + use S_ISREG and S_ISDIR consistently, with fallback definitions. -+ + add a few more checks based on ncurses/link_test. -+ + modify MKlib_gen.sh to handle sp-funcs renaming of NCURSES_OUTC type. -+ -+20110528 -+ + add case to CF_SHARED_OPTS for Interix (patch by Markus Duft). -+ + used ncurses/link_test to check for behavior when the terminal has -+ not been initialized and when an application passes null pointers -+ to the library. Added checks to cover this (prompted by Redhat -+ #707344). -+ + modify MKlib_gen.sh to make its main() function call each function -+ with zero parameters, to help find inconsistent checking for null -+ pointers, etc. -+ -+20110521 -+ + fix warnings from clang 2.7 "--analyze" -+ -+20110514 -+ + compiler-warning fixes in panel and progs. -+ + modify CF_PKG_CONFIG macro, from changes to tin -TD -+ + modify CF_CURSES_FUNCS configure macro, used in test directory -+ configure script: -+ + work around (non-optimizer) bug in gcc 4.2.1 which caused -+ test-expression to be omitted from executable. -+ + force the linker to see a link-time expression of a symbol, to -+ help work around weak-symbol issues. -+ -+20110507 -+ + update discussion of MKfallback.sh script in INSTALL; normally the -+ script is used automatically via the configured makefiles. However -+ there are still occasions when it might be used directly by packagers -+ (report by Gunter Schaffler). -+ + modify misc/ncurses-config.in to omit the "-L" option from the -+ "--libs" output if the library directory is /usr/lib. -+ + change order of tests for curses.h versus ncurses.h headers in the -+ configure scripts for Ada95 and test-directories, to look for -+ ncurses.h, from fixes to tin -TD -+ + modify ncurses/tinfo/access.c to account for Tandem's root uid -+ (report by Joachim Schmitz). -+ -+20110430 -+ + modify rules in Ada95/src/Makefile.in to ensure that the PIC option -+ is not used when building a static library (report by Nicolas -+ Boulenguez): -+ + Ada95 build-fix for big-endian architectures such as sparc. This -+ undoes one of the fixes from 20110319, which added an "Unused" member -+ to representation clauses, replacing that with pragmas to suppress -+ warnings about unused bits (patch by Nicolas Boulenguez): -+ -+20110423 -+ + add check in test/configure for use_window, use_screen. -+ + add configure-checks for getopt's variables, which may be declared -+ as different types on some Unix systems. -+ + add check in test/configure for some legacy curses types of the -+ function pointer passed to tputs(). -+ + modify init_pair() to accept -1's for color value after -+ assume_default_colors() has been called (Debian #337095). -+ + modify test/background.c, adding commmand-line options to demonstrate -+ assume_default_colors() and use_default_colors(). -+ -+20110416 -+ + modify configure script/source-code to only define _POSIX_SOURCE if -+ the checks for sigaction and/or termios fail, and if _POSIX_C_SOURCE -+ and _XOPEN_SOURCE are undefined (report by Valentin Ochs). -+ + update config.guess, config.sub -+ -+20110409 -+ + fixes to build c++ binding with clang 3.0 (patch by Alexander -+ Kolesen). -+ + add check for unctrl.h in test/configure, to work around breakage in -+ some ncurses packages. -+ + add "--disable-widec" option to test/configure script. -+ + add "--with-curses-colr" and "--with-curses-5lib" options to the -+ test/configure script to address testing with very old machines. -+ - 20110404 5.9 release for upload to ftp.gnu.org - - 20110402 -@@ -100,7 +1483,7 @@ - + modify configure script to provide value for HTML_DIR in - Ada95/gen/Makefile.in, which depends on whether the Ada95 binding is - distributed separately (report by Nicolas Boulenguez). -- + modify configure script to add -g and/or -O3 to ADAFLAGS if the -+ + modify configure script to add "-g" and/or "-O3" to ADAFLAGS if the - CFLAGS for the build has these options. - + amend change from 20070324, to not add 1 to the result of getmaxx - and getmaxy in the Ada binding (report by Nicolas Boulenguez for -@@ -155,7 +1538,7 @@ - 20110212 - + regenerated html manpages. - + use _tracef() in show_where() function of tic, to work correctly with -- special case of trace configuration. -+ special case of trace configuration. - - 20110205 - + add xterm-utf8 entry as a demo of the U8 feature -TD -@@ -219,7 +1602,7 @@ - version which works with termcap. - + remove obsolete emacs "Local Variables" section from documentation - (request by Sven Joachim). -- + update doc/html/index.html to include NCURSES-Programming-HOWTO.html -+ + update doc/html/index.html to include NCURSES-Programming-HOWTO.html - (report by Sven Joachim). - - 20101128 -@@ -294,8 +1677,8 @@ - Sven Joachim). - + add parameterized cursor-controls to linux-basic (report by Dae) -TD - > patch by Juergen Pfeifer: -- + document how to build 32-bit libraries in README.MinGW -- + fixes to filename computation in mk-dlls.sh.in -+ + document how to build 32-bit libraries in README.MinGW -+ + fixes to filename computation in mk-dlls.sh.in - + use POSIX locale in mk-dlls.sh.in rather than en_US (report by Sven - Joachim). - + add a check in mk-dlls.sh.in to obtain the size of a pointer to -@@ -478,7 +1861,7 @@ - 20100417 - + modify _nc_capcmp() to work with cancelled strings. - + correct translation of "^" in _nc_infotocap(), used to transform -- terminfo to termcap strings -+ terminfo to termcap strings - + add configure --disable-rpath-hack, to allow disabling the feature - which adds rpath options for libraries in unusual places. - + improve CF_RPATH_HACK_2 by checking if the rpath option for a given -@@ -1533,8 +2916,8 @@ - that library. - + add/modify null-pointer checks in several functions for SP and/or - the WINDOW* parameter (report by Thorben Krueger). -- + fixes for field_buffer() in formw library (see Redhat Bugzilla -- #310071, patches by Miroslav Lichvar). -+ + fixes for field_buffer() in formw library (see Redhat #310071, -+ patches by Miroslav Lichvar). - + improve performance of NCURSES_CHAR_EQ code (patch by Miroslav - Lichvar). - + update/improve mlterm and rxvt terminfo entries, e.g., for -@@ -1645,7 +3028,7 @@ - + modify configure script to quiet c++ build with libtool when the - --disable-echo option is used. - + modify configure script to disable ada95 if libtool is selected, -- writing a warning message (addresses FreeBSD ports/114493). -+ writing a warning message (addresses FreeBSD #114493). - + update config.guess, config.sub - - 20070707 -@@ -2130,8 +3513,7 @@ - + workaround for 20050806 ifdef's change to allow visbuf.c to compile - when using --with-termlib --with-trace options. - + improve tgetstr() by making the return value point into the user's -- buffer, if provided (patch by Miroslav Lichvar (see Redhat Bugzilla -- #202480)). -+ buffer, if provided (patch by Miroslav Lichvar (see Redhat #202480)). - + correct libraries needed for foldkeys (report by Stanislav Ievlev) - - 20060826 -@@ -2144,10 +3526,10 @@ - source output (Debian #378783). - + modify configure script to ensure that if the C compiler is used - rather than the loader in making shared libraries, the $(CFLAGS) -- variable is also used (Redhat Bugzilla #199369). -+ variable is also used (Redhat #199369). - + port hashed-db code to db2 and db3. - + fix a bug in tgetent() from 20060625 and 20060715 changes -- (patch/analysis by Miroslav Lichvar (see Redhat Bugzilla #202480)). -+ (patch/analysis by Miroslav Lichvar (see Redhat #202480)). - - 20060805 - + updated xterm function-keys terminfo to match xterm #216 -TD -@@ -2939,7 +4321,7 @@ - of cur_term if the same output was selected. This now reuses it only - when setupterm() is called from tgetent(), which has no notion of - separate SCREENs. Note that tgetent() must be called after initscr() -- or newterm() to use this feature (Redhat Bugzilla #140326). -+ or newterm() to use this feature (Redhat #140326). - + add a check in CF_BUILD_CC macro to ensure that developer has given - the --with-build-cc option when cross-compiling (report by Alexandre - Campo). -@@ -3032,7 +4414,7 @@ - entries, e.g., so it can analyze the xterm-8bit entry. - + add morphos terminfo entry, improve amiga-8bit entry (Pavel Fedin). - + correct translation of "%%" in terminfo format to termcap, e.g., -- using "tic -C" (Redhat Bugzilla #130921). -+ using "tic -C" (Redhat #130921). - + modified configure script CF_XOPEN_SOURCE macro to ensure that if - it defines _POSIX_C_SOURCE, that it defines it to a specific value - (comp.os.stratus newsgroup comment). -@@ -3043,9 +4425,9 @@ - However that did find a coding error in Assume_Default_Colors(). - + modify several terminfo entries to ensure xterm mouse and cursor - visibility are reset in rs2 string: hurd, putty, gnome, -- konsole-base, mlterm, Eterm, screen (Debian #265784, #55637). The -- xterm entries are left alone - old ones for compatibility, and the -- new ones do not require this change. -TD -+ konsole-base, mlterm, Eterm, screen (Debian #265784, Debian #55637). -+ The xterm entries are left alone - old ones for compatibility, and -+ the new ones do not require this change. -TD - - 20040814 - + fake a SIGWINCH in newterm() to accommodate buggy terminal emulators -@@ -3076,8 +4458,8 @@ - + modify "tic -cv" to ignore delays when comparing strings. Also - modify it to ignore a canceled sgr string, e.g., for terminals which - cannot properly combine attributes in one control sequence. -- + corrections for gnome and konsole entries (Redhat Bugzilla #122815, -- patch by Hans de Goede) -+ + corrections for gnome and konsole entries (Redhat #122815, patch by -+ Hans de Goede) - > terminfo updates -TD - + make ncsa-m rmacs/smacs consistent with sgr - + add sgr, rc/sc and ech to syscons entries -@@ -3090,7 +4472,7 @@ - > terminfo updates -TD - + add xterm-pc-fkeys - + review/update gnome and gnome-rh90 entries (prompted by Redhat -- Bugzilla #122815). -+ #122815). - + review/update konsole entries - + add sgr, correct sgr0 for kterm and mlterm - + correct tsl string in kterm -@@ -3503,7 +4885,7 @@ - generated when cross-compiling for DJGPP. - + modify infocmp to omit check for $TERM for operations that do not - require it, e.g., "infocmp -e" used to build fallback list (report by -- Koblinger Egmont). -+ Egmont Koblinger). - - 20031004 - + add terminfo entries for DJGPP. -@@ -4204,7 +5586,7 @@ - + add a check in kgetch() for cooked characters in the fifo to avoid - calling fifo_push() when a KEY_RESIZE is available (report/analysis - by Sam Varshavchik <mrsam@courier-mta.com>). -- + fix an overlooked case for bugzilla #68199 (Philippe Blain). -+ + fix an overlooked case for Redhat #68199 (Philippe Blain). - + ensure clearerr() is called before using ferror() e.g., in - lib_screen.c (report by Philippe Blain). - -@@ -4212,7 +5594,7 @@ - + modify lib_screen.c and lib_newwin.c to maintain the SCREEN-specific - pointers for curscr/stdscr/newscr when scr_save() and scr_restore() - modify the global curscr/stdscr/newscr variables. Fixes Redhat -- bugzilla #68199 dated 2002-07-07. -+ #68199. - + add checks for null pointer in calls to tparm() and tgoto() based on - FreeBSD bug report. If ncurses were built with termcap support, and - the first call to tgoto() were a zero-length string, the result would -@@ -4245,7 +5627,7 @@ - Olaf Buddenhagen <olafBuddenhagen@web.de>). - + modified wresize() to ensure that a failed realloc will not corrupt - the window structure, and to make subwindows fit within the resized -- window (completes Debian #87678, #101699) -+ window (completes Debian #87678, Debian #101699) - - 20020803 - + fix an off-by-one in lib_pad.c check for limits of pad (patch by -@@ -4940,9 +6322,9 @@ - which may be in libutf8. - + remove some unnecessary text from curs_extend.3x and - default_colors.3x which caused man-db to make incorrect symbolic -- links (Debian bug report #99550). -+ links (Debian #99550). - + add configure check if cast for _IO_va_list is needed to compile -- C++ vscan code (Debian bug report #97945). -+ C++ vscan code (Debian #97945). - > several patches from Sven Verdoolaege: - + correct code that used non-standard auto-initialization of a struct, - which gcc allows (report by Larry Virden). -@@ -5077,7 +6459,7 @@ - + add some examples of customizing screen's terminfo: - screen.xterm-xfree86, screen.xterm-r6, screen.teraterm -TD - + modify screen's terminfo entry to match the khome/kend in screen -- 3.09.08 (Debian bug report #92215). -+ 3.09.08 (Debian #92215). - + correct a memory leak in forms library (report by Stefan Vogtner - <stefan@vogtner.de>) (patch by Juergen Pfeifer). - -@@ -5091,12 +6473,12 @@ - + add .cc.ii rule to c++ makefile, to get preprocessor output for - debugging. - + correct configure script handling of @keyword@ substitutions when the -- --with-manpage-renames option is given (cf: 20000715, fixes Debian -- bug #89939). -+ --with-manpage-renames option is given (cf: 20000715, fixes Debian -+ #89939). - + report stack underflow/overflow in tparm() when tic -cv option is - given. - + remove spurious "%|" operator from xterm-xfree86 terminfo entry, -- (reported by Adam Costello <amc@cs.berkeley.edu>, Debian bug #89222). -+ (reported by Adam Costello <amc@cs.berkeley.edu>, Debian #89222). - - 20010310 - + cleanup of newdemo.c, fixing some ambiguous expressions noted by gcc -@@ -5800,7 +7182,7 @@ - + correct spelling error in terminfo entry name: bq300-rv was given as - bg300-rv in esr's version. - + modify redrawwin() macro so its parameter is fully parenthesized -- (fixes Debian bug report #61088). -+ (fixes Debian #61088). - + correct formatting error in dump_entry() which set incorrect column - value when no newline trimming was needed at the end of an entry, - before appending "use=" clauses (cf: 960406). -@@ -6530,7 +7912,7 @@ - handling in lynx (reported by Kim DeVaughn). - - 990306 pre-release -- + add -G option to tic and infocmp, to reverse the -g option. -+ + add -G option to tic and infocmp, to reverse the "-g" option. - + recode functions in name_match.c to avoid use of strncpy, which - caused a 4-fold slowdown in tic (cf: 980530). - + correct a few warnings about sign-extension in recent changes. -@@ -6901,7 +8283,7 @@ - since that is a little more efficient. - + minor correction to infocmp to avoid displaying "difference" between - two capabilities that are rendered in equivalent forms. -- + add -g option to tic/infocmp to force character constants to be -+ + add "-g" option to tic/infocmp to force character constants to be - displayed in quoted form. Otherwise their decimal values are shown. - + modify setupterm so that cancelled strings are treated the same as - absent strings, cancelled and absent booleans false (does not affect -@@ -8979,15 +10361,18 @@ - + correction to #317. - > patch 317 (ESR): - + re-add _nc_hash_map -- + modify EmitRange to maintain position as per original design. -- + add hashtest.c, program to time the hashmap optimization. -+ + modify EmitRange to maintain position as per original design -+ (patch by A. Lukyanov). -+ + modify test/ncurses.c and tputs, etc., to allow trace counting -+ output characters. -+ + add hashtest.c program to time the hashmap optimization. - > patch 316 (ESR): - + add logic to deal with magic-cookie (how was this tested?) - (lib_doupdate.c). - + add ncurses.c driver for magic-cookie, some fixes to ncurses.c - > patch 315 (ESR): -- + merged Alexander V Lukyanov's patch to use ech and rep - untested -- (lib_doupdate.c). -+ + merge changes to lib_doupdate.c to use ech and rep - untested -+ (patch by Alexander V Lukyanov). - + modified handling of interrupted system calls - untested - (lib_getch.c, lib_twait.c). - + new function _nc_mvcur_resume() -@@ -9059,12 +10444,12 @@ - + corrected typo in dtterm description. - > patch 313 (ESR): - + add dtterm description -- + clarify ncurses 'i' test (drop vscanf subtest) -+ + clarify ncurses 'i' test (drop mvwscanw subtest) - - 960810 - snapshot - + correct nl()/nonl() to work as per SVr4 & XSI. - + minor fixes to ncurses.c (use 'noraw()', mvscanw return-code) -- + refine configure-test for -g option (Tim Mooney). -+ + refine configure-test for "-g" option (Tim Mooney). - + correct interaction between O_BLANK and NEW_LINE request in form - library (Juergen Pfeifer) - -@@ -9073,7 +10458,8 @@ - > patch 312 (ESR): - correct terminfo.src corrupted by #310 - > patch 311 (ESR): -- + fix idlok() and idcok() and the default of the idlok switch. -+ + fix idlok() and idcok() and the default of the idlok switch (report -+ by Ville Sulko). - - 960803 - snapshot - + corrected tparm to handle capability strings without explicit pop -@@ -9083,7 +10469,7 @@ - > patch 310 (ESR): - + documentation and prototyping errors for has_color, immedok and idcok - (reported by William P Setzer <wsetzer@pams.ncsu.edu>) -- + updated qnx terminfo entry (by Michael Hunter) -+ + updated qnx terminfo entry (patch by Michael Hunter) - - 960730 - + eliminate quoted includes in ncurses subdirectory, ensure config.h -@@ -9095,7 +10481,7 @@ - + call cbreak() in initscr(), as per XSI & SVr4. - + turn off hardware echo in initscr() as per XSI & SVr4 - > patch 309 (ESR): -- + terminfo changes (9.3.10), from BRL -+ + terminfo changes (9.3.9), from BRL - + add more checks to terminfo parser. - + add more symbols to infocmp. - -@@ -9114,6 +10500,7 @@ - > patch 308 (ESR): - + terminfo changes (9.3.8) - + modified logic of error-reporting in terminfo parser -+ + fix option-processing bug in toe. - - 960713 - snapshot - + always check for <sys/bsdtypes.h> since ISC needs it to declare -@@ -9122,9 +10509,19 @@ - by Juergen Pfeifer, Mike Long) - + add LOCAL_LDFLAGS2 symbol (Juergen Pfeifer) - + corrected prototype for delay_output() -- bump ABI to 3.2 -- + terminfo patches #306/307 (ESR). -+ + patch 307 (ESR): -+ + enable more translations of nonstandard caps, and document them. -+ + misc/terminfo.src update to 9.13.8 -+ + patch 306 (ESR): - + moved logic that filters out rmul and rmso from setupterm to newterm - where it is less likely to interfere with termcap applications. -+ + cosmetic fixes to test/ncurses.c -+ + modify open() call in ncurses/read_entry.c to use O_RDONLY symbol -+ rather than constant (report by mib). -+ + misc/terminfo.src sgr0 and acsc changes (report by Philippe De -+ Muyter). -+ + modify ncurses/comp_parse.c so that entries containing a "+" can -+ have missing rmcup vs smcup. - - 960707 - + rollback ESR's #305 change to terminfo.src (it breaks existing -@@ -9139,7 +10536,6 @@ - + make lib_vidattr.c more readable using macros. - + filter out rmul, rmso that conflict with sgr0 when reading terminal - descriptions. -- + added sanity-checking of various paired string attributes (ESR). - + work around autoconf bug, force $INSTALL to absolute path - (reported by Zeyd). - + modify man-page install for BSDI to install preformatted .0 files -@@ -9152,6 +10548,12 @@ - + disable scrollok during the ncurses 'p' test; if it is enabled the - stdscr will scroll when putting the box-corners in the lower-right - of the screen. -+ > patch 305 (ESR): -+ + added sanity-checking of various paired string attributes. -+ + misc/terminfo.src update to 9.13.7 (report by A. Lukyanov). -+ + modify man/Makefile.in to make terminfo.5 during normal build. -+ > patch 304 (ESR): -+ + corrected allocation-length for $HOME/.terminfo path. - - 960629 - snapshot - + check return code of _nc_mvcur_scrolln() in _nc_scroll_optimize() for -@@ -9234,6 +10636,7 @@ - + better fix for nvi refresh-bug (Rick Marshall) - + fix for bug in handling of interrupted keystroke waits, - (Werner Fleck). -+ + misc/ncurses-intro.html syntax fix (Kajiyama Tamito). - - 960601 - snapshot - + auto-configure man-page compression-format and renames for Debian. -@@ -9248,7 +10651,7 @@ - + enhancement to the control over the new PC-style soft key format. - allow caller now to select whether or not one wants to have - the index-line; see curs_slk.3x for documentation (Juergen Pfeifer). -- + typos, don't use inline with -g (Philippe De Muyter) -+ + typos, don't use inline with "-g" (Philippe De Muyter) - + fixes for menus & wattr-, slk-functions (Juergen Pfeifer) - - 960526 - snapshot -@@ -9263,6 +10666,9 @@ - + include sys/types.h in case stdlib.h does not declare size_t. - + fixes for makefile (Tim Mooney) - + fixes for menus & forms (Juergen Pfeifer) -+ > patch 302 (ESR): -+ + improve hash function (suggested by Alexander V Lukyanov). -+ + 9.13.4 update for terminfo.src - - 960518 - snapshot - + revised ncurses.c panner test, let pad abut all 4 sides of screen. -@@ -9275,6 +10681,8 @@ - confusion, and made this check for the /usr/lib/terminfo pre-existing - directory. - > patches 299-301 (ESR): -+ + html fixes (Phillippe de Muyter). -+ + fix typo in ncurses-intro.html (report by Fabrizio Polacco). - + added hashmap.c - + mods to tracing, especially for ACS chars. - + corrected off-by-one in IDCtransform. -@@ -9294,13 +10702,21 @@ - > patches 297, 298 (ESR): - + implement TERMINFO_DIRS, and -o option of tic - + added TRACE_IEVENT -- + removed boolean version of 'getm' -- + added lib_print.c (for Rick Marshall) -- + added has_key() -+ + fix REQ_TOGGLE_ITEM in menu/menu_driver.c; it could select but not -+ deselect. -+ + added lib_print.c (request by Rick Marshall). -+ + added has_key() (request by Juergen Pfeifer). -+ + do not issue clrtoeol or clrtobot if the relevant portion of the line -+ is already blank (analysis by Keith Bostic). -+ + add parentheses for parameters of COLOR_PAIR and PAIR_NUMBER macros -+ (analysis by Jurgen Eidt). -+ + update screen's notion of cursor position in endwin() (analysis by -+ Alexander Lukyanov). - + added 't' to ncurses.c test. - + moved delay_output() to lib_tputs.c - + removed tparam() (was added in 1.9.9, but conflicts with emacs and - is not part of X/Open Curses). -+ + removed boolean version of 'getm'. - + misc cursor & optimization fixes. - - 960504 - snapshot -@@ -9326,11 +10742,20 @@ - + make TIOCGWINSZ configure test less stringent, in case user - configures via terminal that cannot get screen size. - > patches 295, 296 (ESR): -- + new "-e" option of tic. -- + fix for "infocmp -e". -- + restore working-directory in read_termcap.c - + split lib_kernel.c, lib_setup.c and names.c in order to reduce - overhead for programs that use only termcap features. -+ + new "-e" and "-h" options of tic (request by Tony Nugent). -+ + fix bug in mandatory-delay logic in lib_tputs.c (report by Sven -+ Verdoolaege). -+ + fix for "infocmp -e" to emit correct initializers (reported by Manual -+ J Novoa III). -+ + restore working-directory in read_termcap.c (report by Kayvan -+ Sylvan). -+ + use "-h" option on Solaris when generating shared libraries on -+ Solaris 2.5 to record the library name in the file, for assisting -+ the loader (patch by Scott Kramer). -+ + undo patch #294 changes to form and menu libraries (request by -+ Juergen Pfeifer). - - 960418 - snapshot - + use autoconf 2.9 -@@ -9338,10 +10763,22 @@ - definitions via <termios.h>, modified macros in lib_raw.c to avoid - K&R-style substitution) - > patches 293, 294 (ESR): -- + mods to wgetch() in cooked mode -- + corrected askuser() logic in tset -- + correct interaction of endwin() with mouse processing -+ + rewrite wsyncup(), wsyncdown(), as well as small fixes to form and -+ menu libraries to fix echo-breakage introduced by 1.8.9, 1.9.9e -+ changes (patches by Juergen Pfeifer). -+ + fix compile under QNX 4.2 by defining ONLCR in lib_raw.c when -+ __QNX__ is defined (patch by Michael Hunter). -+ + modify setupterm() to match documentation for its return value, fix -+ newterm to work with this change (report by Emmet Lazich). -+ + add checks in getch() for error, return ERR as appropriate (report by -+ Emmet Lazich). -+ + mods to wgetch() in cooked mode (report by Pete Seebach). -+ + corrected askuser() logic in tset (patch by Remco Treffkorn). -+ + correct interaction of endwin() with mouse processing (report by -+ Michael Elkins). - + added trace support for TTY flags -+ + update terminfo.src to 9.13.1 -+ + FreeBSD console entries (patch by Andrew Chernov). - - 960406 - + fixes for NeXT, ISC and HPUX auto-configure -diff -Naur ncurses-5.9/package/debian/changelog ncurses-5.9.patch/package/debian/changelog ---- ncurses-5.9/package/debian/changelog 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian/changelog 2014-09-01 16:34:19.497887066 +0200 -@@ -0,0 +1,11 @@ -+ncurses6 (5.9-20140323) unstable; urgency=low -+ -+ * latest weekly patch -+ -+ -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 23 Mar 2014 16:59:54 -0400 -+ -+ncurses6 (5.9-20120608) unstable; urgency=low -+ -+ * initial release -+ -+ -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 08 Jun 2012 07:54:29 -0400 -diff -Naur ncurses-5.9/package/debian/compat ncurses-5.9.patch/package/debian/compat ---- ncurses-5.9/package/debian/compat 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian/compat 2014-09-01 16:33:22.519792399 +0200 -@@ -0,0 +1 @@ -+5 -diff -Naur ncurses-5.9/package/debian/control ncurses-5.9.patch/package/debian/control ---- ncurses-5.9/package/debian/control 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian/control 2014-09-01 16:33:22.519792399 +0200 -@@ -0,0 +1,16 @@ -+Source: ncurses6 -+Section: libdevel -+Priority: optional -+Maintainer: Thomas E. Dickey <dickey@invisible-island.net> -+Homepage: http://invisible-island.net/ncurses/ -+Build-Depends: debhelper (>= 7) -+Standards-Version: 3.8.2 -+ -+Package: ncurses6 -+Architecture: any -+Depends: ${misc:Depends} -+Description: shared libraries for terminal handling -+ The ncurses library routines are a terminal-independent method of -+ updating character screens with reasonable optimization. -+ . -+ This package is used for testing ABI 6. -diff -Naur ncurses-5.9/package/debian/copyright ncurses-5.9.patch/package/debian/copyright ---- ncurses-5.9/package/debian/copyright 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian/copyright 2014-09-01 16:33:22.520792399 +0200 -@@ -0,0 +1,112 @@ -+This package is used for testing builds of ncurses. -+ -+Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. -+Copyright © 2001 by Pradeep Padala -+ -+Permission is hereby granted, free of charge, to any person obtaining a -+copy of this software and associated documentation files (the -+"Software"), to deal in the Software without restriction, including -+without limitation the rights to use, copy, modify, merge, publish, -+distribute, distribute with modifications, sublicense, and/or sell -+copies of the Software, and to permit persons to whom the Software is -+furnished to do so, subject to the following conditions: -+ -+The above copyright notice and this permission notice shall be included -+in all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -+IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -+DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -+OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR -+THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name(s) of the above copyright -+holders shall not be used in advertising or otherwise to promote the -+sale, use or other dealings in this Software without prior written -+authorization. -+ -+ -+Copyright (C) 1994 X Consortium -+ -+Permission is hereby granted, free of charge, to any person obtaining a copy -+of this software and associated documentation files (the "Software"), to -+deal in the Software without restriction, including without limitation the -+rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -+sell copies of the Software, and to permit persons to whom the Software is -+furnished to do so, subject to the following conditions: -+ -+The above copyright notice and this permission notice shall be included in -+all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -+X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -+TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name of the X Consortium shall not -+be used in advertising or otherwise to promote the sale, use or other deal- -+ings in this Software without prior written authorization from the X Consor- -+tium. -+ -+ -+Copyright (c) 1980, 1991, 1992, 1993 -+ The Regents of the University of California. All rights reserved. -+ -+Redistribution and use in source and binary forms, with or without -+modification, are permitted provided that the following conditions -+are met: -+1. Redistributions of source code must retain the above copyright -+ notice, this list of conditions and the following disclaimer. -+2. Redistributions in binary form must reproduce the above copyright -+ notice, this list of conditions and the following disclaimer in the -+ documentation and/or other materials provided with the distribution. -+3. Neither the name of the University nor the names of its contributors -+ may be used to endorse or promote products derived from this software -+ without specific prior written permission. -+ -+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -+SUCH DAMAGE. -+ -+ -+Copyright 1996-2013,2014 by Thomas E. Dickey -+ -+ All Rights Reserved -+ -+Permission is hereby granted, free of charge, to any person obtaining a -+copy of this software and associated documentation files (the -+"Software"), to deal in the Software without restriction, including -+without limitation the rights to use, copy, modify, merge, publish, -+distribute, sublicense, and/or sell copies of the Software, and to -+permit persons to whom the Software is furnished to do so, subject to -+the following conditions: -+ -+The above copyright notice and this permission notice shall be included -+in all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -+IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY -+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name(s) of the above copyright -+holders shall not be used in advertising or otherwise to promote the -+sale, use or other dealings in this Software without prior written -+authorization. -+ -+-- vile: txtmode file-encoding=utf-8 -diff -Naur ncurses-5.9/package/debian/rules ncurses-5.9.patch/package/debian/rules ---- ncurses-5.9/package/debian/rules 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian/rules 2014-09-01 16:34:19.473887046 +0200 -@@ -0,0 +1,125 @@ -+#!/usr/bin/make -f -+# MAde with the aid of dh_make, by Craig Small -+# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess. -+# Some lines taken from debmake, by Cristoph Lameter. -+ -+# Uncomment this to turn on verbose mode. -+#export DH_VERBOSE=1 -+ -+# These are used for cross-compiling and for saving the configure script -+# from having to guess our platform (since we know it already) -+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) -+ -+CC_NORMAL = -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion -+CC_STRICT = $(CC_NORMAL) -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic -+ -+MY_DIR=/usr/local/ncurses6 -+MYDATA=/usr/local/ncurses/share/terminfo -+BUILD_DIR=$(CURDIR)/debian/ncurses6 -+ -+CFLAGS = $(CC_NORMAL) -+ -+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) -+ CFLAGS += -O0 -+else -+ CFLAGS += -O2 -+endif -+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) -+ INSTALL_PROGRAM += -s -+endif -+ -+ -+configure: configure-stamp -+configure-stamp: -+ dh_testdir -+ -+ RPATH_LIST=../lib:$(MY_DIR)/lib \ -+ CFLAGS="$(CFLAGS)" ./configure \ -+ --host=$(DEB_HOST_GNU_TYPE) \ -+ --build=$(DEB_BUILD_GNU_TYPE) \ -+ --prefix=$(MY_DIR) \ -+ --with-default-terminfo-dir=$(MYDATA) \ -+ --with-terminfo-dirs=$(MYDATA):/usr/share/terminfo \ -+ --disable-echo \ -+ --disable-getcap \ -+ --disable-leaks \ -+ --disable-macros \ -+ --disable-termcap \ -+ --enable-const \ -+ --enable-ext-colors \ -+ --enable-ext-mouse \ -+ --enable-hard-tabs \ -+ --enable-interop \ -+ --enable-rpath \ -+ --enable-sp-funcs \ -+ --enable-warnings \ -+ --enable-widec \ -+ --verbose \ -+ --with-chtype=uint32_t \ -+ --with-mmask_t=uint32_t \ -+ --with-develop \ -+ --with-shared \ -+ --with-termlib \ -+ --with-ticlib \ -+ --with-trace \ -+ --with-cxx-shared \ -+ --with-xterm-kbs=DEL \ -+ --without-ada \ -+ --without-debug \ -+ --without-normal -+ -+ touch configure-stamp -+ -+build: build-stamp -+build-stamp: configure-stamp -+ dh_testdir -+ -+ $(MAKE) -+ -+ touch build-stamp -+ -+clean: -+ dh_testdir -+ dh_testroot -+ -+ [ ! -f makefile ] || $(MAKE) distclean -+ -+ rm -f configure-stamp build-stamp install-stamp -+ -+ dh_clean -+ -+install: install-stamp -+install-stamp: build-stamp -+ dh_testdir -+ dh_testroot -+ dh_clean -k -+ dh_installdirs -+ -+ $(MAKE) install.libs install.progs DESTDIR=$(BUILD_DIR) -+ -+ ( cd test && make ncurses LOCAL_LIBDIR=$(MY_DIR)/lib ) -+ mv test/ncurses $(BUILD_DIR)$(MY_DIR)/bin/ncurses6 -+ -+ touch install-stamp -+ -+# Build architecture-independent files here. -+binary-indep: build install -+# No binary-indep target. -+ -+# Build architecture-dependent files here. -+binary-arch: build install -+ dh_testdir -+ dh_testroot -+ dh_installchangelogs NEWS -+ dh_strip -+ dh_compress -+ dh_fixperms -+ dh_installdeb -+ dh_shlibdeps -+ dh_gencontrol -+ dh_md5sums -+ dh_builddeb -+ -+binary: binary-indep binary-arch -+.PHONY: build clean binary-indep binary-arch binary install install-stamp -diff -Naur ncurses-5.9/package/debian/source/format ncurses-5.9.patch/package/debian/source/format ---- ncurses-5.9/package/debian/source/format 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian/source/format 2014-09-01 16:33:22.520792399 +0200 -@@ -0,0 +1 @@ -+3.0 (quilt) -diff -Naur ncurses-5.9/package/debian/watch ncurses-5.9.patch/package/debian/watch ---- ncurses-5.9/package/debian/watch 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian/watch 2014-09-01 16:33:22.520792399 +0200 -@@ -0,0 +1,4 @@ -+version=3 -+ -+opts=passive ftp://invisible-island.net/ncurses/current/ncurses\.tar.gz \ -+ debian uupdate -diff -Naur ncurses-5.9/package/debian-mingw/changelog ncurses-5.9.patch/package/debian-mingw/changelog ---- ncurses-5.9/package/debian-mingw/changelog 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw/changelog 2014-09-01 16:34:19.497887066 +0200 -@@ -0,0 +1,11 @@ -+ncurses6 (5.9-20140323) unstable; urgency=low -+ -+ * latest weekly patch -+ -+ -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 23 Mar 2014 16:59:54 -0400 -+ -+ncurses6 (5.9-20131005) unstable; urgency=low -+ -+ * initial release -+ -+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 05 Oct 2013 13:35:29 -0400 -diff -Naur ncurses-5.9/package/debian-mingw/compat ncurses-5.9.patch/package/debian-mingw/compat ---- ncurses-5.9/package/debian-mingw/compat 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw/compat 2014-09-01 16:33:22.518792397 +0200 -@@ -0,0 +1 @@ -+5 -diff -Naur ncurses-5.9/package/debian-mingw/control ncurses-5.9.patch/package/debian-mingw/control ---- ncurses-5.9/package/debian-mingw/control 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw/control 2014-09-01 16:33:22.518792397 +0200 -@@ -0,0 +1,16 @@ -+Source: ncurses6 -+Section: libdevel -+Priority: optional -+Maintainer: Thomas E. Dickey <dickey@invisible-island.net> -+Homepage: http://invisible-island.net/ncurses/ -+Build-Depends: debhelper (>= 7) -+Standards-Version: 3.8.2 -+ -+Package: mingw32-ncurses6 -+Architecture: any -+Depends: ${misc:Depends} -+Description: shared libraries for terminal handling -+ The ncurses library routines are a terminal-independent method of -+ updating character screens with reasonable optimization. -+ . -+ This package is used for testing ABI 6 with the MinGW 32-bit port. -diff -Naur ncurses-5.9/package/debian-mingw/copyright ncurses-5.9.patch/package/debian-mingw/copyright ---- ncurses-5.9/package/debian-mingw/copyright 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw/copyright 2014-09-01 16:33:22.518792397 +0200 -@@ -0,0 +1,112 @@ -+This package is used for testing builds of ncurses. -+ -+Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. -+Copyright © 2001 by Pradeep Padala -+ -+Permission is hereby granted, free of charge, to any person obtaining a -+copy of this software and associated documentation files (the -+"Software"), to deal in the Software without restriction, including -+without limitation the rights to use, copy, modify, merge, publish, -+distribute, distribute with modifications, sublicense, and/or sell -+copies of the Software, and to permit persons to whom the Software is -+furnished to do so, subject to the following conditions: -+ -+The above copyright notice and this permission notice shall be included -+in all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -+IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -+DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -+OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR -+THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name(s) of the above copyright -+holders shall not be used in advertising or otherwise to promote the -+sale, use or other dealings in this Software without prior written -+authorization. -+ -+ -+Copyright (C) 1994 X Consortium -+ -+Permission is hereby granted, free of charge, to any person obtaining a copy -+of this software and associated documentation files (the "Software"), to -+deal in the Software without restriction, including without limitation the -+rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -+sell copies of the Software, and to permit persons to whom the Software is -+furnished to do so, subject to the following conditions: -+ -+The above copyright notice and this permission notice shall be included in -+all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -+X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -+TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name of the X Consortium shall not -+be used in advertising or otherwise to promote the sale, use or other deal- -+ings in this Software without prior written authorization from the X Consor- -+tium. -+ -+ -+Copyright (c) 1980, 1991, 1992, 1993 -+ The Regents of the University of California. All rights reserved. -+ -+Redistribution and use in source and binary forms, with or without -+modification, are permitted provided that the following conditions -+are met: -+1. Redistributions of source code must retain the above copyright -+ notice, this list of conditions and the following disclaimer. -+2. Redistributions in binary form must reproduce the above copyright -+ notice, this list of conditions and the following disclaimer in the -+ documentation and/or other materials provided with the distribution. -+3. Neither the name of the University nor the names of its contributors -+ may be used to endorse or promote products derived from this software -+ without specific prior written permission. -+ -+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -+SUCH DAMAGE. -+ -+ -+Copyright 1996-2013,2014 by Thomas E. Dickey -+ -+ All Rights Reserved -+ -+Permission is hereby granted, free of charge, to any person obtaining a -+copy of this software and associated documentation files (the -+"Software"), to deal in the Software without restriction, including -+without limitation the rights to use, copy, modify, merge, publish, -+distribute, sublicense, and/or sell copies of the Software, and to -+permit persons to whom the Software is furnished to do so, subject to -+the following conditions: -+ -+The above copyright notice and this permission notice shall be included -+in all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -+IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY -+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name(s) of the above copyright -+holders shall not be used in advertising or otherwise to promote the -+sale, use or other dealings in this Software without prior written -+authorization. -+ -+-- vile: txtmode file-encoding=utf-8 -diff -Naur ncurses-5.9/package/debian-mingw/rules ncurses-5.9.patch/package/debian-mingw/rules ---- ncurses-5.9/package/debian-mingw/rules 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw/rules 2014-09-01 16:34:19.472887057 +0200 -@@ -0,0 +1,132 @@ -+#!/usr/bin/make -f -+# Made with the aid of dh_make, by Craig Small -+# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess. -+# Some lines taken from debmake, by Cristoph Lameter. -+ -+# Uncomment this to turn on verbose mode. -+#export DH_VERBOSE=1 -+ -+# These are used for cross-compiling and for saving the configure script -+# from having to guess our platform (since we know it already) -+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) -+ -+BUILD_CC = gcc -+ -+CC_NORMAL = -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion -+CC_STRICT = $(CC_NORMAL) -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic -+ -+TARGET = i686-w64-mingw32 -+MINGW_TOP = /usr/$(TARGET) -+MINGW_TMP = $(CURDIR)/debian/mingw32-ncurses6 -+ -+CFLAGS = $(CC_NORMAL) -+ -+CONFIG_OPTIONS = \ -+ --disable-echo \ -+ --disable-db-install \ -+ --disable-getcap \ -+ --disable-hard-tabs \ -+ --disable-leaks \ -+ --disable-macros \ -+ --disable-overwrite \ -+ --disable-termcap \ -+ --enable-const \ -+ --enable-ext-colors \ -+ --enable-ext-mouse \ -+ --enable-interop \ -+ --enable-sp-funcs \ -+ --enable-term-driver \ -+ --enable-warnings \ -+ --enable-widec \ -+ --verbose \ -+ --with-chtype=uint32_t \ -+ --with-mmask_t=uint32_t \ -+ --with-cxx-shared \ -+ --with-develop \ -+ --with-fallbacks=unknown,rxvt \ -+ --with-shared \ -+ --with-tparm-arg=intptr_t \ -+ --with-trace \ -+ --with-xterm-kbs=DEL \ -+ --without-ada \ -+ --without-debug \ -+ --without-manpages \ -+ --without-progs \ -+ --without-tests -+ -+export CFLAGS BUILD_CC -+ -+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) -+ CFLAGS += -O0 -+else -+ CFLAGS += -O2 -+endif -+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) -+ INSTALL_PROGRAM += -s -+endif -+ -+configure: configure-stamp -+configure-stamp: -+ dh_testdir -+ -+ CC=$(TARGET)-gcc \ -+ CFLAGS="$(CFLAGS)" \ -+ ./configure \ -+ --host=$(TARGET) \ -+ --target=$(TARGET) \ -+ --prefix=$(MINGW_TOP) \ -+ --with-build-cc=$(BUILD_CC) \ -+ $(CONFIG_OPTIONS) -+ -+ touch configure-stamp -+ -+build: build-stamp -+build-stamp: configure-stamp -+ dh_testdir -+ -+ $(MAKE) -+ -+ touch build-stamp -+ -+clean: -+ dh_testdir -+ dh_testroot -+ -+ [ ! -f makefile ] || $(MAKE) distclean -+ -+ rm -f configure-stamp build-stamp install-stamp -+ -+ dh_clean -+ -+install: install-stamp -+install-stamp: build-stamp -+ dh_testdir -+ dh_testroot -+ dh_clean -k -+ dh_installdirs -+ -+ $(MAKE) install.libs DESTDIR=$(MINGW_TMP) -+ -+ touch install-stamp -+ -+# Build architecture-independent files here. -+binary-indep: build install -+# No binary-indep target. -+ -+# Build architecture-dependent files here. -+binary-arch: build install -+ dh_testdir -+ dh_testroot -+ dh_installchangelogs NEWS -+ # dh_strip -+ dh_compress -+ dh_fixperms -+ dh_installdeb -+ dh_shlibdeps -+ dh_gencontrol -+ dh_md5sums -+ dh_builddeb -+ -+binary: binary-indep binary-arch -+.PHONY: build clean binary-indep binary-arch binary install install-stamp -diff -Naur ncurses-5.9/package/debian-mingw/source/format ncurses-5.9.patch/package/debian-mingw/source/format ---- ncurses-5.9/package/debian-mingw/source/format 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw/source/format 2014-09-01 16:33:22.519792399 +0200 -@@ -0,0 +1 @@ -+3.0 (quilt) -diff -Naur ncurses-5.9/package/debian-mingw/watch ncurses-5.9.patch/package/debian-mingw/watch ---- ncurses-5.9/package/debian-mingw/watch 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw/watch 2014-09-01 16:33:22.519792399 +0200 -@@ -0,0 +1,4 @@ -+version=3 -+ -+opts=passive ftp://invisible-island.net/ncurses/current/ncurses\.tar.gz \ -+ debian uupdate -diff -Naur ncurses-5.9/package/debian-mingw64/changelog ncurses-5.9.patch/package/debian-mingw64/changelog ---- ncurses-5.9/package/debian-mingw64/changelog 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw64/changelog 2014-09-01 16:34:19.497887066 +0200 -@@ -0,0 +1,11 @@ -+ncurses6 (5.9-20140323) unstable; urgency=low -+ -+ * latest weekly patch -+ -+ -- Thomas E. Dickey <dickey@invisible-island.net> Sun, 23 Mar 2014 16:59:54 -0400 -+ -+ncurses6 (5.9-20131005) unstable; urgency=low -+ -+ * initial release -+ -+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 05 Oct 2013 13:35:29 -0400 -diff -Naur ncurses-5.9/package/debian-mingw64/compat ncurses-5.9.patch/package/debian-mingw64/compat ---- ncurses-5.9/package/debian-mingw64/compat 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw64/compat 2014-09-01 16:33:22.519792399 +0200 -@@ -0,0 +1 @@ -+5 -diff -Naur ncurses-5.9/package/debian-mingw64/control ncurses-5.9.patch/package/debian-mingw64/control ---- ncurses-5.9/package/debian-mingw64/control 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw64/control 2014-09-01 16:33:22.519792399 +0200 -@@ -0,0 +1,16 @@ -+Source: ncurses6 -+Section: libdevel -+Priority: optional -+Maintainer: Thomas E. Dickey <dickey@invisible-island.net> -+Homepage: http://invisible-island.net/ncurses/ -+Build-Depends: debhelper (>= 7) -+Standards-Version: 3.8.2 -+ -+Package: mingw64-ncurses6 -+Architecture: any -+Depends: ${misc:Depends} -+Description: shared libraries for terminal handling -+ The ncurses library routines are a terminal-independent method of -+ updating character screens with reasonable optimization. -+ . -+ This package is used for testing ABI 6 with the MinGW 64-bit port. -diff -Naur ncurses-5.9/package/debian-mingw64/copyright ncurses-5.9.patch/package/debian-mingw64/copyright ---- ncurses-5.9/package/debian-mingw64/copyright 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw64/copyright 2014-09-01 16:33:22.519792399 +0200 -@@ -0,0 +1,112 @@ -+This package is used for testing builds of ncurses. -+ -+Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. -+Copyright © 2001 by Pradeep Padala -+ -+Permission is hereby granted, free of charge, to any person obtaining a -+copy of this software and associated documentation files (the -+"Software"), to deal in the Software without restriction, including -+without limitation the rights to use, copy, modify, merge, publish, -+distribute, distribute with modifications, sublicense, and/or sell -+copies of the Software, and to permit persons to whom the Software is -+furnished to do so, subject to the following conditions: -+ -+The above copyright notice and this permission notice shall be included -+in all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -+IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -+DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -+OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR -+THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name(s) of the above copyright -+holders shall not be used in advertising or otherwise to promote the -+sale, use or other dealings in this Software without prior written -+authorization. -+ -+ -+Copyright (C) 1994 X Consortium -+ -+Permission is hereby granted, free of charge, to any person obtaining a copy -+of this software and associated documentation files (the "Software"), to -+deal in the Software without restriction, including without limitation the -+rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -+sell copies of the Software, and to permit persons to whom the Software is -+furnished to do so, subject to the following conditions: -+ -+The above copyright notice and this permission notice shall be included in -+all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -+X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -+TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name of the X Consortium shall not -+be used in advertising or otherwise to promote the sale, use or other deal- -+ings in this Software without prior written authorization from the X Consor- -+tium. -+ -+ -+Copyright (c) 1980, 1991, 1992, 1993 -+ The Regents of the University of California. All rights reserved. -+ -+Redistribution and use in source and binary forms, with or without -+modification, are permitted provided that the following conditions -+are met: -+1. Redistributions of source code must retain the above copyright -+ notice, this list of conditions and the following disclaimer. -+2. Redistributions in binary form must reproduce the above copyright -+ notice, this list of conditions and the following disclaimer in the -+ documentation and/or other materials provided with the distribution. -+3. Neither the name of the University nor the names of its contributors -+ may be used to endorse or promote products derived from this software -+ without specific prior written permission. -+ -+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -+SUCH DAMAGE. -+ -+ -+Copyright 1996-2013,2014 by Thomas E. Dickey -+ -+ All Rights Reserved -+ -+Permission is hereby granted, free of charge, to any person obtaining a -+copy of this software and associated documentation files (the -+"Software"), to deal in the Software without restriction, including -+without limitation the rights to use, copy, modify, merge, publish, -+distribute, sublicense, and/or sell copies of the Software, and to -+permit persons to whom the Software is furnished to do so, subject to -+the following conditions: -+ -+The above copyright notice and this permission notice shall be included -+in all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -+IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY -+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name(s) of the above copyright -+holders shall not be used in advertising or otherwise to promote the -+sale, use or other dealings in this Software without prior written -+authorization. -+ -+-- vile: txtmode file-encoding=utf-8 -diff -Naur ncurses-5.9/package/debian-mingw64/rules ncurses-5.9.patch/package/debian-mingw64/rules ---- ncurses-5.9/package/debian-mingw64/rules 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw64/rules 2014-09-01 16:34:19.472887057 +0200 -@@ -0,0 +1,132 @@ -+#!/usr/bin/make -f -+# Made with the aid of dh_make, by Craig Small -+# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess. -+# Some lines taken from debmake, by Cristoph Lameter. -+ -+# Uncomment this to turn on verbose mode. -+#export DH_VERBOSE=1 -+ -+# These are used for cross-compiling and for saving the configure script -+# from having to guess our platform (since we know it already) -+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) -+ -+BUILD_CC = gcc -+ -+CC_NORMAL = -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion -+CC_STRICT = $(CC_NORMAL) -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic -+ -+TARGET = x86_64-w64-mingw32 -+MINGW_TOP = /usr/$(TARGET) -+MINGW_TMP = $(CURDIR)/debian/mingw64-ncurses6 -+ -+CFLAGS = $(CC_NORMAL) -+ -+CONFIG_OPTIONS = \ -+ --disable-echo \ -+ --disable-db-install \ -+ --disable-getcap \ -+ --disable-hard-tabs \ -+ --disable-leaks \ -+ --disable-macros \ -+ --disable-overwrite \ -+ --disable-termcap \ -+ --enable-const \ -+ --enable-ext-colors \ -+ --enable-ext-mouse \ -+ --enable-interop \ -+ --enable-sp-funcs \ -+ --enable-term-driver \ -+ --enable-warnings \ -+ --enable-widec \ -+ --verbose \ -+ --with-chtype=uint32_t \ -+ --with-mmask_t=uint32_t \ -+ --with-cxx-shared \ -+ --with-develop \ -+ --with-fallbacks=unknown,rxvt \ -+ --with-shared \ -+ --with-tparm-arg=intptr_t \ -+ --with-trace \ -+ --with-xterm-kbs=DEL \ -+ --without-ada \ -+ --without-debug \ -+ --without-manpages \ -+ --without-progs \ -+ --without-tests -+ -+export CFLAGS BUILD_CC -+ -+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) -+ CFLAGS += -O0 -+else -+ CFLAGS += -O2 -+endif -+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) -+ INSTALL_PROGRAM += -s -+endif -+ -+configure: configure-stamp -+configure-stamp: -+ dh_testdir -+ -+ CC=$(TARGET)-gcc \ -+ CFLAGS="$(CFLAGS)" \ -+ ./configure \ -+ --host=$(TARGET) \ -+ --target=$(TARGET) \ -+ --prefix=$(MINGW_TOP) \ -+ --with-build-cc=$(BUILD_CC) \ -+ $(CONFIG_OPTIONS) -+ -+ touch configure-stamp -+ -+build: build-stamp -+build-stamp: configure-stamp -+ dh_testdir -+ -+ $(MAKE) -+ -+ touch build-stamp -+ -+clean: -+ dh_testdir -+ dh_testroot -+ -+ [ ! -f makefile ] || $(MAKE) distclean -+ -+ rm -f configure-stamp build-stamp install-stamp -+ -+ dh_clean -+ -+install: install-stamp -+install-stamp: build-stamp -+ dh_testdir -+ dh_testroot -+ dh_clean -k -+ dh_installdirs -+ -+ $(MAKE) install.libs DESTDIR=$(MINGW_TMP) -+ -+ touch install-stamp -+ -+# Build architecture-independent files here. -+binary-indep: build install -+# No binary-indep target. -+ -+# Build architecture-dependent files here. -+binary-arch: build install -+ dh_testdir -+ dh_testroot -+ dh_installchangelogs NEWS -+ # dh_strip -+ dh_compress -+ dh_fixperms -+ dh_installdeb -+ dh_shlibdeps -+ dh_gencontrol -+ dh_md5sums -+ dh_builddeb -+ -+binary: binary-indep binary-arch -+.PHONY: build clean binary-indep binary-arch binary install install-stamp -diff -Naur ncurses-5.9/package/debian-mingw64/source/format ncurses-5.9.patch/package/debian-mingw64/source/format ---- ncurses-5.9/package/debian-mingw64/source/format 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw64/source/format 2014-09-01 16:33:22.519792399 +0200 -@@ -0,0 +1 @@ -+3.0 (quilt) -diff -Naur ncurses-5.9/package/debian-mingw64/watch ncurses-5.9.patch/package/debian-mingw64/watch ---- ncurses-5.9/package/debian-mingw64/watch 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/debian-mingw64/watch 2014-09-01 16:33:22.519792399 +0200 -@@ -0,0 +1,4 @@ -+version=3 -+ -+opts=passive ftp://invisible-island.net/ncurses/current/ncurses\.tar.gz \ -+ debian uupdate -diff -Naur ncurses-5.9/package/mingw-ncurses.nsi ncurses-5.9.patch/package/mingw-ncurses.nsi ---- ncurses-5.9/package/mingw-ncurses.nsi 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/mingw-ncurses.nsi 2014-09-01 16:34:19.497887066 +0200 -@@ -0,0 +1,190 @@ -+; $Id: mingw-ncurses.nsi,v 1.33 2014/03/23 20:59:54 tom Exp $ -+ -+; TODO add examples -+; TODO bump ABI to 6 -+ -+; Define the application name -+!define APPNAME "ncurses" -+!define EXENAME "ncurses.exe" -+ -+!define VERSION_MAJOR "5" -+!define VERSION_MINOR "9" -+!define VERSION_YYYY "2014" -+!define VERSION_MMDD "0323" -+!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD} -+ -+!define MY_ABI "5" -+!define MY_MODEL "w" -+ -+!define SUBKEY "ncurses" -+ -+!define INSTALL "${APPNAME} (Console)" -+!define VERSION ${VERSION_MAJOR}.${VERSION_MINOR} -+!define VERSION_FULL ${VERSION}-${VERSION_PATCH} -+ -+; Main Install settings -+Name "${INSTALL}" -+InstallDir "c:\mingw" -+InstallDirRegKey HKLM "Software\${SUBKEY}" "$INSTDIR\bin" -+OutFile "NSIS-Output\${APPNAME}-${VERSION_FULL}-setup.exe" -+ -+CRCCheck on -+SetCompressor /SOLID lzma -+ -+VIAddVersionKey ProductName "${SUBKEY}" -+VIAddVersionKey CompanyName "http://invisible-island.net" -+VIAddVersionKey FileDescription "NCurses Installer (MinGW)" -+VIAddVersionKey FileVersion ${VERSION_FULL} -+VIAddVersionKey ProductVersion ${VERSION_FULL} -+VIAddVersionKey Comments "This installer was built with NSIS and cross-compiling to MinGW." -+VIAddVersionKey InternalName "${APPNAME}-${VERSION_FULL}-setup.exe" -+; This is a dotted set of numbers limited to 16-bits each -+VIProductVersion "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_YYYY}.${VERSION_MMDD}" -+ -+; Modern interface settings -+!include "MUI.nsh" -+ -+!define MUI_ABORTWARNING -+;!define MUI_FINISHPAGE_RUN -+;"$INSTDIR\bin\${EXENAME}" -+ -+!insertmacro MUI_PAGE_WELCOME -+!insertmacro MUI_PAGE_LICENSE "..\COPYING" -+!insertmacro MUI_PAGE_COMPONENTS -+!insertmacro MUI_PAGE_DIRECTORY -+!insertmacro MUI_PAGE_INSTFILES -+!insertmacro MUI_PAGE_FINISH -+ -+!insertmacro MUI_UNPAGE_CONFIRM -+!insertmacro MUI_UNPAGE_INSTFILES -+ -+; Set languages (first is default language) -+!insertmacro MUI_LANGUAGE "English" -+!insertmacro MUI_RESERVEFILE_LANGDLL -+ -+InstType "Full" ; SectionIn 1 -+InstType "Typical" ; SectionIn 2 -+InstType "Minimal" ; SectionIn 3 -+ -+Section "${APPNAME}" Section1 -+ -+ SectionIn 1 2 3 -+ -+ ; Set Section properties -+ SetOverwrite on -+ -+ ; Set Section Files and Shortcuts -+ SetOutPath "$INSTDIR\bin" -+ -+ File ".\bin\*.dll" -+ -+ SetOutPath "$INSTDIR\share\${APPNAME}" -+ File /oname=README.txt "..\README" -+ File /oname=README-mingw.txt "..\README.mingw" -+ -+ CreateDirectory "$SMPROGRAMS\${INSTALL}" -+ CreateShortCut "$SMPROGRAMS\${INSTALL}\${APPNAME}.lnk" "$INSTDIR\bin\${EXENAME}" -+ CreateShortCut "$SMPROGRAMS\${INSTALL}\Uninstall.lnk" "$INSTDIR\uninstall.exe" -+ -+SectionEnd -+ -+Section "development" Section2 -+ -+ SectionIn 1 2 -+ -+ ; Set Section properties -+ SetOverwrite on -+ -+ ; Set Section Files and Shortcuts -+ SetOutPath "$INSTDIR\share\${APPNAME}" -+ -+ SetOutPath "$INSTDIR\include\${APPNAME}${MY_MODEL}" -+ -+ File ".\include\${APPNAME}${MY_MODEL}\*.h" -+ -+ SetOutPath "$INSTDIR\lib" -+ -+ File ".\lib\*.a" -+ -+SectionEnd -+ -+Section "examples" Section3 -+ -+ SectionIn 1 -+ -+ ; Set Section properties -+ SetOverwrite on -+ -+ ; Set Section Files and Shortcuts -+ SetOutPath "$INSTDIR\lib\${APPNAME}" -+ -+SectionEnd -+ -+Section -FinishSection -+ -+ WriteRegStr HKLM "Software\${SUBKEY}" "" "$INSTDIR" -+ WriteRegStr HKLM "Software\${SUBKEY}" "Environment" "" -+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${INSTALL}" "DisplayName" "${APPNAME} ${VERSION_FULL} (Console)" -+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${INSTALL}" "UninstallString" "$INSTDIR\uninstall.exe" -+ WriteUninstaller "$INSTDIR\uninstall.exe" -+ -+SectionEnd -+ -+; Modern install component descriptions -+!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN -+ !insertmacro MUI_DESCRIPTION_TEXT ${Section1} "${SUBKEY} runtime" -+ !insertmacro MUI_DESCRIPTION_TEXT ${Section2} "Development headers and libraries" -+ !insertmacro MUI_DESCRIPTION_TEXT ${Section3} "Examples" -+!insertmacro MUI_FUNCTION_DESCRIPTION_END -+ -+;Uninstall section -+Section Uninstall -+ -+ ;Remove from registry... -+ DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${INSTALL}" -+ DeleteRegKey HKLM "SOFTWARE\${SUBKEY}" -+ -+ ; Delete self -+ Delete "$INSTDIR\uninstall.exe" -+ -+ ; Delete Shortcuts -+ Delete "$SMPROGRAMS\${INSTALL}\${APPNAME}.lnk" -+ Delete "$SMPROGRAMS\${INSTALL}\Uninstall.lnk" -+ -+ ; Clean up application -+ Delete "$INSTDIR\bin\libform${MY_MODEL}${MY_ABI}.dll" -+ Delete "$INSTDIR\bin\libmenu${MY_MODEL}${MY_ABI}.dll" -+ Delete "$INSTDIR\bin\libncurses++${MY_MODEL}${MY_ABI}.dll" -+ Delete "$INSTDIR\bin\libncurses${MY_MODEL}${MY_ABI}.dll" -+ Delete "$INSTDIR\bin\libpanel${MY_MODEL}${MY_ABI}.dll" -+ -+ Delete "$INSTDIR\include\${APPNAME}${MY_MODEL}\*.h" -+ -+ Delete "$INSTDIR\lib\libform${MY_MODEL}.a" -+ Delete "$INSTDIR\lib\libmenu${MY_MODEL}.a" -+ Delete "$INSTDIR\lib\libncurses++${MY_MODEL}.a" -+ Delete "$INSTDIR\lib\libncurses${MY_MODEL}.a" -+ Delete "$INSTDIR\lib\libpanel${MY_MODEL}.a" -+ -+ Delete "$INSTDIR\lib\libform${MY_MODEL}.dll.a" -+ Delete "$INSTDIR\lib\libmenu${MY_MODEL}.dll.a" -+ Delete "$INSTDIR\lib\libncurses++${MY_MODEL}.dll.a" -+ Delete "$INSTDIR\lib\libncurses${MY_MODEL}.dll.a" -+ Delete "$INSTDIR\lib\libpanel${MY_MODEL}.dll.a" -+ -+ Delete "$INSTDIR\lib\${APPNAME}\*.exe" -+ -+ Delete "$INSTDIR\share\${APPNAME}\*.*" -+ -+ ; Remove remaining directories -+ RMDir "$SMPROGRAMS\${INSTALL}" -+ RMDir "$INSTDIR\share\${APPNAME}" -+ RMDir "$INSTDIR\share" -+ RMDir "$INSTDIR\lib\${APPNAME}" -+ RMDir "$INSTDIR\lib" -+ RMDir "$INSTDIR\include\${APPNAME}${MY_MODEL}" -+ RMDir "$INSTDIR\include" -+ RMDir "$INSTDIR\bin" -+ RMDir "$INSTDIR\" -+ -+SectionEnd -\ Kein Zeilenumbruch am Dateiende. -diff -Naur ncurses-5.9/package/mingw-ncurses.spec ncurses-5.9.patch/package/mingw-ncurses.spec ---- ncurses-5.9/package/mingw-ncurses.spec 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/mingw-ncurses.spec 2014-09-01 16:34:19.497887066 +0200 -@@ -0,0 +1,126 @@ -+%?mingw_package_header -+ -+Summary: shared libraries for terminal handling -+Name: mingw32-ncurses6 -+Version: 5.9 -+Release: 20140323 -+License: X11 -+Group: Development/Libraries -+Source: ncurses-%{version}-%{release}.tgz -+# URL: http://invisible-island.net/ncurses/ -+ -+BuildRequires: mingw32-filesystem >= 95 -+BuildRequires: mingw32-gcc -+BuildRequires: mingw32-binutils -+ -+BuildRequires: mingw64-filesystem >= 95 -+BuildRequires: mingw64-gcc -+BuildRequires: mingw64-binutils -+ -+%define CC_NORMAL -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion -+%define CC_STRICT %{CC_NORMAL} -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic -+ -+%description -n mingw32-ncurses6 -+Cross-compiling support for ncurses to mingw32. -+ -+The ncurses library routines are a terminal-independent method of -+updating character screens with reasonable optimization. -+ -+This package is used for testing ABI 6 with cross-compiles to MinGW. -+ -+%package -n mingw64-ncurses6 -+Summary: Curses library for MinGW64 -+ -+%description -n mingw64-ncurses6 -+Cross-compiling support for ncurses to mingw64. -+ -+The ncurses library routines are a terminal-independent method of -+updating character screens with reasonable optimization. -+ -+This package is used for testing ABI 6 with cross-compiles to MinGW. -+ -+%prep -+ -+%define CFG_OPTS \\\ -+ --disable-echo \\\ -+ --disable-db-install \\\ -+ --disable-getcap \\\ -+ --disable-hard-tabs \\\ -+ --disable-leaks \\\ -+ --disable-macros \\\ -+ --disable-overwrite \\\ -+ --disable-termcap \\\ -+ --enable-const \\\ -+ --enable-ext-colors \\\ -+ --enable-ext-mouse \\\ -+ --enable-interop \\\ -+ --enable-sp-funcs \\\ -+ --enable-term-driver \\\ -+ --enable-warnings \\\ -+ --enable-widec \\\ -+ --verbose \\\ -+ --with-cxx-shared \\\ -+ --with-develop \\\ -+ --with-fallbacks=unknown,rxvt \\\ -+ --with-shared \\\ -+ --with-tparm-arg=intptr_t \\\ -+ --with-trace \\\ -+ --with-xterm-kbs=DEL \\\ -+ --without-ada \\\ -+ --without-debug \\\ -+ --with-install-prefix=$RPM_BUILD_ROOT \\\ -+ --without-manpages \\\ -+ --without-progs \\\ -+ --without-tests -+ -+%define debug_package %{nil} -+%setup -q -n ncurses-%{version}-%{release} -+ -+%build -+mkdir BUILD-W32 -+pushd BUILD-W32 -+CFLAGS="%{CC_NORMAL}" \ -+CC=%{mingw32_cc} \ -+%mingw32_configure %{CFG_OPTS} -+make -+popd -+ -+mkdir BUILD-W64 -+pushd BUILD-W64 -+CFLAGS="%{CC_NORMAL}" \ -+CC=%{mingw64_cc} \ -+%mingw64_configure %{CFG_OPTS} -+make -+popd -+ -+%install -+rm -rf $RPM_BUILD_ROOT -+ -+pushd BUILD-W32 -+%{mingw32_make} install -+popd -+ -+pushd BUILD-W64 -+%{mingw64_make} install -+popd -+ -+%clean -+rm -rf $RPM_BUILD_ROOT -+ -+%files -+%defattr(-,root,root,-) -+ -+%files -n mingw32-ncurses6 -+%{mingw32_bindir}/* -+%{mingw32_includedir}/* -+%{mingw32_libdir}/* -+ -+%files -n mingw64-ncurses6 -+%{mingw64_bindir}/* -+%{mingw64_includedir}/* -+%{mingw64_libdir}/* -+ -+%changelog -+ -+* Sat Aug 03 2013 Thomas E. Dickey -+- initial version, using mingw-pdcurses package as a guide. -diff -Naur ncurses-5.9/package/ncurses.spec ncurses-5.9.patch/package/ncurses.spec ---- ncurses-5.9/package/ncurses.spec 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/package/ncurses.spec 2014-09-01 16:34:19.498887062 +0200 -@@ -0,0 +1,94 @@ -+Summary: shared libraries for terminal handling -+Name: ncurses6 -+Version: 5.9 -+Release: 20140323 -+License: X11 -+Group: Development/Libraries -+Source: ncurses-%{version}-%{release}.tgz -+# URL: http://invisible-island.net/ncurses/ -+ -+%define CC_NORMAL -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion -+%define CC_STRICT %{CC_NORMAL} -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic -+ -+%define _prefix /usr/local/ncurses6 -+%define MYDATA /usr/local/ncurses/share/terminfo -+ -+%description -+The ncurses library routines are a terminal-independent method of -+updating character screens with reasonable optimization. -+ -+This package is used for testing ABI 6. -+ -+%prep -+ -+%define debug_package %{nil} -+%setup -q -n ncurses-%{version}-%{release} -+ -+%build -+CFLAGS="%{CC_NORMAL}" \ -+RPATH_LIST=../lib:%{_prefix}/lib \ -+%configure \ -+ --target %{_target_platform} \ -+ --prefix=%{_prefix} \ -+ --includedir='${prefix}/include' \ -+ --with-default-terminfo-dir=%{MYDATA} \ -+ --with-install-prefix=$RPM_BUILD_ROOT \ -+ --with-terminfo-dirs=%{MYDATA}:/usr/share/terminfo \ -+ --disable-echo \ -+ --disable-getcap \ -+ --disable-leaks \ -+ --disable-macros \ -+ --disable-overwrite \ -+ --disable-termcap \ -+ --enable-const \ -+ --enable-ext-colors \ -+ --enable-ext-mouse \ -+ --enable-hard-tabs \ -+ --enable-interop \ -+ --enable-rpath \ -+ --enable-sp-funcs \ -+ --enable-warnings \ -+ --enable-widec \ -+ --verbose \ -+ --with-chtype=uint32_t \ -+ --with-mmask_t=uint32_t \ -+ --with-develop \ -+ --with-shared \ -+ --with-termlib \ -+ --with-ticlib \ -+ --with-trace \ -+ --with-cxx-shared \ -+ --with-xterm-kbs=DEL \ -+ --without-ada \ -+ --without-debug \ -+ --without-normal -+ -+make -+ -+%install -+rm -rf $RPM_BUILD_ROOT -+ -+make install.libs install.progs -+rm -f test/ncurses -+( cd test && make ncurses LOCAL_LIBDIR=%{_libdir} && mv ncurses $RPM_BUILD_ROOT/%{_bindir}/ncurses6 ) -+ -+%clean -+rm -rf $RPM_BUILD_ROOT -+ -+%files -+%defattr(-,root,root,-) -+%{_bindir}/* -+%{_includedir}/* -+%{_libdir}/* -+#%{_datadir}/* -+ -+%changelog -+ -+* Sat Mar 09 2013 Thomas E. Dickey -+- add --with-cxx-shared option to demonstrate c++ binding as shared library -+ -+* Sat Oct 27 2012 Thomas E. Dickey -+- add ncurses program as "ncurses6" to provide demonstration. -+ -+* Fri Jun 08 2012 Thomas E. Dickey -+- initial version. -diff -Naur ncurses-5.9/panel/Makefile.in ncurses-5.9.patch/panel/Makefile.in ---- ncurses-5.9/panel/Makefile.in 2010-11-27 22:45:27.000000000 +0100 -+++ ncurses-5.9.patch/panel/Makefile.in 2014-09-01 16:33:22.520792399 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.58 2010/11/27 21:45:27 tom Exp $ -+# $Id: Makefile.in,v 1.62 2013/08/04 20:23:32 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -57,7 +57,11 @@ - bindir = @bindir@ - libdir = @libdir@ - includedir = @includedir@ -+datarootdir = @datarootdir@ - datadir = @datadir@ -+includesubdir = @includesubdir@ -+ -+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir) - - LIBTOOL = @LIBTOOL@ - LIBTOOL_CLEAN = @LIB_CLEAN@ -@@ -103,6 +107,7 @@ - SHLIB_DIRS = -L../lib - SHLIB_LIST = $(SHLIB_DIRS) -lncurses@LIB_SUFFIX@ @SHLIB_LIST@ - -+RPATH_LIST = @RPATH_LIST@ - MK_SHARED_LIB = @MK_SHARED_LIB@ - - NCURSES_MAJOR = @NCURSES_MAJOR@ -@@ -112,7 +117,7 @@ - - RANLIB = @LIB_PREP@ - --LIBRARIES = @LIBS_TO_MAKE@ -+LIBRARIES = @Libs_To_Make@ - - LINT = @LINT@ - LINT_OPTS = @LINT_OPTS@ -diff -Naur ncurses-5.9/panel/p_above.c ncurses-5.9.patch/panel/p_above.c ---- ncurses-5.9/panel/p_above.c 2010-01-23 22:22:15.000000000 +0100 -+++ ncurses-5.9.patch/panel/p_above.c 2014-09-01 16:33:22.520792399 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,13 +36,13 @@ - */ - #include "panel.priv.h" - --MODULE_ID("$Id: p_above.c,v 1.8 2010/01/23 21:22:15 tom Exp $") -+MODULE_ID("$Id: p_above.c,v 1.9 2012/03/10 23:43:41 tom Exp $") - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(PANEL *) - ground_panel(SCREEN * sp) - { -- T((T_CALLED("ground_panel(%p)"), sp)); -+ T((T_CALLED("ground_panel(%p)"), (void *)sp)); - if (sp) - { - struct panelhook *ph = NCURSES_SP_NAME(_nc_panelhook) (sp); -diff -Naur ncurses-5.9/panel/panel.c ncurses-5.9.patch/panel/panel.c ---- ncurses-5.9/panel/panel.c 2010-01-23 22:22:16.000000000 +0100 -+++ ncurses-5.9.patch/panel/panel.c 2014-09-01 16:33:22.520792399 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,7 +36,7 @@ - /* panel.c -- implementation of panels library, some core routines */ - #include "panel.priv.h" - --MODULE_ID("$Id: panel.c,v 1.25 2010/01/23 21:22:16 tom Exp $") -+MODULE_ID("$Id: panel.c,v 1.26 2012/02/23 10:02:15 tom Exp $") - - /*+------------------------------------------------------------------------- - _nc_retrace_panel (pan) -@@ -61,9 +61,9 @@ - char temp[32]; - - if (ptr != 0) -- sprintf(temp, "ptr:%p", ptr); -+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "ptr:%p", ptr); - else -- strcpy(temp, "<null>"); -+ _nc_STRCPY(temp, "<null>", sizeof(temp)); - return _nc_visbuf(temp); - } - #endif -@@ -95,7 +95,7 @@ - - GetPanelHook(pan); - -- sprintf(s80, fmt, num, pan); -+ _nc_SPRINTF(s80, _nc_SLIMIT(sizeof(s80)) fmt, num, pan); - _tracef("%s b=%s t=%s", s80, - (_nc_bottom_panel) ? USER_PTR(_nc_bottom_panel->user) : "--", - (_nc_top_panel) ? USER_PTR(_nc_top_panel->user) : "--"); -@@ -143,7 +143,7 @@ - { - char s80[80]; - -- sprintf(s80, "Touchline s=%d c=%d", start, count); -+ _nc_SPRINTF(s80, _nc_SLIMIT(sizeof(s80)) "Touchline s=%d c=%d", start, count); - dPanel(s80, pan); - touchline(pan->win, start, count); - } -diff -Naur ncurses-5.9/panel/panel.priv.h ncurses-5.9.patch/panel/panel.priv.h ---- ncurses-5.9/panel/panel.priv.h 2009-04-11 22:33:55.000000000 +0200 -+++ ncurses-5.9.patch/panel/panel.priv.h 2014-09-01 16:33:22.521792398 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - --/* $Id: panel.priv.h,v 1.23 2009/04/11 20:33:55 tom Exp $ */ -+/* $Id: panel.priv.h,v 1.25 2012/12/15 23:57:43 tom Exp $ */ - - #ifndef NCURSES_PANEL_PRIV_H - #define NCURSES_PANEL_PRIV_H 1 -@@ -89,7 +89,7 @@ - #define GetScreenHook(sp) \ - struct panelhook* ph = NCURSES_SP_NAME(_nc_panelhook)(sp) - #define GetPanelHook(pan) \ -- GetScreenHook(_nc_screen_of((pan)->win)) -+ GetScreenHook(pan ? _nc_screen_of((pan)->win) : 0) - #define GetWindowHook(win) \ - SCREEN* sp = _nc_screen_of(win); \ - GetScreenHook(sp) -@@ -160,7 +160,7 @@ - ---------------------------------------------------------------------------*/ - #define PANEL_UPDATE(pan,panstart)\ - { PANEL* pan2 = ((panstart) ? (panstart) : _nc_bottom_panel);\ -- while(pan2) {\ -+ while(pan2 && pan2->win) {\ - if ((pan2 != pan) && PANELS_OVERLAPPED(pan,pan2)) {\ - int y, ix1, ix2, iy1, iy2;\ - COMPUTE_INTERSECTION(pan, pan2, ix1, ix2, iy1, iy2);\ -diff -Naur ncurses-5.9/panel/p_below.c ncurses-5.9.patch/panel/p_below.c ---- ncurses-5.9/panel/p_below.c 2010-01-23 22:22:15.000000000 +0100 -+++ ncurses-5.9.patch/panel/p_below.c 2014-09-01 16:33:22.520792399 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -36,13 +36,13 @@ - */ - #include "panel.priv.h" - --MODULE_ID("$Id: p_below.c,v 1.8 2010/01/23 21:22:15 tom Exp $") -+MODULE_ID("$Id: p_below.c,v 1.9 2012/03/10 23:43:41 tom Exp $") - - #if NCURSES_SP_FUNCS - NCURSES_EXPORT(PANEL *) - ceiling_panel(SCREEN * sp) - { -- T((T_CALLED("ceiling_panel(%p)"), sp)); -+ T((T_CALLED("ceiling_panel(%p)"), (void *)sp)); - if (sp) - { - struct panelhook *ph = NCURSES_SP_NAME(_nc_panelhook) (sp); -diff -Naur ncurses-5.9/progs/capconvert ncurses-5.9.patch/progs/capconvert ---- ncurses-5.9/progs/capconvert 2006-04-22 23:46:17.000000000 +0200 -+++ ncurses-5.9.patch/progs/capconvert 2014-09-01 16:33:22.521792398 +0200 -@@ -1,6 +1,6 @@ - #!/bin/sh - ############################################################################## --# Copyright (c) 1998,2006 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2006,2011 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -26,7 +26,7 @@ - # use or other dealings in this Software without prior written # - # authorization. # - ############################################################################## --# $Id: capconvert,v 1.4 2006/04/22 21:46:17 tom Exp $ -+# $Id: capconvert,v 1.5 2011/11/12 23:28:07 Robert.Millan Exp $ - # - # capconvert -- automated conversion from termcap to terminfo - # -@@ -77,16 +77,18 @@ - # Assumes the terminfo master covers all canned terminal types - exit; - fi -- if test "$TERM" = "xterm" -- then -+ case $TERM in -+ xterm | xterm-*) - echo "You are running xterm, which usually sets TERMCAP itself." - echo "We can ignore this, because terminfo knows about xterm." - echo "So you will just use the system-wide terminfo tree." -- exit; -- else -+ exit -+ ;; -+ *) - echo "We will have to make a local one for you anyway, to capture the effect" - echo "of your TERMCAP variable." -- fi -+ ;; -+ esac - else - echo "No system-wide terminfo tree. We will make you a local one." - fi -@@ -109,7 +111,7 @@ - for x in $PATH . - do - if test $OPT $x/tic -- then -+ then - TIC=$x/tic - break - fi -@@ -141,7 +143,7 @@ - then - echo "It appears you already have a private terminfo directory" - echo "at $HOME/.terminfo; this seems odd, because TERMINFO" -- echo "is not defined. I am not going to second-guess this -- if you" -+ echo "is not defined. I am not going to second-guess this -- if you" - echo "really want me to try auto-configuring for you, remove or" - echo "rename $HOME/terminfo and run me again." - exit; -@@ -214,7 +216,7 @@ - # - echo "You now have a private tree under $HOME/.terminfo;" - echo "the ncurses library will automatically read from it," --echo "and ncurses tic will automatically compile entries to it." -+echo "and ncurses tic will automatically compile entries to it." - - # We're done unless user has a .termcap file or equivalent named by TERMCAP - if test -z "$TERMCAP" -@@ -235,7 +237,7 @@ - echo "Done." - echo "Note that editing $HOME/.termcap will no longer change the data curses sees." - elif test -f "$TERMCAP" --then -+then - echo "Your TERMCAP names the file $TERMCAP. I will compile that." - eval $TIC $TERMCAP - echo "Done." -diff -Naur ncurses-5.9/progs/clear.c ncurses-5.9.patch/progs/clear.c ---- ncurses-5.9/progs/clear.c 2007-10-14 00:16:02.000000000 +0200 -+++ ncurses-5.9.patch/progs/clear.c 2014-09-01 16:33:22.521792398 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2006,2007 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2007,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - #define USE_LIBTINFO - #include <progs.priv.h> - --MODULE_ID("$Id: clear.c,v 1.11 2007/10/13 22:16:02 tom Exp $") -+MODULE_ID("$Id: clear.c,v 1.13 2013/06/22 22:20:54 tom Exp $") - - static int - putch(int c) -@@ -52,7 +52,15 @@ - int argc GCC_UNUSED, - char *argv[]GCC_UNUSED) - { -+ char *E3; -+ - setupterm((char *) 0, STDOUT_FILENO, (int *) 0); -+ -+ /* Clear the scrollback buffer if possible. */ -+ E3 = tigetstr("E3"); -+ if (E3) -+ (void) tputs(E3, lines > 0 ? lines : 1, putch); -+ - ExitProgram((tputs(clear_screen, lines > 0 ? lines : 1, putch) == ERR) - ? EXIT_FAILURE - : EXIT_SUCCESS); -diff -Naur ncurses-5.9/progs/dump_entry.c ncurses-5.9.patch/progs/dump_entry.c ---- ncurses-5.9/progs/dump_entry.c 2010-05-02 00:04:08.000000000 +0200 -+++ ncurses-5.9.patch/progs/dump_entry.c 2014-09-01 16:33:22.521792398 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -39,7 +39,7 @@ - #include "termsort.c" /* this C file is generated */ - #include <parametrized.h> /* so is this */ - --MODULE_ID("$Id: dump_entry.c,v 1.89 2010/05/01 22:04:08 tom Exp $") -+MODULE_ID("$Id: dump_entry.c,v 1.111 2013/12/15 01:05:20 tom Exp $") - - #define INDENT 8 - #define DISCARD(string) string = ABSENT_STRING -@@ -57,6 +57,7 @@ - static int outform; /* output format to use */ - static int sortmode; /* sort mode to use */ - static int width = 60; /* max line width for listings */ -+static int height = 65535; /* max number of lines for listings */ - static int column; /* current column, limited by 'width' */ - static int oldcol; /* last value of column before wrap */ - static bool pretty; /* true if we format if-then-else strings */ -@@ -72,7 +73,7 @@ - static NCURSES_CONST char *const *num_names; - static NCURSES_CONST char *const *str_names; - --static const char *separator, *trailer; -+static const char *separator = "", *trailer = ""; - - /* cover various ports and variants of terminfo */ - #define V_ALLCAPS 0 /* all capabilities (SVr4, XSI, ncurses) */ -@@ -99,6 +100,15 @@ - #define StrIndirect(j) ((sortmode == S_NOSORT) ? (j) : str_indirect[j]) - #endif - -+static void failed(const char *) GCC_NORETURN; -+ -+static void -+failed(const char *s) -+{ -+ perror(s); -+ ExitProgram(EXIT_FAILURE); -+} -+ - static void - strncpy_DYN(DYNBUF * dst, const char *src, size_t need) - { -@@ -106,6 +116,8 @@ - if (want > dst->size) { - dst->size += (want + 1024); /* be generous */ - dst->text = typeRealloc(char, dst->size, dst->text); -+ if (dst->text == 0) -+ failed("strncpy_DYN"); - } - (void) strncpy(dst->text + dst->used, src, need); - dst->used += need; -@@ -172,11 +184,17 @@ - } - - void --dump_init(const char *version, int mode, int sort, int twidth, int traceval, -+dump_init(const char *version, -+ int mode, -+ int sort, -+ int twidth, -+ int theight, -+ unsigned traceval, - bool formatted) - /* set up for entry display */ - { - width = twidth; -+ height = theight; - pretty = formatted; - - /* versions */ -@@ -201,7 +219,7 @@ - bool_names = boolnames; - num_names = numnames; - str_names = strnames; -- separator = twidth ? ", " : ","; -+ separator = (twidth > 0 && theight > 1) ? ", " : ","; - trailer = "\n\t"; - break; - -@@ -209,7 +227,7 @@ - bool_names = boolfnames; - num_names = numfnames; - str_names = strfnames; -- separator = twidth ? ", " : ","; -+ separator = (twidth > 0 && theight > 1) ? ", " : ","; - trailer = "\n\t"; - break; - -@@ -291,7 +309,11 @@ - static void set_obsolete_termcaps(TERMTYPE *tp); - - /* is this the index of a function key string? */ --#define FNKEY(i) (((i)<= 65 && (i)>= 75) || ((i)<= 216 && (i)>= 268)) -+#define FNKEY(i) \ -+ (((i) >= STR_IDX(key_f0) && \ -+ (i) <= STR_IDX(key_f9)) || \ -+ ((i) >= STR_IDX(key_f11) && \ -+ (i) <= STR_IDX(key_f63))) - - /* - * If we configure with a different Caps file, the offsets into the arrays -@@ -393,8 +415,8 @@ - static void - wrap_concat(const char *src) - { -- unsigned need = strlen(src); -- unsigned want = strlen(separator) + need; -+ size_t need = strlen(src); -+ size_t want = strlen(separator) + need; - - if (column > INDENT - && column + (int) want > width) { -@@ -445,7 +467,7 @@ - int n; - - for (n = 0; n < level; n++) -- strncpy_DYN(buffer, "\t", 1); -+ strncpy_DYN(buffer, "\t", (size_t) 1); - } - - static bool -@@ -458,9 +480,9 @@ - bool params = FALSE; - - for (n = 0; n < len - 1; ++n) { -- if (!strncmp(src + n, "%p", 2)) { -+ if (!strncmp(src + n, "%p", (size_t) 2)) { - params = TRUE; -- } else if (!strncmp(src + n, "%;", 2)) { -+ } else if (!strncmp(src + n, "%;", (size_t) 2)) { - ifthen = TRUE; - result = params; - break; -@@ -473,7 +495,7 @@ - } - - static char * --fmt_complex(char *src, int level) -+fmt_complex(TERMTYPE *tterm, const char *capability, char *src, int level) - { - bool percent = FALSE; - bool params = has_params(src); -@@ -482,7 +504,7 @@ - switch (*src) { - case '\\': - percent = FALSE; -- strncpy_DYN(&tmpbuf, src++, 1); -+ strncpy_DYN(&tmpbuf, src++, (size_t) 1); - break; - case '%': - percent = TRUE; -@@ -496,26 +518,28 @@ - /* treat a "%e" as else-if, on the same level */ - if (*src == 'e') { - indent_DYN(&tmpbuf, level); -- strncpy_DYN(&tmpbuf, "%", 1); -- strncpy_DYN(&tmpbuf, src, 1); -+ strncpy_DYN(&tmpbuf, "%", (size_t) 1); -+ strncpy_DYN(&tmpbuf, src, (size_t) 1); - src++; - params = has_params(src); - if (!params && *src != '\0' && *src != '%') { -- strncpy_DYN(&tmpbuf, "\n", 1); -+ strncpy_DYN(&tmpbuf, "\n", (size_t) 1); - indent_DYN(&tmpbuf, level + 1); - } - } else { - indent_DYN(&tmpbuf, level + 1); -- strncpy_DYN(&tmpbuf, "%", 1); -- strncpy_DYN(&tmpbuf, src, 1); -+ strncpy_DYN(&tmpbuf, "%", (size_t) 1); -+ strncpy_DYN(&tmpbuf, src, (size_t) 1); - if (*src++ == '?') { -- src = fmt_complex(src, level + 1); -+ src = fmt_complex(tterm, capability, src, level + 1); - if (*src != '\0' && *src != '%') { -- strncpy_DYN(&tmpbuf, "\n", 1); -+ strncpy_DYN(&tmpbuf, "\n", (size_t) 1); - indent_DYN(&tmpbuf, level + 1); - } - } else if (level == 1) { -- _nc_warning("%%%c without %%?", *src); -+ _nc_warning("%s: %%%c without %%? in %s", -+ _nc_first_name(tterm->term_names), -+ *src, capability); - } - } - continue; -@@ -527,31 +551,39 @@ - if (level > 1) { - tmpbuf.text[tmpbuf.used - 1] = '\n'; - indent_DYN(&tmpbuf, level); -- strncpy_DYN(&tmpbuf, "%", 1); -- strncpy_DYN(&tmpbuf, src++, 1); -+ strncpy_DYN(&tmpbuf, "%", (size_t) 1); -+ strncpy_DYN(&tmpbuf, src++, (size_t) 1); -+ if (src[0] == '%' -+ && src[1] != '\0' -+ && (strchr("?e;", src[1])) == 0) { -+ tmpbuf.text[tmpbuf.used++] = '\n'; -+ indent_DYN(&tmpbuf, level); -+ } - return src; - } -- _nc_warning("%%; without %%?"); -+ _nc_warning("%s: %%; without %%? in %s", -+ _nc_first_name(tterm->term_names), -+ capability); - } - break; - case 'p': - if (percent && params) { - tmpbuf.text[tmpbuf.used - 1] = '\n'; - indent_DYN(&tmpbuf, level + 1); -- strncpy_DYN(&tmpbuf, "%", 1); -+ strncpy_DYN(&tmpbuf, "%", (size_t) 1); - } - params = FALSE; - percent = FALSE; - break; - case ' ': -- strncpy_DYN(&tmpbuf, "\\s", 2); -+ strncpy_DYN(&tmpbuf, "\\s", (size_t) 2); - ++src; - continue; - default: - percent = FALSE; - break; - } -- strncpy_DYN(&tmpbuf, src++, 1); -+ strncpy_DYN(&tmpbuf, src++, (size_t) 1); - } - return src; - } -@@ -562,9 +594,9 @@ - int - fmt_entry(TERMTYPE *tterm, - PredFunc pred, -- bool content_only, -- bool suppress_untranslatable, -- bool infodump, -+ int content_only, -+ int suppress_untranslatable, -+ int infodump, - int numbers) - { - PredIdx i, j; -@@ -593,14 +625,28 @@ - column = INDENT; /* FIXME: workaround to prevent empty lines */ - } else { - strcpy_DYN(&outbuf, tterm->term_names); -+ -+ /* -+ * Colon is legal in terminfo descriptions, but not in termcap. -+ */ -+ if (!infodump) { -+ char *p = outbuf.text; -+ while (*p) { -+ if (*p == ':') { -+ *p = '='; -+ } -+ ++p; -+ } -+ } - strcpy_DYN(&outbuf, separator); - column = (int) outbuf.used; -- force_wrap(); -+ if (height > 1) -+ force_wrap(); - } - - for_each_boolean(j, tterm) { - i = BoolIndirect(j); -- name = ExtBoolname(tterm, i, bool_names); -+ name = ExtBoolname(tterm, (int) i, bool_names); - assert(strlen(name) < sizeof(buffer) - EXTRA_CAP); - - if (!version_filter(BOOLEAN, i)) -@@ -610,21 +656,21 @@ - - predval = pred(BOOLEAN, i); - if (predval != FAIL) { -- (void) strcpy(buffer, name); -+ _nc_STRCPY(buffer, name, sizeof(buffer)); - if (predval <= 0) -- (void) strcat(buffer, "@"); -+ _nc_STRCAT(buffer, "@", sizeof(buffer)); - else if (i + 1 > num_bools) - num_bools = i + 1; - WRAP_CONCAT; - } - } - -- if (column != INDENT) -+ if (column != INDENT && height > 1) - force_wrap(); - - for_each_number(j, tterm) { - i = NumIndirect(j); -- name = ExtNumname(tterm, i, num_names); -+ name = ExtNumname(tterm, (int) i, num_names); - assert(strlen(name) < sizeof(buffer) - EXTRA_CAP); - - if (!version_filter(NUMBER, i)) -@@ -635,9 +681,11 @@ - predval = pred(NUMBER, i); - if (predval != FAIL) { - if (tterm->Numbers[i] < 0) { -- sprintf(buffer, "%s@", name); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "%s@", name); - } else { -- sprintf(buffer, "%s#%d", name, tterm->Numbers[i]); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "%s#%d", name, tterm->Numbers[i]); - if (i + 1 > num_values) - num_values = i + 1; - } -@@ -645,7 +693,7 @@ - } - } - -- if (column != INDENT) -+ if (column != INDENT && height > 1) - force_wrap(); - - len += (int) (num_bools -@@ -670,7 +718,7 @@ - - for_each_string(j, tterm) { - i = StrIndirect(j); -- name = ExtStrname(tterm, i, str_names); -+ name = ExtStrname(tterm, (int) i, str_names); - assert(strlen(name) < sizeof(buffer) - EXTRA_CAP); - - capability = tterm->Strings[i]; -@@ -698,14 +746,14 @@ - if (PRESENT(insert_character) || PRESENT(parm_ich)) { - if (SAME_CAP(i, enter_insert_mode) - && enter_insert_mode == ABSENT_STRING) { -- (void) strcpy(buffer, "im="); -+ _nc_STRCPY(buffer, "im=", sizeof(buffer)); - WRAP_CONCAT; - continue; - } - - if (SAME_CAP(i, exit_insert_mode) - && exit_insert_mode == ABSENT_STRING) { -- (void) strcpy(buffer, "ei="); -+ _nc_STRCPY(buffer, "ei=", sizeof(buffer)); - WRAP_CONCAT; - continue; - } -@@ -739,7 +787,8 @@ - num_strings = i + 1; - - if (!VALID_STRING(capability)) { -- sprintf(buffer, "%s@", name); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "%s@", name); - WRAP_CONCAT; - } else if (outform == F_TERMCAP || outform == F_TCONVERR) { - int params = ((i < (int) SIZEOF(parametrized)) -@@ -750,13 +799,14 @@ - - if (cv == 0) { - if (outform == F_TCONVERR) { -- sprintf(buffer, "%s=!!! %s WILL NOT CONVERT !!!", -- name, srccap); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "%s=!!! %s WILL NOT CONVERT !!!", -+ name, srccap); - } else if (suppress_untranslatable) { - continue; - } else { - char *s = srccap, *d = buffer; -- sprintf(d, "..%s=", name); -+ _nc_SPRINTF(d, _nc_SLIMIT(sizeof(buffer)) "..%s=", name); - d += strlen(d); - while ((*d = *s++) != 0) { - if (*d == ':') { -@@ -769,7 +819,8 @@ - } - } - } else { -- sprintf(buffer, "%s=%s", name, cv); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "%s=%s", name, cv); - } - len += (int) strlen(capability) + 1; - WRAP_CONCAT; -@@ -783,7 +834,7 @@ - if (pretty - && (outform == F_TERMINFO - || outform == F_VARIABLE)) { -- fmt_complex(src, 1); -+ fmt_complex(tterm, name, src, 1); - } else { - strcpy_DYN(&tmpbuf, src); - } -@@ -793,7 +844,9 @@ - } - } - /* e.g., trimmed_sgr0 */ -- if (capability != tterm->Strings[i]) -+ if (capability != ABSENT_STRING && -+ capability != CANCELLED_STRING && -+ capability != tterm->Strings[i]) - free(capability); - } - len += (int) (num_strings * 2); -@@ -805,11 +858,13 @@ - */ - if (tversion == V_HPUX) { - if (VALID_STRING(memory_lock)) { -- (void) sprintf(buffer, "meml=%s", memory_lock); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "meml=%s", memory_lock); - WRAP_CONCAT; - } - if (VALID_STRING(memory_unlock)) { -- (void) sprintf(buffer, "memu=%s", memory_unlock); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "memu=%s", memory_unlock); - WRAP_CONCAT; - } - } else if (tversion == V_AIX) { -@@ -821,7 +876,7 @@ - - tp = boxchars; - for (cp = acstrans; *cp; cp++) { -- sp = strchr(acs_chars, *cp); -+ sp = (strchr) (acs_chars, *cp); - if (sp) - *tp++ = sp[1]; - else { -@@ -832,9 +887,41 @@ - tp[0] = '\0'; - - if (box_ok) { -- (void) strcpy(buffer, "box1="); -- (void) strcat(buffer, _nc_tic_expand(boxchars, -- outform == F_TERMINFO, numbers)); -+ char *tmp = _nc_tic_expand(boxchars, -+ (outform == F_TERMINFO), -+ numbers); -+ _nc_STRCPY(buffer, "box1=", sizeof(buffer)); -+ while (*tmp != '\0') { -+ size_t have = strlen(buffer); -+ size_t next = strlen(tmp); -+ size_t want = have + next + 1; -+ size_t last = next; -+ char save = '\0'; -+ -+ /* -+ * If the expanded string is too long for the buffer, -+ * chop it off and save the location where we chopped it. -+ */ -+ if (want >= sizeof(buffer)) { -+ save = tmp[last]; -+ tmp[last] = '\0'; -+ } -+ _nc_STRCAT(buffer, tmp, sizeof(buffer)); -+ -+ /* -+ * If we chopped the buffer, replace the missing piece and -+ * shift everything to append the remainder. -+ */ -+ if (save != '\0') { -+ next = 0; -+ tmp[last] = save; -+ while ((tmp[next] = tmp[last + next]) != '\0') { -+ ++next; -+ } -+ } else { -+ break; -+ } -+ } - WRAP_CONCAT; - } - } -@@ -846,7 +933,7 @@ - */ - if (outcount) { - bool trimmed = FALSE; -- j = outbuf.used; -+ j = (PredIdx) outbuf.used; - if (j >= 2 - && outbuf.text[j - 1] == '\t' - && outbuf.text[j - 2] == '\n') { -@@ -926,7 +1013,7 @@ - char name[10]; - - for (n = 0; n <= 10; ++n) { -- sprintf(name, "lf%d", n); -+ _nc_SPRINTF(name, _nc_SLIMIT(sizeof(name)) "lf%d", n); - if ((cap = find_string(tterm, name)) != ABSENT_STRING - && kill_string(tterm, cap)) { - target -= (int) (strlen(cap) + 5); -@@ -951,7 +1038,7 @@ - char name[10]; - - for (n = 60; n >= 0; --n) { -- sprintf(name, "kf%d", n); -+ _nc_SPRINTF(name, _nc_SLIMIT(sizeof(name)) "kf%d", n); - if ((cap = find_string(tterm, name)) != ABSENT_STRING - && kill_string(tterm, cap)) { - target -= (int) (strlen(cap) + 5); -@@ -1017,8 +1104,8 @@ - */ - void - dump_entry(TERMTYPE *tterm, -- bool suppress_untranslatable, -- bool limited, -+ int suppress_untranslatable, -+ int limited, - int numbers, - PredFunc pred) - { -@@ -1064,7 +1151,7 @@ - */ - unsigned n; - for (n = STRCOUNT; n < NUM_STRINGS(tterm); n++) { -- const char *name = ExtStrname(tterm, n, strnames); -+ const char *name = ExtStrname(tterm, (int) n, strnames); - - if (VALID_STRING(tterm->Strings[n])) { - set_attributes = ABSENT_STRING; -@@ -1144,21 +1231,45 @@ - - if (outform == F_TERMCAP || outform == F_TCONVERR) - trim_trailing(); -- (void) sprintf(buffer, "%s%s", infodump ? "use=" : "tc=", name); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "%s%s", infodump ? "use=" : "tc=", name); - wrap_concat(buffer); - } - - int - show_entry(void) - { -- trim_trailing(); -+ /* -+ * Trim any remaining whitespace. -+ */ -+ if (outbuf.used != 0) { -+ bool infodump = (outform != F_TERMCAP && outform != F_TCONVERR); -+ char delim = (char) (infodump ? ',' : ':'); -+ int j; -+ -+ for (j = (int) outbuf.used - 1; j > 0; --j) { -+ char ch = outbuf.text[j]; -+ if (ch == '\n') { -+ ; -+ } else if (isspace(UChar(ch))) { -+ outbuf.used = (size_t) j; -+ } else if (!infodump && ch == '\\') { -+ outbuf.used = (size_t) j; -+ } else if (ch == delim && (j == 0 || outbuf.text[j - 1] != '\\')) { -+ outbuf.used = (size_t) (j + 1); -+ } else { -+ break; -+ } -+ } -+ outbuf.text[outbuf.used] = '\0'; -+ } - (void) fputs(outbuf.text, stdout); - putchar('\n'); - return (int) outbuf.used; - } - - void --compare_entry(void (*hook) (PredType t, PredIdx i, const char *name), -+compare_entry(PredHook hook, - TERMTYPE *tp GCC_UNUSED, - bool quiet) - /* compare two entries */ -@@ -1170,7 +1281,7 @@ - fputs(" comparing booleans.\n", stdout); - for_each_boolean(j, tp) { - i = BoolIndirect(j); -- name = ExtBoolname(tp, i, bool_names); -+ name = ExtBoolname(tp, (int) i, bool_names); - - if (isObsolete(outform, name)) - continue; -@@ -1182,7 +1293,7 @@ - fputs(" comparing numbers.\n", stdout); - for_each_number(j, tp) { - i = NumIndirect(j); -- name = ExtNumname(tp, i, num_names); -+ name = ExtNumname(tp, (int) i, num_names); - - if (isObsolete(outform, name)) - continue; -@@ -1194,7 +1305,7 @@ - fputs(" comparing strings.\n", stdout); - for_each_string(j, tp) { - i = StrIndirect(j); -- name = ExtStrname(tp, i, str_names); -+ name = ExtStrname(tp, (int) i, str_names); - - if (isObsolete(outform, name)) - continue; -diff -Naur ncurses-5.9/progs/dump_entry.h ncurses-5.9.patch/progs/dump_entry.h ---- ncurses-5.9/progs/dump_entry.h 2008-07-12 22:23:03.000000000 +0200 -+++ ncurses-5.9.patch/progs/dump_entry.h 2014-09-01 16:33:22.522792397 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2006,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -32,9 +32,8 @@ - * and: Thomas E. Dickey 1996-on * - ****************************************************************************/ - -- - /* -- * $Id: dump_entry.h,v 1.30 2008/07/12 20:23:03 tom Exp $ -+ * $Id: dump_entry.h,v 1.33 2013/12/15 01:08:03 tom Exp $ - * - * Dump control definitions and variables - */ -@@ -64,16 +63,17 @@ - - typedef unsigned PredType; - typedef unsigned PredIdx; --typedef int (*PredFunc)(PredType, PredIdx); -+typedef int (*PredFunc) (PredType, PredIdx); -+typedef void (*PredHook) (PredType, PredIdx, const char *); - - extern NCURSES_CONST char *nametrans(const char *); --extern int fmt_entry(TERMTYPE *, PredFunc, bool, bool, bool, int); -+extern int fmt_entry(TERMTYPE *, PredFunc, int, int, int, int); - extern int show_entry(void); --extern void compare_entry(void (*)(PredType, PredIdx, const char *), TERMTYPE *, bool); --extern void dump_entry(TERMTYPE *, bool, bool, int, PredFunc); --extern void dump_init(const char *, int, int, int, int, bool); -+extern void compare_entry(PredHook, TERMTYPE *, bool); -+extern void dump_entry(TERMTYPE *, int, int, int, PredFunc); -+extern void dump_init(const char *, int, int, int, int, unsigned, bool); - extern void dump_uses(const char *, bool); --extern void repair_acsc(TERMTYPE * tp); -+extern void repair_acsc(TERMTYPE *tp); - - #define FAIL -1 - -diff -Naur ncurses-5.9/progs/infocmp.c ncurses-5.9.patch/progs/infocmp.c ---- ncurses-5.9/progs/infocmp.c 2010-05-02 00:04:08.000000000 +0200 -+++ ncurses-5.9.patch/progs/infocmp.c 2014-09-01 16:33:22.522792397 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -42,7 +42,7 @@ - - #include <dump_entry.h> - --MODULE_ID("$Id: infocmp.c,v 1.105 2010/05/01 22:04:08 tom Exp $") -+MODULE_ID("$Id: infocmp.c,v 1.129 2014/02/01 22:11:03 tom Exp $") - - #define L_CURL "{" - #define R_CURL "}" -@@ -70,8 +70,9 @@ - static const char *s_absent = "NULL"; - static const char *s_cancel = "NULL"; - static const char *tversion; /* terminfo version selected */ --static int itrace; /* trace flag for debugging */ -+static unsigned itrace; /* trace flag for debugging */ - static int mwidth = 60; -+static int mheight = 65535; - static int numbers = 0; /* format "%'char'" to/from "%{number}" */ - static int outform = F_TERMINFO; /* output format */ - static int sortmode; /* sort_mode */ -@@ -86,27 +87,52 @@ - static bool ignorepads; /* ignore pad prefixes when diffing */ - - #if NO_LEAKS -+ -+typedef struct { -+ ENTRY *head; -+ ENTRY *tail; -+} ENTERED; -+ -+static ENTERED *entered; -+ - #undef ExitProgram - static void ExitProgram(int code) GCC_NORETURN; - /* prototype is to get gcc to accept the noreturn attribute */ - static void - ExitProgram(int code) - { -- while (termcount-- > 0) -- _nc_free_termtype(&entries[termcount].tterm); -+ int n; -+ -+ for (n = 0; n < termcount; ++n) { -+ ENTRY *new_head = _nc_head; -+ ENTRY *new_tail = _nc_tail; -+ _nc_head = entered[n].head; -+ _nc_tail = entered[n].tail; -+ _nc_free_entries(entered[n].head); -+ _nc_head = new_head; -+ _nc_tail = new_tail; -+ } - _nc_leaks_dump_entry(); - free(entries); -+ free(entered); - _nc_free_tic(code); - } - #endif - -+static void -+failed(const char *s) -+{ -+ perror(s); -+ ExitProgram(EXIT_FAILURE); -+} -+ - static char * - canonical_name(char *ptr, char *buf) - /* extract the terminal type's primary name */ - { - char *bp; - -- (void) strcpy(buf, ptr); -+ _nc_STRCPY(buf, ptr, NAMESIZE); - if ((bp = strchr(buf, '|')) != 0) - *bp = '\0'; - -@@ -307,13 +333,13 @@ - { - switch (val) { - case ABSENT_NUMERIC: -- strcpy(buf, s_absent); -+ _nc_STRCPY(buf, s_absent, MAX_STRING); - break; - case CANCELLED_NUMERIC: -- strcpy(buf, s_cancel); -+ _nc_STRCPY(buf, s_cancel, MAX_STRING); - break; - default: -- sprintf(buf, "%d", val); -+ _nc_SPRINTF(buf, _nc_SLIMIT(MAX_STRING) "%d", val); - break; - } - } -@@ -323,31 +349,94 @@ - /* display the value of a string capability */ - { - if (val == ABSENT_STRING) -- strcpy(buf, s_absent); -+ _nc_STRCPY(buf, s_absent, MAX_STRING); - else if (val == CANCELLED_STRING) -- strcpy(buf, s_cancel); -+ _nc_STRCPY(buf, s_cancel, MAX_STRING); - else { -- sprintf(buf, "'%.*s'", MAX_STRING - 3, TIC_EXPAND(val)); -+ _nc_SPRINTF(buf, _nc_SLIMIT(MAX_STRING) -+ "'%.*s'", MAX_STRING - 3, TIC_EXPAND(val)); - } - } - -+/* -+ * Show "comparing..." message for the given terminal names. -+ */ -+static void -+show_comparing(char **names) -+{ -+ if (itrace) { -+ switch (compare) { -+ case C_DIFFERENCE: -+ (void) fprintf(stderr, "%s: dumping differences\n", _nc_progname); -+ break; -+ -+ case C_COMMON: -+ (void) fprintf(stderr, "%s: dumping common capabilities\n", _nc_progname); -+ break; -+ -+ case C_NAND: -+ (void) fprintf(stderr, "%s: dumping differences\n", _nc_progname); -+ break; -+ } -+ } -+ if (*names) { -+ printf("comparing %s", *names++); -+ if (*names) { -+ printf(" to %s", *names++); -+ while (*names) { -+ printf(", %s", *names++); -+ } -+ } -+ printf(".\n"); -+ } -+} -+ -+/* -+ * ncurses stores two types of non-standard capabilities: -+ * a) capabilities listed past the "STOP-HERE" comment in the Caps file. -+ * These are used in the terminfo source file to provide data for termcaps, -+ * e.g., when there is no equivalent capability in terminfo, as well as for -+ * widely-used non-standard capabilities. -+ * b) user-definable capabilities, via "tic -x". -+ * -+ * However, if "-x" is omitted from the tic command, both types of -+ * non-standard capability are not loaded into the terminfo database. This -+ * macro is used for limit-checks against the symbols that tic uses to omit -+ * the two types of non-standard entry. -+ */ -+#if NCURSES_XNAMES -+#define check_user_definable(n,limit) if (!_nc_user_definable && (n) > (limit)) break -+#else -+#define check_user_definable(n,limit) if ((n) > (limit)) break -+#endif -+ -+/* -+ * Use these macros to simplify loops on C_COMMON and C_NAND: -+ */ -+#define for_each_entry() while (entries[extra].tterm.term_names) -+#define next_entry (&(entries[extra++].tterm)) -+ - static void - compare_predicate(PredType type, PredIdx idx, const char *name) - /* predicate function to use for entry difference reports */ - { -- register ENTRY *e1 = &entries[0]; -- register ENTRY *e2 = &entries[1]; -- char buf1[MAX_STRING], buf2[MAX_STRING]; -+ ENTRY *e1 = &entries[0]; -+ ENTRY *e2 = &entries[1]; -+ char buf1[MAX_STRING]; -+ char buf2[MAX_STRING]; - int b1, b2; - int n1, n2; - char *s1, *s2; -+ bool found; -+ int extra = 1; - - switch (type) { - case CMP_BOOLEAN: -+ check_user_definable(idx, BOOLWRITE); - b1 = e1->tterm.Booleans[idx]; -- b2 = e2->tterm.Booleans[idx]; - switch (compare) { - case C_DIFFERENCE: -+ b2 = next_entry->Booleans[idx]; - if (!(b1 == ABSENT_BOOLEAN && b2 == ABSENT_BOOLEAN) && b1 != b2) - (void) printf("\t%s: %s%s%s.\n", - name, -@@ -357,45 +446,93 @@ - break; - - case C_COMMON: -- if (b1 == b2 && b1 != ABSENT_BOOLEAN) -- (void) printf("\t%s= %s.\n", name, dump_boolean(b1)); -+ if (b1 != ABSENT_BOOLEAN) { -+ found = TRUE; -+ for_each_entry() { -+ b2 = next_entry->Booleans[idx]; -+ if (b1 != b2) { -+ found = FALSE; -+ break; -+ } -+ } -+ if (found) { -+ (void) printf("\t%s= %s.\n", name, dump_boolean(b1)); -+ } -+ } - break; - - case C_NAND: -- if (b1 == ABSENT_BOOLEAN && b2 == ABSENT_BOOLEAN) -- (void) printf("\t!%s.\n", name); -+ if (b1 == ABSENT_BOOLEAN) { -+ found = TRUE; -+ for_each_entry() { -+ b2 = next_entry->Booleans[idx]; -+ if (b1 != b2) { -+ found = FALSE; -+ break; -+ } -+ } -+ if (found) { -+ (void) printf("\t!%s.\n", name); -+ } -+ } - break; - } - break; - - case CMP_NUMBER: -+ check_user_definable(idx, NUMWRITE); - n1 = e1->tterm.Numbers[idx]; -- n2 = e2->tterm.Numbers[idx]; -- dump_numeric(n1, buf1); -- dump_numeric(n2, buf2); - switch (compare) { - case C_DIFFERENCE: -- if (!((n1 == ABSENT_NUMERIC && n2 == ABSENT_NUMERIC)) && n1 != n2) -+ n2 = next_entry->Numbers[idx]; -+ if (!((n1 == ABSENT_NUMERIC && n2 == ABSENT_NUMERIC)) && n1 != n2) { -+ dump_numeric(n1, buf1); -+ dump_numeric(n2, buf2); - (void) printf("\t%s: %s, %s.\n", name, buf1, buf2); -+ } - break; - - case C_COMMON: -- if (n1 != ABSENT_NUMERIC && n2 != ABSENT_NUMERIC && n1 == n2) -- (void) printf("\t%s= %s.\n", name, buf1); -+ if (n1 != ABSENT_NUMERIC) { -+ found = TRUE; -+ for_each_entry() { -+ n2 = next_entry->Numbers[idx]; -+ if (n1 != n2) { -+ found = FALSE; -+ break; -+ } -+ } -+ if (found) { -+ dump_numeric(n1, buf1); -+ (void) printf("\t%s= %s.\n", name, buf1); -+ } -+ } - break; - - case C_NAND: -- if (n1 == ABSENT_NUMERIC && n2 == ABSENT_NUMERIC) -- (void) printf("\t!%s.\n", name); -+ if (n1 == ABSENT_NUMERIC) { -+ found = TRUE; -+ for_each_entry() { -+ n2 = next_entry->Numbers[idx]; -+ if (n1 != n2) { -+ found = FALSE; -+ break; -+ } -+ } -+ if (found) { -+ (void) printf("\t!%s.\n", name); -+ } -+ } - break; - } - break; - - case CMP_STRING: -+ check_user_definable(idx, STRWRITE); - s1 = e1->tterm.Strings[idx]; -- s2 = e2->tterm.Strings[idx]; - switch (compare) { - case C_DIFFERENCE: -+ s2 = next_entry->Strings[idx]; - if (capcmp(idx, s1, s2)) { - dump_string(s1, buf1); - dump_string(s2, buf2); -@@ -405,13 +542,35 @@ - break; - - case C_COMMON: -- if (s1 && s2 && !capcmp(idx, s1, s2)) -- (void) printf("\t%s= '%s'.\n", name, TIC_EXPAND(s1)); -+ if (s1 != ABSENT_STRING) { -+ found = TRUE; -+ for_each_entry() { -+ s2 = next_entry->Strings[idx]; -+ if (capcmp(idx, s1, s2) != 0) { -+ found = FALSE; -+ break; -+ } -+ } -+ if (found) { -+ (void) printf("\t%s= '%s'.\n", name, TIC_EXPAND(s1)); -+ } -+ } - break; - - case C_NAND: -- if (!s1 && !s2) -- (void) printf("\t!%s.\n", name); -+ if (s1 == ABSENT_STRING) { -+ found = TRUE; -+ for_each_entry() { -+ s2 = next_entry->Strings[idx]; -+ if (s2 != s1) { -+ found = FALSE; -+ break; -+ } -+ } -+ if (found) { -+ (void) printf("\t!%s.\n", name); -+ } -+ } - break; - } - break; -@@ -430,16 +589,37 @@ - break; - - case C_COMMON: -- if (e1->nuses && e2->nuses && useeq(e1, e2)) { -- (void) fputs("\tuse: ", stdout); -- print_uses(e1, stdout); -- fputs(".\n", stdout); -+ if (e1->nuses) { -+ found = TRUE; -+ for_each_entry() { -+ e2 = &entries[extra++]; -+ if (e2->nuses != e1->nuses || !useeq(e1, e2)) { -+ found = FALSE; -+ break; -+ } -+ } -+ if (found) { -+ (void) fputs("\tuse: ", stdout); -+ print_uses(e1, stdout); -+ fputs(".\n", stdout); -+ } - } - break; - - case C_NAND: -- if (!e1->nuses && !e2->nuses) -- (void) printf("\t!use.\n"); -+ if (!e1->nuses) { -+ found = TRUE; -+ for_each_entry() { -+ e2 = &entries[extra++]; -+ if (e2->nuses != e1->nuses) { -+ found = FALSE; -+ break; -+ } -+ } -+ if (found) { -+ (void) printf("\t!use.\n"); -+ } -+ } - break; - } - } -@@ -556,7 +736,7 @@ - } - - static bool --same_param(const char *table, const char *param, unsigned length) -+same_param(const char *table, const char *param, size_t length) - { - bool result = FALSE; - if (strncmp(table, param, length) == 0) { -@@ -581,15 +761,15 @@ - size_t tlen = strlen(ap->from); - - if (same_param(ap->from, ep, tlen)) { -- (void) strcat(dst, ap->to); -+ _nc_STRCAT(dst, ap->to, MAX_TERMINFO_LENGTH); - found = TRUE; - break; - } - } - - if (!found) -- (void) strcat(dst, ep); -- (void) strcat(dst, ";"); -+ _nc_STRCAT(dst, ep, MAX_TERMINFO_LENGTH); -+ _nc_STRCAT(dst, ";", MAX_TERMINFO_LENGTH); - } while - ((ep = strtok((char *) 0, ";"))); - -@@ -608,7 +788,7 @@ - const assoc *ap; - int tp_lines = tp->Numbers[2]; - -- if (cap == ABSENT_STRING || cap == CANCELLED_STRING) -+ if (!VALID_STRING(cap)) - return; - (void) printf("%s: ", name); - -@@ -624,12 +804,13 @@ - for (i = 0; i < STRCOUNT; i++) { - char *cp = tp->Strings[i]; - -- /* don't use soft-key capabilities */ -- if (strnames[i][0] == 'k' && strnames[i][0] == 'f') -+ /* don't use function-key capabilities */ -+ if (strnames[i][0] == 'k' && strnames[i][1] == 'f') - continue; - -- if (cp != ABSENT_STRING && cp != CANCELLED_STRING && cp[0] && cp -- != cap) { -+ if (VALID_STRING(cp) && -+ cp[0] != '\0' && -+ cp != cap) { - len = strlen(cp); - (void) strncpy(buf2, sp, len); - buf2[len] = '\0'; -@@ -637,7 +818,7 @@ - if (_nc_capcmp(cp, buf2)) - continue; - --#define ISRS(s) (!strncmp((s), "is", 2) || !strncmp((s), "rs", 2)) -+#define ISRS(s) (!strncmp((s), "is", (size_t) 2) || !strncmp((s), "rs", (size_t) 2)) - /* - * Theoretically we just passed the test for translation - * (equality once the padding is stripped). However, there -@@ -677,12 +858,16 @@ - /* now check for standard-mode sequences */ - if (!expansion - && (csi = skip_csi(sp)) != 0 -- && (len = strspn(sp + csi, "0123456789;")) -+ && (len = (strspn) (sp + csi, "0123456789;")) - && (len < sizeof(buf3)) - && (next = (size_t) csi + len) - && ((sp[next] == 'h') || (sp[next] == 'l'))) { - -- (void) strcpy(buf2, (sp[next] == 'h') ? "ECMA+" : "ECMA-"); -+ _nc_STRCPY(buf2, -+ ((sp[next] == 'h') -+ ? "ECMA+" -+ : "ECMA-"), -+ sizeof(buf2)); - (void) strncpy(buf3, sp + csi, len); - buf3[len] = '\0'; - len += (size_t) csi + 1; -@@ -694,12 +879,16 @@ - if (!expansion - && (csi = skip_csi(sp)) != 0 - && sp[csi] == '?' -- && (len = strspn(sp + csi + 1, "0123456789;")) -+ && (len = (strspn) (sp + csi + 1, "0123456789;")) - && (len < sizeof(buf3)) - && (next = (size_t) csi + 1 + len) - && ((sp[next] == 'h') || (sp[next] == 'l'))) { - -- (void) strcpy(buf2, (sp[next] == 'h') ? "DEC+" : "DEC-"); -+ _nc_STRCPY(buf2, -+ ((sp[next] == 'h') -+ ? "DEC+" -+ : "DEC-"), -+ sizeof(buf2)); - (void) strncpy(buf3, sp + csi + 1, len); - buf3[len] = '\0'; - len += (size_t) csi + 2; -@@ -710,12 +899,12 @@ - /* now check for ECMA highlight sequences */ - if (!expansion - && (csi = skip_csi(sp)) != 0 -- && (len = strspn(sp + csi, "0123456789;")) != 0 -+ && (len = (strspn) (sp + csi, "0123456789;")) != 0 - && (len < sizeof(buf3)) - && (next = (size_t) csi + len) - && sp[next] == 'm') { - -- (void) strcpy(buf2, "SGR:"); -+ _nc_STRCPY(buf2, "SGR:", sizeof(buf2)); - (void) strncpy(buf3, sp + csi, len); - buf3[len] = '\0'; - len += (size_t) csi + 1; -@@ -727,8 +916,8 @@ - && (csi = skip_csi(sp)) != 0 - && sp[csi] == 'm') { - len = (size_t) csi + 1; -- (void) strcpy(buf2, "SGR:"); -- strcat(buf2, ecma_highlights[0].to); -+ _nc_STRCPY(buf2, "SGR:", sizeof(buf2)); -+ _nc_STRCAT(buf2, ecma_highlights[0].to, sizeof(buf2)); - expansion = buf2; - } - -@@ -739,7 +928,7 @@ - expansion = "RSR"; - len = 1; - } else { -- (void) sprintf(buf2, "1;%dr", tp_lines); -+ _nc_SPRINTF(buf2, _nc_SLIMIT(sizeof(buf2)) "1;%dr", tp_lines); - len = strlen(buf2); - if (strncmp(buf2, sp + csi, len) == 0) - expansion = "RSR"; -@@ -750,12 +939,12 @@ - /* now check for home-down */ - if (!expansion - && (csi = skip_csi(sp)) != 0) { -- (void) sprintf(buf2, "%d;1H", tp_lines); -+ _nc_SPRINTF(buf2, _nc_SLIMIT(sizeof(buf2)) "%d;1H", tp_lines); - len = strlen(buf2); - if (strncmp(buf2, sp + csi, len) == 0) { - expansion = "LL"; - } else { -- (void) sprintf(buf2, "%dH", tp_lines); -+ _nc_SPRINTF(buf2, _nc_SLIMIT(sizeof(buf2)) "%dH", tp_lines); - len = strlen(buf2); - if (strncmp(buf2, sp + csi, len) == 0) { - expansion = "LL"; -@@ -795,12 +984,16 @@ - int i, n; - - memset(heads, 0, sizeof(heads)); -- dump_init((char *) 0, F_LITERAL, S_TERMINFO, 0, itrace, FALSE); -+ dump_init((char *) 0, F_LITERAL, S_TERMINFO, 0, 65535, itrace, FALSE); - - for (n = 0; n < argc && n < MAXCOMPARE; n++) { - if (freopen(argv[n], "r", stdin) == 0) - _nc_err_abort("Can't open %s", argv[n]); - -+#if NO_LEAKS -+ entered[n].head = _nc_head; -+ entered[n].tail = _nc_tail; -+#endif - _nc_head = _nc_tail = 0; - - /* parse entries out of the source file */ -@@ -925,6 +1118,11 @@ - #endif - if (!(entryeq(&qp->tterm, &rp->tterm) && useeq(qp, rp))) { - char name1[NAMESIZE], name2[NAMESIZE]; -+ char *names[3]; -+ -+ names[0] = name1; -+ names[1] = name2; -+ names[2] = 0; - - entries[0] = *qp; - entries[1] = *rp; -@@ -934,29 +1132,17 @@ - - switch (compare) { - case C_DIFFERENCE: -- if (itrace) -- (void) fprintf(stderr, -- "%s: dumping differences\n", -- _nc_progname); -- (void) printf("comparing %s to %s.\n", name1, name2); -+ show_comparing(names); - compare_entry(compare_predicate, &entries->tterm, quiet); - break; - - case C_COMMON: -- if (itrace) -- (void) fprintf(stderr, -- "%s: dumping common capabilities\n", -- _nc_progname); -- (void) printf("comparing %s to %s.\n", name1, name2); -+ show_comparing(names); - compare_entry(compare_predicate, &entries->tterm, quiet); - break; - - case C_NAND: -- if (itrace) -- (void) fprintf(stderr, -- "%s: dumping differences\n", -- _nc_progname); -- (void) printf("comparing %s to %s.\n", name1, name2); -+ show_comparing(names); - compare_entry(compare_predicate, &entries->tterm, quiet); - break; - -@@ -974,7 +1160,9 @@ - "Usage: infocmp [options] [-A directory] [-B directory] [termname...]" - ,"" - ,"Options:" -+ ," -0 print single-row" - ," -1 print single-column" -+ ," -K use termcap-names and BSD syntax" - ," -C use termcap-names" - ," -F compare terminfo-files" - ," -I use terminfo-names" -@@ -982,6 +1170,7 @@ - ," -R subset (see manpage)" - ," -T eliminate size limits (test)" - ," -U eliminate post-processing of entries" -+ ," -D print database locations" - ," -V print version" - #if NCURSES_XNAMES - ," -a with -F, list commented-out caps" -@@ -1030,19 +1219,25 @@ - any_initializer(const char *fmt, const char *type) - { - static char *initializer; -+ static size_t need; - char *s; - -- if (initializer == 0) -- initializer = (char *) malloc(strlen(entries->tterm.term_names) + -- strlen(type) + strlen(fmt)); -+ if (initializer == 0) { -+ need = (strlen(entries->tterm.term_names) -+ + strlen(type) -+ + strlen(fmt)); -+ initializer = (char *) malloc(need + 1); -+ if (initializer == 0) -+ failed("any_initializer"); -+ } - -- (void) strcpy(initializer, entries->tterm.term_names); -+ _nc_STRCPY(initializer, entries->tterm.term_names, need); - for (s = initializer; *s != 0 && *s != '|'; s++) { - if (!isalnum(UChar(*s))) - *s = '_'; - } - *s = 0; -- (void) sprintf(s, fmt, type); -+ _nc_SPRINTF(s, _nc_SLIMIT(need) fmt, type); - return initializer; - } - -@@ -1073,9 +1268,10 @@ - - if (VALID_STRING(term->Strings[n])) { - tp = buf; -+#define TP_LIMIT ((MAX_STRING - 5) - (size_t)(tp - buf)) - *tp++ = '"'; - for (sp = term->Strings[n]; -- *sp != 0 && (tp - buf) < MAX_STRING - 6; -+ *sp != 0 && TP_LIMIT > 2; - sp++) { - if (isascii(UChar(*sp)) - && isprint(UChar(*sp)) -@@ -1083,14 +1279,15 @@ - && *sp != '"') - *tp++ = *sp; - else { -- (void) sprintf(tp, "\\%03o", UChar(*sp)); -+ _nc_SPRINTF(tp, _nc_SLIMIT(TP_LIMIT) "\\%03o", UChar(*sp)); - tp += 4; - } - } - *tp++ = '"'; - *tp = '\0'; - (void) printf("static char %-20s[] = %s;\n", -- string_variable(ExtStrname(term, n, strnames)), buf); -+ string_variable(ExtStrname(term, (int) n, strnames)), -+ buf); - } - } - printf("\n"); -@@ -1116,7 +1313,7 @@ - break; - } - (void) printf("\t/* %3u: %-8s */\t%s,\n", -- n, ExtBoolname(term, n, boolnames), str); -+ n, ExtBoolname(term, (int) n, boolnames), str); - } - (void) printf("%s;\n", R_CURL); - -@@ -1132,12 +1329,12 @@ - str = "CANCELLED_NUMERIC"; - break; - default: -- sprintf(buf, "%d", term->Numbers[n]); -+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) "%d", term->Numbers[n]); - str = buf; - break; - } - (void) printf("\t/* %3u: %-8s */\t%s,\n", n, -- ExtNumname(term, n, numnames), str); -+ ExtNumname(term, (int) n, numnames), str); - } - (void) printf("%s;\n", R_CURL); - -@@ -1150,10 +1347,10 @@ - else if (term->Strings[n] == CANCELLED_STRING) - str = "CANCELLED_STRING"; - else { -- str = string_variable(ExtStrname(term, n, strnames)); -+ str = string_variable(ExtStrname(term, (int) n, strnames)); - } - (void) printf("\t/* %3u: %-8s */\t%s,\n", n, -- ExtStrname(term, n, strnames), str); -+ ExtStrname(term, (int) n, strnames), str); - } - (void) printf("%s;\n", R_CURL); - -@@ -1165,15 +1362,15 @@ - name_initializer("string_ext"), L_CURL); - for (n = BOOLCOUNT; n < NUM_BOOLEANS(term); ++n) { - (void) printf("\t/* %3u: bool */\t\"%s\",\n", -- n, ExtBoolname(term, n, boolnames)); -+ n, ExtBoolname(term, (int) n, boolnames)); - } - for (n = NUMCOUNT; n < NUM_NUMBERS(term); ++n) { - (void) printf("\t/* %3u: num */\t\"%s\",\n", -- n, ExtNumname(term, n, numnames)); -+ n, ExtNumname(term, (int) n, numnames)); - } - for (n = STRCOUNT; n < NUM_STRINGS(term); ++n) { - (void) printf("\t/* %3u: str */\t\"%s\",\n", -- n, ExtStrname(term, n, strnames)); -+ n, ExtStrname(term, (int) n, strnames)); - } - (void) printf("%s;\n", R_CURL); - } -@@ -1247,6 +1444,23 @@ - return terminal; - } - -+/* -+ * Show the databases that infocmp knows about. The location to which it writes is -+ */ -+static void -+show_databases(void) -+{ -+ DBDIRS state; -+ int offset; -+ const char *path2; -+ -+ _nc_first_db(&state, &offset); -+ while ((path2 = _nc_next_db(&state, &offset)) != 0) { -+ printf("%s\n", path2); -+ } -+ _nc_last_db(); -+} -+ - /*************************************************************************** - * - * Main sequence -@@ -1269,7 +1483,7 @@ - /* Also avoid overflowing smaller stacks on systems like AmigaOS */ - path *tfile = 0; - char **tname = 0; -- int maxterms; -+ size_t maxterms; - - char **myargv; - -@@ -1287,18 +1501,27 @@ - #if NCURSES_XNAMES - use_extended_names(FALSE); - #endif -+ _nc_strict_bsd = 0; - - _nc_progname = _nc_rootname(argv[0]); - - /* make sure we have enough space to add two terminal entries */ - myargv = typeCalloc(char *, (size_t) (argc + 3)); -+ if (myargv == 0) -+ failed("myargv"); -+ - memcpy(myargv, argv, (sizeof(char *) * (size_t) argc)); - argv = myargv; - - while ((c = getopt(argc, - argv, -- "1A:aB:CcdEeFfGgIiLlnpqR:rs:TtUuVv:w:x")) != -1) { -+ "01A:aB:CcDdEeFfGgIiKLlnpqR:rs:TtUuVv:w:x")) != -1) { - switch (c) { -+ case '0': -+ mwidth = 65535; -+ mheight = 1; -+ break; -+ - case '1': - mwidth = 0; - break; -@@ -1317,6 +1540,9 @@ - restdir = optarg; - break; - -+ case 'K': -+ _nc_strict_bsd = 1; -+ /* FALLTHRU */ - case 'C': - outform = F_TERMCAP; - tversion = "BSD"; -@@ -1324,6 +1550,11 @@ - sortmode = S_TERMCAP; - break; - -+ case 'D': -+ show_databases(); -+ ExitProgram(EXIT_SUCCESS); -+ break; -+ - case 'c': - compare = C_COMMON; - break; -@@ -1441,7 +1672,7 @@ - ExitProgram(EXIT_SUCCESS); - - case 'v': -- itrace = optarg_to_number(); -+ itrace = (unsigned) optarg_to_number(); - set_trace_level(itrace); - break; - -@@ -1460,10 +1691,17 @@ - } - } - -- maxterms = (argc + 2 - optind); -- tfile = typeMalloc(path, maxterms); -- tname = typeCalloc(char *, maxterms); -- entries = typeCalloc(ENTRY, maxterms); -+ maxterms = (size_t) (argc + 2 - optind); -+ if ((tfile = typeMalloc(path, maxterms)) == 0) -+ failed("tfile"); -+ if ((tname = typeCalloc(char *, maxterms)) == 0) -+ failed("tname"); -+ if ((entries = typeCalloc(ENTRY, maxterms)) == 0) -+ failed("entries"); -+#if NO_LEAKS -+ if ((entered = typeCalloc(ENTERED, maxterms)) == 0) -+ failed("entered"); -+#endif - - if (tfile == 0 - || tname == 0 -@@ -1476,9 +1714,6 @@ - if (sortmode == S_DEFAULT) - sortmode = S_TERMINFO; - -- /* set up for display */ -- dump_init(tversion, outform, sortmode, mwidth, itrace, formatted); -- - /* make sure we have at least one terminal name to work with */ - if (optind >= argc) - argv[argc++] = terminal_env(); -@@ -1487,9 +1722,23 @@ - if (compare != C_DEFAULT && optind >= argc - 1) - argv[argc++] = terminal_env(); - -+ /* exactly one terminal name with no options means display it */ - /* exactly two terminal names with no options means do -d */ -- if (argc - optind == 2 && compare == C_DEFAULT) -- compare = C_DIFFERENCE; -+ if (compare == C_DEFAULT) { -+ switch (argc - optind) { -+ default: -+ fprintf(stderr, "%s: too many names to compare\n", _nc_progname); -+ ExitProgram(EXIT_FAILURE); -+ case 1: -+ break; -+ case 2: -+ compare = C_DIFFERENCE; -+ break; -+ } -+ } -+ -+ /* set up for display */ -+ dump_init(tversion, outform, sortmode, mwidth, mheight, itrace, formatted); - - if (!filecompare) { - /* grab the entries */ -@@ -1501,15 +1750,17 @@ - tname[termcount] = argv[optind]; - - if (directory) { --#if USE_DATABASE -+#if NCURSES_USE_DATABASE - #if MIXEDCASE_FILENAMES - #define LEAF_FMT "%c" - #else - #define LEAF_FMT "%02x" - #endif -- (void) sprintf(tfile[termcount], "%s/" LEAF_FMT "/%s", -- directory, -- UChar(*argv[optind]), argv[optind]); -+ _nc_SPRINTF(tfile[termcount], -+ _nc_SLIMIT(sizeof(path)) -+ "%s/" LEAF_FMT "/%s", -+ directory, -+ UChar(*argv[optind]), argv[optind]); - if (itrace) - (void) fprintf(stderr, - "%s: reading entry %s from file %s\n", -@@ -1599,27 +1850,17 @@ - break; - - case C_DIFFERENCE: -- if (itrace) -- (void) fprintf(stderr, "%s: dumping differences\n", _nc_progname); -- (void) printf("comparing %s to %s.\n", tname[0], tname[1]); -+ show_comparing(tname); - compare_entry(compare_predicate, &entries->tterm, quiet); - break; - - case C_COMMON: -- if (itrace) -- (void) fprintf(stderr, -- "%s: dumping common capabilities\n", -- _nc_progname); -- (void) printf("comparing %s to %s.\n", tname[0], tname[1]); -+ show_comparing(tname); - compare_entry(compare_predicate, &entries->tterm, quiet); - break; - - case C_NAND: -- if (itrace) -- (void) fprintf(stderr, -- "%s: dumping differences\n", -- _nc_progname); -- (void) printf("comparing %s to %s.\n", tname[0], tname[1]); -+ show_comparing(tname); - compare_entry(compare_predicate, &entries->tterm, quiet); - break; - -@@ -1640,15 +1881,16 @@ - break; - } - } -- } else if (compare == C_USEALL) -+ } else if (compare == C_USEALL) { - (void) fprintf(stderr, "Sorry, -u doesn't work with -F\n"); -- else if (compare == C_DEFAULT) -+ } else if (compare == C_DEFAULT) { - (void) fprintf(stderr, "Use `tic -[CI] <file>' for this.\n"); -- else if (argc - optind != 2) -+ } else if (argc - optind != 2) { - (void) fprintf(stderr, - "File comparison needs exactly two file arguments.\n"); -- else -+ } else { - file_comparison(argc - optind, argv + optind); -+ } - - MAIN_LEAKS(); - ExitProgram(EXIT_SUCCESS); -diff -Naur ncurses-5.9/progs/Makefile.in ncurses-5.9.patch/progs/Makefile.in ---- ncurses-5.9/progs/Makefile.in 2010-11-27 22:45:27.000000000 +0100 -+++ ncurses-5.9.patch/progs/Makefile.in 2014-09-01 16:33:22.521792398 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.85 2010/11/27 21:45:27 tom Exp $ -+# $Id: Makefile.in,v 1.90 2013/08/04 20:23:20 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -61,7 +61,11 @@ - bindir = @bindir@ - libdir = @libdir@ - includedir = @includedir@ -+datarootdir = @datarootdir@ - datadir = @datadir@ -+includesubdir = @includesubdir@ -+ -+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir) - - LIBTOOL = @LIBTOOL@ - LIBTOOL_CLEAN = @LIB_CLEAN@ -@@ -104,20 +108,21 @@ - LD = @LD@ - LINK = @LINK_PROGS@ $(LIBTOOL_LINK) - LDFLAGS = @EXTRA_LDFLAGS@ @LDFLAGS@ -+RPATH_LIST = @RPATH_LIST@ - - LDFLAGS_LIBTOOL = $(LDFLAGS) $(CFLAGS_LIBTOOL) - LDFLAGS_NORMAL = $(LDFLAGS) $(CFLAGS_NORMAL) - LDFLAGS_DEBUG = $(LDFLAGS) $(CFLAGS_DEBUG) --LDFLAGS_PROFILE = $(LDFLAGS) $(CFLAGS_PROFILE) -+LDFLAGS_PROFILE = $(LDFLAGS) $(CFLAGS_PROFILE) - LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@ - - LDFLAGS_DEFAULT = $(LDFLAGS_@DFT_UPR_MODEL@) - --LIBS_TIC = @LDFLAGS_STATIC@ @TICS_ARGS@ @TINFO_ARGS@ @LDFLAGS_SHARED@ @LD_MODEL@ @LIBS@ --LDFLAGS_TIC = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TIC) -+LIBS_TIC = @TINFO_LDFLAGS@ @LDFLAGS_STATIC@ @TICS_LIBS@ @TINFO_LIBS@ @LDFLAGS_SHARED@ @LD_MODEL@ @LIBS@ -+LDFLAGS_TIC = @TICS_LDFLAGS@ $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TIC) - --LIBS_TINFO = @LDFLAGS_STATIC@ @TINFO_ARGS@ @LDFLAGS_SHARED@ @LD_MODEL@ @LIBS@ --LDFLAGS_TINFO = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TINFO) -+LIBS_TINFO = @LDFLAGS_STATIC@ @TINFO_LIBS@ @LDFLAGS_SHARED@ @LD_MODEL@ @LIBS@ -+LDFLAGS_TINFO = @TINFO_LDFLAGS@ $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TINFO) - - LINT = @LINT@ - LINT_OPTS = @LINT_OPTS@ -@@ -230,46 +235,46 @@ - $(MODEL)/transform$o - - tic$x: $(DEPS_TIC) $(DEPS_CURSES) transform.h -- @ECHO_LINK@ $(LINK) $(DEPS_TIC) $(LDFLAGS_TIC) -o $@ -+ @ECHO_LD@ $(LINK) $(DEPS_TIC) $(LDFLAGS_TIC) -o $@ - - DEPS_TOE = \ - $(MODEL)/toe$o - - toe$x: $(DEPS_TOE) $(DEPS_CURSES) -- @ECHO_LINK@ $(LINK) $(DEPS_TOE) $(LDFLAGS_TIC) -o $@ -+ @ECHO_LD@ $(LINK) $(DEPS_TOE) $(LDFLAGS_TIC) -o $@ - - DEPS_CLEAR = \ - $(MODEL)/clear$o - - clear$x: $(DEPS_CLEAR) $(DEPS_CURSES) -- @ECHO_LINK@ $(LINK) $(DEPS_CLEAR) $(LDFLAGS_TINFO) -o $@ -+ @ECHO_LD@ $(LINK) $(DEPS_CLEAR) $(LDFLAGS_TINFO) -o $@ - - DEPS_TABS = \ - $(MODEL)/tabs$o - - tabs$x: $(DEPS_TABS) $(DEPS_TABS) -- @ECHO_LINK@ $(LINK) $(DEPS_TABS) $(LDFLAGS_TINFO) -o $@ -+ @ECHO_LD@ $(LINK) $(DEPS_TABS) $(LDFLAGS_TINFO) -o $@ - - DEPS_TPUT = \ - $(MODEL)/tput$o \ - $(MODEL)/transform$o - - tput$x: $(DEPS_TPUT) $(DEPS_CURSES) transform.h -- @ECHO_LINK@ $(LINK) $(DEPS_TPUT) $(LDFLAGS_TINFO) -o $@ -+ @ECHO_LD@ $(LINK) $(DEPS_TPUT) $(LDFLAGS_TINFO) -o $@ - - DEPS_INFOCMP = \ - $(MODEL)/infocmp$o \ - $(MODEL)/dump_entry$o - - infocmp$x: $(DEPS_INFOCMP) $(DEPS_CURSES) -- @ECHO_LINK@ $(LINK) $(DEPS_INFOCMP) $(LDFLAGS_TIC) -o $@ -+ @ECHO_LD@ $(LINK) $(DEPS_INFOCMP) $(LDFLAGS_TIC) -o $@ - - DEPS_TSET = \ - $(MODEL)/tset$o \ - $(MODEL)/transform$o - - tset$x: $(DEPS_TSET) $(DEPS_CURSES) transform.h -- @ECHO_LINK@ $(LINK) $(DEPS_TSET) $(LDFLAGS_TINFO) -o $@ -+ @ECHO_LD@ $(LINK) $(DEPS_TSET) $(LDFLAGS_TINFO) -o $@ - - termsort.c: $(srcdir)/MKtermsort.sh - sh $(srcdir)/MKtermsort.sh $(AWK) $(srcdir)/../include/@TERMINFO_CAPS@ >$@ -diff -Naur ncurses-5.9/progs/progs.priv.h ncurses-5.9.patch/progs/progs.priv.h ---- ncurses-5.9/progs/progs.priv.h 2008-08-03 19:43:05.000000000 +0200 -+++ ncurses-5.9.patch/progs/progs.priv.h 2014-09-01 16:33:22.522792397 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -30,7 +30,7 @@ - * Author: Thomas E. Dickey 1997-on * - ****************************************************************************/ - /* -- * $Id: progs.priv.h,v 1.34 2008/08/03 17:43:05 tom Exp $ -+ * $Id: progs.priv.h,v 1.39 2012/02/22 22:11:27 tom Exp $ - * - * progs.priv.h - * -@@ -42,7 +42,7 @@ - #if USE_RCS_IDS - #define MODULE_ID(id) static const char Ident[] = id; - #else --#define MODULE_ID(id) /*nothing*/ -+#define MODULE_ID(id) /*nothing */ - #endif - - #include <stdlib.h> -@@ -90,6 +90,14 @@ - # endif - #endif - -+#if HAVE_INTTYPES_H -+# include <inttypes.h> -+#else -+# if HAVE_STDINT_H -+# include <stdint.h> -+# endif -+#endif -+ - #include <assert.h> - #include <errno.h> - -@@ -99,7 +107,7 @@ - - #if HAVE_GETOPT_H - #include <getopt.h> --#else -+#elif !defined(HAVE_GETOPT_HEADER) - /* 'getopt()' may be prototyped in <stdlib.h>, but declaring its - * variables doesn't hurt. - */ -@@ -109,9 +117,11 @@ - - #include <curses.h> - #include <term_entry.h> -+#include <nc_termios.h> - #include <tic.h> - #include <nc_tparm.h> - -+#include <nc_string.h> - #include <nc_alloc.h> - #if HAVE_NC_FREEALL - #undef ExitProgram -@@ -171,7 +181,7 @@ - # elif defined(MAXPATHLEN) - # define PATH_MAX MAXPATHLEN - # else --# define PATH_MAX 255 /* the Posix minimum pathsize */ -+# define PATH_MAX 255 /* the Posix minimum pathsize */ - # endif - #endif - -@@ -183,7 +193,7 @@ - # if ('z'-'a' == 25) && ('z' < 127) && ('Z'-'A' == 25) && ('Z' < 127) && ('9' < 127) - # define isascii(c) (UChar(c) <= 127) - # else --# define isascii(c) 1 /* not really ascii anyway */ -+# define isascii(c) 1 /* not really ascii anyway */ - # endif - #endif - -diff -Naur ncurses-5.9/progs/tabs.c ncurses-5.9.patch/progs/tabs.c ---- ncurses-5.9/progs/tabs.c 2010-10-24 00:26:01.000000000 +0200 -+++ ncurses-5.9.patch/progs/tabs.c 2014-09-01 16:33:22.523792397 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2008-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -37,12 +37,20 @@ - #define USE_LIBTINFO - #include <progs.priv.h> - --MODULE_ID("$Id: tabs.c,v 1.19 2010/10/23 22:26:01 tom Exp $") -+MODULE_ID("$Id: tabs.c,v 1.34 2013/06/11 08:18:27 tom Exp $") - - static void usage(void) GCC_NORETURN; - -+static char *prg_name; - static int max_cols; - -+static void -+failed(const char *s) -+{ -+ perror(s); -+ ExitProgram(EXIT_FAILURE); -+} -+ - static int - putch(int c) - { -@@ -83,28 +91,29 @@ - int prior = 0; - int ch; - -- if (result != 0) { -- while ((ch = *tab_list++) != '\0') { -- if (isdigit(UChar(ch))) { -- value *= 10; -- value += (ch - '0'); -- } else if (ch == ',') { -- result[n] = value + prior; -- if (n > 0 && result[n] <= result[n - 1]) { -- fprintf(stderr, -- "tab-stops are not in increasing order: %d %d\n", -- value, result[n - 1]); -- free(result); -- result = 0; -- break; -- } -- ++n; -- value = 0; -- prior = 0; -- } else if (ch == '+') { -- if (n) -- prior = result[n - 1]; -+ if (result == 0) -+ failed("decode_tabs"); -+ -+ while ((ch = *tab_list++) != '\0') { -+ if (isdigit(UChar(ch))) { -+ value *= 10; -+ value += (ch - '0'); -+ } else if (ch == ',') { -+ result[n] = value + prior; -+ if (n > 0 && result[n] <= result[n - 1]) { -+ fprintf(stderr, -+ "%s: tab-stops are not in increasing order: %d %d\n", -+ prg_name, value, result[n - 1]); -+ free(result); -+ result = 0; -+ break; - } -+ ++n; -+ value = 0; -+ prior = 0; -+ } else if (ch == '+') { -+ if (n) -+ prior = result[n - 1]; - } - } - -@@ -114,6 +123,7 @@ - */ - if ((n == 0) && (value > 0)) { - int step = value; -+ value = 1; - while (n < max_cols - 1) { - result[n++] = value; - value += step; -@@ -126,6 +136,7 @@ - result[n++] = value + prior; - result[n] = 0; - } -+ - return result; - } - -@@ -140,10 +151,11 @@ - for (n = 0; n < max_cols; n += 10) { - int ch = 1 + (n / 10); - char buffer[20]; -- sprintf(buffer, "----+----%c", -- ((ch < 10) -- ? (ch + '0') -- : (ch + 'A' - 10))); -+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) -+ "----+----%c", -+ ((ch < 10) -+ ? (ch + '0') -+ : (ch + 'A' - 10))); - printf("%.*s", ((max_cols - n) > 10) ? 10 : (max_cols - n), buffer); - } - putchar('\n'); -@@ -227,7 +239,7 @@ - bool result = FALSE; - - if (source != 0) { -- unsigned len = strlen(source); -+ size_t len = strlen(source); - if (len != 0) - result = (source[len - 1] != ','); - } else { -@@ -251,7 +263,7 @@ - - if (copied != 0 && *copied != '\0') { - const char *comma = ","; -- unsigned need = 1 + strlen(copied); -+ size_t need = 1 + strlen(copied); - - if (*copied == ',') - comma = ""; -@@ -263,15 +275,16 @@ - need += strlen(*append); - - result = malloc(need); -- if (result != 0) { -- *result = '\0'; -- if (*append != 0) { -- strcpy(result, *append); -- free(*append); -- } -- strcat(result, comma); -- strcat(result, copied); -+ if (result == 0) -+ failed("add_to_tab_list"); -+ -+ *result = '\0'; -+ if (*append != 0) { -+ _nc_STRCPY(result, *append, need); -+ free(*append); - } -+ _nc_STRCAT(result, comma, need); -+ _nc_STRCAT(result, copied, need); - - *append = result; - } -@@ -282,7 +295,7 @@ - * Check for illegal characters in the tab-list. - */ - static bool --legal_tab_list(const char *program, const char *tab_list) -+legal_tab_list(const char *tab_list) - { - bool result = TRUE; - -@@ -294,22 +307,34 @@ - if (!(isdigit(ch) || ch == ',' || ch == '+')) { - fprintf(stderr, - "%s: unexpected character found '%c'\n", -- program, ch); -+ prg_name, ch); - result = FALSE; - break; - } - } - } else { -- fprintf(stderr, "%s: trailing comma found '%s'\n", program, tab_list); -+ fprintf(stderr, "%s: trailing comma found '%s'\n", prg_name, tab_list); - result = FALSE; - } - } else { -- fprintf(stderr, "%s: no tab-list given\n", program); -+ fprintf(stderr, "%s: no tab-list given\n", prg_name); - result = FALSE; - } - return result; - } - -+static char * -+skip_list(char *value) -+{ -+ while (*value != '\0' && -+ (isdigit(UChar(*value)) || -+ isspace(UChar(*value)) || -+ strchr("+,", UChar(*value)) != 0)) { -+ ++value; -+ } -+ return value; -+} -+ - static void - usage(void) - { -@@ -332,6 +357,7 @@ - ," -s SNOBOL" - ," -u UNIVAC 1100 Assembler" - ," -T name use terminal type 'name'" -+ ," -V print version" - ,"" - ,"A tabstop-list is an ordered list of column numbers, e.g., 1,11,21" - ,"or 1,+10,+10 which is the same." -@@ -353,10 +379,11 @@ - bool no_op = FALSE; - int n, ch; - NCURSES_CONST char *term_name = 0; -- const char *mar_list = 0; /* ignored */ - char *append = 0; - const char *tab_list = 0; - -+ prg_name = _nc_rootname(argv[0]); -+ - if ((term_name = getenv("TERM")) == 0) - term_name = "ansi+tabs"; - -@@ -368,23 +395,25 @@ - while ((ch = *++option) != '\0') { - switch (ch) { - case 'a': -- switch (*option) { -+ switch (*++option) { -+ default: - case '\0': - tab_list = "1,10,16,36,72"; -+ option--; - /* Assembler, IBM S/370, first format */ - break; - case '2': - tab_list = "1,10,16,40,72"; - /* Assembler, IBM S/370, second format */ - break; -- default: -- usage(); - } - break; - case 'c': -- switch (*option) { -+ switch (*++option) { -+ default: - case '\0': - tab_list = "1,8,12,16,20,55"; -+ option--; - /* COBOL, normal format */ - break; - case '2': -@@ -395,8 +424,6 @@ - tab_list = "1,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62,67"; - /* COBOL compact format extended */ - break; -- default: -- usage(); - } - break; - case 'd': /* ncurses extension */ -@@ -427,17 +454,22 @@ - term_name = option; - } else { - term_name = argv[n++]; -+ option--; - } - option += ((int) strlen(option)) - 1; - continue; -+ case 'V': -+ puts(curses_version()); -+ ExitProgram(EXIT_SUCCESS); - default: - if (isdigit(UChar(*option))) { -- tab_list = option; -- ++n; -+ char *copy = strdup(option); -+ *skip_list(copy) = '\0'; -+ tab_list = copy; -+ option = skip_list(option) - 1; - } else { - usage(); - } -- option += ((int) strlen(option)) - 1; - break; - } - } -@@ -446,7 +478,11 @@ - while ((ch = *++option) != '\0') { - switch (ch) { - case 'm': -- mar_list = option; -+ /* -+ * The "+mXXX" option is unimplemented because only the long-obsolete -+ * att510d implements smgl, which is needed to support -+ * this option. -+ */ - break; - default: - /* special case of relative stops separated by spaces? */ -@@ -477,12 +513,12 @@ - if (!VALID_STRING(clear_all_tabs)) { - fprintf(stderr, - "%s: terminal type '%s' cannot reset tabs\n", -- argv[0], term_name); -+ prg_name, term_name); - } else if (!VALID_STRING(set_tab)) { - fprintf(stderr, - "%s: terminal type '%s' cannot set tabs\n", -- argv[0], term_name); -- } else if (legal_tab_list(argv[0], tab_list)) { -+ prg_name, term_name); -+ } else if (legal_tab_list(tab_list)) { - int *list = decode_tabs(tab_list); - - if (!no_op) -diff -Naur ncurses-5.9/progs/tic.c ncurses-5.9.patch/progs/tic.c ---- ncurses-5.9/progs/tic.c 2011-02-12 19:39:08.000000000 +0100 -+++ ncurses-5.9.patch/progs/tic.c 2014-09-01 16:33:22.523792397 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -35,6 +35,7 @@ - /* - * tic.c --- Main program for terminfo compiler - * by Eric S. Raymond -+ * and Thomas E Dickey - * - */ - -@@ -42,9 +43,12 @@ - #include <sys/stat.h> - - #include <dump_entry.h> -+#include <hashed_db.h> - #include <transform.h> - --MODULE_ID("$Id: tic.c,v 1.147 2011/02/12 18:39:08 tom Exp $") -+MODULE_ID("$Id: tic.c,v 1.189 2013/11/16 19:58:09 tom Exp $") -+ -+#define STDIN_NAME "<stdin>" - - const char *_nc_progname = "tic"; - -@@ -53,6 +57,7 @@ - static bool capdump = FALSE; /* running as infotocap? */ - static bool infodump = FALSE; /* running as captoinfo? */ - static bool showsummary = FALSE; -+static char **namelst = 0; - static const char *to_remove; - - static void (*save_check_termtype) (TERMTYPE *, bool); -@@ -69,11 +74,13 @@ - 1\ - a\ - C\ -+D\ - c\ - f\ - G\ - g\ - I\ -+K\ - L\ - N\ - r\ -@@ -99,8 +106,10 @@ - #endif - - static void --cleanup(char **namelst GCC_UNUSED) -+cleanup(void) - { -+ int rc; -+ - #if NO_LEAKS - free_namelist(namelst); - #endif -@@ -108,10 +117,12 @@ - fclose(tmp_fp); - if (to_remove != 0) { - #if HAVE_REMOVE -- remove(to_remove); -+ rc = remove(to_remove); - #else -- unlink(to_remove); -+ rc = unlink(to_remove); - #endif -+ if (rc != 0) -+ perror(to_remove); - } - } - -@@ -119,7 +130,6 @@ - failed(const char *msg) - { - perror(msg); -- cleanup((char **) 0); - ExitProgram(EXIT_FAILURE); - } - -@@ -133,7 +143,9 @@ - #if NCURSES_XNAMES - " -a retain commented-out capabilities (sets -x also)", - #endif -+ " -K translate entries to termcap source form with BSD syntax", - " -C translate entries to termcap source form", -+ " -D print list of tic's database locations (first must be writable)", - " -c check only, validate input without compiling or translating", - " -e<names> translate/compile only entries named by comma-separated list", - " -f format complex strings for readability", -@@ -173,7 +185,7 @@ - - #define L_BRACE '{' - #define R_BRACE '}' --#define S_QUOTE '\''; -+#define S_QUOTE '\'' - - static void - write_it(ENTRY * ep) -@@ -216,12 +228,12 @@ - } - *d = 0; - if (strlen(result) < strlen(s)) -- strcpy(s, result); -+ _nc_STRCPY(s, result, strlen(s) + 1); - } - } - - _nc_set_type(_nc_first_name(ep->tterm.term_names)); -- _nc_curr_line = ep->startline; -+ _nc_curr_line = (int) ep->startline; - _nc_write_entry(&ep->tterm); - } - -@@ -286,8 +298,10 @@ - if (in_name) { - if (used + 1 >= have) { - have += 132; -- namebuf = typeRealloc(char, have, namebuf); -- suffix = typeRealloc(char, have, suffix); -+ if ((namebuf = typeRealloc(char, have, namebuf)) == 0) -+ failed("put_translate namebuf"); -+ if ((suffix = typeRealloc(char, have, suffix)) == 0) -+ failed("put_translate suffix"); - } - if (c == '\n' || c == '@') { - namebuf[used++] = '\0'; -@@ -308,7 +322,7 @@ - if ((up = strchr(namebuf, '#')) != 0 - || (up = strchr(namebuf, '=')) != 0 - || ((up = strchr(namebuf, '@')) != 0 && up[1] == '>')) { -- (void) strcpy(suffix, up); -+ _nc_STRCPY(suffix, up, have); - *up = '\0'; - } - -@@ -339,39 +353,122 @@ - static char * - stripped(char *src) - { -+ char *dst = 0; -+ - while (isspace(UChar(*src))) - src++; -+ - if (*src != '\0') { -- char *dst; - size_t len; - -- if ((dst = strdup(src)) == NULL) -+ if ((dst = strdup(src)) == NULL) { - failed("strdup"); -+ } else { -+ len = strlen(dst); -+ while (--len != 0 && isspace(UChar(dst[len]))) -+ dst[len] = '\0'; -+ } -+ } -+ return dst; -+} -+ -+static FILE * -+open_tempfile(char *filename) -+{ -+ FILE *result = 0; -+ -+ _nc_STRCPY(filename, "/tmp/XXXXXX", PATH_MAX); -+#if HAVE_MKSTEMP -+ { -+ int oldmask = (int) umask(077); -+ int fd = mkstemp(filename); -+ if (fd >= 0) -+ result = fdopen(fd, "w"); -+ umask((mode_t) oldmask); -+ } -+#else -+ if (tmpnam(filename) != 0) -+ result = fopen(filename, "w"); -+#endif -+ return result; -+} -+ -+static FILE * -+copy_input(FILE *source, const char *filename, char *alt_file) -+{ -+ char my_altfile[PATH_MAX]; -+ FILE *result = 0; -+ FILE *target = 0; -+ int ch; - -- assert(dst != 0); -+ if (alt_file == 0) -+ alt_file = my_altfile; - -- len = strlen(dst); -- while (--len != 0 && isspace(UChar(dst[len]))) -- dst[len] = '\0'; -- return dst; -+ if (source == 0) { -+ failed("copy_input (source)"); -+ } else if ((target = open_tempfile(alt_file)) == 0) { -+ failed("copy_input (target)"); -+ } else { -+ clearerr(source); -+ for (;;) { -+ ch = fgetc(source); -+ if (feof(source)) { -+ break; -+ } else if (ferror(source)) { -+ failed(filename); -+ } else if (ch == 0) { -+ /* don't loop in case someone wants to convert /dev/zero */ -+ fprintf(stderr, "%s: %s is not a text-file\n", _nc_progname, filename); -+ ExitProgram(EXIT_FAILURE); -+ } -+ fputc(ch, target); -+ } -+ fclose(source); -+ /* -+ * rewind() does not force the target file's data to disk (not does -+ * fflush()...). So open a second stream on the data and then close -+ * the one that we were writing on before starting to read from the -+ * second stream. -+ */ -+ result = fopen(alt_file, "r+"); -+ fclose(target); -+ to_remove = strdup(alt_file); - } -- return 0; -+ return result; - } - - static FILE * --open_input(const char *filename) -+open_input(const char *filename, char *alt_file) - { -- FILE *fp = fopen(filename, "r"); -+ FILE *fp; - struct stat sb; -+ int mode; - -- if (fp == 0) { -- fprintf(stderr, "%s: Can't open %s\n", _nc_progname, filename); -+ if (!strcmp(filename, "-")) { -+ fp = copy_input(stdin, STDIN_NAME, alt_file); -+ } else if (stat(filename, &sb) < 0) { -+ fprintf(stderr, "%s: %s %s\n", _nc_progname, filename, strerror(errno)); - ExitProgram(EXIT_FAILURE); -- } -- if (fstat(fileno(fp), &sb) < 0 -- || (sb.st_mode & S_IFMT) != S_IFREG) { -+ } else if ((mode = (sb.st_mode & S_IFMT)) == S_IFDIR -+ || (mode != S_IFREG && mode != S_IFCHR)) { - fprintf(stderr, "%s: %s is not a file\n", _nc_progname, filename); - ExitProgram(EXIT_FAILURE); -+ } else { -+ fp = fopen(filename, "r"); -+ -+ if (fp == 0) { -+ fprintf(stderr, "%s: Can't open %s\n", _nc_progname, filename); -+ ExitProgram(EXIT_FAILURE); -+ } -+ if (mode != S_IFREG) { -+ if (alt_file != 0) { -+ FILE *fp2 = copy_input(fp, filename, alt_file); -+ fp = fp2; -+ } else { -+ fprintf(stderr, "%s: %s is not a file\n", _nc_progname, filename); -+ ExitProgram(EXIT_FAILURE); -+ } -+ } - } - return fp; - } -@@ -389,7 +486,7 @@ - if (src == 0) { - /* EMPTY */ ; - } else if (strchr(src, '/') != 0) { /* a filename */ -- FILE *fp = open_input(src); -+ FILE *fp = open_input(src, (char *) 0); - - for (pass = 1; pass <= 2; pass++) { - nn = 0; -@@ -403,7 +500,8 @@ - } - } - if (pass == 1) { -- dst = typeCalloc(char *, nn + 1); -+ if ((dst = typeCalloc(char *, nn + 1)) == 0) -+ failed("make_namelist"); - rewind(fp); - } - } -@@ -425,8 +523,10 @@ - if (mark == '\0') - break; - } -- if (pass == 1) -- dst = typeCalloc(char *, nn + 1); -+ if (pass == 1) { -+ if ((dst = typeCalloc(char *, nn + 1)) == 0) -+ failed("make_namelist"); -+ } - } - } - if (showsummary && (dst != 0)) { -@@ -456,26 +556,118 @@ - return (code); - } - --static FILE * --open_tempfile(char *name) -+static char * -+valid_db_path(const char *nominal) - { -- FILE *result = 0; --#if HAVE_MKSTEMP -- int fd = mkstemp(name); -- if (fd >= 0) -- result = fdopen(fd, "w"); -+ struct stat sb; -+#if USE_HASHED_DB -+ char suffix[] = DBM_SUFFIX; -+ size_t need = strlen(nominal) + sizeof(suffix); -+ char *result = malloc(need); -+ -+ if (result == 0) -+ failed("valid_db_path"); -+ _nc_STRCPY(result, nominal, need); -+ if (strcmp(result + need - sizeof(suffix), suffix)) { -+ _nc_STRCAT(result, suffix, need); -+ } -+#else -+ char *result = strdup(nominal); -+#endif -+ -+ DEBUG(1, ("** stat(%s)", result)); -+ if (stat(result, &sb) >= 0) { -+#if USE_HASHED_DB -+ if (!S_ISREG(sb.st_mode) -+ || access(result, R_OK | W_OK) != 0) { -+ DEBUG(1, ("...not a writable file")); -+ free(result); -+ result = 0; -+ } - #else -- if (tmpnam(name) != 0) -- result = fopen(name, "w"); -+ if (!S_ISDIR(sb.st_mode) -+ || access(result, R_OK | W_OK | X_OK) != 0) { -+ DEBUG(1, ("...not a writable directory")); -+ free(result); -+ result = 0; -+ } - #endif -+ } else { -+ /* check if parent is directory and is writable */ -+ unsigned leaf = _nc_pathlast(result); -+ -+ DEBUG(1, ("...not found")); -+ if (leaf) { -+ char save = result[leaf]; -+ result[leaf] = 0; -+ if (stat(result, &sb) >= 0 -+ && S_ISDIR(sb.st_mode) -+ && access(result, R_OK | W_OK | X_OK) == 0) { -+ result[leaf] = save; -+ } else { -+ DEBUG(1, ("...parent directory %s is not writable", result)); -+ free(result); -+ result = 0; -+ } -+ } else { -+ DEBUG(1, ("... no parent directory")); -+ free(result); -+ result = 0; -+ } -+ } - return result; - } - -+/* -+ * Show the databases to which tic could write. The location to which it -+ * writes is always the first one. If none are writable, print an error -+ * message. -+ */ -+static void -+show_databases(const char *outdir) -+{ -+ bool specific = (outdir != 0) || getenv("TERMINFO") != 0; -+ char *result; -+ const char *tried = 0; -+ -+ if (outdir == 0) { -+ outdir = _nc_tic_dir(0); -+ } -+ if ((result = valid_db_path(outdir)) != 0) { -+ printf("%s\n", result); -+ free(result); -+ } else { -+ tried = outdir; -+ } -+ -+ if ((outdir = _nc_home_terminfo())) { -+ if ((result = valid_db_path(outdir)) != 0) { -+ printf("%s\n", result); -+ free(result); -+ } else if (!specific) { -+ tried = outdir; -+ } -+ } -+ -+ /* -+ * If we can write in neither location, give an error message. -+ */ -+ if (tried) { -+ fflush(stdout); -+ fprintf(stderr, "%s: %s (no permission)\n", _nc_progname, tried); -+ ExitProgram(EXIT_FAILURE); -+ } -+} -+ -+#define VtoTrace(opt) (unsigned) ((opt > 0) ? opt : (opt == 0)) -+ - int - main(int argc, char *argv[]) - { - char my_tmpname[PATH_MAX]; -- int v_opt = -1, debug_level; -+ char my_altfile[PATH_MAX]; -+ int v_opt = -1; -+ unsigned debug_level; - int smart_defaults = TRUE; - char *termcap; - ENTRY *qp; -@@ -486,6 +678,7 @@ - int sortmode = S_TERMINFO; /* sort_mode */ - - int width = 60; -+ int height = 65535; - bool formatted = FALSE; /* reformat complex strings? */ - bool literal = FALSE; /* suppress post-processing? */ - int numbers = 0; /* format "%'char'" to/from "%{number}" */ -@@ -493,7 +686,6 @@ - bool limited = TRUE; - char *tversion = (char *) NULL; - const char *source_file = "terminfo"; -- char **namelst = 0; - char *outdir = (char *) NULL; - bool check_only = FALSE; - bool suppress_untranslatable = FALSE; -@@ -501,6 +693,7 @@ - log_fp = stderr; - - _nc_progname = _nc_rootname(argv[0]); -+ atexit(cleanup); - - if ((infodump = same_program(_nc_progname, PROG_CAPTOINFO)) != FALSE) { - outform = F_TERMINFO; -@@ -513,6 +706,7 @@ - #if NCURSES_XNAMES - use_extended_names(FALSE); - #endif -+ _nc_strict_bsd = 0; - - /* - * Processing arguments is a little complicated, since someone made a -@@ -520,7 +714,7 @@ - * be optional. - */ - while ((this_opt = getopt(argc, argv, -- "0123456789CILNR:TUVace:fGgo:rstvwx")) != -1) { -+ "0123456789CDIKLNR:TUVace:fGgo:rstvwx")) != -1) { - if (isdigit(this_opt)) { - switch (last_opt) { - case 'v': -@@ -530,19 +724,40 @@ - width = (width * 10) + (this_opt - '0'); - break; - default: -- if (this_opt != '1') -+ switch (this_opt) { -+ case '0': -+ last_opt = this_opt; -+ width = 65535; -+ height = 1; -+ break; -+ case '1': -+ last_opt = this_opt; -+ width = 0; -+ break; -+ default: - usage(); -- last_opt = this_opt; -- width = 0; -+ } - } - continue; - } - switch (this_opt) { -+ case 'K': -+ _nc_strict_bsd = 1; -+ /* the initial version of -K in 20110730 fell-thru here, but the -+ * same flag is useful when reading sources -TD -+ */ -+ break; - case 'C': - capdump = TRUE; - outform = F_TERMCAP; - sortmode = S_TERMCAP; - break; -+ case 'D': -+ debug_level = VtoTrace(v_opt); -+ set_trace_level(debug_level); -+ show_databases(outdir); -+ ExitProgram(EXIT_SUCCESS); -+ break; - case 'I': - infodump = TRUE; - outform = F_TERMINFO; -@@ -568,7 +783,6 @@ - break; - case 'V': - puts(curses_version()); -- cleanup(namelst); - ExitProgram(EXIT_SUCCESS); - case 'c': - check_only = TRUE; -@@ -618,7 +832,7 @@ - last_opt = this_opt; - } - -- debug_level = (v_opt > 0) ? v_opt : (v_opt == 0); -+ debug_level = VtoTrace(v_opt); - set_trace_level(debug_level); - - if (_nc_tracing) { -@@ -638,8 +852,8 @@ - */ - if (namelst && (!infodump && !capdump)) { - (void) fprintf(stderr, -- "Sorry, -e can't be used without -I or -C\n"); -- cleanup(namelst); -+ "%s: Sorry, -e can't be used without -I or -C\n", -+ _nc_progname); - ExitProgram(EXIT_FAILURE); - } - #endif /* HAVE_BIG_CORE */ -@@ -663,16 +877,16 @@ - if (access(termcap, F_OK) == 0) { - /* file exists */ - source_file = termcap; -- } else if ((tmp_fp = open_tempfile(strcpy(my_tmpname, -- "/tmp/XXXXXX"))) -- != 0) { -- source_file = my_tmpname; -- fprintf(tmp_fp, "%s\n", termcap); -- fclose(tmp_fp); -- tmp_fp = open_input(source_file); -- to_remove = source_file; - } else { -- failed("tmpnam"); -+ if ((tmp_fp = open_tempfile(my_tmpname)) != 0) { -+ source_file = my_tmpname; -+ fprintf(tmp_fp, "%s\n", termcap); -+ fclose(tmp_fp); -+ tmp_fp = open_input(source_file, (char *) 0); -+ to_remove = source_file; -+ } else { -+ failed("tmpnam"); -+ } - } - } - } else { -@@ -682,24 +896,28 @@ - _nc_progname, - _nc_progname, - usage_string); -- cleanup(namelst); - ExitProgram(EXIT_FAILURE); - } - } - -- if (tmp_fp == 0) -- tmp_fp = open_input(source_file); -+ if (tmp_fp == 0) { -+ tmp_fp = open_input(source_file, my_altfile); -+ if (!strcmp(source_file, "-")) { -+ source_file = STDIN_NAME; -+ } -+ } - -- if (infodump) -+ if (infodump) { - dump_init(tversion, - smart_defaults - ? outform - : F_LITERAL, -- sortmode, width, debug_level, formatted); -- else if (capdump) -+ sortmode, width, height, debug_level, formatted); -+ } else if (capdump) { - dump_init(tversion, - outform, -- sortmode, width, debug_level, FALSE); -+ sortmode, width, height, debug_level, FALSE); -+ } - - /* parse entries out of the source file */ - _nc_set_source(source_file); -@@ -716,7 +934,6 @@ - /* do use resolution */ - if (check_only || (!infodump && !capdump) || forceresolve) { - if (!_nc_resolve_uses2(TRUE, literal) && !check_only) { -- cleanup(namelst); - ExitProgram(EXIT_FAILURE); - } - } -@@ -750,7 +967,7 @@ - - for_entry_list(qp) { - if (matches(namelst, qp->tterm.term_names)) { -- int j = qp->cend - qp->cstart; -+ long j = qp->cend - qp->cstart; - int len = 0; - - /* this is in case infotocap() generates warnings */ -@@ -767,7 +984,7 @@ - repair_acsc(&qp->tterm); - dump_entry(&qp->tterm, suppress_untranslatable, - limited, numbers, NULL); -- for (j = 0; j < (int) qp->nuses; j++) -+ for (j = 0; j < (long) qp->nuses; j++) - dump_uses(qp->uses[j].name, !capdump); - len = show_entry(); - if (debug_level != 0 && !limited) -@@ -811,7 +1028,6 @@ - else - fprintf(log_fp, "No entries written\n"); - } -- cleanup(namelst); - ExitProgram(EXIT_SUCCESS); - } - -@@ -915,18 +1131,18 @@ - return result; - } - --static int -+static long - keypad_index(const char *string) - { - char *test; - const char *list = "PQRSwxymtuvlqrsPpn"; /* app-keypad except "Enter" */ - int ch; -- int result = -1; -+ long result = -1; - - if ((ch = keypad_final(string)) != '\0') { -- test = strchr(list, ch); -+ test = (strchr) (list, ch); - if (test != 0) -- result = (test - list); -+ result = (long) (test - list); - } - return result; - } -@@ -1008,6 +1224,19 @@ - } - - #define EXPECTED(name) if (!PRESENT(name)) _nc_warning("expected " #name) -+#define UNEXPECTED(name) if (PRESENT(name)) _nc_warning("unexpected " #name ", for %s", why) -+ -+static void -+check_noaddress(TERMTYPE *tp, const char *why) -+{ -+ UNEXPECTED(column_address); -+ UNEXPECTED(cursor_address); -+ UNEXPECTED(cursor_home); -+ UNEXPECTED(cursor_mem_address); -+ UNEXPECTED(cursor_to_ll); -+ UNEXPECTED(row_address); -+ UNEXPECTED(row_address); -+} - - static void - check_cursor(TERMTYPE *tp) -@@ -1015,13 +1244,55 @@ - int count; - char *list[4]; - -+ if (hard_copy) { -+ check_noaddress(tp, "hard_copy"); -+ } else if (generic_type) { -+ check_noaddress(tp, "generic_type"); -+ } else if (strchr(tp->term_names, '+') == 0) { -+ int y = 0; -+ int x = 0; -+ if (PRESENT(column_address)) -+ ++y; -+ if (PRESENT(cursor_address)) -+ y = x = 10; -+ if (PRESENT(cursor_home)) -+ ++y, ++x; -+ if (PRESENT(cursor_mem_address)) -+ y = x = 10; -+ if (PRESENT(cursor_to_ll)) -+ ++y, ++x; -+ if (PRESENT(row_address)) -+ ++x; -+ if (PRESENT(cursor_down)) -+ ++y; -+ if (PRESENT(cursor_up)) -+ ++y; -+ if (PRESENT(cursor_left)) -+ ++x; -+ if (PRESENT(cursor_right)) -+ ++x; -+ if (x < 2 && y < 2) { -+ _nc_warning("terminal lacks cursor addressing"); -+ } else { -+ if (x < 2) -+ _nc_warning("terminal lacks cursor column-addressing"); -+ if (y < 2) -+ _nc_warning("terminal lacks cursor row-addressing"); -+ } -+ } -+ -+ /* it is rare to have an insert-line feature without a matching delete */ -+ ANDMISSING(parm_insert_line, insert_line); -+ ANDMISSING(parm_delete_line, delete_line); -+ ANDMISSING(parm_insert_line, parm_delete_line); -+ - /* if we have a parameterized form, then the non-parameterized is easy */ - ANDMISSING(parm_down_cursor, cursor_down); - ANDMISSING(parm_up_cursor, cursor_up); - ANDMISSING(parm_left_cursor, cursor_left); - ANDMISSING(parm_right_cursor, cursor_right); - -- /* Given any of a set of cursor movement, the whole set should be present. -+ /* Given any of a set of cursor movement, the whole set should be present. - * Technically this is not true (we could use cursor_address to fill in - * unsupported controls), but it is likely. - */ -@@ -1097,11 +1368,11 @@ - VALID_STRING(key_c1) && - VALID_STRING(key_c3)) { - char final[MAX_KP + 1]; -- int list[MAX_KP]; -+ long list[MAX_KP]; - int increase = 0; - int j, k, kk; -- int last; -- int test; -+ long last; -+ long test; - - final[0] = keypad_final(key_a1); - final[1] = keypad_final(key_a3); -@@ -1149,19 +1420,19 @@ - assert(strlen(show) < (MAX_KP * 4)); - switch (kk) { - case 0: -- strcat(show, " ka1"); -+ _nc_STRCAT(show, " ka1", sizeof(show)); - break; - case 1: -- strcat(show, " ka3"); -+ _nc_STRCAT(show, " ka3", sizeof(show)); - break; - case 2: -- strcat(show, " kb2"); -+ _nc_STRCAT(show, " kb2", sizeof(show)); - break; - case 3: -- strcat(show, " kc1"); -+ _nc_STRCAT(show, " kc1", sizeof(show)); - break; - case 4: -- strcat(show, " kc3"); -+ _nc_STRCAT(show, " kc3", sizeof(show)); - break; - } - } -@@ -1176,18 +1447,24 @@ - VALID_STRING(key_c3)) { - show[0] = '\0'; - if (keypad_index(key_a1) >= 0) -- strcat(show, " ka1"); -+ _nc_STRCAT(show, " ka1", sizeof(show)); - if (keypad_index(key_a3) >= 0) -- strcat(show, " ka3"); -+ _nc_STRCAT(show, " ka3", sizeof(show)); - if (keypad_index(key_b2) >= 0) -- strcat(show, " kb2"); -+ _nc_STRCAT(show, " kb2", sizeof(show)); - if (keypad_index(key_c1) >= 0) -- strcat(show, " kc1"); -+ _nc_STRCAT(show, " kc1", sizeof(show)); - if (keypad_index(key_c3) >= 0) -- strcat(show, " kc3"); -+ _nc_STRCAT(show, " kc3", sizeof(show)); - if (*show != '\0') - _nc_warning("vt100 keypad map incomplete:%s", show); - } -+ -+ /* -+ * These warnings are useful for consistency checks - it is possible that -+ * there are real terminals with mismatches in these -+ */ -+ ANDMISSING(key_ic, key_dc); - } - - static void -@@ -1216,6 +1493,74 @@ - ANDMISSING(parm_up_micro, micro_up); - } - -+static bool -+uses_SGR_39_49(const char *value) -+{ -+ return (strstr(value, "39;49") != 0 -+ || strstr(value, "49;39") != 0); -+} -+ -+/* -+ * Check consistency of termcap extensions related to "screen". -+ */ -+static void -+check_screen(TERMTYPE *tp) -+{ -+#if NCURSES_XNAMES -+ if (_nc_user_definable) { -+ int have_XT = tigetflag("XT"); -+ int have_XM = tigetflag("XM"); -+ int have_bce = back_color_erase; -+ bool have_kmouse = FALSE; -+ bool use_sgr_39_49 = FALSE; -+ char *name = _nc_first_name(tp->term_names); -+ -+ if (!VALID_BOOLEAN(have_bce)) { -+ have_bce = FALSE; -+ } -+ if (!VALID_BOOLEAN(have_XM)) { -+ have_XM = FALSE; -+ } -+ if (!VALID_BOOLEAN(have_XT)) { -+ have_XT = FALSE; -+ } -+ if (VALID_STRING(key_mouse)) { -+ have_kmouse = !strcmp("\033[M", key_mouse); -+ } -+ if (VALID_STRING(orig_colors)) { -+ use_sgr_39_49 = uses_SGR_39_49(orig_colors); -+ } else if (VALID_STRING(orig_pair)) { -+ use_sgr_39_49 = uses_SGR_39_49(orig_pair); -+ } -+ -+ if (have_XM && have_XT) { -+ _nc_warning("Screen's XT capability conflicts with XM"); -+ } else if (have_XT -+ && strstr(name, "screen") != 0 -+ && strchr(name, '.') != 0) { -+ _nc_warning("Screen's \"screen\" entries should not have XT set"); -+ } else if (have_XT) { -+ if (!have_kmouse && have_bce) { -+ if (VALID_STRING(key_mouse)) { -+ _nc_warning("Value of kmous inconsistent with screen's usage"); -+ } else { -+ _nc_warning("Expected kmous capability with XT"); -+ } -+ } -+ if (!have_bce && max_colors > 0) -+ _nc_warning("Expected bce capability with XT"); -+ if (!use_sgr_39_49 && have_bce && max_colors > 0) -+ _nc_warning("Expected orig_colors capability with XT to have 39/49 parameters"); -+ if (VALID_STRING(to_status_line)) -+ _nc_warning("\"tsl\" capability is redundant, given XT"); -+ } else { -+ if (have_kmouse && !have_XM) -+ _nc_warning("Expected XT to be set, given kmous"); -+ } -+ } -+#endif -+} -+ - /* - * Returns the expected number of parameters for the given capability. - */ -@@ -1527,7 +1872,7 @@ - show_where(unsigned level) - { - if (_nc_tracing >= DEBUG_LEVEL(level)) { -- char my_name[256]; -+ char my_name[MAX_NAME_SIZE]; - _nc_get_type(my_name); - _tracef("\"%s\", line %d, '%s'", - _nc_get_source(), -@@ -1539,6 +1884,58 @@ - #define show_where(level) /* nothing */ - #endif - -+typedef struct { -+ int keycode; -+ const char *name; -+ const char *value; -+} NAME_VALUE; -+ -+static NAME_VALUE * -+get_fkey_list(TERMTYPE *tp) -+{ -+ NAME_VALUE *result = typeMalloc(NAME_VALUE, NUM_STRINGS(tp) + 1); -+ const struct tinfo_fkeys *all_fkeys = _nc_tinfo_fkeys; -+ int used = 0; -+ int j; -+ -+ if (result == 0) -+ failed("get_fkey_list"); -+ -+ for (j = 0; all_fkeys[j].code; j++) { -+ char *a = tp->Strings[all_fkeys[j].offset]; -+ if (VALID_STRING(a)) { -+ result[used].keycode = (int) all_fkeys[j].code; -+ result[used].name = strnames[all_fkeys[j].offset]; -+ result[used].value = a; -+ ++used; -+ } -+ } -+#if NCURSES_XNAMES -+ for (j = STRCOUNT; j < NUM_STRINGS(tp); ++j) { -+ const char *name = ExtStrname(tp, j, strnames); -+ if (*name == 'k') { -+ result[used].keycode = -1; -+ result[used].name = name; -+ result[used].value = tp->Strings[j]; -+ ++used; -+ } -+ } -+#endif -+ result[used].keycode = 0; -+ return result; -+} -+ -+static void -+show_fkey_name(NAME_VALUE * data) -+{ -+ if (data->keycode > 0) { -+ fprintf(stderr, " %s", keyname(data->keycode)); -+ fprintf(stderr, " (capability \"%s\")", data->name); -+ } else { -+ fprintf(stderr, " capability \"%s\"", data->name); -+ } -+} -+ - /* other sanity-checks (things that we don't want in the normal - * logic that reads a terminfo entry) - */ -@@ -1547,7 +1944,6 @@ - { - bool conflict = FALSE; - unsigned j, k; -- char fkeys[STRCOUNT]; - - /* - * A terminal entry may contain more than one keycode assigned to -@@ -1555,44 +1951,50 @@ - * return one (the last one assigned). - */ - if (!(_nc_syntax == SYN_TERMCAP && capdump)) { -- memset(fkeys, 0, sizeof(fkeys)); -- for (j = 0; _nc_tinfo_fkeys[j].code; j++) { -- char *a = tp->Strings[_nc_tinfo_fkeys[j].offset]; -+ char *check = calloc((size_t) (NUM_STRINGS(tp) + 1), sizeof(char)); -+ NAME_VALUE *given = get_fkey_list(tp); -+ -+ if (check == 0) -+ failed("check_termtype"); -+ -+ for (j = 0; given[j].keycode; ++j) { -+ const char *a = given[j].value; - bool first = TRUE; -- if (!VALID_STRING(a)) -- continue; -- for (k = j + 1; _nc_tinfo_fkeys[k].code; k++) { -- char *b = tp->Strings[_nc_tinfo_fkeys[k].offset]; -- if (!VALID_STRING(b) -- || fkeys[k]) -+ -+ for (k = j + 1; given[k].keycode; k++) { -+ const char *b = given[k].value; -+ if (check[k]) - continue; - if (!_nc_capcmp(a, b)) { -- fkeys[j] = 1; -- fkeys[k] = 1; -+ check[j] = 1; -+ check[k] = 1; - if (first) { - if (!conflict) { - _nc_warning("Conflicting key definitions (using the last)"); - conflict = TRUE; - } -- fprintf(stderr, "... %s is the same as %s", -- keyname((int) _nc_tinfo_fkeys[j].code), -- keyname((int) _nc_tinfo_fkeys[k].code)); -+ fprintf(stderr, "..."); -+ show_fkey_name(given + j); -+ fprintf(stderr, " is the same as"); -+ show_fkey_name(given + k); - first = FALSE; - } else { -- fprintf(stderr, ", %s", -- keyname((int) _nc_tinfo_fkeys[k].code)); -+ fprintf(stderr, ", "); -+ show_fkey_name(given + k); - } - } - } - if (!first) - fprintf(stderr, "\n"); - } -+ free(given); -+ free(check); - } - -- for (j = 0; j < NUM_STRINGS(tp); j++) { -+ for_each_string(j, tp) { - char *a = tp->Strings[j]; - if (VALID_STRING(a)) -- check_params(tp, ExtStrname(tp, j, strnames), a); -+ check_params(tp, ExtStrname(tp, (int) j, strnames), a); - } - - check_acs(tp); -@@ -1600,6 +2002,7 @@ - check_cursor(tp); - check_keypad(tp); - check_printer(tp); -+ check_screen(tp); - - /* - * These may be mismatched because the terminal description relies on -diff -Naur ncurses-5.9/progs/toe.c ncurses-5.9.patch/progs/toe.c ---- ncurses-5.9/progs/toe.c 2010-05-02 00:04:08.000000000 +0200 -+++ ncurses-5.9.patch/progs/toe.c 2014-09-01 16:33:22.523792397 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -44,12 +44,23 @@ - #include <hashed_db.h> - #endif - --MODULE_ID("$Id: toe.c,v 1.52 2010/05/01 22:04:08 tom Exp $") -+MODULE_ID("$Id: toe.c,v 1.74 2013/12/15 01:08:28 tom Exp $") - - #define isDotname(name) (!strcmp(name, ".") || !strcmp(name, "..")) - -+typedef struct { -+ int db_index; -+ unsigned long checksum; -+ char *term_name; -+ char *description; -+} TERMDATA; -+ - const char *_nc_progname; - -+static TERMDATA *ptr_termdata; /* array of terminal data */ -+static size_t use_termdata; /* actual usage in ptr_termdata[] */ -+static size_t len_termdata; /* allocated size of ptr_termdata[] */ -+ - #if NO_LEAKS - #undef ExitProgram - static void ExitProgram(int code) GCC_NORETURN; -@@ -61,6 +72,8 @@ - } - #endif - -+static void failed(const char *) GCC_NORETURN; -+ - static void - failed(const char *msg) - { -@@ -68,6 +81,150 @@ - ExitProgram(EXIT_FAILURE); - } - -+static char * -+strmalloc(const char *value) -+{ -+ char *result = strdup(value); -+ if (result == 0) { -+ failed("strmalloc"); -+ } -+ return result; -+} -+ -+static TERMDATA * -+new_termdata(void) -+{ -+ size_t want = use_termdata + 1; -+ -+ if (want >= len_termdata) { -+ len_termdata = (2 * want) + 10; -+ ptr_termdata = typeRealloc(TERMDATA, len_termdata, ptr_termdata); -+ if (ptr_termdata == 0) -+ failed("ptr_termdata"); -+ } -+ -+ return ptr_termdata + use_termdata++; -+} -+ -+static int -+compare_termdata(const void *a, const void *b) -+{ -+ const TERMDATA *p = (const TERMDATA *) a; -+ const TERMDATA *q = (const TERMDATA *) b; -+ int result = strcmp(p->term_name, q->term_name); -+ -+ if (result == 0) { -+ result = (p->db_index - q->db_index); -+ } -+ return result; -+} -+ -+/* -+ * Sort the array of TERMDATA and print it. If more than one database is being -+ * reported, add a column to show which database has a given entry. -+ */ -+static void -+show_termdata(int eargc, char **eargv) -+{ -+ int j, k; -+ size_t n; -+ -+ if (use_termdata) { -+ if (eargc > 1) { -+ for (j = 0; j < eargc; ++j) { -+ for (k = 0; k <= j; ++k) { -+ printf("--"); -+ } -+ printf("> "); -+ printf("%s\n", eargv[j]); -+ } -+ } -+ if (use_termdata > 1) -+ qsort(ptr_termdata, use_termdata, sizeof(TERMDATA), compare_termdata); -+ for (n = 0; n < use_termdata; ++n) { -+ -+ /* -+ * If there is more than one database, show how they differ. -+ */ -+ if (eargc > 1) { -+ unsigned long check = 0; -+ k = 0; -+ for (;;) { -+ for (; k < ptr_termdata[n].db_index; ++k) { -+ printf("--"); -+ } -+ -+ /* -+ * If this is the first entry, or its checksum differs -+ * from the first entry's checksum, print "*". Otherwise -+ * it looks enough like a duplicate to print "+". -+ */ -+ printf("%c-", ((check == 0 -+ || (check != ptr_termdata[n].checksum)) -+ ? '*' -+ : '+')); -+ check = ptr_termdata[n].checksum; -+ -+ ++k; -+ if ((n + 1) >= use_termdata -+ || strcmp(ptr_termdata[n].term_name, -+ ptr_termdata[n + 1].term_name)) { -+ break; -+ } -+ ++n; -+ } -+ for (; k < eargc; ++k) { -+ printf("--"); -+ } -+ printf(":\t"); -+ } -+ -+ (void) printf("%-10s\t%s\n", -+ ptr_termdata[n].term_name, -+ ptr_termdata[n].description); -+ } -+ } -+} -+ -+static void -+free_termdata(void) -+{ -+ if (ptr_termdata != 0) { -+ while (use_termdata != 0) { -+ --use_termdata; -+ free(ptr_termdata[use_termdata].term_name); -+ free(ptr_termdata[use_termdata].description); -+ } -+ free(ptr_termdata); -+ ptr_termdata = 0; -+ } -+ use_termdata = 0; -+ len_termdata = 0; -+} -+ -+static char ** -+allocArgv(size_t count) -+{ -+ char **result = typeCalloc(char *, count + 1); -+ if (result == 0) -+ failed("realloc eargv"); -+ -+ assert(result != 0); -+ return result; -+} -+ -+static void -+freeArgv(char **argv) -+{ -+ if (argv) { -+ int count = 0; -+ while (argv[count]) { -+ free(argv[count++]); -+ } -+ free(argv); -+ } -+} -+ - #if USE_HASHED_DB - static bool - make_db_name(char *dst, const char *src, unsigned limit) -@@ -75,67 +232,100 @@ - static const char suffix[] = DBM_SUFFIX; - - bool result = FALSE; -- unsigned lens = sizeof(suffix) - 1; -- unsigned size = strlen(src); -- unsigned need = lens + size; -+ size_t lens = sizeof(suffix) - 1; -+ size_t size = strlen(src); -+ size_t need = lens + size; - - if (need <= limit) { - if (size >= lens -- && !strcmp(src + size - lens, suffix)) -- (void) strcpy(dst, src); -- else -- (void) sprintf(dst, "%s%s", src, suffix); -+ && !strcmp(src + size - lens, suffix)) { -+ _nc_STRCPY(dst, src, PATH_MAX); -+ } else { -+ _nc_SPRINTF(dst, _nc_SLIMIT(PATH_MAX) "%s%s", src, suffix); -+ } - result = TRUE; - } - return result; - } - #endif - --static bool --is_database(const char *path) -+typedef void (DescHook) (int /* db_index */ , -+ int /* db_limit */ , -+ const char * /* term_name */ , -+ TERMTYPE * /* term */ ); -+ -+static const char * -+term_description(TERMTYPE *tp) - { -- bool result = FALSE; --#if USE_DATABASE -- if (_nc_is_dir_path(path) && access(path, R_OK | X_OK) == 0) { -- result = TRUE; -- } --#endif --#if USE_TERMCAP -- if (_nc_is_file_path(path) && access(path, R_OK) == 0) { -- result = TRUE; -+ const char *desc; -+ -+ if (tp->term_names == 0 -+ || (desc = strrchr(tp->term_names, '|')) == 0 -+ || (*++desc == '\0')) { -+ desc = "(No description)"; - } --#endif --#if USE_HASHED_DB -- if (!result) { -- char filename[PATH_MAX]; -- if (_nc_is_file_path(path) && access(path, R_OK) == 0) { -- result = TRUE; -- } else if (make_db_name(filename, path, sizeof(filename))) { -- if (_nc_is_file_path(filename) && access(filename, R_OK) == 0) { -- result = TRUE; -- } -+ -+ return desc; -+} -+ -+/* display a description for the type */ -+static void -+deschook(int db_index, int db_limit, const char *term_name, TERMTYPE *tp) -+{ -+ (void) db_index; -+ (void) db_limit; -+ (void) printf("%-10s\t%s\n", term_name, term_description(tp)); -+} -+ -+static unsigned long -+string_sum(const char *value) -+{ -+ unsigned long result = 0; -+ -+ if ((intptr_t) value == (intptr_t) (-1)) { -+ result = ~result; -+ } else if (value) { -+ while (*value) { -+ result += UChar(*value); -+ ++value; - } - } --#endif - return result; - } - --static void --deschook(const char *cn, TERMTYPE *tp) --/* display a description for the type */ -+static unsigned long -+checksum_of(TERMTYPE *tp) - { -- const char *desc; -+ unsigned long result = string_sum(tp->term_names); -+ unsigned i; - -- if ((desc = strrchr(tp->term_names, '|')) == 0 || *++desc == '\0') -- desc = "(No description)"; -+ for (i = 0; i < NUM_BOOLEANS(tp); i++) { -+ result += (unsigned long) (tp->Booleans[i]); -+ } -+ for (i = 0; i < NUM_NUMBERS(tp); i++) { -+ result += (unsigned long) (tp->Numbers[i]); -+ } -+ for (i = 0; i < NUM_STRINGS(tp); i++) { -+ result += string_sum(tp->Strings[i]); -+ } -+ return result; -+} -+ -+/* collect data, to sort before display */ -+static void -+sorthook(int db_index, int db_limit, const char *term_name, TERMTYPE *tp) -+{ -+ TERMDATA *data = new_termdata(); - -- (void) printf("%-10s\t%s\n", cn, desc); -+ data->db_index = db_index; -+ data->checksum = ((db_limit > 1) ? checksum_of(tp) : 0); -+ data->term_name = strmalloc(term_name); -+ data->description = strmalloc(term_description(tp)); - } - --#if USE_TERMCAP -+#if NCURSES_USE_TERMCAP - static void --show_termcap(char *buffer, -- void (*hook) (const char *, TERMTYPE *tp)) -+show_termcap(int db_index, int db_limit, char *buffer, DescHook hook) - { - TERMTYPE data; - char *next = strchr(buffer, ':'); -@@ -149,26 +339,42 @@ - if (last) - ++last; - -- data.term_names = strdup(buffer); -+ memset(&data, 0, sizeof(data)); -+ data.term_names = strmalloc(buffer); - while ((next = strtok(list, "|")) != 0) { - if (next != last) -- hook(next, &data); -+ hook(db_index, db_limit, next, &data); - list = 0; - } - free(data.term_names); - } - #endif - -+#if NCURSES_USE_DATABASE -+static char * -+copy_entryname(DIRENT * src) -+{ -+ size_t len = NAMLEN(src); -+ char *result = malloc(len + 1); -+ if (result == 0) -+ failed("copy entryname"); -+ memcpy(result, src->d_name, len); -+ result[len] = '\0'; -+ -+ return result; -+} -+#endif -+ - static int - typelist(int eargc, char *eargv[], -- bool verbosity, -- void (*hook) (const char *, TERMTYPE *tp)) -+ int verbosity, -+ DescHook hook) - /* apply a function to each entry in given terminfo directories */ - { - int i; - - for (i = 0; i < eargc; i++) { --#if USE_DATABASE -+#if NCURSES_USE_DATABASE - if (_nc_is_dir_path(eargv[i])) { - char *cwd_buf = 0; - DIR *termdir; -@@ -179,28 +385,35 @@ - (void) fprintf(stderr, - "%s: can't open terminfo directory %s\n", - _nc_progname, eargv[i]); -- return (EXIT_FAILURE); -- } else if (verbosity) -+ continue; -+ } -+ -+ if (verbosity) - (void) printf("#\n#%s:\n#\n", eargv[i]); - - while ((subdir = readdir(termdir)) != 0) { -- size_t len = NAMLEN(subdir); -- size_t cwd_len = len + strlen(eargv[i]) + 3; -- char name_1[PATH_MAX]; -+ size_t cwd_len; -+ char *name_1; - DIR *entrydir; - DIRENT *entry; - -+ name_1 = copy_entryname(subdir); -+ if (isDotname(name_1)) { -+ free(name_1); -+ continue; -+ } -+ -+ cwd_len = NAMLEN(subdir) + strlen(eargv[i]) + 3; - cwd_buf = typeRealloc(char, cwd_len, cwd_buf); - if (cwd_buf == 0) - failed("realloc cwd_buf"); - - assert(cwd_buf != 0); - -- strncpy(name_1, subdir->d_name, len)[len] = '\0'; -- if (isDotname(name_1)) -- continue; -+ _nc_SPRINTF(cwd_buf, _nc_SLIMIT(cwd_len) -+ "%s/%s/", eargv[i], name_1); -+ free(name_1); - -- (void) sprintf(cwd_buf, "%s/%.*s/", eargv[i], (int) len, name_1); - if (chdir(cwd_buf) != 0) - continue; - -@@ -210,15 +423,16 @@ - continue; - } - while ((entry = readdir(entrydir)) != 0) { -- char name_2[PATH_MAX]; -+ char *name_2; - TERMTYPE lterm; - char *cn; - int status; - -- len = NAMLEN(entry); -- strncpy(name_2, entry->d_name, len)[len] = '\0'; -- if (isDotname(name_2) || !_nc_is_file_path(name_2)) -+ name_2 = copy_entryname(entry); -+ if (isDotname(name_2) || !_nc_is_file_path(name_2)) { -+ free(name_2); - continue; -+ } - - status = _nc_read_file_entry(name_2, &lterm); - if (status <= 0) { -@@ -226,6 +440,10 @@ - (void) fprintf(stderr, - "%s: couldn't open terminfo file %s.\n", - _nc_progname, name_2); -+ free(cwd_buf); -+ free(name_2); -+ closedir(entrydir); -+ closedir(termdir); - return (EXIT_FAILURE); - } - -@@ -233,21 +451,26 @@ - cn = _nc_first_name(lterm.term_names); - if (!strcmp(cn, name_2)) { - /* apply the selected hook function */ -- (*hook) (cn, &lterm); -+ hook(i, eargc, cn, &lterm); - } - _nc_free_termtype(&lterm); -+ free(name_2); - } - closedir(entrydir); - } - closedir(termdir); - if (cwd_buf != 0) - free(cwd_buf); -+ continue; - } - #if USE_HASHED_DB - else { - DB *capdbp; - char filename[PATH_MAX]; - -+ if (verbosity) -+ (void) printf("#\n#%s:\n#\n", eargv[i]); -+ - if (make_db_name(filename, eargv[i], sizeof(filename))) { - if ((capdbp = _nc_db_open(filename, FALSE)) != 0) { - DBT key, data; -@@ -265,7 +488,7 @@ - /* only visit things once, by primary name */ - cn = _nc_first_name(lterm.term_names); - /* apply the selected hook function */ -- (*hook) (cn, &lterm); -+ hook(i, eargc, cn, &lterm); - _nc_free_termtype(&lterm); - } - } -@@ -273,44 +496,51 @@ - } - - _nc_db_close(capdbp); -+ continue; - } - } - } - #endif - #endif --#if USE_TERMCAP -+#if NCURSES_USE_TERMCAP - #if HAVE_BSD_CGETENT -- char *db_array[2]; -- char *buffer = 0; -+ { -+ CGETENT_CONST char *db_array[2]; -+ char *buffer = 0; - -- if (verbosity) -- (void) printf("#\n#%s:\n#\n", eargv[i]); -+ if (verbosity) -+ (void) printf("#\n#%s:\n#\n", eargv[i]); - -- db_array[0] = eargv[i]; -- db_array[1] = 0; -+ db_array[0] = eargv[i]; -+ db_array[1] = 0; - -- if (cgetfirst(&buffer, db_array)) { -- show_termcap(buffer, hook); -- free(buffer); -- while (cgetnext(&buffer, db_array)) { -- show_termcap(buffer, hook); -+ if (cgetfirst(&buffer, db_array) > 0) { -+ show_termcap(i, eargc, buffer, hook); - free(buffer); -+ while (cgetnext(&buffer, db_array) > 0) { -+ show_termcap(i, eargc, buffer, hook); -+ free(buffer); -+ } -+ cgetclose(); -+ continue; - } - } -- cgetclose(); - #else - /* scan termcap text-file only */ - if (_nc_is_file_path(eargv[i])) { - char buffer[2048]; - FILE *fp; - -+ if (verbosity) -+ (void) printf("#\n#%s:\n#\n", eargv[i]); -+ - if ((fp = fopen(eargv[i], "r")) != 0) { - while (fgets(buffer, sizeof(buffer), fp) != 0) { - if (*buffer == '#') - continue; - if (isspace(*buffer)) - continue; -- show_termcap(buffer, hook); -+ show_termcap(i, eargc, buffer, hook); - } - fclose(fp); - } -@@ -319,13 +549,18 @@ - #endif - } - -+ if (hook == sorthook) { -+ show_termdata(eargc, eargv); -+ free_termdata(); -+ } -+ - return (EXIT_SUCCESS); - } - - static void - usage(void) - { -- (void) fprintf(stderr, "usage: %s [-ahuUV] [-v n] [file...]\n", _nc_progname); -+ (void) fprintf(stderr, "usage: %s [-ahsuUV] [-v n] [file...]\n", _nc_progname); - ExitProgram(EXIT_FAILURE); - } - -@@ -340,23 +575,24 @@ - unsigned i; - int code; - int this_opt, last_opt = '?'; -- int v_opt = 0; -+ unsigned v_opt = 0; -+ DescHook *hook = deschook; - - _nc_progname = _nc_rootname(argv[0]); - -- while ((this_opt = getopt(argc, argv, "0123456789ahu:vU:V")) != -1) { -+ while ((this_opt = getopt(argc, argv, "0123456789ahsu:vU:V")) != -1) { - /* handle optional parameter */ - if (isdigit(this_opt)) { - switch (last_opt) { - case 'v': -- v_opt = (this_opt - '0'); -+ v_opt = (unsigned) (this_opt - '0'); - break; - default: - if (isdigit(last_opt)) - v_opt *= 10; - else - v_opt = 0; -- v_opt += (this_opt - '0'); -+ v_opt += (unsigned) (this_opt - '0'); - last_opt = this_opt; - } - continue; -@@ -368,6 +604,9 @@ - case 'h': - header = TRUE; - break; -+ case 's': -+ hook = sorthook; -+ break; - case 'u': - direct_dependencies = TRUE; - report_file = optarg; -@@ -450,7 +689,7 @@ - * If we get this far, user wants a simple terminal type listing. - */ - if (optind < argc) { -- code = typelist(argc - optind, argv + optind, header, deschook); -+ code = typelist(argc - optind, argv + optind, header, hook); - } else if (all_dirs) { - DBDIRS state; - int offset; -@@ -460,64 +699,41 @@ - - code = EXIT_FAILURE; - for (pass = 0; pass < 2; ++pass) { -- unsigned count = 0; -+ size_t count = 0; - - _nc_first_db(&state, &offset); - while ((path = _nc_next_db(&state, &offset)) != 0) { -- if (!is_database(path)) { -- ; -- } else if (eargv != 0) { -- unsigned n; -- int found = FALSE; -- -- /* eliminate duplicates */ -- for (n = 0; n < count; ++n) { -- if (!strcmp(path, eargv[n])) { -- found = TRUE; -- break; -- } -- } -- if (!found) { -- eargv[count] = strdup(path); -- ++count; -- } -- } else { -- ++count; -+ if (pass) { -+ eargv[count] = strmalloc(path); - } -+ ++count; - } - if (!pass) { -- eargv = typeCalloc(char *, count + 1); -+ eargv = allocArgv(count); - if (eargv == 0) -- failed("realloc eargv"); -- -- assert(eargv != 0); -+ failed("eargv"); - } else { -- code = typelist((int) count, eargv, header, deschook); -- while (count-- > 0) -- free(eargv[count]); -- free(eargv); -+ code = typelist((int) count, eargv, header, hook); -+ freeArgv(eargv); - } - } - } else { - DBDIRS state; - int offset; - const char *path; -- char *eargv[3]; -- int count = 0; -+ char **eargv = allocArgv((size_t) 2); -+ size_t count = 0; - -+ if (eargv == 0) -+ failed("eargv"); - _nc_first_db(&state, &offset); -- while ((path = _nc_next_db(&state, &offset)) != 0) { -- if (is_database(path)) { -- eargv[count++] = strdup(path); -- break; -- } -+ if ((path = _nc_next_db(&state, &offset)) != 0) { -+ eargv[count++] = strmalloc(path); - } -- eargv[count] = 0; - -- code = typelist(count, eargv, header, deschook); -+ code = typelist((int) count, eargv, header, hook); - -- while (count-- > 0) -- free(eargv[count]); -+ freeArgv(eargv); - } - _nc_last_db(); - -diff -Naur ncurses-5.9/progs/tput.c ncurses-5.9.patch/progs/tput.c ---- ncurses-5.9/progs/tput.c 2010-01-09 17:53:24.000000000 +0100 -+++ ncurses-5.9.patch/progs/tput.c 2014-09-01 16:33:22.524792400 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -47,7 +47,7 @@ - #endif - #include <transform.h> - --MODULE_ID("$Id: tput.c,v 1.46 2010/01/09 16:53:24 tom Exp $") -+MODULE_ID("$Id: tput.c,v 1.49 2013/09/28 20:57:25 tom Exp $") - - #define PUTS(s) fputs(s, stdout) - #define PUTCHAR(c) putchar(c) -@@ -94,9 +94,6 @@ - * Lookup the type of call we should make to tparm(). This ignores the actual - * terminfo capability (bad, because it is not extensible), but makes this - * code portable to platforms where sizeof(int) != sizeof(char *). -- * -- * FIXME: If we want extensibility, analyze the capability string as we do -- * in tparm() to decide how to parse the varargs list. - */ - static TParams - tparm_type(const char *name) -@@ -306,7 +303,7 @@ - } else if (s != ABSENT_STRING) { - if (argc > 1) { - int k; -- int popcount; -+ int ignored; - long numbers[1 + NUM_PARM]; - char *strings[1 + NUM_PARM]; - char *p_is_s[NUM_PARM]; -@@ -337,8 +334,8 @@ - break; - case Numbers: - default: -- (void) _nc_tparm_analyze(s, p_is_s, &popcount); --#define myParam(n) (p_is_s[n - 1] != 0 ? ((long) strings[n]) : numbers[n]) -+ (void) _nc_tparm_analyze(s, p_is_s, &ignored); -+#define myParam(n) (p_is_s[n - 1] != 0 ? ((TPARM_ARG) strings[n]) : numbers[n]) - s = TPARM_9(s, - myParam(1), - myParam(2), -diff -Naur ncurses-5.9/progs/transform.c ncurses-5.9.patch/progs/transform.c ---- ncurses-5.9/progs/transform.c 2010-09-04 23:16:17.000000000 +0200 -+++ ncurses-5.9.patch/progs/transform.c 2014-09-01 16:33:22.524792400 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2009-2010,2011 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,21 +34,21 @@ - - #include <transform.h> - --MODULE_ID("$Id: transform.c,v 1.2 2010/09/04 21:16:17 tom Exp $") -+MODULE_ID("$Id: transform.c,v 1.3 2011/05/14 22:41:17 tom Exp $") - - #ifdef SUFFIX_IGNORED - static void --trim_suffix(const char *a, unsigned *len) -+trim_suffix(const char *a, size_t *len) - { - const char ignore[] = SUFFIX_IGNORED; - - if (sizeof(ignore) != 0) { - bool trim = FALSE; -- unsigned need = (sizeof(ignore) - 1); -+ size_t need = (sizeof(ignore) - 1); - - if (*len > need) { -- unsigned first = *len - need; -- unsigned n; -+ size_t first = *len - need; -+ size_t n; - trim = TRUE; - for (n = first; n < *len; ++n) { - if (tolower(UChar(a[n])) != tolower(UChar(ignore[n - first]))) { -@@ -69,8 +69,8 @@ - bool - same_program(const char *a, const char *b) - { -- unsigned len_a = strlen(a); -- unsigned len_b = strlen(b); -+ size_t len_a = strlen(a); -+ size_t len_b = strlen(b); - - trim_suffix(a, &len_a); - trim_suffix(b, &len_b); -diff -Naur ncurses-5.9/progs/tset.c ncurses-5.9.patch/progs/tset.c ---- ncurses-5.9/progs/tset.c 2010-05-01 23:42:46.000000000 +0200 -+++ ncurses-5.9.patch/progs/tset.c 2014-09-01 16:33:22.524792400 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -119,7 +119,7 @@ - #include <dump_entry.h> - #include <transform.h> - --MODULE_ID("$Id: tset.c,v 1.82 2010/05/01 21:42:46 tom Exp $") -+MODULE_ID("$Id: tset.c,v 1.93 2013/12/15 01:05:56 tom Exp $") - - /* - * SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS, -@@ -148,6 +148,10 @@ - #undef CTRL - #define CTRL(x) ((x) & 0x1f) - -+static void failed(const char *) GCC_NORETURN; -+static void exit_error(void) GCC_NORETURN; -+static void err(const char *,...) GCC_NORETURN; -+ - const char *_nc_progname = "tset"; - - static TTY mode, oldmode, original; -@@ -160,7 +164,10 @@ - static int terasechar = -1; /* new erase character */ - static int intrchar = -1; /* new interrupt character */ - static int tkillchar = -1; /* new kill character */ -+ -+#if HAVE_SIZECHANGE - static int tlines, tcolumns; /* window size */ -+#endif - - #define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c)) - -@@ -203,13 +210,13 @@ - failed(const char *msg) - { - char temp[BUFSIZ]; -- unsigned len = strlen(_nc_progname) + 2; -+ size_t len = strlen(_nc_progname) + 2; - - if ((int) len < (int) sizeof(temp) - 12) { -- strcpy(temp, _nc_progname); -- strcat(temp, ": "); -+ _nc_STRCPY(temp, _nc_progname, sizeof(temp)); -+ _nc_STRCAT(temp, ": ", sizeof(temp)); - } else { -- strcpy(temp, "tset: "); -+ _nc_STRCPY(temp, "tset: ", sizeof(temp)); - } - perror(strncat(temp, msg, sizeof(temp) - strlen(temp) - 2)); - exit_error(); -@@ -467,9 +474,6 @@ - mapp->speed = tbaudrate(p); - } - -- if (arg == (char *) 0) /* Non-optional type. */ -- goto badmopt; -- - mapp->type = arg; - - /* Terminate porttype, if specified. */ -@@ -527,19 +531,19 @@ - match = TRUE; - break; - case EQ: -- match = (ospeed == mapp->speed); -+ match = ((int) ospeed == mapp->speed); - break; - case GE: -- match = (ospeed >= mapp->speed); -+ match = ((int) ospeed >= mapp->speed); - break; - case GT: -- match = (ospeed > mapp->speed); -+ match = ((int) ospeed > mapp->speed); - break; - case LE: -- match = (ospeed <= mapp->speed); -+ match = ((int) ospeed <= mapp->speed); - break; - case LT: -- match = (ospeed < mapp->speed); -+ match = ((int) ospeed < mapp->speed); - break; - default: - match = FALSE; -@@ -631,13 +635,14 @@ - * real entry from /etc/termcap. This prevents us from being fooled - * by out of date stuff in the environment. - */ -- found:if ((p = getenv("TERMCAP")) != 0 && !_nc_is_abs_path(p)) { -+ found: -+ if ((p = getenv("TERMCAP")) != 0 && !_nc_is_abs_path(p)) { - /* 'unsetenv("TERMCAP")' is not portable. - * The 'environ' array is better. - */ - int n; - for (n = 0; environ[n] != 0; n++) { -- if (!strncmp("TERMCAP=", environ[n], 8)) { -+ if (!strncmp("TERMCAP=", environ[n], (size_t) 8)) { - while ((environ[n] = environ[n + 1]) != 0) { - n++; - } -@@ -788,14 +793,14 @@ - mode.c_cc[VWERASE] = CHK(mode.c_cc[VWERASE], CWERASE); - #endif - -- mode.c_iflag &= ~(IGNBRK | PARMRK | INPCK | ISTRIP | INLCR | IGNCR -+ mode.c_iflag &= ~((unsigned) (IGNBRK | PARMRK | INPCK | ISTRIP | INLCR | IGNCR - #ifdef IUCLC -- | IUCLC -+ | IUCLC - #endif - #ifdef IXANY -- | IXANY -+ | IXANY - #endif -- | IXOFF); -+ | IXOFF)); - - mode.c_iflag |= (BRKINT | IGNPAR | ICRNL | IXON - #ifdef IMAXBEL -@@ -803,44 +808,44 @@ - #endif - ); - -- mode.c_oflag &= ~(0 -+ mode.c_oflag &= ~((unsigned) (0 - #ifdef OLCUC -- | OLCUC -+ | OLCUC - #endif - #ifdef OCRNL -- | OCRNL -+ | OCRNL - #endif - #ifdef ONOCR -- | ONOCR -+ | ONOCR - #endif - #ifdef ONLRET -- | ONLRET -+ | ONLRET - #endif - #ifdef OFILL -- | OFILL -+ | OFILL - #endif - #ifdef OFDEL -- | OFDEL -+ | OFDEL - #endif - #ifdef NLDLY -- | NLDLY -+ | NLDLY - #endif - #ifdef CRDLY -- | CRDLY -+ | CRDLY - #endif - #ifdef TABDLY -- | TABDLY -+ | TABDLY - #endif - #ifdef BSDLY -- | BSDLY -+ | BSDLY - #endif - #ifdef VTDLY -- | VTDLY -+ | VTDLY - #endif - #ifdef FFDLY -- | FFDLY -+ | FFDLY - #endif -- ); -+ )); - - mode.c_oflag |= (OPOST - #ifdef ONLCR -@@ -848,19 +853,19 @@ - #endif - ); - -- mode.c_cflag &= ~(CSIZE | CSTOPB | PARENB | PARODD | CLOCAL); -+ mode.c_cflag &= ~((unsigned) (CSIZE | CSTOPB | PARENB | PARODD | CLOCAL)); - mode.c_cflag |= (CS8 | CREAD); -- mode.c_lflag &= ~(ECHONL | NOFLSH -+ mode.c_lflag &= ~((unsigned) (ECHONL | NOFLSH - #ifdef TOSTOP -- | TOSTOP -+ | TOSTOP - #endif - #ifdef ECHOPTR -- | ECHOPRT -+ | ECHOPRT - #endif - #ifdef XCASE -- | XCASE -+ | XCASE - #endif -- ); -+ )); - - mode.c_lflag |= (ISIG | ICANON | ECHO | ECHOE | ECHOK - #ifdef ECHOCTL -@@ -907,14 +912,23 @@ - set_control_chars(void) - { - #ifdef TERMIOS -- if (DISABLED(mode.c_cc[VERASE]) || terasechar >= 0) -- mode.c_cc[VERASE] = (terasechar >= 0) ? terasechar : default_erase(); -- -- if (DISABLED(mode.c_cc[VINTR]) || intrchar >= 0) -- mode.c_cc[VINTR] = (intrchar >= 0) ? intrchar : CINTR; -- -- if (DISABLED(mode.c_cc[VKILL]) || tkillchar >= 0) -- mode.c_cc[VKILL] = (tkillchar >= 0) ? tkillchar : CKILL; -+ if (DISABLED(mode.c_cc[VERASE]) || terasechar >= 0) { -+ mode.c_cc[VERASE] = UChar((terasechar >= 0) -+ ? terasechar -+ : default_erase()); -+ } -+ -+ if (DISABLED(mode.c_cc[VINTR]) || intrchar >= 0) { -+ mode.c_cc[VINTR] = UChar((intrchar >= 0) -+ ? intrchar -+ : CINTR); -+ } -+ -+ if (DISABLED(mode.c_cc[VKILL]) || tkillchar >= 0) { -+ mode.c_cc[VKILL] = UChar((tkillchar >= 0) -+ ? tkillchar -+ : CKILL); -+ } - #endif - } - -@@ -970,9 +984,9 @@ - if (newline != (char *) 0 && newline[0] == '\n' && !newline[1]) { - /* Newline, not linefeed. */ - #ifdef ONLCR -- mode.c_oflag &= ~ONLCR; -+ mode.c_oflag &= ~((unsigned) ONLCR); - #endif -- mode.c_iflag &= ~ICRNL; -+ mode.c_iflag &= ~((unsigned) ICRNL); - } - #ifdef __OBSOLETE__ - if (tgetflag("HD")) /* Half duplex. */ -@@ -1043,11 +1057,18 @@ - { - if (set_tab && clear_all_tabs) { - int c; -+ int lim = -+#if HAVE_SIZECHANGE -+ tcolumns -+#else -+ columns -+#endif -+ ; - - (void) putc('\r', stderr); /* Force to left margin. */ - tputs(clear_all_tabs, 0, outc); - -- for (c = 8; c < tcolumns; c += 8) { -+ for (c = 8; c < lim; c += 8) { - /* Get to the right column. In BSD tset, this - * used to try a bunch of half-clever things - * with cup and hpa, for an average saving of -@@ -1273,10 +1294,10 @@ - (void) get_termcap_entry(*argv); - - if (!noset) { -+#if HAVE_SIZECHANGE - tcolumns = columns; - tlines = lines; - --#if HAVE_SIZECHANGE - if (opt_w) { - STRUCT_WINSIZE win; - /* Set window size if not set already */ -diff -Naur ncurses-5.9/README ncurses-5.9.patch/README ---- ncurses-5.9/README 2006-04-23 00:19:37.000000000 +0200 -+++ ncurses-5.9.patch/README 2014-09-01 16:33:22.232791916 +0200 -@@ -1,5 +1,5 @@ - ------------------------------------------------------------------------------- ---- Copyright (c) 1998-2004,2006 Free Software Foundation, Inc. -- -+-- Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. -- - -- -- - -- Permission is hereby granted, free of charge, to any person obtaining a -- - -- copy of this software and associated documentation files (the -- -@@ -25,7 +25,7 @@ - -- sale, use or other dealings in this Software without prior written -- - -- authorization. -- - ------------------------------------------------------------------------------- ---- $Id: README,v 1.23 2006/04/22 22:19:37 tom Exp $ -+-- $Id: README,v 1.25 2012/08/11 20:11:26 tom Exp $ - ------------------------------------------------------------------------------- - README file for the ncurses package - -@@ -78,6 +78,10 @@ - library interfaces are not binary-compatible with the non-wide-character - version. - -+If you configure using the --enable-reentrant option, a "t" is appended to the -+library names (e.g., libncursest.a) and the resulting libraries have a -+different binary interface which makes the ncurses interface more "opaque". -+ - The ncurses libraries implement the curses API. The panel, menu and forms - libraries implement clones of the SVr4 panel, menu and forms APIs. The source - code for these lives in the `ncurses', `panel', `menu', and `form' directories -@@ -122,8 +126,9 @@ - tic -- terminfo source to binary compiler - infocmp -- terminfo binary to source decompiler/comparator - clear -- emits clear-screen for current terminal -+ tabs -- set tabs on a terminal - tput -- shell-script access to terminal capabilities. -- toe -- table of entries utility -+ toe -- table of entries utility - tset -- terminal-initialization utility - - The first two (tic and infocmp) are used for manipulating terminfo -@@ -153,8 +158,10 @@ - configuration scripts, porting, mods to adhere to XSI Curses in the - areas of background color, terminal modes. Also memory leak testing, - the wresize, default colors and key definition extensions and numerous -- bug fixes (more than half of those enumerated in NEWS beginning with -- the internal release 1.8.9). -+ bug fixes -- more than half of those enumerated in NEWS beginning with -+ the internal release 1.8.9, see -+ -+ http://invisible-island.net/personal/changelogs.html - - Florian La Roche (official maintainer for FSF's ncurses 4.2) - Beginning with release 4.2, ncurses is distributed under an MIT-style -diff -Naur ncurses-5.9/README.MinGW ncurses-5.9.patch/README.MinGW ---- ncurses-5.9/README.MinGW 2011-02-26 17:57:17.000000000 +0100 -+++ ncurses-5.9.patch/README.MinGW 2014-09-01 16:33:22.233791918 +0200 -@@ -1,5 +1,5 @@ - ------------------------------------------------------------------------------- ---- Copyright (c) 2008-2010,2011 Free Software Foundation, Inc. -- -+-- Copyright (c) 2008-2011,2012 Free Software Foundation, Inc. -- - -- -- - -- Permission is hereby granted, free of charge, to any person obtaining a -- - -- copy of this software and associated documentation files (the -- -@@ -25,7 +25,7 @@ - -- sale, use or other dealings in this Software without prior written -- - -- authorization. -- - ------------------------------------------------------------------------------- ---- $Id: README.MinGW,v 1.5 2011/02/26 16:57:17 tom Exp $ -+-- $Id: README.MinGW,v 1.9 2012/09/22 17:46:04 tom Exp $ - -- Author: Juergen Pfeifer - ------------------------------------------------------------------------------- - -@@ -39,7 +39,7 @@ - To build ncurses for native Windows, you need the MinGW toolchain. The - original MinGW toolchain from the above site is only for 32-Bit Windows. As - Windows Server - and also regular workstations - are moving to 64-Bit, it --seems to be reasonable to have a toolchain that supports both architectures. -+seems to be reasonable to have a toolchain that supports both architectures. - I recommend to use the TDM gcc toolchain which you can find at - http://tdm-gcc.tdragon.net/download. Go to the download section and select - the bundle installer for tdm64 (MinGW-w64). This installs a multilib version -@@ -47,7 +47,7 @@ - versions. It also comes with a working pthread implementation. - - The latest config and build scripts we use for MinGW have only been tested --for the gcc-4.4 compiler toolchain (or better). -+for the gcc-4.6.1 compiler toolchain (or better). - - Using MinGW is a pragmatic decision, it's the easiest way to port this - heavily UNIX based sourcebase to native Windows. The goal is of course -@@ -55,22 +55,13 @@ - common traditional development environments on Windows, mainly with - Microsoft Visual Studio. - --If you start a bash from the MSYS environment, please make sure that the --Microsoft Development tools are in your PATH right after the MinGW --tools. The LIB.EXE tool is the only one needed. You need this only if --you want to build DLLs that work with native Windows programs. If you --don't have any Microsoft Development tools on your machine, consider --at least to get the free "Visual C++ 2010 Express Edition". --It contains the LIB.EXE tool. You may also use this compiler to test --writing native Windows programs using the ncurses DLLs without using --MinGW then for writing apps. -- --It is necessary to unset the TERM environment variable, to activate the --Windows console-driver. -+The TERM environment variable must be set specially to active the Windows -+console-driver. The driver checks if TERM is set to "#win32con" (explicit -+use) or if TERM is unset or empty (implicit). - - Please also make sure that MSYS links to the correct directory containing - your MinGW toolchain. For TDM this is usually C:\MinGW64. In your Windows --CMD.EXE command shell go to the MSYS root directory (most probably -+CMD.EXE command shell go to the MSYS root directory (most probably - C:\MSYS or C:\MSYS\1.0) and verify, that there is a junction point mingw - that points to the MinGW toolchain directory. If not, delete the mingw - directory and use the mklink command (or the linkd.exe utility on older -@@ -79,62 +70,60 @@ - This code requires WindowsNT 5.1 or better, which means on the client - Windows XP or better, on the server Windows Server 2003 or better. - --In order to build ncurses for the planned interop layer with .NET, we --recommend to use these options with configure -+I recommend using libtool to build ncurses on MinGW, because libtool -+knows exactly how to build dll's on Windows for use with MinGW. -+ -+To build a modern but still small footprint ncurses that provides -+hooks for interop, I recommend using these options: - -+ --with-libtool - --disable-home-terminfo -- --enable-reentrant -+ --enable-database -+ --disable-termcap - --enable-sp-funcs - --enable-term-driver - --enable-interop -- --with-pthread (if using TDM toolchain as recommended) - --This is the configuration commandline as I'm using it at the moment: -+This is the configuration commandline as I'm using it at the moment (assuming -+environment variable MINGW_ROOT to hold the root directory name of your MinGW -+build): - - ./configure \ -- --prefix=/mingw \ -- --without-cxx-binding \ -+ --prefix=$MINGW_ROOT \ -+ --with-cxx \ - --without-ada \ - --enable-warnings \ - --enable-assertions \ -- --enable-reentrant \ -- --with-debug \ -- --with-normal \ - --disable-home-terminfo \ -+ --enable-database \ - --enable-sp-funcs \ - --enable-term-driver \ - --enable-interop \ -- --with-pthread -+ --disable-termcap \ -+ --with-progs \ -+ --with-libtool \ -+ --enable-pc-files \ -+ --mandir=$MINGW_ROOT/share/man - --If you are on a 64-Bit Windows system and want to build a 32-Bit version --of ncurses, you may use this commandline for configuration (when using --the TDM toolchain): -- --CC="gcc -m32" LD="ld -m32" ./configure \ -- --prefix=/mingw \ -- --without-cxx-binding \ -- --without-ada \ -- --enable-warnings \ -- --enable-assertions \ -- --enable-reentrant \ -- --with-debug \ -- --with-normal \ -- --disable-home-terminfo \ -- --enable-sp-funcs \ -- --enable-term-driver \ -- --enable-interop \ -- --with-pthread -+Please note that it is also necessary to set this environment variable: - --All the options above are - like the whole Windows support - --experimental. -+export PATH_SEPARATOR=";" -+ -+in order to parse the terminfo paths correctly. Terminfo paths should -+always be separated by a seeeemicolon,even when running under MSYS. - --In order to build the DLLs, after your regular make you must call -+To support regular expressions properly, ncurses under MinGW should be -+linked against the gnurx regex library, which must be built separately -+under MinGW. See - -- make dlls -+ ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/libgnurx-src-2.5.zip -+ -+All the options above are - like the whole Windows support - -+experimental. - - A lot is still TODO, e.g.: - -- - Wide Character support -+ - Wide Character support (display is workable, but input untested) - The Win32Con driver should actually only use Unicode in the - future. - - Thread support (locking). If using TDM toolchain this is done by -@@ -145,5 +134,5 @@ - - Workarounds for MinGW's filesystem access are necessary to make infocmp - work (though tic works). - --To support terminfo, we need to have an ioctl() simulation for the --serial and networked Terminals. -+To support terminfo, we would need to have an ioctl() simulation for the -+serial and networked terminals. -diff -Naur ncurses-5.9/test/aclocal.m4 ncurses-5.9.patch/test/aclocal.m4 ---- ncurses-5.9/test/aclocal.m4 2011-03-24 09:28:07.000000000 +0100 -+++ ncurses-5.9.patch/test/aclocal.m4 2014-09-01 16:33:22.525792404 +0200 -@@ -1,5 +1,5 @@ - dnl*************************************************************************** --dnl Copyright (c) 2003-2010,2011 Free Software Foundation, Inc. * -+dnl Copyright (c) 2003-2013,2014 Free Software Foundation, Inc. * - dnl * - dnl Permission is hereby granted, free of charge, to any person obtaining a * - dnl copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - dnl authorization. * - dnl*************************************************************************** - dnl --dnl $Id: aclocal.m4,v 1.50 2011/03/24 08:28:07 tom Exp $ -+dnl $Id: aclocal.m4,v 1.94 2014/02/10 00:43:27 tom Exp $ - dnl - dnl Author: Thomas E. Dickey - dnl -@@ -40,6 +40,32 @@ - dnl - dnl --------------------------------------------------------------------------- - dnl --------------------------------------------------------------------------- -+dnl CF_ACVERSION_CHECK version: 4 updated: 2013/03/04 19:52:56 -+dnl ------------------ -+dnl Conditionally generate script according to whether we're using a given autoconf. -+dnl -+dnl $1 = version to compare against -+dnl $2 = code to use if AC_ACVERSION is at least as high as $1. -+dnl $3 = code to use if AC_ACVERSION is older than $1. -+define([CF_ACVERSION_CHECK], -+[ -+ifdef([AC_ACVERSION], ,[m4_copy([m4_PACKAGE_VERSION],[AC_ACVERSION])])dnl -+ifdef([m4_version_compare], -+[m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])], -+[CF_ACVERSION_COMPARE( -+AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])), -+AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ACVERSION_COMPARE version: 3 updated: 2012/10/03 18:39:53 -+dnl -------------------- -+dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1, -+dnl MAJOR2, MINOR2, TERNARY2, -+dnl PRINTABLE2, not FOUND, FOUND) -+define([CF_ACVERSION_COMPARE], -+[ifelse(builtin([eval], [$2 < $5]), 1, -+[ifelse([$8], , ,[$8])], -+[ifelse([$9], , ,[$9])])])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_ADD_CFLAGS version: 10 updated: 2010/05/26 05:38:42 - dnl ------------- - dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS -@@ -237,7 +263,7 @@ - dnl $2 = variable to update (default $LIBS) - AC_DEFUN([CF_ADD_LIBS],[ifelse($2,,LIBS,[$2])="$1 [$]ifelse($2,,LIBS,[$2])"])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ADD_LIB_AFTER version: 2 updated: 2010/11/08 20:33:46 -+dnl CF_ADD_LIB_AFTER version: 3 updated: 2013/07/09 21:27:22 - dnl ---------------- - dnl Add a given library after another, e.g., following the one it satisfies a - dnl dependency for. -@@ -246,11 +272,11 @@ - dnl $2 = its dependency - AC_DEFUN([CF_ADD_LIB_AFTER],[ - CF_VERBOSE(...before $LIBS) --LIBS=`echo "$LIBS" | sed -e "s/[[ ]][[ ]]*/ /g" -e "s,$1 ,$1 $2 ," -e 's/ / /g'` -+LIBS=`echo "$LIBS" | sed -e "s/[[ ]][[ ]]*/ /g" -e "s%$1 %$1 $2 %" -e 's% % %g'` - CF_VERBOSE(...after $LIBS) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ADD_SUBDIR_PATH version: 3 updated: 2010/07/03 20:58:12 -+dnl CF_ADD_SUBDIR_PATH version: 4 updated: 2013/10/08 17:47:05 - dnl ------------------ - dnl Append to a search-list for a nonstandard header/lib-file - dnl $1 = the variable to return as result -@@ -260,9 +286,9 @@ - dnl $5 = a directory that we do not want $4 to match - AC_DEFUN([CF_ADD_SUBDIR_PATH], - [ --test "$4" != "$5" && \ -+test "x$4" != "x$5" && \ - test -d "$4" && \ --ifelse([$5],NONE,,[(test $5 = NONE || test "$4" != "$5") &&]) { -+ifelse([$5],NONE,,[(test -z "$5" || test x$5 = xNONE || test "x$4" != "x$5") &&]) { - test -n "$verbose" && echo " ... testing for $3-directories under $4" - test -d $4/$3 && $1="[$]$1 $4/$3" - test -d $4/$3/$2 && $1="[$]$1 $4/$3/$2" -@@ -272,76 +298,6 @@ - } - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_ANSI_CC_CHECK version: 10 updated: 2010/10/23 15:52:32 --dnl ---------------- --dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES' --dnl in the sharutils 4.2 distribution. --AC_DEFUN([CF_ANSI_CC_CHECK], --[ --AC_CACHE_CHECK(for ${CC:-cc} option to accept ANSI C, cf_cv_ansi_cc,[ --cf_cv_ansi_cc=no --cf_save_CFLAGS="$CFLAGS" --cf_save_CPPFLAGS="$CPPFLAGS" --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX -Aa -D_HPUX_SOURCE --# SVR4 -Xc --# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes) --for cf_arg in "-DCC_HAS_PROTOS" \ -- "" \ -- -qlanglvl=ansi \ -- -std1 \ -- -Ae \ -- "-Aa -D_HPUX_SOURCE" \ -- -Xc --do -- CF_ADD_CFLAGS($cf_arg) -- AC_TRY_COMPILE( --[ --#ifndef CC_HAS_PROTOS --#if !defined(__STDC__) || (__STDC__ != 1) --choke me --#endif --#endif --],[ -- int test (int i, double x); -- struct s1 {int (*f) (int a);}; -- struct s2 {int (*f) (double a);};], -- [cf_cv_ansi_cc="$cf_arg"; break]) --done --CFLAGS="$cf_save_CFLAGS" --CPPFLAGS="$cf_save_CPPFLAGS" --]) -- --if test "$cf_cv_ansi_cc" != "no"; then --if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then -- CF_ADD_CFLAGS($cf_cv_ansi_cc) --else -- AC_DEFINE(CC_HAS_PROTOS) --fi --fi --])dnl --dnl --------------------------------------------------------------------------- --dnl CF_ANSI_CC_REQD version: 4 updated: 2008/03/23 14:48:54 --dnl --------------- --dnl For programs that must use an ANSI compiler, obtain compiler options that --dnl will make it recognize prototypes. We'll do preprocessor checks in other --dnl macros, since tools such as unproto can fake prototypes, but only part of --dnl the preprocessor. --AC_DEFUN([CF_ANSI_CC_REQD], --[AC_REQUIRE([CF_ANSI_CC_CHECK]) --if test "$cf_cv_ansi_cc" = "no"; then -- AC_MSG_ERROR( --[Your compiler does not appear to recognize prototypes. --You have the following choices: -- a. adjust your compiler options -- b. get an up-to-date compiler -- c. use a wrapper such as unproto]) --fi --])dnl --dnl --------------------------------------------------------------------------- - dnl CF_ARG_DISABLE version: 3 updated: 1999/03/30 17:24:31 - dnl -------------- - dnl Allow user to disable a normally-on option. -@@ -377,7 +333,33 @@ - ])dnl - ])])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CHECK_CACHE version: 11 updated: 2008/03/23 14:45:59 -+dnl CF_CC_ENV_FLAGS version: 1 updated: 2012/10/03 05:25:49 -+dnl --------------- -+dnl Check for user's environment-breakage by stuffing CFLAGS/CPPFLAGS content -+dnl into CC. This will not help with broken scripts that wrap the compiler with -+dnl options, but eliminates a more common category of user confusion. -+AC_DEFUN([CF_CC_ENV_FLAGS], -+[ -+# This should have been defined by AC_PROG_CC -+: ${CC:=cc} -+ -+AC_MSG_CHECKING(\$CC variable) -+case "$CC" in #(vi -+*[[\ \ ]]-[[IUD]]*) -+ AC_MSG_RESULT(broken) -+ AC_MSG_WARN(your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options) -+ # humor him... -+ cf_flags=`echo "$CC" | sed -e 's/^[[^ ]]*[[ ]]//'` -+ CC=`echo "$CC" | sed -e 's/[[ ]].*//'` -+ CF_ADD_CFLAGS($cf_flags) -+ ;; -+*) -+ AC_MSG_RESULT(ok) -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CHECK_CACHE version: 12 updated: 2012/10/02 20:55:03 - dnl -------------- - dnl Check if we're accidentally using a cache from a different machine. - dnl Derive the system name, as a check for reusing the autoconf cache. -@@ -400,7 +382,7 @@ - system_name="`(hostname) 2>/dev/null`" - fi - fi --test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name") -+test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name",[Define to the system name.]) - AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"]) - - test -z "$system_name" && system_name="$cf_cv_system_name" -@@ -434,7 +416,40 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CURSES_ACS_MAP version: 6 updated: 2010/10/23 15:54:49 -+dnl CF_CLANG_COMPILER version: 2 updated: 2013/11/19 19:23:35 -+dnl ----------------- -+dnl Check if the given compiler is really clang. clang's C driver defines -+dnl __GNUC__ (fooling the configure script into setting $GCC to yes) but does -+dnl not ignore some gcc options. -+dnl -+dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to -+dnl ensure that it is not mistaken for gcc/g++. It is normally invoked from -+dnl the wrappers for gcc and g++ warnings. -+dnl -+dnl $1 = GCC (default) or GXX -+dnl $2 = CLANG_COMPILER (default) -+dnl $3 = CFLAGS (default) or CXXFLAGS -+AC_DEFUN([CF_CLANG_COMPILER],[ -+ifelse([$2],,CLANG_COMPILER,[$2])=no -+ -+if test "$ifelse([$1],,[$1],GCC)" = yes ; then -+ AC_MSG_CHECKING(if this is really Clang ifelse([$1],GXX,C++,C) compiler) -+ cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])" -+ ifelse([$3],,CFLAGS,[$3])="$ifelse([$3],,CFLAGS,[$3]) -Qunused-arguments" -+ AC_TRY_COMPILE([],[ -+#ifdef __clang__ -+#else -+make an error -+#endif -+],[ifelse([$2],,CLANG_COMPILER,[$2])=yes -+cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments" -+],[]) -+ ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS" -+ AC_MSG_RESULT($ifelse([$2],,CLANG_COMPILER,[$2])) -+fi -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_CURSES_ACS_MAP version: 7 updated: 2012/10/06 16:39:58 - dnl ----------------- - dnl Check for likely values of acs_map[]: - AC_DEFUN([CF_CURSES_ACS_MAP], -@@ -452,7 +467,7 @@ - done - ]) - --test "$cf_cv_curses_acs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_ACS_ARRAY,$cf_cv_curses_acs_map) -+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: 4 updated: 2011/01/15 16:39:24 -@@ -499,7 +514,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CURSES_CHECK_TYPE version: 3 updated: 2010/10/23 15:54:49 -+dnl CF_CURSES_CHECK_TYPE version: 4 updated: 2012/10/06 16:39:58 - dnl -------------------- - dnl Check if curses.h defines the given type - AC_DEFUN([CF_CURSES_CHECK_TYPE], -@@ -515,9 +530,9 @@ - AC_MSG_RESULT($cf_result) - if test $cf_result = yes ; then - CF_UPPER(cf_result,have_type_$1) -- AC_DEFINE_UNQUOTED($cf_result) -+ AC_DEFINE_UNQUOTED($cf_result,1,[Define to 1 if we have type $1]) - else -- AC_DEFINE_UNQUOTED($1,$2) -+ AC_DEFINE_UNQUOTED($1,$2,[Define to appropriate type if $1 is not declared]) - fi - ])dnl - dnl --------------------------------------------------------------------------- -@@ -533,7 +548,7 @@ - CF_CURSES_LIBS - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CURSES_CPPFLAGS version: 10 updated: 2009/01/06 19:34:11 -+dnl CF_CURSES_CPPFLAGS version: 11 updated: 2011/04/09 14:51:08 - dnl ------------------ - dnl Look for the curses headers. - AC_DEFUN([CF_CURSES_CPPFLAGS],[ -@@ -542,13 +557,19 @@ - cf_cv_curses_incdir=no - case $host_os in #(vi - hpux10.*) #(vi -- test -d /usr/include/curses_colr && \ -- cf_cv_curses_incdir="-I/usr/include/curses_colr" -+ if test "x$cf_cv_screen" = "xcurses_colr" -+ then -+ test -d /usr/include/curses_colr && \ -+ cf_cv_curses_incdir="-I/usr/include/curses_colr" -+ fi - ;; - sunos3*|sunos4*) -- test -d /usr/5lib && \ -- test -d /usr/5include && \ -- cf_cv_curses_incdir="-I/usr/5include" -+ if test "x$cf_cv_screen" = "xcurses_5lib" -+ then -+ test -d /usr/5lib && \ -+ test -d /usr/5include && \ -+ cf_cv_curses_incdir="-I/usr/5include" -+ fi - ;; - esac - ]) -@@ -558,7 +579,7 @@ - CF_TERM_HEADER - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CURSES_FUNCS version: 15 updated: 2010/10/23 15:52:32 -+dnl CF_CURSES_FUNCS version: 17 updated: 2011/05/14 16:07:29 - dnl --------------- - dnl Curses-functions are a little complicated, since a lot of them are macros. - AC_DEFUN([CF_CURSES_FUNCS], -@@ -566,6 +587,7 @@ - AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl - AC_REQUIRE([CF_XOPEN_CURSES]) - AC_REQUIRE([CF_CURSES_TERM_H]) -+AC_REQUIRE([CF_CURSES_UNCTRL_H]) - for cf_func in $1 - do - CF_UPPER(cf_tr_func,$cf_func) -@@ -578,7 +600,8 @@ - [ - #ifndef ${cf_func} - long foo = (long)(&${cf_func}); --${cf_cv_main_return:-return}(foo == 0); -+if (foo + 1234 > 5678) -+ ${cf_cv_main_return:-return}(foo); - #endif - ], - [cf_result=yes], -@@ -595,7 +618,7 @@ - done - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CURSES_HEADER version: 2 updated: 2010/04/28 06:02:16 -+dnl CF_CURSES_HEADER version: 3 updated: 2011/05/01 19:47:45 - dnl ---------------- - dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common - dnl variations of ncurses' installs. -@@ -605,10 +628,10 @@ - AC_CACHE_CHECK(if we have identified curses headers,cf_cv_ncurses_header,[ - cf_cv_ncurses_header=none - for cf_header in ifelse($1,,,[ \ -- $1/curses.h \ -- $1/ncurses.h]) \ -- curses.h \ -- ncurses.h ifelse($1,,[ncurses/curses.h ncurses/ncurses.h]) -+ $1/ncurses.h \ -+ $1/curses.h]) \ -+ ncurses.h \ -+ curses.h ifelse($1,,[ncurses/ncurses.h ncurses/curses.h]) - do - AC_TRY_COMPILE([#include <${cf_header}>], - [initscr(); tgoto("?", 0,0)], -@@ -624,7 +647,7 @@ - AC_CHECK_HEADERS($cf_cv_ncurses_header) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CURSES_LIBS version: 33 updated: 2011/03/06 12:37:18 -+dnl CF_CURSES_LIBS version: 37 updated: 2013/02/09 17:33:50 - dnl -------------- - dnl Look for the curses libraries. Older curses implementations may require - dnl termcap/termlib to be linked as well. Call CF_CURSES_CPPFLAGS first. -@@ -644,17 +667,24 @@ - AC_CHECK_LIB(mytinfo,tgoto,[CF_ADD_LIBS(-lmytinfo)]) - ;; - hpux10.*) #(vi -- AC_CHECK_LIB(cur_colr,initscr,[ -- CF_ADD_LIBS(-lcur_colr) -- ac_cv_func_initscr=yes -- ],[ -- AC_CHECK_LIB(Hcurses,initscr,[ -- # HP's header uses __HP_CURSES, but user claims _HP_CURSES. -- CF_ADD_LIBS(-lHcurses) -- CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES" -- ac_cv_func_initscr=yes -- ])]) -- ;; -+ # Looking at HPUX 10.20, the Hcurses library is the oldest (1997), cur_colr -+ # next (1998), and xcurses "newer" (2000). There is no header file for -+ # Hcurses; the subdirectory curses_colr has the headers (curses.h and -+ # term.h) for cur_colr -+ if test "x$cf_cv_screen" = "xcurses_colr" -+ then -+ AC_CHECK_LIB(cur_colr,initscr,[ -+ CF_ADD_LIBS(-lcur_colr) -+ ac_cv_func_initscr=yes -+ ],[ -+ AC_CHECK_LIB(Hcurses,initscr,[ -+ # HP's header uses __HP_CURSES, but user claims _HP_CURSES. -+ CF_ADD_LIBS(-lHcurses) -+ CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES" -+ ac_cv_func_initscr=yes -+ ])]) -+ fi -+ ;; - linux*) - case `arch 2>/dev/null` in - x86_64) -@@ -669,76 +699,83 @@ - CF_ADD_LIBDIR(/lib) - ;; - esac -- ;; -+ ;; - sunos3*|sunos4*) -- if test -d /usr/5lib ; then -- CF_ADD_LIBDIR(/usr/5lib) -- CF_ADD_LIBS(-lcurses -ltermcap) -+ if test "x$cf_cv_screen" = "xcurses_5lib" -+ then -+ if test -d /usr/5lib ; then -+ CF_ADD_LIBDIR(/usr/5lib) -+ CF_ADD_LIBS(-lcurses -ltermcap) -+ fi - fi - ac_cv_func_initscr=yes - ;; - esac - - if test ".$ac_cv_func_initscr" != .yes ; then -- cf_save_LIBS="$LIBS" -- cf_term_lib="" -- cf_curs_lib="" -+ cf_save_LIBS="$LIBS" - -- if test ".${cf_cv_ncurses_version:-no}" != .no -- then -- cf_check_list="ncurses curses cursesX" -- else -- cf_check_list="cursesX curses ncurses" -- fi -+ if test ".${cf_cv_ncurses_version:-no}" != .no -+ then -+ cf_check_list="ncurses curses cursesX" -+ else -+ cf_check_list="cursesX curses ncurses" -+ fi - -- # Check for library containing tgoto. Do this before curses library -- # because it may be needed to link the test-case for initscr. -- AC_CHECK_FUNC(tgoto,[cf_term_lib=predefined],[ -- for cf_term_lib in $cf_check_list termcap termlib unknown -- do -- AC_CHECK_LIB($cf_term_lib,tgoto,[break]) -- done -- ]) -+ # Check for library containing tgoto. Do this before curses library -+ # because it may be needed to link the test-case for initscr. -+ if test "x$cf_term_lib" = x -+ then -+ AC_CHECK_FUNC(tgoto,[cf_term_lib=predefined],[ -+ for cf_term_lib in $cf_check_list otermcap termcap tinfo termlib unknown -+ do -+ AC_CHECK_LIB($cf_term_lib,tgoto,[break]) -+ done -+ ]) -+ fi - -- # Check for library containing initscr -- test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS" -- for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown -- do -- AC_CHECK_LIB($cf_curs_lib,initscr,[break]) -- done -- test $cf_curs_lib = unknown && AC_MSG_ERROR(no curses library found) -+ # Check for library containing initscr -+ test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS" -+ if test "x$cf_curs_lib" = x -+ then -+ for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown -+ do -+ AC_CHECK_LIB($cf_curs_lib,initscr,[break]) -+ done -+ fi -+ test $cf_curs_lib = unknown && AC_MSG_ERROR(no curses library found) - -- LIBS="-l$cf_curs_lib $cf_save_LIBS" -- if test "$cf_term_lib" = unknown ; then -- AC_MSG_CHECKING(if we can link with $cf_curs_lib library) -- AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], -- [initscr()], -- [cf_result=yes], -- [cf_result=no]) -- AC_MSG_RESULT($cf_result) -- test $cf_result = no && AC_MSG_ERROR(Cannot link curses library) -- elif test "$cf_curs_lib" = "$cf_term_lib" ; then -- : -- elif test "$cf_term_lib" != predefined ; then -- AC_MSG_CHECKING(if we need both $cf_curs_lib and $cf_term_lib libraries) -- AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], -- [initscr(); tgoto((char *)0, 0, 0);], -- [cf_result=no], -- [ -- LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS" -- AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], -- [initscr()], -- [cf_result=yes], -- [cf_result=error]) -- ]) -- AC_MSG_RESULT($cf_result) -- fi -+ LIBS="-l$cf_curs_lib $cf_save_LIBS" -+ if test "$cf_term_lib" = unknown ; then -+ AC_MSG_CHECKING(if we can link with $cf_curs_lib library) -+ AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], -+ [initscr()], -+ [cf_result=yes], -+ [cf_result=no]) -+ AC_MSG_RESULT($cf_result) -+ test $cf_result = no && AC_MSG_ERROR(Cannot link curses library) -+ elif test "$cf_curs_lib" = "$cf_term_lib" ; then -+ : -+ elif test "$cf_term_lib" != predefined ; then -+ AC_MSG_CHECKING(if we need both $cf_curs_lib and $cf_term_lib libraries) -+ AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], -+ [initscr(); tgoto((char *)0, 0, 0);], -+ [cf_result=no], -+ [ -+ LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS" -+ AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], -+ [initscr()], -+ [cf_result=yes], -+ [cf_result=error]) -+ ]) -+ AC_MSG_RESULT($cf_result) -+ fi - fi - fi - - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CURSES_TERM_H version: 8 updated: 2010/10/23 15:54:49 -+dnl CF_CURSES_TERM_H version: 10 updated: 2012/10/06 08:57:51 - dnl ---------------- - dnl SVr4 curses should have term.h as well (where it puts the definitions of - dnl the low-level interface). This may not be true in old/broken implementations, -@@ -752,9 +789,17 @@ - - # If we found <ncurses/curses.h>, look for <ncurses/term.h>, but always look - # for <term.h> if we do not find the variant. --for cf_header in \ -- `echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%/.*%/%'`term.h \ -- term.h -+ -+cf_header_list="term.h ncurses/term.h ncursesw/term.h" -+ -+case ${cf_cv_ncurses_header:-curses.h} in #(vi -+*/*) -+ cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`term.h -+ cf_header_list="$cf_header_item $cf_header_list" -+ ;; -+esac -+ -+for cf_header in $cf_header_list - do - AC_TRY_COMPILE([ - #include <${cf_cv_ncurses_header:-curses.h}> -@@ -789,18 +834,73 @@ - - case $cf_cv_term_header in #(vi - term.h) #(vi -- AC_DEFINE(HAVE_TERM_H) -+ AC_DEFINE(HAVE_TERM_H,1,[Define to 1 if we have term.h]) - ;; - ncurses/term.h) #(vi -- AC_DEFINE(HAVE_NCURSES_TERM_H) -+ AC_DEFINE(HAVE_NCURSES_TERM_H,1,[Define to 1 if we have ncurses/term.h]) - ;; - ncursesw/term.h) -- AC_DEFINE(HAVE_NCURSESW_TERM_H) -+ AC_DEFINE(HAVE_NCURSESW_TERM_H,1,[Define to 1 if we have ncursesw/term.h]) -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CURSES_UNCTRL_H version: 3 updated: 2013/11/03 06:26:10 -+dnl ------------------ -+dnl Any X/Open curses implementation must have unctrl.h, but ncurses packages -+dnl may put it in a subdirectory (along with ncurses' other headers, of -+dnl course). Packages which put the headers in inconsistent locations are -+dnl broken). -+AC_DEFUN([CF_CURSES_UNCTRL_H], -+[ -+AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl -+ -+AC_CACHE_CHECK(for unctrl.h, cf_cv_unctrl_header,[ -+ -+# If we found <ncurses/curses.h>, look for <ncurses/unctrl.h>, but always look -+# for <unctrl.h> if we do not find the variant. -+ -+cf_header_list="unctrl.h ncurses/unctrl.h ncursesw/unctrl.h" -+ -+case ${cf_cv_ncurses_header:-curses.h} in #(vi -+*/*) -+ cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`unctrl.h -+ cf_header_list="$cf_header_item $cf_header_list" -+ ;; -+esac -+ -+for cf_header in $cf_header_list -+do -+ AC_TRY_COMPILE([ -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <${cf_header}>], -+ [WINDOW *x], -+ [cf_cv_unctrl_header=$cf_header -+ break], -+ [cf_cv_unctrl_header=no]) -+done -+]) -+ -+case $cf_cv_unctrl_header in #(vi -+no) -+ AC_MSG_WARN(unctrl.h header not found) -+ ;; -+esac -+ -+case $cf_cv_unctrl_header in #(vi -+unctrl.h) #(vi -+ AC_DEFINE(HAVE_UNCTRL_H,1,[Define to 1 if we have unctrl.h]) -+ ;; -+ncurses/unctrl.h) #(vi -+ AC_DEFINE(HAVE_NCURSES_UNCTRL_H,1,[Define to 1 if we have ncurses/unctrl.h]) -+ ;; -+ncursesw/unctrl.h) -+ AC_DEFINE(HAVE_NCURSESW_UNCTRL_H,1,[Define to 1 if we have ncursesw/unctrl.h]) - ;; - esac - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CURSES_WACS_MAP version: 5 updated: 2011/01/15 11:28:59 -+dnl CF_CURSES_WACS_MAP version: 6 updated: 2012/10/06 08:57:51 - dnl ------------------ - dnl Check for likely values of wacs_map[]. - AC_DEFUN([CF_CURSES_WACS_MAP], -@@ -819,10 +919,10 @@ - break]) - done]) - --test "$cf_cv_curses_wacs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_WACS_ARRAY,$cf_cv_curses_wacs_map) -+test "$cf_cv_curses_wacs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_WACS_ARRAY,$cf_cv_curses_wacs_map,[Define to name of (n)curses wide-character array]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_CURSES_WACS_SYMBOLS version: 1 updated: 2011/01/15 11:28:59 -+dnl CF_CURSES_WACS_SYMBOLS version: 2 updated: 2012/10/06 08:57:51 - dnl ---------------------- - dnl Do a check to see if the WACS_xxx constants are defined compatibly with - dnl X/Open Curses. In particular, NetBSD's implementation of the WACS_xxx -@@ -854,7 +954,7 @@ - fi - ]) - --test "$cf_cv_curses_wacs_symbols" != no && AC_DEFINE(CURSES_WACS_SYMBOLS) -+test "$cf_cv_curses_wacs_symbols" != no && AC_DEFINE(CURSES_WACS_SYMBOLS,1,[Define to 1 if (n)curses supports wide-character WACS_ symbols]) - ])dnl - dnl --------------------------------------------------------------------------- - dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52 -@@ -862,7 +962,7 @@ - dnl "dirname" is not portable, so we fake it with a shell script. - AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl - dnl --------------------------------------------------------------------------- --dnl CF_DISABLE_ECHO version: 11 updated: 2009/12/13 13:16:57 -+dnl CF_DISABLE_ECHO version: 12 updated: 2012/10/06 16:30:28 - dnl --------------- - dnl You can always use "make -n" to see the actual options, but it's hard to - dnl pick out/analyze warning messages when the compile-line is long. -@@ -877,7 +977,7 @@ - AC_DEFUN([CF_DISABLE_ECHO],[ - AC_MSG_CHECKING(if you want to see long compiling messages) - CF_ARG_DISABLE(echo, -- [ --disable-echo display "compiling" commands], -+ [ --disable-echo do not display "compiling" commands], - [ - ECHO_LT='--silent' - ECHO_LD='@echo linking [$]@;' -@@ -899,7 +999,7 @@ - AC_SUBST(ECHO_CC) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_DISABLE_LEAKS version: 6 updated: 2010/07/23 04:14:32 -+dnl CF_DISABLE_LEAKS version: 7 updated: 2012/10/02 20:55:03 - dnl ---------------- - dnl Combine no-leak checks with the libraries or tools that are used for the - dnl checks. -@@ -917,11 +1017,30 @@ - AC_MSG_RESULT($with_no_leaks) - - if test "$with_no_leaks" = yes ; then -- AC_DEFINE(NO_LEAKS) -- AC_DEFINE(YY_NO_LEAKS) -+ AC_DEFINE(NO_LEAKS,1,[Define to 1 if you want to perform memory-leak testing.]) -+ AC_DEFINE(YY_NO_LEAKS,1,[Define to 1 if you want to perform memory-leak testing.]) - fi - ])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_DISABLE_RPATH_HACK version: 2 updated: 2011/02/13 13:31:33 -+dnl --------------------- -+dnl The rpath-hack makes it simpler to build programs, particularly with the -+dnl *BSD ports which may have essential libraries in unusual places. But it -+dnl can interfere with building an executable for the base system. Use this -+dnl option in that case. -+AC_DEFUN([CF_DISABLE_RPATH_HACK], -+[ -+AC_MSG_CHECKING(if rpath-hack should be disabled) -+CF_ARG_DISABLE(rpath-hack, -+ [ --disable-rpath-hack don't add rpath options for additional libraries], -+ [cf_disable_rpath_hack=yes], -+ [cf_disable_rpath_hack=no]) -+AC_MSG_RESULT($cf_disable_rpath_hack) -+if test "$cf_disable_rpath_hack" = no ; then -+ CF_RPATH_HACK -+fi -+]) -+dnl --------------------------------------------------------------------------- - dnl CF_ENABLE_WARNINGS version: 4 updated: 2009/07/26 17:53:03 - dnl ------------------ - dnl Configure-option to enable gcc warnings -@@ -1122,7 +1241,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_FUNC_CURSES_VERSION version: 5 updated: 2010/10/23 15:54:49 -+dnl CF_FUNC_CURSES_VERSION version: 6 updated: 2012/10/06 16:39:58 - dnl ---------------------- - dnl Solaris has a data item 'curses_version', which confuses AC_CHECK_FUNCS. - dnl It's a character string "SVR4", not documented. -@@ -1141,10 +1260,10 @@ - ,[cf_cv_func_curses_version=no] - ,[cf_cv_func_curses_version=unknown]) - rm -f core]) --test "$cf_cv_func_curses_version" = yes && AC_DEFINE(HAVE_CURSES_VERSION) -+test "$cf_cv_func_curses_version" = yes && AC_DEFINE(HAVE_CURSES_VERSION,1,[Define to 1 if we have curses_version function]) - ]) - dnl --------------------------------------------------------------------------- --dnl CF_GCC_ATTRIBUTES version: 14 updated: 2010/10/23 15:52:32 -+dnl CF_GCC_ATTRIBUTES version: 16 updated: 2012/10/02 20:55:03 - dnl ----------------- - dnl Test for availability of useful gcc __attribute__ directives to quiet - dnl compiler warnings. Though useful, not all are supported -- and contrary -@@ -1222,27 +1341,27 @@ - test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute) - cat conftest.h >>confdefs.h - case $cf_attribute in #(vi -+ noreturn) #(vi -+ AC_DEFINE_UNQUOTED(GCC_NORETURN,$cf_directive,[Define to noreturn-attribute for gcc]) -+ ;; - printf) #(vi -- if test "$cf_printf_attribute" = no ; then -- cat >>confdefs.h <<EOF --#define GCC_PRINTFLIKE(fmt,var) /* nothing */ --EOF -- else -- cat >>confdefs.h <<EOF --#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) --EOF -+ cf_value='/* nothing */' -+ if test "$cf_printf_attribute" != no ; then -+ cf_value='__attribute__((format(printf,fmt,var)))' -+ AC_DEFINE(GCC_PRINTF,1,[Define to 1 if the compiler supports gcc-like printf attribute.]) - fi -+ AC_DEFINE_UNQUOTED(GCC_PRINTFLIKE(fmt,var),$cf_value,[Define to printf-attribute for gcc]) - ;; - scanf) #(vi -- if test "$cf_scanf_attribute" = no ; then -- cat >>confdefs.h <<EOF --#define GCC_SCANFLIKE(fmt,var) /* nothing */ --EOF -- else -- cat >>confdefs.h <<EOF --#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var))) --EOF -+ cf_value='/* nothing */' -+ if test "$cf_scanf_attribute" != no ; then -+ cf_value='__attribute__((format(scanf,fmt,var)))' -+ AC_DEFINE(GCC_SCANF,1,[Define to 1 if the compiler supports gcc-like scanf attribute.]) - fi -+ AC_DEFINE_UNQUOTED(GCC_SCANFLIKE(fmt,var),$cf_value,[Define to sscanf-attribute for gcc]) -+ ;; -+ unused) #(vi -+ AC_DEFINE_UNQUOTED(GCC_UNUSED,$cf_directive,[Define to unused-attribute for gcc]) - ;; - esac - fi -@@ -1254,7 +1373,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_GCC_VERSION version: 5 updated: 2010/04/24 11:02:31 -+dnl CF_GCC_VERSION version: 7 updated: 2012/10/18 06:46:33 - dnl -------------- - dnl Find version of gcc - AC_DEFUN([CF_GCC_VERSION],[ -@@ -1262,13 +1381,13 @@ - GCC_VERSION=none - if test "$GCC" = yes ; then - AC_MSG_CHECKING(version of $CC) -- GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`" -+ GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC[[^)]]*) //' -e 's/^.*(Debian[[^)]]*) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`" - test -z "$GCC_VERSION" && GCC_VERSION=unknown - AC_MSG_RESULT($GCC_VERSION) - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_GCC_WARNINGS version: 27 updated: 2010/10/23 15:52:32 -+dnl CF_GCC_WARNINGS version: 31 updated: 2013/11/19 19:23:35 - dnl --------------- - dnl Check if the compiler supports useful warning options. There's a few that - dnl we don't use, simply because they're too noisy: -@@ -1291,6 +1410,7 @@ - [ - AC_REQUIRE([CF_GCC_VERSION]) - CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS) -+CF_CLANG_COMPILER(GCC,CLANG_COMPILER,CFLAGS) - - cat > conftest.$ac_ext <<EOF - #line __oline__ "${as_me:-configure}" -@@ -1339,10 +1459,14 @@ - EXTRA_CFLAGS= - cf_warn_CONST="" - test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings" -+ cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs" -+ test "x$CLANG_COMPILER" = xyes && cf_gcc_warnings= - for cf_opt in W Wall \ - Wbad-function-cast \ - Wcast-align \ - Wcast-qual \ -+ Wdeclaration-after-statement \ -+ Wextra \ - Winline \ - Wmissing-declarations \ - Wmissing-prototypes \ -@@ -1350,7 +1474,7 @@ - Wpointer-arith \ - Wshadow \ - Wstrict-prototypes \ -- Wundef $cf_warn_CONST $1 -+ Wundef $cf_gcc_warnings $cf_warn_CONST $1 - do - CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" - if AC_TRY_EVAL(ac_compile); then -@@ -1366,6 +1490,13 @@ - continue;; - esac - ;; -+ Wpointer-arith) #(vi -+ case $GCC_VERSION in -+ [[12]].*) -+ CF_VERBOSE(feature is broken in gcc $GCC_VERSION) -+ continue;; -+ esac -+ ;; - esac - EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt" - fi -@@ -1377,6 +1508,29 @@ - AC_SUBST(EXTRA_CFLAGS) - ])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_GETOPT_HEADER version: 5 updated: 2012/10/06 16:39:58 -+dnl ---------------- -+dnl Check for getopt's variables which are commonly defined in stdlib.h, -+dnl unistd.h or (nonstandard) in getopt.h -+AC_DEFUN([CF_GETOPT_HEADER], -+[ -+AC_HAVE_HEADERS(unistd.h getopt.h) -+AC_CACHE_CHECK(for header declaring getopt variables,cf_cv_getopt_header,[ -+cf_cv_getopt_header=none -+for cf_header in stdio.h stdlib.h unistd.h getopt.h -+do -+AC_TRY_COMPILE([ -+#include <$cf_header>], -+[int x = optind; char *y = optarg], -+[cf_cv_getopt_header=$cf_header -+ break]) -+done -+]) -+if test $cf_cv_getopt_header != none ; then -+ AC_DEFINE(HAVE_GETOPT_HEADER,1,[Define to 1 if we need to include getopt.h]) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_GNU_SOURCE version: 6 updated: 2005/07/09 13:23:07 - dnl ------------- - dnl Check if we must define _GNU_SOURCE to get a reasonable value for -@@ -1453,6 +1607,13 @@ - $1="[$]$1 $cf_header_path_list" - ])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_HELP_MESSAGE version: 3 updated: 1998/01/14 10:56:23 -+dnl --------------- -+dnl Insert text into the help-message, for readability, from AC_ARG_WITH. -+AC_DEFUN([CF_HELP_MESSAGE], -+[AC_DIVERT_HELP([$1])dnl -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_INHERIT_SCRIPT version: 2 updated: 2003/03/01 23:50:42 - dnl ----------------- - dnl If we do not have a given script, look for it in the parent directory. -@@ -1461,7 +1622,7 @@ - test -f $1 || ( test -f ../$1 && cp ../$1 ./ ) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_INTEL_COMPILER version: 4 updated: 2010/05/26 05:38:42 -+dnl CF_INTEL_COMPILER version: 5 updated: 2013/02/10 10:41:05 - dnl ----------------- - dnl Check if the given compiler is really the Intel compiler for Linux. It - dnl tries to imitate gcc, but does not return an error when it finds a mismatch -@@ -1475,6 +1636,7 @@ - dnl $2 = INTEL_COMPILER (default) or INTEL_CPLUSPLUS - dnl $3 = CFLAGS (default) or CXXFLAGS - AC_DEFUN([CF_INTEL_COMPILER],[ -+AC_REQUIRE([AC_CANONICAL_HOST]) - ifelse([$2],,INTEL_COMPILER,[$2])=no - - if test "$ifelse([$1],,[$1],GCC)" = yes ; then -@@ -1498,6 +1660,60 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_LD_RPATH_OPT version: 5 updated: 2011/07/17 14:48:41 -+dnl --------------- -+dnl For the given system and compiler, find the compiler flags to pass to the -+dnl loader to use the "rpath" feature. -+AC_DEFUN([CF_LD_RPATH_OPT], -+[ -+AC_REQUIRE([CF_CHECK_CACHE]) -+ -+LD_RPATH_OPT= -+AC_MSG_CHECKING(for an rpath option) -+case $cf_cv_system_name in #(vi -+irix*) #(vi -+ if test "$GCC" = yes; then -+ LD_RPATH_OPT="-Wl,-rpath," -+ else -+ LD_RPATH_OPT="-rpath " -+ fi -+ ;; -+linux*|gnu*|k*bsd*-gnu) #(vi -+ LD_RPATH_OPT="-Wl,-rpath," -+ ;; -+openbsd[[2-9]].*|mirbsd*) #(vi -+ LD_RPATH_OPT="-Wl,-rpath," -+ ;; -+dragonfly*|freebsd*) #(vi -+ LD_RPATH_OPT="-rpath " -+ ;; -+netbsd*) #(vi -+ LD_RPATH_OPT="-Wl,-rpath," -+ ;; -+osf*|mls+*) #(vi -+ LD_RPATH_OPT="-rpath " -+ ;; -+solaris2*) #(vi -+ LD_RPATH_OPT="-R" -+ ;; -+*) -+ ;; -+esac -+AC_MSG_RESULT($LD_RPATH_OPT) -+ -+case "x$LD_RPATH_OPT" in #(vi -+x-R*) -+ AC_MSG_CHECKING(if we need a space after rpath option) -+ cf_save_LIBS="$LIBS" -+ CF_ADD_LIBS(${LD_RPATH_OPT}$libdir) -+ AC_TRY_LINK(, , cf_rpath_space=no, cf_rpath_space=yes) -+ LIBS="$cf_save_LIBS" -+ AC_MSG_RESULT($cf_rpath_space) -+ test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT " -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_LIBRARY_PATH version: 9 updated: 2010/03/28 12:52:50 - dnl --------------- - dnl Construct a search-list of directories for a nonstandard library-file -@@ -1588,38 +1804,7 @@ - fi - ]) - dnl --------------------------------------------------------------------------- --dnl CF_MIN_GETCCHAR version: 3 updated: 2010/10/23 15:54:49 --dnl --------------- --dnl CF_MIN_GETCCHAR --dnl Check whether getcchar's return value counts the trailing null in a wchar_t --dnl string, or not. X/Open says it does, but Tru64 and Solaris do not do this. --AC_DEFUN([CF_MIN_GETCCHAR],[ --AC_CACHE_CHECK(if getcchar counts trailing null,cf_cv_min_getcchar,[ --AC_TRY_RUN([ --#include <stdlib.h> --#include <stdarg.h> --#include <${cf_cv_ncurses_header:-curses.h}> -- --int main() --{ -- wchar_t data[2]; -- cchar_t temp[2]; -- int count; -- data[0] = L'\0'; -- setcchar(temp, data, 0, 0, (void *)0); -- count = getcchar(temp, (wchar_t *)0, (attr_t *)0, (short *)0, (void *)0); -- ${cf_cv_main_return:-return}(count != 0); --}], -- [cf_cv_min_getcchar=no], -- [cf_cv_min_getcchar=yes], -- [cf_cv_min_getcchar=yes]) --]) --if test "$cf_cv_min_getcchar" = yes ; then -- AC_DEFINE(MIN_GETCCHAR,1) --fi --])dnl --dnl --------------------------------------------------------------------------- --dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55 -+dnl CF_MIXEDCASE_FILENAMES version: 6 updated: 2013/10/08 17:47:05 - dnl ---------------------- - dnl Check if the file-system supports mixed-case filenames. If we're able to - dnl create a lowercase name and see it as uppercase, it doesn't support that. -@@ -1628,7 +1813,7 @@ - AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[ - if test "$cross_compiling" = yes ; then - case $target_alias in #(vi -- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi -+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi - cf_cv_mixedcase=no - ;; - *) -@@ -1646,7 +1831,7 @@ - rm -f conftest CONFTEST - fi - ]) --test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES) -+test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES,1,[Define to 1 if filesystem supports mixed-case filenames.]) - ])dnl - dnl --------------------------------------------------------------------------- - dnl CF_MSG_LOG version: 5 updated: 2010/10/23 15:52:32 -@@ -1690,7 +1875,7 @@ - ,[$1=no]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NCURSES_CONFIG version: 8 updated: 2010/07/08 05:17:30 -+dnl CF_NCURSES_CONFIG version: 10 updated: 2012/10/06 08:57:51 - dnl ----------------- - dnl Tie together the configure-script macros for ncurses. - dnl Prefer the "-config" script from ncurses 6.x, to simplify analysis. -@@ -1702,7 +1887,10 @@ - cf_ncuconfig_root=ifelse($1,,ncurses,$1) - - echo "Looking for ${cf_ncuconfig_root}-config" --AC_PATH_PROGS(NCURSES_CONFIG,${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config,none) -+ -+CF_ACVERSION_CHECK(2.52, -+ [AC_CHECK_TOOLS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)], -+ [AC_PATH_PROGS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)]) - - if test "$NCURSES_CONFIG" != none ; then - -@@ -1713,7 +1901,7 @@ - CF_CURSES_HEADER(ifelse($1,,ncurses,$1)) - - dnl like CF_NCURSES_CPPFLAGS --AC_DEFINE(NCURSES) -+AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries]) - - dnl like CF_NCURSES_LIBS - CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_ncuconfig_root) -@@ -1730,7 +1918,7 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NCURSES_CPPFLAGS version: 20 updated: 2010/11/20 17:02:38 -+dnl CF_NCURSES_CPPFLAGS version: 21 updated: 2012/10/06 08:57:51 - dnl ------------------- - dnl Look for the SVr4 curses clone 'ncurses' in the standard places, adjusting - dnl the CPPFLAGS variable so we can include its header. -@@ -1776,12 +1964,12 @@ - CF_TERM_HEADER - - # some applications need this, but should check for NCURSES_VERSION --AC_DEFINE(NCURSES) -+AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries]) - - CF_NCURSES_VERSION - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NCURSES_EXT_FUNCS version: 3 updated: 2010/11/13 19:43:23 -+dnl CF_NCURSES_EXT_FUNCS version: 4 updated: 2012/10/06 16:39:58 - dnl -------------------- - dnl Since 2007/11/17, ncurses has defined NCURSES_EXT_FUNCS; earlier versions - dnl may provide these functions. Define the symbol if it is not defined, and -@@ -1813,10 +2001,10 @@ - [cf_cv_ncurses_ext_funcs=no]) - ]) - ]) --test "$cf_cv_ncurses_ext_funcs" = yes && AC_DEFINE(NCURSES_EXT_FUNCS) -+test "$cf_cv_ncurses_ext_funcs" = yes && AC_DEFINE(NCURSES_EXT_FUNCS,1,[Define to 1 if we have ncurses extensions]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NCURSES_HEADER version: 2 updated: 2008/03/23 14:48:54 -+dnl CF_NCURSES_HEADER version: 3 updated: 2012/10/06 08:57:51 - dnl ----------------- - dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common - dnl variations of ncurses' installs. -@@ -1867,16 +2055,16 @@ - - case $cf_cv_ncurses_header in # (vi - *ncurses.h) -- AC_DEFINE(HAVE_NCURSES_H) -+ AC_DEFINE(HAVE_NCURSES_H,1,[Define to 1 if we have ncurses.h]) - ;; - esac - - case $cf_cv_ncurses_header in # (vi - ncurses/curses.h|ncurses/ncurses.h) -- AC_DEFINE(HAVE_NCURSES_NCURSES_H) -+ AC_DEFINE(HAVE_NCURSES_NCURSES_H,1,[Define to 1 if we have ncurses/ncurses.h]) - ;; - ncursesw/curses.h|ncursesw/ncurses.h) -- AC_DEFINE(HAVE_NCURSESW_NCURSES_H) -+ AC_DEFINE(HAVE_NCURSESW_NCURSES_H,1,[Define to 1 if we have ncursesw/ncurses.h]) - ;; - esac - -@@ -1950,7 +2138,7 @@ - AC_DEFINE_UNQUOTED($cf_nculib_ROOT) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NCURSES_VERSION version: 13 updated: 2010/10/23 15:54:49 -+dnl CF_NCURSES_VERSION version: 14 updated: 2012/10/06 08:57:51 - 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 -@@ -2009,7 +2197,7 @@ - ]) - rm -f $cf_tempfile - ]) --test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES) -+test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries]) - ])dnl - dnl --------------------------------------------------------------------------- - dnl CF_NCURSES_WRAP_PREFIX version: 1 updated: 2009/03/28 16:08:10 -@@ -2028,7 +2216,7 @@ - AC_SUBST(NCURSES_WRAP_PREFIX) - ]) - dnl --------------------------------------------------------------------------- --dnl CF_NETBSD_FORM_H version: 1 updated: 2011/01/15 14:59:18 -+dnl CF_NETBSD_FORM_H version: 2 updated: 2012/10/06 16:39:58 - dnl ---------------- - dnl Check for NetBSD's form.h, which is incompatible with SVr4 and ncurses. - dnl Some workarounds are needed in client programs to allow them to compile. -@@ -2045,10 +2233,10 @@ - ],[cf_cv_netbsd_form_h=no]) - ]) - --test "$cf_cv_netbsd_form_h" = yes && AC_DEFINE(HAVE_NETBSD_FORM_H) -+test "$cf_cv_netbsd_form_h" = yes && AC_DEFINE(HAVE_NETBSD_FORM_H,1,[Define to 1 if we appear to be using NetBSD form.h]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NETBSD_MENU_H version: 1 updated: 2011/01/15 14:59:18 -+dnl CF_NETBSD_MENU_H version: 2 updated: 2012/10/06 16:39:58 - dnl ---------------- - dnl Check for NetBSD's menu.h, which is incompatible with SVr4 and ncurses. - dnl Some workarounds are needed in client programs to allow them to compile. -@@ -2064,17 +2252,17 @@ - ],[cf_cv_netbsd_menu_h=no]) - ]) - --test "$cf_cv_netbsd_menu_h" = yes && AC_DEFINE(HAVE_NETBSD_MENU_H) -+test "$cf_cv_netbsd_menu_h" = yes && AC_DEFINE(HAVE_NETBSD_MENU_H,1,[Define to 1 if we appear to be using NetBSD menu.h]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_NO_LEAKS_OPTION version: 4 updated: 2006/12/16 14:24:05 -+dnl CF_NO_LEAKS_OPTION version: 5 updated: 2012/10/02 20:55:03 - dnl ------------------ - dnl see CF_WITH_NO_LEAKS - AC_DEFUN([CF_NO_LEAKS_OPTION],[ - AC_MSG_CHECKING(if you want to use $1 for testing) - AC_ARG_WITH($1, - [$2], -- [AC_DEFINE($3)ifelse([$4],,[ -+ [AC_DEFINE_UNQUOTED($3,1,"Define to 1 if you want to use $1 for testing.")ifelse([$4],,[ - $4 - ]) - : ${with_cflags:=-g} -@@ -2096,7 +2284,7 @@ - esac - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PATH_SYNTAX version: 13 updated: 2010/05/26 05:38:42 -+dnl CF_PATH_SYNTAX version: 14 updated: 2012/06/19 20:58:54 - dnl -------------- - dnl Check the argument to see that it looks like a pathname. Rewrite it if it - dnl begins with one of the prefix/exec_prefix variables, and then again if the -@@ -2116,7 +2304,7 @@ - ;; - .[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX - ;; --.\[$]{*prefix}*) #(vi -+.\[$]{*prefix}*|.\[$]{*dir}*) #(vi - eval $1="[$]$1" - case ".[$]$1" in #(vi - .NONE/*) -@@ -2133,13 +2321,15 @@ - esac - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PDCURSES_X11 version: 11 updated: 2011/01/15 18:45:38 -+dnl CF_PDCURSES_X11 version: 13 updated: 2012/10/06 16:39:58 - dnl --------------- - dnl Configure for PDCurses' X11 library - AC_DEFUN([CF_PDCURSES_X11],[ - AC_REQUIRE([CF_X_ATHENA]) - --AC_PATH_PROGS(XCURSES_CONFIG,xcurses-config,none) -+CF_ACVERSION_CHECK(2.52, -+ [AC_CHECK_TOOLS(XCURSES_CONFIG, xcurses-config, none)], -+ [AC_PATH_PROGS(XCURSES_CONFIG, xcurses-config, none)]) - - if test "$XCURSES_CONFIG" != none ; then - -@@ -2168,15 +2358,15 @@ - fi - - if test $cf_cv_lib_XCurses = yes ; then -- AC_DEFINE(UNIX) -- AC_DEFINE(XCURSES) -- AC_CHECK_HEADER(xcurses.h, AC_DEFINE(HAVE_XCURSES)) -+ AC_DEFINE(UNIX,1,[Define to 1 if using PDCurses on Unix]) -+ AC_DEFINE(XCURSES,1,[Define to 1 if using PDCurses on Unix]) -+ AC_CHECK_HEADER(xcurses.h, AC_DEFINE(HAVE_XCURSES,1,[Define to 1 if using PDCurses on Unix])) - else - AC_MSG_ERROR(Cannot link with XCurses) - fi - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PKG_CONFIG version: 4 updated: 2011/02/18 20:26:24 -+dnl CF_PKG_CONFIG version: 7 updated: 2011/04/29 04:53:22 - dnl ------------- - dnl Check for the package-config program, unless disabled by command-line. - AC_DEFUN([CF_PKG_CONFIG], -@@ -2193,7 +2383,9 @@ - PKG_CONFIG=none - ;; - yes) #(vi -- AC_PATH_TOOL(PKG_CONFIG, pkg-config, none) -+ CF_ACVERSION_CHECK(2.52, -+ [AC_PATH_TOOL(PKG_CONFIG, pkg-config, none)], -+ [AC_PATH_PROG(PKG_CONFIG, pkg-config, none)]) - ;; - *) - PKG_CONFIG=$withval -@@ -2305,29 +2497,17 @@ - - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_PROG_CC_U_D version: 1 updated: 2005/07/14 16:59:30 --dnl -------------- --dnl Check if C (preprocessor) -U and -D options are processed in the order --dnl given rather than by type of option. Some compilers insist on apply all --dnl of the -U options after all of the -D options. Others allow mixing them, --dnl and may predefine symbols that conflict with those we define. --AC_DEFUN([CF_PROG_CC_U_D], --[ --AC_CACHE_CHECK(if $CC -U and -D options work together,cf_cv_cc_u_d_options,[ -- cf_save_CPPFLAGS="$CPPFLAGS" -- CPPFLAGS="-UU_D_OPTIONS -DU_D_OPTIONS -DD_U_OPTIONS -UD_U_OPTIONS" -- AC_TRY_COMPILE([],[ --#ifndef U_D_OPTIONS --make an undefined-error --#endif --#ifdef D_U_OPTIONS --make a defined-error --#endif -- ],[ -- cf_cv_cc_u_d_options=yes],[ -- cf_cv_cc_u_d_options=no]) -- CPPFLAGS="$cf_save_CPPFLAGS" --]) -+dnl CF_PROG_CC version: 3 updated: 2012/10/06 15:31:55 -+dnl ---------- -+dnl standard check for CC, plus followup sanity checks -+dnl $1 = optional parameter to pass to AC_PROG_CC to specify compiler name -+AC_DEFUN([CF_PROG_CC],[ -+ifelse($1,,[AC_PROG_CC],[AC_PROG_CC($1)]) -+CF_GCC_VERSION -+CF_ACVERSION_CHECK(2.52, -+ [AC_PROG_CC_STDC], -+ [CF_ANSI_CC_REQD]) -+CF_CC_ENV_FLAGS - ])dnl - dnl --------------------------------------------------------------------------- - dnl CF_PROG_INSTALL version: 5 updated: 2002/12/21 22:46:07 -@@ -2373,7 +2553,124 @@ - -e 's/-[[UD]]'"$3"'\(=[[^ ]]*\)\?[$]//g'` - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_SIG_ATOMIC_T version: 2 updated: 2005/09/18 17:27:12 -+dnl CF_RPATH_HACK version: 11 updated: 2013/09/01 13:02:00 -+dnl ------------- -+AC_DEFUN([CF_RPATH_HACK], -+[ -+AC_REQUIRE([CF_LD_RPATH_OPT]) -+AC_MSG_CHECKING(for updated LDFLAGS) -+if test -n "$LD_RPATH_OPT" ; then -+ AC_MSG_RESULT(maybe) -+ -+ AC_CHECK_PROGS(cf_ldd_prog,ldd,no) -+ cf_rpath_list="/usr/lib /lib" -+ if test "$cf_ldd_prog" != no -+ then -+ cf_rpath_oops= -+ -+AC_TRY_LINK([#include <stdio.h>], -+ [printf("Hello");], -+ [cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort | uniq` -+ cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[[ ]]/%/%' -e 's%/[[^/]][[^/]]*$%%' |sort | uniq`]) -+ -+ # If we passed the link-test, but get a "not found" on a given library, -+ # this could be due to inept reconfiguration of gcc to make it only -+ # partly honor /usr/local/lib (or whatever). Sometimes this behavior -+ # is intentional, e.g., installing gcc in /usr/bin and suppressing the -+ # /usr/local libraries. -+ if test -n "$cf_rpath_oops" -+ then -+ for cf_rpath_src in $cf_rpath_oops -+ do -+ for cf_rpath_dir in \ -+ /usr/local \ -+ /usr/pkg \ -+ /opt/sfw -+ do -+ if test -f $cf_rpath_dir/lib/$cf_rpath_src -+ then -+ CF_VERBOSE(...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src) -+ LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib" -+ break -+ fi -+ done -+ done -+ fi -+ fi -+ -+ CF_VERBOSE(...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS) -+ -+ CF_RPATH_HACK_2(LDFLAGS) -+ CF_RPATH_HACK_2(LIBS) -+ -+ CF_VERBOSE(...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS) -+else -+ AC_MSG_RESULT(no) -+fi -+AC_SUBST(EXTRA_LDFLAGS) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_RPATH_HACK_2 version: 6 updated: 2010/04/17 16:31:24 -+dnl --------------- -+dnl Do one set of substitutions for CF_RPATH_HACK, adding an rpath option to -+dnl EXTRA_LDFLAGS for each -L option found. -+dnl -+dnl $cf_rpath_list contains a list of directories to ignore. -+dnl -+dnl $1 = variable name to update. The LDFLAGS variable should be the only one, -+dnl but LIBS often has misplaced -L options. -+AC_DEFUN([CF_RPATH_HACK_2], -+[ -+CF_VERBOSE(...checking $1 [$]$1) -+ -+cf_rpath_dst= -+for cf_rpath_src in [$]$1 -+do -+ case $cf_rpath_src in #(vi -+ -L*) #(vi -+ -+ # check if this refers to a directory which we will ignore -+ cf_rpath_skip=no -+ if test -n "$cf_rpath_list" -+ then -+ for cf_rpath_item in $cf_rpath_list -+ do -+ if test "x$cf_rpath_src" = "x-L$cf_rpath_item" -+ then -+ cf_rpath_skip=yes -+ break -+ fi -+ done -+ fi -+ -+ if test "$cf_rpath_skip" = no -+ then -+ # transform the option -+ if test "$LD_RPATH_OPT" = "-R " ; then -+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%-R %"` -+ else -+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%$LD_RPATH_OPT%"` -+ fi -+ -+ # if we have not already added this, add it now -+ cf_rpath_tst=`echo "$EXTRA_LDFLAGS" | sed -e "s%$cf_rpath_tmp %%"` -+ if test "x$cf_rpath_tst" = "x$EXTRA_LDFLAGS" -+ then -+ CF_VERBOSE(...Filter $cf_rpath_src ->$cf_rpath_tmp) -+ EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS" -+ fi -+ fi -+ ;; -+ esac -+ cf_rpath_dst="$cf_rpath_dst $cf_rpath_src" -+done -+$1=$cf_rpath_dst -+ -+CF_VERBOSE(...checked $1 [$]$1) -+AC_SUBST(EXTRA_LDFLAGS) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SIG_ATOMIC_T version: 3 updated: 2012/10/04 20:12:20 - dnl --------------- - dnl signal handler, but there are some gcc depedencies in that recommendation. - dnl Try anyway. -@@ -2405,7 +2702,7 @@ - done - ]) - AC_MSG_RESULT($cf_cv_sig_atomic_t) --test "$cf_cv_sig_atomic_t" != no && AC_DEFINE_UNQUOTED(SIG_ATOMIC_T, $cf_cv_sig_atomic_t) -+test "$cf_cv_sig_atomic_t" != no && AC_DEFINE_UNQUOTED(SIG_ATOMIC_T, $cf_cv_sig_atomic_t,[Define to signal global datatype]) - ])dnl - dnl --------------------------------------------------------------------------- - dnl CF_SUBDIR_PATH version: 6 updated: 2010/04/21 06:20:50 -@@ -2425,7 +2722,7 @@ - CF_ADD_SUBDIR_PATH($1,$2,$3,[$]HOME,$prefix) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_SYS_TIME_SELECT version: 4 updated: 2000/10/04 09:18:40 -+dnl CF_SYS_TIME_SELECT version: 5 updated: 2012/10/04 05:24:07 - dnl ------------------ - dnl Check if we can include <sys/time.h> with <sys/select.h>; this breaks on - dnl older SCO configurations. -@@ -2445,10 +2742,10 @@ - [cf_cv_sys_time_select=no]) - ]) - AC_MSG_RESULT($cf_cv_sys_time_select) --test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT) -+test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT,1,[Define to 1 if we can include <sys/time.h> with <sys/select.h>]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_TERM_HEADER version: 2 updated: 2010/10/23 15:54:49 -+dnl CF_TERM_HEADER version: 3 updated: 2012/10/06 08:57:51 - dnl -------------- - dnl Look for term.h, which is part of X/Open curses. It defines the interface - dnl to terminfo database. Usually it is in the same include-path as curses.h, -@@ -2481,21 +2778,90 @@ - - case $cf_cv_term_header in # (vi - *term.h) -- AC_DEFINE(HAVE_TERM_H) -+ AC_DEFINE(HAVE_TERM_H,1,[Define to 1 if we have term.h]) - ;; - esac - - case $cf_cv_term_header in # (vi - ncurses/term.h) #(vi -- AC_DEFINE(HAVE_NCURSES_TERM_H) -+ AC_DEFINE(HAVE_NCURSES_TERM_H,1,[Define to 1 if we have ncurses/term.h]) - ;; - ncursesw/term.h) -- AC_DEFINE(HAVE_NCURSESW_TERM_H) -+ AC_DEFINE(HAVE_NCURSESW_TERM_H,1,[Define to 1 if we have ncursesw/term.h]) - ;; - esac - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_TRY_PKG_CONFIG version: 4 updated: 2010/06/14 17:42:30 -+dnl CF_TOP_BUILDDIR version: 2 updated: 2013/07/27 17:38:32 -+dnl --------------- -+dnl Define a top_builddir symbol, for applications that need an absolute path. -+AC_DEFUN([CF_TOP_BUILDDIR], -+[ -+top_builddir=ifelse($1,,`pwd`,$1) -+AC_SUBST(top_builddir) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_TPUTS_PROTO version: 2 updated: 2011/04/23 19:25:50 -+dnl -------------- -+dnl Check for type of function-pointer passed to tputs. Some old -+dnl implementations used functions that had different prototypes, making it -+dnl hard to compile portable programs using tputs. -+AC_DEFUN([CF_TPUTS_PROTO],[ -+CF_CURSES_FUNCS(tputs) -+if test x$cf_cv_func_tputs = xyes -+then -+ cf_done=no -+ for cf_arg in int char -+ do -+ for cf_ret in int void -+ do -+ if test $cf_ret = void -+ then -+ cf_return="/* nothing */" -+ else -+ cf_return="return value" -+ fi -+ AC_TRY_COMPILE([ -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <$cf_cv_term_header> -+ -+static $cf_ret outc($cf_arg value) { $cf_return; } -+],[ -+ tputs("hello", 0, outc); -+ ${cf_cv_main_return:-return}(0); -+],[ -+ CF_VERBOSE([prototype $cf_ret func($cf_arg value)]) -+ cat >>confdefs.h <<EOF -+#define TPUTS_ARG $cf_arg -+#define TPUTS_PROTO(func,value) $cf_ret func(TPUTS_ARG value) -+#define TPUTS_RETURN(value) $cf_return -+EOF -+ cf_done=yes -+ break -+]) -+ done -+ test $cf_done = yes && break -+ done -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_TRIM_X_LIBS version: 2 updated: 2013/07/09 21:27:22 -+dnl -------------- -+dnl Trim extra base X libraries added as a workaround for inconsistent library -+dnl dependencies returned by "new" pkg-config files. -+AC_DEFUN([CF_TRIM_X_LIBS],[ -+ for cf_trim_lib in Xmu Xt X11 -+ do -+ case "$LIBS" in -+ *-l$cf_trim_lib\ *-l$cf_trim_lib*) -+ LIBS=`echo "$LIBS " | sed -e 's/ / /g' -e 's%-l'"$cf_trim_lib"' %%' -e 's/ $//'` -+ CF_VERBOSE(..trimmed $LIBS) -+ ;; -+ esac -+ done -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_TRY_PKG_CONFIG version: 5 updated: 2013/07/06 21:27:06 - dnl ----------------- - dnl This is a simple wrapper to use for pkg-config, for libraries which may be - dnl available in that form. -@@ -2516,10 +2882,51 @@ - CF_ADD_LIBS($cf_pkgconfig_libs) - ifelse([$2],,:,[$2]) - else -+ cf_pkgconfig_incs= -+ cf_pkgconfig_libs= - ifelse([$3],,:,[$3]) - fi - ]) - dnl --------------------------------------------------------------------------- -+dnl CF_TRY_XOPEN_SOURCE version: 1 updated: 2011/10/30 17:09:50 -+dnl ------------------- -+dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we -+dnl can define it successfully. -+AC_DEFUN([CF_TRY_XOPEN_SOURCE],[ -+AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[ -+ AC_TRY_COMPILE([ -+#include <stdlib.h> -+#include <string.h> -+#include <sys/types.h> -+],[ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -+ AC_TRY_COMPILE([ -+#include <stdlib.h> -+#include <string.h> -+#include <sys/types.h> -+],[ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_cv_xopen_source=$cf_XOPEN_SOURCE]) -+ CPPFLAGS="$cf_save" -+ ]) -+]) -+ -+if test "$cf_cv_xopen_source" != no ; then -+ CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE) -+ CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE) -+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" -+ CF_ADD_CFLAGS($cf_temp_xopen_source) -+fi -+]) -+dnl --------------------------------------------------------------------------- - dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59 - dnl -------- - dnl Make an uppercase version of a variable -@@ -2529,7 +2936,7 @@ - $1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_UTF8_LIB version: 7 updated: 2010/06/20 09:24:28 -+dnl CF_UTF8_LIB version: 8 updated: 2012/10/06 08:57:51 - dnl ----------- - dnl Check for multibyte support, and if not found, utf8 compatibility library - AC_DEFUN([CF_UTF8_LIB], -@@ -2548,7 +2955,7 @@ - # HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between - # ncurses/ncursesw: - if test "$cf_cv_utf8_lib" = "add-on" ; then -- AC_DEFINE(HAVE_LIBUTF8_H) -+ AC_DEFINE(HAVE_LIBUTF8_H,1,[Define to 1 if we should include libutf8.h]) - CF_ADD_INCDIR($cf_cv_header_path_utf8) - CF_ADD_LIBDIR($cf_cv_library_path_utf8) - CF_ADD_LIBS($cf_cv_library_file_utf8) -@@ -2563,7 +2970,7 @@ - CF_MSG_LOG([$1]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_WCHAR_TYPE version: 3 updated: 2010/05/26 16:44:57 -+dnl CF_WCHAR_TYPE version: 4 updated: 2012/10/06 16:39:58 - dnl ------------- - dnl Check if type wide-character type $1 is declared, and if so, which header - dnl file is needed. The second parameter is used to set a shell variable when -@@ -2595,7 +3002,7 @@ - [cf_cv_$1=unknown])])]) - - if test "$cf_cv_$1" = yes ; then -- AC_DEFINE(NEED_WCHAR_H) -+ AC_DEFINE(NEED_WCHAR_H,1,[Define to 1 if we must include wchar.h]) - NEED_WCHAR_H=1 - fi - -@@ -2667,6 +3074,60 @@ - fi - ])dnl - dnl --------------------------------------------------------------------------- -+dnl CF_WITH_NCURSES_ETC version: 2 updated: 2012/01/13 10:49:00 -+dnl ------------------- -+dnl Use this macro for programs which use any variant of "curses", e.g., -+dnl "ncurses", and "PDCurses". Programs that can use curses and some unrelated -+dnl library (such as slang) should use a "--with-screen=XXX" option. -+dnl -+dnl This does not use AC_DEFUN, because that would tell autoconf to run each -+dnl of the macros inside this one - before this macro. -+define([CF_WITH_NCURSES_ETC],[ -+CF_WITH_CURSES_DIR -+ -+cf_cv_screen=curses -+ -+AC_MSG_CHECKING(for specified curses library type) -+AC_ARG_WITH(ncursesw, -+ [ --with-ncursesw use wide ncurses-libraries], -+ [cf_cv_screen=ncursesw],[ -+ -+AC_ARG_WITH(ncurses, -+ [ --with-ncurses use ncurses-libraries], -+ [cf_cv_screen=ncurses],[ -+ -+AC_ARG_WITH(pdcurses, -+ [ --with-pdcurses compile/link with pdcurses X11 library], -+ [cf_cv_screen=pdcurses],[ -+ -+AC_ARG_WITH(curses-colr, -+ [ --with-curses-colr compile/link with HPUX 10.x color-curses], -+ [cf_cv_screen=curses_colr],[ -+ -+AC_ARG_WITH(curses-5lib, -+ [ --with-curses-5lib compile/link with SunOS 5lib curses], -+ [cf_cv_screen=curses_5lib])])])])]) -+ -+AC_MSG_RESULT($cf_cv_screen) -+ -+case $cf_cv_screen in #(vi -+curses|curses_*) #(vi -+ CF_CURSES_CONFIG -+ ;; -+ncurses) #(vi -+ CF_NCURSES_CONFIG -+ ;; -+ncursesw) #(vi -+ CF_UTF8_LIB -+ CF_NCURSES_CONFIG(ncursesw) -+ ;; -+pdcurses) -+ CF_PDCURSES_X11 -+ ;; -+esac -+ -+])dnl -+dnl --------------------------------------------------------------------------- - dnl CF_WITH_VALGRIND version: 1 updated: 2006/12/14 18:00:21 - dnl ---------------- - AC_DEFUN([CF_WITH_VALGRIND],[ -@@ -2714,7 +3175,7 @@ - test $cf_cv_need_xopen_extension = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED" - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_XOPEN_SOURCE version: 35 updated: 2011/02/20 20:37:37 -+dnl CF_XOPEN_SOURCE version: 46 updated: 2014/02/09 19:30:15 - dnl --------------- - dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions, - dnl or adapt to the vendor's definitions to get equivalent functionality, -@@ -2724,16 +3185,17 @@ - dnl $1 is the nominal value for _XOPEN_SOURCE - dnl $2 is the nominal value for _POSIX_C_SOURCE - AC_DEFUN([CF_XOPEN_SOURCE],[ -+AC_REQUIRE([AC_CANONICAL_HOST]) - - cf_XOPEN_SOURCE=ifelse([$1],,500,[$1]) - cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2]) - cf_xopen_source= - - case $host_os in #(vi --aix[[456]]*) #(vi -+aix[[4-7]]*) #(vi - cf_xopen_source="-D_ALL_SOURCE" - ;; --cygwin) #(vi -+cygwin|msys) #(vi - cf_XOPEN_SOURCE=600 - ;; - darwin[[0-8]].*) #(vi -@@ -2741,6 +3203,7 @@ - ;; - darwin*) #(vi - cf_xopen_source="-D_DARWIN_C_SOURCE" -+ cf_XOPEN_SOURCE= - ;; - freebsd*|dragonfly*) #(vi - # 5.x headers associate -@@ -2758,15 +3221,23 @@ - ;; - irix[[56]].*) #(vi - cf_xopen_source="-D_SGI_SOURCE" -+ cf_XOPEN_SOURCE= - ;; - linux*|gnu*|mint*|k*bsd*-gnu) #(vi - CF_GNU_SOURCE - ;; - mirbsd*) #(vi -- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h> -+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types -+ cf_XOPEN_SOURCE= -+ CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE) - ;; - netbsd*) #(vi -- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ ;; -+openbsd[[4-9]]*) #(vi -+ # setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw -+ cf_xopen_source="-D_BSD_SOURCE" -+ cf_XOPEN_SOURCE=600 - ;; - openbsd*) #(vi - # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw -@@ -2780,36 +3251,12 @@ - sco*) #(vi - # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer - ;; --solaris2.1[[0-9]]) #(vi -- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- ;; --solaris2.[[1-9]]) #(vi -+solaris2.*) #(vi - cf_xopen_source="-D__EXTENSIONS__" -+ cf_cv_xopen_source=broken - ;; - *) -- AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[ -- AC_TRY_COMPILE([#include <sys/types.h>],[ --#ifndef _XOPEN_SOURCE --make an error --#endif], -- [cf_cv_xopen_source=no], -- [cf_save="$CPPFLAGS" -- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- AC_TRY_COMPILE([#include <sys/types.h>],[ --#ifdef _XOPEN_SOURCE --make an error --#endif], -- [cf_cv_xopen_source=no], -- [cf_cv_xopen_source=$cf_XOPEN_SOURCE]) -- CPPFLAGS="$cf_save" -- ]) --]) -- if test "$cf_cv_xopen_source" != no ; then -- CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE) -- CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE) -- cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" -- CF_ADD_CFLAGS($cf_temp_xopen_source) -- fi -+ CF_TRY_XOPEN_SOURCE - CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE) - ;; - esac -@@ -2817,9 +3264,38 @@ - if test -n "$cf_xopen_source" ; then - CF_ADD_CFLAGS($cf_xopen_source) - fi -+ -+dnl In anything but the default case, we may have system-specific setting -+dnl which is still not guaranteed to provide all of the entrypoints that -+dnl _XOPEN_SOURCE would yield. -+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then -+ AC_MSG_CHECKING(if _XOPEN_SOURCE really is set) -+ AC_TRY_COMPILE([#include <stdlib.h>],[ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_XOPEN_SOURCE_set=yes], -+ [cf_XOPEN_SOURCE_set=no]) -+ AC_MSG_RESULT($cf_XOPEN_SOURCE_set) -+ if test $cf_XOPEN_SOURCE_set = yes -+ then -+ AC_TRY_COMPILE([#include <stdlib.h>],[ -+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE -+make an error -+#endif], -+ [cf_XOPEN_SOURCE_set_ok=yes], -+ [cf_XOPEN_SOURCE_set_ok=no]) -+ if test $cf_XOPEN_SOURCE_set_ok = no -+ then -+ AC_MSG_WARN(_XOPEN_SOURCE is lower than requested) -+ fi -+ else -+ CF_TRY_XOPEN_SOURCE -+ fi -+fi - ]) - dnl --------------------------------------------------------------------------- --dnl CF_X_ATHENA version: 20 updated: 2010/11/09 05:18:02 -+dnl CF_X_ATHENA version: 21 updated: 2013/07/06 21:27:06 - dnl ----------- - dnl Check for Xaw (Athena) libraries - dnl -@@ -2878,6 +3354,8 @@ - CF_UPPER(cf_x_athena_LIBS,HAVE_LIB_$cf_x_athena) - AC_DEFINE_UNQUOTED($cf_x_athena_LIBS) - -+ CF_TRIM_X_LIBS -+ - AC_CACHE_CHECK(for usable $cf_x_athena/Xmu package,cf_cv_xaw_compat,[ - AC_TRY_LINK([ - #include <X11/Xmu/CharSet.h> -@@ -2893,7 +3371,15 @@ - ;; - *) - CF_VERBOSE(work around broken package) -- CF_TRY_PKG_CONFIG(xmu,,[CF_ADD_LIB_AFTER(-lXt,-lXmu)]) -+ cf_save_xmu="$LIBS" -+ cf_first_lib=`echo "$cf_save_xmu" | sed -e 's/^[ ][ ]*//' -e 's/ .*//'` -+ CF_TRY_PKG_CONFIG(xmu,[ -+ LIBS="$cf_save_xmu" -+ CF_ADD_LIB_AFTER($cf_first_lib,$cf_pkgconfig_libs) -+ ],[ -+ CF_ADD_LIB_AFTER($cf_first_lib,-lXmu) -+ ]) -+ CF_TRIM_X_LIBS - ;; - esac - fi -@@ -2957,7 +3443,7 @@ - fi - ]) - dnl --------------------------------------------------------------------------- --dnl CF_X_ATHENA_LIBS version: 10 updated: 2011/02/13 13:31:33 -+dnl CF_X_ATHENA_LIBS version: 12 updated: 2011/07/17 19:55:02 - dnl ---------------- - dnl Normally invoked by CF_X_ATHENA, with $1 set to the appropriate flavor of - dnl the Athena widgets, e.g., Xaw, Xaw3d, neXtaw. -@@ -2973,19 +3459,24 @@ - /usr/local - do - for cf_lib in \ -- "-l$cf_x_athena_root -lXmu" \ -- "-l$cf_x_athena_root -lXpm -lXmu" \ -- "-l${cf_x_athena_root}_s -lXmu_s" -+ ${cf_x_athena_root} \ -+ ${cf_x_athena_root}7 \ -+ ${cf_x_athena_root}6 -+ do -+ for cf_libs in \ -+ "-l$cf_lib -lXmu" \ -+ "-l$cf_lib -lXpm -lXmu" \ -+ "-l${cf_lib}_s -lXmu_s" - do - if test -z "$cf_x_athena_lib" ; then - cf_save="$LIBS" - cf_test=XawSimpleMenuAddGlobalActions - if test $cf_path != default ; then -- CF_ADD_LIBS(-L$cf_path/lib $cf_lib) -- AC_MSG_CHECKING(for $cf_lib in $cf_path) -+ CF_ADD_LIBS(-L$cf_path/lib $cf_libs) -+ AC_MSG_CHECKING(for $cf_libs in $cf_path) - else -- CF_ADD_LIBS($cf_lib) -- AC_MSG_CHECKING(for $cf_test in $cf_lib) -+ CF_ADD_LIBS($cf_libs) -+ AC_MSG_CHECKING(for $cf_test in $cf_libs) - fi - AC_TRY_LINK([ - #include <X11/Intrinsic.h> -@@ -2996,12 +3487,14 @@ - [cf_result=no]) - AC_MSG_RESULT($cf_result) - if test "$cf_result" = yes ; then -- cf_x_athena_lib="$cf_lib" -+ cf_x_athena_lib="$cf_libs" - break - fi - LIBS="$cf_save" - fi -- done -+ done # cf_libs -+ test -n "$cf_x_athena_lib" && break -+ done # cf_lib - done - - if test -z "$cf_x_athena_lib" ; then -@@ -3021,7 +3514,7 @@ - [CF_ADD_LIB(Xext)])]) - ])dnl - dnl --------------------------------------------------------------------------- --dnl CF_X_TOOLKIT version: 20 updated: 2010/11/19 05:43:04 -+dnl CF_X_TOOLKIT version: 21 updated: 2012/10/04 06:57:36 - dnl ------------ - dnl Check for X Toolkit libraries - dnl -@@ -3095,7 +3588,7 @@ - - AC_CHECK_FUNC(XtAppInitialize,,[ - AC_CHECK_LIB(Xt, XtAppInitialize, -- [AC_DEFINE(HAVE_LIBXT) -+ [AC_DEFINE(HAVE_LIBXT,1,[Define to 1 if we can compile with the Xt library]) - cf_have_X_LIBS=Xt - LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS"],, - [$X_PRE_LIBS $LIBS $X_EXTRA_LIBS])]) -diff -Naur ncurses-5.9/test/background.c ncurses-5.9.patch/test/background.c ---- ncurses-5.9/test/background.c 2006-06-03 18:43:08.000000000 +0200 -+++ ncurses-5.9.patch/test/background.c 2014-09-01 16:33:22.526792407 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2003,2006 Free Software Foundation, Inc. * -+ * Copyright (c) 2003-2012,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,15 +26,172 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: background.c,v 1.3 2006/06/03 16:43:08 tom Exp $ -+ * $Id: background.c,v 1.14 2014/02/01 22:10:42 tom Exp $ - */ - --#include <test.priv.h> -+#define NEED_COLOR_CODE 1 -+#define NEED_COLOR_NAME 1 -+#include <color_name.h> -+ -+static int default_bg = COLOR_BLACK; -+static int default_fg = COLOR_WHITE; -+ -+static void -+test_background(void) -+{ -+ NCURSES_COLOR_T f, b; -+ int row; -+ int chr; -+ -+ if (pair_content(0, &f, &b) == ERR) { -+ printw("pair 0 contains no data\n"); -+ } else { -+ printw("pair 0 contains (%d,%d)\n", (int) f, (int) b); -+ } -+ getch(); -+ -+ printw("Initializing pair 1 to red/%s\n", color_name(default_bg)); -+ init_pair(1, COLOR_RED, (NCURSES_COLOR_T) default_bg); -+ bkgdset((chtype) (' ' | COLOR_PAIR(1))); -+ printw("RED/BLACK\n"); -+ getch(); -+ -+ printw("Initializing pair 2 to %s/blue\n", color_name(default_fg)); -+ init_pair(2, (NCURSES_COLOR_T) default_fg, COLOR_BLUE); -+ bkgdset((chtype) (' ' | COLOR_PAIR(2))); -+ printw("This line should be %s/blue\n", color_name(default_fg)); -+ getch(); -+ -+ printw("Initializing pair 3 to %s/cyan (ACS_HLINE)\n", color_name(default_fg)); -+ init_pair(3, (NCURSES_COLOR_T) default_fg, COLOR_CYAN); -+ printw("...and drawing a box which should be followed by lines\n"); -+ bkgdset(ACS_HLINE | COLOR_PAIR(3)); -+ /* -+ * Characters from vt100 line-drawing should be mapped to line-drawing, -+ * since A_ALTCHARSET is set in the background, and the character part -+ * of the background is replaced by the nonblank characters written. -+ * -+ * Characters not in the line-drawing range are usually sent as-is. -+ * -+ * With SVr4 curses it is possible to rely on this to mix uppercase text -+ * with the (lowercase) line-drawing characters. ncurses uses some of -+ * the uppercase characters for encoding thick- and double-lines. -+ */ -+ row = 7; -+ mvprintw(row++, 10, "l"); -+ for (chr = 0; chr < 32; ++chr) -+ addch(' '); -+ printw("x\n"); -+ chr = 32; -+ while (chr < 128) { -+ if ((chr % 32) == 0) -+ mvprintw(row++, 10, "x"); -+ addch((chtype) ((chr == 127) ? ' ' : chr)); -+ if ((++chr % 32) == 0) -+ printw("x\n"); -+ } -+ mvprintw(row++, 10, "m"); -+ for (chr = 0; chr < 32; ++chr) -+ addch(' '); -+ printw("j\n"); -+ getch(); -+ -+ bkgdset((chtype) (' ' | COLOR_PAIR(0))); -+ printw("Default Colors\n"); -+ getch(); -+ -+ printw("Resetting colors to pair 1\n"); -+ bkgdset((chtype) (' ' | COLOR_PAIR(1))); -+ printw("This line should be red/%s\n", color_name(default_bg)); -+ getch(); -+ -+ printw("Setting screen to pair 0\n"); -+ bkgd((chtype) (' ' | COLOR_PAIR(0))); -+ getch(); -+ -+ printw("Setting screen to pair 1\n"); -+ bkgd((chtype) (' ' | COLOR_PAIR(1))); -+ getch(); -+ -+ printw("Setting screen to pair 2\n"); -+ bkgd((chtype) (' ' | COLOR_PAIR(2))); -+ getch(); -+ -+ printw("Setting screen to pair 3\n"); -+ bkgd((chtype) (' ' | COLOR_PAIR(3))); -+ getch(); -+ -+ printw("Setting screen to pair 0\n"); -+ bkgd((chtype) (' ' | COLOR_PAIR(0))); -+ getch(); -+} -+ -+static void -+usage(void) -+{ -+ static const char *msg[] = -+ { -+ "Usage: background [options]" -+ ,"" -+ ,"Options:" -+#if HAVE_ASSUME_DEFAULT_COLORS -+ ," -a invoke assume_default_colors, repeat to use in init_pair" -+#endif -+ ," -b XXX specify background color" -+#if HAVE_USE_DEFAULT_COLORS -+ ," -d invoke use_default_colors, repeat to use in init_pair" -+#endif -+ ," -f XXX specify foreground color" -+ }; -+ size_t n; -+ -+ for (n = 0; n < SIZEOF(msg); n++) -+ fprintf(stderr, "%s\n", msg[n]); -+ -+ ExitProgram(EXIT_FAILURE); -+} - - int - main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED) - { -- short f, b; -+#if HAVE_ASSUME_DEFAULT_COLORS -+ int a_option = 0; -+#endif -+#if HAVE_USE_DEFAULT_COLORS -+ int d_option = 0; -+#endif -+ int n; -+ -+ setlocale(LC_ALL, ""); -+ -+ while ((n = getopt(argc, argv, "ab:df:")) != -1) { -+ switch (n) { -+#if HAVE_ASSUME_DEFAULT_COLORS -+ case 'a': -+ ++a_option; -+ break; -+#endif -+ case 'b': -+ default_bg = color_code(optarg); -+ break; -+#if HAVE_USE_DEFAULT_COLORS -+ case 'd': -+ ++d_option; -+ break; -+#endif -+ case 'f': -+ default_fg = color_code(optarg); -+ break; -+ default: -+ usage(); -+ } -+ } -+#if HAVE_USE_DEFAULT_COLORS && HAVE_ASSUME_DEFAULT_COLORS -+ if (a_option && d_option) { -+ fprintf(stderr, "Use either -a or -d option, but not both\n"); -+ ExitProgram(EXIT_FAILURE); -+ } -+#endif - - initscr(); - cbreak(); -@@ -43,47 +200,30 @@ - if (has_colors()) { - start_color(); - -- pair_content(0, &f, &b); -- printw("pair 0 contains (%d,%d)\n", f, b); -- getch(); -- -- printw("Initializing pair 1 to red/black\n"); -- init_pair(1, COLOR_RED, COLOR_BLACK); -- bkgdset(' ' | COLOR_PAIR(1)); -- printw("RED/BLACK\n"); -- getch(); -- -- printw("Initializing pair 2 to white/blue\n"); -- init_pair(2, COLOR_WHITE, COLOR_BLUE); -- bkgdset(' ' | COLOR_PAIR(2)); -- printw("WHITE/BLUE\n"); -- getch(); -- -- printw("Resetting colors to pair 0\n"); -- bkgdset(' ' | COLOR_PAIR(0)); -- printw("Default Colors\n"); -- getch(); -- -- printw("Resetting colors to pair 1\n"); -- bkgdset(' ' | COLOR_PAIR(1)); -- printw("RED/BLACK\n"); -- getch(); -- -- printw("Setting screen to pair 0\n"); -- bkgd(' ' | COLOR_PAIR(0)); -- getch(); -- -- printw("Setting screen to pair 1\n"); -- bkgd(' ' | COLOR_PAIR(1)); -- getch(); -- -- printw("Setting screen to pair 2\n"); -- bkgd(' ' | COLOR_PAIR(2)); -- getch(); -- -- printw("Setting screen to pair 0\n"); -- bkgd(' ' | COLOR_PAIR(0)); -- getch(); -+#if HAVE_USE_DEFAULT_COLORS -+ if (d_option) { -+ printw("Using default colors...\n"); -+ use_default_colors(); -+ if (d_option > 1) { -+ default_fg = -1; -+ default_bg = -1; -+ } -+ } -+#endif -+#if HAVE_ASSUME_DEFAULT_COLORS -+ if (a_option) { -+ printw("Using assumed colors %s/%s...\n", -+ color_name(default_fg), -+ color_name(default_bg)); -+ assume_default_colors(default_fg, default_bg); -+ if (a_option > 1) { -+ default_fg = -1; -+ default_bg = -1; -+ } -+ } -+#endif -+ -+ test_background(); - - } else { - printw("This demo requires a color terminal"); -diff -Naur ncurses-5.9/test/blue.c ncurses-5.9.patch/test/blue.c ---- ncurses-5.9/test/blue.c 2009-10-24 23:03:35.000000000 +0200 -+++ ncurses-5.9.patch/test/blue.c 2014-09-01 16:33:22.526792407 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2009,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -40,7 +40,7 @@ - * results, use the ncurses(3) library. On non-Intel machines, SVr4 curses is - * just as good. - * -- * $Id: blue.c,v 1.33 2009/10/24 21:03:35 tom Exp $ -+ * $Id: blue.c,v 1.35 2013/04/27 19:46:53 tom Exp $ - */ - - #include <test.priv.h> -@@ -70,7 +70,7 @@ - #define BLACK_ON_WHITE 2 - #define BLUE_ON_WHITE 3 - --static RETSIGTYPE die(int onsig) GCC_NORETURN; -+static void die(int onsig) GCC_NORETURN; - - static int deck_size = PACK_SIZE; /* initial deck */ - static int deck[PACK_SIZE]; -@@ -132,7 +132,7 @@ - - static chtype *suits = letters; /* this may change to glyphs below */ - --static RETSIGTYPE -+static void - die(int onsig) - { - (void) signal(onsig, SIG_IGN); -@@ -202,8 +202,8 @@ - if (value == NOCARD) - (void) addstr(" "); - else { -- addch(ranks[value % SUIT_LENGTH][0] | COLOR_PAIR(BLUE_ON_WHITE)); -- addch(ranks[value % SUIT_LENGTH][1] | COLOR_PAIR(BLUE_ON_WHITE)); -+ addch(ranks[value % SUIT_LENGTH][0] | (chtype) COLOR_PAIR(BLUE_ON_WHITE)); -+ addch(ranks[value % SUIT_LENGTH][1] | (chtype) COLOR_PAIR(BLUE_ON_WHITE)); - addch(suits[value / SUIT_LENGTH]); - } - (void) addch(' '); -diff -Naur ncurses-5.9/test/bs.c ncurses-5.9.patch/test/bs.c ---- ncurses-5.9/test/bs.c 2010-11-13 21:07:52.000000000 +0100 -+++ ncurses-5.9.patch/test/bs.c 2014-09-01 16:33:22.526792407 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -34,7 +34,7 @@ - * v2.0 featuring strict ANSI/POSIX conformance, November 1993. - * v2.1 with ncurses mouse support, September 1995 - * -- * $Id: bs.c,v 1.52 2010/11/13 20:07:52 tom Exp $ -+ * $Id: bs.c,v 1.62 2013/11/16 19:57:56 tom Exp $ - */ - - #include <test.priv.h> -@@ -110,7 +110,7 @@ - static char destroy[] = "Destroyer"; - static char ptboat[] = "PT Boat"; - --static char name[40]; -+static char *your_name; - static char dftname[] = "stranger"; - - /* direction constants */ -@@ -174,9 +174,9 @@ - - #define PR (void)addstr - --static RETSIGTYPE uninitgame(int sig) GCC_NORETURN; -+static void uninitgame(int sig) GCC_NORETURN; - --static RETSIGTYPE -+static void - uninitgame(int sig GCC_UNUSED) - /* end the game, either normally or due to signal */ - { -@@ -220,11 +220,12 @@ - - CATCHALL(uninitgame); - -- if ((tmpname = getlogin()) != 0) { -- (void) strcpy(name, tmpname); -- name[0] = (char) toupper(UChar(name[0])); -- } else -- (void) strcpy(name, dftname); -+ if ((tmpname = getlogin()) != 0 && -+ (your_name = strdup(tmpname)) != 0) { -+ your_name[0] = (char) toupper(UChar(your_name[0])); -+ } else { -+ your_name = dftname; -+ } - - (void) initscr(); - keypad(stdscr, TRUE); -@@ -368,7 +369,7 @@ - MvAddCh(PYBASE + i, PXBASE - 3, (chtype) (i + 'A')); - #ifdef A_COLOR - if (has_colors()) -- attron(COLOR_PAIR(COLOR_BLUE)); -+ attron((attr_t) COLOR_PAIR(COLOR_BLUE)); - #endif /* A_COLOR */ - (void) addch(' '); - for (j = 0; j < BWIDTH; j++) -@@ -386,7 +387,7 @@ - MvAddCh(CYBASE + i, CXBASE - 3, (chtype) (i + 'A')); - #ifdef A_COLOR - if (has_colors()) -- attron(COLOR_PAIR(COLOR_BLUE)); -+ attron((attr_t) COLOR_PAIR(COLOR_BLUE)); - #endif /* A_COLOR */ - (void) addch(' '); - for (j = 0; j < BWIDTH; j++) -@@ -426,10 +427,11 @@ - placeship(COMPUTER, ss, FALSE); - } - -- ss = (ship_t *) NULL; - do { - char c, docked[SHIPTYPES + 2], *cp = docked; - -+ ss = (ship_t *) NULL; -+ - /* figure which ships still wait to be placed */ - *cp++ = 'R'; - for (i = 0; i < SHIPTYPES; i++) -@@ -442,7 +444,7 @@ - do { - c = (char) getcoord(PLAYER); - } while -- (!strchr(docked, c)); -+ (!(strchr) (docked, c)); - - if (c == 'R') - (void) ungetch('R'); -@@ -459,13 +461,14 @@ - do { - c = (char) getch(); - } while -- (!(strchr("hjklrR", c) || c == FF)); -+ (!(strchr("hjkl8462rR", c) || c == FF)); - - if (c == FF) { - (void) clearok(stdscr, TRUE); - (void) refresh(); -+ } else if (ss == 0) { -+ beep(); /* simple to verify, unlikely to happen */ - } else if (c == 'r') { -- assert(ss != 0); - prompt(1, "Random-placing your %s", ss->name); - randomplace(PLAYER, ss); - placeship(PLAYER, ss, TRUE); -@@ -481,7 +484,6 @@ - } - error((char *) NULL); - } else if (strchr("hjkl8462", c)) { -- assert(ss != 0); - ss->x = curx; - ss->y = cury; - -@@ -769,7 +771,7 @@ - cgoto(y1, x1); - #ifdef A_COLOR - if (has_colors()) -- attron(COLOR_PAIR(COLOR_GREEN)); -+ attron((attr_t) COLOR_PAIR(COLOR_GREEN)); - #endif /* A_COLOR */ - (void) addch(MARK_MISS); - #ifdef A_COLOR -@@ -795,7 +797,7 @@ - pgoto(y1, x1); - #ifdef A_COLOR - if (has_colors()) -- attron(COLOR_PAIR(COLOR_RED)); -+ attron((attr_t) COLOR_PAIR(COLOR_RED)); - #endif /* A_COLOR */ - (void) addch(SHOWHIT); - #ifdef A_COLOR -@@ -834,9 +836,9 @@ - #ifdef A_COLOR - if (has_colors()) { - if (hit) -- attron(COLOR_PAIR(COLOR_RED)); -+ attron((attr_t) COLOR_PAIR(COLOR_RED)); - else -- attron(COLOR_PAIR(COLOR_GREEN)); -+ attron((attr_t) COLOR_PAIR(COLOR_GREEN)); - } - #endif /* A_COLOR */ - (void) addch((chtype) hits[PLAYER][curx][cury]); -@@ -863,7 +865,9 @@ - m = " You'll pick up survivors from my %s, I hope...!"; - break; - } -- (void) printw(m, ss->name); -+ if (m != 0) { -+ (void) printw(m, ss->name); -+ } - (void) beep(); - } - return (hit); -@@ -952,8 +956,8 @@ - bool hit, sunk; - ship_t *ss = NULL; - -- hit = board[PLAYER][x][y] ? MARK_HIT : MARK_MISS; -- hits[COMPUTER][x][y] = (char) hit; -+ hit = (bool) board[PLAYER][x][y]; -+ hits[COMPUTER][x][y] = (hit ? MARK_HIT : MARK_MISS); - MvPrintw(PROMPTLINE, 0, - "I shoot at %c%d. I %s!", y + 'A', x, hit ? "hit" : - "miss"); -@@ -965,9 +969,9 @@ - #ifdef A_COLOR - if (has_colors()) { - if (hit) -- attron(COLOR_PAIR(COLOR_RED)); -+ attron((attr_t) COLOR_PAIR(COLOR_RED)); - else -- attron(COLOR_PAIR(COLOR_GREEN)); -+ attron((attr_t) COLOR_PAIR(COLOR_GREEN)); - } - #endif /* A_COLOR */ - (void) addch((chtype) (hit ? SHOWHIT : SHOWSPLASH)); -@@ -1130,16 +1134,16 @@ - ++cpuwon; - else - ++plywon; -- j = 18 + (int) strlen(name); -+ j = 18 + (int) strlen(your_name); - if (plywon >= 10) - ++j; - if (cpuwon >= 10) - ++j; - MvPrintw(1, (COLWIDTH - j) / 2, -- "%s: %d Computer: %d", name, plywon, cpuwon); -+ "%s: %d Computer: %d", your_name, plywon, cpuwon); - - prompt(2, (awinna())? "Want to be humiliated again, %s [yn]? " -- : "Going to give me a chance for revenge, %s [yn]? ", name); -+ : "Going to give me a chance for revenge, %s [yn]? ", your_name); - return (sgetc("YN") == 'Y'); - } - -diff -Naur ncurses-5.9/test/cardfile.c ncurses-5.9.patch/test/cardfile.c ---- ncurses-5.9/test/cardfile.c 2010-11-14 01:58:45.000000000 +0100 -+++ ncurses-5.9.patch/test/cardfile.c 2014-09-01 16:33:22.526792407 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1999-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1999-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,7 +29,7 @@ - /* - * Author: Thomas E. Dickey - * -- * $Id: cardfile.c,v 1.38 2010/11/14 00:58:45 tom Exp $ -+ * $Id: cardfile.c,v 1.42 2013/09/28 22:02:17 tom Exp $ - * - * File format: text beginning in column 1 is a title; other text is content. - */ -@@ -68,17 +68,13 @@ - static bool try_color = FALSE; - static char default_name[] = "cardfile.dat"; - --#if !HAVE_STRDUP --#define strdup my_strdup --static char * --strdup(const char *s) --{ -- char *p = typeMalloc(char, strlen(s) + 1); -- if (p) -- strcpy(p, s); -- return (p); -+static void -+failed(const char *s) -+{ -+ perror(s); -+ endwin(); -+ ExitProgram(EXIT_FAILURE); - } --#endif /* not HAVE_STRDUP */ - - static const char * - skip(const char *buffer) -@@ -111,7 +107,7 @@ - break; - } - -- card = typeCalloc(CARD, 1); -+ card = typeCalloc(CARD, (size_t) 1); - card->title = strdup(title); - card->content = strdup(""); - -@@ -146,6 +142,8 @@ - } - if (card->content) - strcpy(card->content + offset, content); -+ else -+ failed("add_content"); - } - } - -@@ -337,7 +335,7 @@ - static FIELD ** - make_fields(CARD * p, int form_high, int form_wide) - { -- FIELD **f = typeCalloc(FIELD *, 3); -+ FIELD **f = typeCalloc(FIELD *, (size_t) 3); - - f[0] = new_field(1, form_wide, 0, 0, 0, 0); - set_field_back(f[0], A_REVERSE); -@@ -414,7 +412,7 @@ - if ((win = newwin(panel_high, panel_wide, y, x)) == 0) - break; - -- wbkgd(win, COLOR_PAIR(pair_2)); -+ wbkgd(win, (chtype) COLOR_PAIR(pair_2)); - keypad(win, TRUE); - p->panel = new_panel(win); - box(win, 0, 0); -@@ -588,7 +586,7 @@ - start_color(); - init_pair(pair_1, COLOR_WHITE, COLOR_BLUE); - init_pair(pair_2, COLOR_WHITE, COLOR_CYAN); -- bkgd(COLOR_PAIR(pair_1)); -+ bkgd((chtype) COLOR_PAIR(pair_1)); - } else { - try_color = FALSE; - } -diff -Naur ncurses-5.9/test/chgat.c ncurses-5.9.patch/test/chgat.c ---- ncurses-5.9/test/chgat.c 2010-05-01 21:12:26.000000000 +0200 -+++ ncurses-5.9.patch/test/chgat.c 2014-09-01 16:33:22.526792407 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2006-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2006-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: chgat.c,v 1.11 2010/05/01 19:12:26 tom Exp $ -+ * $Id: chgat.c,v 1.12 2012/11/18 01:55:35 tom Exp $ - * - * test-driver for chgat/wchgat/mvchgat/mvwchgat - */ -@@ -176,6 +176,8 @@ - delwin(win1); - touchwin(win); - } else { -+ if (win1 != 0) -+ delwin(win1); - beep(); - } - } -diff -Naur ncurses-5.9/test/clip_printw.c ncurses-5.9.patch/test/clip_printw.c ---- ncurses-5.9/test/clip_printw.c 2010-11-13 21:48:48.000000000 +0100 -+++ ncurses-5.9.patch/test/clip_printw.c 2014-09-01 16:33:22.527792409 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2008-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: clip_printw.c,v 1.7 2010/11/13 20:48:48 tom Exp $ -+ * $Id: clip_printw.c,v 1.9 2012/11/18 00:39:48 tom Exp $ - * - * demonstrate how to use printw without wrapping. - */ -@@ -207,6 +207,8 @@ - delwin(win1); - touchwin(win); - } else { -+ if (win1) -+ delwin(win1); - beep(); - } - } -@@ -329,7 +331,7 @@ - do { - switch (st.ch) { - case '.': /* change from current position */ -- (void) wattrset(win, st.attr | (chtype) COLOR_PAIR(st.pair)); -+ (void) wattrset(win, (int) (st.attr | (chtype) COLOR_PAIR(st.pair))); - if (st.count > 0) { - need = (unsigned) st.count + 1; - sprintf(fmt, "%%c%%%ds%%c", st.count); -@@ -337,12 +339,13 @@ - need = (unsigned) getmaxx(win) - 1; - strcpy(fmt, "%c%s%c"); - } -- if ((buffer = typeMalloc(char, need)) != 0) { -+ if ((buffer = typeMalloc(char, need + 1)) != 0) { - for (j = 0; j < need; ++j) { - buffer[j] = (char) ('A' + (j % 26)); - } - buffer[need - 1] = '\0'; - st.status = clip_wprintw(win, fmt, '[', buffer, ']'); -+ free(buffer); - } - break; - case 'w': -diff -Naur ncurses-5.9/test/color_name.h ncurses-5.9.patch/test/color_name.h ---- ncurses-5.9/test/color_name.h 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/test/color_name.h 2014-09-01 16:33:22.527792409 +0200 -@@ -0,0 +1,103 @@ -+/**************************************************************************** -+ * Copyright (c) 2011,2012 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+/* -+ * $Id: color_name.h,v 1.4 2012/11/18 01:59:32 tom Exp $ -+ */ -+ -+#ifndef __COLORNAME_H -+#define __COLORNAME_H 1 -+ -+#ifndef __TEST_PRIV_H -+#include <test.priv.h> -+#endif -+ -+static NCURSES_CONST char *the_color_names[] = -+{ -+ "black", -+ "red", -+ "green", -+ "yellow", -+ "blue", -+ "magenta", -+ "cyan", -+ "white", -+ "BLACK", -+ "RED", -+ "GREEN", -+ "YELLOW", -+ "BLUE", -+ "MAGENTA", -+ "CYAN", -+ "WHITE" -+}; -+ -+#ifdef NEED_COLOR_CODE -+static int -+color_code(const char *color) -+{ -+ int result = 0; -+ char *endp = 0; -+ size_t n; -+ -+ if ((result = (int) strtol(color, &endp, 0)) >= 0 -+ && (endp == 0 || *endp == 0)) { -+ ; -+ } else if (!strcmp(color, "default")) { -+ result = -1; -+ } else { -+ for (n = 0; n < SIZEOF(the_color_names); ++n) { -+ if (!strcmp(the_color_names[n], color)) { -+ result = (int) n; -+ break; -+ } -+ } -+ } -+ return result; -+} -+#endif /* NEED_COLOR_NAME */ -+ -+#ifdef NEED_COLOR_NAME -+static const char * -+color_name(int color) -+{ -+ static char temp[20]; -+ const char *result = 0; -+ -+ if (color >= (int) SIZEOF(the_color_names)) { -+ sprintf(temp, "%d", color); -+ result = temp; -+ } else if (color < 0) { -+ result = "default"; -+ } else { -+ result = the_color_names[color]; -+ } -+ return result; -+} -+#endif /* NEED_COLOR_NAME */ -+ -+#endif /* __COLORNAME_H */ -diff -Naur ncurses-5.9/test/color_set.c ncurses-5.9.patch/test/color_set.c ---- ncurses-5.9/test/color_set.c 2008-02-10 01:18:01.000000000 +0100 -+++ ncurses-5.9.patch/test/color_set.c 2014-09-01 16:33:22.527792409 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2003-2006,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 2003-2012,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: color_set.c,v 1.6 2008/02/10 00:18:01 tom Exp $ -+ * $Id: color_set.c,v 1.8 2014/02/01 22:10:42 tom Exp $ - */ - - #include <test.priv.h> -@@ -38,7 +38,7 @@ - int - main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED) - { -- short f, b; -+ NCURSES_COLOR_T f, b; - int i; - - initscr(); -@@ -48,8 +48,8 @@ - if (has_colors()) { - start_color(); - -- pair_content(0, &f, &b); -- printw("pair 0 contains (%d,%d)\n", f, b); -+ (void) pair_content(0, &f, &b); -+ printw("pair 0 contains (%d,%d)\n", (int) f, (int) b); - getch(); - - printw("Initializing pair 1 to red/black\n"); -diff -Naur ncurses-5.9/test/configure ncurses-5.9.patch/test/configure ---- ncurses-5.9/test/configure 2011-03-24 09:29:40.000000000 +0100 -+++ ncurses-5.9.patch/test/configure 2014-09-01 16:33:22.534792419 +0200 -@@ -1,6 +1,6 @@ - #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. --# Generated by Autoconf 2.52.20101002. -+# Generated by Autoconf 2.52.20121002. - # - # Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 - # Free Software Foundation, Inc. -@@ -105,42 +105,6 @@ - : ${ac_max_here_lines=38} - - ac_unique_file="ncurses.c" --# Factoring default headers for most tests. --ac_includes_default="\ --#include <stdio.h> --#if HAVE_SYS_TYPES_H --# include <sys/types.h> --#endif --#if HAVE_SYS_STAT_H --# include <sys/stat.h> --#endif --#if STDC_HEADERS --# include <stdlib.h> --# include <stddef.h> --#else --# if HAVE_STDLIB_H --# include <stdlib.h> --# endif --#endif --#if HAVE_STRING_H --# if !STDC_HEADERS && HAVE_MEMORY_H --# include <memory.h> --# endif --# include <string.h> --#endif --#if HAVE_STRINGS_H --# include <strings.h> --#endif --#if HAVE_INTTYPES_H --# include <inttypes.h> --#else --# if HAVE_STDINT_H --# include <stdint.h> --# endif --#endif --#if HAVE_UNISTD_H --# include <unistd.h> --#endif" - - # Initialize some variables set by options. - ac_init_help= -@@ -170,15 +134,16 @@ - bindir='${exec_prefix}/bin' - sbindir='${exec_prefix}/sbin' - libexecdir='${exec_prefix}/libexec' --datadir='${prefix}/share' -+datarootdir='${prefix}/share' -+datadir='${datarootdir}' - sysconfdir='${prefix}/etc' - sharedstatedir='${prefix}/com' - localstatedir='${prefix}/var' - libdir='${exec_prefix}/lib' - includedir='${prefix}/include' - oldincludedir='/usr/include' --infodir='${prefix}/info' --mandir='${prefix}/man' -+infodir='${datarootdir}/info' -+mandir='${datarootdir}/man' - - # Identity of this package. - PACKAGE_NAME= -@@ -229,6 +194,13 @@ - | --da=*) - datadir=$ac_optarg ;; - -+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ -+ | --dataroo | --dataro | --datar) -+ ac_prev=datarootdir ;; -+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ -+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) -+ datarootdir=$ac_optarg ;; -+ - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. -@@ -504,7 +476,7 @@ - done - - # Be sure to have absolute paths. --for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ -+for ac_var in bindir sbindir libexecdir datarootdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir - do - eval ac_val=$`echo $ac_var` -@@ -641,15 +613,16 @@ - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] -- --datadir=DIR read-only architecture-independent data [PREFIX/share] -+ --datarootdir=DIR read-only architecture-independent data [PREFIX/share] -+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] -- --infodir=DIR info documentation [PREFIX/info] -- --mandir=DIR man documentation [PREFIX/man] -+ --infodir=DIR info documentation [DATAROOTDIR/info] -+ --mandir=DIR man documentation [DATAROOTDIR/man] - EOF - - cat <<\EOF -@@ -673,31 +646,37 @@ - - cat <<\EOF - --Optional Features: -- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) -- --enable-FEATURE[=ARG] include FEATURE [ARG=yes] -- - Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - -- --disable-echo display "compiling" commands -- --enable-warnings test: turn on gcc compiler warnings -- --with-dmalloc test: use Gray Watson's dmalloc library -- --with-dbmalloc test: use Conor Cahill's dbmalloc library -- --with-valgrind test: use valgrind -- --disable-leaks test: free permanent memory, analyze leaks -+Optional Features: -+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) -+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes] -+ -+General Options: -+ --with-pkg-config{=path} enable/disable use of pkg-config -+ --disable-echo do not display "compiling" commands -+Curses Version-dependent Options: -+ --with-ncurses-wrap-prefix naming-prefix for ncurses wrapped-variables -+ --disable-widec disable checks for wide-character functions - --with-curses-dir=DIR directory in which (n)curses is installed -- --with-5lib use SunOS sysv-libraries -- --with-ncursesw use wide ncurses-libraries (installed) -- --with-ncurses use ncurses-libraries (installed) -+ --with-ncursesw use wide ncurses-libraries -+ --with-ncurses use ncurses-libraries - --with-pdcurses compile/link with pdcurses X11 library -+ --with-curses-colr compile/link with HPUX 10.x color-curses -+ --with-curses-5lib compile/link with SunOS 5lib curses - --with-Xaw3d link with Xaw 3d library - --with-neXtaw link with neXT Athena library - --with-XawPlus link with Athena-Plus library -- --with-pkg-config{=path} enable/disable use of pkg-config - --with-x use the X Window System -- --with-ncurses-wrap-prefix naming-prefix for ncurses wrapped-variables -+Testing/development Options: -+ --enable-warnings test: turn on gcc compiler warnings -+ --with-dmalloc test: use Gray Watson's dmalloc library -+ --with-dbmalloc test: use Conor Cahill's dbmalloc library -+ --with-valgrind test: use valgrind -+ --disable-leaks test: free permanent memory, analyze leaks -+ --disable-rpath-hack don't add rpath options for additional libraries - - Some influential environment variables: - CC C compiler command -@@ -767,7 +746,7 @@ - running configure, to aid debugging if configure makes a mistake. - - It was created by $as_me, which was --generated by GNU Autoconf 2.52.20101002. Invocation command line was -+generated by GNU Autoconf 2.52.20121002. Invocation command line was - - $ $0 $@ - -@@ -891,7 +870,7 @@ - fi - for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then -- { echo "$as_me:894: loading site script $ac_site_file" >&5 -+ { echo "$as_me:873: loading site script $ac_site_file" >&5 - echo "$as_me: loading site script $ac_site_file" >&6;} - cat "$ac_site_file" >&5 - . "$ac_site_file" -@@ -902,7 +881,7 @@ - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then -- { echo "$as_me:905: loading cache $cache_file" >&5 -+ { echo "$as_me:884: loading cache $cache_file" >&5 - echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; -@@ -910,7 +889,7 @@ - esac - fi - else -- { echo "$as_me:913: creating cache $cache_file" >&5 -+ { echo "$as_me:892: creating cache $cache_file" >&5 - echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file - fi -@@ -926,21 +905,21 @@ - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) -- { echo "$as_me:929: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -+ { echo "$as_me:908: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 - echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) -- { echo "$as_me:933: error: \`$ac_var' was not set in the previous run" >&5 -+ { echo "$as_me:912: error: \`$ac_var' was not set in the previous run" >&5 - echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then -- { echo "$as_me:939: error: \`$ac_var' has changed since the previous run:" >&5 -+ { echo "$as_me:918: error: \`$ac_var' has changed since the previous run:" >&5 - echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} -- { echo "$as_me:941: former value: $ac_old_val" >&5 -+ { echo "$as_me:920: former value: $ac_old_val" >&5 - echo "$as_me: former value: $ac_old_val" >&2;} -- { echo "$as_me:943: current value: $ac_new_val" >&5 -+ { echo "$as_me:922: current value: $ac_new_val" >&5 - echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; -@@ -959,9 +938,9 @@ - fi - done - if $ac_cache_corrupted; then -- { echo "$as_me:962: error: changes in the environment can compromise the build" >&5 -+ { echo "$as_me:941: error: changes in the environment can compromise the build" >&5 - echo "$as_me: error: changes in the environment can compromise the build" >&2;} -- { { echo "$as_me:964: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -+ { { echo "$as_me:943: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 - echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -982,10 +961,10 @@ - echo "#! $SHELL" >conftest.sh - echo "exit 0" >>conftest.sh - chmod +x conftest.sh --if { (echo "$as_me:985: PATH=\".;.\"; conftest.sh") >&5 -+if { (echo "$as_me:964: PATH=\".;.\"; conftest.sh") >&5 - (PATH=".;."; conftest.sh) 2>&5 - ac_status=$? -- echo "$as_me:988: \$? = $ac_status" >&5 -+ echo "$as_me:967: \$? = $ac_status" >&5 - (exit $ac_status); }; then - ac_path_separator=';' - else -@@ -1017,7 +996,7 @@ - fi - done - if test -z "$ac_aux_dir"; then -- { { echo "$as_me:1020: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 -+ { { echo "$as_me:999: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 - echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} - { (exit 1); exit 1; }; } - fi -@@ -1027,11 +1006,11 @@ - - # Make sure we can run config.sub. - $ac_config_sub sun4 >/dev/null 2>&1 || -- { { echo "$as_me:1030: error: cannot run $ac_config_sub" >&5 -+ { { echo "$as_me:1009: error: cannot run $ac_config_sub" >&5 - echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - --echo "$as_me:1034: checking build system type" >&5 -+echo "$as_me:1013: checking build system type" >&5 - echo $ECHO_N "checking build system type... $ECHO_C" >&6 - if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1040,16 +1019,16 @@ - test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` - test -z "$ac_cv_build_alias" && -- { { echo "$as_me:1043: error: cannot guess build type; you must specify one" >&5 -+ { { echo "$as_me:1022: error: cannot guess build type; you must specify one" >&5 - echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } - ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || -- { { echo "$as_me:1047: error: $ac_config_sub $ac_cv_build_alias failed." >&5 -+ { { echo "$as_me:1026: error: $ac_config_sub $ac_cv_build_alias failed." >&5 - echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;} - { (exit 1); exit 1; }; } - - fi --echo "$as_me:1052: result: $ac_cv_build" >&5 -+echo "$as_me:1031: result: $ac_cv_build" >&5 - echo "${ECHO_T}$ac_cv_build" >&6 - build=$ac_cv_build - build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -@@ -1057,7 +1036,7 @@ - build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then -- echo "$as_me:1060: checking host system type" >&5 -+ echo "$as_me:1039: checking host system type" >&5 - echo $ECHO_N "checking host system type... $ECHO_C" >&6 - if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1066,12 +1045,12 @@ - test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias - ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || -- { { echo "$as_me:1069: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -+ { { echo "$as_me:1048: error: $ac_config_sub $ac_cv_host_alias failed" >&5 - echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } - - fi --echo "$as_me:1074: result: $ac_cv_host" >&5 -+echo "$as_me:1053: result: $ac_cv_host" >&5 - echo "${ECHO_T}$ac_cv_host" >&6 - host=$ac_cv_host - host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -@@ -1085,7 +1064,8 @@ - system_name="`(hostname) 2>/dev/null`" - fi - fi --test -n "$system_name" && cat >>confdefs.h <<EOF -+test -n "$system_name" && -+cat >>confdefs.h <<EOF - #define SYSTEM_NAME "$system_name" - EOF - -@@ -1096,13 +1076,13 @@ - fi - - test -z "$system_name" && system_name="$cf_cv_system_name" --test -n "$cf_cv_system_name" && echo "$as_me:1099: result: Configuring for $cf_cv_system_name" >&5 -+test -n "$cf_cv_system_name" && echo "$as_me:1079: result: Configuring for $cf_cv_system_name" >&5 - echo "${ECHO_T}Configuring for $cf_cv_system_name" >&6 - - if test ".$system_name" != ".$cf_cv_system_name" ; then -- echo "$as_me:1103: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5 -+ echo "$as_me:1083: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5 - echo "${ECHO_T}Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&6 -- { { echo "$as_me:1105: error: \"Please remove config.cache and try again.\"" >&5 -+ { { echo "$as_me:1085: error: \"Please remove config.cache and try again.\"" >&5 - echo "$as_me: error: \"Please remove config.cache and try again.\"" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -1120,7 +1100,7 @@ - program_transform_name=`echo $program_transform_name | sed -f conftest.sed` - rm conftest.sed - --echo "$as_me:1123: checking whether ${MAKE-make} sets \${MAKE}" >&5 -+echo "$as_me:1103: checking whether ${MAKE-make} sets \${MAKE}" >&5 - echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6 - set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'` - if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then -@@ -1140,11 +1120,11 @@ - rm -f conftest.make - fi - if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then -- echo "$as_me:1143: result: yes" >&5 -+ echo "$as_me:1123: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - SET_MAKE= - else -- echo "$as_me:1147: result: no" >&5 -+ echo "$as_me:1127: result: no" >&5 - echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" - fi -@@ -1158,7 +1138,7 @@ - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. - set dummy ${ac_tool_prefix}gcc; ac_word=$2 --echo "$as_me:1161: checking for $ac_word" >&5 -+echo "$as_me:1141: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1173,7 +1153,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_CC="${ac_tool_prefix}gcc" --echo "$as_me:1176: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1156: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1181,10 +1161,10 @@ - fi - CC=$ac_cv_prog_CC - if test -n "$CC"; then -- echo "$as_me:1184: result: $CC" >&5 -+ echo "$as_me:1164: result: $CC" >&5 - echo "${ECHO_T}$CC" >&6 - else -- echo "$as_me:1187: result: no" >&5 -+ echo "$as_me:1167: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1193,7 +1173,7 @@ - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. - set dummy gcc; ac_word=$2 --echo "$as_me:1196: checking for $ac_word" >&5 -+echo "$as_me:1176: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1208,7 +1188,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_CC="gcc" --echo "$as_me:1211: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1191: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1216,10 +1196,10 @@ - fi - ac_ct_CC=$ac_cv_prog_ac_ct_CC - if test -n "$ac_ct_CC"; then -- echo "$as_me:1219: result: $ac_ct_CC" >&5 -+ echo "$as_me:1199: result: $ac_ct_CC" >&5 - echo "${ECHO_T}$ac_ct_CC" >&6 - else -- echo "$as_me:1222: result: no" >&5 -+ echo "$as_me:1202: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1232,7 +1212,7 @@ - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. - set dummy ${ac_tool_prefix}cc; ac_word=$2 --echo "$as_me:1235: checking for $ac_word" >&5 -+echo "$as_me:1215: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1247,7 +1227,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_CC="${ac_tool_prefix}cc" --echo "$as_me:1250: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1230: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1255,10 +1235,10 @@ - fi - CC=$ac_cv_prog_CC - if test -n "$CC"; then -- echo "$as_me:1258: result: $CC" >&5 -+ echo "$as_me:1238: result: $CC" >&5 - echo "${ECHO_T}$CC" >&6 - else -- echo "$as_me:1261: result: no" >&5 -+ echo "$as_me:1241: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1267,7 +1247,7 @@ - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. - set dummy cc; ac_word=$2 --echo "$as_me:1270: checking for $ac_word" >&5 -+echo "$as_me:1250: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1282,7 +1262,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_CC="cc" --echo "$as_me:1285: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1265: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1290,10 +1270,10 @@ - fi - ac_ct_CC=$ac_cv_prog_ac_ct_CC - if test -n "$ac_ct_CC"; then -- echo "$as_me:1293: result: $ac_ct_CC" >&5 -+ echo "$as_me:1273: result: $ac_ct_CC" >&5 - echo "${ECHO_T}$ac_ct_CC" >&6 - else -- echo "$as_me:1296: result: no" >&5 -+ echo "$as_me:1276: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1306,7 +1286,7 @@ - if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. - set dummy cc; ac_word=$2 --echo "$as_me:1309: checking for $ac_word" >&5 -+echo "$as_me:1289: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1326,7 +1306,7 @@ - continue - fi - ac_cv_prog_CC="cc" --echo "$as_me:1329: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1309: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1348,10 +1328,10 @@ - fi - CC=$ac_cv_prog_CC - if test -n "$CC"; then -- echo "$as_me:1351: result: $CC" >&5 -+ echo "$as_me:1331: result: $CC" >&5 - echo "${ECHO_T}$CC" >&6 - else -- echo "$as_me:1354: result: no" >&5 -+ echo "$as_me:1334: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1362,7 +1342,7 @@ - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. - set dummy $ac_tool_prefix$ac_prog; ac_word=$2 --echo "$as_me:1365: checking for $ac_word" >&5 -+echo "$as_me:1345: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1377,7 +1357,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" --echo "$as_me:1380: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1360: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1385,10 +1365,10 @@ - fi - CC=$ac_cv_prog_CC - if test -n "$CC"; then -- echo "$as_me:1388: result: $CC" >&5 -+ echo "$as_me:1368: result: $CC" >&5 - echo "${ECHO_T}$CC" >&6 - else -- echo "$as_me:1391: result: no" >&5 -+ echo "$as_me:1371: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1401,7 +1381,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:1404: checking for $ac_word" >&5 -+echo "$as_me:1384: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -1416,7 +1396,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ac_ct_CC="$ac_prog" --echo "$as_me:1419: found $ac_dir/$ac_word" >&5 -+echo "$as_me:1399: found $ac_dir/$ac_word" >&5 - break - done - -@@ -1424,10 +1404,10 @@ - fi - ac_ct_CC=$ac_cv_prog_ac_ct_CC - if test -n "$ac_ct_CC"; then -- echo "$as_me:1427: result: $ac_ct_CC" >&5 -+ echo "$as_me:1407: result: $ac_ct_CC" >&5 - echo "${ECHO_T}$ac_ct_CC" >&6 - else -- echo "$as_me:1430: result: no" >&5 -+ echo "$as_me:1410: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -1439,32 +1419,32 @@ - - fi - --test -z "$CC" && { { echo "$as_me:1442: error: no acceptable cc found in \$PATH" >&5 -+test -z "$CC" && { { echo "$as_me:1422: error: no acceptable cc found in \$PATH" >&5 - echo "$as_me: error: no acceptable cc found in \$PATH" >&2;} - { (exit 1); exit 1; }; } - - # Provide some information about the compiler. --echo "$as_me:1447:" \ -+echo "$as_me:1427:" \ - "checking for C compiler version" >&5 - ac_compiler=`set X $ac_compile; echo $2` --{ (eval echo "$as_me:1450: \"$ac_compiler --version </dev/null >&5\"") >&5 -+{ (eval echo "$as_me:1430: \"$ac_compiler --version </dev/null >&5\"") >&5 - (eval $ac_compiler --version </dev/null >&5) 2>&5 - ac_status=$? -- echo "$as_me:1453: \$? = $ac_status" >&5 -+ echo "$as_me:1433: \$? = $ac_status" >&5 - (exit $ac_status); } --{ (eval echo "$as_me:1455: \"$ac_compiler -v </dev/null >&5\"") >&5 -+{ (eval echo "$as_me:1435: \"$ac_compiler -v </dev/null >&5\"") >&5 - (eval $ac_compiler -v </dev/null >&5) 2>&5 - ac_status=$? -- echo "$as_me:1458: \$? = $ac_status" >&5 -+ echo "$as_me:1438: \$? = $ac_status" >&5 - (exit $ac_status); } --{ (eval echo "$as_me:1460: \"$ac_compiler -V </dev/null >&5\"") >&5 -+{ (eval echo "$as_me:1440: \"$ac_compiler -V </dev/null >&5\"") >&5 - (eval $ac_compiler -V </dev/null >&5) 2>&5 - ac_status=$? -- echo "$as_me:1463: \$? = $ac_status" >&5 -+ echo "$as_me:1443: \$? = $ac_status" >&5 - (exit $ac_status); } - - cat >conftest.$ac_ext <<_ACEOF --#line 1467 "configure" -+#line 1447 "configure" - #include "confdefs.h" - - int -@@ -1480,13 +1460,13 @@ - # Try to create an executable without -o first, disregard a.out. - # It will help us diagnose broken compilers, and finding out an intuition - # of exeext. --echo "$as_me:1483: checking for C compiler default output" >&5 -+echo "$as_me:1463: checking for C compiler default output" >&5 - echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6 - ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` --if { (eval echo "$as_me:1486: \"$ac_link_default\"") >&5 -+if { (eval echo "$as_me:1466: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 - ac_status=$? -- echo "$as_me:1489: \$? = $ac_status" >&5 -+ echo "$as_me:1469: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is - # not robust to junk in `.', hence go to wildcards (a.*) only as a last -@@ -1509,34 +1489,34 @@ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --{ { echo "$as_me:1512: error: C compiler cannot create executables" >&5 -+{ { echo "$as_me:1492: error: C compiler cannot create executables" >&5 - echo "$as_me: error: C compiler cannot create executables" >&2;} - { (exit 77); exit 77; }; } - fi - - ac_exeext=$ac_cv_exeext --echo "$as_me:1518: result: $ac_file" >&5 -+echo "$as_me:1498: result: $ac_file" >&5 - echo "${ECHO_T}$ac_file" >&6 - - # Check the compiler produces executables we can run. If not, either - # the compiler is broken, or we cross compile. --echo "$as_me:1523: checking whether the C compiler works" >&5 -+echo "$as_me:1503: checking whether the C compiler works" >&5 - echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 - # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 - # If not cross compiling, check that we can run a simple program. - if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' -- { (eval echo "$as_me:1529: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1509: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1532: \$? = $ac_status" >&5 -+ echo "$as_me:1512: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else -- { { echo "$as_me:1539: error: cannot run C compiled programs. -+ { { echo "$as_me:1519: error: cannot run C compiled programs. - If you meant to cross compile, use \`--host'." >&5 - echo "$as_me: error: cannot run C compiled programs. - If you meant to cross compile, use \`--host'." >&2;} -@@ -1544,24 +1524,24 @@ - fi - fi - fi --echo "$as_me:1547: result: yes" >&5 -+echo "$as_me:1527: result: yes" >&5 - echo "${ECHO_T}yes" >&6 - - rm -f a.out a.exe conftest$ac_cv_exeext - ac_clean_files=$ac_clean_files_save - # Check the compiler produces executables we can run. If not, either - # the compiler is broken, or we cross compile. --echo "$as_me:1554: checking whether we are cross compiling" >&5 -+echo "$as_me:1534: checking whether we are cross compiling" >&5 - echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 --echo "$as_me:1556: result: $cross_compiling" >&5 -+echo "$as_me:1536: result: $cross_compiling" >&5 - echo "${ECHO_T}$cross_compiling" >&6 - --echo "$as_me:1559: checking for executable suffix" >&5 -+echo "$as_me:1539: checking for executable suffix" >&5 - echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6 --if { (eval echo "$as_me:1561: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:1541: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:1564: \$? = $ac_status" >&5 -+ echo "$as_me:1544: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) - # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -@@ -1577,25 +1557,25 @@ - esac - done - else -- { { echo "$as_me:1580: error: cannot compute EXEEXT: cannot compile and link" >&5 -+ { { echo "$as_me:1560: error: cannot compute EXEEXT: cannot compile and link" >&5 - echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;} - { (exit 1); exit 1; }; } - fi - - rm -f conftest$ac_cv_exeext --echo "$as_me:1586: result: $ac_cv_exeext" >&5 -+echo "$as_me:1566: result: $ac_cv_exeext" >&5 - echo "${ECHO_T}$ac_cv_exeext" >&6 - - rm -f conftest.$ac_ext - EXEEXT=$ac_cv_exeext - ac_exeext=$EXEEXT --echo "$as_me:1592: checking for object suffix" >&5 -+echo "$as_me:1572: checking for object suffix" >&5 - echo $ECHO_N "checking for object suffix... $ECHO_C" >&6 - if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 1598 "configure" -+#line 1578 "configure" - #include "confdefs.h" - - int -@@ -1607,10 +1587,10 @@ - } - _ACEOF - rm -f conftest.o conftest.obj --if { (eval echo "$as_me:1610: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1590: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1613: \$? = $ac_status" >&5 -+ echo "$as_me:1593: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do - case $ac_file in -@@ -1622,24 +1602,24 @@ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --{ { echo "$as_me:1625: error: cannot compute OBJEXT: cannot compile" >&5 -+{ { echo "$as_me:1605: error: cannot compute OBJEXT: cannot compile" >&5 - echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;} - { (exit 1); exit 1; }; } - fi - - rm -f conftest.$ac_cv_objext conftest.$ac_ext - fi --echo "$as_me:1632: result: $ac_cv_objext" >&5 -+echo "$as_me:1612: result: $ac_cv_objext" >&5 - echo "${ECHO_T}$ac_cv_objext" >&6 - OBJEXT=$ac_cv_objext - ac_objext=$OBJEXT --echo "$as_me:1636: checking whether we are using the GNU C compiler" >&5 -+echo "$as_me:1616: checking whether we are using the GNU C compiler" >&5 - echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 - if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 1642 "configure" -+#line 1622 "configure" - #include "confdefs.h" - - int -@@ -1654,16 +1634,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1657: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1637: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1660: \$? = $ac_status" >&5 -+ echo "$as_me:1640: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1663: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1643: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1666: \$? = $ac_status" >&5 -+ echo "$as_me:1646: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_compiler_gnu=yes - else -@@ -1675,19 +1655,19 @@ - ac_cv_c_compiler_gnu=$ac_compiler_gnu - - fi --echo "$as_me:1678: result: $ac_cv_c_compiler_gnu" >&5 -+echo "$as_me:1658: result: $ac_cv_c_compiler_gnu" >&5 - echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 - GCC=`test $ac_compiler_gnu = yes && echo yes` - ac_test_CFLAGS=${CFLAGS+set} - ac_save_CFLAGS=$CFLAGS - CFLAGS="-g" --echo "$as_me:1684: checking whether $CC accepts -g" >&5 -+echo "$as_me:1664: checking whether $CC accepts -g" >&5 - echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 - if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 1690 "configure" -+#line 1670 "configure" - #include "confdefs.h" - - int -@@ -1699,16 +1679,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1702: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1682: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1705: \$? = $ac_status" >&5 -+ echo "$as_me:1685: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1708: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1688: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1711: \$? = $ac_status" >&5 -+ echo "$as_me:1691: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_g=yes - else -@@ -1718,7 +1698,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:1721: result: $ac_cv_prog_cc_g" >&5 -+echo "$as_me:1701: result: $ac_cv_prog_cc_g" >&5 - echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 - if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -@@ -1745,16 +1725,16 @@ - #endif - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1748: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1728: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1751: \$? = $ac_status" >&5 -+ echo "$as_me:1731: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1754: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1734: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1757: \$? = $ac_status" >&5 -+ echo "$as_me:1737: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - ''\ -@@ -1766,7 +1746,7 @@ - 'void exit (int);' - do - cat >conftest.$ac_ext <<_ACEOF --#line 1769 "configure" -+#line 1749 "configure" - #include "confdefs.h" - #include <stdlib.h> - $ac_declaration -@@ -1779,16 +1759,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1782: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1762: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1785: \$? = $ac_status" >&5 -+ echo "$as_me:1765: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1788: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1768: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1791: \$? = $ac_status" >&5 -+ echo "$as_me:1771: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -1798,7 +1778,7 @@ - fi - rm -f conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF --#line 1801 "configure" -+#line 1781 "configure" - #include "confdefs.h" - $ac_declaration - int -@@ -1810,16 +1790,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:1813: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:1793: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:1816: \$? = $ac_status" >&5 -+ echo "$as_me:1796: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:1819: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:1799: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:1822: \$? = $ac_status" >&5 -+ echo "$as_me:1802: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break - else -@@ -1847,13 +1827,214 @@ - ac_compiler_gnu=$ac_cv_c_compiler_gnu - ac_main_return=return - -+GCC_VERSION=none -+if test "$GCC" = yes ; then -+ echo "$as_me:1832: checking version of $CC" >&5 -+echo $ECHO_N "checking version of $CC... $ECHO_C" >&6 -+ GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC[^)]*) //' -e 's/^.*(Debian[^)]*) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`" -+ test -z "$GCC_VERSION" && GCC_VERSION=unknown -+ echo "$as_me:1836: result: $GCC_VERSION" >&5 -+echo "${ECHO_T}$GCC_VERSION" >&6 -+fi -+ -+echo "$as_me:1840: checking for $CC option to accept ANSI C" >&5 -+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -+if test "${ac_cv_prog_cc_stdc+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_cv_prog_cc_stdc=no -+ac_save_CC=$CC -+cat >conftest.$ac_ext <<_ACEOF -+#line 1848 "configure" -+#include "confdefs.h" -+#include <stdarg.h> -+#include <stdio.h> -+#include <sys/types.h> -+#include <sys/stat.h> -+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -+struct buf { int x; }; -+FILE * (*rcsopen) (struct buf *, struct stat *, int); -+static char *e (p, i) -+ char **p; -+ int i; -+{ -+ return p[i]; -+} -+static char *f (char * (*g) (char **, int), char **p, ...) -+{ -+ char *s; -+ va_list v; -+ va_start (v,p); -+ s = g (p, va_arg (v,int)); -+ va_end (v); -+ return s; -+} -+int test (int i, double x); -+struct s1 {int (*f) (int a);}; -+struct s2 {int (*f) (double a);}; -+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -+int argc; -+char **argv; -+int -+main () -+{ -+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; -+ ; -+ return 0; -+} -+_ACEOF -+# Don't try gcc -ansi; that turns off useful extensions and -+# breaks some systems' header files. -+# AIX -qlanglvl=ansi -+# Ultrix and OSF/1 -std1 -+# HP-UX 10.20 and later -Ae -+# HP-UX older versions -Aa -D_HPUX_SOURCE -+# SVR4 -Xc -D__EXTENSIONS__ -+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -+do -+ CC="$ac_save_CC $ac_arg" -+ rm -f conftest.$ac_objext -+if { (eval echo "$as_me:1897: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:1900: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:1903: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:1906: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_prog_cc_stdc=$ac_arg -+break -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+fi -+rm -f conftest.$ac_objext -+done -+rm -f conftest.$ac_ext conftest.$ac_objext -+CC=$ac_save_CC -+ -+fi -+ -+case "x$ac_cv_prog_cc_stdc" in -+ x|xno) -+ echo "$as_me:1923: result: none needed" >&5 -+echo "${ECHO_T}none needed" >&6 ;; -+ *) -+ echo "$as_me:1926: result: $ac_cv_prog_cc_stdc" >&5 -+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 -+ CC="$CC $ac_cv_prog_cc_stdc" ;; -+esac -+ -+# This should have been defined by AC_PROG_CC -+: ${CC:=cc} -+ -+echo "$as_me:1934: checking \$CC variable" >&5 -+echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6 -+case "$CC" in #(vi -+*[\ \ ]-[IUD]*) -+ echo "$as_me:1938: result: broken" >&5 -+echo "${ECHO_T}broken" >&6 -+ { echo "$as_me:1940: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5 -+echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;} -+ # humor him... -+ cf_flags=`echo "$CC" | sed -e 's/^[^ ]*[ ]//'` -+ CC=`echo "$CC" | sed -e 's/[ ].*//'` -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_flags -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+ ;; -+*) -+ echo "$as_me:2026: result: ok" >&5 -+echo "${ECHO_T}ok" >&6 -+ ;; -+esac -+ - ac_ext=c - ac_cpp='$CPP $CPPFLAGS' - ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' - ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' - ac_compiler_gnu=$ac_cv_c_compiler_gnu - ac_main_return=return --echo "$as_me:1856: checking how to run the C preprocessor" >&5 -+echo "$as_me:2037: checking how to run the C preprocessor" >&5 - echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 - # On Suns, sometimes $CPP names a directory. - if test -n "$CPP" && test -d "$CPP"; then -@@ -1874,18 +2055,18 @@ - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF --#line 1877 "configure" -+#line 2058 "configure" - #include "confdefs.h" - #include <assert.h> - Syntax error - _ACEOF --if { (eval echo "$as_me:1882: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:2063: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:1888: \$? = $ac_status" >&5 -+ echo "$as_me:2069: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -1908,17 +2089,17 @@ - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF --#line 1911 "configure" -+#line 2092 "configure" - #include "confdefs.h" - #include <ac_nonexistent.h> - _ACEOF --if { (eval echo "$as_me:1915: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:2096: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:1921: \$? = $ac_status" >&5 -+ echo "$as_me:2102: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -1955,7 +2136,7 @@ - else - ac_cv_prog_CPP=$CPP - fi --echo "$as_me:1958: result: $CPP" >&5 -+echo "$as_me:2139: result: $CPP" >&5 - echo "${ECHO_T}$CPP" >&6 - ac_preproc_ok=false - for ac_c_preproc_warn_flag in '' yes -@@ -1965,18 +2146,18 @@ - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF --#line 1968 "configure" -+#line 2149 "configure" - #include "confdefs.h" - #include <assert.h> - Syntax error - _ACEOF --if { (eval echo "$as_me:1973: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:2154: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:1979: \$? = $ac_status" >&5 -+ echo "$as_me:2160: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -1999,17 +2180,17 @@ - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF --#line 2002 "configure" -+#line 2183 "configure" - #include "confdefs.h" - #include <ac_nonexistent.h> - _ACEOF --if { (eval echo "$as_me:2006: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:2187: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:2012: \$? = $ac_status" >&5 -+ echo "$as_me:2193: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -2037,7 +2218,7 @@ - if $ac_preproc_ok; then - : - else -- { { echo "$as_me:2040: error: C preprocessor \"$CPP\" fails sanity check" >&5 -+ { { echo "$as_me:2221: error: C preprocessor \"$CPP\" fails sanity check" >&5 - echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;} - { (exit 1); exit 1; }; } - fi -@@ -2053,7 +2234,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:2056: checking for $ac_word" >&5 -+echo "$as_me:2237: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_AWK+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2068,7 +2249,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_AWK="$ac_prog" --echo "$as_me:2071: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2252: found $ac_dir/$ac_word" >&5 - break - done - -@@ -2076,10 +2257,10 @@ - fi - AWK=$ac_cv_prog_AWK - if test -n "$AWK"; then -- echo "$as_me:2079: result: $AWK" >&5 -+ echo "$as_me:2260: result: $AWK" >&5 - echo "${ECHO_T}$AWK" >&6 - else -- echo "$as_me:2082: result: no" >&5 -+ echo "$as_me:2263: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -2098,7 +2279,7 @@ - # AFS /usr/afsws/bin/install, which mishandles nonexistent args - # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" - # ./install, which can be erroneously created by make from ./install.sh. --echo "$as_me:2101: checking for a BSD compatible install" >&5 -+echo "$as_me:2282: checking for a BSD compatible install" >&5 - echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6 - if test -z "$INSTALL"; then - if test "${ac_cv_path_install+set}" = set; then -@@ -2147,7 +2328,7 @@ - INSTALL=$ac_install_sh - fi - fi --echo "$as_me:2150: result: $INSTALL" >&5 -+echo "$as_me:2331: result: $INSTALL" >&5 - echo "${ECHO_T}$INSTALL" >&6 - - # Use test -z because SunOS4 sh mishandles braces in ${var-val}. -@@ -2172,7 +2353,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:2175: checking for $ac_word" >&5 -+echo "$as_me:2356: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_LINT+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2187,7 +2368,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_LINT="$ac_prog" --echo "$as_me:2190: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2371: found $ac_dir/$ac_word" >&5 - break - done - -@@ -2195,17 +2376,17 @@ - fi - LINT=$ac_cv_prog_LINT - if test -n "$LINT"; then -- echo "$as_me:2198: result: $LINT" >&5 -+ echo "$as_me:2379: result: $LINT" >&5 - echo "${ECHO_T}$LINT" >&6 - else -- echo "$as_me:2201: result: no" >&5 -+ echo "$as_me:2382: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - - test -n "$LINT" && break - done - --echo "$as_me:2208: checking if filesystem supports mixed-case filenames" >&5 -+echo "$as_me:2389: checking if filesystem supports mixed-case filenames" >&5 - echo $ECHO_N "checking if filesystem supports mixed-case filenames... $ECHO_C" >&6 - if test "${cf_cv_mixedcase+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2213,7 +2394,7 @@ - - if test "$cross_compiling" = yes ; then - case $target_alias in #(vi -- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi -+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi - cf_cv_mixedcase=no - ;; - *) -@@ -2232,9 +2413,10 @@ - fi - - fi --echo "$as_me:2235: result: $cf_cv_mixedcase" >&5 -+echo "$as_me:2416: result: $cf_cv_mixedcase" >&5 - echo "${ECHO_T}$cf_cv_mixedcase" >&6 --test "$cf_cv_mixedcase" = yes && cat >>confdefs.h <<\EOF -+test "$cf_cv_mixedcase" = yes && -+cat >>confdefs.h <<\EOF - #define MIXEDCASE_FILENAMES 1 - EOF - -@@ -2242,7 +2424,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:2245: checking for $ac_word" >&5 -+echo "$as_me:2427: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_CTAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2257,7 +2439,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_CTAGS="$ac_prog" --echo "$as_me:2260: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2442: found $ac_dir/$ac_word" >&5 - break - done - -@@ -2265,10 +2447,10 @@ - fi - CTAGS=$ac_cv_prog_CTAGS - if test -n "$CTAGS"; then -- echo "$as_me:2268: result: $CTAGS" >&5 -+ echo "$as_me:2450: result: $CTAGS" >&5 - echo "${ECHO_T}$CTAGS" >&6 - else -- echo "$as_me:2271: result: no" >&5 -+ echo "$as_me:2453: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -2279,7 +2461,7 @@ - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 --echo "$as_me:2282: checking for $ac_word" >&5 -+echo "$as_me:2464: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_ETAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2294,7 +2476,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_ETAGS="$ac_prog" --echo "$as_me:2297: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2479: found $ac_dir/$ac_word" >&5 - break - done - -@@ -2302,10 +2484,10 @@ - fi - ETAGS=$ac_cv_prog_ETAGS - if test -n "$ETAGS"; then -- echo "$as_me:2305: result: $ETAGS" >&5 -+ echo "$as_me:2487: result: $ETAGS" >&5 - echo "${ECHO_T}$ETAGS" >&6 - else -- echo "$as_me:2308: result: no" >&5 -+ echo "$as_me:2490: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -2314,7 +2496,7 @@ - - # Extract the first word of "${CTAGS:-ctags}", so it can be a program name with args. - set dummy ${CTAGS:-ctags}; ac_word=$2 --echo "$as_me:2317: checking for $ac_word" >&5 -+echo "$as_me:2499: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_MAKE_LOWER_TAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2329,7 +2511,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_MAKE_LOWER_TAGS="yes" --echo "$as_me:2332: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2514: found $ac_dir/$ac_word" >&5 - break - done - -@@ -2338,17 +2520,17 @@ - fi - MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS - if test -n "$MAKE_LOWER_TAGS"; then -- echo "$as_me:2341: result: $MAKE_LOWER_TAGS" >&5 -+ echo "$as_me:2523: result: $MAKE_LOWER_TAGS" >&5 - echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6 - else -- echo "$as_me:2344: result: no" >&5 -+ echo "$as_me:2526: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - - if test "$cf_cv_mixedcase" = yes ; then - # Extract the first word of "${ETAGS:-etags}", so it can be a program name with args. - set dummy ${ETAGS:-etags}; ac_word=$2 --echo "$as_me:2351: checking for $ac_word" >&5 -+echo "$as_me:2533: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 - if test "${ac_cv_prog_MAKE_UPPER_TAGS+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -2363,7 +2545,7 @@ - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue - ac_cv_prog_MAKE_UPPER_TAGS="yes" --echo "$as_me:2366: found $ac_dir/$ac_word" >&5 -+echo "$as_me:2548: found $ac_dir/$ac_word" >&5 - break - done - -@@ -2372,10 +2554,10 @@ - fi - MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS - if test -n "$MAKE_UPPER_TAGS"; then -- echo "$as_me:2375: result: $MAKE_UPPER_TAGS" >&5 -+ echo "$as_me:2557: result: $MAKE_UPPER_TAGS" >&5 - echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6 - else -- echo "$as_me:2378: result: no" >&5 -+ echo "$as_me:2560: result: no" >&5 - echo "${ECHO_T}no" >&6 - fi - -@@ -2395,14 +2577,14 @@ - MAKE_LOWER_TAGS="#" - fi - --echo "$as_me:2398: checking if -lm needed for math functions" >&5 -+echo "$as_me:2580: checking if -lm needed for math functions" >&5 - echo $ECHO_N "checking if -lm needed for math functions... $ECHO_C" >&6 - if test "${cf_cv_need_libm+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 2405 "configure" -+#line 2587 "configure" - #include "confdefs.h" - - #include <stdio.h> -@@ -2411,22 +2593,22 @@ - int - main () - { --double x = rand(); printf("result = %g\n", sin(x)) -+double x = rand(); printf("result = %g\n", pow(sin(x),x)) - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:2420: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:2602: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:2423: \$? = $ac_status" >&5 -+ echo "$as_me:2605: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:2426: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:2608: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2429: \$? = $ac_status" >&5 -+ echo "$as_me:2611: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_need_libm=no - else -@@ -2436,13 +2618,15 @@ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:2439: result: $cf_cv_need_libm" >&5 -+echo "$as_me:2621: result: $cf_cv_need_libm" >&5 - echo "${ECHO_T}$cf_cv_need_libm" >&6 - if test "$cf_cv_need_libm" = yes - then - MATH_LIB=-lm - fi - -+top_builddir=`pwd` -+ - CC_G_OPT="-g" - CC_SHARED_OPTS=unknown - CPPFLAGS="$CPPFLAGS" -@@ -2464,427 +2648,305 @@ - TEST_ARGS="" - TEST_DEPS="" - TEST_LIBS="" --TINFO_ARGS='$(LIBS_CURSES)' -+TINFO_LDFLAGS='' -+TINFO_LIBS='$(LIBS_CURSES)' - cf_cv_abi_version="" - cf_cv_rel_version="" -+includesubdir="" - - cf_cv_screen=curses - cf_cv_libtype= - --echo "$as_me:2474: checking for ${CC:-cc} option to accept ANSI C" >&5 --echo $ECHO_N "checking for ${CC:-cc} option to accept ANSI C... $ECHO_C" >&6 --if test "${cf_cv_ansi_cc+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+if test "$GCC" = yes -+then -+cat > conftest.i <<EOF -+#ifndef GCC_PRINTF -+#define GCC_PRINTF 0 -+#endif -+#ifndef GCC_SCANF -+#define GCC_SCANF 0 -+#endif -+#ifndef GCC_NORETURN -+#define GCC_NORETURN /* nothing */ -+#endif -+#ifndef GCC_UNUSED -+#define GCC_UNUSED /* nothing */ -+#endif -+EOF -+if test "$GCC" = yes -+then -+ { echo "$as_me:2678: checking for $CC __attribute__ directives..." >&5 -+echo "$as_me: checking for $CC __attribute__ directives..." >&6;} -+cat > conftest.$ac_ext <<EOF -+#line 2681 "${as_me:-configure}" -+#include "confdefs.h" -+#include "conftest.h" -+#include "conftest.i" -+#if GCC_PRINTF -+#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) -+#else -+#define GCC_PRINTFLIKE(fmt,var) /*nothing*/ -+#endif -+#if GCC_SCANF -+#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var))) -+#else -+#define GCC_SCANFLIKE(fmt,var) /*nothing*/ -+#endif -+extern void wow(char *,...) GCC_SCANFLIKE(1,2); -+extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; -+extern void foo(void) GCC_NORETURN; -+int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { return 0; } -+EOF -+ cf_printf_attribute=no -+ cf_scanf_attribute=no -+ for cf_attribute in scanf printf unused noreturn -+ do - --cf_cv_ansi_cc=no --cf_save_CFLAGS="$CFLAGS" --cf_save_CPPFLAGS="$CPPFLAGS" --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX -Aa -D_HPUX_SOURCE --# SVR4 -Xc --# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes) --for cf_arg in "-DCC_HAS_PROTOS" \ -- "" \ -- -qlanglvl=ansi \ -- -std1 \ -- -Ae \ -- "-Aa -D_HPUX_SOURCE" \ -- -Xc --do -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in $cf_arg --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -+ cf_directive="__attribute__(($cf_attribute))" -+ echo "checking for $CC $cf_directive" 1>&5 - -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -+ case $cf_attribute in #(vi -+ printf) #(vi -+ cf_printf_attribute=yes -+ cat >conftest.h <<EOF -+#define GCC_$cf_ATTRIBUTE 1 -+EOF - ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -+ scanf) #(vi -+ cf_scanf_attribute=yes -+ cat >conftest.h <<EOF -+#define GCC_$cf_ATTRIBUTE 1 -+EOF - ;; - *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ cat >conftest.h <<EOF -+#define GCC_$cf_ATTRIBUTE $cf_directive -+EOF -+ ;; -+ esac - --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ if { (eval echo "$as_me:2730: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:2733: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ test -n "$verbose" && echo "$as_me:2735: result: ... $cf_attribute" >&5 -+echo "${ECHO_T}... $cf_attribute" >&6 -+ cat conftest.h >>confdefs.h -+ case $cf_attribute in #(vi -+ noreturn) #(vi -+ -+cat >>confdefs.h <<EOF -+#define GCC_NORETURN $cf_directive -+EOF - - ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ printf) #(vi -+ cf_value='/* nothing */' -+ if test "$cf_printf_attribute" != no ; then -+ cf_value='__attribute__((format(printf,fmt,var)))' - -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+cat >>confdefs.h <<\EOF -+#define GCC_PRINTF 1 -+EOF - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -+ fi - --if test -n "$cf_new_cflags" ; then -+cat >>confdefs.h <<EOF -+#define GCC_PRINTFLIKE(fmt,var) $cf_value -+EOF - -- CFLAGS="$CFLAGS $cf_new_cflags" --fi -+ ;; -+ scanf) #(vi -+ cf_value='/* nothing */' -+ if test "$cf_scanf_attribute" != no ; then -+ cf_value='__attribute__((format(scanf,fmt,var)))' - --if test -n "$cf_new_cppflags" ; then -+cat >>confdefs.h <<\EOF -+#define GCC_SCANF 1 -+EOF - -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" --fi -+ fi - --if test -n "$cf_new_extra_cppflags" ; then -+cat >>confdefs.h <<EOF -+#define GCC_SCANFLIKE(fmt,var) $cf_value -+EOF - -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+ ;; -+ unused) #(vi -+ -+cat >>confdefs.h <<EOF -+#define GCC_UNUSED $cf_directive -+EOF -+ -+ ;; -+ esac -+ fi -+ done -+else -+ fgrep define conftest.i >>confdefs.h -+fi -+rm -rf conftest* - fi - -- cat >conftest.$ac_ext <<_ACEOF --#line 2578 "configure" -+cf_XOPEN_SOURCE=500 -+cf_POSIX_C_SOURCE=199506L -+cf_xopen_source= -+ -+case $host_os in #(vi -+aix[4-7]*) #(vi -+ cf_xopen_source="-D_ALL_SOURCE" -+ ;; -+cygwin|msys) #(vi -+ cf_XOPEN_SOURCE=600 -+ ;; -+darwin[0-8].*) #(vi -+ cf_xopen_source="-D_APPLE_C_SOURCE" -+ ;; -+darwin*) #(vi -+ cf_xopen_source="-D_DARWIN_C_SOURCE" -+ cf_XOPEN_SOURCE= -+ ;; -+freebsd*|dragonfly*) #(vi -+ # 5.x headers associate -+ # _XOPEN_SOURCE=600 with _POSIX_C_SOURCE=200112L -+ # _XOPEN_SOURCE=500 with _POSIX_C_SOURCE=199506L -+ cf_POSIX_C_SOURCE=200112L -+ cf_XOPEN_SOURCE=600 -+ cf_xopen_source="-D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -+ ;; -+hpux11*) #(vi -+ cf_xopen_source="-D_HPUX_SOURCE -D_XOPEN_SOURCE=500" -+ ;; -+hpux*) #(vi -+ cf_xopen_source="-D_HPUX_SOURCE" -+ ;; -+irix[56].*) #(vi -+ cf_xopen_source="-D_SGI_SOURCE" -+ cf_XOPEN_SOURCE= -+ ;; -+linux*|gnu*|mint*|k*bsd*-gnu) #(vi -+ -+echo "$as_me:2832: checking if we must define _GNU_SOURCE" >&5 -+echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_gnu_source+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+cat >conftest.$ac_ext <<_ACEOF -+#line 2839 "configure" - #include "confdefs.h" -+#include <sys/types.h> -+int -+main () -+{ - --#ifndef CC_HAS_PROTOS --#if !defined(__STDC__) || (__STDC__ != 1) --choke me --#endif -+#ifndef _XOPEN_SOURCE -+make an error - #endif -- -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:2854: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:2857: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:2860: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:2863: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_gnu_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 2872 "configure" -+#include "confdefs.h" -+#include <sys/types.h> - int - main () - { - -- int test (int i, double x); -- struct s1 {int (*f) (int a);}; -- struct s2 {int (*f) (double a);}; -+#ifdef _XOPEN_SOURCE -+make an error -+#endif - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:2599: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:2887: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:2602: \$? = $ac_status" >&5 -+ echo "$as_me:2890: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2605: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:2893: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2608: \$? = $ac_status" >&5 -+ echo "$as_me:2896: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ansi_cc="$cf_arg"; break -+ cf_cv_gnu_source=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_cv_gnu_source=yes - fi - rm -f conftest.$ac_objext conftest.$ac_ext --done --CFLAGS="$cf_save_CFLAGS" --CPPFLAGS="$cf_save_CPPFLAGS" -+ CPPFLAGS="$cf_save" - - fi --echo "$as_me:2621: result: $cf_cv_ansi_cc" >&5 --echo "${ECHO_T}$cf_cv_ansi_cc" >&6 -+rm -f conftest.$ac_objext conftest.$ac_ext - --if test "$cf_cv_ansi_cc" != "no"; then --if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then -+fi -+echo "$as_me:2911: result: $cf_cv_gnu_source" >&5 -+echo "${ECHO_T}$cf_cv_gnu_source" >&6 -+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" - --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -+ ;; -+mirbsd*) #(vi -+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types -+ cf_XOPEN_SOURCE= - --for cf_add_cflags in $cf_cv_ansi_cc --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -+cf_save_CFLAGS="$CFLAGS" -+cf_save_CPPFLAGS="$CPPFLAGS" - -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+cf_trim_CFLAGS=`echo "$cf_save_CFLAGS" | \ -+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` - --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \ -+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` - -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -- --if test -n "$cf_new_cflags" ; then -- -- CFLAGS="$CFLAGS $cf_new_cflags" --fi -- --if test -n "$cf_new_cppflags" ; then -- -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" --fi -- --if test -n "$cf_new_extra_cppflags" ; then -- -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" --fi -- --else -- cat >>confdefs.h <<\EOF --#define CC_HAS_PROTOS 1 --EOF -- --fi --fi -- --if test "$cf_cv_ansi_cc" = "no"; then -- { { echo "$as_me:2714: error: Your compiler does not appear to recognize prototypes. --You have the following choices: -- a. adjust your compiler options -- b. get an up-to-date compiler -- c. use a wrapper such as unproto" >&5 --echo "$as_me: error: Your compiler does not appear to recognize prototypes. --You have the following choices: -- a. adjust your compiler options -- b. get an up-to-date compiler -- c. use a wrapper such as unproto" >&2;} -- { (exit 1); exit 1; }; } --fi -- --if test "$GCC" = yes --then --cat > conftest.i <<EOF --#ifndef GCC_PRINTF --#define GCC_PRINTF 0 --#endif --#ifndef GCC_SCANF --#define GCC_SCANF 0 --#endif --#ifndef GCC_NORETURN --#define GCC_NORETURN /* nothing */ --#endif --#ifndef GCC_UNUSED --#define GCC_UNUSED /* nothing */ --#endif --EOF --if test "$GCC" = yes --then -- { echo "$as_me:2745: checking for $CC __attribute__ directives..." >&5 --echo "$as_me: checking for $CC __attribute__ directives..." >&6;} --cat > conftest.$ac_ext <<EOF --#line 2748 "${as_me:-configure}" --#include "confdefs.h" --#include "conftest.h" --#include "conftest.i" --#if GCC_PRINTF --#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) --#else --#define GCC_PRINTFLIKE(fmt,var) /*nothing*/ --#endif --#if GCC_SCANF --#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var))) --#else --#define GCC_SCANFLIKE(fmt,var) /*nothing*/ --#endif --extern void wow(char *,...) GCC_SCANFLIKE(1,2); --extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; --extern void foo(void) GCC_NORETURN; --int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { return 0; } --EOF -- cf_printf_attribute=no -- cf_scanf_attribute=no -- for cf_attribute in scanf printf unused noreturn -- do -- --cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -- -- cf_directive="__attribute__(($cf_attribute))" -- echo "checking for $CC $cf_directive" 1>&5 -- -- case $cf_attribute in #(vi -- printf) #(vi -- cf_printf_attribute=yes -- cat >conftest.h <<EOF --#define GCC_$cf_ATTRIBUTE 1 --EOF -- ;; -- scanf) #(vi -- cf_scanf_attribute=yes -- cat >conftest.h <<EOF --#define GCC_$cf_ATTRIBUTE 1 --EOF -- ;; -- *) #(vi -- cat >conftest.h <<EOF --#define GCC_$cf_ATTRIBUTE $cf_directive --EOF -- ;; -- esac -- -- if { (eval echo "$as_me:2797: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:2800: \$? = $ac_status" >&5 -- (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:2802: result: ... $cf_attribute" >&5 --echo "${ECHO_T}... $cf_attribute" >&6 -- cat conftest.h >>confdefs.h -- case $cf_attribute in #(vi -- printf) #(vi -- if test "$cf_printf_attribute" = no ; then -- cat >>confdefs.h <<EOF --#define GCC_PRINTFLIKE(fmt,var) /* nothing */ --EOF -- else -- cat >>confdefs.h <<EOF --#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) --EOF -- fi -- ;; -- scanf) #(vi -- if test "$cf_scanf_attribute" = no ; then -- cat >>confdefs.h <<EOF --#define GCC_SCANFLIKE(fmt,var) /* nothing */ --EOF -- else -- cat >>confdefs.h <<EOF --#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var))) --EOF -- fi -- ;; -- esac -- fi -- done --else -- fgrep define conftest.i >>confdefs.h --fi --rm -rf conftest* --fi -- --cf_XOPEN_SOURCE=500 --cf_POSIX_C_SOURCE=199506L --cf_xopen_source= -- --case $host_os in #(vi --aix[456]*) #(vi -- cf_xopen_source="-D_ALL_SOURCE" -- ;; --cygwin) #(vi -- cf_XOPEN_SOURCE=600 -- ;; --darwin[0-8].*) #(vi -- cf_xopen_source="-D_APPLE_C_SOURCE" -- ;; --darwin*) #(vi -- cf_xopen_source="-D_DARWIN_C_SOURCE" -- ;; --freebsd*|dragonfly*) #(vi -- # 5.x headers associate -- # _XOPEN_SOURCE=600 with _POSIX_C_SOURCE=200112L -- # _XOPEN_SOURCE=500 with _POSIX_C_SOURCE=199506L -- cf_POSIX_C_SOURCE=200112L -- cf_XOPEN_SOURCE=600 -- cf_xopen_source="-D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- ;; --hpux11*) #(vi -- cf_xopen_source="-D_HPUX_SOURCE -D_XOPEN_SOURCE=500" -- ;; --hpux*) #(vi -- cf_xopen_source="-D_HPUX_SOURCE" -- ;; --irix[56].*) #(vi -- cf_xopen_source="-D_SGI_SOURCE" -- ;; --linux*|gnu*|mint*|k*bsd*-gnu) #(vi -- --echo "$as_me:2873: checking if we must define _GNU_SOURCE" >&5 --echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6 --if test "${cf_cv_gnu_source+set}" = set; then -+echo "$as_me:2933: checking if we should define _POSIX_C_SOURCE" >&5 -+echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_posix_c_source+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --cat >conftest.$ac_ext <<_ACEOF --#line 2880 "configure" -+echo "${as_me:-configure}:2939: testing if the symbol is already defined go no further ..." 1>&5 -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 2942 "configure" - #include "confdefs.h" - #include <sys/types.h> - int - main () - { - --#ifndef _XOPEN_SOURCE -+#ifndef _POSIX_C_SOURCE - make an error - #endif - ; -@@ -2892,32 +2954,44 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:2895: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:2957: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:2898: \$? = $ac_status" >&5 -+ echo "$as_me:2960: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2901: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:2963: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2904: \$? = $ac_status" >&5 -+ echo "$as_me:2966: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_gnu_source=no -+ cf_cv_posix_c_source=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_save="$CPPFLAGS" -- CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -- cat >conftest.$ac_ext <<_ACEOF --#line 2913 "configure" -+cf_want_posix_source=no -+ case .$cf_POSIX_C_SOURCE in #(vi -+ .[12]??*) #(vi -+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" -+ ;; -+ .2) #(vi -+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" -+ cf_want_posix_source=yes -+ ;; -+ .*) -+ cf_want_posix_source=yes -+ ;; -+ esac -+ if test "$cf_want_posix_source" = yes ; then -+ cat >conftest.$ac_ext <<_ACEOF -+#line 2987 "configure" - #include "confdefs.h" - #include <sys/types.h> - int - main () - { - --#ifdef _XOPEN_SOURCE -+#ifdef _POSIX_SOURCE - make an error - #endif - ; -@@ -2925,75 +2999,42 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:2928: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:3002: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:2931: \$? = $ac_status" >&5 -+ echo "$as_me:3005: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:2934: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3008: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:2937: \$? = $ac_status" >&5 -+ echo "$as_me:3011: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_gnu_source=no -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_gnu_source=yes -+cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE" - fi - rm -f conftest.$ac_objext conftest.$ac_ext -- CPPFLAGS="$cf_save" -+ fi - --fi --rm -f conftest.$ac_objext conftest.$ac_ext -+echo "${as_me:-configure}:3022: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5 - --fi --echo "$as_me:2952: result: $cf_cv_gnu_source" >&5 --echo "${ECHO_T}$cf_cv_gnu_source" >&6 --test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+ CFLAGS="$cf_trim_CFLAGS" -+ CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source" - -- ;; --mirbsd*) #(vi -- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h> -- ;; --netbsd*) #(vi -- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -- ;; --openbsd*) #(vi -- # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw -- ;; --osf[45]*) #(vi -- cf_xopen_source="-D_OSF_SOURCE" -- ;; --nto-qnx*) #(vi -- cf_xopen_source="-D_QNX_SOURCE" -- ;; --sco*) #(vi -- # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer -- ;; --solaris2.1[0-9]) #(vi -- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- ;; --solaris2.[1-9]) #(vi -- cf_xopen_source="-D__EXTENSIONS__" -- ;; --*) -- echo "$as_me:2982: checking if we should define _XOPEN_SOURCE" >&5 --echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6 --if test "${cf_cv_xopen_source+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+echo "${as_me:-configure}:3027: testing if the second compile does not leave our definition intact error ..." 1>&5 - -- cat >conftest.$ac_ext <<_ACEOF --#line 2989 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 3030 "configure" - #include "confdefs.h" - #include <sys/types.h> - int - main () - { - --#ifndef _XOPEN_SOURCE -+#ifndef _POSIX_C_SOURCE - make an error - #endif - ; -@@ -3001,49 +3042,218 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:3004: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:3045: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3007: \$? = $ac_status" >&5 -+ echo "$as_me:3048: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3010: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3051: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3013: \$? = $ac_status" >&5 -+ echo "$as_me:3054: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_xopen_source=no -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_save="$CPPFLAGS" -- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -- cat >conftest.$ac_ext <<_ACEOF --#line 3022 "configure" --#include "confdefs.h" --#include <sys/types.h> --int --main () --{ -- --#ifdef _XOPEN_SOURCE --make an error --#endif -+cf_cv_posix_c_source=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CFLAGS="$cf_save_CFLAGS" -+ CPPFLAGS="$cf_save_CPPFLAGS" -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ -+fi -+echo "$as_me:3070: result: $cf_cv_posix_c_source" >&5 -+echo "${ECHO_T}$cf_cv_posix_c_source" >&6 -+ -+if test "$cf_cv_posix_c_source" != no ; then -+ CFLAGS="$cf_trim_CFLAGS" -+ CPPFLAGS="$cf_trim_CPPFLAGS" -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_cv_posix_c_source -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+fi -+ -+ ;; -+netbsd*) #(vi -+ cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ ;; -+openbsd[4-9]*) #(vi -+ # setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw -+ cf_xopen_source="-D_BSD_SOURCE" -+ cf_XOPEN_SOURCE=600 -+ ;; -+openbsd*) #(vi -+ # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw -+ ;; -+osf[45]*) #(vi -+ cf_xopen_source="-D_OSF_SOURCE" -+ ;; -+nto-qnx*) #(vi -+ cf_xopen_source="-D_QNX_SOURCE" -+ ;; -+sco*) #(vi -+ # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer -+ ;; -+solaris2.*) #(vi -+ cf_xopen_source="-D__EXTENSIONS__" -+ cf_cv_xopen_source=broken -+ ;; -+*) -+ -+echo "$as_me:3184: checking if we should define _XOPEN_SOURCE" >&5 -+echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_xopen_source+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 3191 "configure" -+#include "confdefs.h" -+ -+#include <stdlib.h> -+#include <string.h> -+#include <sys/types.h> -+ -+int -+main () -+{ -+ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:3210: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:3213: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:3216: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:3219: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_xopen_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 3228 "configure" -+#include "confdefs.h" -+ -+#include <stdlib.h> -+#include <string.h> -+#include <sys/types.h> -+ -+int -+main () -+{ -+ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:3037: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:3247: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3040: \$? = $ac_status" >&5 -+ echo "$as_me:3250: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3043: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3253: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3046: \$? = $ac_status" >&5 -+ echo "$as_me:3256: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_xopen_source=no - else -@@ -3058,9 +3268,10 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:3061: result: $cf_cv_xopen_source" >&5 -+echo "$as_me:3271: result: $cf_cv_xopen_source" >&5 - echo "${ECHO_T}$cf_cv_xopen_source" >&6 -- if test "$cf_cv_xopen_source" != no ; then -+ -+if test "$cf_cv_xopen_source" != no ; then - - CFLAGS=`echo "$CFLAGS" | \ - sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -@@ -3070,7 +3281,7 @@ - sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ - -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` - -- cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" -+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" - - cf_fix_cppflags=no - cf_new_cflags= -@@ -3150,7 +3361,7 @@ - EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi - -- fi -+fi - - cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE - -@@ -3165,16 +3376,16 @@ - sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ - -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'` - --echo "$as_me:3168: checking if we should define _POSIX_C_SOURCE" >&5 -+echo "$as_me:3379: checking if we should define _POSIX_C_SOURCE" >&5 - echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6 - if test "${cf_cv_posix_c_source+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --echo "${as_me:-configure}:3174: testing if the symbol is already defined go no further ..." 1>&5 -+echo "${as_me:-configure}:3385: testing if the symbol is already defined go no further ..." 1>&5 - - cat >conftest.$ac_ext <<_ACEOF --#line 3177 "configure" -+#line 3388 "configure" - #include "confdefs.h" - #include <sys/types.h> - int -@@ -3189,16 +3400,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:3192: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:3403: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3195: \$? = $ac_status" >&5 -+ echo "$as_me:3406: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3198: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3409: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3201: \$? = $ac_status" >&5 -+ echo "$as_me:3412: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_posix_c_source=no - else -@@ -3219,7 +3430,7 @@ - esac - if test "$cf_want_posix_source" = yes ; then - cat >conftest.$ac_ext <<_ACEOF --#line 3222 "configure" -+#line 3433 "configure" - #include "confdefs.h" - #include <sys/types.h> - int -@@ -3234,16 +3445,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:3237: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:3448: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3240: \$? = $ac_status" >&5 -+ echo "$as_me:3451: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3243: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3454: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3246: \$? = $ac_status" >&5 -+ echo "$as_me:3457: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -3254,15 +3465,15 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - fi - --echo "${as_me:-configure}:3257: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5 -+echo "${as_me:-configure}:3468: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5 - - CFLAGS="$cf_trim_CFLAGS" - CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source" - --echo "${as_me:-configure}:3262: testing if the second compile does not leave our definition intact error ..." 1>&5 -+echo "${as_me:-configure}:3473: testing if the second compile does not leave our definition intact error ..." 1>&5 - - cat >conftest.$ac_ext <<_ACEOF --#line 3265 "configure" -+#line 3476 "configure" - #include "confdefs.h" - #include <sys/types.h> - int -@@ -3277,16 +3488,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:3280: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:3491: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3283: \$? = $ac_status" >&5 -+ echo "$as_me:3494: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3286: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3497: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3289: \$? = $ac_status" >&5 -+ echo "$as_me:3500: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -3302,7 +3513,7 @@ - rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:3305: result: $cf_cv_posix_c_source" >&5 -+echo "$as_me:3516: result: $cf_cv_posix_c_source" >&5 - echo "${ECHO_T}$cf_cv_posix_c_source" >&6 - - if test "$cf_cv_posix_c_source" != no ; then -@@ -3474,191 +3685,274 @@ - - fi - --echo "$as_me:3477: checking for $CC option to accept ANSI C" >&5 --echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 --if test "${ac_cv_prog_cc_stdc+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_cv_prog_cc_stdc=no --ac_save_CC=$CC --cat >conftest.$ac_ext <<_ACEOF --#line 3485 "configure" -+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then -+ echo "$as_me:3689: checking if _XOPEN_SOURCE really is set" >&5 -+echo $ECHO_N "checking if _XOPEN_SOURCE really is set... $ECHO_C" >&6 -+ cat >conftest.$ac_ext <<_ACEOF -+#line 3692 "configure" - #include "confdefs.h" --#include <stdarg.h> --#include <stdio.h> --#include <sys/types.h> --#include <sys/stat.h> --/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ --struct buf { int x; }; --FILE * (*rcsopen) (struct buf *, struct stat *, int); --static char *e (p, i) -- char **p; -- int i; --{ -- return p[i]; --} --static char *f (char * (*g) (char **, int), char **p, ...) --{ -- char *s; -- va_list v; -- va_start (v,p); -- s = g (p, va_arg (v,int)); -- va_end (v); -- return s; --} --int test (int i, double x); --struct s1 {int (*f) (int a);}; --struct s2 {int (*f) (double a);}; --int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); --int argc; --char **argv; -+#include <stdlib.h> - int - main () - { --return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; -+ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif - ; - return 0; - } - _ACEOF --# Don't try gcc -ansi; that turns off useful extensions and --# breaks some systems' header files. --# AIX -qlanglvl=ansi --# Ultrix and OSF/1 -std1 --# HP-UX 10.20 and later -Ae --# HP-UX older versions -Aa -D_HPUX_SOURCE --# SVR4 -Xc -D__EXTENSIONS__ --for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" --do -- CC="$ac_save_CC $ac_arg" -- rm -f conftest.$ac_objext --if { (eval echo "$as_me:3534: \"$ac_compile\"") >&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:3707: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3537: \$? = $ac_status" >&5 -+ echo "$as_me:3710: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3540: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3713: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3543: \$? = $ac_status" >&5 -+ echo "$as_me:3716: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_prog_cc_stdc=$ac_arg --break -+ cf_XOPEN_SOURCE_set=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_XOPEN_SOURCE_set=no - fi --rm -f conftest.$ac_objext --done --rm -f conftest.$ac_ext conftest.$ac_objext --CC=$ac_save_CC -- --fi -- --case "x$ac_cv_prog_cc_stdc" in -- x|xno) -- echo "$as_me:3560: result: none needed" >&5 --echo "${ECHO_T}none needed" >&6 ;; -- *) -- echo "$as_me:3563: result: $ac_cv_prog_cc_stdc" >&5 --echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 -- CC="$CC $ac_cv_prog_cc_stdc" ;; --esac -- --echo "$as_me:3568: checking for an ANSI C-conforming const" >&5 --echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6 --if test "${ac_cv_c_const+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 3574 "configure" -+rm -f conftest.$ac_objext conftest.$ac_ext -+ echo "$as_me:3725: result: $cf_XOPEN_SOURCE_set" >&5 -+echo "${ECHO_T}$cf_XOPEN_SOURCE_set" >&6 -+ if test $cf_XOPEN_SOURCE_set = yes -+ then -+ cat >conftest.$ac_ext <<_ACEOF -+#line 3730 "configure" - #include "confdefs.h" -- -+#include <stdlib.h> - int - main () - { --/* FIXME: Include the comments suggested by Paul. */ --#ifndef __cplusplus -- /* Ultrix mips cc rejects this. */ -- typedef int charset[2]; -- const charset x; -- /* SunOS 4.1.1 cc rejects this. */ -- char const *const *ccp; -- char **p; -- /* NEC SVR4.0.2 mips cc rejects this. */ -- struct point {int x, y;}; -- static struct point const zero = {0,0}; -- /* AIX XL C 1.02.0.0 rejects this. -- It does not let you subtract one const X* pointer from another in -- an arm of an if-expression whose if-part is not a constant -- expression */ -- const char *g = "string"; -- ccp = &g + (g ? g-g : 0); -- /* HPUX 7.0 cc rejects these. */ -- ++ccp; -- p = (char**) ccp; -- ccp = (char const *const *) p; -- { /* SCO 3.2v4 cc rejects this. */ -- char *t; -- char const *s = 0 ? (char *) 0 : (char const *) 0; - -- *t++ = 0; -- } -- { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ -- int x[] = {25, 17}; -- const int *foo = &x[0]; -- ++foo; -- } -- { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ -- typedef const int *iptr; -- iptr p = 0; -- ++p; -- } -- { /* AIX XL C 1.02.0.0 rejects this saying -- "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ -- struct s { int j; const int *ap[3]; }; -- struct s *b; b->j = 5; -- } -- { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ -- const int foo = 10; -- } -+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE -+make an error - #endif -- - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:3632: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:3745: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3635: \$? = $ac_status" >&5 -+ echo "$as_me:3748: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3638: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3751: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3641: \$? = $ac_status" >&5 -+ echo "$as_me:3754: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_c_const=yes -+ cf_XOPEN_SOURCE_set_ok=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_c_const=no -+cf_XOPEN_SOURCE_set_ok=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext --fi --echo "$as_me:3651: result: $ac_cv_c_const" >&5 --echo "${ECHO_T}$ac_cv_c_const" >&6 --if test $ac_cv_c_const = no; then -- --cat >>confdefs.h <<\EOF --#define const --EOF -+ if test $cf_XOPEN_SOURCE_set_ok = no -+ then -+ { echo "$as_me:3765: WARNING: _XOPEN_SOURCE is lower than requested" >&5 -+echo "$as_me: WARNING: _XOPEN_SOURCE is lower than requested" >&2;} -+ fi -+ else -+ -+echo "$as_me:3770: checking if we should define _XOPEN_SOURCE" >&5 -+echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6 -+if test "${cf_cv_xopen_source+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 3777 "configure" -+#include "confdefs.h" -+ -+#include <stdlib.h> -+#include <string.h> -+#include <sys/types.h> -+ -+int -+main () -+{ -+ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:3796: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:3799: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:3802: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:3805: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_xopen_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 3814 "configure" -+#include "confdefs.h" -+ -+#include <stdlib.h> -+#include <string.h> -+#include <sys/types.h> -+ -+int -+main () -+{ -+ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:3833: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:3836: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:3839: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:3842: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_xopen_source=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_xopen_source=$cf_XOPEN_SOURCE -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS="$cf_save" -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ -+fi -+echo "$as_me:3857: result: $cf_cv_xopen_source" >&5 -+echo "${ECHO_T}$cf_cv_xopen_source" >&6 -+ -+if test "$cf_cv_xopen_source" != no ; then -+ -+CFLAGS=`echo "$CFLAGS" | \ -+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'` -+ -+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_temp_xopen_source -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` - -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi - --echo "$as_me:3661: checking for signal global datatype" >&5 -+fi -+ -+ fi -+fi -+ -+echo "$as_me:3955: checking for signal global datatype" >&5 - echo $ECHO_N "checking for signal global datatype... $ECHO_C" >&6 - if test "${cf_cv_sig_atomic_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -@@ -3670,7 +3964,7 @@ - "int" - do - cat >conftest.$ac_ext <<_ACEOF --#line 3673 "configure" -+#line 3967 "configure" - #include "confdefs.h" - - #include <sys/types.h> -@@ -3693,16 +3987,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:3696: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:3990: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:3699: \$? = $ac_status" >&5 -+ echo "$as_me:3993: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3702: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:3996: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:3705: \$? = $ac_status" >&5 -+ echo "$as_me:3999: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_cv_sig_atomic_t=$cf_type - else -@@ -3716,473 +4010,535 @@ - - fi - --echo "$as_me:3719: result: $cf_cv_sig_atomic_t" >&5 -+echo "$as_me:4013: result: $cf_cv_sig_atomic_t" >&5 - echo "${ECHO_T}$cf_cv_sig_atomic_t" >&6 --test "$cf_cv_sig_atomic_t" != no && cat >>confdefs.h <<EOF -+test "$cf_cv_sig_atomic_t" != no && -+cat >>confdefs.h <<EOF - #define SIG_ATOMIC_T $cf_cv_sig_atomic_t - EOF - --echo "$as_me:3725: checking if you want to see long compiling messages" >&5 --echo $ECHO_N "checking if you want to see long compiling messages... $ECHO_C" >&6 -- --# Check whether --enable-echo or --disable-echo was given. --if test "${enable_echo+set}" = set; then -- enableval="$enable_echo" -- test "$enableval" != no && enableval=yes -- if test "$enableval" != "yes" ; then -- -- ECHO_LT='--silent' -- ECHO_LD='@echo linking $@;' -- RULE_CC='@echo compiling $<' -- SHOW_CC='@echo compiling $@' -- ECHO_CC='@' -- -- else -- -- ECHO_LT='' -- ECHO_LD='' -- RULE_CC='' -- SHOW_CC='' -- ECHO_CC='' -+echo "$as_me:4020: checking if you want to use pkg-config" >&5 -+echo $ECHO_N "checking if you want to use pkg-config... $ECHO_C" >&6 - -- fi -+# Check whether --with-pkg-config or --without-pkg-config was given. -+if test "${with_pkg_config+set}" = set; then -+ withval="$with_pkg_config" -+ cf_pkg_config=$withval - else -- enableval=yes -+ cf_pkg_config=yes -+fi; -+echo "$as_me:4030: result: $cf_pkg_config" >&5 -+echo "${ECHO_T}$cf_pkg_config" >&6 - -- ECHO_LT='' -- ECHO_LD='' -- RULE_CC='' -- SHOW_CC='' -- ECHO_CC='' -+case $cf_pkg_config in #(vi -+no) #(vi -+ PKG_CONFIG=none -+ ;; -+yes) #(vi - --fi; --echo "$as_me:3759: result: $enableval" >&5 --echo "${ECHO_T}$enableval" >&6 -+if test -n "$ac_tool_prefix"; then -+ # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. -+set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 -+echo "$as_me:4042: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_path_PKG_CONFIG+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ case $PKG_CONFIG in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. -+ ;; -+ *) -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ if $as_executable_p "$ac_dir/$ac_word"; then -+ ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word" -+ echo "$as_me:4059: found $ac_dir/$ac_word" >&5 -+ break -+fi -+done - --GCC_VERSION=none --if test "$GCC" = yes ; then -- echo "$as_me:3764: checking version of $CC" >&5 --echo $ECHO_N "checking version of $CC... $ECHO_C" >&6 -- GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`" -- test -z "$GCC_VERSION" && GCC_VERSION=unknown -- echo "$as_me:3768: result: $GCC_VERSION" >&5 --echo "${ECHO_T}$GCC_VERSION" >&6 -+ ;; -+esac - fi -+PKG_CONFIG=$ac_cv_path_PKG_CONFIG - --if ( test "$GCC" = yes || test "$GXX" = yes ) --then --echo "$as_me:3774: checking if you want to turn on gcc warnings" >&5 --echo $ECHO_N "checking if you want to turn on gcc warnings... $ECHO_C" >&6 -+if test -n "$PKG_CONFIG"; then -+ echo "$as_me:4070: result: $PKG_CONFIG" >&5 -+echo "${ECHO_T}$PKG_CONFIG" >&6 -+else -+ echo "$as_me:4073: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi - --# Check whether --enable-warnings or --disable-warnings was given. --if test "${enable_warnings+set}" = set; then -- enableval="$enable_warnings" -- test "$enableval" != yes && enableval=no -- if test "$enableval" != "no" ; then -- with_warnings=yes -- else -- with_warnings=no -- fi -+fi -+if test -z "$ac_cv_path_PKG_CONFIG"; then -+ ac_pt_PKG_CONFIG=$PKG_CONFIG -+ # Extract the first word of "pkg-config", so it can be a program name with args. -+set dummy pkg-config; ac_word=$2 -+echo "$as_me:4082: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- enableval=no -- with_warnings=no -+ case $ac_pt_PKG_CONFIG in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. -+ ;; -+ *) -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ if $as_executable_p "$ac_dir/$ac_word"; then -+ ac_cv_path_ac_pt_PKG_CONFIG="$ac_dir/$ac_word" -+ echo "$as_me:4099: found $ac_dir/$ac_word" >&5 -+ break -+fi -+done - --fi; --echo "$as_me:3791: result: $with_warnings" >&5 --echo "${ECHO_T}$with_warnings" >&6 --if test "$with_warnings" = "yes" --then -+ test -z "$ac_cv_path_ac_pt_PKG_CONFIG" && ac_cv_path_ac_pt_PKG_CONFIG="none" -+ ;; -+esac -+fi -+ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG - --if test "$GCC" = yes --then --cat > conftest.i <<EOF --#ifndef GCC_PRINTF --#define GCC_PRINTF 0 --#endif --#ifndef GCC_SCANF --#define GCC_SCANF 0 --#endif --#ifndef GCC_NORETURN --#define GCC_NORETURN /* nothing */ --#endif --#ifndef GCC_UNUSED --#define GCC_UNUSED /* nothing */ --#endif --EOF --if test "$GCC" = yes --then -- { echo "$as_me:3814: checking for $CC __attribute__ directives..." >&5 --echo "$as_me: checking for $CC __attribute__ directives..." >&6;} --cat > conftest.$ac_ext <<EOF --#line 3817 "${as_me:-configure}" --#include "confdefs.h" --#include "conftest.h" --#include "conftest.i" --#if GCC_PRINTF --#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) --#else --#define GCC_PRINTFLIKE(fmt,var) /*nothing*/ --#endif --#if GCC_SCANF --#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var))) --#else --#define GCC_SCANFLIKE(fmt,var) /*nothing*/ --#endif --extern void wow(char *,...) GCC_SCANFLIKE(1,2); --extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; --extern void foo(void) GCC_NORETURN; --int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { return 0; } --EOF -- cf_printf_attribute=no -- cf_scanf_attribute=no -- for cf_attribute in scanf printf unused noreturn -- do -+if test -n "$ac_pt_PKG_CONFIG"; then -+ echo "$as_me:4111: result: $ac_pt_PKG_CONFIG" >&5 -+echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6 -+else -+ echo "$as_me:4114: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi - --cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ PKG_CONFIG=$ac_pt_PKG_CONFIG -+else -+ PKG_CONFIG="$ac_cv_path_PKG_CONFIG" -+fi - -- cf_directive="__attribute__(($cf_attribute))" -- echo "checking for $CC $cf_directive" 1>&5 -+ ;; -+*) -+ PKG_CONFIG=$withval -+ ;; -+esac - -- case $cf_attribute in #(vi -- printf) #(vi -- cf_printf_attribute=yes -- cat >conftest.h <<EOF --#define GCC_$cf_ATTRIBUTE 1 --EOF -- ;; -- scanf) #(vi -- cf_scanf_attribute=yes -- cat >conftest.h <<EOF --#define GCC_$cf_ATTRIBUTE 1 --EOF -- ;; -- *) #(vi -- cat >conftest.h <<EOF --#define GCC_$cf_ATTRIBUTE $cf_directive --EOF -- ;; -- esac -+test -z "$PKG_CONFIG" && PKG_CONFIG=none -+if test "$PKG_CONFIG" != none ; then - -- if { (eval echo "$as_me:3866: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:3869: \$? = $ac_status" >&5 -- (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:3871: result: ... $cf_attribute" >&5 --echo "${ECHO_T}... $cf_attribute" >&6 -- cat conftest.h >>confdefs.h -- case $cf_attribute in #(vi -- printf) #(vi -- if test "$cf_printf_attribute" = no ; then -- cat >>confdefs.h <<EOF --#define GCC_PRINTFLIKE(fmt,var) /* nothing */ --EOF -- else -- cat >>confdefs.h <<EOF --#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) --EOF -- fi -- ;; -- scanf) #(vi -- if test "$cf_scanf_attribute" = no ; then -- cat >>confdefs.h <<EOF --#define GCC_SCANFLIKE(fmt,var) /* nothing */ --EOF -- else -- cat >>confdefs.h <<EOF --#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var))) --EOF -- fi -- ;; -- esac -- fi -- done -+if test "x$prefix" != xNONE; then -+ cf_path_syntax="$prefix" - else -- fgrep define conftest.i >>confdefs.h -+ cf_path_syntax="$ac_default_prefix" - fi --rm -rf conftest* -+ -+case ".$PKG_CONFIG" in #(vi -+.\$\(*\)*|.\'*\'*) #(vi -+ ;; -+..|./*|.\\*) #(vi -+ ;; -+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX -+ ;; -+.\${*prefix}*|.\${*dir}*) #(vi -+ eval PKG_CONFIG="$PKG_CONFIG" -+ case ".$PKG_CONFIG" in #(vi -+ .NONE/*) -+ PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%` -+ ;; -+ esac -+ ;; #(vi -+.no|.NONE/*) -+ PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%` -+ ;; -+*) -+ { { echo "$as_me:4157: error: expected a pathname, not \"$PKG_CONFIG\"" >&5 -+echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;} -+ { (exit 1); exit 1; }; } -+ ;; -+esac -+ - fi - --INTEL_COMPILER=no -+echo "$as_me:4165: checking if you want to see long compiling messages" >&5 -+echo $ECHO_N "checking if you want to see long compiling messages... $ECHO_C" >&6 - --if test "$GCC" = yes ; then -- case $host_os in -- linux*|gnu*) -- echo "$as_me:3911: checking if this is really Intel C compiler" >&5 --echo $ECHO_N "checking if this is really Intel C compiler... $ECHO_C" >&6 -- cf_save_CFLAGS="$CFLAGS" -- CFLAGS="$CFLAGS -no-gcc" -- cat >conftest.$ac_ext <<_ACEOF --#line 3916 "configure" --#include "confdefs.h" -+# Check whether --enable-echo or --disable-echo was given. -+if test "${enable_echo+set}" = set; then -+ enableval="$enable_echo" -+ test "$enableval" != no && enableval=yes -+ if test "$enableval" != "yes" ; then - --int --main () --{ -+ ECHO_LT='--silent' -+ ECHO_LD='@echo linking $@;' -+ RULE_CC='@echo compiling $<' -+ SHOW_CC='@echo compiling $@' -+ ECHO_CC='@' - --#ifdef __INTEL_COMPILER --#else --make an error --#endif -+ else - -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:3933: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:3936: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:3939: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:3942: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- INTEL_COMPILER=yes --cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc" -+ ECHO_LT='' -+ ECHO_LD='' -+ RULE_CC='' -+ SHOW_CC='' -+ ECHO_CC='' - -+ fi - else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --fi --rm -f conftest.$ac_objext conftest.$ac_ext -- CFLAGS="$cf_save_CFLAGS" -- echo "$as_me:3953: result: $INTEL_COMPILER" >&5 --echo "${ECHO_T}$INTEL_COMPILER" >&6 -- ;; -- esac --fi -+ enableval=yes - --cat > conftest.$ac_ext <<EOF --#line 3960 "${as_me:-configure}" --int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; } --EOF -+ ECHO_LT='' -+ ECHO_LD='' -+ RULE_CC='' -+ SHOW_CC='' -+ ECHO_CC='' - --if test "$INTEL_COMPILER" = yes --then --# The "-wdXXX" options suppress warnings: --# remark #1419: external declaration in primary source file --# remark #1683: explicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem) --# remark #1684: conversion from pointer to same-sized integral type (potential portability problem) --# remark #193: zero used for undefined preprocessing identifier --# remark #593: variable "curs_sb_left_arrow" was set but never used --# remark #810: conversion from "int" to "Dimension={unsigned short}" may lose significant bits --# remark #869: parameter "tw" was never referenced --# remark #981: operands are evaluated in unspecified order --# warning #279: controlling expression is constant -+fi; -+echo "$as_me:4199: result: $enableval" >&5 -+echo "${ECHO_T}$enableval" >&6 - -- { echo "$as_me:3977: checking for $CC warning options..." >&5 --echo "$as_me: checking for $CC warning options..." >&6;} -- cf_save_CFLAGS="$CFLAGS" -- EXTRA_CFLAGS="-Wall" -- for cf_opt in \ -- wd1419 \ -- wd1683 \ -- wd1684 \ -- wd193 \ -- wd593 \ -- wd279 \ -- wd810 \ -- wd869 \ -- wd981 -- do -- CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" -- if { (eval echo "$as_me:3993: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:3996: \$? = $ac_status" >&5 -- (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:3998: result: ... -$cf_opt" >&5 --echo "${ECHO_T}... -$cf_opt" >&6 -- EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt" -- fi -- done -- CFLAGS="$cf_save_CFLAGS" -- --elif test "$GCC" = yes --then -- { echo "$as_me:4007: checking for $CC warning options..." >&5 --echo "$as_me: checking for $CC warning options..." >&6;} -- cf_save_CFLAGS="$CFLAGS" -- EXTRA_CFLAGS= -- cf_warn_CONST="" -- test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings" -- for cf_opt in W Wall \ -- Wbad-function-cast \ -- Wcast-align \ -- Wcast-qual \ -- Winline \ -- Wmissing-declarations \ -- Wmissing-prototypes \ -- Wnested-externs \ -- Wpointer-arith \ -- Wshadow \ -- Wstrict-prototypes \ -- Wundef $cf_warn_CONST -- do -- CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" -- if { (eval echo "$as_me:4027: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:4030: \$? = $ac_status" >&5 -- (exit $ac_status); }; then -- test -n "$verbose" && echo "$as_me:4032: result: ... -$cf_opt" >&5 --echo "${ECHO_T}... -$cf_opt" >&6 -- case $cf_opt in #(vi -- Wcast-qual) #(vi -- CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES" -- ;; -- Winline) #(vi -- case $GCC_VERSION in -- [34].*) -- test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6 -+echo "$as_me:4202: checking for ncurses wrap-prefix" >&5 -+echo $ECHO_N "checking for ncurses wrap-prefix... $ECHO_C" >&6 - --echo "${as_me:-configure}:4043: testing feature is broken in gcc $GCC_VERSION ..." 1>&5 -+# Check whether --with-ncurses-wrap-prefix or --without-ncurses-wrap-prefix was given. -+if test "${with_ncurses_wrap_prefix+set}" = set; then -+ withval="$with_ncurses_wrap_prefix" -+ NCURSES_WRAP_PREFIX=$withval -+else -+ NCURSES_WRAP_PREFIX=_nc_ -+fi; -+echo "$as_me:4212: result: $NCURSES_WRAP_PREFIX" >&5 -+echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6 - -- continue;; -- esac -- ;; -- esac -- EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt" -- fi -- done -- CFLAGS="$cf_save_CFLAGS" --fi --rm -rf conftest* -+echo "$as_me:4215: checking if you want to check for wide-character functions" >&5 -+echo $ECHO_N "checking if you want to check for wide-character functions... $ECHO_C" >&6 - --fi --fi -+# Check whether --enable-widec or --disable-widec was given. -+if test "${enable_widec+set}" = set; then -+ enableval="$enable_widec" -+ test "$enableval" != no && enableval=yes -+ if test "$enableval" != "yes" ; then -+ cf_enable_widec=no -+ else -+ cf_enable_widec=yes -+ fi -+else -+ enableval=yes -+ cf_enable_widec=yes - --echo "$as_me:4059: checking if you want to use dmalloc for testing" >&5 --echo $ECHO_N "checking if you want to use dmalloc for testing... $ECHO_C" >&6 -+fi; -+echo "$as_me:4232: result: $cf_enable_widec" >&5 -+echo "${ECHO_T}$cf_enable_widec" >&6 - --# Check whether --with-dmalloc or --without-dmalloc was given. --if test "${with_dmalloc+set}" = set; then -- withval="$with_dmalloc" -- cat >>confdefs.h <<\EOF --#define USE_DMALLOC 1 --EOF -+echo "$as_me:4235: checking for specific curses-directory" >&5 -+echo $ECHO_N "checking for specific curses-directory... $ECHO_C" >&6 - -- : ${with_cflags:=-g} -- : ${with_no_leaks:=yes} -- with_dmalloc=yes -+# Check whether --with-curses-dir or --without-curses-dir was given. -+if test "${with_curses_dir+set}" = set; then -+ withval="$with_curses_dir" -+ cf_cv_curses_dir=$withval - else -- with_dmalloc= -+ cf_cv_curses_dir=no - fi; --echo "$as_me:4075: result: ${with_dmalloc:-no}" >&5 --echo "${ECHO_T}${with_dmalloc:-no}" >&6 -+echo "$as_me:4245: result: $cf_cv_curses_dir" >&5 -+echo "${ECHO_T}$cf_cv_curses_dir" >&6 - --case .$with_cflags in #(vi --.*-g*) -- case .$CFLAGS in #(vi -- .*-g*) #(vi -- ;; -- *) -+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" ) -+then - --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -+if test "x$prefix" != xNONE; then -+ cf_path_syntax="$prefix" -+else -+ cf_path_syntax="$ac_default_prefix" -+fi - --for cf_add_cflags in -g --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+case ".$withval" in #(vi -+.\$\(*\)*|.\'*\'*) #(vi -+ ;; -+..|./*|.\\*) #(vi -+ ;; -+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX -+ ;; -+.\${*prefix}*|.\${*dir}*) #(vi -+ eval withval="$withval" -+ case ".$withval" in #(vi -+ .NONE/*) -+ withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` -+ ;; -+ esac -+ ;; #(vi -+.no|.NONE/*) -+ withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` -+ ;; -+*) -+ { { echo "$as_me:4276: error: expected a pathname, not \"$withval\"" >&5 -+echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} -+ { (exit 1); exit 1; }; } -+ ;; -+esac - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -+ if test -d "$cf_cv_curses_dir" -+ then - -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -+if test -n "$cf_cv_curses_dir/include" ; then -+ for cf_add_incdir in $cf_cv_curses_dir/include -+ do -+ while test $cf_add_incdir != /usr/include -+ do -+ if test -d $cf_add_incdir -+ then -+ cf_have_incdir=no -+ if test -n "$CFLAGS$CPPFLAGS" ; then -+ # a loop is needed to ensure we can add subdirs of existing dirs -+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do -+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then -+ cf_have_incdir=yes; break - fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -- --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ done -+ fi - -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ if test "$cf_have_incdir" = no ; then -+ if test "$cf_add_incdir" = /usr/local/include ; then -+ if test "$GCC" = yes -+ then -+ cf_save_CPPFLAGS=$CPPFLAGS -+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 4309 "configure" -+#include "confdefs.h" -+#include <stdio.h> -+int -+main () -+{ -+printf("Hello") -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:4321: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:4324: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:4327: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:4330: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_have_incdir=yes -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS=$cf_save_CPPFLAGS -+ fi -+ fi -+ fi - -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ if test "$cf_have_incdir" = no ; then -+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -+echo "${as_me:-configure}:4347: testing adding $cf_add_incdir to include-path ..." 1>&5 - --if test -n "$cf_new_cflags" ; then -+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -- CFLAGS="$CFLAGS $cf_new_cflags" -+ cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` -+ test "$cf_top_incdir" = "$cf_add_incdir" && break -+ cf_add_incdir="$cf_top_incdir" -+ else -+ break -+ fi -+ fi -+ done -+ done - fi - --if test -n "$cf_new_cppflags" ; then -+if test -n "$cf_cv_curses_dir/lib" ; then -+ for cf_add_libdir in $cf_cv_curses_dir/lib -+ do -+ if test $cf_add_libdir = /usr/lib ; then -+ : -+ elif test -d $cf_add_libdir -+ then -+ cf_have_libdir=no -+ if test -n "$LDFLAGS$LIBS" ; then -+ # a loop is needed to ensure we can add subdirs of existing dirs -+ for cf_test_libdir in $LDFLAGS $LIBS ; do -+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then -+ cf_have_libdir=yes; break -+ fi -+ done -+ fi -+ if test "$cf_have_libdir" = no ; then -+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 - -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" --fi -+echo "${as_me:-configure}:4381: testing adding $cf_add_libdir to library-path ..." 1>&5 - --if test -n "$cf_new_extra_cppflags" ; then -+ LDFLAGS="-L$cf_add_libdir $LDFLAGS" -+ fi -+ fi -+ done -+fi - -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+ fi - fi - -- ;; -- esac -+cf_cv_screen=curses -+ -+echo "$as_me:4394: checking for specified curses library type" >&5 -+echo $ECHO_N "checking for specified curses library type... $ECHO_C" >&6 -+ -+# Check whether --with-ncursesw or --without-ncursesw was given. -+if test "${with_ncursesw+set}" = set; then -+ withval="$with_ncursesw" -+ cf_cv_screen=ncursesw -+else -+ -+# Check whether --with-ncurses or --without-ncurses was given. -+if test "${with_ncurses+set}" = set; then -+ withval="$with_ncurses" -+ cf_cv_screen=ncurses -+else -+ -+# Check whether --with-pdcurses or --without-pdcurses was given. -+if test "${with_pdcurses+set}" = set; then -+ withval="$with_pdcurses" -+ cf_cv_screen=pdcurses -+else -+ -+# Check whether --with-curses-colr or --without-curses-colr was given. -+if test "${with_curses_colr+set}" = set; then -+ withval="$with_curses_colr" -+ cf_cv_screen=curses_colr -+else -+ -+# Check whether --with-curses-5lib or --without-curses-5lib was given. -+if test "${with_curses_5lib+set}" = set; then -+ withval="$with_curses_5lib" -+ cf_cv_screen=curses_5lib -+fi; -+fi; -+fi; -+fi; -+fi; -+ -+echo "$as_me:4431: result: $cf_cv_screen" >&5 -+echo "${ECHO_T}$cf_cv_screen" >&6 -+ -+case $cf_cv_screen in #(vi -+curses|curses_*) #(vi -+ -+echo "$as_me:4437: checking for extra include directories" >&5 -+echo $ECHO_N "checking for extra include directories... $ECHO_C" >&6 -+if test "${cf_cv_curses_incdir+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+cf_cv_curses_incdir=no -+case $host_os in #(vi -+hpux10.*) #(vi -+ if test "x$cf_cv_screen" = "xcurses_colr" -+ then -+ test -d /usr/include/curses_colr && \ -+ cf_cv_curses_incdir="-I/usr/include/curses_colr" -+ fi -+ ;; -+sunos3*|sunos4*) -+ if test "x$cf_cv_screen" = "xcurses_5lib" -+ then -+ test -d /usr/5lib && \ -+ test -d /usr/5include && \ -+ cf_cv_curses_incdir="-I/usr/5include" -+ fi - ;; - esac - --if test "$with_dmalloc" = yes ; then -- echo "$as_me:4169: checking for dmalloc.h" >&5 --echo $ECHO_N "checking for dmalloc.h... $ECHO_C" >&6 --if test "${ac_cv_header_dmalloc_h+set}" = set; then -+fi -+echo "$as_me:4463: result: $cf_cv_curses_incdir" >&5 -+echo "${ECHO_T}$cf_cv_curses_incdir" >&6 -+test "$cf_cv_curses_incdir" != no && CPPFLAGS="$CPPFLAGS $cf_cv_curses_incdir" -+ -+echo "$as_me:4467: checking if we have identified curses headers" >&5 -+echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_header+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+cf_cv_ncurses_header=none -+for cf_header in \ -+ ncurses.h \ -+ curses.h ncurses/ncurses.h ncurses/curses.h -+do -+cat >conftest.$ac_ext <<_ACEOF -+#line 4479 "configure" -+#include "confdefs.h" -+#include <${cf_header}> -+int -+main () -+{ -+initscr(); tgoto("?", 0,0) -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:4491: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:4494: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:4497: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:4500: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_ncurses_header=$cf_header; break -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+done -+ -+fi -+echo "$as_me:4511: result: $cf_cv_ncurses_header" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_header" >&6 -+ -+if test "$cf_cv_ncurses_header" = none ; then -+ { { echo "$as_me:4515: error: No curses header-files found" >&5 -+echo "$as_me: error: No curses header-files found" >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+# cheat, to get the right #define's for HAVE_NCURSES_H, etc. -+ -+for ac_header in $cf_cv_ncurses_header -+do -+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -+echo "$as_me:4525: checking for $ac_header" >&5 -+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF --#line 4175 "configure" -+#line 4531 "configure" - #include "confdefs.h" --#include <dmalloc.h> -+#include <$ac_header> - _ACEOF --if { (eval echo "$as_me:4179: \"$ac_cpp conftest.$ac_ext\"") >&5 -+if { (eval echo "$as_me:4535: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 -- echo "$as_me:4185: \$? = $ac_status" >&5 -+ echo "$as_me:4541: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag -@@ -4193,238 +4549,316 @@ - ac_cpp_err=yes - fi - if test -z "$ac_cpp_err"; then -- ac_cv_header_dmalloc_h=yes -+ eval "$as_ac_Header=yes" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -- ac_cv_header_dmalloc_h=no -+ eval "$as_ac_Header=no" - fi - rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:4204: result: $ac_cv_header_dmalloc_h" >&5 --echo "${ECHO_T}$ac_cv_header_dmalloc_h" >&6 --if test $ac_cv_header_dmalloc_h = yes; then -+echo "$as_me:4560: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -+if test `eval echo '${'$as_ac_Header'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -+EOF - --echo "$as_me:4208: checking for dmalloc_debug in -ldmalloc" >&5 --echo $ECHO_N "checking for dmalloc_debug in -ldmalloc... $ECHO_C" >&6 --if test "${ac_cv_lib_dmalloc_dmalloc_debug+set}" = set; then -+fi -+done -+ -+echo "$as_me:4570: checking for terminfo header" >&5 -+echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6 -+if test "${cf_cv_term_header+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-ldmalloc $LIBS" -+ -+case ${cf_cv_ncurses_header} in #(vi -+*/ncurses.h|*/ncursesw.h) #(vi -+ cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'` -+ ;; -+*) -+ cf_term_header=term.h -+ ;; -+esac -+ -+for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h" -+do - cat >conftest.$ac_ext <<_ACEOF --#line 4216 "configure" -+#line 4588 "configure" - #include "confdefs.h" -+#include <stdio.h> -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <$cf_test> - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char dmalloc_debug (); - int - main () - { --dmalloc_debug (); -+int x = auto_left_margin - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:4235: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:4603: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:4238: \$? = $ac_status" >&5 -+ echo "$as_me:4606: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:4241: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:4609: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4244: \$? = $ac_status" >&5 -+ echo "$as_me:4612: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_dmalloc_dmalloc_debug=yes -+ -+ cf_cv_term_header="$cf_test" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_dmalloc_dmalloc_debug=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:4255: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5 --echo "${ECHO_T}$ac_cv_lib_dmalloc_dmalloc_debug" >&6 --if test $ac_cv_lib_dmalloc_dmalloc_debug = yes; then -- cat >>confdefs.h <<EOF --#define HAVE_LIBDMALLOC 1 --EOF - -- LIBS="-ldmalloc $LIBS" -+ cf_cv_term_header=unknown - - fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ test "$cf_cv_term_header" != unknown && break -+done - - fi -+echo "$as_me:4628: result: $cf_cv_term_header" >&5 -+echo "${ECHO_T}$cf_cv_term_header" >&6 - --fi -+# Set definitions to allow ifdef'ing to accommodate subdirectories - --echo "$as_me:4270: checking if you want to use dbmalloc for testing" >&5 --echo $ECHO_N "checking if you want to use dbmalloc for testing... $ECHO_C" >&6 -+case $cf_cv_term_header in # (vi -+*term.h) - --# Check whether --with-dbmalloc or --without-dbmalloc was given. --if test "${with_dbmalloc+set}" = set; then -- withval="$with_dbmalloc" -- cat >>confdefs.h <<\EOF --#define USE_DBMALLOC 1 -+cat >>confdefs.h <<\EOF -+#define HAVE_TERM_H 1 - EOF - -- : ${with_cflags:=-g} -- : ${with_no_leaks:=yes} -- with_dbmalloc=yes --else -- with_dbmalloc= --fi; --echo "$as_me:4286: result: ${with_dbmalloc:-no}" >&5 --echo "${ECHO_T}${with_dbmalloc:-no}" >&6 -+ ;; -+esac - --case .$with_cflags in #(vi --.*-g*) -- case .$CFLAGS in #(vi -- .*-g*) #(vi -- ;; -- *) -+case $cf_cv_term_header in # (vi -+ncurses/term.h) #(vi - --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSES_TERM_H 1 -+EOF - --for cf_add_cflags in -g --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ ;; -+ncursesw/term.h) - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSESW_TERM_H 1 -+EOF - -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -- --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -- -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac - ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+esac - -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+echo "$as_me:4660: checking for ncurses version" >&5 -+echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_version+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -+ cf_cv_ncurses_version=no -+ cf_tempfile=out$$ -+ rm -f $cf_tempfile -+ if test "$cross_compiling" = yes; then - --if test -n "$cf_new_cflags" ; then -+ # This will not work if the preprocessor splits the line after the -+ # Autoconf token. The 'unproto' program does that. -+ cat > conftest.$ac_ext <<EOF -+#include <${cf_cv_ncurses_header:-curses.h}> -+#undef Autoconf -+#ifdef NCURSES_VERSION -+Autoconf NCURSES_VERSION -+#else -+#ifdef __NCURSES_H -+Autoconf "old" -+#endif -+; -+#endif -+EOF -+ cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out" -+ { (eval echo "$as_me:4686: \"$cf_try\"") >&5 -+ (eval $cf_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:4689: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+ if test -f conftest.out ; then -+ cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'` -+ test -n "$cf_out" && cf_cv_ncurses_version="$cf_out" -+ rm -f conftest.out -+ fi - -- CFLAGS="$CFLAGS $cf_new_cflags" --fi -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 4699 "configure" -+#include "confdefs.h" - --if test -n "$cf_new_cppflags" ; then -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <stdio.h> -+int main() -+{ -+ FILE *fp = fopen("$cf_tempfile", "w"); -+#ifdef NCURSES_VERSION -+# ifdef NCURSES_VERSION_PATCH -+ fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH); -+# else -+ fprintf(fp, "%s\n", NCURSES_VERSION); -+# endif -+#else -+# ifdef __NCURSES_H -+ fprintf(fp, "old\n"); -+# else -+ make an error -+# endif -+#endif -+ ${cf_cv_main_return:-return}(0); -+} -+_ACEOF -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:4724: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:4727: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:4729: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:4732: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+ cf_cv_ncurses_version=`cat $cf_tempfile` -+else -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 - fi -+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+fi -+ rm -f $cf_tempfile - --if test -n "$cf_new_extra_cppflags" ; then -- -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi -+echo "$as_me:4746: result: $cf_cv_ncurses_version" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_version" >&6 -+test "$cf_cv_ncurses_version" = no || -+cat >>confdefs.h <<\EOF -+#define NCURSES 1 -+EOF - -- ;; -- esac -- ;; --esac -+echo "$as_me:4753: checking if we have identified curses libraries" >&5 -+echo $ECHO_N "checking if we have identified curses libraries... $ECHO_C" >&6 -+cat >conftest.$ac_ext <<_ACEOF -+#line 4756 "configure" -+#include "confdefs.h" -+#include <${cf_cv_ncurses_header:-curses.h}> -+int -+main () -+{ -+initscr(); tgoto("?", 0,0) -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:4768: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:4771: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:4774: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:4777: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_result=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_result=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+echo "$as_me:4786: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 - --if test "$with_dbmalloc" = yes ; then -- echo "$as_me:4380: checking for dbmalloc.h" >&5 --echo $ECHO_N "checking for dbmalloc.h... $ECHO_C" >&6 --if test "${ac_cv_header_dbmalloc_h+set}" = set; then -+if test "$cf_result" = no ; then -+case $host_os in #(vi -+freebsd*) #(vi -+ echo "$as_me:4792: checking for tgoto in -lmytinfo" >&5 -+echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6 -+if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 4386 "configure" -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lmytinfo $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 4800 "configure" - #include "confdefs.h" --#include <dbmalloc.h> -+ -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char tgoto (); -+int -+main () -+{ -+tgoto (); -+ ; -+ return 0; -+} - _ACEOF --if { (eval echo "$as_me:4390: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:4819: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:4396: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- ac_cv_header_dbmalloc_h=yes -+ echo "$as_me:4822: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:4825: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:4828: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_lib_mytinfo_tgoto=yes - else - echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- ac_cv_header_dbmalloc_h=no -+cat conftest.$ac_ext >&5 -+ac_cv_lib_mytinfo_tgoto=no - fi --rm -f conftest.err conftest.$ac_ext -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:4839: result: $ac_cv_lib_mytinfo_tgoto" >&5 -+echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6 -+if test $ac_cv_lib_mytinfo_tgoto = yes; then -+ LIBS="-lmytinfo $LIBS" - fi --echo "$as_me:4415: result: $ac_cv_header_dbmalloc_h" >&5 --echo "${ECHO_T}$ac_cv_header_dbmalloc_h" >&6 --if test $ac_cv_header_dbmalloc_h = yes; then - --echo "$as_me:4419: checking for debug_malloc in -ldbmalloc" >&5 --echo $ECHO_N "checking for debug_malloc in -ldbmalloc... $ECHO_C" >&6 --if test "${ac_cv_lib_dbmalloc_debug_malloc+set}" = set; then -+ ;; -+hpux10.*) #(vi -+ # Looking at HPUX 10.20, the Hcurses library is the oldest (1997), cur_colr -+ # next (1998), and xcurses "newer" (2000). There is no header file for -+ # Hcurses; the subdirectory curses_colr has the headers (curses.h and -+ # term.h) for cur_colr -+ if test "x$cf_cv_screen" = "xcurses_colr" -+ then -+ echo "$as_me:4853: checking for initscr in -lcur_colr" >&5 -+echo $ECHO_N "checking for initscr in -lcur_colr... $ECHO_C" >&6 -+if test "${ac_cv_lib_cur_colr_initscr+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-ldbmalloc $LIBS" -+LIBS="-lcur_colr $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 4427 "configure" -+#line 4861 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -4433,313 +4867,115 @@ - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char debug_malloc (); -+char initscr (); - int - main () - { --debug_malloc (); -+initscr (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:4446: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:4880: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:4449: \$? = $ac_status" >&5 -+ echo "$as_me:4883: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:4452: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:4886: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4455: \$? = $ac_status" >&5 -+ echo "$as_me:4889: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_dbmalloc_debug_malloc=yes -+ ac_cv_lib_cur_colr_initscr=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_dbmalloc_debug_malloc=no -+ac_cv_lib_cur_colr_initscr=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:4466: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5 --echo "${ECHO_T}$ac_cv_lib_dbmalloc_debug_malloc" >&6 --if test $ac_cv_lib_dbmalloc_debug_malloc = yes; then -- cat >>confdefs.h <<EOF --#define HAVE_LIBDBMALLOC 1 --EOF -+echo "$as_me:4900: result: $ac_cv_lib_cur_colr_initscr" >&5 -+echo "${ECHO_T}$ac_cv_lib_cur_colr_initscr" >&6 -+if test $ac_cv_lib_cur_colr_initscr = yes; then - -- LIBS="-ldbmalloc $LIBS" -+ LIBS="-lcur_colr $LIBS" -+ ac_cv_func_initscr=yes - --fi -+else - --fi -+ echo "$as_me:4909: checking for initscr in -lHcurses" >&5 -+echo $ECHO_N "checking for initscr in -lHcurses... $ECHO_C" >&6 -+if test "${ac_cv_lib_Hcurses_initscr+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lHcurses $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 4917 "configure" -+#include "confdefs.h" - --fi -- --echo "$as_me:4481: checking if you want to use valgrind for testing" >&5 --echo $ECHO_N "checking if you want to use valgrind for testing... $ECHO_C" >&6 -- --# Check whether --with-valgrind or --without-valgrind was given. --if test "${with_valgrind+set}" = set; then -- withval="$with_valgrind" -- cat >>confdefs.h <<\EOF --#define USE_VALGRIND 1 --EOF -- -- : ${with_cflags:=-g} -- : ${with_no_leaks:=yes} -- with_valgrind=yes --else -- with_valgrind= --fi; --echo "$as_me:4497: result: ${with_valgrind:-no}" >&5 --echo "${ECHO_T}${with_valgrind:-no}" >&6 -- --case .$with_cflags in #(vi --.*-g*) -- case .$CFLAGS in #(vi -- .*-g*) #(vi -- ;; -- *) -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in -g --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -- -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -- --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -- -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -- --if test -n "$cf_new_cflags" ; then -- -- CFLAGS="$CFLAGS $cf_new_cflags" --fi -- --if test -n "$cf_new_cppflags" ; then -- -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" --fi -- --if test -n "$cf_new_extra_cppflags" ; then -- -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" --fi -- -- ;; -- esac -- ;; --esac -- --echo "$as_me:4590: checking if you want to perform memory-leak testing" >&5 --echo $ECHO_N "checking if you want to perform memory-leak testing... $ECHO_C" >&6 -- --# Check whether --enable-leaks or --disable-leaks was given. --if test "${enable_leaks+set}" = set; then -- enableval="$enable_leaks" -- if test "x$enableval" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi --else -- : ${with_no_leaks:=no} --fi; --echo "$as_me:4600: result: $with_no_leaks" >&5 --echo "${ECHO_T}$with_no_leaks" >&6 -- --if test "$with_no_leaks" = yes ; then -- cat >>confdefs.h <<\EOF --#define NO_LEAKS 1 --EOF -- -- cat >>confdefs.h <<\EOF --#define YY_NO_LEAKS 1 --EOF -- --fi -- --echo "$as_me:4614: checking for specific curses-directory" >&5 --echo $ECHO_N "checking for specific curses-directory... $ECHO_C" >&6 -- --# Check whether --with-curses-dir or --without-curses-dir was given. --if test "${with_curses_dir+set}" = set; then -- withval="$with_curses_dir" -- cf_cv_curses_dir=$withval --else -- cf_cv_curses_dir=no --fi; --echo "$as_me:4624: result: $cf_cv_curses_dir" >&5 --echo "${ECHO_T}$cf_cv_curses_dir" >&6 -- --if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" ) --then -- --if test "x$prefix" != xNONE; then -- cf_path_syntax="$prefix" --else -- cf_path_syntax="$ac_default_prefix" --fi -- --case ".$withval" in #(vi --.\$\(*\)*|.\'*\'*) #(vi -- ;; --..|./*|.\\*) #(vi -- ;; --.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX -- ;; --.\${*prefix}*) #(vi -- eval withval="$withval" -- case ".$withval" in #(vi -- .NONE/*) -- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` -- ;; -- esac -- ;; #(vi --.no|.NONE/*) -- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%` -- ;; --*) -- { { echo "$as_me:4655: error: expected a pathname, not \"$withval\"" >&5 --echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} -- { (exit 1); exit 1; }; } -- ;; --esac -- -- if test -d "$cf_cv_curses_dir" -- then -- --if test -n "$cf_cv_curses_dir/include" ; then -- for cf_add_incdir in $cf_cv_curses_dir/include -- do -- while test $cf_add_incdir != /usr/include -- do -- if test -d $cf_add_incdir -- then -- cf_have_incdir=no -- if test -n "$CFLAGS$CPPFLAGS" ; then -- # a loop is needed to ensure we can add subdirs of existing dirs -- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do -- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then -- cf_have_incdir=yes; break -- fi -- done -- fi -- -- if test "$cf_have_incdir" = no ; then -- if test "$cf_add_incdir" = /usr/local/include ; then -- if test "$GCC" = yes -- then -- cf_save_CPPFLAGS=$CPPFLAGS -- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -- cat >conftest.$ac_ext <<_ACEOF --#line 4688 "configure" --#include "confdefs.h" --#include <stdio.h> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char initscr (); - int - main () - { --printf("Hello") -+initscr (); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:4700: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:4936: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:4703: \$? = $ac_status" >&5 -+ echo "$as_me:4939: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:4706: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:4942: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4709: \$? = $ac_status" >&5 -+ echo "$as_me:4945: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ ac_cv_lib_Hcurses_initscr=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_have_incdir=yes -+ac_cv_lib_Hcurses_initscr=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- CPPFLAGS=$cf_save_CPPFLAGS -- fi -- fi -- fi -- -- if test "$cf_have_incdir" = no ; then -- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:4956: result: $ac_cv_lib_Hcurses_initscr" >&5 -+echo "${ECHO_T}$ac_cv_lib_Hcurses_initscr" >&6 -+if test $ac_cv_lib_Hcurses_initscr = yes; then - --echo "${as_me:-configure}:4726: testing adding $cf_add_incdir to include-path ..." 1>&5 -+ # HP's header uses __HP_CURSES, but user claims _HP_CURSES. -+ LIBS="-lHcurses $LIBS" -+ CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES" -+ ac_cv_func_initscr=yes - -- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -+fi - -- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` -- test "$cf_top_incdir" = "$cf_add_incdir" && break -- cf_add_incdir="$cf_top_incdir" -- else -- break -- fi -- fi -- done -- done - fi - --if test -n "$cf_cv_curses_dir/lib" ; then -- for cf_add_libdir in $cf_cv_curses_dir/lib -+ fi -+ ;; -+linux*) -+ case `arch 2>/dev/null` in -+ x86_64) -+ if test -d /lib64 -+ then -+ -+if test -n "/lib64" ; then -+ for cf_add_libdir in /lib64 - do - if test $cf_add_libdir = /usr/lib ; then - : -@@ -4757,7 +4993,7 @@ - if test "$cf_have_libdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 - --echo "${as_me:-configure}:4760: testing adding $cf_add_libdir to library-path ..." 1>&5 -+echo "${as_me:-configure}:4996: testing adding $cf_add_libdir to library-path ..." 1>&5 - - LDFLAGS="-L$cf_add_libdir $LDFLAGS" - fi -@@ -4765,370 +5001,339 @@ - done - fi - -- fi --fi -+ else - --# Check whether --with-5lib or --without-5lib was given. --if test "${with_5lib+set}" = set; then -- withval="$with_5lib" -- LIBS="-L/usr/5lib $LIBS" -- CPPFLAGS="$CPPFLAGS -I/usr/5include" --fi; -+if test -n "/lib" ; then -+ for cf_add_libdir in /lib -+ do -+ if test $cf_add_libdir = /usr/lib ; then -+ : -+ elif test -d $cf_add_libdir -+ then -+ cf_have_libdir=no -+ if test -n "$LDFLAGS$LIBS" ; then -+ # a loop is needed to ensure we can add subdirs of existing dirs -+ for cf_test_libdir in $LDFLAGS $LIBS ; do -+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then -+ cf_have_libdir=yes; break -+ fi -+ done -+ fi -+ if test "$cf_have_libdir" = no ; then -+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 - --# Check whether --with-ncursesw or --without-ncursesw was given. --if test "${with_ncursesw+set}" = set; then -- withval="$with_ncursesw" -- cf_cv_screen=ncursesw --else -+echo "${as_me:-configure}:5025: testing adding $cf_add_libdir to library-path ..." 1>&5 - --# Check whether --with-ncurses or --without-ncurses was given. --if test "${with_ncurses+set}" = set; then -- withval="$with_ncurses" -- cf_cv_screen=ncurses --else -+ LDFLAGS="-L$cf_add_libdir $LDFLAGS" -+ fi -+ fi -+ done -+fi - --# Check whether --with-pdcurses or --without-pdcurses was given. --if test "${with_pdcurses+set}" = set; then -- withval="$with_pdcurses" -- cf_cv_screen=pdcurses --fi; --fi; --fi; -+ fi -+ ;; -+ *) - --case $cf_cv_screen in --curses) -+if test -n "/lib" ; then -+ for cf_add_libdir in /lib -+ do -+ if test $cf_add_libdir = /usr/lib ; then -+ : -+ elif test -d $cf_add_libdir -+ then -+ cf_have_libdir=no -+ if test -n "$LDFLAGS$LIBS" ; then -+ # a loop is needed to ensure we can add subdirs of existing dirs -+ for cf_test_libdir in $LDFLAGS $LIBS ; do -+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then -+ cf_have_libdir=yes; break -+ fi -+ done -+ fi -+ if test "$cf_have_libdir" = no ; then -+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 - --echo "$as_me:4801: checking for extra include directories" >&5 --echo $ECHO_N "checking for extra include directories... $ECHO_C" >&6 --if test "${cf_cv_curses_incdir+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+echo "${as_me:-configure}:5056: testing adding $cf_add_libdir to library-path ..." 1>&5 - --cf_cv_curses_incdir=no --case $host_os in #(vi --hpux10.*) #(vi -- test -d /usr/include/curses_colr && \ -- cf_cv_curses_incdir="-I/usr/include/curses_colr" -+ LDFLAGS="-L$cf_add_libdir $LDFLAGS" -+ fi -+ fi -+ done -+fi -+ -+ ;; -+ esac - ;; - sunos3*|sunos4*) -- test -d /usr/5lib && \ -- test -d /usr/5include && \ -- cf_cv_curses_incdir="-I/usr/5include" -- ;; --esac -+ if test "x$cf_cv_screen" = "xcurses_5lib" -+ then -+ if test -d /usr/5lib ; then -+ -+if test -n "/usr/5lib" ; then -+ for cf_add_libdir in /usr/5lib -+ do -+ if test $cf_add_libdir = /usr/lib ; then -+ : -+ elif test -d $cf_add_libdir -+ then -+ cf_have_libdir=no -+ if test -n "$LDFLAGS$LIBS" ; then -+ # a loop is needed to ensure we can add subdirs of existing dirs -+ for cf_test_libdir in $LDFLAGS $LIBS ; do -+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then -+ cf_have_libdir=yes; break -+ fi -+ done -+ fi -+ if test "$cf_have_libdir" = no ; then -+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 -+ -+echo "${as_me:-configure}:5091: testing adding $cf_add_libdir to library-path ..." 1>&5 - -+ LDFLAGS="-L$cf_add_libdir $LDFLAGS" -+ fi -+ fi -+ done - fi --echo "$as_me:4821: result: $cf_cv_curses_incdir" >&5 --echo "${ECHO_T}$cf_cv_curses_incdir" >&6 --test "$cf_cv_curses_incdir" != no && CPPFLAGS="$CPPFLAGS $cf_cv_curses_incdir" - --echo "$as_me:4825: checking if we have identified curses headers" >&5 --echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6 --if test "${cf_cv_ncurses_header+set}" = set; then -+ LIBS="-lcurses -ltermcap $LIBS" -+ fi -+ fi -+ ac_cv_func_initscr=yes -+ ;; -+esac -+ -+if test ".$ac_cv_func_initscr" != .yes ; then -+ cf_save_LIBS="$LIBS" -+ -+ if test ".${cf_cv_ncurses_version:-no}" != .no -+ then -+ cf_check_list="ncurses curses cursesX" -+ else -+ cf_check_list="cursesX curses ncurses" -+ fi -+ -+ # Check for library containing tgoto. Do this before curses library -+ # because it may be needed to link the test-case for initscr. -+ if test "x$cf_term_lib" = x -+ then -+ echo "$as_me:5120: checking for tgoto" >&5 -+echo $ECHO_N "checking for tgoto... $ECHO_C" >&6 -+if test "${ac_cv_func_tgoto+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- --cf_cv_ncurses_header=none --for cf_header in \ -- curses.h \ -- ncurses.h ncurses/curses.h ncurses/ncurses.h --do --cat >conftest.$ac_ext <<_ACEOF --#line 4837 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 5126 "configure" - #include "confdefs.h" --#include <${cf_header}> -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char tgoto (); below. */ -+#include <assert.h> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char tgoto (); -+char (*f) (); -+ - int - main () - { --initscr(); tgoto("?", 0,0) -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_tgoto) || defined (__stub___tgoto) -+choke me -+#else -+f = tgoto; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:4849: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:5157: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:4852: \$? = $ac_status" >&5 -+ echo "$as_me:5160: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:4855: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:5163: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4858: \$? = $ac_status" >&5 -+ echo "$as_me:5166: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ncurses_header=$cf_header; break -+ ac_cv_func_tgoto=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+ac_cv_func_tgoto=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext --done -- --fi --echo "$as_me:4869: result: $cf_cv_ncurses_header" >&5 --echo "${ECHO_T}$cf_cv_ncurses_header" >&6 -- --if test "$cf_cv_ncurses_header" = none ; then -- { { echo "$as_me:4873: error: No curses header-files found" >&5 --echo "$as_me: error: No curses header-files found" >&2;} -- { (exit 1); exit 1; }; } --fi -- --# cheat, to get the right #define's for HAVE_NCURSES_H, etc. -- --for ac_header in $cf_cv_ncurses_header --do --as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:4883: checking for $ac_header" >&5 --echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Header+set}\" = set"; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 4889 "configure" --#include "confdefs.h" --#include <$ac_header> --_ACEOF --if { (eval echo "$as_me:4893: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -- ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:4899: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --if test -z "$ac_cpp_err"; then -- eval "$as_ac_Header=yes" -+echo "$as_me:5176: result: $ac_cv_func_tgoto" >&5 -+echo "${ECHO_T}$ac_cv_func_tgoto" >&6 -+if test $ac_cv_func_tgoto = yes; then -+ cf_term_lib=predefined - else -- echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- eval "$as_ac_Header=no" --fi --rm -f conftest.err conftest.$ac_ext --fi --echo "$as_me:4918: result: `eval echo '${'$as_ac_Header'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 --if test `eval echo '${'$as_ac_Header'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 --EOF -- --fi --done - --echo "$as_me:4928: checking for terminfo header" >&5 --echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6 --if test "${cf_cv_term_header+set}" = set; then -+ for cf_term_lib in $cf_check_list otermcap termcap tinfo termlib unknown -+ do -+ as_ac_Lib=`echo "ac_cv_lib_$cf_term_lib''_tgoto" | $as_tr_sh` -+echo "$as_me:5185: checking for tgoto in -l$cf_term_lib" >&5 -+echo $ECHO_N "checking for tgoto in -l$cf_term_lib... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Lib+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- --case ${cf_cv_ncurses_header} in #(vi --*/ncurses.h|*/ncursesw.h) #(vi -- cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'` -- ;; --*) -- cf_term_header=term.h -- ;; --esac -- --for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h" --do -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-l$cf_term_lib $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 4946 "configure" -+#line 5193 "configure" - #include "confdefs.h" --#include <stdio.h> --#include <${cf_cv_ncurses_header:-curses.h}> --#include <$cf_test> - -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char tgoto (); - int - main () - { --int x = auto_left_margin -+tgoto (); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:4961: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:4964: \$? = $ac_status" >&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:5212: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:5215: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:4967: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:5218: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:4970: \$? = $ac_status" >&5 -+ echo "$as_me:5221: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- -- cf_cv_term_header="$cf_test" -+ eval "$as_ac_Lib=yes" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -- -- cf_cv_term_header=unknown -- -+eval "$as_ac_Lib=no" - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- test "$cf_cv_term_header" != unknown && break --done -- -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:5232: result: `eval echo '${'$as_ac_Lib'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 -+if test `eval echo '${'$as_ac_Lib'}'` = yes; then -+ break - fi --echo "$as_me:4986: result: $cf_cv_term_header" >&5 --echo "${ECHO_T}$cf_cv_term_header" >&6 -- --# Set definitions to allow ifdef'ing to accommodate subdirectories -- --case $cf_cv_term_header in # (vi --*term.h) -- cat >>confdefs.h <<\EOF --#define HAVE_TERM_H 1 --EOF -- -- ;; --esac -- --case $cf_cv_term_header in # (vi --ncurses/term.h) #(vi -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSES_TERM_H 1 --EOF -- -- ;; --ncursesw/term.h) -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSESW_TERM_H 1 --EOF -- -- ;; --esac - --echo "$as_me:5015: checking for ncurses version" >&5 --echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6 --if test "${cf_cv_ncurses_version+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+ done - -- cf_cv_ncurses_version=no -- cf_tempfile=out$$ -- rm -f $cf_tempfile -- if test "$cross_compiling" = yes; then -+fi - -- # This will not work if the preprocessor splits the line after the -- # Autoconf token. The 'unproto' program does that. -- cat > conftest.$ac_ext <<EOF --#include <${cf_cv_ncurses_header:-curses.h}> --#undef Autoconf --#ifdef NCURSES_VERSION --Autoconf NCURSES_VERSION --#else --#ifdef __NCURSES_H --Autoconf "old" --#endif --; --#endif --EOF -- cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out" -- { (eval echo "$as_me:5041: \"$cf_try\"") >&5 -- (eval $cf_try) 2>&5 -- ac_status=$? -- echo "$as_me:5044: \$? = $ac_status" >&5 -- (exit $ac_status); } -- if test -f conftest.out ; then -- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'` -- test -n "$cf_out" && cf_cv_ncurses_version="$cf_out" -- rm -f conftest.out - fi - -+ # Check for library containing initscr -+ test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS" -+ if test "x$cf_curs_lib" = x -+ then -+ for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown -+ do -+ as_ac_Lib=`echo "ac_cv_lib_$cf_curs_lib''_initscr" | $as_tr_sh` -+echo "$as_me:5251: checking for initscr in -l$cf_curs_lib" >&5 -+echo $ECHO_N "checking for initscr in -l$cf_curs_lib... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Lib+set}\" = set"; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 5054 "configure" -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-l$cf_curs_lib $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 5259 "configure" - #include "confdefs.h" - --#include <${cf_cv_ncurses_header:-curses.h}> --#include <stdio.h> --int main() --{ -- FILE *fp = fopen("$cf_tempfile", "w"); --#ifdef NCURSES_VERSION --# ifdef NCURSES_VERSION_PATCH -- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH); --# else -- fprintf(fp, "%s\n", NCURSES_VERSION); --# endif --#else --# ifdef __NCURSES_H -- fprintf(fp, "old\n"); --# else -- make an error --# endif -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" - #endif -- ${cf_cv_main_return:-return}(0); -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char initscr (); -+int -+main () -+{ -+initscr (); -+ ; -+ return 0; - } - _ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:5079: \"$ac_link\"") >&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:5278: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5082: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:5084: \"$ac_try\"") >&5 -+ echo "$as_me:5281: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:5284: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5087: \$? = $ac_status" >&5 -+ echo "$as_me:5287: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- -- cf_cv_ncurses_version=`cat $cf_tempfile` -+ eval "$as_ac_Lib=yes" - else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 -+ echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+eval "$as_ac_Lib=no" - fi --rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS - fi -- rm -f $cf_tempfile -- -+echo "$as_me:5298: result: `eval echo '${'$as_ac_Lib'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 -+if test `eval echo '${'$as_ac_Lib'}'` = yes; then -+ break - fi --echo "$as_me:5101: result: $cf_cv_ncurses_version" >&5 --echo "${ECHO_T}$cf_cv_ncurses_version" >&6 --test "$cf_cv_ncurses_version" = no || cat >>confdefs.h <<\EOF --#define NCURSES 1 --EOF - --echo "$as_me:5107: checking if we have identified curses libraries" >&5 --echo $ECHO_N "checking if we have identified curses libraries... $ECHO_C" >&6 --cat >conftest.$ac_ext <<_ACEOF --#line 5110 "configure" -+ done -+ fi -+ test $cf_curs_lib = unknown && { { echo "$as_me:5306: error: no curses library found" >&5 -+echo "$as_me: error: no curses library found" >&2;} -+ { (exit 1); exit 1; }; } -+ -+ LIBS="-l$cf_curs_lib $cf_save_LIBS" -+ if test "$cf_term_lib" = unknown ; then -+ echo "$as_me:5312: checking if we can link with $cf_curs_lib library" >&5 -+echo $ECHO_N "checking if we can link with $cf_curs_lib library... $ECHO_C" >&6 -+ cat >conftest.$ac_ext <<_ACEOF -+#line 5315 "configure" - #include "confdefs.h" - #include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { --initscr(); tgoto("?", 0,0) -+initscr() - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5122: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5327: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5125: \$? = $ac_status" >&5 -+ echo "$as_me:5330: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5128: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5333: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5131: \$? = $ac_status" >&5 -+ echo "$as_me:5336: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_result=yes - else -@@ -5137,919 +5342,720 @@ - cf_result=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --echo "$as_me:5140: result: $cf_result" >&5 -+ echo "$as_me:5345: result: $cf_result" >&5 - echo "${ECHO_T}$cf_result" >&6 -- --if test "$cf_result" = no ; then --case $host_os in #(vi --freebsd*) #(vi -- echo "$as_me:5146: checking for tgoto in -lmytinfo" >&5 --echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6 --if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lmytinfo $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 5154 "configure" -+ test $cf_result = no && { { echo "$as_me:5347: error: Cannot link curses library" >&5 -+echo "$as_me: error: Cannot link curses library" >&2;} -+ { (exit 1); exit 1; }; } -+ elif test "$cf_curs_lib" = "$cf_term_lib" ; then -+ : -+ elif test "$cf_term_lib" != predefined ; then -+ echo "$as_me:5353: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5 -+echo $ECHO_N "checking if we need both $cf_curs_lib and $cf_term_lib libraries... $ECHO_C" >&6 -+ cat >conftest.$ac_ext <<_ACEOF -+#line 5356 "configure" - #include "confdefs.h" -- --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char tgoto (); -+#include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { --tgoto (); -+initscr(); tgoto((char *)0, 0, 0); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5173: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5368: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5176: \$? = $ac_status" >&5 -+ echo "$as_me:5371: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5179: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5374: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5182: \$? = $ac_status" >&5 -+ echo "$as_me:5377: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_mytinfo_tgoto=yes -+ cf_result=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_mytinfo_tgoto=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:5193: result: $ac_cv_lib_mytinfo_tgoto" >&5 --echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6 --if test $ac_cv_lib_mytinfo_tgoto = yes; then -- LIBS="-lmytinfo $LIBS" --fi - -- ;; --hpux10.*) #(vi -- echo "$as_me:5201: checking for initscr in -lcur_colr" >&5 --echo $ECHO_N "checking for initscr in -lcur_colr... $ECHO_C" >&6 --if test "${ac_cv_lib_cur_colr_initscr+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lcur_colr $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 5209 "configure" -+ LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 5386 "configure" - #include "confdefs.h" -- --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char initscr (); -+#include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { --initscr (); -+initscr() - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5228: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:5398: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:5231: \$? = $ac_status" >&5 -+ echo "$as_me:5401: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5234: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5404: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5237: \$? = $ac_status" >&5 -+ echo "$as_me:5407: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_cur_colr_initscr=yes -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_cur_colr_initscr=no -+cf_result=error - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS -+ -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ echo "$as_me:5419: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+ fi -+fi - fi --echo "$as_me:5248: result: $ac_cv_lib_cur_colr_initscr" >&5 --echo "${ECHO_T}$ac_cv_lib_cur_colr_initscr" >&6 --if test $ac_cv_lib_cur_colr_initscr = yes; then - -- LIBS="-lcur_colr $LIBS" -- ac_cv_func_initscr=yes -+ ;; -+ncurses) #(vi - --else -+cf_ncuconfig_root=ncurses - -- echo "$as_me:5257: checking for initscr in -lHcurses" >&5 --echo $ECHO_N "checking for initscr in -lHcurses... $ECHO_C" >&6 --if test "${ac_cv_lib_Hcurses_initscr+set}" = set; then -+echo "Looking for ${cf_ncuconfig_root}-config" -+ -+if test -n "$ac_tool_prefix"; then -+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:5437: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lHcurses $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 5265 "configure" --#include "confdefs.h" -+ if test -n "$NCURSES_CONFIG"; then -+ ac_cv_prog_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog" -+echo "$as_me:5452: found $ac_dir/$ac_word" >&5 -+break -+done - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char initscr (); --int --main () --{ --initscr (); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5284: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:5287: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5290: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:5293: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_lib_Hcurses_initscr=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_lib_Hcurses_initscr=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:5304: result: $ac_cv_lib_Hcurses_initscr" >&5 --echo "${ECHO_T}$ac_cv_lib_Hcurses_initscr" >&6 --if test $ac_cv_lib_Hcurses_initscr = yes; then -- -- # HP's header uses __HP_CURSES, but user claims _HP_CURSES. -- LIBS="-lHcurses $LIBS" -- CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES" -- ac_cv_func_initscr=yes -- - fi -- -+NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG -+if test -n "$NCURSES_CONFIG"; then -+ echo "$as_me:5460: result: $NCURSES_CONFIG" >&5 -+echo "${ECHO_T}$NCURSES_CONFIG" >&6 -+else -+ echo "$as_me:5463: result: no" >&5 -+echo "${ECHO_T}no" >&6 - fi - -- ;; --linux*) -- case `arch 2>/dev/null` in -- x86_64) -- if test -d /lib64 -- then -- --if test -n "/lib64" ; then -- for cf_add_libdir in /lib64 -- do -- if test $cf_add_libdir = /usr/lib ; then -- : -- elif test -d $cf_add_libdir -- then -- cf_have_libdir=no -- if test -n "$LDFLAGS$LIBS" ; then -- # a loop is needed to ensure we can add subdirs of existing dirs -- for cf_test_libdir in $LDFLAGS $LIBS ; do -- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then -- cf_have_libdir=yes; break -- fi -- done -- fi -- if test "$cf_have_libdir" = no ; then -- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 -- --echo "${as_me:-configure}:5343: testing adding $cf_add_libdir to library-path ..." 1>&5 -- -- LDFLAGS="-L$cf_add_libdir $LDFLAGS" -- fi -- fi -+ test -n "$NCURSES_CONFIG" && break - done - fi -+if test -z "$NCURSES_CONFIG"; then -+ ac_ct_NCURSES_CONFIG=$NCURSES_CONFIG -+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:5476: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_NCURSES_CONFIG"; then -+ ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_ct_NCURSES_CONFIG" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog" -+echo "$as_me:5491: found $ac_dir/$ac_word" >&5 -+break -+done - -- else -- --if test -n "/lib" ; then -- for cf_add_libdir in /lib -- do -- if test $cf_add_libdir = /usr/lib ; then -- : -- elif test -d $cf_add_libdir -- then -- cf_have_libdir=no -- if test -n "$LDFLAGS$LIBS" ; then -- # a loop is needed to ensure we can add subdirs of existing dirs -- for cf_test_libdir in $LDFLAGS $LIBS ; do -- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then -- cf_have_libdir=yes; break -- fi -- done -- fi -- if test "$cf_have_libdir" = no ; then -- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 -- --echo "${as_me:-configure}:5372: testing adding $cf_add_libdir to library-path ..." 1>&5 -- -- LDFLAGS="-L$cf_add_libdir $LDFLAGS" -- fi -- fi -- done - fi -- -- fi -- ;; -- *) -- --if test -n "/lib" ; then -- for cf_add_libdir in /lib -- do -- if test $cf_add_libdir = /usr/lib ; then -- : -- elif test -d $cf_add_libdir -- then -- cf_have_libdir=no -- if test -n "$LDFLAGS$LIBS" ; then -- # a loop is needed to ensure we can add subdirs of existing dirs -- for cf_test_libdir in $LDFLAGS $LIBS ; do -- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then -- cf_have_libdir=yes; break -- fi -- done -- fi -- if test "$cf_have_libdir" = no ; then -- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 -- --echo "${as_me:-configure}:5403: testing adding $cf_add_libdir to library-path ..." 1>&5 -- -- LDFLAGS="-L$cf_add_libdir $LDFLAGS" -- fi -- fi -- done -+fi -+ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG -+if test -n "$ac_ct_NCURSES_CONFIG"; then -+ echo "$as_me:5499: result: $ac_ct_NCURSES_CONFIG" >&5 -+echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6 -+else -+ echo "$as_me:5502: result: no" >&5 -+echo "${ECHO_T}no" >&6 - fi - -- ;; -- esac -- ;; --sunos3*|sunos4*) -- if test -d /usr/5lib ; then -- --if test -n "/usr/5lib" ; then -- for cf_add_libdir in /usr/5lib -- do -- if test $cf_add_libdir = /usr/lib ; then -- : -- elif test -d $cf_add_libdir -- then -- cf_have_libdir=no -- if test -n "$LDFLAGS$LIBS" ; then -- # a loop is needed to ensure we can add subdirs of existing dirs -- for cf_test_libdir in $LDFLAGS $LIBS ; do -- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then -- cf_have_libdir=yes; break -- fi -- done -- fi -- if test "$cf_have_libdir" = no ; then -- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 -- --echo "${as_me:-configure}:5436: testing adding $cf_add_libdir to library-path ..." 1>&5 -+ test -n "$ac_ct_NCURSES_CONFIG" && break -+done -+test -n "$ac_ct_NCURSES_CONFIG" || ac_ct_NCURSES_CONFIG="none" - -- LDFLAGS="-L$cf_add_libdir $LDFLAGS" -- fi -- fi -- done -+ NCURSES_CONFIG=$ac_ct_NCURSES_CONFIG - fi - -- LIBS="-lcurses -ltermcap $LIBS" -- fi -- ac_cv_func_initscr=yes -- ;; --esac -+if test "$NCURSES_CONFIG" != none ; then - --if test ".$ac_cv_func_initscr" != .yes ; then -- cf_save_LIBS="$LIBS" -- cf_term_lib="" -- cf_curs_lib="" -+CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`" -+LIBS="`$NCURSES_CONFIG --libs` $LIBS" - -- if test ".${cf_cv_ncurses_version:-no}" != .no -- then -- cf_check_list="ncurses curses cursesX" -- else -- cf_check_list="cursesX curses ncurses" -- fi -+# even with config script, some packages use no-override for curses.h - -- # Check for library containing tgoto. Do this before curses library -- # because it may be needed to link the test-case for initscr. -- echo "$as_me:5464: checking for tgoto" >&5 --echo $ECHO_N "checking for tgoto... $ECHO_C" >&6 --if test "${ac_cv_func_tgoto+set}" = set; then -+echo "$as_me:5520: checking if we have identified curses headers" >&5 -+echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_header+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 5470 "configure" --#include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char tgoto (); below. */ --#include <assert.h> --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char tgoto (); --char (*f) (); - -+cf_cv_ncurses_header=none -+for cf_header in \ -+ ncurses/ncurses.h \ -+ ncurses/curses.h \ -+ ncurses.h \ -+ curses.h -+do -+cat >conftest.$ac_ext <<_ACEOF -+#line 5534 "configure" -+#include "confdefs.h" -+#include <${cf_header}> - int - main () - { --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_tgoto) || defined (__stub___tgoto) --choke me --#else --f = tgoto; --#endif -- -+initscr(); tgoto("?", 0,0) - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5501: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:5546: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5504: \$? = $ac_status" >&5 -+ echo "$as_me:5549: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5507: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:5552: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5510: \$? = $ac_status" >&5 -+ echo "$as_me:5555: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_func_tgoto=yes -+ cf_cv_ncurses_header=$cf_header; break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_func_tgoto=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+done -+ - fi --echo "$as_me:5520: result: $ac_cv_func_tgoto" >&5 --echo "${ECHO_T}$ac_cv_func_tgoto" >&6 --if test $ac_cv_func_tgoto = yes; then -- cf_term_lib=predefined --else -+echo "$as_me:5566: result: $cf_cv_ncurses_header" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_header" >&6 - -- for cf_term_lib in $cf_check_list termcap termlib unknown -- do -- as_ac_Lib=`echo "ac_cv_lib_$cf_term_lib''_tgoto" | $as_tr_sh` --echo "$as_me:5529: checking for tgoto in -l$cf_term_lib" >&5 --echo $ECHO_N "checking for tgoto in -l$cf_term_lib... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Lib+set}\" = set"; then -+if test "$cf_cv_ncurses_header" = none ; then -+ { { echo "$as_me:5570: error: No curses header-files found" >&5 -+echo "$as_me: error: No curses header-files found" >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+# cheat, to get the right #define's for HAVE_NCURSES_H, etc. -+ -+for ac_header in $cf_cv_ncurses_header -+do -+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -+echo "$as_me:5580: checking for $ac_header" >&5 -+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-l$cf_term_lib $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 5537 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 5586 "configure" - #include "confdefs.h" -- --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char tgoto (); --int --main () --{ --tgoto (); -- ; -- return 0; --} -+#include <$ac_header> - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5556: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:5559: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5562: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -+if { (eval echo "$as_me:5590: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? -- echo "$as_me:5565: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- eval "$as_ac_Lib=yes" -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:5596: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ eval "$as_ac_Header=yes" - else - echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --eval "$as_ac_Lib=no" -+ cat conftest.$ac_ext >&5 -+ eval "$as_ac_Header=no" - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS -+rm -f conftest.err conftest.$ac_ext - fi --echo "$as_me:5576: result: `eval echo '${'$as_ac_Lib'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 --if test `eval echo '${'$as_ac_Lib'}'` = yes; then -- break -+echo "$as_me:5615: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -+if test `eval echo '${'$as_ac_Header'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -+EOF -+ - fi -+done - -- done -+cat >>confdefs.h <<\EOF -+#define NCURSES 1 -+EOF - --fi -+cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - -- # Check for library containing initscr -- test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS" -- for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown -- do -- as_ac_Lib=`echo "ac_cv_lib_$cf_curs_lib''_initscr" | $as_tr_sh` --echo "$as_me:5591: checking for initscr in -l$cf_curs_lib" >&5 --echo $ECHO_N "checking for initscr in -l$cf_curs_lib... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Lib+set}\" = set"; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-l$cf_curs_lib $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 5599 "configure" --#include "confdefs.h" -+cat >>confdefs.h <<EOF -+#define $cf_nculib_ROOT 1 -+EOF -+ -+cf_cv_ncurses_version=`$NCURSES_CONFIG --version` - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char initscr (); --int --main () --{ --initscr (); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5618: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:5621: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5624: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:5627: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- eval "$as_ac_Lib=yes" - else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --eval "$as_ac_Lib=no" --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:5638: result: `eval echo '${'$as_ac_Lib'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 --if test `eval echo '${'$as_ac_Lib'}'` = yes; then -- break --fi - -- done -- test $cf_curs_lib = unknown && { { echo "$as_me:5645: error: no curses library found" >&5 --echo "$as_me: error: no curses library found" >&2;} -- { (exit 1); exit 1; }; } -+cf_ncuhdr_root=ncurses - -- LIBS="-l$cf_curs_lib $cf_save_LIBS" -- if test "$cf_term_lib" = unknown ; then -- echo "$as_me:5651: checking if we can link with $cf_curs_lib library" >&5 --echo $ECHO_N "checking if we can link with $cf_curs_lib library... $ECHO_C" >&6 -- cat >conftest.$ac_ext <<_ACEOF --#line 5654 "configure" -+test -n "$cf_cv_curses_dir" && \ -+test "$cf_cv_curses_dir" != "no" && { \ -+ -+if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then -+ for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root -+ do -+ while test $cf_add_incdir != /usr/include -+ do -+ if test -d $cf_add_incdir -+ then -+ cf_have_incdir=no -+ if test -n "$CFLAGS$CPPFLAGS" ; then -+ # a loop is needed to ensure we can add subdirs of existing dirs -+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do -+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then -+ cf_have_incdir=yes; break -+ fi -+ done -+ fi -+ -+ if test "$cf_have_incdir" = no ; then -+ if test "$cf_add_incdir" = /usr/local/include ; then -+ if test "$GCC" = yes -+ then -+ cf_save_CPPFLAGS=$CPPFLAGS -+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 5668 "configure" - #include "confdefs.h" --#include <${cf_cv_ncurses_header:-curses.h}> -+#include <stdio.h> - int - main () - { --initscr() -+printf("Hello") - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5666: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:5680: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5669: \$? = $ac_status" >&5 -+ echo "$as_me:5683: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5672: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:5686: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5675: \$? = $ac_status" >&5 -+ echo "$as_me:5689: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_result=yes -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_result=no -+cf_have_incdir=yes - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- echo "$as_me:5684: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 -- test $cf_result = no && { { echo "$as_me:5686: error: Cannot link curses library" >&5 --echo "$as_me: error: Cannot link curses library" >&2;} -- { (exit 1); exit 1; }; } -- elif test "$cf_curs_lib" = "$cf_term_lib" ; then -- : -- elif test "$cf_term_lib" != predefined ; then -- echo "$as_me:5692: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5 --echo $ECHO_N "checking if we need both $cf_curs_lib and $cf_term_lib libraries... $ECHO_C" >&6 -- cat >conftest.$ac_ext <<_ACEOF --#line 5695 "configure" --#include "confdefs.h" --#include <${cf_cv_ncurses_header:-curses.h}> --int --main () --{ --initscr(); tgoto((char *)0, 0, 0); -- ; -- return 0; -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS=$cf_save_CPPFLAGS -+ fi -+ fi -+ fi -+ -+ if test "$cf_have_incdir" = no ; then -+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 -+ -+echo "${as_me:-configure}:5706: testing adding $cf_add_incdir to include-path ..." 1>&5 -+ -+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -+ -+ cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` -+ test "$cf_top_incdir" = "$cf_add_incdir" && break -+ cf_add_incdir="$cf_top_incdir" -+ else -+ break -+ fi -+ fi -+ done -+ done -+fi -+ - } --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5707: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:5710: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5713: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:5716: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_result=no -+ -+echo "$as_me:5723: checking for $cf_ncuhdr_root header in include-path" >&5 -+echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 - -- LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS" -- cat >conftest.$ac_ext <<_ACEOF --#line 5725 "configure" -+ cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h" -+ ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h" -+ for cf_header in $cf_header_list -+ do -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 5735 "configure" - #include "confdefs.h" --#include <${cf_cv_ncurses_header:-curses.h}> -+ -+#include <$cf_header> - int - main () - { --initscr() -+ -+#ifdef NCURSES_VERSION -+ -+printf("%s\n", NCURSES_VERSION); -+#else -+#ifdef __NCURSES_H -+printf("old\n"); -+#else -+ make an error -+#endif -+#endif -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:5737: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:5759: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5740: \$? = $ac_status" >&5 -+ echo "$as_me:5762: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:5743: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:5765: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5746: \$? = $ac_status" >&5 -+ echo "$as_me:5768: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_result=yes -+ cf_cv_ncurses_h=$cf_header -+ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_result=error -+cf_cv_ncurses_h=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+ -+ test "$cf_cv_ncurses_h" != no && break -+ done - - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- echo "$as_me:5758: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 -- fi --fi --fi -+echo "$as_me:5783: result: $cf_cv_ncurses_h" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_h" >&6 - --echo "$as_me:5764: checking for NetBSD form.h" >&5 --echo $ECHO_N "checking for NetBSD form.h... $ECHO_C" >&6 --if test "${cf_cv_netbsd_form_h+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 -+if test "$cf_cv_ncurses_h" != no ; then -+ cf_cv_ncurses_header=$cf_cv_ncurses_h - else - --cat >conftest.$ac_ext <<_ACEOF --#line 5771 "configure" --#include "confdefs.h" -+echo "$as_me:5790: checking for $cf_ncuhdr_root include-path" >&5 -+echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_h2+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - --#include <${cf_cv_ncurses_header:-curses.h}> --#include <form.h> -+ test -n "$verbose" && echo - --int --main () --{ -+cf_search= - -- FORM *form; -- int y = current_field(form)->cursor_ypos; -- int x = current_field(form)->cursor_xpos; -+# collect the current set of include-directories from compiler flags -+cf_header_path_list="" -+if test -n "${CFLAGS}${CPPFLAGS}" ; then -+ for cf_header_path in $CPPFLAGS $CFLAGS -+ do -+ case $cf_header_path in #(vi -+ -I*) -+ cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'` - -- ; -- return 0; -+test "x$cf_header_path" != "xNONE" && \ -+test -d "$cf_header_path" && \ -+ { -+ test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path" -+ test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include" -+ test -d $cf_header_path/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root" -+ test -d $cf_header_path/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include" -+ test -d $cf_header_path/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include" -+ test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:5790: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:5793: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:5796: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:5799: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_cv_netbsd_form_h=yes - --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --cf_cv_netbsd_form_h=no -+ cf_header_path_list="$cf_header_path_list $cf_search" -+ ;; -+ esac -+ done - fi --rm -f conftest.$ac_objext conftest.$ac_ext - --fi --echo "$as_me:5811: result: $cf_cv_netbsd_form_h" >&5 --echo "${ECHO_T}$cf_cv_netbsd_form_h" >&6 -+# add the variations for the package we are looking for - --test "$cf_cv_netbsd_form_h" = yes && cat >>confdefs.h <<\EOF --#define HAVE_NETBSD_FORM_H 1 --EOF -+cf_search= - --echo "$as_me:5818: checking for NetBSD menu.h" >&5 --echo $ECHO_N "checking for NetBSD menu.h... $ECHO_C" >&6 --if test "${cf_cv_netbsd_menu_h+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+test "x/usr" != "x$prefix" && \ -+test -d "/usr" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for include-directories under /usr" -+ test -d /usr/include && cf_search="$cf_search /usr/include" -+ test -d /usr/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/include/$cf_ncuhdr_root" -+ test -d /usr/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include" -+ test -d /usr/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/$cf_ncuhdr_root/include" -+ test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root" -+} - --cat >conftest.$ac_ext <<_ACEOF --#line 5825 "configure" --#include "confdefs.h" -+test "x$prefix" != "xNONE" && \ -+test -d "$prefix" && \ -+ { -+ test -n "$verbose" && echo " ... testing for include-directories under $prefix" -+ test -d $prefix/include && cf_search="$cf_search $prefix/include" -+ test -d $prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root" -+ test -d $prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include" -+ test -d $prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include" -+ test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" -+} - --#include <${cf_cv_ncurses_header:-curses.h}> --#include <menu.h> -+test "x/usr/local" != "x$prefix" && \ -+test -d "/usr/local" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for include-directories under /usr/local" -+ test -d /usr/local/include && cf_search="$cf_search /usr/local/include" -+ test -d /usr/local/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root" -+ test -d /usr/local/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include" -+ test -d /usr/local/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include" -+ test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root" -+} -+ -+test "x/opt" != "x$prefix" && \ -+test -d "/opt" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for include-directories under /opt" -+ test -d /opt/include && cf_search="$cf_search /opt/include" -+ test -d /opt/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/include/$cf_ncuhdr_root" -+ test -d /opt/include/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include" -+ test -d /opt/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/$cf_ncuhdr_root/include" -+ test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root" -+} -+ -+test "x$HOME" != "x$prefix" && \ -+test -d "$HOME" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for include-directories under $HOME" -+ test -d $HOME/include && cf_search="$cf_search $HOME/include" -+ test -d $HOME/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root" -+ test -d $HOME/include/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include" -+ test -d $HOME/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include" -+ test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root" -+} -+ -+test "$includedir" != NONE && \ -+test "$includedir" != "/usr/include" && \ -+test -d "$includedir" && { -+ test -d $includedir && cf_search="$cf_search $includedir" -+ test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root" -+} -+ -+test "$oldincludedir" != NONE && \ -+test "$oldincludedir" != "/usr/include" && \ -+test -d "$oldincludedir" && { -+ test -d $oldincludedir && cf_search="$cf_search $oldincludedir" -+ test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root" -+} -+ -+cf_search="$cf_search $cf_header_path_list" -+ -+ test -n "$verbose" && echo search path $cf_search -+ cf_save2_CPPFLAGS="$CPPFLAGS" -+ for cf_incdir in $cf_search -+ do -+ -+if test -n "$cf_incdir" ; then -+ for cf_add_incdir in $cf_incdir -+ do -+ while test $cf_add_incdir != /usr/include -+ do -+ if test -d $cf_add_incdir -+ then -+ cf_have_incdir=no -+ if test -n "$CFLAGS$CPPFLAGS" ; then -+ # a loop is needed to ensure we can add subdirs of existing dirs -+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do -+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then -+ cf_have_incdir=yes; break -+ fi -+ done -+ fi - -+ if test "$cf_have_incdir" = no ; then -+ if test "$cf_add_incdir" = /usr/local/include ; then -+ if test "$GCC" = yes -+ then -+ cf_save_CPPFLAGS=$CPPFLAGS -+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 5930 "configure" -+#include "confdefs.h" -+#include <stdio.h> - int - main () - { -- -- MENU *menu; -- int y = menu->max_item_width; -- -+printf("Hello") - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:5843: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:5942: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5846: \$? = $ac_status" >&5 -+ echo "$as_me:5945: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:5849: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:5948: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5852: \$? = $ac_status" >&5 -+ echo "$as_me:5951: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_netbsd_menu_h=yes -- -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_netbsd_menu_h=no -+cf_have_incdir=yes - fi - rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS=$cf_save_CPPFLAGS -+ fi -+ fi -+ fi - --fi --echo "$as_me:5864: result: $cf_cv_netbsd_menu_h" >&5 --echo "${ECHO_T}$cf_cv_netbsd_menu_h" >&6 -- --test "$cf_cv_netbsd_menu_h" = yes && cat >>confdefs.h <<\EOF --#define HAVE_NETBSD_MENU_H 1 --EOF -- -- ;; --ncurses) -- --cf_ncuconfig_root=ncurses -+ if test "$cf_have_incdir" = no ; then -+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "Looking for ${cf_ncuconfig_root}-config" --for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config --do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 --echo "$as_me:5881: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_path_NCURSES_CONFIG+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- case $NCURSES_CONFIG in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test with a path. -- ;; -- *) -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- if $as_executable_p "$ac_dir/$ac_word"; then -- ac_cv_path_NCURSES_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:5898: found $ac_dir/$ac_word" >&5 -- break --fi --done -+echo "${as_me:-configure}:5968: testing adding $cf_add_incdir to include-path ..." 1>&5 - -- ;; --esac --fi --NCURSES_CONFIG=$ac_cv_path_NCURSES_CONFIG -+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - --if test -n "$NCURSES_CONFIG"; then -- echo "$as_me:5909: result: $NCURSES_CONFIG" >&5 --echo "${ECHO_T}$NCURSES_CONFIG" >&6 --else -- echo "$as_me:5912: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` -+ test "$cf_top_incdir" = "$cf_add_incdir" && break -+ cf_add_incdir="$cf_top_incdir" -+ else -+ break -+ fi -+ fi -+ done -+ done - fi - -- test -n "$NCURSES_CONFIG" && break --done --test -n "$NCURSES_CONFIG" || NCURSES_CONFIG="none" -- --if test "$NCURSES_CONFIG" != none ; then -- --CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`" --LIBS="`$NCURSES_CONFIG --libs` $LIBS" -- --# even with config script, some packages use no-override for curses.h -- --echo "$as_me:5927: checking if we have identified curses headers" >&5 --echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6 --if test "${cf_cv_ncurses_header+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+ for cf_header in \ -+ ncurses.h \ -+ curses.h -+ do - --cf_cv_ncurses_header=none --for cf_header in \ -- ncurses/curses.h \ -- ncurses/ncurses.h \ -- curses.h \ -- ncurses.h --do --cat >conftest.$ac_ext <<_ACEOF --#line 5941 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 5989 "configure" - #include "confdefs.h" --#include <${cf_header}> -+ -+#include <$cf_header> - int - main () - { --initscr(); tgoto("?", 0,0) -+ -+#ifdef NCURSES_VERSION -+ -+printf("%s\n", NCURSES_VERSION); -+#else -+#ifdef __NCURSES_H -+printf("old\n"); -+#else -+ make an error -+#endif -+#endif -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:5953: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:6013: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:5956: \$? = $ac_status" >&5 -+ echo "$as_me:6016: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:5959: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6019: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:5962: \$? = $ac_status" >&5 -+ echo "$as_me:6022: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ncurses_header=$cf_header; break --else -+ cf_cv_ncurses_h2=$cf_header -+ -+else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_cv_ncurses_h2=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext --done -- --fi --echo "$as_me:5973: result: $cf_cv_ncurses_header" >&5 --echo "${ECHO_T}$cf_cv_ncurses_header" >&6 - --if test "$cf_cv_ncurses_header" = none ; then -- { { echo "$as_me:5977: error: No curses header-files found" >&5 --echo "$as_me: error: No curses header-files found" >&2;} -+ if test "$cf_cv_ncurses_h2" != no ; then -+ cf_cv_ncurses_h2=$cf_incdir/$cf_header -+ test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&6 -+ break -+ fi -+ test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6 -+ done -+ CPPFLAGS="$cf_save2_CPPFLAGS" -+ test "$cf_cv_ncurses_h2" != no && break -+ done -+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:6043: error: not found" >&5 -+echo "$as_me: error: not found" >&2;} - { (exit 1); exit 1; }; } --fi -- --# cheat, to get the right #define's for HAVE_NCURSES_H, etc. -- --for ac_header in $cf_cv_ncurses_header --do --as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:5987: checking for $ac_header" >&5 --echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Header+set}\" = set"; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 5993 "configure" --#include "confdefs.h" --#include <$ac_header> --_ACEOF --if { (eval echo "$as_me:5997: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -- ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:6003: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- eval "$as_ac_Header=yes" --else -- echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- eval "$as_ac_Header=no" --fi --rm -f conftest.err conftest.$ac_ext --fi --echo "$as_me:6022: result: `eval echo '${'$as_ac_Header'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 --if test `eval echo '${'$as_ac_Header'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 --EOF - - fi --done -- --cat >>confdefs.h <<\EOF --#define NCURSES 1 --EOF -- --cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -- --cat >>confdefs.h <<EOF --#define $cf_nculib_ROOT 1 --EOF -- --cf_cv_ncurses_version=`$NCURSES_CONFIG --version` -- --else -- --cf_ncuhdr_root=ncurses -+echo "$as_me:6048: result: $cf_cv_ncurses_h2" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_h2" >&6 - --test -n "$cf_cv_curses_dir" && \ --test "$cf_cv_curses_dir" != "no" && { \ -+ cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'` -+ cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2` -+ if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then -+ cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header -+ fi - --if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then -- for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root -+if test -n "$cf_1st_incdir" ; then -+ for cf_add_incdir in $cf_1st_incdir - do - while test $cf_add_incdir != /usr/include - do -@@ -6072,7 +6078,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 6075 "configure" -+#line 6081 "configure" - #include "confdefs.h" - #include <stdio.h> - int -@@ -6084,16 +6090,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:6087: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:6093: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:6090: \$? = $ac_status" >&5 -+ echo "$as_me:6096: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6093: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6099: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6096: \$? = $ac_status" >&5 -+ echo "$as_me:6102: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -6110,7 +6116,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:6113: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:6119: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -6125,771 +6131,765 @@ - done - fi - --} -+fi - --echo "$as_me:6130: checking for $cf_ncuhdr_root header in include-path" >&5 --echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6 --if test "${cf_cv_ncurses_h+set}" = set; then -+# Set definitions to allow ifdef'ing for ncurses.h -+ -+case $cf_cv_ncurses_header in # (vi -+*ncurses.h) -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSES_H 1 -+EOF -+ -+ ;; -+esac -+ -+case $cf_cv_ncurses_header in # (vi -+ncurses/curses.h|ncurses/ncurses.h) -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSES_NCURSES_H 1 -+EOF -+ -+ ;; -+ncursesw/curses.h|ncursesw/ncurses.h) -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSESW_NCURSES_H 1 -+EOF -+ -+ ;; -+esac -+ -+echo "$as_me:6165: checking for terminfo header" >&5 -+echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6 -+if test "${cf_cv_term_header+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - -- cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h" -- ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h" -- for cf_header in $cf_header_list -- do -+case ${cf_cv_ncurses_header} in #(vi -+*/ncurses.h|*/ncursesw.h) #(vi -+ cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'` -+ ;; -+*) -+ cf_term_header=term.h -+ ;; -+esac - -- cat >conftest.$ac_ext <<_ACEOF --#line 6142 "configure" -+for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h" -+do -+cat >conftest.$ac_ext <<_ACEOF -+#line 6183 "configure" - #include "confdefs.h" -+#include <stdio.h> -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <$cf_test> - --#include <$cf_header> - int - main () - { -- --#ifdef NCURSES_VERSION -- --printf("%s\n", NCURSES_VERSION); --#else --#ifdef __NCURSES_H --printf("old\n"); --#else -- make an error --#endif --#endif -- -+int x = auto_left_margin - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:6166: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:6198: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:6169: \$? = $ac_status" >&5 -+ echo "$as_me:6201: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6172: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6204: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6175: \$? = $ac_status" >&5 -+ echo "$as_me:6207: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ncurses_h=$cf_header - -+ cf_cv_term_header="$cf_test" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_ncurses_h=no -+ -+ cf_cv_term_header=unknown -+ - fi - rm -f conftest.$ac_objext conftest.$ac_ext -- -- test "$cf_cv_ncurses_h" != no && break -- done -+ test "$cf_cv_term_header" != unknown && break -+done - - fi --echo "$as_me:6190: result: $cf_cv_ncurses_h" >&5 --echo "${ECHO_T}$cf_cv_ncurses_h" >&6 -+echo "$as_me:6223: result: $cf_cv_term_header" >&5 -+echo "${ECHO_T}$cf_cv_term_header" >&6 - --if test "$cf_cv_ncurses_h" != no ; then -- cf_cv_ncurses_header=$cf_cv_ncurses_h --else -+# Set definitions to allow ifdef'ing to accommodate subdirectories - --echo "$as_me:6197: checking for $cf_ncuhdr_root include-path" >&5 --echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6 --if test "${cf_cv_ncurses_h2+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+case $cf_cv_term_header in # (vi -+*term.h) - -- test -n "$verbose" && echo -+cat >>confdefs.h <<\EOF -+#define HAVE_TERM_H 1 -+EOF - --cf_search= -+ ;; -+esac - --# collect the current set of include-directories from compiler flags --cf_header_path_list="" --if test -n "${CFLAGS}${CPPFLAGS}" ; then -- for cf_header_path in $CPPFLAGS $CFLAGS -- do -- case $cf_header_path in #(vi -- -I*) -- cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'` -+case $cf_cv_term_header in # (vi -+ncurses/term.h) #(vi - --test "$cf_header_path" != "NONE" && \ --test -d "$cf_header_path" && \ -- { -- test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path" -- test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include" -- test -d $cf_header_path/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root" -- test -d $cf_header_path/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include" -- test -d $cf_header_path/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include" -- test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSES_TERM_H 1 -+EOF - -- cf_header_path_list="$cf_header_path_list $cf_search" -- ;; -- esac -- done --fi -+ ;; -+ncursesw/term.h) - --# add the variations for the package we are looking for -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSESW_TERM_H 1 -+EOF - --cf_search= -+ ;; -+esac - --test "/usr" != "$prefix" && \ --test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for include-directories under /usr" -- test -d /usr/include && cf_search="$cf_search /usr/include" -- test -d /usr/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/include/$cf_ncuhdr_root" -- test -d /usr/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include" -- test -d /usr/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/$cf_ncuhdr_root/include" -- test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+# some applications need this, but should check for NCURSES_VERSION - --test "$prefix" != "NONE" && \ --test -d "$prefix" && \ -- { -- test -n "$verbose" && echo " ... testing for include-directories under $prefix" -- test -d $prefix/include && cf_search="$cf_search $prefix/include" -- test -d $prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root" -- test -d $prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include" -- test -d $prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include" -- test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+cat >>confdefs.h <<\EOF -+#define NCURSES 1 -+EOF - --test "/usr/local" != "$prefix" && \ --test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for include-directories under /usr/local" -- test -d /usr/local/include && cf_search="$cf_search /usr/local/include" -- test -d /usr/local/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root" -- test -d /usr/local/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include" -- test -d /usr/local/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include" -- test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+echo "$as_me:6261: checking for ncurses version" >&5 -+echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_version+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - --test "/opt" != "$prefix" && \ --test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for include-directories under /opt" -- test -d /opt/include && cf_search="$cf_search /opt/include" -- test -d /opt/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/include/$cf_ncuhdr_root" -- test -d /opt/include/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include" -- test -d /opt/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/$cf_ncuhdr_root/include" -- test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+ cf_cv_ncurses_version=no -+ cf_tempfile=out$$ -+ rm -f $cf_tempfile -+ if test "$cross_compiling" = yes; then - --test "$HOME" != "$prefix" && \ --test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for include-directories under $HOME" -- test -d $HOME/include && cf_search="$cf_search $HOME/include" -- test -d $HOME/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root" -- test -d $HOME/include/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include" -- test -d $HOME/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include" -- test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+ # This will not work if the preprocessor splits the line after the -+ # Autoconf token. The 'unproto' program does that. -+ cat > conftest.$ac_ext <<EOF -+#include <${cf_cv_ncurses_header:-curses.h}> -+#undef Autoconf -+#ifdef NCURSES_VERSION -+Autoconf NCURSES_VERSION -+#else -+#ifdef __NCURSES_H -+Autoconf "old" -+#endif -+; -+#endif -+EOF -+ cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out" -+ { (eval echo "$as_me:6287: \"$cf_try\"") >&5 -+ (eval $cf_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:6290: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+ if test -f conftest.out ; then -+ cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'` -+ test -n "$cf_out" && cf_cv_ncurses_version="$cf_out" -+ rm -f conftest.out -+ fi - --test "$includedir" != NONE && \ --test "$includedir" != "/usr/include" && \ --test -d "$includedir" && { -- test -d $includedir && cf_search="$cf_search $includedir" -- test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root" --} -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 6300 "configure" -+#include "confdefs.h" - --test "$oldincludedir" != NONE && \ --test "$oldincludedir" != "/usr/include" && \ --test -d "$oldincludedir" && { -- test -d $oldincludedir && cf_search="$cf_search $oldincludedir" -- test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root" -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <stdio.h> -+int main() -+{ -+ FILE *fp = fopen("$cf_tempfile", "w"); -+#ifdef NCURSES_VERSION -+# ifdef NCURSES_VERSION_PATCH -+ fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH); -+# else -+ fprintf(fp, "%s\n", NCURSES_VERSION); -+# endif -+#else -+# ifdef __NCURSES_H -+ fprintf(fp, "old\n"); -+# else -+ make an error -+# endif -+#endif -+ ${cf_cv_main_return:-return}(0); - } -+_ACEOF -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:6325: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:6328: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:6330: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:6333: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - --cf_search="$cf_search $cf_header_path_list" -- -- test -n "$verbose" && echo search path $cf_search -- cf_save2_CPPFLAGS="$CPPFLAGS" -- for cf_incdir in $cf_search -- do -+ cf_cv_ncurses_version=`cat $cf_tempfile` -+else -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+fi -+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+fi -+ rm -f $cf_tempfile - --if test -n "$cf_incdir" ; then -- for cf_add_incdir in $cf_incdir -- do -- while test $cf_add_incdir != /usr/include -- do -- if test -d $cf_add_incdir -- then -- cf_have_incdir=no -- if test -n "$CFLAGS$CPPFLAGS" ; then -- # a loop is needed to ensure we can add subdirs of existing dirs -- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do -- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then -- cf_have_incdir=yes; break -- fi -- done -- fi -+fi -+echo "$as_me:6347: result: $cf_cv_ncurses_version" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_version" >&6 -+test "$cf_cv_ncurses_version" = no || -+cat >>confdefs.h <<\EOF -+#define NCURSES 1 -+EOF - -- if test "$cf_have_incdir" = no ; then -- if test "$cf_add_incdir" = /usr/local/include ; then -- if test "$GCC" = yes -- then -- cf_save_CPPFLAGS=$CPPFLAGS -- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -- cat >conftest.$ac_ext <<_ACEOF --#line 6337 "configure" -+cf_nculib_root=ncurses -+ # This works, except for the special case where we find gpm, but -+ # ncurses is in a nonstandard location via $LIBS, and we really want -+ # to link gpm. -+cf_ncurses_LIBS="" -+cf_ncurses_SAVE="$LIBS" -+echo "$as_me:6360: checking for Gpm_Open in -lgpm" >&5 -+echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6 -+if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lgpm $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 6368 "configure" - #include "confdefs.h" --#include <stdio.h> -+ -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char Gpm_Open (); - int - main () - { --printf("Hello") -+Gpm_Open (); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:6349: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:6387: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6352: \$? = $ac_status" >&5 -+ echo "$as_me:6390: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6355: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:6393: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6358: \$? = $ac_status" >&5 -+ echo "$as_me:6396: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ ac_cv_lib_gpm_Gpm_Open=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_have_incdir=yes -+ac_cv_lib_gpm_Gpm_Open=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- CPPFLAGS=$cf_save_CPPFLAGS -- fi -- fi -- fi -- -- if test "$cf_have_incdir" = no ; then -- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 -- --echo "${as_me:-configure}:6375: testing adding $cf_add_incdir to include-path ..." 1>&5 -- -- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -- -- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` -- test "$cf_top_incdir" = "$cf_add_incdir" && break -- cf_add_incdir="$cf_top_incdir" -- else -- break -- fi -- fi -- done -- done -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS - fi -- -- for cf_header in \ -- ncurses.h \ -- curses.h -- do -- -- cat >conftest.$ac_ext <<_ACEOF --#line 6396 "configure" -+echo "$as_me:6407: result: $ac_cv_lib_gpm_Gpm_Open" >&5 -+echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6 -+if test $ac_cv_lib_gpm_Gpm_Open = yes; then -+ echo "$as_me:6410: checking for initscr in -lgpm" >&5 -+echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6 -+if test "${ac_cv_lib_gpm_initscr+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lgpm $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 6418 "configure" - #include "confdefs.h" - --#include <$cf_header> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char initscr (); - int - main () - { -- --#ifdef NCURSES_VERSION -- --printf("%s\n", NCURSES_VERSION); --#else --#ifdef __NCURSES_H --printf("old\n"); --#else -- make an error --#endif --#endif -- -+initscr (); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:6420: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:6437: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6423: \$? = $ac_status" >&5 -+ echo "$as_me:6440: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6426: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:6443: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6429: \$? = $ac_status" >&5 -+ echo "$as_me:6446: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ncurses_h2=$cf_header -- -+ ac_cv_lib_gpm_initscr=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_ncurses_h2=no -+ac_cv_lib_gpm_initscr=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- -- if test "$cf_cv_ncurses_h2" != no ; then -- cf_cv_ncurses_h2=$cf_incdir/$cf_header -- test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&6 -- break -- fi -- test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6 -- done -- CPPFLAGS="$cf_save2_CPPFLAGS" -- test "$cf_cv_ncurses_h2" != no && break -- done -- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:6450: error: not found" >&5 --echo "$as_me: error: not found" >&2;} -- { (exit 1); exit 1; }; } -- -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:6457: result: $ac_cv_lib_gpm_initscr" >&5 -+echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6 -+if test $ac_cv_lib_gpm_initscr = yes; then -+ LIBS="$cf_ncurses_SAVE" -+else -+ cf_ncurses_LIBS="-lgpm" - fi --echo "$as_me:6455: result: $cf_cv_ncurses_h2" >&5 --echo "${ECHO_T}$cf_cv_ncurses_h2" >&6 -- -- cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'` -- cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2` -- if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then -- cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header -- fi - --if test -n "$cf_1st_incdir" ; then -- for cf_add_incdir in $cf_1st_incdir -- do -- while test $cf_add_incdir != /usr/include -- do -- if test -d $cf_add_incdir -- then -- cf_have_incdir=no -- if test -n "$CFLAGS$CPPFLAGS" ; then -- # a loop is needed to ensure we can add subdirs of existing dirs -- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do -- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then -- cf_have_incdir=yes; break -- fi -- done -- fi -+fi - -- if test "$cf_have_incdir" = no ; then -- if test "$cf_add_incdir" = /usr/local/include ; then -- if test "$GCC" = yes -- then -- cf_save_CPPFLAGS=$CPPFLAGS -- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -- cat >conftest.$ac_ext <<_ACEOF --#line 6488 "configure" -+case $host_os in #(vi -+freebsd*) -+ # This is only necessary if you are linking against an obsolete -+ # version of ncurses (but it should do no harm, since it's static). -+ if test "$cf_nculib_root" = ncurses ; then -+ echo "$as_me:6472: checking for tgoto in -lmytinfo" >&5 -+echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6 -+if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lmytinfo $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 6480 "configure" - #include "confdefs.h" --#include <stdio.h> -+ -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char tgoto (); - int - main () - { --printf("Hello") -+tgoto (); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:6500: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:6499: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6503: \$? = $ac_status" >&5 -+ echo "$as_me:6502: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6506: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:6505: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6509: \$? = $ac_status" >&5 -+ echo "$as_me:6508: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ ac_cv_lib_mytinfo_tgoto=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_have_incdir=yes -+ac_cv_lib_mytinfo_tgoto=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- CPPFLAGS=$cf_save_CPPFLAGS -- fi -- fi -- fi -- -- if test "$cf_have_incdir" = no ; then -- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 -- --echo "${as_me:-configure}:6526: testing adding $cf_add_incdir to include-path ..." 1>&5 -- -- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -- -- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` -- test "$cf_top_incdir" = "$cf_add_incdir" && break -- cf_add_incdir="$cf_top_incdir" -- else -- break -- fi -- fi -- done -- done -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS - fi -- -+echo "$as_me:6519: result: $ac_cv_lib_mytinfo_tgoto" >&5 -+echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6 -+if test $ac_cv_lib_mytinfo_tgoto = yes; then -+ cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS" - fi - --# Set definitions to allow ifdef'ing for ncurses.h -- --case $cf_cv_ncurses_header in # (vi --*ncurses.h) -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSES_H 1 --EOF -- -+ fi - ;; - esac - --case $cf_cv_ncurses_header in # (vi --ncurses/curses.h|ncurses/ncurses.h) -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSES_NCURSES_H 1 --EOF -- -- ;; --ncursesw/curses.h|ncursesw/ncurses.h) -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSESW_NCURSES_H 1 --EOF -+LIBS="$cf_ncurses_LIBS $LIBS" - -- ;; --esac -+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" ) -+then -+ LIBS="-l$cf_nculib_root $LIBS" -+else - --echo "$as_me:6569: checking for terminfo header" >&5 --echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6 --if test "${cf_cv_term_header+set}" = set; then -+ eval 'cf_cv_have_lib_'$cf_nculib_root'=no' -+ cf_libdir="" -+ echo "$as_me:6538: checking for initscr" >&5 -+echo $ECHO_N "checking for initscr... $ECHO_C" >&6 -+if test "${ac_cv_func_initscr+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 6544 "configure" -+#include "confdefs.h" -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char initscr (); below. */ -+#include <assert.h> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char initscr (); -+char (*f) (); - --case ${cf_cv_ncurses_header} in #(vi --*/ncurses.h|*/ncursesw.h) #(vi -- cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'` -- ;; --*) -- cf_term_header=term.h -- ;; --esac -+int -+main () -+{ -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_initscr) || defined (__stub___initscr) -+choke me -+#else -+f = initscr; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif - --for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h" --do --cat >conftest.$ac_ext <<_ACEOF --#line 6587 "configure" -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:6575: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:6578: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:6581: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:6584: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_func_initscr=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_func_initscr=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:6594: result: $ac_cv_func_initscr" >&5 -+echo "${ECHO_T}$ac_cv_func_initscr" >&6 -+if test $ac_cv_func_initscr = yes; then -+ eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' -+else -+ -+ cf_save_LIBS="$LIBS" -+ echo "$as_me:6601: checking for initscr in -l$cf_nculib_root" >&5 -+echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6 -+ LIBS="-l$cf_nculib_root $LIBS" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 6605 "configure" - #include "confdefs.h" --#include <stdio.h> - #include <${cf_cv_ncurses_header:-curses.h}> --#include <$cf_test> -- - int - main () - { --int x = auto_left_margin -+initscr() - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:6602: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:6617: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6605: \$? = $ac_status" >&5 -+ echo "$as_me:6620: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:6608: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:6623: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6611: \$? = $ac_status" >&5 -+ echo "$as_me:6626: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -+ echo "$as_me:6628: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+ eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' - -- cf_cv_term_header="$cf_test" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+echo "$as_me:6635: result: no" >&5 -+echo "${ECHO_T}no" >&6 - -- cf_cv_term_header=unknown -+cf_search= -+cf_library_path_list="" -+if test -n "${LDFLAGS}${LIBS}" ; then -+ for cf_library_path in $LDFLAGS $LIBS -+ do -+ case $cf_library_path in #(vi -+ -L*) -+ cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'` - --fi --rm -f conftest.$ac_objext conftest.$ac_ext -- test "$cf_cv_term_header" != unknown && break --done -+test "x$cf_library_path" != "xNONE" && \ -+test -d "$cf_library_path" && \ -+ { -+ test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path" -+ test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib" -+ test -d $cf_library_path/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root" -+ test -d $cf_library_path/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib" -+ test -d $cf_library_path/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib" -+ test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root" -+} - -+ cf_library_path_list="$cf_library_path_list $cf_search" -+ ;; -+ esac -+ done - fi --echo "$as_me:6627: result: $cf_cv_term_header" >&5 --echo "${ECHO_T}$cf_cv_term_header" >&6 -- --# Set definitions to allow ifdef'ing to accommodate subdirectories - --case $cf_cv_term_header in # (vi --*term.h) -- cat >>confdefs.h <<\EOF --#define HAVE_TERM_H 1 --EOF -+cf_search= - -- ;; --esac -+test "x/usr" != "x$prefix" && \ -+test -d "/usr" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for lib-directories under /usr" -+ test -d /usr/lib && cf_search="$cf_search /usr/lib" -+ test -d /usr/lib/$cf_nculib_root && cf_search="$cf_search /usr/lib/$cf_nculib_root" -+ test -d /usr/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/lib/$cf_nculib_root/lib" -+ test -d /usr/$cf_nculib_root/lib && cf_search="$cf_search /usr/$cf_nculib_root/lib" -+ test -d /usr/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root" -+} - --case $cf_cv_term_header in # (vi --ncurses/term.h) #(vi -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSES_TERM_H 1 --EOF -- -- ;; --ncursesw/term.h) -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSESW_TERM_H 1 --EOF -- -- ;; --esac -+test "x$prefix" != "xNONE" && \ -+test -d "$prefix" && \ -+ { -+ test -n "$verbose" && echo " ... testing for lib-directories under $prefix" -+ test -d $prefix/lib && cf_search="$cf_search $prefix/lib" -+ test -d $prefix/lib/$cf_nculib_root && cf_search="$cf_search $prefix/lib/$cf_nculib_root" -+ test -d $prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib" -+ test -d $prefix/$cf_nculib_root/lib && cf_search="$cf_search $prefix/$cf_nculib_root/lib" -+ test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root" -+} - --# some applications need this, but should check for NCURSES_VERSION --cat >>confdefs.h <<\EOF --#define NCURSES 1 --EOF -+test "x/usr/local" != "x$prefix" && \ -+test -d "/usr/local" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for lib-directories under /usr/local" -+ test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib" -+ test -d /usr/local/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/lib/$cf_nculib_root" -+ test -d /usr/local/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib" -+ test -d /usr/local/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/$cf_nculib_root/lib" -+ test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root" -+} - --echo "$as_me:6661: checking for ncurses version" >&5 --echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6 --if test "${cf_cv_ncurses_version+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+test "x/opt" != "x$prefix" && \ -+test -d "/opt" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for lib-directories under /opt" -+ test -d /opt/lib && cf_search="$cf_search /opt/lib" -+ test -d /opt/lib/$cf_nculib_root && cf_search="$cf_search /opt/lib/$cf_nculib_root" -+ test -d /opt/lib/$cf_nculib_root/lib && cf_search="$cf_search /opt/lib/$cf_nculib_root/lib" -+ test -d /opt/$cf_nculib_root/lib && cf_search="$cf_search /opt/$cf_nculib_root/lib" -+ test -d /opt/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root" -+} - -- cf_cv_ncurses_version=no -- cf_tempfile=out$$ -- rm -f $cf_tempfile -- if test "$cross_compiling" = yes; then -+test "x$HOME" != "x$prefix" && \ -+test -d "$HOME" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for lib-directories under $HOME" -+ test -d $HOME/lib && cf_search="$cf_search $HOME/lib" -+ test -d $HOME/lib/$cf_nculib_root && cf_search="$cf_search $HOME/lib/$cf_nculib_root" -+ test -d $HOME/lib/$cf_nculib_root/lib && cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib" -+ test -d $HOME/$cf_nculib_root/lib && cf_search="$cf_search $HOME/$cf_nculib_root/lib" -+ test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root" -+} - -- # This will not work if the preprocessor splits the line after the -- # Autoconf token. The 'unproto' program does that. -- cat > conftest.$ac_ext <<EOF --#include <${cf_cv_ncurses_header:-curses.h}> --#undef Autoconf --#ifdef NCURSES_VERSION --Autoconf NCURSES_VERSION --#else --#ifdef __NCURSES_H --Autoconf "old" --#endif --; --#endif --EOF -- cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out" -- { (eval echo "$as_me:6687: \"$cf_try\"") >&5 -- (eval $cf_try) 2>&5 -- ac_status=$? -- echo "$as_me:6690: \$? = $ac_status" >&5 -- (exit $ac_status); } -- if test -f conftest.out ; then -- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'` -- test -n "$cf_out" && cf_cv_ncurses_version="$cf_out" -- rm -f conftest.out -- fi -+cf_search="$cf_library_path_list $cf_search" - --else -- cat >conftest.$ac_ext <<_ACEOF --#line 6700 "configure" -+ for cf_libdir in $cf_search -+ do -+ echo "$as_me:6725: checking for -l$cf_nculib_root in $cf_libdir" >&5 -+echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6 -+ LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 6729 "configure" - #include "confdefs.h" -- - #include <${cf_cv_ncurses_header:-curses.h}> --#include <stdio.h> --int main() -+int -+main () - { -- FILE *fp = fopen("$cf_tempfile", "w"); --#ifdef NCURSES_VERSION --# ifdef NCURSES_VERSION_PATCH -- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH); --# else -- fprintf(fp, "%s\n", NCURSES_VERSION); --# endif --#else --# ifdef __NCURSES_H -- fprintf(fp, "old\n"); --# else -- make an error --# endif --#endif -- ${cf_cv_main_return:-return}(0); -+initscr() -+ ; -+ return 0; - } - _ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:6725: \"$ac_link\"") >&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:6741: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6728: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:6730: \"$ac_try\"") >&5 -+ echo "$as_me:6744: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:6747: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6733: \$? = $ac_status" >&5 -+ echo "$as_me:6750: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- -- cf_cv_ncurses_version=`cat $cf_tempfile` -+ echo "$as_me:6752: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+ eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' -+ break - else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 -+ echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+echo "$as_me:6759: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+ LIBS="$cf_save_LIBS" - fi --rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ done -+ - fi -- rm -f $cf_tempfile -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - - fi --echo "$as_me:6747: result: $cf_cv_ncurses_version" >&5 --echo "${ECHO_T}$cf_cv_ncurses_version" >&6 --test "$cf_cv_ncurses_version" = no || cat >>confdefs.h <<\EOF --#define NCURSES 1 --EOF - --cf_nculib_root=ncurses -- # This works, except for the special case where we find gpm, but -- # ncurses is in a nonstandard location via $LIBS, and we really want -- # to link gpm. --cf_ncurses_LIBS="" --cf_ncurses_SAVE="$LIBS" --echo "$as_me:6759: checking for Gpm_Open in -lgpm" >&5 --echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6 --if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lgpm $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 6767 "configure" --#include "confdefs.h" -+eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char Gpm_Open (); -+if test $cf_found_library = no ; then -+ { { echo "$as_me:6774: error: Cannot link $cf_nculib_root library" >&5 -+echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;} -+ { (exit 1); exit 1; }; } -+fi -+ -+fi -+ -+if test -n "$cf_ncurses_LIBS" ; then -+ echo "$as_me:6782: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5 -+echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6 -+ cf_ncurses_SAVE="$LIBS" -+ for p in $cf_ncurses_LIBS ; do -+ q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"` -+ if test "$q" != "$LIBS" ; then -+ LIBS="$q" -+ fi -+ done -+ cat >conftest.$ac_ext <<_ACEOF -+#line 6792 "configure" -+#include "confdefs.h" -+#include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { --Gpm_Open (); -+initscr(); mousemask(0,0); tgoto((char *)0, 0, 0); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:6786: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6804: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6789: \$? = $ac_status" >&5 -+ echo "$as_me:6807: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:6792: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6810: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6795: \$? = $ac_status" >&5 -+ echo "$as_me:6813: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_gpm_Gpm_Open=yes -+ echo "$as_me:6815: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_gpm_Gpm_Open=no -+echo "$as_me:6820: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+ LIBS="$cf_ncurses_SAVE" - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:6806: result: $ac_cv_lib_gpm_Gpm_Open" >&5 --echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6 --if test $ac_cv_lib_gpm_Gpm_Open = yes; then -- echo "$as_me:6809: checking for initscr in -lgpm" >&5 --echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6 --if test "${ac_cv_lib_gpm_initscr+set}" = set; then -+ -+cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+cat >>confdefs.h <<EOF -+#define $cf_nculib_ROOT 1 -+EOF -+ -+fi -+ -+ ;; -+ncursesw) #(vi -+ -+echo "$as_me:6838: checking for multibyte character support" >&5 -+echo $ECHO_N "checking for multibyte character support... $ECHO_C" >&6 -+if test "${cf_cv_utf8_lib+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lgpm $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 6817 "configure" -+ -+ cf_save_LIBS="$LIBS" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 6846 "configure" - #include "confdefs.h" - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char initscr (); -+#include <stdlib.h> - int - main () - { --initscr (); -+putwc(0,0); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:6836: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6859: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6839: \$? = $ac_status" >&5 -+ echo "$as_me:6862: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:6842: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6865: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6845: \$? = $ac_status" >&5 -+ echo "$as_me:6868: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_gpm_initscr=yes -+ cf_cv_utf8_lib=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_gpm_initscr=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:6856: result: $ac_cv_lib_gpm_initscr" >&5 --echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6 --if test $ac_cv_lib_gpm_initscr = yes; then -- LIBS="$cf_ncurses_SAVE" --else -- cf_ncurses_LIBS="-lgpm" --fi - --fi -+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these -+# will be set on completion of the AC_TRY_LINK below. -+cf_cv_header_path_utf8= -+cf_cv_library_path_utf8= -+ -+echo "${as_me:-configure}:6880: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5 -+ -+cf_save_LIBS="$LIBS" - --case $host_os in #(vi --freebsd*) -- # This is only necessary if you are linking against an obsolete -- # version of ncurses (but it should do no harm, since it's static). -- if test "$cf_nculib_root" = ncurses ; then -- echo "$as_me:6871: checking for tgoto in -lmytinfo" >&5 --echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6 --if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lmytinfo $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 6879 "configure" -+#line 6885 "configure" - #include "confdefs.h" - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char tgoto (); -+#include <libutf8.h> - int - main () - { --tgoto (); -+putwc(0,0); - ; - return 0; - } -@@ -6906,133 +6906,227 @@ - ac_status=$? - echo "$as_me:6907: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_mytinfo_tgoto=yes -+ -+ cf_cv_find_linkage_utf8=yes -+ cf_cv_header_path_utf8=/usr/include -+ cf_cv_library_path_utf8=/usr/lib -+ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_mytinfo_tgoto=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:6918: result: $ac_cv_lib_mytinfo_tgoto" >&5 --echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6 --if test $ac_cv_lib_mytinfo_tgoto = yes; then -- cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS" --fi - -- fi -- ;; --esac -- --LIBS="$cf_ncurses_LIBS $LIBS" -- --if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" ) --then -- LIBS="-l$cf_nculib_root $LIBS" --else -+LIBS="-lutf8 $cf_save_LIBS" - -- eval 'cf_cv_have_lib_'$cf_nculib_root'=no' -- cf_libdir="" -- echo "$as_me:6937: checking for initscr" >&5 --echo $ECHO_N "checking for initscr... $ECHO_C" >&6 --if test "${ac_cv_func_initscr+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 6943 "configure" -+cat >conftest.$ac_ext <<_ACEOF -+#line 6921 "configure" - #include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char initscr (); below. */ --#include <assert.h> --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char initscr (); --char (*f) (); - -+#include <libutf8.h> - int - main () - { --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_initscr) || defined (__stub___initscr) --choke me --#else --f = initscr; --#endif -- -+putwc(0,0); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:6974: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:6934: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:6977: \$? = $ac_status" >&5 -+ echo "$as_me:6937: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:6980: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:6940: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:6983: \$? = $ac_status" >&5 -+ echo "$as_me:6943: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_func_initscr=yes -+ -+ cf_cv_find_linkage_utf8=yes -+ cf_cv_header_path_utf8=/usr/include -+ cf_cv_library_path_utf8=/usr/lib -+ cf_cv_library_file_utf8="-lutf8" -+ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_func_initscr=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ -+ cf_cv_find_linkage_utf8=no -+ LIBS="$cf_save_LIBS" -+ -+ test -n "$verbose" && echo " find linkage for utf8 library" 1>&6 -+ -+echo "${as_me:-configure}:6960: testing find linkage for utf8 library ..." 1>&5 -+ -+echo "${as_me:-configure}:6962: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5 -+ -+ cf_save_CPPFLAGS="$CPPFLAGS" -+ cf_test_CPPFLAGS="$CPPFLAGS" -+ -+cf_search= -+ -+# collect the current set of include-directories from compiler flags -+cf_header_path_list="" -+if test -n "${CFLAGS}${CPPFLAGS}" ; then -+ for cf_header_path in $CPPFLAGS $CFLAGS -+ do -+ case $cf_header_path in #(vi -+ -I*) -+ cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'` -+ -+test "x$cf_header_path" != "xNONE" && \ -+test -d "$cf_header_path" && \ -+ { -+ test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path" -+ test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include" -+ test -d $cf_header_path/include/utf8 && cf_search="$cf_search $cf_header_path/include/utf8" -+ test -d $cf_header_path/include/utf8/include && cf_search="$cf_search $cf_header_path/include/utf8/include" -+ test -d $cf_header_path/utf8/include && cf_search="$cf_search $cf_header_path/utf8/include" -+ test -d $cf_header_path/utf8/include/utf8 && cf_search="$cf_search $cf_header_path/utf8/include/utf8" -+} -+ -+ cf_header_path_list="$cf_header_path_list $cf_search" -+ ;; -+ esac -+ done - fi --echo "$as_me:6993: result: $ac_cv_func_initscr" >&5 --echo "${ECHO_T}$ac_cv_func_initscr" >&6 --if test $ac_cv_func_initscr = yes; then -- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' --else - -- cf_save_LIBS="$LIBS" -- echo "$as_me:7000: checking for initscr in -l$cf_nculib_root" >&5 --echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6 -- LIBS="-l$cf_nculib_root $LIBS" -- cat >conftest.$ac_ext <<_ACEOF --#line 7004 "configure" -+# add the variations for the package we are looking for -+ -+cf_search= -+ -+test "x/usr" != "x$prefix" && \ -+test -d "/usr" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for include-directories under /usr" -+ test -d /usr/include && cf_search="$cf_search /usr/include" -+ test -d /usr/include/utf8 && cf_search="$cf_search /usr/include/utf8" -+ test -d /usr/include/utf8/include && cf_search="$cf_search /usr/include/utf8/include" -+ test -d /usr/utf8/include && cf_search="$cf_search /usr/utf8/include" -+ test -d /usr/utf8/include/utf8 && cf_search="$cf_search /usr/utf8/include/utf8" -+} -+ -+test "x$prefix" != "xNONE" && \ -+test -d "$prefix" && \ -+ { -+ test -n "$verbose" && echo " ... testing for include-directories under $prefix" -+ test -d $prefix/include && cf_search="$cf_search $prefix/include" -+ test -d $prefix/include/utf8 && cf_search="$cf_search $prefix/include/utf8" -+ test -d $prefix/include/utf8/include && cf_search="$cf_search $prefix/include/utf8/include" -+ test -d $prefix/utf8/include && cf_search="$cf_search $prefix/utf8/include" -+ test -d $prefix/utf8/include/utf8 && cf_search="$cf_search $prefix/utf8/include/utf8" -+} -+ -+test "x/usr/local" != "x$prefix" && \ -+test -d "/usr/local" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for include-directories under /usr/local" -+ test -d /usr/local/include && cf_search="$cf_search /usr/local/include" -+ test -d /usr/local/include/utf8 && cf_search="$cf_search /usr/local/include/utf8" -+ test -d /usr/local/include/utf8/include && cf_search="$cf_search /usr/local/include/utf8/include" -+ test -d /usr/local/utf8/include && cf_search="$cf_search /usr/local/utf8/include" -+ test -d /usr/local/utf8/include/utf8 && cf_search="$cf_search /usr/local/utf8/include/utf8" -+} -+ -+test "x/opt" != "x$prefix" && \ -+test -d "/opt" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for include-directories under /opt" -+ test -d /opt/include && cf_search="$cf_search /opt/include" -+ test -d /opt/include/utf8 && cf_search="$cf_search /opt/include/utf8" -+ test -d /opt/include/utf8/include && cf_search="$cf_search /opt/include/utf8/include" -+ test -d /opt/utf8/include && cf_search="$cf_search /opt/utf8/include" -+ test -d /opt/utf8/include/utf8 && cf_search="$cf_search /opt/utf8/include/utf8" -+} -+ -+test "x$HOME" != "x$prefix" && \ -+test -d "$HOME" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for include-directories under $HOME" -+ test -d $HOME/include && cf_search="$cf_search $HOME/include" -+ test -d $HOME/include/utf8 && cf_search="$cf_search $HOME/include/utf8" -+ test -d $HOME/include/utf8/include && cf_search="$cf_search $HOME/include/utf8/include" -+ test -d $HOME/utf8/include && cf_search="$cf_search $HOME/utf8/include" -+ test -d $HOME/utf8/include/utf8 && cf_search="$cf_search $HOME/utf8/include/utf8" -+} -+ -+test "$includedir" != NONE && \ -+test "$includedir" != "/usr/include" && \ -+test -d "$includedir" && { -+ test -d $includedir && cf_search="$cf_search $includedir" -+ test -d $includedir/utf8 && cf_search="$cf_search $includedir/utf8" -+} -+ -+test "$oldincludedir" != NONE && \ -+test "$oldincludedir" != "/usr/include" && \ -+test -d "$oldincludedir" && { -+ test -d $oldincludedir && cf_search="$cf_search $oldincludedir" -+ test -d $oldincludedir/utf8 && cf_search="$cf_search $oldincludedir/utf8" -+} -+ -+cf_search="$cf_search $cf_header_path_list" -+ -+ for cf_cv_header_path_utf8 in $cf_search -+ do -+ if test -d $cf_cv_header_path_utf8 ; then -+ test -n "$verbose" && echo " ... testing $cf_cv_header_path_utf8" 1>&6 -+ -+echo "${as_me:-configure}:7075: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5 -+ -+ CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_utf8" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7079 "configure" - #include "confdefs.h" --#include <${cf_cv_ncurses_header:-curses.h}> -+ -+#include <libutf8.h> - int - main () - { --initscr() -+putwc(0,0); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7016: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7092: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7019: \$? = $ac_status" >&5 -+ echo "$as_me:7095: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7022: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7098: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7025: \$? = $ac_status" >&5 -+ echo "$as_me:7101: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:7027: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' - -+ test -n "$verbose" && echo " ... found utf8 headers in $cf_cv_header_path_utf8" 1>&6 -+ -+echo "${as_me:-configure}:7106: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5 -+ -+ cf_cv_find_linkage_utf8=maybe -+ cf_test_CPPFLAGS="$CPPFLAGS" -+ break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:7034: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ -+ CPPFLAGS="$cf_save_CPPFLAGS" -+ -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ fi -+ done -+ -+ if test "$cf_cv_find_linkage_utf8" = maybe ; then -+ -+echo "${as_me:-configure}:7124: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5 -+ -+ cf_save_LIBS="$LIBS" -+ cf_save_LDFLAGS="$LDFLAGS" -+ -+ if test "$cf_cv_find_linkage_utf8" != yes ; then - - cf_search= - cf_library_path_list="" -@@ -7043,15 +7137,15 @@ - -L*) - cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'` - --test "$cf_library_path" != "NONE" && \ -+test "x$cf_library_path" != "xNONE" && \ - test -d "$cf_library_path" && \ - { - test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path" - test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib" -- test -d $cf_library_path/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root" -- test -d $cf_library_path/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib" -- test -d $cf_library_path/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib" -- test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root" -+ test -d $cf_library_path/lib/utf8 && cf_search="$cf_search $cf_library_path/lib/utf8" -+ test -d $cf_library_path/lib/utf8/lib && cf_search="$cf_search $cf_library_path/lib/utf8/lib" -+ test -d $cf_library_path/utf8/lib && cf_search="$cf_search $cf_library_path/utf8/lib" -+ test -d $cf_library_path/utf8/lib/utf8 && cf_search="$cf_search $cf_library_path/utf8/lib/utf8" - } - - cf_library_path_list="$cf_library_path_list $cf_search" -@@ -7062,307 +7156,638 @@ - - cf_search= - --test "/usr" != "$prefix" && \ -+test "x/usr" != "x$prefix" && \ - test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /usr" - test -d /usr/lib && cf_search="$cf_search /usr/lib" -- test -d /usr/lib/$cf_nculib_root && cf_search="$cf_search /usr/lib/$cf_nculib_root" -- test -d /usr/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/lib/$cf_nculib_root/lib" -- test -d /usr/$cf_nculib_root/lib && cf_search="$cf_search /usr/$cf_nculib_root/lib" -- test -d /usr/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root" -+ test -d /usr/lib/utf8 && cf_search="$cf_search /usr/lib/utf8" -+ test -d /usr/lib/utf8/lib && cf_search="$cf_search /usr/lib/utf8/lib" -+ test -d /usr/utf8/lib && cf_search="$cf_search /usr/utf8/lib" -+ test -d /usr/utf8/lib/utf8 && cf_search="$cf_search /usr/utf8/lib/utf8" - } - --test "$prefix" != "NONE" && \ -+test "x$prefix" != "xNONE" && \ - test -d "$prefix" && \ - { - test -n "$verbose" && echo " ... testing for lib-directories under $prefix" - test -d $prefix/lib && cf_search="$cf_search $prefix/lib" -- test -d $prefix/lib/$cf_nculib_root && cf_search="$cf_search $prefix/lib/$cf_nculib_root" -- test -d $prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib" -- test -d $prefix/$cf_nculib_root/lib && cf_search="$cf_search $prefix/$cf_nculib_root/lib" -- test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root" -+ test -d $prefix/lib/utf8 && cf_search="$cf_search $prefix/lib/utf8" -+ test -d $prefix/lib/utf8/lib && cf_search="$cf_search $prefix/lib/utf8/lib" -+ test -d $prefix/utf8/lib && cf_search="$cf_search $prefix/utf8/lib" -+ test -d $prefix/utf8/lib/utf8 && cf_search="$cf_search $prefix/utf8/lib/utf8" - } - --test "/usr/local" != "$prefix" && \ -+test "x/usr/local" != "x$prefix" && \ - test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /usr/local" - test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib" -- test -d /usr/local/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/lib/$cf_nculib_root" -- test -d /usr/local/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib" -- test -d /usr/local/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/$cf_nculib_root/lib" -- test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root" -+ test -d /usr/local/lib/utf8 && cf_search="$cf_search /usr/local/lib/utf8" -+ test -d /usr/local/lib/utf8/lib && cf_search="$cf_search /usr/local/lib/utf8/lib" -+ test -d /usr/local/utf8/lib && cf_search="$cf_search /usr/local/utf8/lib" -+ test -d /usr/local/utf8/lib/utf8 && cf_search="$cf_search /usr/local/utf8/lib/utf8" - } - --test "/opt" != "$prefix" && \ -+test "x/opt" != "x$prefix" && \ - test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under /opt" - test -d /opt/lib && cf_search="$cf_search /opt/lib" -- test -d /opt/lib/$cf_nculib_root && cf_search="$cf_search /opt/lib/$cf_nculib_root" -- test -d /opt/lib/$cf_nculib_root/lib && cf_search="$cf_search /opt/lib/$cf_nculib_root/lib" -- test -d /opt/$cf_nculib_root/lib && cf_search="$cf_search /opt/$cf_nculib_root/lib" -- test -d /opt/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root" --} -+ test -d /opt/lib/utf8 && cf_search="$cf_search /opt/lib/utf8" -+ test -d /opt/lib/utf8/lib && cf_search="$cf_search /opt/lib/utf8/lib" -+ test -d /opt/utf8/lib && cf_search="$cf_search /opt/utf8/lib" -+ test -d /opt/utf8/lib/utf8 && cf_search="$cf_search /opt/utf8/lib/utf8" -+} - --test "$HOME" != "$prefix" && \ -+test "x$HOME" != "x$prefix" && \ - test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for lib-directories under $HOME" - test -d $HOME/lib && cf_search="$cf_search $HOME/lib" -- test -d $HOME/lib/$cf_nculib_root && cf_search="$cf_search $HOME/lib/$cf_nculib_root" -- test -d $HOME/lib/$cf_nculib_root/lib && cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib" -- test -d $HOME/$cf_nculib_root/lib && cf_search="$cf_search $HOME/$cf_nculib_root/lib" -- test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root" -+ test -d $HOME/lib/utf8 && cf_search="$cf_search $HOME/lib/utf8" -+ test -d $HOME/lib/utf8/lib && cf_search="$cf_search $HOME/lib/utf8/lib" -+ test -d $HOME/utf8/lib && cf_search="$cf_search $HOME/utf8/lib" -+ test -d $HOME/utf8/lib/utf8 && cf_search="$cf_search $HOME/utf8/lib/utf8" - } - - cf_search="$cf_library_path_list $cf_search" - -- for cf_libdir in $cf_search -- do -- echo "$as_me:7124: checking for -l$cf_nculib_root in $cf_libdir" >&5 --echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6 -- LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS" -- cat >conftest.$ac_ext <<_ACEOF --#line 7128 "configure" -+ for cf_cv_library_path_utf8 in $cf_search -+ do -+ if test -d $cf_cv_library_path_utf8 ; then -+ test -n "$verbose" && echo " ... testing $cf_cv_library_path_utf8" 1>&6 -+ -+echo "${as_me:-configure}:7221: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5 -+ -+ CPPFLAGS="$cf_test_CPPFLAGS" -+ LIBS="-lutf8 $cf_save_LIBS" -+ LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_utf8" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7227 "configure" - #include "confdefs.h" --#include <${cf_cv_ncurses_header:-curses.h}> -+ -+#include <libutf8.h> - int - main () - { --initscr() -+putwc(0,0); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7140: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:7240: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:7143: \$? = $ac_status" >&5 -+ echo "$as_me:7243: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7146: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:7246: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7149: \$? = $ac_status" >&5 -+ echo "$as_me:7249: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:7151: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' -- break -+ -+ test -n "$verbose" && echo " ... found utf8 library in $cf_cv_library_path_utf8" 1>&6 -+ -+echo "${as_me:-configure}:7254: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5 -+ -+ cf_cv_find_linkage_utf8=yes -+ cf_cv_library_file_utf8="-lutf8" -+ break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:7158: result: no" >&5 --echo "${ECHO_T}no" >&6 -- LIBS="$cf_save_LIBS" -+ -+ CPPFLAGS="$cf_save_CPPFLAGS" -+ LIBS="$cf_save_LIBS" -+ LDFLAGS="$cf_save_LDFLAGS" -+ - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- done -+ fi -+ done -+ CPPFLAGS="$cf_save_CPPFLAGS" -+ LDFLAGS="$cf_save_LDFLAGS" -+ fi -+ -+ else -+ cf_cv_find_linkage_utf8=no -+ fi - - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - - fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - --eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root -+LIBS="$cf_save_LIBS" - --if test $cf_found_library = no ; then -- { { echo "$as_me:7173: error: Cannot link $cf_nculib_root library" >&5 --echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;} -- { (exit 1); exit 1; }; } -+if test "$cf_cv_find_linkage_utf8" = yes ; then -+cf_cv_utf8_lib=add-on -+else -+cf_cv_utf8_lib=no - fi - - fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:7296: result: $cf_cv_utf8_lib" >&5 -+echo "${ECHO_T}$cf_cv_utf8_lib" >&6 - --if test -n "$cf_ncurses_LIBS" ; then -- echo "$as_me:7181: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5 --echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6 -- cf_ncurses_SAVE="$LIBS" -- for p in $cf_ncurses_LIBS ; do -- q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"` -- if test "$q" != "$LIBS" ; then -- LIBS="$q" -+# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between -+# ncurses/ncursesw: -+if test "$cf_cv_utf8_lib" = "add-on" ; then -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_LIBUTF8_H 1 -+EOF -+ -+if test -n "$cf_cv_header_path_utf8" ; then -+ for cf_add_incdir in $cf_cv_header_path_utf8 -+ do -+ while test $cf_add_incdir != /usr/include -+ do -+ if test -d $cf_add_incdir -+ then -+ cf_have_incdir=no -+ if test -n "$CFLAGS$CPPFLAGS" ; then -+ # a loop is needed to ensure we can add subdirs of existing dirs -+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do -+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then -+ cf_have_incdir=yes; break -+ fi -+ done - fi -- done -- cat >conftest.$ac_ext <<_ACEOF --#line 7191 "configure" -+ -+ if test "$cf_have_incdir" = no ; then -+ if test "$cf_add_incdir" = /usr/local/include ; then -+ if test "$GCC" = yes -+ then -+ cf_save_CPPFLAGS=$CPPFLAGS -+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7331 "configure" - #include "confdefs.h" --#include <${cf_cv_ncurses_header:-curses.h}> -+#include <stdio.h> - int - main () - { --initscr(); mousemask(0,0); tgoto((char *)0, 0, 0); -+printf("Hello") - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7203: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7343: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7206: \$? = $ac_status" >&5 -+ echo "$as_me:7346: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7209: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7349: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7212: \$? = $ac_status" >&5 -+ echo "$as_me:7352: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:7214: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:7219: result: no" >&5 -+cf_have_incdir=yes -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS=$cf_save_CPPFLAGS -+ fi -+ fi -+ fi -+ -+ if test "$cf_have_incdir" = no ; then -+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 -+ -+echo "${as_me:-configure}:7369: testing adding $cf_add_incdir to include-path ..." 1>&5 -+ -+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -+ -+ cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` -+ test "$cf_top_incdir" = "$cf_add_incdir" && break -+ cf_add_incdir="$cf_top_incdir" -+ else -+ break -+ fi -+ fi -+ done -+ done -+fi -+ -+if test -n "$cf_cv_library_path_utf8" ; then -+ for cf_add_libdir in $cf_cv_library_path_utf8 -+ do -+ if test $cf_add_libdir = /usr/lib ; then -+ : -+ elif test -d $cf_add_libdir -+ then -+ cf_have_libdir=no -+ if test -n "$LDFLAGS$LIBS" ; then -+ # a loop is needed to ensure we can add subdirs of existing dirs -+ for cf_test_libdir in $LDFLAGS $LIBS ; do -+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then -+ cf_have_libdir=yes; break -+ fi -+ done -+ fi -+ if test "$cf_have_libdir" = no ; then -+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 -+ -+echo "${as_me:-configure}:7403: testing adding $cf_add_libdir to library-path ..." 1>&5 -+ -+ LDFLAGS="-L$cf_add_libdir $LDFLAGS" -+ fi -+ fi -+ done -+fi -+ -+ LIBS="$cf_cv_library_file_utf8 $LIBS" -+fi -+ -+cf_ncuconfig_root=ncursesw -+ -+echo "Looking for ${cf_ncuconfig_root}-config" -+ -+if test -n "$ac_tool_prefix"; then -+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:7423: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$NCURSES_CONFIG"; then -+ ac_cv_prog_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog" -+echo "$as_me:7438: found $ac_dir/$ac_word" >&5 -+break -+done -+ -+fi -+fi -+NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG -+if test -n "$NCURSES_CONFIG"; then -+ echo "$as_me:7446: result: $NCURSES_CONFIG" >&5 -+echo "${ECHO_T}$NCURSES_CONFIG" >&6 -+else -+ echo "$as_me:7449: result: no" >&5 - echo "${ECHO_T}no" >&6 -- LIBS="$cf_ncurses_SAVE" - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ -+ test -n "$NCURSES_CONFIG" && break -+ done - fi -+if test -z "$NCURSES_CONFIG"; then -+ ac_ct_NCURSES_CONFIG=$NCURSES_CONFIG -+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:7462: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_NCURSES_CONFIG"; then -+ ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_ct_NCURSES_CONFIG" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog" -+echo "$as_me:7477: found $ac_dir/$ac_word" >&5 -+break -+done - --cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+fi -+fi -+ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG -+if test -n "$ac_ct_NCURSES_CONFIG"; then -+ echo "$as_me:7485: result: $ac_ct_NCURSES_CONFIG" >&5 -+echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6 -+else -+ echo "$as_me:7488: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi - --cat >>confdefs.h <<EOF --#define $cf_nculib_ROOT 1 --EOF -+ test -n "$ac_ct_NCURSES_CONFIG" && break -+done -+test -n "$ac_ct_NCURSES_CONFIG" || ac_ct_NCURSES_CONFIG="none" - -+ NCURSES_CONFIG=$ac_ct_NCURSES_CONFIG - fi - -- ;; --ncursesw) -- cf_cv_libtype=w -+if test "$NCURSES_CONFIG" != none ; then - --echo "$as_me:7238: checking for multibyte character support" >&5 --echo $ECHO_N "checking for multibyte character support... $ECHO_C" >&6 --if test "${cf_cv_utf8_lib+set}" = set; then -+CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`" -+LIBS="`$NCURSES_CONFIG --libs` $LIBS" -+ -+# even with config script, some packages use no-override for curses.h -+ -+echo "$as_me:7506: checking if we have identified curses headers" >&5 -+echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_header+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - -- cf_save_LIBS="$LIBS" -- cat >conftest.$ac_ext <<_ACEOF --#line 7246 "configure" -+cf_cv_ncurses_header=none -+for cf_header in \ -+ ncursesw/ncurses.h \ -+ ncursesw/curses.h \ -+ ncurses.h \ -+ curses.h -+do -+cat >conftest.$ac_ext <<_ACEOF -+#line 7520 "configure" - #include "confdefs.h" -- --#include <stdlib.h> -+#include <${cf_header}> - int - main () - { --putwc(0,0); -+initscr(); tgoto("?", 0,0) - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7259: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7532: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7262: \$? = $ac_status" >&5 -+ echo "$as_me:7535: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7265: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7538: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7268: \$? = $ac_status" >&5 -+ echo "$as_me:7541: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_utf8_lib=yes -+ cf_cv_ncurses_header=$cf_header; break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+done - --# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these --# will be set on completion of the AC_TRY_LINK below. --cf_cv_header_path_utf8= --cf_cv_library_path_utf8= -+fi -+echo "$as_me:7552: result: $cf_cv_ncurses_header" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_header" >&6 - --echo "${as_me:-configure}:7280: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5 -+if test "$cf_cv_ncurses_header" = none ; then -+ { { echo "$as_me:7556: error: No curses header-files found" >&5 -+echo "$as_me: error: No curses header-files found" >&2;} -+ { (exit 1); exit 1; }; } -+fi - --cf_save_LIBS="$LIBS" -+# cheat, to get the right #define's for HAVE_NCURSES_H, etc. - --cat >conftest.$ac_ext <<_ACEOF --#line 7285 "configure" -+for ac_header in $cf_cv_ncurses_header -+do -+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -+echo "$as_me:7566: checking for $ac_header" >&5 -+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Header+set}\" = set"; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7572 "configure" - #include "confdefs.h" -+#include <$ac_header> -+_ACEOF -+if { (eval echo "$as_me:7576: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:7582: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ eval "$as_ac_Header=yes" -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ eval "$as_ac_Header=no" -+fi -+rm -f conftest.err conftest.$ac_ext -+fi -+echo "$as_me:7601: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -+if test `eval echo '${'$as_ac_Header'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -+EOF - --#include <libutf8.h> -+fi -+done -+ -+cat >>confdefs.h <<\EOF -+#define NCURSES 1 -+EOF -+ -+cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+cat >>confdefs.h <<EOF -+#define $cf_nculib_ROOT 1 -+EOF -+ -+cf_cv_ncurses_version=`$NCURSES_CONFIG --version` -+ -+else -+ -+cf_ncuhdr_root=ncursesw -+ -+test -n "$cf_cv_curses_dir" && \ -+test "$cf_cv_curses_dir" != "no" && { \ -+ -+if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then -+ for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root -+ do -+ while test $cf_add_incdir != /usr/include -+ do -+ if test -d $cf_add_incdir -+ then -+ cf_have_incdir=no -+ if test -n "$CFLAGS$CPPFLAGS" ; then -+ # a loop is needed to ensure we can add subdirs of existing dirs -+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do -+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then -+ cf_have_incdir=yes; break -+ fi -+ done -+ fi -+ -+ if test "$cf_have_incdir" = no ; then -+ if test "$cf_add_incdir" = /usr/local/include ; then -+ if test "$GCC" = yes -+ then -+ cf_save_CPPFLAGS=$CPPFLAGS -+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7654 "configure" -+#include "confdefs.h" -+#include <stdio.h> - int - main () - { --putwc(0,0); -+printf("Hello") - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7298: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7666: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7301: \$? = $ac_status" >&5 -+ echo "$as_me:7669: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7304: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7672: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7307: \$? = $ac_status" >&5 -+ echo "$as_me:7675: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- -- cf_cv_find_linkage_utf8=yes -- cf_cv_header_path_utf8=/usr/include -- cf_cv_library_path_utf8=/usr/lib -- -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_have_incdir=yes -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS=$cf_save_CPPFLAGS -+ fi -+ fi -+ fi - --LIBS="-lutf8 $cf_save_LIBS" -+ if test "$cf_have_incdir" = no ; then -+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --cat >conftest.$ac_ext <<_ACEOF --#line 7321 "configure" -+echo "${as_me:-configure}:7692: testing adding $cf_add_incdir to include-path ..." 1>&5 -+ -+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -+ -+ cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` -+ test "$cf_top_incdir" = "$cf_add_incdir" && break -+ cf_add_incdir="$cf_top_incdir" -+ else -+ break -+ fi -+ fi -+ done -+ done -+fi -+ -+} -+ -+echo "$as_me:7709: checking for $cf_ncuhdr_root header in include-path" >&5 -+echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+ cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h" -+ ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h" -+ for cf_header in $cf_header_list -+ do -+ -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7721 "configure" - #include "confdefs.h" - --#include <libutf8.h> -+#define _XOPEN_SOURCE_EXTENDED -+#undef HAVE_LIBUTF8_H /* in case we used CF_UTF8_LIB */ -+#define HAVE_LIBUTF8_H /* to force ncurses' header file to use cchar_t */ -+ -+#include <$cf_header> - int - main () - { --putwc(0,0); -+ -+#ifdef NCURSES_VERSION -+ -+#ifndef WACS_BSSB -+ make an error -+#endif -+ -+printf("%s\n", NCURSES_VERSION); -+#else -+#ifdef __NCURSES_H -+printf("old\n"); -+#else -+ make an error -+#endif -+#endif -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7334: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:7753: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7337: \$? = $ac_status" >&5 -+ echo "$as_me:7756: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7340: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:7759: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7343: \$? = $ac_status" >&5 -+ echo "$as_me:7762: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- -- cf_cv_find_linkage_utf8=yes -- cf_cv_header_path_utf8=/usr/include -- cf_cv_library_path_utf8=/usr/lib -- cf_cv_library_file_utf8="-lutf8" -+ cf_cv_ncurses_h=$cf_header - - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_cv_ncurses_h=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext - -- cf_cv_find_linkage_utf8=no -- LIBS="$cf_save_LIBS" -+ test "$cf_cv_ncurses_h" != no && break -+ done - -- test -n "$verbose" && echo " find linkage for utf8 library" 1>&6 -+fi -+echo "$as_me:7777: result: $cf_cv_ncurses_h" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_h" >&6 - --echo "${as_me:-configure}:7360: testing find linkage for utf8 library ..." 1>&5 -+if test "$cf_cv_ncurses_h" != no ; then -+ cf_cv_ncurses_header=$cf_cv_ncurses_h -+else - --echo "${as_me:-configure}:7362: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5 -+echo "$as_me:7784: checking for $cf_ncuhdr_root include-path" >&5 -+echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_h2+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - -- cf_save_CPPFLAGS="$CPPFLAGS" -- cf_test_CPPFLAGS="$CPPFLAGS" -+ test -n "$verbose" && echo - - cf_search= - -@@ -7375,15 +7800,15 @@ - -I*) - cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'` - --test "$cf_header_path" != "NONE" && \ -+test "x$cf_header_path" != "xNONE" && \ - test -d "$cf_header_path" && \ - { - test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path" - test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include" -- test -d $cf_header_path/include/utf8 && cf_search="$cf_search $cf_header_path/include/utf8" -- test -d $cf_header_path/include/utf8/include && cf_search="$cf_search $cf_header_path/include/utf8/include" -- test -d $cf_header_path/utf8/include && cf_search="$cf_search $cf_header_path/utf8/include" -- test -d $cf_header_path/utf8/include/utf8 && cf_search="$cf_search $cf_header_path/utf8/include/utf8" -+ test -d $cf_header_path/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root" -+ test -d $cf_header_path/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include" -+ test -d $cf_header_path/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include" -+ test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - - cf_header_path_list="$cf_header_path_list $cf_search" -@@ -7396,315 +7821,84 @@ - - cf_search= - --test "/usr" != "$prefix" && \ -+test "x/usr" != "x$prefix" && \ - test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /usr" - test -d /usr/include && cf_search="$cf_search /usr/include" -- test -d /usr/include/utf8 && cf_search="$cf_search /usr/include/utf8" -- test -d /usr/include/utf8/include && cf_search="$cf_search /usr/include/utf8/include" -- test -d /usr/utf8/include && cf_search="$cf_search /usr/utf8/include" -- test -d /usr/utf8/include/utf8 && cf_search="$cf_search /usr/utf8/include/utf8" -+ test -d /usr/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/include/$cf_ncuhdr_root" -+ test -d /usr/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include" -+ test -d /usr/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/$cf_ncuhdr_root/include" -+ test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "$prefix" != "NONE" && \ -+test "x$prefix" != "xNONE" && \ - test -d "$prefix" && \ - { - test -n "$verbose" && echo " ... testing for include-directories under $prefix" - test -d $prefix/include && cf_search="$cf_search $prefix/include" -- test -d $prefix/include/utf8 && cf_search="$cf_search $prefix/include/utf8" -- test -d $prefix/include/utf8/include && cf_search="$cf_search $prefix/include/utf8/include" -- test -d $prefix/utf8/include && cf_search="$cf_search $prefix/utf8/include" -- test -d $prefix/utf8/include/utf8 && cf_search="$cf_search $prefix/utf8/include/utf8" -+ test -d $prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root" -+ test -d $prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include" -+ test -d $prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include" -+ test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "/usr/local" != "$prefix" && \ -+test "x/usr/local" != "x$prefix" && \ - test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /usr/local" - test -d /usr/local/include && cf_search="$cf_search /usr/local/include" -- test -d /usr/local/include/utf8 && cf_search="$cf_search /usr/local/include/utf8" -- test -d /usr/local/include/utf8/include && cf_search="$cf_search /usr/local/include/utf8/include" -- test -d /usr/local/utf8/include && cf_search="$cf_search /usr/local/utf8/include" -- test -d /usr/local/utf8/include/utf8 && cf_search="$cf_search /usr/local/utf8/include/utf8" -+ test -d /usr/local/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root" -+ test -d /usr/local/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include" -+ test -d /usr/local/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include" -+ test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "/opt" != "$prefix" && \ -+test "x/opt" != "x$prefix" && \ - test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under /opt" - test -d /opt/include && cf_search="$cf_search /opt/include" -- test -d /opt/include/utf8 && cf_search="$cf_search /opt/include/utf8" -- test -d /opt/include/utf8/include && cf_search="$cf_search /opt/include/utf8/include" -- test -d /opt/utf8/include && cf_search="$cf_search /opt/utf8/include" -- test -d /opt/utf8/include/utf8 && cf_search="$cf_search /opt/utf8/include/utf8" -+ test -d /opt/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/include/$cf_ncuhdr_root" -+ test -d /opt/include/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include" -+ test -d /opt/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/$cf_ncuhdr_root/include" -+ test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - --test "$HOME" != "$prefix" && \ -+test "x$HOME" != "x$prefix" && \ - test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { - test -n "$verbose" && echo " ... testing for include-directories under $HOME" - test -d $HOME/include && cf_search="$cf_search $HOME/include" -- test -d $HOME/include/utf8 && cf_search="$cf_search $HOME/include/utf8" -- test -d $HOME/include/utf8/include && cf_search="$cf_search $HOME/include/utf8/include" -- test -d $HOME/utf8/include && cf_search="$cf_search $HOME/utf8/include" -- test -d $HOME/utf8/include/utf8 && cf_search="$cf_search $HOME/utf8/include/utf8" -+ test -d $HOME/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root" -+ test -d $HOME/include/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include" -+ test -d $HOME/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include" -+ test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root" - } - - test "$includedir" != NONE && \ - test "$includedir" != "/usr/include" && \ - test -d "$includedir" && { - test -d $includedir && cf_search="$cf_search $includedir" -- test -d $includedir/utf8 && cf_search="$cf_search $includedir/utf8" -+ test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root" - } - - test "$oldincludedir" != NONE && \ - test "$oldincludedir" != "/usr/include" && \ - test -d "$oldincludedir" && { - test -d $oldincludedir && cf_search="$cf_search $oldincludedir" -- test -d $oldincludedir/utf8 && cf_search="$cf_search $oldincludedir/utf8" -+ test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root" - } - - cf_search="$cf_search $cf_header_path_list" - -- for cf_cv_header_path_utf8 in $cf_search -- do -- if test -d $cf_cv_header_path_utf8 ; then -- test -n "$verbose" && echo " ... testing $cf_cv_header_path_utf8" 1>&6 -- --echo "${as_me:-configure}:7475: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5 -- -- CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_utf8" -- cat >conftest.$ac_ext <<_ACEOF --#line 7479 "configure" --#include "confdefs.h" -- --#include <libutf8.h> --int --main () --{ --putwc(0,0); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:7492: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:7495: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7498: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:7501: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- -- test -n "$verbose" && echo " ... found utf8 headers in $cf_cv_header_path_utf8" 1>&6 -- --echo "${as_me:-configure}:7506: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5 -- -- cf_cv_find_linkage_utf8=maybe -- cf_test_CPPFLAGS="$CPPFLAGS" -- break --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 -- -- CPPFLAGS="$cf_save_CPPFLAGS" -- --fi --rm -f conftest.$ac_objext conftest.$ac_ext -- fi -- done -- -- if test "$cf_cv_find_linkage_utf8" = maybe ; then -- --echo "${as_me:-configure}:7524: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5 -- -- cf_save_LIBS="$LIBS" -- cf_save_LDFLAGS="$LDFLAGS" -- -- if test "$cf_cv_find_linkage_utf8" != yes ; then -- --cf_search= --cf_library_path_list="" --if test -n "${LDFLAGS}${LIBS}" ; then -- for cf_library_path in $LDFLAGS $LIBS -+ test -n "$verbose" && echo search path $cf_search -+ cf_save2_CPPFLAGS="$CPPFLAGS" -+ for cf_incdir in $cf_search - do -- case $cf_library_path in #(vi -- -L*) -- cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'` -- --test "$cf_library_path" != "NONE" && \ --test -d "$cf_library_path" && \ -- { -- test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path" -- test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib" -- test -d $cf_library_path/lib/utf8 && cf_search="$cf_search $cf_library_path/lib/utf8" -- test -d $cf_library_path/lib/utf8/lib && cf_search="$cf_search $cf_library_path/lib/utf8/lib" -- test -d $cf_library_path/utf8/lib && cf_search="$cf_search $cf_library_path/utf8/lib" -- test -d $cf_library_path/utf8/lib/utf8 && cf_search="$cf_search $cf_library_path/utf8/lib/utf8" --} -- -- cf_library_path_list="$cf_library_path_list $cf_search" -- ;; -- esac -- done --fi -- --cf_search= -- --test "/usr" != "$prefix" && \ --test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for lib-directories under /usr" -- test -d /usr/lib && cf_search="$cf_search /usr/lib" -- test -d /usr/lib/utf8 && cf_search="$cf_search /usr/lib/utf8" -- test -d /usr/lib/utf8/lib && cf_search="$cf_search /usr/lib/utf8/lib" -- test -d /usr/utf8/lib && cf_search="$cf_search /usr/utf8/lib" -- test -d /usr/utf8/lib/utf8 && cf_search="$cf_search /usr/utf8/lib/utf8" --} -- --test "$prefix" != "NONE" && \ --test -d "$prefix" && \ -- { -- test -n "$verbose" && echo " ... testing for lib-directories under $prefix" -- test -d $prefix/lib && cf_search="$cf_search $prefix/lib" -- test -d $prefix/lib/utf8 && cf_search="$cf_search $prefix/lib/utf8" -- test -d $prefix/lib/utf8/lib && cf_search="$cf_search $prefix/lib/utf8/lib" -- test -d $prefix/utf8/lib && cf_search="$cf_search $prefix/utf8/lib" -- test -d $prefix/utf8/lib/utf8 && cf_search="$cf_search $prefix/utf8/lib/utf8" --} -- --test "/usr/local" != "$prefix" && \ --test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for lib-directories under /usr/local" -- test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib" -- test -d /usr/local/lib/utf8 && cf_search="$cf_search /usr/local/lib/utf8" -- test -d /usr/local/lib/utf8/lib && cf_search="$cf_search /usr/local/lib/utf8/lib" -- test -d /usr/local/utf8/lib && cf_search="$cf_search /usr/local/utf8/lib" -- test -d /usr/local/utf8/lib/utf8 && cf_search="$cf_search /usr/local/utf8/lib/utf8" --} -- --test "/opt" != "$prefix" && \ --test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for lib-directories under /opt" -- test -d /opt/lib && cf_search="$cf_search /opt/lib" -- test -d /opt/lib/utf8 && cf_search="$cf_search /opt/lib/utf8" -- test -d /opt/lib/utf8/lib && cf_search="$cf_search /opt/lib/utf8/lib" -- test -d /opt/utf8/lib && cf_search="$cf_search /opt/utf8/lib" -- test -d /opt/utf8/lib/utf8 && cf_search="$cf_search /opt/utf8/lib/utf8" --} -- --test "$HOME" != "$prefix" && \ --test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for lib-directories under $HOME" -- test -d $HOME/lib && cf_search="$cf_search $HOME/lib" -- test -d $HOME/lib/utf8 && cf_search="$cf_search $HOME/lib/utf8" -- test -d $HOME/lib/utf8/lib && cf_search="$cf_search $HOME/lib/utf8/lib" -- test -d $HOME/utf8/lib && cf_search="$cf_search $HOME/utf8/lib" -- test -d $HOME/utf8/lib/utf8 && cf_search="$cf_search $HOME/utf8/lib/utf8" --} -- --cf_search="$cf_library_path_list $cf_search" -- -- for cf_cv_library_path_utf8 in $cf_search -- do -- if test -d $cf_cv_library_path_utf8 ; then -- test -n "$verbose" && echo " ... testing $cf_cv_library_path_utf8" 1>&6 -- --echo "${as_me:-configure}:7621: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5 -- -- CPPFLAGS="$cf_test_CPPFLAGS" -- LIBS="-lutf8 $cf_save_LIBS" -- LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_utf8" -- cat >conftest.$ac_ext <<_ACEOF --#line 7627 "configure" --#include "confdefs.h" -- --#include <libutf8.h> --int --main () --{ --putwc(0,0); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:7640: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:7643: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:7646: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:7649: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- -- test -n "$verbose" && echo " ... found utf8 library in $cf_cv_library_path_utf8" 1>&6 -- --echo "${as_me:-configure}:7654: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5 -- -- cf_cv_find_linkage_utf8=yes -- cf_cv_library_file_utf8="-lutf8" -- break --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 -- -- CPPFLAGS="$cf_save_CPPFLAGS" -- LIBS="$cf_save_LIBS" -- LDFLAGS="$cf_save_LDFLAGS" -- --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- fi -- done -- CPPFLAGS="$cf_save_CPPFLAGS" -- LDFLAGS="$cf_save_LDFLAGS" -- fi -- -- else -- cf_cv_find_linkage_utf8=no -- fi -- --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- --LIBS="$cf_save_LIBS" -- --if test "$cf_cv_find_linkage_utf8" = yes ; then --cf_cv_utf8_lib=add-on --else --cf_cv_utf8_lib=no --fi -- --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:7696: result: $cf_cv_utf8_lib" >&5 --echo "${ECHO_T}$cf_cv_utf8_lib" >&6 -- --# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between --# ncurses/ncursesw: --if test "$cf_cv_utf8_lib" = "add-on" ; then -- cat >>confdefs.h <<\EOF --#define HAVE_LIBUTF8_H 1 --EOF - --if test -n "$cf_cv_header_path_utf8" ; then -- for cf_add_incdir in $cf_cv_header_path_utf8 -+if test -n "$cf_incdir" ; then -+ for cf_add_incdir in $cf_incdir - do - while test $cf_add_incdir != /usr/include - do -@@ -7727,7 +7921,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 7730 "configure" -+#line 7924 "configure" - #include "confdefs.h" - #include <stdio.h> - int -@@ -7739,16 +7933,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7742: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:7936: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7745: \$? = $ac_status" >&5 -+ echo "$as_me:7939: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7748: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:7942: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7751: \$? = $ac_status" >&5 -+ echo "$as_me:7945: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -7765,7 +7959,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:7768: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:7962: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -7780,215 +7974,82 @@ - done - fi - --if test -n "$cf_cv_library_path_utf8" ; then -- for cf_add_libdir in $cf_cv_library_path_utf8 -- do -- if test $cf_add_libdir = /usr/lib ; then -- : -- elif test -d $cf_add_libdir -- then -- cf_have_libdir=no -- if test -n "$LDFLAGS$LIBS" ; then -- # a loop is needed to ensure we can add subdirs of existing dirs -- for cf_test_libdir in $LDFLAGS $LIBS ; do -- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then -- cf_have_libdir=yes; break -- fi -- done -- fi -- if test "$cf_have_libdir" = no ; then -- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6 -+ for cf_header in \ -+ ncurses.h \ -+ curses.h -+ do - --echo "${as_me:-configure}:7802: testing adding $cf_add_libdir to library-path ..." 1>&5 -+ cat >conftest.$ac_ext <<_ACEOF -+#line 7983 "configure" -+#include "confdefs.h" - -- LDFLAGS="-L$cf_add_libdir $LDFLAGS" -- fi -- fi -- done --fi -- -- LIBS="$cf_cv_library_file_utf8 $LIBS" --fi -- --cf_ncuconfig_root=ncursesw -- --echo "Looking for ${cf_ncuconfig_root}-config" --for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config --do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 --echo "$as_me:7820: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_path_NCURSES_CONFIG+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- case $NCURSES_CONFIG in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test with a path. -- ;; -- *) -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- if $as_executable_p "$ac_dir/$ac_word"; then -- ac_cv_path_NCURSES_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:7837: found $ac_dir/$ac_word" >&5 -- break --fi --done -- -- ;; --esac --fi --NCURSES_CONFIG=$ac_cv_path_NCURSES_CONFIG -- --if test -n "$NCURSES_CONFIG"; then -- echo "$as_me:7848: result: $NCURSES_CONFIG" >&5 --echo "${ECHO_T}$NCURSES_CONFIG" >&6 --else -- echo "$as_me:7851: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi -- -- test -n "$NCURSES_CONFIG" && break --done --test -n "$NCURSES_CONFIG" || NCURSES_CONFIG="none" -- --if test "$NCURSES_CONFIG" != none ; then -- --CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`" --LIBS="`$NCURSES_CONFIG --libs` $LIBS" -- --# even with config script, some packages use no-override for curses.h -- --echo "$as_me:7866: checking if we have identified curses headers" >&5 --echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6 --if test "${cf_cv_ncurses_header+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- --cf_cv_ncurses_header=none --for cf_header in \ -- ncursesw/curses.h \ -- ncursesw/ncurses.h \ -- curses.h \ -- ncurses.h --do --cat >conftest.$ac_ext <<_ACEOF --#line 7880 "configure" --#include "confdefs.h" --#include <${cf_header}> -+#include <$cf_header> - int - main () - { --initscr(); tgoto("?", 0,0) -+ -+#ifdef NCURSES_VERSION -+ -+printf("%s\n", NCURSES_VERSION); -+#else -+#ifdef __NCURSES_H -+printf("old\n"); -+#else -+ make an error -+#endif -+#endif -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:7892: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8007: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:7895: \$? = $ac_status" >&5 -+ echo "$as_me:8010: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:7898: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8013: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:7901: \$? = $ac_status" >&5 -+ echo "$as_me:8016: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ncurses_header=$cf_header; break -+ cf_cv_ncurses_h2=$cf_header -+ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_cv_ncurses_h2=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext --done -- --fi --echo "$as_me:7912: result: $cf_cv_ncurses_header" >&5 --echo "${ECHO_T}$cf_cv_ncurses_header" >&6 - --if test "$cf_cv_ncurses_header" = none ; then -- { { echo "$as_me:7916: error: No curses header-files found" >&5 --echo "$as_me: error: No curses header-files found" >&2;} -+ if test "$cf_cv_ncurses_h2" != no ; then -+ cf_cv_ncurses_h2=$cf_incdir/$cf_header -+ test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&6 -+ break -+ fi -+ test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6 -+ done -+ CPPFLAGS="$cf_save2_CPPFLAGS" -+ test "$cf_cv_ncurses_h2" != no && break -+ done -+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:8037: error: not found" >&5 -+echo "$as_me: error: not found" >&2;} - { (exit 1); exit 1; }; } --fi -- --# cheat, to get the right #define's for HAVE_NCURSES_H, etc. -- --for ac_header in $cf_cv_ncurses_header --do --as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:7926: checking for $ac_header" >&5 --echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Header+set}\" = set"; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 7932 "configure" --#include "confdefs.h" --#include <$ac_header> --_ACEOF --if { (eval echo "$as_me:7936: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -- ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:7942: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- eval "$as_ac_Header=yes" --else -- echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- eval "$as_ac_Header=no" --fi --rm -f conftest.err conftest.$ac_ext --fi --echo "$as_me:7961: result: `eval echo '${'$as_ac_Header'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 --if test `eval echo '${'$as_ac_Header'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 --EOF - - fi --done -- --cat >>confdefs.h <<\EOF --#define NCURSES 1 --EOF -- --cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -- --cat >>confdefs.h <<EOF --#define $cf_nculib_ROOT 1 --EOF -- --cf_cv_ncurses_version=`$NCURSES_CONFIG --version` -- --else -- --cf_ncuhdr_root=ncursesw -+echo "$as_me:8042: result: $cf_cv_ncurses_h2" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_h2" >&6 - --test -n "$cf_cv_curses_dir" && \ --test "$cf_cv_curses_dir" != "no" && { \ -+ cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'` -+ cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2` -+ if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then -+ cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header -+ fi - --if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then -- for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root -+if test -n "$cf_1st_incdir" ; then -+ for cf_add_incdir in $cf_1st_incdir - do - while test $cf_add_incdir != /usr/include - do -@@ -8011,7 +8072,7 @@ - cf_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - cat >conftest.$ac_ext <<_ACEOF --#line 8014 "configure" -+#line 8075 "configure" - #include "confdefs.h" - #include <stdio.h> - int -@@ -8023,16 +8084,16 @@ - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8026: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8087: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8029: \$? = $ac_status" >&5 -+ echo "$as_me:8090: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8032: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8093: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8035: \$? = $ac_status" >&5 -+ echo "$as_me:8096: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : - else -@@ -8049,7 +8110,7 @@ - if test "$cf_have_incdir" = no ; then - test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 - --echo "${as_me:-configure}:8052: testing adding $cf_add_incdir to include-path ..." 1>&5 -+echo "${as_me:-configure}:8113: testing adding $cf_add_incdir to include-path ..." 1>&5 - - CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" - -@@ -8064,1639 +8125,1554 @@ - done - fi - --} -+fi - --echo "$as_me:8069: checking for $cf_ncuhdr_root header in include-path" >&5 --echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6 --if test "${cf_cv_ncurses_h+set}" = set; then -+# Set definitions to allow ifdef'ing for ncurses.h -+ -+case $cf_cv_ncurses_header in # (vi -+*ncurses.h) -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSES_H 1 -+EOF -+ -+ ;; -+esac -+ -+case $cf_cv_ncurses_header in # (vi -+ncurses/curses.h|ncurses/ncurses.h) -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSES_NCURSES_H 1 -+EOF -+ -+ ;; -+ncursesw/curses.h|ncursesw/ncurses.h) -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSESW_NCURSES_H 1 -+EOF -+ -+ ;; -+esac -+ -+echo "$as_me:8159: checking for terminfo header" >&5 -+echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6 -+if test "${cf_cv_term_header+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - -- cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h" -- ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h" -- for cf_header in $cf_header_list -- do -+case ${cf_cv_ncurses_header} in #(vi -+*/ncurses.h|*/ncursesw.h) #(vi -+ cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'` -+ ;; -+*) -+ cf_term_header=term.h -+ ;; -+esac - -- cat >conftest.$ac_ext <<_ACEOF --#line 8081 "configure" -+for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h" -+do -+cat >conftest.$ac_ext <<_ACEOF -+#line 8177 "configure" - #include "confdefs.h" -+#include <stdio.h> -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <$cf_test> - --#define _XOPEN_SOURCE_EXTENDED --#undef HAVE_LIBUTF8_H /* in case we used CF_UTF8_LIB */ --#define HAVE_LIBUTF8_H /* to force ncurses' header file to use cchar_t */ -- --#include <$cf_header> - int - main () - { -- --#ifdef NCURSES_VERSION -- --#ifndef WACS_BSSB -- make an error --#endif -- --printf("%s\n", NCURSES_VERSION); --#else --#ifdef __NCURSES_H --printf("old\n"); --#else -- make an error --#endif --#endif -- -+int x = auto_left_margin - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:8113: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:8192: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:8116: \$? = $ac_status" >&5 -+ echo "$as_me:8195: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8119: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8198: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8122: \$? = $ac_status" >&5 -+ echo "$as_me:8201: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ncurses_h=$cf_header - -+ cf_cv_term_header="$cf_test" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_ncurses_h=no -+ -+ cf_cv_term_header=unknown -+ - fi - rm -f conftest.$ac_objext conftest.$ac_ext -- -- test "$cf_cv_ncurses_h" != no && break -- done -+ test "$cf_cv_term_header" != unknown && break -+done - - fi --echo "$as_me:8137: result: $cf_cv_ncurses_h" >&5 --echo "${ECHO_T}$cf_cv_ncurses_h" >&6 -+echo "$as_me:8217: result: $cf_cv_term_header" >&5 -+echo "${ECHO_T}$cf_cv_term_header" >&6 - --if test "$cf_cv_ncurses_h" != no ; then -- cf_cv_ncurses_header=$cf_cv_ncurses_h --else -+# Set definitions to allow ifdef'ing to accommodate subdirectories - --echo "$as_me:8144: checking for $cf_ncuhdr_root include-path" >&5 --echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6 --if test "${cf_cv_ncurses_h2+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+case $cf_cv_term_header in # (vi -+*term.h) - -- test -n "$verbose" && echo -+cat >>confdefs.h <<\EOF -+#define HAVE_TERM_H 1 -+EOF - --cf_search= -+ ;; -+esac - --# collect the current set of include-directories from compiler flags --cf_header_path_list="" --if test -n "${CFLAGS}${CPPFLAGS}" ; then -- for cf_header_path in $CPPFLAGS $CFLAGS -- do -- case $cf_header_path in #(vi -- -I*) -- cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'` -+case $cf_cv_term_header in # (vi -+ncurses/term.h) #(vi - --test "$cf_header_path" != "NONE" && \ --test -d "$cf_header_path" && \ -- { -- test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path" -- test -d $cf_header_path/include && cf_search="$cf_search $cf_header_path/include" -- test -d $cf_header_path/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root" -- test -d $cf_header_path/include/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include" -- test -d $cf_header_path/$cf_ncuhdr_root/include && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include" -- test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSES_TERM_H 1 -+EOF - -- cf_header_path_list="$cf_header_path_list $cf_search" -- ;; -- esac -- done --fi -+ ;; -+ncursesw/term.h) - --# add the variations for the package we are looking for -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSESW_TERM_H 1 -+EOF - --cf_search= -+ ;; -+esac - --test "/usr" != "$prefix" && \ --test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for include-directories under /usr" -- test -d /usr/include && cf_search="$cf_search /usr/include" -- test -d /usr/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/include/$cf_ncuhdr_root" -- test -d /usr/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include" -- test -d /usr/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/$cf_ncuhdr_root/include" -- test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+# some applications need this, but should check for NCURSES_VERSION - --test "$prefix" != "NONE" && \ --test -d "$prefix" && \ -- { -- test -n "$verbose" && echo " ... testing for include-directories under $prefix" -- test -d $prefix/include && cf_search="$cf_search $prefix/include" -- test -d $prefix/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root" -- test -d $prefix/include/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include" -- test -d $prefix/$cf_ncuhdr_root/include && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include" -- test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+cat >>confdefs.h <<\EOF -+#define NCURSES 1 -+EOF - --test "/usr/local" != "$prefix" && \ --test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for include-directories under /usr/local" -- test -d /usr/local/include && cf_search="$cf_search /usr/local/include" -- test -d /usr/local/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root" -- test -d /usr/local/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include" -- test -d /usr/local/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include" -- test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+echo "$as_me:8255: checking for ncurses version" >&5 -+echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_version+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - --test "/opt" != "$prefix" && \ --test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for include-directories under /opt" -- test -d /opt/include && cf_search="$cf_search /opt/include" -- test -d /opt/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/include/$cf_ncuhdr_root" -- test -d /opt/include/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include" -- test -d /opt/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/$cf_ncuhdr_root/include" -- test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+ cf_cv_ncurses_version=no -+ cf_tempfile=out$$ -+ rm -f $cf_tempfile -+ if test "$cross_compiling" = yes; then - --test "$HOME" != "$prefix" && \ --test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for include-directories under $HOME" -- test -d $HOME/include && cf_search="$cf_search $HOME/include" -- test -d $HOME/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root" -- test -d $HOME/include/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include" -- test -d $HOME/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include" -- test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root" --} -+ # This will not work if the preprocessor splits the line after the -+ # Autoconf token. The 'unproto' program does that. -+ cat > conftest.$ac_ext <<EOF -+#include <${cf_cv_ncurses_header:-curses.h}> -+#undef Autoconf -+#ifdef NCURSES_VERSION -+Autoconf NCURSES_VERSION -+#else -+#ifdef __NCURSES_H -+Autoconf "old" -+#endif -+; -+#endif -+EOF -+ cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out" -+ { (eval echo "$as_me:8281: \"$cf_try\"") >&5 -+ (eval $cf_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:8284: \$? = $ac_status" >&5 -+ (exit $ac_status); } -+ if test -f conftest.out ; then -+ cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'` -+ test -n "$cf_out" && cf_cv_ncurses_version="$cf_out" -+ rm -f conftest.out -+ fi - --test "$includedir" != NONE && \ --test "$includedir" != "/usr/include" && \ --test -d "$includedir" && { -- test -d $includedir && cf_search="$cf_search $includedir" -- test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root" --} -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8294 "configure" -+#include "confdefs.h" - --test "$oldincludedir" != NONE && \ --test "$oldincludedir" != "/usr/include" && \ --test -d "$oldincludedir" && { -- test -d $oldincludedir && cf_search="$cf_search $oldincludedir" -- test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root" -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <stdio.h> -+int main() -+{ -+ FILE *fp = fopen("$cf_tempfile", "w"); -+#ifdef NCURSES_VERSION -+# ifdef NCURSES_VERSION_PATCH -+ fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH); -+# else -+ fprintf(fp, "%s\n", NCURSES_VERSION); -+# endif -+#else -+# ifdef __NCURSES_H -+ fprintf(fp, "old\n"); -+# else -+ make an error -+# endif -+#endif -+ ${cf_cv_main_return:-return}(0); - } -+_ACEOF -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:8319: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:8322: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:8324: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:8327: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then - --cf_search="$cf_search $cf_header_path_list" -- -- test -n "$verbose" && echo search path $cf_search -- cf_save2_CPPFLAGS="$CPPFLAGS" -- for cf_incdir in $cf_search -- do -+ cf_cv_ncurses_version=`cat $cf_tempfile` -+else -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+fi -+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+fi -+ rm -f $cf_tempfile - --if test -n "$cf_incdir" ; then -- for cf_add_incdir in $cf_incdir -- do -- while test $cf_add_incdir != /usr/include -- do -- if test -d $cf_add_incdir -- then -- cf_have_incdir=no -- if test -n "$CFLAGS$CPPFLAGS" ; then -- # a loop is needed to ensure we can add subdirs of existing dirs -- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do -- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then -- cf_have_incdir=yes; break -- fi -- done -- fi -+fi -+echo "$as_me:8341: result: $cf_cv_ncurses_version" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_version" >&6 -+test "$cf_cv_ncurses_version" = no || -+cat >>confdefs.h <<\EOF -+#define NCURSES 1 -+EOF - -- if test "$cf_have_incdir" = no ; then -- if test "$cf_add_incdir" = /usr/local/include ; then -- if test "$GCC" = yes -- then -- cf_save_CPPFLAGS=$CPPFLAGS -- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -- cat >conftest.$ac_ext <<_ACEOF --#line 8284 "configure" -+cf_nculib_root=ncursesw -+ # This works, except for the special case where we find gpm, but -+ # ncurses is in a nonstandard location via $LIBS, and we really want -+ # to link gpm. -+cf_ncurses_LIBS="" -+cf_ncurses_SAVE="$LIBS" -+echo "$as_me:8354: checking for Gpm_Open in -lgpm" >&5 -+echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6 -+if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lgpm $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 8362 "configure" - #include "confdefs.h" --#include <stdio.h> -+ -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char Gpm_Open (); - int - main () - { --printf("Hello") -+Gpm_Open (); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:8296: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:8381: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8299: \$? = $ac_status" >&5 -+ echo "$as_me:8384: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8302: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:8387: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8305: \$? = $ac_status" >&5 -+ echo "$as_me:8390: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ ac_cv_lib_gpm_Gpm_Open=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_have_incdir=yes -+ac_cv_lib_gpm_Gpm_Open=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- CPPFLAGS=$cf_save_CPPFLAGS -- fi -- fi -- fi -- -- if test "$cf_have_incdir" = no ; then -- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 -- --echo "${as_me:-configure}:8322: testing adding $cf_add_incdir to include-path ..." 1>&5 -- -- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -- -- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` -- test "$cf_top_incdir" = "$cf_add_incdir" && break -- cf_add_incdir="$cf_top_incdir" -- else -- break -- fi -- fi -- done -- done -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS - fi -- -- for cf_header in \ -- ncurses.h \ -- curses.h -- do -- -- cat >conftest.$ac_ext <<_ACEOF --#line 8343 "configure" -+echo "$as_me:8401: result: $ac_cv_lib_gpm_Gpm_Open" >&5 -+echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6 -+if test $ac_cv_lib_gpm_Gpm_Open = yes; then -+ echo "$as_me:8404: checking for initscr in -lgpm" >&5 -+echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6 -+if test "${ac_cv_lib_gpm_initscr+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lgpm $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 8412 "configure" - #include "confdefs.h" - --#include <$cf_header> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char initscr (); - int - main () - { -- --#ifdef NCURSES_VERSION -- --printf("%s\n", NCURSES_VERSION); --#else --#ifdef __NCURSES_H --printf("old\n"); --#else -- make an error --#endif --#endif -- -+initscr (); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:8367: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:8431: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8370: \$? = $ac_status" >&5 -+ echo "$as_me:8434: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8373: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:8437: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8376: \$? = $ac_status" >&5 -+ echo "$as_me:8440: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ncurses_h2=$cf_header -- -+ ac_cv_lib_gpm_initscr=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_ncurses_h2=no -+ac_cv_lib_gpm_initscr=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- -- if test "$cf_cv_ncurses_h2" != no ; then -- cf_cv_ncurses_h2=$cf_incdir/$cf_header -- test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&6 -- break -- fi -- test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6 -- done -- CPPFLAGS="$cf_save2_CPPFLAGS" -- test "$cf_cv_ncurses_h2" != no && break -- done -- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:8397: error: not found" >&5 --echo "$as_me: error: not found" >&2;} -- { (exit 1); exit 1; }; } -- -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:8451: result: $ac_cv_lib_gpm_initscr" >&5 -+echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6 -+if test $ac_cv_lib_gpm_initscr = yes; then -+ LIBS="$cf_ncurses_SAVE" -+else -+ cf_ncurses_LIBS="-lgpm" - fi --echo "$as_me:8402: result: $cf_cv_ncurses_h2" >&5 --echo "${ECHO_T}$cf_cv_ncurses_h2" >&6 -- -- cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'` -- cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2` -- if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then -- cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header -- fi - --if test -n "$cf_1st_incdir" ; then -- for cf_add_incdir in $cf_1st_incdir -- do -- while test $cf_add_incdir != /usr/include -- do -- if test -d $cf_add_incdir -- then -- cf_have_incdir=no -- if test -n "$CFLAGS$CPPFLAGS" ; then -- # a loop is needed to ensure we can add subdirs of existing dirs -- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do -- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then -- cf_have_incdir=yes; break -- fi -- done -- fi -+fi - -- if test "$cf_have_incdir" = no ; then -- if test "$cf_add_incdir" = /usr/local/include ; then -- if test "$GCC" = yes -- then -- cf_save_CPPFLAGS=$CPPFLAGS -- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -- cat >conftest.$ac_ext <<_ACEOF --#line 8435 "configure" -+case $host_os in #(vi -+freebsd*) -+ # This is only necessary if you are linking against an obsolete -+ # version of ncurses (but it should do no harm, since it's static). -+ if test "$cf_nculib_root" = ncurses ; then -+ echo "$as_me:8466: checking for tgoto in -lmytinfo" >&5 -+echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6 -+if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lmytinfo $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 8474 "configure" - #include "confdefs.h" --#include <stdio.h> -+ -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char tgoto (); - int - main () - { --printf("Hello") -+tgoto (); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:8447: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:8493: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8450: \$? = $ac_status" >&5 -+ echo "$as_me:8496: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8453: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:8499: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8456: \$? = $ac_status" >&5 -+ echo "$as_me:8502: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ ac_cv_lib_mytinfo_tgoto=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_have_incdir=yes -+ac_cv_lib_mytinfo_tgoto=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- CPPFLAGS=$cf_save_CPPFLAGS -- fi -- fi -- fi -- -- if test "$cf_have_incdir" = no ; then -- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6 -- --echo "${as_me:-configure}:8473: testing adding $cf_add_incdir to include-path ..." 1>&5 -- -- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" -- -- cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` -- test "$cf_top_incdir" = "$cf_add_incdir" && break -- cf_add_incdir="$cf_top_incdir" -- else -- break -- fi -- fi -- done -- done -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS - fi -- -+echo "$as_me:8513: result: $ac_cv_lib_mytinfo_tgoto" >&5 -+echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6 -+if test $ac_cv_lib_mytinfo_tgoto = yes; then -+ cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS" - fi - --# Set definitions to allow ifdef'ing for ncurses.h -- --case $cf_cv_ncurses_header in # (vi --*ncurses.h) -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSES_H 1 --EOF -- -+ fi - ;; - esac - --case $cf_cv_ncurses_header in # (vi --ncurses/curses.h|ncurses/ncurses.h) -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSES_NCURSES_H 1 --EOF -- -- ;; --ncursesw/curses.h|ncursesw/ncurses.h) -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSESW_NCURSES_H 1 --EOF -+LIBS="$cf_ncurses_LIBS $LIBS" - -- ;; --esac -+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" ) -+then -+ LIBS="-l$cf_nculib_root $LIBS" -+else - --echo "$as_me:8516: checking for terminfo header" >&5 --echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6 --if test "${cf_cv_term_header+set}" = set; then -+ eval 'cf_cv_have_lib_'$cf_nculib_root'=no' -+ cf_libdir="" -+ echo "$as_me:8532: checking for initscr" >&5 -+echo $ECHO_N "checking for initscr... $ECHO_C" >&6 -+if test "${ac_cv_func_initscr+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- --case ${cf_cv_ncurses_header} in #(vi --*/ncurses.h|*/ncursesw.h) #(vi -- cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'` -- ;; --*) -- cf_term_header=term.h -- ;; --esac -- --for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h" --do --cat >conftest.$ac_ext <<_ACEOF --#line 8534 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8538 "configure" - #include "confdefs.h" --#include <stdio.h> --#include <${cf_cv_ncurses_header:-curses.h}> --#include <$cf_test> -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char initscr (); below. */ -+#include <assert.h> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char initscr (); -+char (*f) (); - - int - main () - { --int x = auto_left_margin -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_initscr) || defined (__stub___initscr) -+choke me -+#else -+f = initscr; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:8549: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:8569: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8552: \$? = $ac_status" >&5 -+ echo "$as_me:8572: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:8555: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:8575: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8558: \$? = $ac_status" >&5 -+ echo "$as_me:8578: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- -- cf_cv_term_header="$cf_test" -+ ac_cv_func_initscr=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -- -- cf_cv_term_header=unknown -- -+ac_cv_func_initscr=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- test "$cf_cv_term_header" != unknown && break --done -- -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi --echo "$as_me:8574: result: $cf_cv_term_header" >&5 --echo "${ECHO_T}$cf_cv_term_header" >&6 -- --# Set definitions to allow ifdef'ing to accommodate subdirectories -- --case $cf_cv_term_header in # (vi --*term.h) -- cat >>confdefs.h <<\EOF --#define HAVE_TERM_H 1 --EOF -- -- ;; --esac -- --case $cf_cv_term_header in # (vi --ncurses/term.h) #(vi -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSES_TERM_H 1 --EOF -- -- ;; --ncursesw/term.h) -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSESW_TERM_H 1 --EOF -- -- ;; --esac -- --# some applications need this, but should check for NCURSES_VERSION --cat >>confdefs.h <<\EOF --#define NCURSES 1 --EOF -- --echo "$as_me:8608: checking for ncurses version" >&5 --echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6 --if test "${cf_cv_ncurses_version+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 -+echo "$as_me:8588: result: $ac_cv_func_initscr" >&5 -+echo "${ECHO_T}$ac_cv_func_initscr" >&6 -+if test $ac_cv_func_initscr = yes; then -+ eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' - else - -- cf_cv_ncurses_version=no -- cf_tempfile=out$$ -- rm -f $cf_tempfile -- if test "$cross_compiling" = yes; then -- -- # This will not work if the preprocessor splits the line after the -- # Autoconf token. The 'unproto' program does that. -- cat > conftest.$ac_ext <<EOF --#include <${cf_cv_ncurses_header:-curses.h}> --#undef Autoconf --#ifdef NCURSES_VERSION --Autoconf NCURSES_VERSION --#else --#ifdef __NCURSES_H --Autoconf "old" --#endif --; --#endif --EOF -- cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out" -- { (eval echo "$as_me:8634: \"$cf_try\"") >&5 -- (eval $cf_try) 2>&5 -- ac_status=$? -- echo "$as_me:8637: \$? = $ac_status" >&5 -- (exit $ac_status); } -- if test -f conftest.out ; then -- cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[^"]*"%%' -e 's%".*%%'` -- test -n "$cf_out" && cf_cv_ncurses_version="$cf_out" -- rm -f conftest.out -- fi -- --else -- cat >conftest.$ac_ext <<_ACEOF --#line 8647 "configure" -+ cf_save_LIBS="$LIBS" -+ echo "$as_me:8595: checking for initscr in -l$cf_nculib_root" >&5 -+echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6 -+ LIBS="-l$cf_nculib_root $LIBS" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8599 "configure" - #include "confdefs.h" -- - #include <${cf_cv_ncurses_header:-curses.h}> --#include <stdio.h> --int main() -+int -+main () - { -- FILE *fp = fopen("$cf_tempfile", "w"); --#ifdef NCURSES_VERSION --# ifdef NCURSES_VERSION_PATCH -- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH); --# else -- fprintf(fp, "%s\n", NCURSES_VERSION); --# endif --#else --# ifdef __NCURSES_H -- fprintf(fp, "old\n"); --# else -- make an error --# endif --#endif -- ${cf_cv_main_return:-return}(0); -+initscr() -+ ; -+ return 0; - } - _ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:8672: \"$ac_link\"") >&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:8611: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8675: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:8677: \"$ac_try\"") >&5 -+ echo "$as_me:8614: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:8617: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8680: \$? = $ac_status" >&5 -+ echo "$as_me:8620: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -+ echo "$as_me:8622: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+ eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' - -- cf_cv_ncurses_version=`cat $cf_tempfile` - else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 -+ echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --fi --rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext --fi -- rm -f $cf_tempfile -+echo "$as_me:8629: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+ -+cf_search= -+cf_library_path_list="" -+if test -n "${LDFLAGS}${LIBS}" ; then -+ for cf_library_path in $LDFLAGS $LIBS -+ do -+ case $cf_library_path in #(vi -+ -L*) -+ cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'` -+ -+test "x$cf_library_path" != "xNONE" && \ -+test -d "$cf_library_path" && \ -+ { -+ test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path" -+ test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib" -+ test -d $cf_library_path/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root" -+ test -d $cf_library_path/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib" -+ test -d $cf_library_path/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib" -+ test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root" -+} - -+ cf_library_path_list="$cf_library_path_list $cf_search" -+ ;; -+ esac -+ done - fi --echo "$as_me:8694: result: $cf_cv_ncurses_version" >&5 --echo "${ECHO_T}$cf_cv_ncurses_version" >&6 --test "$cf_cv_ncurses_version" = no || cat >>confdefs.h <<\EOF --#define NCURSES 1 --EOF - --cf_nculib_root=ncursesw -- # This works, except for the special case where we find gpm, but -- # ncurses is in a nonstandard location via $LIBS, and we really want -- # to link gpm. --cf_ncurses_LIBS="" --cf_ncurses_SAVE="$LIBS" --echo "$as_me:8706: checking for Gpm_Open in -lgpm" >&5 --echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6 --if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lgpm $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 8714 "configure" --#include "confdefs.h" -+cf_search= - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char Gpm_Open (); -+test "x/usr" != "x$prefix" && \ -+test -d "/usr" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for lib-directories under /usr" -+ test -d /usr/lib && cf_search="$cf_search /usr/lib" -+ test -d /usr/lib/$cf_nculib_root && cf_search="$cf_search /usr/lib/$cf_nculib_root" -+ test -d /usr/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/lib/$cf_nculib_root/lib" -+ test -d /usr/$cf_nculib_root/lib && cf_search="$cf_search /usr/$cf_nculib_root/lib" -+ test -d /usr/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root" -+} -+ -+test "x$prefix" != "xNONE" && \ -+test -d "$prefix" && \ -+ { -+ test -n "$verbose" && echo " ... testing for lib-directories under $prefix" -+ test -d $prefix/lib && cf_search="$cf_search $prefix/lib" -+ test -d $prefix/lib/$cf_nculib_root && cf_search="$cf_search $prefix/lib/$cf_nculib_root" -+ test -d $prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib" -+ test -d $prefix/$cf_nculib_root/lib && cf_search="$cf_search $prefix/$cf_nculib_root/lib" -+ test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root" -+} -+ -+test "x/usr/local" != "x$prefix" && \ -+test -d "/usr/local" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/usr/local" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for lib-directories under /usr/local" -+ test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib" -+ test -d /usr/local/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/lib/$cf_nculib_root" -+ test -d /usr/local/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib" -+ test -d /usr/local/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/$cf_nculib_root/lib" -+ test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root" -+} -+ -+test "x/opt" != "x$prefix" && \ -+test -d "/opt" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x/opt" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for lib-directories under /opt" -+ test -d /opt/lib && cf_search="$cf_search /opt/lib" -+ test -d /opt/lib/$cf_nculib_root && cf_search="$cf_search /opt/lib/$cf_nculib_root" -+ test -d /opt/lib/$cf_nculib_root/lib && cf_search="$cf_search /opt/lib/$cf_nculib_root/lib" -+ test -d /opt/$cf_nculib_root/lib && cf_search="$cf_search /opt/$cf_nculib_root/lib" -+ test -d /opt/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root" -+} -+ -+test "x$HOME" != "x$prefix" && \ -+test -d "$HOME" && \ -+(test -z "$prefix" || test x$prefix = xNONE || test "x$HOME" != "x$prefix") && { -+ test -n "$verbose" && echo " ... testing for lib-directories under $HOME" -+ test -d $HOME/lib && cf_search="$cf_search $HOME/lib" -+ test -d $HOME/lib/$cf_nculib_root && cf_search="$cf_search $HOME/lib/$cf_nculib_root" -+ test -d $HOME/lib/$cf_nculib_root/lib && cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib" -+ test -d $HOME/$cf_nculib_root/lib && cf_search="$cf_search $HOME/$cf_nculib_root/lib" -+ test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root" -+} -+ -+cf_search="$cf_library_path_list $cf_search" -+ -+ for cf_libdir in $cf_search -+ do -+ echo "$as_me:8719: checking for -l$cf_nculib_root in $cf_libdir" >&5 -+echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6 -+ LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8723 "configure" -+#include "confdefs.h" -+#include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { --Gpm_Open (); -+initscr() - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:8733: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:8735: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8736: \$? = $ac_status" >&5 -+ echo "$as_me:8738: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:8739: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8741: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8742: \$? = $ac_status" >&5 -+ echo "$as_me:8744: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_gpm_Gpm_Open=yes -+ echo "$as_me:8746: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+ eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' -+ break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_gpm_Gpm_Open=no -+echo "$as_me:8753: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+ LIBS="$cf_save_LIBS" - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS -+ done -+ - fi --echo "$as_me:8753: result: $ac_cv_lib_gpm_Gpm_Open" >&5 --echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6 --if test $ac_cv_lib_gpm_Gpm_Open = yes; then -- echo "$as_me:8756: checking for initscr in -lgpm" >&5 --echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6 --if test "${ac_cv_lib_gpm_initscr+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lgpm $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 8764 "configure" --#include "confdefs.h" -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char initscr (); --int --main () --{ --initscr (); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:8783: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:8786: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:8789: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:8792: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_lib_gpm_initscr=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_lib_gpm_initscr=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:8803: result: $ac_cv_lib_gpm_initscr" >&5 --echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6 --if test $ac_cv_lib_gpm_initscr = yes; then -- LIBS="$cf_ncurses_SAVE" --else -- cf_ncurses_LIBS="-lgpm" -+ -+eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root -+ -+if test $cf_found_library = no ; then -+ { { echo "$as_me:8768: error: Cannot link $cf_nculib_root library" >&5 -+echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;} -+ { (exit 1); exit 1; }; } - fi - - fi - --case $host_os in #(vi --freebsd*) -- # This is only necessary if you are linking against an obsolete -- # version of ncurses (but it should do no harm, since it's static). -- if test "$cf_nculib_root" = ncurses ; then -- echo "$as_me:8818: checking for tgoto in -lmytinfo" >&5 --echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6 --if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lmytinfo $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 8826 "configure" -+if test -n "$cf_ncurses_LIBS" ; then -+ echo "$as_me:8776: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5 -+echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6 -+ cf_ncurses_SAVE="$LIBS" -+ for p in $cf_ncurses_LIBS ; do -+ q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"` -+ if test "$q" != "$LIBS" ; then -+ LIBS="$q" -+ fi -+ done -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8786 "configure" - #include "confdefs.h" -- --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char tgoto (); -+#include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { --tgoto (); -+initscr(); mousemask(0,0); tgoto((char *)0, 0, 0); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:8845: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:8798: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8848: \$? = $ac_status" >&5 -+ echo "$as_me:8801: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:8851: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8804: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8854: \$? = $ac_status" >&5 -+ echo "$as_me:8807: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_mytinfo_tgoto=yes -+ echo "$as_me:8809: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_mytinfo_tgoto=no -+echo "$as_me:8814: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+ LIBS="$cf_ncurses_SAVE" - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:8865: result: $ac_cv_lib_mytinfo_tgoto" >&5 --echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6 --if test $ac_cv_lib_mytinfo_tgoto = yes; then -- cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS" -+ -+cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+cat >>confdefs.h <<EOF -+#define $cf_nculib_ROOT 1 -+EOF -+ - fi - -- fi - ;; --esac -+pdcurses) -+ echo "$as_me:8831: checking for X" >&5 -+echo $ECHO_N "checking for X... $ECHO_C" >&6 - --LIBS="$cf_ncurses_LIBS $LIBS" -+# Check whether --with-x or --without-x was given. -+if test "${with_x+set}" = set; then -+ withval="$with_x" - --if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" ) --then -- LIBS="-l$cf_nculib_root $LIBS" -+fi; -+# $have_x is `yes', `no', `disabled', or empty when we do not yet know. -+if test "x$with_x" = xno; then -+ # The user explicitly disabled X. -+ have_x=disabled - else -- -- eval 'cf_cv_have_lib_'$cf_nculib_root'=no' -- cf_libdir="" -- echo "$as_me:8884: checking for initscr" >&5 --echo $ECHO_N "checking for initscr... $ECHO_C" >&6 --if test "${ac_cv_func_initscr+set}" = set; then -+ if test "x$x_includes" != xNONE && test "x$x_libraries" != xNONE; then -+ # Both variables are already set. -+ have_x=yes -+ else -+ if test "${ac_cv_have_x+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -+ # One or both of the vars are not set, and there is no cached value. -+ac_x_includes=no ac_x_libraries=no -+rm -fr conftest.dir -+if mkdir conftest.dir; then -+ cd conftest.dir -+ # Make sure to not put "make" in the Imakefile rules, since we grep it out. -+ cat >Imakefile <<'EOF' -+acfindx: -+ @echo 'ac_im_incroot="${INCROOT}"; ac_im_usrlibdir="${USRLIBDIR}"; ac_im_libdir="${LIBDIR}"' -+EOF -+ if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then -+ # GNU make sometimes prints "make[1]: Entering...", which would confuse us. -+ eval `${MAKE-make} acfindx 2>/dev/null | grep -v make` -+ # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR. -+ for ac_extension in a so sl dylib dll; do -+ if test ! -f $ac_im_usrlibdir/libX11.$ac_extension && -+ test -f $ac_im_libdir/libX11.$ac_extension; then -+ ac_im_usrlibdir=$ac_im_libdir; break -+ fi -+ done -+ # Screen out bogus values from the imake configuration. They are -+ # bogus both because they are the default anyway, and because -+ # using them would break gcc on systems where it needs fixed includes. -+ case $ac_im_incroot in -+ /usr/include) ;; -+ *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;; -+ esac -+ case $ac_im_usrlibdir in -+ /usr/lib | /lib) ;; -+ *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;; -+ esac -+ fi -+ cd .. -+ rm -fr conftest.dir -+fi -+ -+# Standard set of common directories for X headers. -+# Check X11 before X11Rn because it is often a symlink to the current release. -+ac_x_header_dirs=' -+/usr/X11/include -+/usr/X11R6/include -+/usr/X11R5/include -+/usr/X11R4/include -+ -+/usr/include/X11 -+/usr/include/X11R6 -+/usr/include/X11R5 -+/usr/include/X11R4 -+ -+/usr/local/X11/include -+/usr/local/X11R6/include -+/usr/local/X11R5/include -+/usr/local/X11R4/include -+ -+/usr/local/include/X11 -+/usr/local/include/X11R6 -+/usr/local/include/X11R5 -+/usr/local/include/X11R4 -+ -+/usr/X386/include -+/usr/x386/include -+/usr/XFree86/include/X11 -+ -+/usr/include -+/usr/local/include -+/usr/unsupported/include -+/usr/athena/include -+/usr/local/x11r5/include -+/usr/lpp/Xamples/include -+ -+/usr/openwin/include -+/usr/openwin/share/include' -+ -+if test "$ac_x_includes" = no; then -+ # Guess where to find include files, by looking for Intrinsic.h. -+ # First, try using that file with no special directory specified. - cat >conftest.$ac_ext <<_ACEOF --#line 8890 "configure" -+#line 8928 "configure" - #include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char initscr (); below. */ --#include <assert.h> --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char initscr (); --char (*f) (); -+#include <X11/Intrinsic.h> -+_ACEOF -+if { (eval echo "$as_me:8932: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:8938: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ # We can compile using X headers with no special include directory. -+ac_x_includes= -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ for ac_dir in $ac_x_header_dirs; do -+ if test -r "$ac_dir/X11/Intrinsic.h"; then -+ ac_x_includes=$ac_dir -+ break -+ fi -+done -+fi -+rm -f conftest.err conftest.$ac_ext -+fi # $ac_x_includes = no - -+if test "$ac_x_libraries" = no; then -+ # Check for the libraries. -+ # See if we find them without any special options. -+ # Don't add to $LIBS permanently. -+ ac_save_LIBS=$LIBS -+ LIBS="-lXt $LIBS" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 8971 "configure" -+#include "confdefs.h" -+#include <X11/Intrinsic.h> - int - main () - { --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_initscr) || defined (__stub___initscr) --choke me --#else --f = initscr; --#endif -- -+XtMalloc (0) - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:8921: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:8983: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8924: \$? = $ac_status" >&5 -+ echo "$as_me:8986: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:8927: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:8989: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8930: \$? = $ac_status" >&5 -+ echo "$as_me:8992: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_func_initscr=yes -+ LIBS=$ac_save_LIBS -+# We can link X programs with no special library path. -+ac_x_libraries= - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_func_initscr=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:8940: result: $ac_cv_func_initscr" >&5 --echo "${ECHO_T}$ac_cv_func_initscr" >&6 --if test $ac_cv_func_initscr = yes; then -- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' --else -- -- cf_save_LIBS="$LIBS" -- echo "$as_me:8947: checking for initscr in -l$cf_nculib_root" >&5 --echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6 -- LIBS="-l$cf_nculib_root $LIBS" -- cat >conftest.$ac_ext <<_ACEOF --#line 8951 "configure" -+LIBS=$ac_save_LIBS -+for ac_dir in `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g` -+do -+ # Don't even attempt the hair of trying to link an X program! -+ for ac_extension in a so sl dylib dll; do -+ if test -r $ac_dir/libXt.$ac_extension; then -+ ac_x_libraries=$ac_dir -+ break 2 -+ fi -+ done -+done -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi # $ac_x_libraries = no -+ -+if test "$ac_x_includes" = no || test "$ac_x_libraries" = no; then -+ # Didn't find X anywhere. Cache the known absence of X. -+ ac_cv_have_x="have_x=no" -+else -+ # Record where we found X for the cache. -+ ac_cv_have_x="have_x=yes \ -+ ac_x_includes=$ac_x_includes ac_x_libraries=$ac_x_libraries" -+fi -+fi -+ -+ fi -+ eval "$ac_cv_have_x" -+fi # $with_x != no -+ -+if test "$have_x" != yes; then -+ echo "$as_me:9030: result: $have_x" >&5 -+echo "${ECHO_T}$have_x" >&6 -+ no_x=yes -+else -+ # If each of the values was on the command line, it overrides each guess. -+ test "x$x_includes" = xNONE && x_includes=$ac_x_includes -+ test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries -+ # Update the cache value to reflect the command line values. -+ ac_cv_have_x="have_x=yes \ -+ ac_x_includes=$x_includes ac_x_libraries=$x_libraries" -+ echo "$as_me:9040: result: libraries $x_libraries, headers $x_includes" >&5 -+echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6 -+fi -+ -+if test "$no_x" = yes; then -+ # Not all programs may use this symbol, but it does not hurt to define it. -+ -+cat >>confdefs.h <<\EOF -+#define X_DISPLAY_MISSING 1 -+EOF -+ -+ X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS= -+else -+ if test -n "$x_includes"; then -+ X_CFLAGS="$X_CFLAGS -I$x_includes" -+ fi -+ -+ # It would also be nice to do this for all -L options, not just this one. -+ if test -n "$x_libraries"; then -+ X_LIBS="$X_LIBS -L$x_libraries" -+ # For Solaris; some versions of Sun CC require a space after -R and -+ # others require no space. Words are not sufficient . . . . -+ case `(uname -sr) 2>/dev/null` in -+ "SunOS 5"*) -+ echo "$as_me:9064: checking whether -R must be followed by a space" >&5 -+echo $ECHO_N "checking whether -R must be followed by a space... $ECHO_C" >&6 -+ ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 9068 "configure" - #include "confdefs.h" --#include <${cf_cv_ncurses_header:-curses.h}> -+ - int - main () - { --initscr() -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:8963: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9080: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:8966: \$? = $ac_status" >&5 -+ echo "$as_me:9083: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:8969: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9086: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:8972: \$? = $ac_status" >&5 -+ echo "$as_me:9089: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:8974: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' -- -+ ac_R_nospace=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:8981: result: no" >&5 --echo "${ECHO_T}no" >&6 -- --cf_search= --cf_library_path_list="" --if test -n "${LDFLAGS}${LIBS}" ; then -- for cf_library_path in $LDFLAGS $LIBS -- do -- case $cf_library_path in #(vi -- -L*) -- cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'` -- --test "$cf_library_path" != "NONE" && \ --test -d "$cf_library_path" && \ -- { -- test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path" -- test -d $cf_library_path/lib && cf_search="$cf_search $cf_library_path/lib" -- test -d $cf_library_path/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root" -- test -d $cf_library_path/lib/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib" -- test -d $cf_library_path/$cf_nculib_root/lib && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib" -- test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root" --} -- -- cf_library_path_list="$cf_library_path_list $cf_search" -- ;; -- esac -- done -+ac_R_nospace=no - fi -- --cf_search= -- --test "/usr" != "$prefix" && \ --test -d "/usr" && \ --(test $prefix = NONE || test "/usr" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for lib-directories under /usr" -- test -d /usr/lib && cf_search="$cf_search /usr/lib" -- test -d /usr/lib/$cf_nculib_root && cf_search="$cf_search /usr/lib/$cf_nculib_root" -- test -d /usr/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/lib/$cf_nculib_root/lib" -- test -d /usr/$cf_nculib_root/lib && cf_search="$cf_search /usr/$cf_nculib_root/lib" -- test -d /usr/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root" --} -- --test "$prefix" != "NONE" && \ --test -d "$prefix" && \ -- { -- test -n "$verbose" && echo " ... testing for lib-directories under $prefix" -- test -d $prefix/lib && cf_search="$cf_search $prefix/lib" -- test -d $prefix/lib/$cf_nculib_root && cf_search="$cf_search $prefix/lib/$cf_nculib_root" -- test -d $prefix/lib/$cf_nculib_root/lib && cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib" -- test -d $prefix/$cf_nculib_root/lib && cf_search="$cf_search $prefix/$cf_nculib_root/lib" -- test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root" --} -- --test "/usr/local" != "$prefix" && \ --test -d "/usr/local" && \ --(test $prefix = NONE || test "/usr/local" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for lib-directories under /usr/local" -- test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib" -- test -d /usr/local/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/lib/$cf_nculib_root" -- test -d /usr/local/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib" -- test -d /usr/local/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/$cf_nculib_root/lib" -- test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root" --} -- --test "/opt" != "$prefix" && \ --test -d "/opt" && \ --(test $prefix = NONE || test "/opt" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for lib-directories under /opt" -- test -d /opt/lib && cf_search="$cf_search /opt/lib" -- test -d /opt/lib/$cf_nculib_root && cf_search="$cf_search /opt/lib/$cf_nculib_root" -- test -d /opt/lib/$cf_nculib_root/lib && cf_search="$cf_search /opt/lib/$cf_nculib_root/lib" -- test -d /opt/$cf_nculib_root/lib && cf_search="$cf_search /opt/$cf_nculib_root/lib" -- test -d /opt/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root" --} -- --test "$HOME" != "$prefix" && \ --test -d "$HOME" && \ --(test $prefix = NONE || test "$HOME" != "$prefix") && { -- test -n "$verbose" && echo " ... testing for lib-directories under $HOME" -- test -d $HOME/lib && cf_search="$cf_search $HOME/lib" -- test -d $HOME/lib/$cf_nculib_root && cf_search="$cf_search $HOME/lib/$cf_nculib_root" -- test -d $HOME/lib/$cf_nculib_root/lib && cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib" -- test -d $HOME/$cf_nculib_root/lib && cf_search="$cf_search $HOME/$cf_nculib_root/lib" -- test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root" --} -- --cf_search="$cf_library_path_list $cf_search" -- -- for cf_libdir in $cf_search -- do -- echo "$as_me:9071: checking for -l$cf_nculib_root in $cf_libdir" >&5 --echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6 -- LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS" -- cat >conftest.$ac_ext <<_ACEOF --#line 9075 "configure" -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ if test $ac_R_nospace = yes; then -+ echo "$as_me:9099: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+ X_LIBS="$X_LIBS -R$x_libraries" -+ else -+ LIBS="$ac_xsave_LIBS -R $x_libraries" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 9105 "configure" - #include "confdefs.h" --#include <${cf_cv_ncurses_header:-curses.h}> -+ - int - main () - { --initscr() -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9087: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9117: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9090: \$? = $ac_status" >&5 -+ echo "$as_me:9120: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9093: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9123: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9096: \$? = $ac_status" >&5 -+ echo "$as_me:9126: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:9098: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes' -- break -+ ac_R_space=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:9105: result: no" >&5 --echo "${ECHO_T}no" >&6 -- LIBS="$cf_save_LIBS" --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- done -- -+ac_R_space=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ if test $ac_R_space = yes; then -+ echo "$as_me:9136: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+ X_LIBS="$X_LIBS -R $x_libraries" -+ else -+ echo "$as_me:9140: result: neither works" >&5 -+echo "${ECHO_T}neither works" >&6 -+ fi -+ fi -+ LIBS=$ac_xsave_LIBS -+ esac -+ fi - --fi -- --eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root -- --if test $cf_found_library = no ; then -- { { echo "$as_me:9120: error: Cannot link $cf_nculib_root library" >&5 --echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;} -- { (exit 1); exit 1; }; } --fi -- --fi -+ # Check for system-dependent libraries X programs must link with. -+ # Do this before checking for the system-independent R6 libraries -+ # (-lICE), since we may need -lsocket or whatever for X linking. - --if test -n "$cf_ncurses_LIBS" ; then -- echo "$as_me:9128: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5 --echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6 -- cf_ncurses_SAVE="$LIBS" -- for p in $cf_ncurses_LIBS ; do -- q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"` -- if test "$q" != "$LIBS" ; then -- LIBS="$q" -- fi -- done -- cat >conftest.$ac_ext <<_ACEOF --#line 9138 "configure" -+ if test "$ISC" = yes; then -+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet" -+ else -+ # Martyn Johnson says this is needed for Ultrix, if the X -+ # libraries were built with DECnet support. And Karl Berry says -+ # the Alpha needs dnet_stub (dnet does not exist). -+ ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 9160 "configure" - #include "confdefs.h" --#include <${cf_cv_ncurses_header:-curses.h}> -+ -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char XOpenDisplay (); - int - main () - { --initscr(); mousemask(0,0); tgoto((char *)0, 0, 0); -+XOpenDisplay (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9150: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9179: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9153: \$? = $ac_status" >&5 -+ echo "$as_me:9182: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9156: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9185: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9159: \$? = $ac_status" >&5 -+ echo "$as_me:9188: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- echo "$as_me:9161: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:9166: result: no" >&5 --echo "${ECHO_T}no" >&6 -- LIBS="$cf_ncurses_SAVE" --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi -- --cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -- --cat >>confdefs.h <<EOF --#define $cf_nculib_ROOT 1 --EOF -- --fi -+echo "$as_me:9194: checking for dnet_ntoa in -ldnet" >&5 -+echo $ECHO_N "checking for dnet_ntoa in -ldnet... $ECHO_C" >&6 -+if test "${ac_cv_lib_dnet_dnet_ntoa+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-ldnet $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 9202 "configure" -+#include "confdefs.h" - -- ;; --pdcurses) #(vi -- --echo "$as_me:9184: checking if you want to use pkg-config" >&5 --echo $ECHO_N "checking if you want to use pkg-config... $ECHO_C" >&6 -- --# Check whether --with-pkg-config or --without-pkg-config was given. --if test "${with_pkg_config+set}" = set; then -- withval="$with_pkg_config" -- cf_pkg_config=$withval --else -- cf_pkg_config=yes --fi; --echo "$as_me:9194: result: $cf_pkg_config" >&5 --echo "${ECHO_T}$cf_pkg_config" >&6 -- --case $cf_pkg_config in #(vi --no) #(vi -- PKG_CONFIG=none -- ;; --yes) #(vi -- if test -n "$ac_tool_prefix"; then -- # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. --set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 --echo "$as_me:9205: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_path_PKG_CONFIG+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char dnet_ntoa (); -+int -+main () -+{ -+dnet_ntoa (); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:9221: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:9224: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:9227: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:9230: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_lib_dnet_dnet_ntoa=yes - else -- case $PKG_CONFIG in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. -- ;; -- *) -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- if $as_executable_p "$ac_dir/$ac_word"; then -- ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:9222: found $ac_dir/$ac_word" >&5 -- break -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_lib_dnet_dnet_ntoa=no - fi --done -- -- ;; --esac -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS - fi --PKG_CONFIG=$ac_cv_path_PKG_CONFIG -- --if test -n "$PKG_CONFIG"; then -- echo "$as_me:9233: result: $PKG_CONFIG" >&5 --echo "${ECHO_T}$PKG_CONFIG" >&6 --else -- echo "$as_me:9236: result: no" >&5 --echo "${ECHO_T}no" >&6 -+echo "$as_me:9241: result: $ac_cv_lib_dnet_dnet_ntoa" >&5 -+echo "${ECHO_T}$ac_cv_lib_dnet_dnet_ntoa" >&6 -+if test $ac_cv_lib_dnet_dnet_ntoa = yes; then -+ X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet" - fi - --fi --if test -z "$ac_cv_path_PKG_CONFIG"; then -- ac_pt_PKG_CONFIG=$PKG_CONFIG -- # Extract the first word of "pkg-config", so it can be a program name with args. --set dummy pkg-config; ac_word=$2 --echo "$as_me:9245: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then -+ if test $ac_cv_lib_dnet_dnet_ntoa = no; then -+ echo "$as_me:9248: checking for dnet_ntoa in -ldnet_stub" >&5 -+echo $ECHO_N "checking for dnet_ntoa in -ldnet_stub... $ECHO_C" >&6 -+if test "${ac_cv_lib_dnet_stub_dnet_ntoa+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- case $ac_pt_PKG_CONFIG in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. -- ;; -- *) -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- if $as_executable_p "$ac_dir/$ac_word"; then -- ac_cv_path_ac_pt_PKG_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:9262: found $ac_dir/$ac_word" >&5 -- break --fi --done -- -- test -z "$ac_cv_path_ac_pt_PKG_CONFIG" && ac_cv_path_ac_pt_PKG_CONFIG="none" -- ;; --esac --fi --ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-ldnet_stub $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 9256 "configure" -+#include "confdefs.h" - --if test -n "$ac_pt_PKG_CONFIG"; then -- echo "$as_me:9274: result: $ac_pt_PKG_CONFIG" >&5 --echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6 -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char dnet_ntoa (); -+int -+main () -+{ -+dnet_ntoa (); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:9275: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:9278: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:9281: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:9284: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_lib_dnet_stub_dnet_ntoa=yes - else -- echo "$as_me:9277: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_lib_dnet_stub_dnet_ntoa=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:9295: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5 -+echo "${ECHO_T}$ac_cv_lib_dnet_stub_dnet_ntoa" >&6 -+if test $ac_cv_lib_dnet_stub_dnet_ntoa = yes; then -+ X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub" - fi - -- PKG_CONFIG=$ac_pt_PKG_CONFIG --else -- PKG_CONFIG="$ac_cv_path_PKG_CONFIG" -+ fi - fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ LIBS="$ac_xsave_LIBS" - -- ;; --*) -- PKG_CONFIG=$withval -- ;; --esac -+ # msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT, -+ # to get the SysV transport functions. -+ # Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4) -+ # needs -lnsl. -+ # The nsl library prevents programs from opening the X display -+ # on Irix 5.2, according to T.E. Dickey. -+ # The functions gethostbyname, getservbyname, and inet_addr are -+ # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking. -+ echo "$as_me:9314: checking for gethostbyname" >&5 -+echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6 -+if test "${ac_cv_func_gethostbyname+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 9320 "configure" -+#include "confdefs.h" -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char gethostbyname (); below. */ -+#include <assert.h> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char gethostbyname (); -+char (*f) (); - --test -z "$PKG_CONFIG" && PKG_CONFIG=none --if test "$PKG_CONFIG" != none ; then -+int -+main () -+{ -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_gethostbyname) || defined (__stub___gethostbyname) -+choke me -+#else -+f = gethostbyname; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif - --if test "x$prefix" != xNONE; then -- cf_path_syntax="$prefix" -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:9351: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:9354: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:9357: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:9360: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_func_gethostbyname=yes - else -- cf_path_syntax="$ac_default_prefix" -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_func_gethostbyname=no - fi -- --case ".$PKG_CONFIG" in #(vi --.\$\(*\)*|.\'*\'*) #(vi -- ;; --..|./*|.\\*) #(vi -- ;; --.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX -- ;; --.\${*prefix}*) #(vi -- eval PKG_CONFIG="$PKG_CONFIG" -- case ".$PKG_CONFIG" in #(vi -- .NONE/*) -- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%` -- ;; -- esac -- ;; #(vi --.no|.NONE/*) -- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%` -- ;; --*) -- { { echo "$as_me:9320: error: expected a pathname, not \"$PKG_CONFIG\"" >&5 --echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;} -- { (exit 1); exit 1; }; } -- ;; --esac -- -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi -+echo "$as_me:9370: result: $ac_cv_func_gethostbyname" >&5 -+echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6 - --echo "$as_me:9328: checking for X" >&5 --echo $ECHO_N "checking for X... $ECHO_C" >&6 -- --# Check whether --with-x or --without-x was given. --if test "${with_x+set}" = set; then -- withval="$with_x" -- --fi; --# $have_x is `yes', `no', `disabled', or empty when we do not yet know. --if test "x$with_x" = xno; then -- # The user explicitly disabled X. -- have_x=disabled --else -- if test "x$x_includes" != xNONE && test "x$x_libraries" != xNONE; then -- # Both variables are already set. -- have_x=yes -- else -- if test "${ac_cv_have_x+set}" = set; then -+ if test $ac_cv_func_gethostbyname = no; then -+ echo "$as_me:9374: checking for gethostbyname in -lnsl" >&5 -+echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6 -+if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- # One or both of the vars are not set, and there is no cached value. --ac_x_includes=no ac_x_libraries=no --rm -fr conftest.dir --if mkdir conftest.dir; then -- cd conftest.dir -- # Make sure to not put "make" in the Imakefile rules, since we grep it out. -- cat >Imakefile <<'EOF' --acfindx: -- @echo 'ac_im_incroot="${INCROOT}"; ac_im_usrlibdir="${USRLIBDIR}"; ac_im_libdir="${LIBDIR}"' --EOF -- if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then -- # GNU make sometimes prints "make[1]: Entering...", which would confuse us. -- eval `${MAKE-make} acfindx 2>/dev/null | grep -v make` -- # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR. -- for ac_extension in a so sl dylib dll; do -- if test ! -f $ac_im_usrlibdir/libX11.$ac_extension && -- test -f $ac_im_libdir/libX11.$ac_extension; then -- ac_im_usrlibdir=$ac_im_libdir; break -- fi -- done -- # Screen out bogus values from the imake configuration. They are -- # bogus both because they are the default anyway, and because -- # using them would break gcc on systems where it needs fixed includes. -- case $ac_im_incroot in -- /usr/include) ;; -- *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;; -- esac -- case $ac_im_usrlibdir in -- /usr/lib | /lib) ;; -- *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;; -- esac -- fi -- cd .. -- rm -fr conftest.dir --fi -- --# Standard set of common directories for X headers. --# Check X11 before X11Rn because it is often a symlink to the current release. --ac_x_header_dirs=' --/usr/X11/include --/usr/X11R6/include --/usr/X11R5/include --/usr/X11R4/include -- --/usr/include/X11 --/usr/include/X11R6 --/usr/include/X11R5 --/usr/include/X11R4 -- --/usr/local/X11/include --/usr/local/X11R6/include --/usr/local/X11R5/include --/usr/local/X11R4/include -- --/usr/local/include/X11 --/usr/local/include/X11R6 --/usr/local/include/X11R5 --/usr/local/include/X11R4 -- --/usr/X386/include --/usr/x386/include --/usr/XFree86/include/X11 -- --/usr/include --/usr/local/include --/usr/unsupported/include --/usr/athena/include --/usr/local/x11r5/include --/usr/lpp/Xamples/include -- --/usr/openwin/include --/usr/openwin/share/include' -- --if test "$ac_x_includes" = no; then -- # Guess where to find include files, by looking for Intrinsic.h. -- # First, try using that file with no special directory specified. -- cat >conftest.$ac_ext <<_ACEOF --#line 9425 "configure" -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lnsl $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 9382 "configure" - #include "confdefs.h" --#include <X11/Intrinsic.h> -+ -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char gethostbyname (); -+int -+main () -+{ -+gethostbyname (); -+ ; -+ return 0; -+} - _ACEOF --if { (eval echo "$as_me:9429: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:9401: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:9435: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- # We can compile using X headers with no special include directory. --ac_x_includes= -+ echo "$as_me:9404: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:9407: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:9410: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_lib_nsl_gethostbyname=yes - else - echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- for ac_dir in $ac_x_header_dirs; do -- if test -r "$ac_dir/X11/Intrinsic.h"; then -- ac_x_includes=$ac_dir -- break -- fi --done -+cat conftest.$ac_ext >&5 -+ac_cv_lib_nsl_gethostbyname=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:9421: result: $ac_cv_lib_nsl_gethostbyname" >&5 -+echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6 -+if test $ac_cv_lib_nsl_gethostbyname = yes; then -+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl" - fi --rm -f conftest.err conftest.$ac_ext --fi # $ac_x_includes = no - --if test "$ac_x_libraries" = no; then -- # Check for the libraries. -- # See if we find them without any special options. -- # Don't add to $LIBS permanently. -- ac_save_LIBS=$LIBS -- LIBS="-lXt $LIBS" -- cat >conftest.$ac_ext <<_ACEOF --#line 9468 "configure" -+ if test $ac_cv_lib_nsl_gethostbyname = no; then -+ echo "$as_me:9428: checking for gethostbyname in -lbsd" >&5 -+echo $ECHO_N "checking for gethostbyname in -lbsd... $ECHO_C" >&6 -+if test "${ac_cv_lib_bsd_gethostbyname+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lbsd $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 9436 "configure" - #include "confdefs.h" --#include <X11/Intrinsic.h> -+ -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char gethostbyname (); - int - main () - { --XtMalloc (0) -+gethostbyname (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9480: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9455: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9483: \$? = $ac_status" >&5 -+ echo "$as_me:9458: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9486: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9461: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9489: \$? = $ac_status" >&5 -+ echo "$as_me:9464: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- LIBS=$ac_save_LIBS --# We can link X programs with no special library path. --ac_x_libraries= -+ ac_cv_lib_bsd_gethostbyname=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --LIBS=$ac_save_LIBS --for ac_dir in `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g` --do -- # Don't even attempt the hair of trying to link an X program! -- for ac_extension in a so sl dylib dll; do -- if test -r $ac_dir/libXt.$ac_extension; then -- ac_x_libraries=$ac_dir -- break 2 -- fi -- done --done -+ac_cv_lib_bsd_gethostbyname=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi # $ac_x_libraries = no -- --if test "$ac_x_includes" = no || test "$ac_x_libraries" = no; then -- # Didn't find X anywhere. Cache the known absence of X. -- ac_cv_have_x="have_x=no" --else -- # Record where we found X for the cache. -- ac_cv_have_x="have_x=yes \ -- ac_x_includes=$ac_x_includes ac_x_libraries=$ac_x_libraries" --fi -+LIBS=$ac_check_lib_save_LIBS - fi -- -- fi -- eval "$ac_cv_have_x" --fi # $with_x != no -- --if test "$have_x" != yes; then -- echo "$as_me:9527: result: $have_x" >&5 --echo "${ECHO_T}$have_x" >&6 -- no_x=yes --else -- # If each of the values was on the command line, it overrides each guess. -- test "x$x_includes" = xNONE && x_includes=$ac_x_includes -- test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries -- # Update the cache value to reflect the command line values. -- ac_cv_have_x="have_x=yes \ -- ac_x_includes=$x_includes ac_x_libraries=$x_libraries" -- echo "$as_me:9537: result: libraries $x_libraries, headers $x_includes" >&5 --echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6 -+echo "$as_me:9475: result: $ac_cv_lib_bsd_gethostbyname" >&5 -+echo "${ECHO_T}$ac_cv_lib_bsd_gethostbyname" >&6 -+if test $ac_cv_lib_bsd_gethostbyname = yes; then -+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd" - fi - --if test "$no_x" = yes; then -- # Not all programs may use this symbol, but it does not hurt to define it. -- --cat >>confdefs.h <<\EOF --#define X_DISPLAY_MISSING 1 --EOF -+ fi -+ fi - -- X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS= -+ # lieder@skyler.mavd.honeywell.com says without -lsocket, -+ # socket/setsockopt and other routines are undefined under SCO ODT -+ # 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary -+ # on later versions), says Simon Leinen: it contains gethostby* -+ # variants that don't use the nameserver (or something). -lsocket -+ # must be given before -lnsl if both are needed. We assume that -+ # if connect needs -lnsl, so does gethostbyname. -+ echo "$as_me:9491: checking for connect" >&5 -+echo $ECHO_N "checking for connect... $ECHO_C" >&6 -+if test "${ac_cv_func_connect+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- if test -n "$x_includes"; then -- X_CFLAGS="$X_CFLAGS -I$x_includes" -- fi -- -- # It would also be nice to do this for all -L options, not just this one. -- if test -n "$x_libraries"; then -- X_LIBS="$X_LIBS -L$x_libraries" -- # For Solaris; some versions of Sun CC require a space after -R and -- # others require no space. Words are not sufficient . . . . -- case `(uname -sr) 2>/dev/null` in -- "SunOS 5"*) -- echo "$as_me:9561: checking whether -R must be followed by a space" >&5 --echo $ECHO_N "checking whether -R must be followed by a space... $ECHO_C" >&6 -- ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries" -- cat >conftest.$ac_ext <<_ACEOF --#line 9565 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 9497 "configure" - #include "confdefs.h" -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char connect (); below. */ -+#include <assert.h> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char connect (); -+char (*f) (); - - int - main () - { -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_connect) || defined (__stub___connect) -+choke me -+#else -+f = connect; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif - - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9577: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9528: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9580: \$? = $ac_status" >&5 -+ echo "$as_me:9531: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9583: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9534: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9586: \$? = $ac_status" >&5 -+ echo "$as_me:9537: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_R_nospace=yes -+ ac_cv_func_connect=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_R_nospace=no -+ac_cv_func_connect=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- if test $ac_R_nospace = yes; then -- echo "$as_me:9596: result: no" >&5 --echo "${ECHO_T}no" >&6 -- X_LIBS="$X_LIBS -R$x_libraries" -- else -- LIBS="$ac_xsave_LIBS -R $x_libraries" -- cat >conftest.$ac_ext <<_ACEOF --#line 9602 "configure" -+fi -+echo "$as_me:9547: result: $ac_cv_func_connect" >&5 -+echo "${ECHO_T}$ac_cv_func_connect" >&6 -+ -+ if test $ac_cv_func_connect = no; then -+ echo "$as_me:9551: checking for connect in -lsocket" >&5 -+echo $ECHO_N "checking for connect in -lsocket... $ECHO_C" >&6 -+if test "${ac_cv_lib_socket_connect+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lsocket $X_EXTRA_LIBS $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 9559 "configure" - #include "confdefs.h" - -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char connect (); - int - main () - { -- -+connect (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9614: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9578: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9617: \$? = $ac_status" >&5 -+ echo "$as_me:9581: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9620: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9584: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9623: \$? = $ac_status" >&5 -+ echo "$as_me:9587: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_R_space=yes -+ ac_cv_lib_socket_connect=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_R_space=no -+ac_cv_lib_socket_connect=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- if test $ac_R_space = yes; then -- echo "$as_me:9633: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -- X_LIBS="$X_LIBS -R $x_libraries" -- else -- echo "$as_me:9637: result: neither works" >&5 --echo "${ECHO_T}neither works" >&6 -- fi -- fi -- LIBS=$ac_xsave_LIBS -- esac -- fi -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:9598: result: $ac_cv_lib_socket_connect" >&5 -+echo "${ECHO_T}$ac_cv_lib_socket_connect" >&6 -+if test $ac_cv_lib_socket_connect = yes; then -+ X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS" -+fi - -- # Check for system-dependent libraries X programs must link with. -- # Do this before checking for the system-independent R6 libraries -- # (-lICE), since we may need -lsocket or whatever for X linking. -+ fi - -- if test "$ISC" = yes; then -- X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet" -- else -- # Martyn Johnson says this is needed for Ultrix, if the X -- # libraries were built with DECnet support. And Karl Berry says -- # the Alpha needs dnet_stub (dnet does not exist). -- ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11" -- cat >conftest.$ac_ext <<_ACEOF --#line 9657 "configure" -+ # Guillermo Gomez says -lposix is necessary on A/UX. -+ echo "$as_me:9607: checking for remove" >&5 -+echo $ECHO_N "checking for remove... $ECHO_C" >&6 -+if test "${ac_cv_func_remove+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 9613 "configure" - #include "confdefs.h" -- -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char remove (); below. */ -+#include <assert.h> - /* Override any gcc2 internal prototype to avoid an error. */ - #ifdef __cplusplus - extern "C" - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char XOpenDisplay (); -+char remove (); -+char (*f) (); -+ - int - main () - { --XOpenDisplay (); -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_remove) || defined (__stub___remove) -+choke me -+#else -+f = remove; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9676: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9644: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9679: \$? = $ac_status" >&5 -+ echo "$as_me:9647: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9682: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9650: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9685: \$? = $ac_status" >&5 -+ echo "$as_me:9653: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ ac_cv_func_remove=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --echo "$as_me:9691: checking for dnet_ntoa in -ldnet" >&5 --echo $ECHO_N "checking for dnet_ntoa in -ldnet... $ECHO_C" >&6 --if test "${ac_cv_lib_dnet_dnet_ntoa+set}" = set; then -+ac_cv_func_remove=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:9663: result: $ac_cv_func_remove" >&5 -+echo "${ECHO_T}$ac_cv_func_remove" >&6 -+ -+ if test $ac_cv_func_remove = no; then -+ echo "$as_me:9667: checking for remove in -lposix" >&5 -+echo $ECHO_N "checking for remove in -lposix... $ECHO_C" >&6 -+if test "${ac_cv_lib_posix_remove+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-ldnet $LIBS" -+LIBS="-lposix $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 9699 "configure" -+#line 9675 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -9705,178 +9681,179 @@ - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char dnet_ntoa (); -+char remove (); - int - main () - { --dnet_ntoa (); -+remove (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9718: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9694: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9721: \$? = $ac_status" >&5 -+ echo "$as_me:9697: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9724: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9700: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9727: \$? = $ac_status" >&5 -+ echo "$as_me:9703: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_dnet_dnet_ntoa=yes -+ ac_cv_lib_posix_remove=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_dnet_dnet_ntoa=no -+ac_cv_lib_posix_remove=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:9738: result: $ac_cv_lib_dnet_dnet_ntoa" >&5 --echo "${ECHO_T}$ac_cv_lib_dnet_dnet_ntoa" >&6 --if test $ac_cv_lib_dnet_dnet_ntoa = yes; then -- X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet" -+echo "$as_me:9714: result: $ac_cv_lib_posix_remove" >&5 -+echo "${ECHO_T}$ac_cv_lib_posix_remove" >&6 -+if test $ac_cv_lib_posix_remove = yes; then -+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix" - fi - -- if test $ac_cv_lib_dnet_dnet_ntoa = no; then -- echo "$as_me:9745: checking for dnet_ntoa in -ldnet_stub" >&5 --echo $ECHO_N "checking for dnet_ntoa in -ldnet_stub... $ECHO_C" >&6 --if test "${ac_cv_lib_dnet_stub_dnet_ntoa+set}" = set; then -+ fi -+ -+ # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. -+ echo "$as_me:9723: checking for shmat" >&5 -+echo $ECHO_N "checking for shmat... $ECHO_C" >&6 -+if test "${ac_cv_func_shmat+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-ldnet_stub $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 9753 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 9729 "configure" - #include "confdefs.h" -- -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char shmat (); below. */ -+#include <assert.h> - /* Override any gcc2 internal prototype to avoid an error. */ - #ifdef __cplusplus - extern "C" - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char dnet_ntoa (); -+char shmat (); -+char (*f) (); -+ - int - main () - { --dnet_ntoa (); -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_shmat) || defined (__stub___shmat) -+choke me -+#else -+f = shmat; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9772: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9760: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9775: \$? = $ac_status" >&5 -+ echo "$as_me:9763: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9778: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9766: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9781: \$? = $ac_status" >&5 -+ echo "$as_me:9769: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_dnet_stub_dnet_ntoa=yes -+ ac_cv_func_shmat=yes - else - echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_lib_dnet_stub_dnet_ntoa=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:9792: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5 --echo "${ECHO_T}$ac_cv_lib_dnet_stub_dnet_ntoa" >&6 --if test $ac_cv_lib_dnet_stub_dnet_ntoa = yes; then -- X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub" --fi -- -- fi -+cat conftest.$ac_ext >&5 -+ac_cv_func_shmat=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- LIBS="$ac_xsave_LIBS" -+fi -+echo "$as_me:9779: result: $ac_cv_func_shmat" >&5 -+echo "${ECHO_T}$ac_cv_func_shmat" >&6 - -- # msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT, -- # to get the SysV transport functions. -- # Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4) -- # needs -lnsl. -- # The nsl library prevents programs from opening the X display -- # on Irix 5.2, according to T.E. Dickey. -- # The functions gethostbyname, getservbyname, and inet_addr are -- # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking. -- echo "$as_me:9811: checking for gethostbyname" >&5 --echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6 --if test "${ac_cv_func_gethostbyname+set}" = set; then -+ if test $ac_cv_func_shmat = no; then -+ echo "$as_me:9783: checking for shmat in -lipc" >&5 -+echo $ECHO_N "checking for shmat in -lipc... $ECHO_C" >&6 -+if test "${ac_cv_lib_ipc_shmat+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 9817 "configure" -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lipc $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 9791 "configure" - #include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char gethostbyname (); below. */ --#include <assert.h> -+ - /* Override any gcc2 internal prototype to avoid an error. */ - #ifdef __cplusplus - extern "C" - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char gethostbyname (); --char (*f) (); -- -+char shmat (); - int - main () - { --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_gethostbyname) || defined (__stub___gethostbyname) --choke me --#else --f = gethostbyname; --#endif -- -+shmat (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9848: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9810: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9851: \$? = $ac_status" >&5 -+ echo "$as_me:9813: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9854: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9816: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9857: \$? = $ac_status" >&5 -+ echo "$as_me:9819: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_func_gethostbyname=yes -+ ac_cv_lib_ipc_shmat=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_func_gethostbyname=no -+ac_cv_lib_ipc_shmat=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:9830: result: $ac_cv_lib_ipc_shmat" >&5 -+echo "${ECHO_T}$ac_cv_lib_ipc_shmat" >&6 -+if test $ac_cv_lib_ipc_shmat = yes; then -+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc" - fi --echo "$as_me:9867: result: $ac_cv_func_gethostbyname" >&5 --echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6 - -- if test $ac_cv_func_gethostbyname = no; then -- echo "$as_me:9871: checking for gethostbyname in -lnsl" >&5 --echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6 --if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then -+ fi -+ fi -+ -+ # Check for libraries that X11R6 Xt/Xaw programs need. -+ ac_save_LDFLAGS=$LDFLAGS -+ test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries" -+ # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to -+ # check for ICE first), but we must link in the order -lSM -lICE or -+ # we get undefined symbols. So assume we have SM if we have ICE. -+ # These have to be linked with before -lX11, unlike the other -+ # libraries we check for below, so use a different variable. -+ # John Interrante, Karl Berry -+ echo "$as_me:9848: checking for IceConnectionNumber in -lICE" >&5 -+echo $ECHO_N "checking for IceConnectionNumber in -lICE... $ECHO_C" >&6 -+if test "${ac_cv_lib_ICE_IceConnectionNumber+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-lnsl $LIBS" -+LIBS="-lICE $X_EXTRA_LIBS $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 9879 "configure" -+#line 9856 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -9885,291 +9862,548 @@ - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char gethostbyname (); -+char IceConnectionNumber (); - int - main () - { --gethostbyname (); -+IceConnectionNumber (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9898: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:9875: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9901: \$? = $ac_status" >&5 -+ echo "$as_me:9878: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9904: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:9881: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9907: \$? = $ac_status" >&5 -+ echo "$as_me:9884: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_nsl_gethostbyname=yes -+ ac_cv_lib_ICE_IceConnectionNumber=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_nsl_gethostbyname=no -+ac_cv_lib_ICE_IceConnectionNumber=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:9918: result: $ac_cv_lib_nsl_gethostbyname" >&5 --echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6 --if test $ac_cv_lib_nsl_gethostbyname = yes; then -- X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl" -+echo "$as_me:9895: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5 -+echo "${ECHO_T}$ac_cv_lib_ICE_IceConnectionNumber" >&6 -+if test $ac_cv_lib_ICE_IceConnectionNumber = yes; then -+ X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE" - fi - -- if test $ac_cv_lib_nsl_gethostbyname = no; then -- echo "$as_me:9925: checking for gethostbyname in -lbsd" >&5 --echo $ECHO_N "checking for gethostbyname in -lbsd... $ECHO_C" >&6 --if test "${ac_cv_lib_bsd_gethostbyname+set}" = set; then -+ LDFLAGS=$ac_save_LDFLAGS -+ -+fi -+ -+cf_x_athena=${cf_x_athena:-Xaw} -+ -+echo "$as_me:9907: checking if you want to link with Xaw 3d library" >&5 -+echo $ECHO_N "checking if you want to link with Xaw 3d library... $ECHO_C" >&6 -+withval= -+ -+# Check whether --with-Xaw3d or --without-Xaw3d was given. -+if test "${with_Xaw3d+set}" = set; then -+ withval="$with_Xaw3d" -+ -+fi; -+if test "$withval" = yes ; then -+ cf_x_athena=Xaw3d -+ echo "$as_me:9918: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+else -+ echo "$as_me:9921: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+echo "$as_me:9925: checking if you want to link with neXT Athena library" >&5 -+echo $ECHO_N "checking if you want to link with neXT Athena library... $ECHO_C" >&6 -+withval= -+ -+# Check whether --with-neXtaw or --without-neXtaw was given. -+if test "${with_neXtaw+set}" = set; then -+ withval="$with_neXtaw" -+ -+fi; -+if test "$withval" = yes ; then -+ cf_x_athena=neXtaw -+ echo "$as_me:9936: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+else -+ echo "$as_me:9939: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+echo "$as_me:9943: checking if you want to link with Athena-Plus library" >&5 -+echo $ECHO_N "checking if you want to link with Athena-Plus library... $ECHO_C" >&6 -+withval= -+ -+# Check whether --with-XawPlus or --without-XawPlus was given. -+if test "${with_XawPlus+set}" = set; then -+ withval="$with_XawPlus" -+ -+fi; -+if test "$withval" = yes ; then -+ cf_x_athena=XawPlus -+ echo "$as_me:9954: result: yes" >&5 -+echo "${ECHO_T}yes" >&6 -+else -+ echo "$as_me:9957: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+ -+cf_x_athena_lib="" -+ -+if test "$PKG_CONFIG" != none ; then -+ cf_athena_list= -+ test "$cf_x_athena" = Xaw && cf_athena_list="xaw8 xaw7 xaw6" -+ for cf_athena_pkg in \ -+ $cf_athena_list \ -+ ${cf_x_athena} \ -+ ${cf_x_athena}-devel \ -+ lib${cf_x_athena} \ -+ lib${cf_x_athena}-devel -+ do -+ -+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists $cf_athena_pkg; then -+ test -n "$verbose" && echo " found package $cf_athena_pkg" 1>&6 -+ -+echo "${as_me:-configure}:9977: testing found package $cf_athena_pkg ..." 1>&5 -+ -+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags $cf_athena_pkg 2>/dev/null`" -+ cf_pkgconfig_libs="`$PKG_CONFIG --libs $cf_athena_pkg 2>/dev/null`" -+ test -n "$verbose" && echo " package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs" 1>&6 -+ -+echo "${as_me:-configure}:9983: testing package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -+ -+ test -n "$verbose" && echo " package $cf_athena_pkg LIBS: $cf_pkgconfig_libs" 1>&6 -+ -+echo "${as_me:-configure}:9987: testing package $cf_athena_pkg LIBS: $cf_pkgconfig_libs ..." 1>&5 -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_pkgconfig_incs -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+ LIBS="$cf_pkgconfig_libs $LIBS" -+ -+ cf_x_athena_lib="$cf_pkgconfig_libs" -+ -+cf_x_athena_LIBS=`echo "HAVE_LIB_$cf_x_athena" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+ cat >>confdefs.h <<EOF -+#define $cf_x_athena_LIBS 1 -+EOF -+ -+ for cf_trim_lib in Xmu Xt X11 -+ do -+ case "$LIBS" in -+ *-l$cf_trim_lib\ *-l$cf_trim_lib*) -+ LIBS=`echo "$LIBS " | sed -e 's/ / /g' -e 's%-l'"$cf_trim_lib"' %%' -e 's/ $//'` -+ test -n "$verbose" && echo " ..trimmed $LIBS" 1>&6 -+ -+echo "${as_me:-configure}:10084: testing ..trimmed $LIBS ..." 1>&5 -+ -+ ;; -+ esac -+ done -+ -+echo "$as_me:10090: checking for usable $cf_x_athena/Xmu package" >&5 -+echo $ECHO_N "checking for usable $cf_x_athena/Xmu package... $ECHO_C" >&6 -+if test "${cf_cv_xaw_compat+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lbsd $LIBS" -+ - cat >conftest.$ac_ext <<_ACEOF --#line 9933 "configure" -+#line 10097 "configure" - #include "confdefs.h" - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char gethostbyname (); -+#include <X11/Xmu/CharSet.h> -+ - int - main () - { --gethostbyname (); -+ -+int check = XmuCompareISOLatin1("big", "small") -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:9952: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:10113: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:9955: \$? = $ac_status" >&5 -+ echo "$as_me:10116: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:9958: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10119: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:9961: \$? = $ac_status" >&5 -+ echo "$as_me:10122: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_bsd_gethostbyname=yes -+ cf_cv_xaw_compat=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_bsd_gethostbyname=no -+cf_cv_xaw_compat=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:9972: result: $ac_cv_lib_bsd_gethostbyname" >&5 --echo "${ECHO_T}$ac_cv_lib_bsd_gethostbyname" >&6 --if test $ac_cv_lib_bsd_gethostbyname = yes; then -- X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd" -+echo "$as_me:10132: result: $cf_cv_xaw_compat" >&5 -+echo "${ECHO_T}$cf_cv_xaw_compat" >&6 -+ -+ if test "$cf_cv_xaw_compat" = no -+ then -+ # workaround for broken ".pc" files... -+ case "$cf_x_athena_lib" in #(vi -+ *-lXmu*) #(vi -+ ;; -+ *) -+ test -n "$verbose" && echo " work around broken package" 1>&6 -+ -+echo "${as_me:-configure}:10144: testing work around broken package ..." 1>&5 -+ -+ cf_save_xmu="$LIBS" -+ cf_first_lib=`echo "$cf_save_xmu" | sed -e 's/^ *//' -e 's/ .*//'` -+ -+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xmu; then -+ test -n "$verbose" && echo " found package xmu" 1>&6 -+ -+echo "${as_me:-configure}:10152: testing found package xmu ..." 1>&5 -+ -+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags xmu 2>/dev/null`" -+ cf_pkgconfig_libs="`$PKG_CONFIG --libs xmu 2>/dev/null`" -+ test -n "$verbose" && echo " package xmu CFLAGS: $cf_pkgconfig_incs" 1>&6 -+ -+echo "${as_me:-configure}:10158: testing package xmu CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -+ -+ test -n "$verbose" && echo " package xmu LIBS: $cf_pkgconfig_libs" 1>&6 -+ -+echo "${as_me:-configure}:10162: testing package xmu LIBS: $cf_pkgconfig_libs ..." 1>&5 -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_pkgconfig_incs -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" - fi - -- fi -- fi -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+ LIBS="$cf_pkgconfig_libs $LIBS" -+ -+ LIBS="$cf_save_xmu" -+ -+test -n "$verbose" && echo " ...before $LIBS" 1>&6 -+ -+echo "${as_me:-configure}:10248: testing ...before $LIBS ..." 1>&5 -+ -+LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s%$cf_first_lib %$cf_first_lib $cf_pkgconfig_libs %" -e 's% % %g'` -+test -n "$verbose" && echo " ...after $LIBS" 1>&6 -+ -+echo "${as_me:-configure}:10253: testing ...after $LIBS ..." 1>&5 - -- # lieder@skyler.mavd.honeywell.com says without -lsocket, -- # socket/setsockopt and other routines are undefined under SCO ODT -- # 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary -- # on later versions), says Simon Leinen: it contains gethostby* -- # variants that don't use the nameserver (or something). -lsocket -- # must be given before -lnsl if both are needed. We assume that -- # if connect needs -lnsl, so does gethostbyname. -- echo "$as_me:9988: checking for connect" >&5 --echo $ECHO_N "checking for connect... $ECHO_C" >&6 --if test "${ac_cv_func_connect+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 9994 "configure" --#include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char connect (); below. */ --#include <assert.h> --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char connect (); --char (*f) (); -+ cf_pkgconfig_incs= -+ cf_pkgconfig_libs= -+ -+test -n "$verbose" && echo " ...before $LIBS" 1>&6 -+ -+echo "${as_me:-configure}:10261: testing ...before $LIBS ..." 1>&5 -+ -+LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s%$cf_first_lib %$cf_first_lib -lXmu %" -e 's% % %g'` -+test -n "$verbose" && echo " ...after $LIBS" 1>&6 -+ -+echo "${as_me:-configure}:10266: testing ...after $LIBS ..." 1>&5 -+ -+fi -+ -+ for cf_trim_lib in Xmu Xt X11 -+ do -+ case "$LIBS" in -+ *-l$cf_trim_lib\ *-l$cf_trim_lib*) -+ LIBS=`echo "$LIBS " | sed -e 's/ / /g' -e 's%-l'"$cf_trim_lib"' %%' -e 's/ $//'` -+ test -n "$verbose" && echo " ..trimmed $LIBS" 1>&6 -+ -+echo "${as_me:-configure}:10277: testing ..trimmed $LIBS ..." 1>&5 -+ -+ ;; -+ esac -+ done -+ -+ ;; -+ esac -+ fi -+ -+ break -+else -+ cf_pkgconfig_incs= -+ cf_pkgconfig_libs= -+ : -+fi -+ -+ done -+fi -+ -+if test -z "$cf_x_athena_lib" ; then -+ -+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists Xext; then -+ test -n "$verbose" && echo " found package Xext" 1>&6 -+ -+echo "${as_me:-configure}:10302: testing found package Xext ..." 1>&5 -+ -+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags Xext 2>/dev/null`" -+ cf_pkgconfig_libs="`$PKG_CONFIG --libs Xext 2>/dev/null`" -+ test -n "$verbose" && echo " package Xext CFLAGS: $cf_pkgconfig_incs" 1>&6 -+ -+echo "${as_me:-configure}:10308: testing package Xext CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -+ -+ test -n "$verbose" && echo " package Xext LIBS: $cf_pkgconfig_libs" 1>&6 -+ -+echo "${as_me:-configure}:10312: testing package Xext LIBS: $cf_pkgconfig_libs ..." 1>&5 -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_pkgconfig_incs -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` - --int --main () --{ --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_connect) || defined (__stub___connect) --choke me --#else --f = connect; --#endif -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done - -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10025: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:10028: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10031: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:10034: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_connect=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_func_connect=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" - fi --echo "$as_me:10044: result: $ac_cv_func_connect" >&5 --echo "${ECHO_T}$ac_cv_func_connect" >&6 - -- if test $ac_cv_func_connect = no; then -- echo "$as_me:10048: checking for connect in -lsocket" >&5 --echo $ECHO_N "checking for connect in -lsocket... $ECHO_C" >&6 --if test "${ac_cv_lib_socket_connect+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lsocket $X_EXTRA_LIBS $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 10056 "configure" --#include "confdefs.h" -+if test -n "$cf_new_cppflags" ; then - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char connect (); --int --main () --{ --connect (); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10075: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:10078: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10081: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:10084: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_lib_socket_connect=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_lib_socket_connect=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:10095: result: $ac_cv_lib_socket_connect" >&5 --echo "${ECHO_T}$ac_cv_lib_socket_connect" >&6 --if test $ac_cv_lib_socket_connect = yes; then -- X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS" -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" - fi - -- fi -- -- # Guillermo Gomez says -lposix is necessary on A/UX. -- echo "$as_me:10104: checking for remove" >&5 --echo $ECHO_N "checking for remove... $ECHO_C" >&6 --if test "${ac_cv_func_remove+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 10110 "configure" --#include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char remove (); below. */ --#include <assert.h> --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char remove (); --char (*f) (); -+if test -n "$cf_new_extra_cppflags" ; then - --int --main () --{ --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_remove) || defined (__stub___remove) --choke me --#else --f = remove; --#endif -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi - -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10141: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:10144: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10147: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:10150: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_remove=yes -+ LIBS="$cf_pkgconfig_libs $LIBS" -+ : - else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_func_remove=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:10160: result: $ac_cv_func_remove" >&5 --echo "${ECHO_T}$ac_cv_func_remove" >&6 -+ cf_pkgconfig_incs= -+ cf_pkgconfig_libs= - -- if test $ac_cv_func_remove = no; then -- echo "$as_me:10164: checking for remove in -lposix" >&5 --echo $ECHO_N "checking for remove in -lposix... $ECHO_C" >&6 --if test "${ac_cv_lib_posix_remove+set}" = set; then -+ echo "$as_me:10398: checking for XextCreateExtension in -lXext" >&5 -+echo $ECHO_N "checking for XextCreateExtension in -lXext... $ECHO_C" >&6 -+if test "${ac_cv_lib_Xext_XextCreateExtension+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-lposix $LIBS" -+LIBS="-lXext $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 10172 "configure" -+#line 10406 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -10178,310 +10412,386 @@ - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char remove (); -+char XextCreateExtension (); - int - main () - { --remove (); -+XextCreateExtension (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10191: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:10425: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10194: \$? = $ac_status" >&5 -+ echo "$as_me:10428: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10197: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10431: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10200: \$? = $ac_status" >&5 -+ echo "$as_me:10434: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_posix_remove=yes -+ ac_cv_lib_Xext_XextCreateExtension=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_posix_remove=no -+ac_cv_lib_Xext_XextCreateExtension=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:10211: result: $ac_cv_lib_posix_remove" >&5 --echo "${ECHO_T}$ac_cv_lib_posix_remove" >&6 --if test $ac_cv_lib_posix_remove = yes; then -- X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix" -+echo "$as_me:10445: result: $ac_cv_lib_Xext_XextCreateExtension" >&5 -+echo "${ECHO_T}$ac_cv_lib_Xext_XextCreateExtension" >&6 -+if test $ac_cv_lib_Xext_XextCreateExtension = yes; then -+ LIBS="-lXext $LIBS" - fi - -- fi -+fi - -- # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. -- echo "$as_me:10220: checking for shmat" >&5 --echo $ECHO_N "checking for shmat... $ECHO_C" >&6 --if test "${ac_cv_func_shmat+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 10226 "configure" --#include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char shmat (); below. */ --#include <assert.h> --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char shmat (); --char (*f) (); -+cf_have_X_LIBS=no -+ -+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xt; then -+ test -n "$verbose" && echo " found package xt" 1>&6 -+ -+echo "${as_me:-configure}:10458: testing found package xt ..." 1>&5 -+ -+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags xt 2>/dev/null`" -+ cf_pkgconfig_libs="`$PKG_CONFIG --libs xt 2>/dev/null`" -+ test -n "$verbose" && echo " package xt CFLAGS: $cf_pkgconfig_incs" 1>&6 -+ -+echo "${as_me:-configure}:10464: testing package xt CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -+ -+ test -n "$verbose" && echo " package xt LIBS: $cf_pkgconfig_libs" 1>&6 -+ -+echo "${as_me:-configure}:10468: testing package xt LIBS: $cf_pkgconfig_libs ..." 1>&5 -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_pkgconfig_incs -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done - --int --main () --{ --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_shmat) || defined (__stub___shmat) --choke me --#else --f = shmat; --#endif -+if test -n "$cf_new_cflags" ; then - -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10257: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:10260: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10263: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:10266: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_shmat=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_func_shmat=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ CFLAGS="$CFLAGS $cf_new_cflags" - fi --echo "$as_me:10276: result: $ac_cv_func_shmat" >&5 --echo "${ECHO_T}$ac_cv_func_shmat" >&6 - -- if test $ac_cv_func_shmat = no; then -- echo "$as_me:10280: checking for shmat in -lipc" >&5 --echo $ECHO_N "checking for shmat in -lipc... $ECHO_C" >&6 --if test "${ac_cv_lib_ipc_shmat+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lipc $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 10288 "configure" --#include "confdefs.h" -+if test -n "$cf_new_cppflags" ; then - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char shmat (); --int --main () --{ --shmat (); -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10307: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:10310: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10313: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:10316: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_lib_ipc_shmat=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_lib_ipc_shmat=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" - fi --echo "$as_me:10327: result: $ac_cv_lib_ipc_shmat" >&5 --echo "${ECHO_T}$ac_cv_lib_ipc_shmat" >&6 --if test $ac_cv_lib_ipc_shmat = yes; then -- X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc" -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi - -- fi -- fi -+ LIBS="$cf_pkgconfig_libs $LIBS" - -- # Check for libraries that X11R6 Xt/Xaw programs need. -- ac_save_LDFLAGS=$LDFLAGS -- test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries" -- # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to -- # check for ICE first), but we must link in the order -lSM -lICE or -- # we get undefined symbols. So assume we have SM if we have ICE. -- # These have to be linked with before -lX11, unlike the other -- # libraries we check for below, so use a different variable. -- # John Interrante, Karl Berry -- echo "$as_me:10345: checking for IceConnectionNumber in -lICE" >&5 --echo $ECHO_N "checking for IceConnectionNumber in -lICE... $ECHO_C" >&6 --if test "${ac_cv_lib_ICE_IceConnectionNumber+set}" = set; then -+ case "x$LIBS" in #(vi -+ *-lX11*) #(vi -+ ;; -+ *) -+# we have an "xt" package, but it may omit Xt's dependency on X11 -+echo "$as_me:10555: checking for usable X dependency" >&5 -+echo $ECHO_N "checking for usable X dependency... $ECHO_C" >&6 -+if test "${cf_cv_xt_x11_compat+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lICE $X_EXTRA_LIBS $LIBS" -+ - cat >conftest.$ac_ext <<_ACEOF --#line 10353 "configure" -+#line 10562 "configure" - #include "confdefs.h" - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char IceConnectionNumber (); -+#include <X11/Xlib.h> -+ - int - main () - { --IceConnectionNumber (); -+ -+ int rc1 = XDrawLine((Display*) 0, (Drawable) 0, (GC) 0, 0, 0, 0, 0); -+ int rc2 = XClearWindow((Display*) 0, (Window) 0); -+ int rc3 = XMoveWindow((Display*) 0, (Window) 0, 0, 0); -+ int rc4 = XMoveResizeWindow((Display*)0, (Window)0, 0, 0, 0, 0); -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10372: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:10581: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10375: \$? = $ac_status" >&5 -+ echo "$as_me:10584: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10378: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:10587: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10381: \$? = $ac_status" >&5 -+ echo "$as_me:10590: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_ICE_IceConnectionNumber=yes -+ cf_cv_xt_x11_compat=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_ICE_IceConnectionNumber=no -+cf_cv_xt_x11_compat=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:10392: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5 --echo "${ECHO_T}$ac_cv_lib_ICE_IceConnectionNumber" >&6 --if test $ac_cv_lib_ICE_IceConnectionNumber = yes; then -- X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE" - fi -+echo "$as_me:10600: result: $cf_cv_xt_x11_compat" >&5 -+echo "${ECHO_T}$cf_cv_xt_x11_compat" >&6 -+ if test "$cf_cv_xt_x11_compat" = no -+ then -+ test -n "$verbose" && echo " work around broken X11 dependency" 1>&6 - -- LDFLAGS=$ac_save_LDFLAGS -+echo "${as_me:-configure}:10606: testing work around broken X11 dependency ..." 1>&5 -+ -+ # 2010/11/19 - good enough until a working Xt on Xcb is delivered. -+ -+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists x11; then -+ test -n "$verbose" && echo " found package x11" 1>&6 -+ -+echo "${as_me:-configure}:10613: testing found package x11 ..." 1>&5 -+ -+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags x11 2>/dev/null`" -+ cf_pkgconfig_libs="`$PKG_CONFIG --libs x11 2>/dev/null`" -+ test -n "$verbose" && echo " package x11 CFLAGS: $cf_pkgconfig_incs" 1>&6 -+ -+echo "${as_me:-configure}:10619: testing package x11 CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -+ -+ test -n "$verbose" && echo " package x11 LIBS: $cf_pkgconfig_libs" 1>&6 -+ -+echo "${as_me:-configure}:10623: testing package x11 LIBS: $cf_pkgconfig_libs ..." 1>&5 -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in $cf_pkgconfig_incs -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then - -+ CFLAGS="$CFLAGS $cf_new_cflags" - fi - --cf_x_athena=${cf_x_athena:-Xaw} -+if test -n "$cf_new_cppflags" ; then - --echo "$as_me:10404: checking if you want to link with Xaw 3d library" >&5 --echo $ECHO_N "checking if you want to link with Xaw 3d library... $ECHO_C" >&6 --withval= -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi - --# Check whether --with-Xaw3d or --without-Xaw3d was given. --if test "${with_Xaw3d+set}" = set; then -- withval="$with_Xaw3d" -+if test -n "$cf_new_extra_cppflags" ; then - --fi; --if test "$withval" = yes ; then -- cf_x_athena=Xaw3d -- echo "$as_me:10415: result: yes" >&5 --echo "${ECHO_T}yes" >&6 --else -- echo "$as_me:10418: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi - --echo "$as_me:10422: checking if you want to link with neXT Athena library" >&5 --echo $ECHO_N "checking if you want to link with neXT Athena library... $ECHO_C" >&6 --withval= -+ LIBS="$cf_pkgconfig_libs $LIBS" -+ : -+else -+ cf_pkgconfig_incs= -+ cf_pkgconfig_libs= - --# Check whether --with-neXtaw or --without-neXtaw was given. --if test "${with_neXtaw+set}" = set; then -- withval="$with_neXtaw" -+test -n "$verbose" && echo " ...before $LIBS" 1>&6 - --fi; --if test "$withval" = yes ; then -- cf_x_athena=neXtaw -- echo "$as_me:10433: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -+echo "${as_me:-configure}:10711: testing ...before $LIBS ..." 1>&5 -+ -+LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s%-lXt %-lXt -lX11 %" -e 's% % %g'` -+test -n "$verbose" && echo " ...after $LIBS" 1>&6 -+ -+echo "${as_me:-configure}:10716: testing ...after $LIBS ..." 1>&5 -+ -+fi -+ -+ fi -+ ;; -+ esac -+ -+echo "$as_me:10724: checking for usable X Toolkit package" >&5 -+echo $ECHO_N "checking for usable X Toolkit package... $ECHO_C" >&6 -+if test "${cf_cv_xt_ice_compat+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- echo "$as_me:10436: result: no" >&5 --echo "${ECHO_T}no" >&6 --fi - --echo "$as_me:10440: checking if you want to link with Athena-Plus library" >&5 --echo $ECHO_N "checking if you want to link with Athena-Plus library... $ECHO_C" >&6 --withval= -+cat >conftest.$ac_ext <<_ACEOF -+#line 10731 "configure" -+#include "confdefs.h" - --# Check whether --with-XawPlus or --without-XawPlus was given. --if test "${with_XawPlus+set}" = set; then -- withval="$with_XawPlus" -+#include <X11/Shell.h> - --fi; --if test "$withval" = yes ; then -- cf_x_athena=XawPlus -- echo "$as_me:10451: result: yes" >&5 --echo "${ECHO_T}yes" >&6 -+int -+main () -+{ -+int num = IceConnectionNumber(0) -+ -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:10746: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:10749: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:10752: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:10755: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_xt_ice_compat=yes - else -- echo "$as_me:10454: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_xt_ice_compat=no - fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:10765: result: $cf_cv_xt_ice_compat" >&5 -+echo "${ECHO_T}$cf_cv_xt_ice_compat" >&6 - --cf_x_athena_lib="" -+ if test "$cf_cv_xt_ice_compat" = no -+ then -+ # workaround for broken ".pc" files used for X Toolkit. -+ case "x$X_PRE_LIBS" in #(vi -+ *-lICE*) -+ case "x$LIBS" in #(vi -+ *-lICE*) #(vi -+ ;; -+ *) -+ test -n "$verbose" && echo " work around broken ICE dependency" 1>&6 - --if test "$PKG_CONFIG" != none ; then -- cf_athena_list= -- test "$cf_x_athena" = Xaw && cf_athena_list="xaw8 xaw7 xaw6" -- for cf_athena_pkg in \ -- $cf_athena_list \ -- ${cf_x_athena} \ -- ${cf_x_athena}-devel \ -- lib${cf_x_athena} \ -- lib${cf_x_athena}-devel -- do -+echo "${as_me:-configure}:10779: testing work around broken ICE dependency ..." 1>&5 - --if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists $cf_athena_pkg; then -- test -n "$verbose" && echo " found package $cf_athena_pkg" 1>&6 -+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists ice; then -+ test -n "$verbose" && echo " found package ice" 1>&6 - --echo "${as_me:-configure}:10474: testing found package $cf_athena_pkg ..." 1>&5 -+echo "${as_me:-configure}:10784: testing found package ice ..." 1>&5 - -- cf_pkgconfig_incs="`$PKG_CONFIG --cflags $cf_athena_pkg 2>/dev/null`" -- cf_pkgconfig_libs="`$PKG_CONFIG --libs $cf_athena_pkg 2>/dev/null`" -- test -n "$verbose" && echo " package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs" 1>&6 -+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags ice 2>/dev/null`" -+ cf_pkgconfig_libs="`$PKG_CONFIG --libs ice 2>/dev/null`" -+ test -n "$verbose" && echo " package ice CFLAGS: $cf_pkgconfig_incs" 1>&6 - --echo "${as_me:-configure}:10480: testing package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -+echo "${as_me:-configure}:10790: testing package ice CFLAGS: $cf_pkgconfig_incs ..." 1>&5 - -- test -n "$verbose" && echo " package $cf_athena_pkg LIBS: $cf_pkgconfig_libs" 1>&6 -+ test -n "$verbose" && echo " package ice LIBS: $cf_pkgconfig_libs" 1>&6 - --echo "${as_me:-configure}:10484: testing package $cf_athena_pkg LIBS: $cf_pkgconfig_libs ..." 1>&5 -+echo "${as_me:-configure}:10794: testing package ice LIBS: $cf_pkgconfig_libs ..." 1>&5 - - cf_fix_cppflags=no - cf_new_cflags= -@@ -10563,84 +10873,20 @@ - - LIBS="$cf_pkgconfig_libs $LIBS" - -- cf_x_athena_lib="$cf_pkgconfig_libs" -- --cf_x_athena_LIBS=`echo "HAVE_LIB_$cf_x_athena" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -- -- cat >>confdefs.h <<EOF --#define $cf_x_athena_LIBS 1 --EOF -- --echo "$as_me:10574: checking for usable $cf_x_athena/Xmu package" >&5 --echo $ECHO_N "checking for usable $cf_x_athena/Xmu package... $ECHO_C" >&6 --if test "${cf_cv_xaw_compat+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- --cat >conftest.$ac_ext <<_ACEOF --#line 10581 "configure" --#include "confdefs.h" -- --#include <X11/Xmu/CharSet.h> -- --int --main () --{ -- --int check = XmuCompareISOLatin1("big", "small") -- -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10597: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:10600: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10603: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:10606: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_cv_xaw_compat=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --cf_cv_xaw_compat=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:10616: result: $cf_cv_xaw_compat" >&5 --echo "${ECHO_T}$cf_cv_xaw_compat" >&6 -- -- if test "$cf_cv_xaw_compat" = no -- then -- # workaround for broken ".pc" files... -- case "$cf_x_athena_lib" in #(vi -- *-lXmu*) #(vi -- ;; -- *) -- test -n "$verbose" && echo " work around broken package" 1>&6 -- --echo "${as_me:-configure}:10628: testing work around broken package ..." 1>&5 -- --if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xmu; then -- test -n "$verbose" && echo " found package xmu" 1>&6 -+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists sm; then -+ test -n "$verbose" && echo " found package sm" 1>&6 - --echo "${as_me:-configure}:10633: testing found package xmu ..." 1>&5 -+echo "${as_me:-configure}:10879: testing found package sm ..." 1>&5 - -- cf_pkgconfig_incs="`$PKG_CONFIG --cflags xmu 2>/dev/null`" -- cf_pkgconfig_libs="`$PKG_CONFIG --libs xmu 2>/dev/null`" -- test -n "$verbose" && echo " package xmu CFLAGS: $cf_pkgconfig_incs" 1>&6 -+ cf_pkgconfig_incs="`$PKG_CONFIG --cflags sm 2>/dev/null`" -+ cf_pkgconfig_libs="`$PKG_CONFIG --libs sm 2>/dev/null`" -+ test -n "$verbose" && echo " package sm CFLAGS: $cf_pkgconfig_incs" 1>&6 - --echo "${as_me:-configure}:10639: testing package xmu CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -+echo "${as_me:-configure}:10885: testing package sm CFLAGS: $cf_pkgconfig_incs ..." 1>&5 - -- test -n "$verbose" && echo " package xmu LIBS: $cf_pkgconfig_libs" 1>&6 -+ test -n "$verbose" && echo " package sm LIBS: $cf_pkgconfig_libs" 1>&6 - --echo "${as_me:-configure}:10643: testing package xmu LIBS: $cf_pkgconfig_libs ..." 1>&5 -+echo "${as_me:-configure}:10889: testing package sm LIBS: $cf_pkgconfig_libs ..." 1>&5 - - cf_fix_cppflags=no - cf_new_cflags= -@@ -10723,53 +10969,53 @@ - LIBS="$cf_pkgconfig_libs $LIBS" - : - else -+ cf_pkgconfig_incs= -+ cf_pkgconfig_libs= -+ : -+fi -+ -+else -+ cf_pkgconfig_incs= -+ cf_pkgconfig_libs= - - test -n "$verbose" && echo " ...before $LIBS" 1>&6 - --echo "${as_me:-configure}:10729: testing ...before $LIBS ..." 1>&5 -+echo "${as_me:-configure}:10983: testing ...before $LIBS ..." 1>&5 - --LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s,-lXt ,-lXt -lXmu ," -e 's/ / /g'` -+LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s%-lXt %-lXt $X_PRE_LIBS %" -e 's% % %g'` - test -n "$verbose" && echo " ...after $LIBS" 1>&6 - --echo "${as_me:-configure}:10734: testing ...after $LIBS ..." 1>&5 -- --fi -- -- ;; -- esac -- fi -- -- break --else -- : --fi -+echo "${as_me:-configure}:10988: testing ...after $LIBS ..." 1>&5 - -- done - fi - --if test -z "$cf_x_athena_lib" ; then -+ ;; -+ esac -+ ;; -+ esac -+ fi - --if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists Xext; then -- test -n "$verbose" && echo " found package Xext" 1>&6 -+ cf_have_X_LIBS=yes - --echo "${as_me:-configure}:10755: testing found package Xext ..." 1>&5 -+else -+ cf_pkgconfig_incs= -+ cf_pkgconfig_libs= - -- cf_pkgconfig_incs="`$PKG_CONFIG --cflags Xext 2>/dev/null`" -- cf_pkgconfig_libs="`$PKG_CONFIG --libs Xext 2>/dev/null`" -- test -n "$verbose" && echo " package Xext CFLAGS: $cf_pkgconfig_incs" 1>&6 -+ LDFLAGS="$X_LIBS $LDFLAGS" - --echo "${as_me:-configure}:10761: testing package Xext CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -+test -n "$verbose" && echo " checking additions to CFLAGS" 1>&6 - -- test -n "$verbose" && echo " package Xext LIBS: $cf_pkgconfig_libs" 1>&6 -+echo "${as_me:-configure}:11008: testing checking additions to CFLAGS ..." 1>&5 - --echo "${as_me:-configure}:10765: testing package Xext LIBS: $cf_pkgconfig_libs ..." 1>&5 -+cf_check_cflags="$CFLAGS" -+cf_check_cppflags="$CPPFLAGS" - - cf_fix_cppflags=no - cf_new_cflags= - cf_new_cppflags= - cf_new_extra_cppflags= - --for cf_add_cflags in $cf_pkgconfig_incs -+for cf_add_cflags in $X_CFLAGS - do - case $cf_fix_cppflags in - no) -@@ -10828,33 +11074,144 @@ - done - - if test -n "$cf_new_cflags" ; then -+ test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6 -+ -+echo "${as_me:-configure}:11079: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5 - - CFLAGS="$CFLAGS $cf_new_cflags" - fi - - if test -n "$cf_new_cppflags" ; then -+ test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6 -+ -+echo "${as_me:-configure}:11087: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5 -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ test -n "$verbose" && echo " add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6 -+ -+echo "${as_me:-configure}:11095: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5 -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+if test "$cf_check_cflags" != "$CFLAGS" ; then -+cat >conftest.$ac_ext <<_ACEOF -+#line 11102 "configure" -+#include "confdefs.h" -+#include <stdio.h> -+int -+main () -+{ -+printf("Hello world"); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:11114: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:11117: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:11120: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:11123: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ : -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+test -n "$verbose" && echo " test-compile failed. Undoing change to \$CFLAGS" 1>&6 -+ -+echo "${as_me:-configure}:11131: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5 -+ -+ if test "$cf_check_cppflags" != "$CPPFLAGS" ; then -+ test -n "$verbose" && echo " but keeping change to \$CPPFLAGS" 1>&6 -+ -+echo "${as_me:-configure}:11136: testing but keeping change to \$CPPFLAGS ..." 1>&5 -+ -+ fi -+ CFLAGS="$cf_check_flags" -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+ -+ echo "$as_me:11144: checking for XOpenDisplay" >&5 -+echo $ECHO_N "checking for XOpenDisplay... $ECHO_C" >&6 -+if test "${ac_cv_func_XOpenDisplay+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 11150 "configure" -+#include "confdefs.h" -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char XOpenDisplay (); below. */ -+#include <assert.h> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char XOpenDisplay (); -+char (*f) (); -+ -+int -+main () -+{ -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_XOpenDisplay) || defined (__stub___XOpenDisplay) -+choke me -+#else -+f = XOpenDisplay; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif - -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:11181: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:11184: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:11187: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:11190: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_func_XOpenDisplay=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_func_XOpenDisplay=no - fi -- --if test -n "$cf_new_extra_cppflags" ; then -- -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi -- -- LIBS="$cf_pkgconfig_libs $LIBS" -- : -+echo "$as_me:11200: result: $ac_cv_func_XOpenDisplay" >&5 -+echo "${ECHO_T}$ac_cv_func_XOpenDisplay" >&6 -+if test $ac_cv_func_XOpenDisplay = yes; then -+ : - else - -- echo "$as_me:10849: checking for XextCreateExtension in -lXext" >&5 --echo $ECHO_N "checking for XextCreateExtension in -lXext... $ECHO_C" >&6 --if test "${ac_cv_lib_Xext_XextCreateExtension+set}" = set; then -+ echo "$as_me:11206: checking for XOpenDisplay in -lX11" >&5 -+echo $ECHO_N "checking for XOpenDisplay in -lX11... $ECHO_C" >&6 -+if test "${ac_cv_lib_X11_XOpenDisplay+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-lXext $LIBS" -+LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 10857 "configure" -+#line 11214 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -10863,486 +11220,447 @@ - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char XextCreateExtension (); -+char XOpenDisplay (); - int - main () - { --XextCreateExtension (); -+XOpenDisplay (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:10876: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:11233: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:10879: \$? = $ac_status" >&5 -+ echo "$as_me:11236: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:10882: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11239: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:10885: \$? = $ac_status" >&5 -+ echo "$as_me:11242: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_Xext_XextCreateExtension=yes -+ ac_cv_lib_X11_XOpenDisplay=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_Xext_XextCreateExtension=no -+ac_cv_lib_X11_XOpenDisplay=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:10896: result: $ac_cv_lib_Xext_XextCreateExtension" >&5 --echo "${ECHO_T}$ac_cv_lib_Xext_XextCreateExtension" >&6 --if test $ac_cv_lib_Xext_XextCreateExtension = yes; then -- LIBS="-lXext $LIBS" -+echo "$as_me:11253: result: $ac_cv_lib_X11_XOpenDisplay" >&5 -+echo "${ECHO_T}$ac_cv_lib_X11_XOpenDisplay" >&6 -+if test $ac_cv_lib_X11_XOpenDisplay = yes; then -+ LIBS="-lX11 $LIBS" - fi - - fi - --cf_have_X_LIBS=no -- --if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xt; then -- test -n "$verbose" && echo " found package xt" 1>&6 -- --echo "${as_me:-configure}:10909: testing found package xt ..." 1>&5 -- -- cf_pkgconfig_incs="`$PKG_CONFIG --cflags xt 2>/dev/null`" -- cf_pkgconfig_libs="`$PKG_CONFIG --libs xt 2>/dev/null`" -- test -n "$verbose" && echo " package xt CFLAGS: $cf_pkgconfig_incs" 1>&6 -- --echo "${as_me:-configure}:10915: testing package xt CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -- -- test -n "$verbose" && echo " package xt LIBS: $cf_pkgconfig_libs" 1>&6 -- --echo "${as_me:-configure}:10919: testing package xt LIBS: $cf_pkgconfig_libs ..." 1>&5 -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in $cf_pkgconfig_incs --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -- -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -- --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -- -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ echo "$as_me:11261: checking for XtAppInitialize" >&5 -+echo $ECHO_N "checking for XtAppInitialize... $ECHO_C" >&6 -+if test "${ac_cv_func_XtAppInitialize+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 11267 "configure" -+#include "confdefs.h" -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char XtAppInitialize (); below. */ -+#include <assert.h> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char XtAppInitialize (); -+char (*f) (); - -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+int -+main () -+{ -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_XtAppInitialize) || defined (__stub___XtAppInitialize) -+choke me -+#else -+f = XtAppInitialize; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:11298: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:11301: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:11304: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:11307: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_func_XtAppInitialize=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_func_XtAppInitialize=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:11317: result: $ac_cv_func_XtAppInitialize" >&5 -+echo "${ECHO_T}$ac_cv_func_XtAppInitialize" >&6 -+if test $ac_cv_func_XtAppInitialize = yes; then -+ : -+else - --if test -n "$cf_new_cflags" ; then -+ echo "$as_me:11323: checking for XtAppInitialize in -lXt" >&5 -+echo $ECHO_N "checking for XtAppInitialize in -lXt... $ECHO_C" >&6 -+if test "${ac_cv_lib_Xt_XtAppInitialize+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 11331 "configure" -+#include "confdefs.h" - -- CFLAGS="$CFLAGS $cf_new_cflags" -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char XtAppInitialize (); -+int -+main () -+{ -+XtAppInitialize (); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:11350: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:11353: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:11356: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:11359: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_lib_Xt_XtAppInitialize=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_lib_Xt_XtAppInitialize=no - fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:11370: result: $ac_cv_lib_Xt_XtAppInitialize" >&5 -+echo "${ECHO_T}$ac_cv_lib_Xt_XtAppInitialize" >&6 -+if test $ac_cv_lib_Xt_XtAppInitialize = yes; then - --if test -n "$cf_new_cppflags" ; then -+cat >>confdefs.h <<\EOF -+#define HAVE_LIBXT 1 -+EOF - -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+ cf_have_X_LIBS=Xt -+ LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS" - fi - --if test -n "$cf_new_extra_cppflags" ; then -+fi - -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi - -- LIBS="$cf_pkgconfig_libs $LIBS" -+if test $cf_have_X_LIBS = no ; then -+ { echo "$as_me:11387: WARNING: Unable to successfully link X Toolkit library (-lXt) with -+test program. You will have to check and add the proper libraries by hand -+to makefile." >&5 -+echo "$as_me: WARNING: Unable to successfully link X Toolkit library (-lXt) with -+test program. You will have to check and add the proper libraries by hand -+to makefile." >&2;} -+fi - -- case "x$LIBS" in #(vi -- *-lX11*) #(vi -- ;; -- *) --# we have an "xt" package, but it may omit Xt's dependency on X11 --echo "$as_me:11006: checking for usable X dependency" >&5 --echo $ECHO_N "checking for usable X dependency... $ECHO_C" >&6 --if test "${cf_cv_xt_x11_compat+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+cf_x_athena_root=$cf_x_athena -+cf_x_athena_inc="" - --cat >conftest.$ac_ext <<_ACEOF --#line 11013 "configure" -+for cf_path in default \ -+ /usr/contrib/X11R6 \ -+ /usr/contrib/X11R5 \ -+ /usr/lib/X11R5 \ -+ /usr/local -+do -+ if test -z "$cf_x_athena_inc" ; then -+ cf_save="$CPPFLAGS" -+ cf_test=X11/$cf_x_athena_root/SimpleMenu.h -+ if test $cf_path != default ; then -+ CPPFLAGS="$cf_save -I$cf_path/include" -+ echo "$as_me:11409: checking for $cf_test in $cf_path" >&5 -+echo $ECHO_N "checking for $cf_test in $cf_path... $ECHO_C" >&6 -+ else -+ echo "$as_me:11412: checking for $cf_test" >&5 -+echo $ECHO_N "checking for $cf_test... $ECHO_C" >&6 -+ fi -+ cat >conftest.$ac_ext <<_ACEOF -+#line 11416 "configure" - #include "confdefs.h" - --#include <X11/Xlib.h> -- -+#include <X11/Intrinsic.h> -+#include <$cf_test> - int - main () - { - -- int rc1 = XDrawLine((Display*) 0, (Drawable) 0, (GC) 0, 0, 0, 0, 0); -- int rc2 = XClearWindow((Display*) 0, (Window) 0); -- int rc3 = XMoveWindow((Display*) 0, (Window) 0, 0, 0); -- int rc4 = XMoveResizeWindow((Display*)0, (Window)0, 0, 0, 0, 0); -- - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:11032: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:11430: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11035: \$? = $ac_status" >&5 -+ echo "$as_me:11433: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:11038: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:11436: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11041: \$? = $ac_status" >&5 -+ echo "$as_me:11439: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_xt_x11_compat=yes -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_xt_x11_compat=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+cf_result=no - fi --echo "$as_me:11051: result: $cf_cv_xt_x11_compat" >&5 --echo "${ECHO_T}$cf_cv_xt_x11_compat" >&6 -- if test "$cf_cv_xt_x11_compat" = no -- then -- test -n "$verbose" && echo " work around broken X11 dependency" 1>&6 -- --echo "${as_me:-configure}:11057: testing work around broken X11 dependency ..." 1>&5 -- -- # 2010/11/19 - good enough until a working Xt on Xcb is delivered. -- --if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists x11; then -- test -n "$verbose" && echo " found package x11" 1>&6 -- --echo "${as_me:-configure}:11064: testing found package x11 ..." 1>&5 -- -- cf_pkgconfig_incs="`$PKG_CONFIG --cflags x11 2>/dev/null`" -- cf_pkgconfig_libs="`$PKG_CONFIG --libs x11 2>/dev/null`" -- test -n "$verbose" && echo " package x11 CFLAGS: $cf_pkgconfig_incs" 1>&6 -- --echo "${as_me:-configure}:11070: testing package x11 CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -- -- test -n "$verbose" && echo " package x11 LIBS: $cf_pkgconfig_libs" 1>&6 -- --echo "${as_me:-configure}:11074: testing package x11 LIBS: $cf_pkgconfig_libs ..." 1>&5 -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in $cf_pkgconfig_incs --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -- -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -- --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -- -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac -+rm -f conftest.$ac_objext conftest.$ac_ext -+ echo "$as_me:11448: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+ if test "$cf_result" = yes ; then -+ cf_x_athena_inc=$cf_path -+ break -+ else -+ CPPFLAGS="$cf_save" -+ fi -+ fi - done - --if test -n "$cf_new_cflags" ; then -- -- CFLAGS="$CFLAGS $cf_new_cflags" --fi -- --if test -n "$cf_new_cppflags" ; then -- -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" --fi -- --if test -n "$cf_new_extra_cppflags" ; then -- -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" --fi -- -- LIBS="$cf_pkgconfig_libs $LIBS" -- : --else -- --test -n "$verbose" && echo " ...before $LIBS" 1>&6 -- --echo "${as_me:-configure}:11160: testing ...before $LIBS ..." 1>&5 -- --LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s,-lXt ,-lXt -lX11 ," -e 's/ / /g'` --test -n "$verbose" && echo " ...after $LIBS" 1>&6 -- --echo "${as_me:-configure}:11165: testing ...after $LIBS ..." 1>&5 -- -+if test -z "$cf_x_athena_inc" ; then -+ { echo "$as_me:11460: WARNING: Unable to successfully find Athena header files with test program" >&5 -+echo "$as_me: WARNING: Unable to successfully find Athena header files with test program" >&2;} -+elif test "$cf_x_athena_inc" != default ; then -+ CPPFLAGS="$CPPFLAGS -I$cf_x_athena_inc" - fi - -- fi -- ;; -- esac -- --echo "$as_me:11173: checking for usable X Toolkit package" >&5 --echo $ECHO_N "checking for usable X Toolkit package... $ECHO_C" >&6 --if test "${cf_cv_xt_ice_compat+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+cf_x_athena_root=$cf_x_athena -+cf_x_athena_lib="" - --cat >conftest.$ac_ext <<_ACEOF --#line 11180 "configure" -+for cf_path in default \ -+ /usr/contrib/X11R6 \ -+ /usr/contrib/X11R5 \ -+ /usr/lib/X11R5 \ -+ /usr/local -+do -+ for cf_lib in \ -+ ${cf_x_athena_root} \ -+ ${cf_x_athena_root}7 \ -+ ${cf_x_athena_root}6 -+ do -+ for cf_libs in \ -+ "-l$cf_lib -lXmu" \ -+ "-l$cf_lib -lXpm -lXmu" \ -+ "-l${cf_lib}_s -lXmu_s" -+ do -+ if test -z "$cf_x_athena_lib" ; then -+ cf_save="$LIBS" -+ cf_test=XawSimpleMenuAddGlobalActions -+ if test $cf_path != default ; then -+ LIBS="-L$cf_path/lib $cf_libs $LIBS" -+ echo "$as_me:11490: checking for $cf_libs in $cf_path" >&5 -+echo $ECHO_N "checking for $cf_libs in $cf_path... $ECHO_C" >&6 -+ else -+ LIBS="$cf_libs $LIBS" -+ echo "$as_me:11494: checking for $cf_test in $cf_libs" >&5 -+echo $ECHO_N "checking for $cf_test in $cf_libs... $ECHO_C" >&6 -+ fi -+ cat >conftest.$ac_ext <<_ACEOF -+#line 11498 "configure" - #include "confdefs.h" - --#include <X11/Shell.h> -+#include <X11/Intrinsic.h> -+#include <X11/$cf_x_athena_root/SimpleMenu.h> - - int - main () - { --int num = IceConnectionNumber(0) - -+$cf_test((XtAppContext) 0) - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:11195: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:11514: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:11198: \$? = $ac_status" >&5 -+ echo "$as_me:11517: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:11201: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:11520: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11204: \$? = $ac_status" >&5 -+ echo "$as_me:11523: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_xt_ice_compat=yes -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_xt_ice_compat=no -+cf_result=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:11214: result: $cf_cv_xt_ice_compat" >&5 --echo "${ECHO_T}$cf_cv_xt_ice_compat" >&6 -- -- if test "$cf_cv_xt_ice_compat" = no -- then -- # workaround for broken ".pc" files used for X Toolkit. -- case "x$X_PRE_LIBS" in #(vi -- *-lICE*) -- case "x$LIBS" in #(vi -- *-lICE*) #(vi -- ;; -- *) -- test -n "$verbose" && echo " work around broken ICE dependency" 1>&6 -- --echo "${as_me:-configure}:11228: testing work around broken ICE dependency ..." 1>&5 -- --if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists ice; then -- test -n "$verbose" && echo " found package ice" 1>&6 -- --echo "${as_me:-configure}:11233: testing found package ice ..." 1>&5 -- -- cf_pkgconfig_incs="`$PKG_CONFIG --cflags ice 2>/dev/null`" -- cf_pkgconfig_libs="`$PKG_CONFIG --libs ice 2>/dev/null`" -- test -n "$verbose" && echo " package ice CFLAGS: $cf_pkgconfig_incs" 1>&6 -- --echo "${as_me:-configure}:11239: testing package ice CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -- -- test -n "$verbose" && echo " package ice LIBS: $cf_pkgconfig_libs" 1>&6 -- --echo "${as_me:-configure}:11243: testing package ice LIBS: $cf_pkgconfig_libs ..." 1>&5 -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in $cf_pkgconfig_incs --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -- -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -+ echo "$as_me:11532: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+ if test "$cf_result" = yes ; then -+ cf_x_athena_lib="$cf_libs" -+ break - fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ LIBS="$cf_save" -+ fi -+ done # cf_libs -+ test -n "$cf_x_athena_lib" && break -+ done # cf_lib -+done -+ -+if test -z "$cf_x_athena_lib" ; then -+ { { echo "$as_me:11546: error: Unable to successfully link Athena library (-l$cf_x_athena_root) with test program" >&5 -+echo "$as_me: error: Unable to successfully link Athena library (-l$cf_x_athena_root) with test program" >&2;} -+ { (exit 1); exit 1; }; } -+fi - --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+cf_x_athena_LIBS=`echo "HAVE_LIB_$cf_x_athena" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+cat >>confdefs.h <<EOF -+#define $cf_x_athena_LIBS 1 -+EOF - -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+fi - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac -+if test -n "$ac_tool_prefix"; then -+ for ac_prog in xcurses-config -+ do -+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -+set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -+echo "$as_me:11564: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_XCURSES_CONFIG+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$XCURSES_CONFIG"; then -+ ac_cv_prog_XCURSES_CONFIG="$XCURSES_CONFIG" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_XCURSES_CONFIG="$ac_tool_prefix$ac_prog" -+echo "$as_me:11579: found $ac_dir/$ac_word" >&5 -+break - done - --if test -n "$cf_new_cflags" ; then -- -- CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+fi -+XCURSES_CONFIG=$ac_cv_prog_XCURSES_CONFIG -+if test -n "$XCURSES_CONFIG"; then -+ echo "$as_me:11587: result: $XCURSES_CONFIG" >&5 -+echo "${ECHO_T}$XCURSES_CONFIG" >&6 -+else -+ echo "$as_me:11590: result: no" >&5 -+echo "${ECHO_T}no" >&6 - fi - --if test -n "$cf_new_cppflags" ; then -+ test -n "$XCURSES_CONFIG" && break -+ done -+fi -+if test -z "$XCURSES_CONFIG"; then -+ ac_ct_XCURSES_CONFIG=$XCURSES_CONFIG -+ for ac_prog in xcurses-config -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:11603: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_ac_ct_XCURSES_CONFIG+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$ac_ct_XCURSES_CONFIG"; then -+ ac_cv_prog_ac_ct_XCURSES_CONFIG="$ac_ct_XCURSES_CONFIG" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_ac_ct_XCURSES_CONFIG="$ac_prog" -+echo "$as_me:11618: found $ac_dir/$ac_word" >&5 -+break -+done - -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+fi -+ac_ct_XCURSES_CONFIG=$ac_cv_prog_ac_ct_XCURSES_CONFIG -+if test -n "$ac_ct_XCURSES_CONFIG"; then -+ echo "$as_me:11626: result: $ac_ct_XCURSES_CONFIG" >&5 -+echo "${ECHO_T}$ac_ct_XCURSES_CONFIG" >&6 -+else -+ echo "$as_me:11629: result: no" >&5 -+echo "${ECHO_T}no" >&6 - fi - --if test -n "$cf_new_extra_cppflags" ; then -+ test -n "$ac_ct_XCURSES_CONFIG" && break -+done -+test -n "$ac_ct_XCURSES_CONFIG" || ac_ct_XCURSES_CONFIG="none" - -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+ XCURSES_CONFIG=$ac_ct_XCURSES_CONFIG - fi - -- LIBS="$cf_pkgconfig_libs $LIBS" -+if test "$XCURSES_CONFIG" != none ; then - --if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists sm; then -- test -n "$verbose" && echo " found package sm" 1>&6 -+CPPFLAGS="$CPPFLAGS `$XCURSES_CONFIG --cflags`" -+LIBS="`$XCURSES_CONFIG --libs` $LIBS" - --echo "${as_me:-configure}:11328: testing found package sm ..." 1>&5 -+cf_cv_lib_XCurses=yes - -- cf_pkgconfig_incs="`$PKG_CONFIG --cflags sm 2>/dev/null`" -- cf_pkgconfig_libs="`$PKG_CONFIG --libs sm 2>/dev/null`" -- test -n "$verbose" && echo " package sm CFLAGS: $cf_pkgconfig_incs" 1>&6 -+else -+ -+LDFLAGS="$LDFLAGS $X_LIBS" - --echo "${as_me:-configure}:11334: testing package sm CFLAGS: $cf_pkgconfig_incs ..." 1>&5 -+test -n "$verbose" && echo " checking additions to CFLAGS" 1>&6 - -- test -n "$verbose" && echo " package sm LIBS: $cf_pkgconfig_libs" 1>&6 -+echo "${as_me:-configure}:11653: testing checking additions to CFLAGS ..." 1>&5 - --echo "${as_me:-configure}:11338: testing package sm LIBS: $cf_pkgconfig_libs ..." 1>&5 -+cf_check_cflags="$CFLAGS" -+cf_check_cppflags="$CPPFLAGS" - - cf_fix_cppflags=no - cf_new_cflags= - cf_new_cppflags= - cf_new_extra_cppflags= - --for cf_add_cflags in $cf_pkgconfig_incs -+for cf_add_cflags in $X_CFLAGS - do - case $cf_fix_cppflags in - no) -@@ -11401,260 +11719,375 @@ - done - - if test -n "$cf_new_cflags" ; then -+ test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6 -+ -+echo "${as_me:-configure}:11724: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5 - - CFLAGS="$CFLAGS $cf_new_cflags" - fi - - if test -n "$cf_new_cppflags" ; then -+ test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6 -+ -+echo "${as_me:-configure}:11732: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5 - - CPPFLAGS="$CPPFLAGS $cf_new_cppflags" - fi - - if test -n "$cf_new_extra_cppflags" ; then -+ test -n "$verbose" && echo " add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6 - -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" --fi -+echo "${as_me:-configure}:11740: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5 - -- LIBS="$cf_pkgconfig_libs $LIBS" -- : --else -- : -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi - -+if test "$cf_check_cflags" != "$CFLAGS" ; then -+cat >conftest.$ac_ext <<_ACEOF -+#line 11747 "configure" -+#include "confdefs.h" -+#include <stdio.h> -+int -+main () -+{ -+printf("Hello world"); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:11759: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:11762: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:11765: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:11768: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ : - else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+test -n "$verbose" && echo " test-compile failed. Undoing change to \$CFLAGS" 1>&6 - --test -n "$verbose" && echo " ...before $LIBS" 1>&6 -- --echo "${as_me:-configure}:11428: testing ...before $LIBS ..." 1>&5 -+echo "${as_me:-configure}:11776: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5 - --LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s,-lXt ,-lXt $X_PRE_LIBS ," -e 's/ / /g'` --test -n "$verbose" && echo " ...after $LIBS" 1>&6 -+ if test "$cf_check_cppflags" != "$CPPFLAGS" ; then -+ test -n "$verbose" && echo " but keeping change to \$CPPFLAGS" 1>&6 - --echo "${as_me:-configure}:11433: testing ...after $LIBS ..." 1>&5 -+echo "${as_me:-configure}:11781: testing but keeping change to \$CPPFLAGS ..." 1>&5 - -+ fi -+ CFLAGS="$cf_check_flags" -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi - -- ;; -- esac -- ;; -- esac -- fi -- -- cf_have_X_LIBS=yes -- -+echo "$as_me:11789: checking for XOpenDisplay in -lX11" >&5 -+echo $ECHO_N "checking for XOpenDisplay in -lX11... $ECHO_C" >&6 -+if test "${ac_cv_lib_X11_XOpenDisplay+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 11797 "configure" -+#include "confdefs.h" - -- LDFLAGS="$X_LIBS $LDFLAGS" -- --test -n "$verbose" && echo " checking additions to CFLAGS" 1>&6 -- --echo "${as_me:-configure}:11451: testing checking additions to CFLAGS ..." 1>&5 -- --cf_check_cflags="$CFLAGS" --cf_check_cppflags="$CPPFLAGS" -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char XOpenDisplay (); -+int -+main () -+{ -+XOpenDisplay (); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:11816: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:11819: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:11822: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:11825: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ ac_cv_lib_X11_XOpenDisplay=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+ac_cv_lib_X11_XOpenDisplay=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:11836: result: $ac_cv_lib_X11_XOpenDisplay" >&5 -+echo "${ECHO_T}$ac_cv_lib_X11_XOpenDisplay" >&6 -+if test $ac_cv_lib_X11_XOpenDisplay = yes; then -+ LIBS="-lX11 $LIBS" -+fi - --for cf_add_cflags in $X_CFLAGS --do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+echo "$as_me:11842: checking for XCurses library" >&5 -+echo $ECHO_N "checking for XCurses library... $ECHO_C" >&6 -+if test "${cf_cv_lib_XCurses+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -+LIBS="-lXCurses $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 11850 "configure" -+#include "confdefs.h" - -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+#include <xcurses.h> -+char *XCursesProgramName = "test"; - --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+int -+main () -+{ -+XCursesExit(); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:11865: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:11868: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:11871: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:11874: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_lib_XCurses=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_lib_XCurses=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+fi -+echo "$as_me:11885: result: $cf_cv_lib_XCurses" >&5 -+echo "${ECHO_T}$cf_cv_lib_XCurses" >&6 - -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+fi - -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -+if test $cf_cv_lib_XCurses = yes ; then - --if test -n "$cf_new_cflags" ; then -- test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6 -+cat >>confdefs.h <<\EOF -+#define UNIX 1 -+EOF - --echo "${as_me:-configure}:11522: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5 -+cat >>confdefs.h <<\EOF -+#define XCURSES 1 -+EOF - -- CFLAGS="$CFLAGS $cf_new_cflags" -+ echo "$as_me:11900: checking for xcurses.h" >&5 -+echo $ECHO_N "checking for xcurses.h... $ECHO_C" >&6 -+if test "${ac_cv_header_xcurses_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 11906 "configure" -+#include "confdefs.h" -+#include <xcurses.h> -+_ACEOF -+if { (eval echo "$as_me:11910: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:11916: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ ac_cv_header_xcurses_h=yes -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ ac_cv_header_xcurses_h=no -+fi -+rm -f conftest.err conftest.$ac_ext - fi -+echo "$as_me:11935: result: $ac_cv_header_xcurses_h" >&5 -+echo "${ECHO_T}$ac_cv_header_xcurses_h" >&6 -+if test $ac_cv_header_xcurses_h = yes; then - --if test -n "$cf_new_cppflags" ; then -- test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6 -+cat >>confdefs.h <<\EOF -+#define HAVE_XCURSES 1 -+EOF - --echo "${as_me:-configure}:11530: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5 -+fi - -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+else -+ { { echo "$as_me:11946: error: Cannot link with XCurses" >&5 -+echo "$as_me: error: Cannot link with XCurses" >&2;} -+ { (exit 1); exit 1; }; } - fi - --if test -n "$cf_new_extra_cppflags" ; then -- test -n "$verbose" && echo " add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6 -+ ;; -+esac - --echo "${as_me:-configure}:11538: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5 -+case $cf_cv_screen in -+curses|curses_*) - -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" --fi -+echo "$as_me:11957: checking for NetBSD form.h" >&5 -+echo $ECHO_N "checking for NetBSD form.h... $ECHO_C" >&6 -+if test "${cf_cv_netbsd_form_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else - --if test "$cf_check_cflags" != "$CFLAGS" ; then - cat >conftest.$ac_ext <<_ACEOF --#line 11545 "configure" -+#line 11964 "configure" - #include "confdefs.h" --#include <stdio.h> -+ -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <form.h> -+ - int - main () - { --printf("Hello world"); -+ -+ FORM *form; -+ int y = current_field(form)->cursor_ypos; -+ int x = current_field(form)->cursor_xpos; -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:11557: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:11983: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11560: \$? = $ac_status" >&5 -+ echo "$as_me:11986: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:11563: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:11989: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11566: \$? = $ac_status" >&5 -+ echo "$as_me:11992: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ cf_cv_netbsd_form_h=yes -+ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --test -n "$verbose" && echo " test-compile failed. Undoing change to \$CFLAGS" 1>&6 -- --echo "${as_me:-configure}:11574: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5 -- -- if test "$cf_check_cppflags" != "$CPPFLAGS" ; then -- test -n "$verbose" && echo " but keeping change to \$CPPFLAGS" 1>&6 -- --echo "${as_me:-configure}:11579: testing but keeping change to \$CPPFLAGS ..." 1>&5 -- -- fi -- CFLAGS="$cf_check_flags" -+cf_cv_netbsd_form_h=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+ - fi -+echo "$as_me:12004: result: $cf_cv_netbsd_form_h" >&5 -+echo "${ECHO_T}$cf_cv_netbsd_form_h" >&6 - -- echo "$as_me:11587: checking for XOpenDisplay" >&5 --echo $ECHO_N "checking for XOpenDisplay... $ECHO_C" >&6 --if test "${ac_cv_func_XOpenDisplay+set}" = set; then -+test "$cf_cv_netbsd_form_h" = yes && -+cat >>confdefs.h <<\EOF -+#define HAVE_NETBSD_FORM_H 1 -+EOF -+ -+echo "$as_me:12012: checking for NetBSD menu.h" >&5 -+echo $ECHO_N "checking for NetBSD menu.h... $ECHO_C" >&6 -+if test "${cf_cv_netbsd_menu_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 11593 "configure" -+ -+cat >conftest.$ac_ext <<_ACEOF -+#line 12019 "configure" - #include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char XOpenDisplay (); below. */ --#include <assert.h> --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char XOpenDisplay (); --char (*f) (); -+ -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <menu.h> - - int - main () - { --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_XOpenDisplay) || defined (__stub___XOpenDisplay) --choke me --#else --f = XOpenDisplay; --#endif -+ -+ MENU *menu; -+ int y = menu->max_item_width; - - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:11624: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:12037: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11627: \$? = $ac_status" >&5 -+ echo "$as_me:12040: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:11630: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:12043: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11633: \$? = $ac_status" >&5 -+ echo "$as_me:12046: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_func_XOpenDisplay=yes -+ cf_cv_netbsd_menu_h=yes -+ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_func_XOpenDisplay=no -+cf_cv_netbsd_menu_h=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+ - fi --echo "$as_me:11643: result: $ac_cv_func_XOpenDisplay" >&5 --echo "${ECHO_T}$ac_cv_func_XOpenDisplay" >&6 --if test $ac_cv_func_XOpenDisplay = yes; then -- : --else -+echo "$as_me:12058: result: $cf_cv_netbsd_menu_h" >&5 -+echo "${ECHO_T}$cf_cv_netbsd_menu_h" >&6 - -- echo "$as_me:11649: checking for XOpenDisplay in -lX11" >&5 --echo $ECHO_N "checking for XOpenDisplay in -lX11... $ECHO_C" >&6 --if test "${ac_cv_lib_X11_XOpenDisplay+set}" = set; then -+test "$cf_cv_netbsd_menu_h" = yes && -+cat >>confdefs.h <<\EOF -+#define HAVE_NETBSD_MENU_H 1 -+EOF -+ -+ ;; -+ncursesw) -+ cf_cv_libtype=w -+ ;; -+esac -+ -+case $cf_cv_screen in #(vi -+pdcurses) #(vi -+ ;; -+*) -+ # look for curses-related libraries -+ : ${cf_panel_lib:=panel} -+ : ${cf_menu_lib:=menu} -+ : ${cf_form_lib:=form} -+ -+as_ac_Lib=`echo "ac_cv_lib_$cf_panel_lib$cf_cv_libtype''_new_panel" | $as_tr_sh` -+echo "$as_me:12082: checking for new_panel in -l$cf_panel_lib$cf_cv_libtype" >&5 -+echo $ECHO_N "checking for new_panel in -l$cf_panel_lib$cf_cv_libtype... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Lib+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS" -+LIBS="-l$cf_panel_lib$cf_cv_libtype $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 11657 "configure" -+#line 12090 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -11663,115 +12096,116 @@ - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char XOpenDisplay (); -+char new_panel (); - int - main () - { --XOpenDisplay (); -+new_panel (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:11676: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:12109: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:11679: \$? = $ac_status" >&5 -+ echo "$as_me:12112: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:11682: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:12115: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11685: \$? = $ac_status" >&5 -+ echo "$as_me:12118: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_X11_XOpenDisplay=yes -+ eval "$as_ac_Lib=yes" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_X11_XOpenDisplay=no -+eval "$as_ac_Lib=no" - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:11696: result: $ac_cv_lib_X11_XOpenDisplay" >&5 --echo "${ECHO_T}$ac_cv_lib_X11_XOpenDisplay" >&6 --if test $ac_cv_lib_X11_XOpenDisplay = yes; then -- LIBS="-lX11 $LIBS" --fi -+echo "$as_me:12129: result: `eval echo '${'$as_ac_Lib'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 -+if test `eval echo '${'$as_ac_Lib'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_LIB$cf_panel_lib$cf_cv_libtype" | $as_tr_cpp` 1 -+EOF -+ -+ LIBS="-l$cf_panel_lib$cf_cv_libtype $LIBS" - - fi - -- echo "$as_me:11704: checking for XtAppInitialize" >&5 --echo $ECHO_N "checking for XtAppInitialize... $ECHO_C" >&6 --if test "${ac_cv_func_XtAppInitialize+set}" = set; then -+as_ac_Lib=`echo "ac_cv_lib_$cf_menu_lib$cf_cv_libtype''_menu_driver" | $as_tr_sh` -+echo "$as_me:12141: checking for menu_driver in -l$cf_menu_lib$cf_cv_libtype" >&5 -+echo $ECHO_N "checking for menu_driver in -l$cf_menu_lib$cf_cv_libtype... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Lib+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 11710 "configure" -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-l$cf_menu_lib$cf_cv_libtype $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+#line 12149 "configure" - #include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char XtAppInitialize (); below. */ --#include <assert.h> -+ - /* Override any gcc2 internal prototype to avoid an error. */ - #ifdef __cplusplus - extern "C" - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char XtAppInitialize (); --char (*f) (); -- -+char menu_driver (); - int - main () - { --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_XtAppInitialize) || defined (__stub___XtAppInitialize) --choke me --#else --f = XtAppInitialize; --#endif -- -+menu_driver (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:11741: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:12168: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:11744: \$? = $ac_status" >&5 -+ echo "$as_me:12171: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:11747: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:12174: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11750: \$? = $ac_status" >&5 -+ echo "$as_me:12177: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_func_XtAppInitialize=yes -+ eval "$as_ac_Lib=yes" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_func_XtAppInitialize=no -+eval "$as_ac_Lib=no" - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:12188: result: `eval echo '${'$as_ac_Lib'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 -+if test `eval echo '${'$as_ac_Lib'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_LIB$cf_menu_lib$cf_cv_libtype" | $as_tr_cpp` 1 -+EOF -+ -+ LIBS="-l$cf_menu_lib$cf_cv_libtype $LIBS" -+ - fi --echo "$as_me:11760: result: $ac_cv_func_XtAppInitialize" >&5 --echo "${ECHO_T}$ac_cv_func_XtAppInitialize" >&6 --if test $ac_cv_func_XtAppInitialize = yes; then -- : --else - -- echo "$as_me:11766: checking for XtAppInitialize in -lXt" >&5 --echo $ECHO_N "checking for XtAppInitialize in -lXt... $ECHO_C" >&6 --if test "${ac_cv_lib_Xt_XtAppInitialize+set}" = set; then -+as_ac_Lib=`echo "ac_cv_lib_$cf_form_lib$cf_cv_libtype''_form_driver" | $as_tr_sh` -+echo "$as_me:12200: checking for form_driver in -l$cf_form_lib$cf_cv_libtype" >&5 -+echo $ECHO_N "checking for form_driver in -l$cf_form_lib$cf_cv_libtype... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Lib+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS" -+LIBS="-l$cf_form_lib$cf_cv_libtype $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 11774 "configure" -+#line 12208 "configure" - #include "confdefs.h" - - /* Override any gcc2 internal prototype to avoid an error. */ -@@ -11780,2296 +12214,2187 @@ - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char XtAppInitialize (); -+char form_driver (); - int - main () - { --XtAppInitialize (); -+form_driver (); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:11793: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:12227: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:11796: \$? = $ac_status" >&5 -+ echo "$as_me:12230: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:11799: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:12233: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11802: \$? = $ac_status" >&5 -+ echo "$as_me:12236: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_Xt_XtAppInitialize=yes -+ eval "$as_ac_Lib=yes" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_Xt_XtAppInitialize=no -+eval "$as_ac_Lib=no" - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:11813: result: $ac_cv_lib_Xt_XtAppInitialize" >&5 --echo "${ECHO_T}$ac_cv_lib_Xt_XtAppInitialize" >&6 --if test $ac_cv_lib_Xt_XtAppInitialize = yes; then -- cat >>confdefs.h <<\EOF --#define HAVE_LIBXT 1 -+echo "$as_me:12247: result: `eval echo '${'$as_ac_Lib'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 -+if test `eval echo '${'$as_ac_Lib'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_LIB$cf_form_lib$cf_cv_libtype" | $as_tr_cpp` 1 - EOF - -- cf_have_X_LIBS=Xt -- LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS" -+ LIBS="-l$cf_form_lib$cf_cv_libtype $LIBS" -+ - fi - -+ # look for curses-related headers -+ -+for ac_header in \ -+ nc_alloc.h \ -+ nomacros.h \ -+ form.h \ -+ menu.h \ -+ panel.h \ -+ term_entry.h \ -+ -+do -+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -+echo "$as_me:12270: checking for $ac_header" >&5 -+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Header+set}\" = set"; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12276 "configure" -+#include "confdefs.h" -+#include <$ac_header> -+_ACEOF -+if { (eval echo "$as_me:12280: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:12286: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ eval "$as_ac_Header=yes" -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ eval "$as_ac_Header=no" -+fi -+rm -f conftest.err conftest.$ac_ext - fi -+echo "$as_me:12305: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -+if test `eval echo '${'$as_ac_Header'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -+EOF - - fi -+done - --if test $cf_have_X_LIBS = no ; then -- { echo "$as_me:11829: WARNING: Unable to successfully link X Toolkit library (-lXt) with --test program. You will have to check and add the proper libraries by hand --to makefile." >&5 --echo "$as_me: WARNING: Unable to successfully link X Toolkit library (-lXt) with --test program. You will have to check and add the proper libraries by hand --to makefile." >&2;} -+ ;; -+esac -+ -+echo "$as_me:12318: checking for ANSI C header files" >&5 -+echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -+if test "${ac_cv_header_stdc+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12324 "configure" -+#include "confdefs.h" -+#include <stdlib.h> -+#include <stdarg.h> -+#include <string.h> -+#include <float.h> -+ -+_ACEOF -+if { (eval echo "$as_me:12332: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:12338: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ ac_cv_header_stdc=yes -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ ac_cv_header_stdc=no - fi -+rm -f conftest.err conftest.$ac_ext - --cf_x_athena_root=$cf_x_athena --cf_x_athena_inc="" -+if test $ac_cv_header_stdc = yes; then -+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI. -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12360 "configure" -+#include "confdefs.h" -+#include <string.h> - --for cf_path in default \ -- /usr/contrib/X11R6 \ -- /usr/contrib/X11R5 \ -- /usr/lib/X11R5 \ -- /usr/local --do -- if test -z "$cf_x_athena_inc" ; then -- cf_save="$CPPFLAGS" -- cf_test=X11/$cf_x_athena_root/SimpleMenu.h -- if test $cf_path != default ; then -- CPPFLAGS="$cf_save -I$cf_path/include" -- echo "$as_me:11851: checking for $cf_test in $cf_path" >&5 --echo $ECHO_N "checking for $cf_test in $cf_path... $ECHO_C" >&6 -- else -- echo "$as_me:11854: checking for $cf_test" >&5 --echo $ECHO_N "checking for $cf_test... $ECHO_C" >&6 -- fi -- cat >conftest.$ac_ext <<_ACEOF --#line 11858 "configure" -+_ACEOF -+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -+ egrep "memchr" >/dev/null 2>&1; then -+ : -+else -+ ac_cv_header_stdc=no -+fi -+rm -rf conftest* -+ -+fi -+ -+if test $ac_cv_header_stdc = yes; then -+ # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12378 "configure" - #include "confdefs.h" -+#include <stdlib.h> - --#include <X11/Intrinsic.h> --#include <$cf_test> -+_ACEOF -+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -+ egrep "free" >/dev/null 2>&1; then -+ : -+else -+ ac_cv_header_stdc=no -+fi -+rm -rf conftest* -+ -+fi -+ -+if test $ac_cv_header_stdc = yes; then -+ # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. -+ if test "$cross_compiling" = yes; then -+ : -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12399 "configure" -+#include "confdefs.h" -+#include <ctype.h> -+#if ((' ' & 0x0FF) == 0x020) -+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -+#else -+# define ISLOWER(c) (('a' <= (c) && (c) <= 'i') \ -+ || ('j' <= (c) && (c) <= 'r') \ -+ || ('s' <= (c) && (c) <= 'z')) -+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -+#endif -+ -+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) - int - main () - { -- -- ; -- return 0; -+ int i; -+ for (i = 0; i < 256; i++) -+ if (XOR (islower (i), ISLOWER (i)) -+ || toupper (i) != TOUPPER (i)) -+ $ac_main_return(2); -+ $ac_main_return (0); - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:11872: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:12425: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:11875: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:11878: \"$ac_try\"") >&5 -+ echo "$as_me:12428: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:12430: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11881: \$? = $ac_status" >&5 -+ echo "$as_me:12433: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_result=yes -+ : - else -- echo "$as_me: failed program was:" >&5 -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_result=no -+ac_cv_header_stdc=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- echo "$as_me:11890: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 -- if test "$cf_result" = yes ; then -- cf_x_athena_inc=$cf_path -- break -- else -- CPPFLAGS="$cf_save" -- fi -- fi --done -- --if test -z "$cf_x_athena_inc" ; then -- { echo "$as_me:11902: WARNING: Unable to successfully find Athena header files with test program" >&5 --echo "$as_me: WARNING: Unable to successfully find Athena header files with test program" >&2;} --elif test "$cf_x_athena_inc" != default ; then -- CPPFLAGS="$CPPFLAGS -I$cf_x_athena_inc" -+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext - fi -+fi -+fi -+echo "$as_me:12446: result: $ac_cv_header_stdc" >&5 -+echo "${ECHO_T}$ac_cv_header_stdc" >&6 -+if test $ac_cv_header_stdc = yes; then - --cf_x_athena_root=$cf_x_athena --cf_x_athena_lib="" -+cat >>confdefs.h <<\EOF -+#define STDC_HEADERS 1 -+EOF - --for cf_path in default \ -- /usr/contrib/X11R6 \ -- /usr/contrib/X11R5 \ -- /usr/lib/X11R5 \ -- /usr/local --do -- for cf_lib in \ -- "-l$cf_x_athena_root -lXmu" \ -- "-l$cf_x_athena_root -lXpm -lXmu" \ -- "-l${cf_x_athena_root}_s -lXmu_s" -- do -- if test -z "$cf_x_athena_lib" ; then -- cf_save="$LIBS" -- cf_test=XawSimpleMenuAddGlobalActions -- if test $cf_path != default ; then -- LIBS="-L$cf_path/lib $cf_lib $LIBS" -- echo "$as_me:11927: checking for $cf_lib in $cf_path" >&5 --echo $ECHO_N "checking for $cf_lib in $cf_path... $ECHO_C" >&6 -- else -- LIBS="$cf_lib $LIBS" -- echo "$as_me:11931: checking for $cf_test in $cf_lib" >&5 --echo $ECHO_N "checking for $cf_test in $cf_lib... $ECHO_C" >&6 -- fi -- cat >conftest.$ac_ext <<_ACEOF --#line 11935 "configure" -+fi -+ -+echo "$as_me:12456: checking whether time.h and sys/time.h may both be included" >&5 -+echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6 -+if test "${ac_cv_header_time+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12462 "configure" - #include "confdefs.h" -- --#include <X11/Intrinsic.h> --#include <X11/$cf_x_athena_root/SimpleMenu.h> -+#include <sys/types.h> -+#include <sys/time.h> -+#include <time.h> - - int - main () - { -- --$cf_test((XtAppContext) 0) -+if ((struct tm *) 0) -+return 0; - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:11951: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:12478: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:11954: \$? = $ac_status" >&5 -+ echo "$as_me:12481: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:11957: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:12484: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:11960: \$? = $ac_status" >&5 -+ echo "$as_me:12487: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_result=yes -+ ac_cv_header_time=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_result=no -+ac_cv_header_time=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- echo "$as_me:11969: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 -- if test "$cf_result" = yes ; then -- cf_x_athena_lib="$cf_lib" -- break -- fi -- LIBS="$cf_save" -- fi -- done --done -- --if test -z "$cf_x_athena_lib" ; then -- { { echo "$as_me:11981: error: Unable to successfully link Athena library (-l$cf_x_athena_root) with test program" >&5 --echo "$as_me: error: Unable to successfully link Athena library (-l$cf_x_athena_root) with test program" >&2;} -- { (exit 1); exit 1; }; } -+rm -f conftest.$ac_objext conftest.$ac_ext - fi -+echo "$as_me:12497: result: $ac_cv_header_time" >&5 -+echo "${ECHO_T}$ac_cv_header_time" >&6 -+if test $ac_cv_header_time = yes; then - --cf_x_athena_LIBS=`echo "HAVE_LIB_$cf_x_athena" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -- --cat >>confdefs.h <<EOF --#define $cf_x_athena_LIBS 1 -+cat >>confdefs.h <<\EOF -+#define TIME_WITH_SYS_TIME 1 - EOF - - fi - --for ac_prog in xcurses-config -+for ac_header in \ -+getopt.h \ -+locale.h \ -+math.h \ -+stdarg.h \ -+sys/ioctl.h \ -+sys/select.h \ -+sys/time.h \ -+termios.h \ -+unistd.h \ -+ - do -- # Extract the first word of "$ac_prog", so it can be a program name with args. --set dummy $ac_prog; ac_word=$2 --echo "$as_me:11998: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 --if test "${ac_cv_path_XCURSES_CONFIG+set}" = set; then -+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -+echo "$as_me:12520: checking for $ac_header" >&5 -+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- case $XCURSES_CONFIG in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_XCURSES_CONFIG="$XCURSES_CONFIG" # Let the user override the test with a path. -- ;; -- *) -- ac_save_IFS=$IFS; IFS=$ac_path_separator --ac_dummy="$PATH" --for ac_dir in $ac_dummy; do -- IFS=$ac_save_IFS -- test -z "$ac_dir" && ac_dir=. -- if $as_executable_p "$ac_dir/$ac_word"; then -- ac_cv_path_XCURSES_CONFIG="$ac_dir/$ac_word" -- echo "$as_me:12015: found $ac_dir/$ac_word" >&5 -- break -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12526 "configure" -+#include "confdefs.h" -+#include <$ac_header> -+_ACEOF -+if { (eval echo "$as_me:12530: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:12536: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes - fi --done -+if test -z "$ac_cpp_err"; then -+ eval "$as_ac_Header=yes" -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ eval "$as_ac_Header=no" -+fi -+rm -f conftest.err conftest.$ac_ext -+fi -+echo "$as_me:12555: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -+if test `eval echo '${'$as_ac_Header'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -+EOF - -- ;; --esac - fi --XCURSES_CONFIG=$ac_cv_path_XCURSES_CONFIG -+done - --if test -n "$XCURSES_CONFIG"; then -- echo "$as_me:12026: result: $XCURSES_CONFIG" >&5 --echo "${ECHO_T}$XCURSES_CONFIG" >&6 -+for ac_header in unistd.h getopt.h -+do -+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -+echo "$as_me:12568: checking for $ac_header" >&5 -+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_Header+set}\" = set"; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- echo "$as_me:12029: result: no" >&5 --echo "${ECHO_T}no" >&6 -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12574 "configure" -+#include "confdefs.h" -+#include <$ac_header> -+_ACEOF -+if { (eval echo "$as_me:12578: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:12584: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ eval "$as_ac_Header=yes" -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ eval "$as_ac_Header=no" -+fi -+rm -f conftest.err conftest.$ac_ext - fi -+echo "$as_me:12603: result: `eval echo '${'$as_ac_Header'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -+if test `eval echo '${'$as_ac_Header'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -+EOF - -- test -n "$XCURSES_CONFIG" && break -+fi - done --test -n "$XCURSES_CONFIG" || XCURSES_CONFIG="none" -- --if test "$XCURSES_CONFIG" != none ; then -- --CPPFLAGS="$CPPFLAGS `$XCURSES_CONFIG --cflags`" --LIBS="`$XCURSES_CONFIG --libs` $LIBS" -- --cf_cv_lib_XCurses=yes - -+echo "$as_me:12613: checking for header declaring getopt variables" >&5 -+echo $ECHO_N "checking for header declaring getopt variables... $ECHO_C" >&6 -+if test "${cf_cv_getopt_header+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --LDFLAGS="$LDFLAGS $X_LIBS" -- --test -n "$verbose" && echo " checking additions to CFLAGS" 1>&6 -- --echo "${as_me:-configure}:12050: testing checking additions to CFLAGS ..." 1>&5 -- --cf_check_cflags="$CFLAGS" --cf_check_cppflags="$CPPFLAGS" -- --cf_fix_cppflags=no --cf_new_cflags= --cf_new_cppflags= --cf_new_extra_cppflags= -- --for cf_add_cflags in $X_CFLAGS -+cf_cv_getopt_header=none -+for cf_header in stdio.h stdlib.h unistd.h getopt.h - do --case $cf_fix_cppflags in --no) -- case $cf_add_cflags in #(vi -- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -- case $cf_add_cflags in -- -D*) -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=yes -- -- if test $cf_fix_cppflags = yes ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- elif test "${cf_tst_cflags}" = "\"'" ; then -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- continue -- fi -- ;; -- esac -- case "$CPPFLAGS" in -- *$cf_add_cflags) #(vi -- ;; -- *) #(vi -- case $cf_add_cflags in #(vi -- -D*) -- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -- --CPPFLAGS=`echo "$CPPFLAGS" | \ -- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -- -- ;; -- esac -- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -- ;; -- esac -- ;; -- *) -- cf_new_cflags="$cf_new_cflags $cf_add_cflags" -- ;; -- esac -- ;; --yes) -- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -- -- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -- -- test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -- && test -z "${cf_tst_cflags}" \ -- && cf_fix_cppflags=no -- ;; --esac --done -- --if test -n "$cf_new_cflags" ; then -- test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6 -- --echo "${as_me:-configure}:12121: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5 -+cat >conftest.$ac_ext <<_ACEOF -+#line 12623 "configure" -+#include "confdefs.h" - -- CFLAGS="$CFLAGS $cf_new_cflags" -+#include <$cf_header> -+int -+main () -+{ -+int x = optind; char *y = optarg -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:12636: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:12639: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:12642: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:12645: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_getopt_header=$cf_header -+ break -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 - fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+done - --if test -n "$cf_new_cppflags" ; then -- test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6 -- --echo "${as_me:-configure}:12129: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5 -- -- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" - fi -+echo "$as_me:12657: result: $cf_cv_getopt_header" >&5 -+echo "${ECHO_T}$cf_cv_getopt_header" >&6 -+if test $cf_cv_getopt_header != none ; then - --if test -n "$cf_new_extra_cppflags" ; then -- test -n "$verbose" && echo " add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6 -- --echo "${as_me:-configure}:12137: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5 -+cat >>confdefs.h <<\EOF -+#define HAVE_GETOPT_HEADER 1 -+EOF - -- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" - fi - --if test "$cf_check_cflags" != "$CFLAGS" ; then --cat >conftest.$ac_ext <<_ACEOF --#line 12144 "configure" -+for ac_func in \ -+gettimeofday \ -+ -+do -+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -+echo "$as_me:12672: checking for $ac_func" >&5 -+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_var+set}\" = set"; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12678 "configure" - #include "confdefs.h" --#include <stdio.h> -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char $ac_func (); below. */ -+#include <assert.h> -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char $ac_func (); -+char (*f) (); -+ - int - main () - { --printf("Hello world"); -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -+choke me -+#else -+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12156: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:12709: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12159: \$? = $ac_status" >&5 -+ echo "$as_me:12712: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12162: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:12715: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12165: \$? = $ac_status" >&5 -+ echo "$as_me:12718: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ eval "$as_ac_var=yes" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --test -n "$verbose" && echo " test-compile failed. Undoing change to \$CFLAGS" 1>&6 -- --echo "${as_me:-configure}:12173: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5 -- -- if test "$cf_check_cppflags" != "$CPPFLAGS" ; then -- test -n "$verbose" && echo " but keeping change to \$CPPFLAGS" 1>&6 -- --echo "${as_me:-configure}:12178: testing but keeping change to \$CPPFLAGS ..." 1>&5 -- -- fi -- CFLAGS="$cf_check_flags" -+eval "$as_ac_var=no" - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - fi -+echo "$as_me:12728: result: `eval echo '${'$as_ac_var'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -+if test `eval echo '${'$as_ac_var'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 -+EOF -+ -+fi -+done - --echo "$as_me:12186: checking for XOpenDisplay in -lX11" >&5 --echo $ECHO_N "checking for XOpenDisplay in -lX11... $ECHO_C" >&6 --if test "${ac_cv_lib_X11_XOpenDisplay+set}" = set; then -+if test "$cf_enable_widec" = yes; then -+ -+for ac_func in \ -+mblen \ -+mbrlen \ -+mbrtowc \ -+mbsrtowcs \ -+mbstowcs \ -+mbtowc \ -+wcsrtombs \ -+wcstombs \ -+ -+do -+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -+echo "$as_me:12752: checking for $ac_func" >&5 -+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -+if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 12194 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12758 "configure" - #include "confdefs.h" -- -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char $ac_func (); below. */ -+#include <assert.h> - /* Override any gcc2 internal prototype to avoid an error. */ - #ifdef __cplusplus - extern "C" - #endif - /* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ --char XOpenDisplay (); -+char $ac_func (); -+char (*f) (); -+ - int - main () - { --XOpenDisplay (); -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -+choke me -+#else -+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1; -+#endif -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12213: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:12789: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12216: \$? = $ac_status" >&5 -+ echo "$as_me:12792: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12219: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:12795: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12222: \$? = $ac_status" >&5 -+ echo "$as_me:12798: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_lib_X11_XOpenDisplay=yes -+ eval "$as_ac_var=yes" - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_lib_X11_XOpenDisplay=no -+eval "$as_ac_var=no" - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS - fi --echo "$as_me:12233: result: $ac_cv_lib_X11_XOpenDisplay" >&5 --echo "${ECHO_T}$ac_cv_lib_X11_XOpenDisplay" >&6 --if test $ac_cv_lib_X11_XOpenDisplay = yes; then -- LIBS="-lX11 $LIBS" -+echo "$as_me:12808: result: `eval echo '${'$as_ac_var'}'`" >&5 -+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -+if test `eval echo '${'$as_ac_var'}'` = yes; then -+ cat >>confdefs.h <<EOF -+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 -+EOF -+ - fi -+done - --echo "$as_me:12239: checking for XCurses library" >&5 --echo $ECHO_N "checking for XCurses library... $ECHO_C" >&6 --if test "${cf_cv_lib_XCurses+set}" = set; then -+fi -+ -+echo "$as_me:12820: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5 -+echo $ECHO_N "checking if we must define _XOPEN_SOURCE_EXTENDED... $ECHO_C" >&6 -+if test "${cf_cv_need_xopen_extension+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --LIBS="-lXCurses $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 12247 "configure" -+#line 12827 "configure" - #include "confdefs.h" - --#include <xcurses.h> --char *XCursesProgramName = "test"; -+#include <stdlib.h> -+#include <${cf_cv_ncurses_header:-curses.h}> -+int -+main () -+{ - -+#if defined(NCURSES_VERSION_PATCH) -+#if (NCURSES_VERSION_PATCH < 20100501) && (NCURSES_VERSION_PATCH >= 20100403) -+ make an error -+#endif -+#endif -+ long x = winnstr(stdscr, "", 0); -+ int x1, y1; -+ getbegyx(stdscr, y1, x1) -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:12849: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:12852: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:12855: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:12858: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_need_xopen_extension=no -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cat >conftest.$ac_ext <<_ACEOF -+#line 12865 "configure" -+#include "confdefs.h" -+ -+#define _XOPEN_SOURCE_EXTENDED -+#include <stdlib.h> -+#include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { --XCursesExit(); -+ -+#ifdef NCURSES_VERSION -+ cchar_t check; -+ int check2 = curs_set((int)sizeof(check)); -+#endif -+ long x = winnstr(stdscr, "", 0); -+ int x1, y1; -+ getbegyx(stdscr, y1, x1) - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12262: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:12887: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12265: \$? = $ac_status" >&5 -+ echo "$as_me:12890: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12268: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:12893: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12271: \$? = $ac_status" >&5 -+ echo "$as_me:12896: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_lib_XCurses=yes -+ cf_cv_need_xopen_extension=yes -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_need_xopen_extension=unknown -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+fi -+echo "$as_me:12908: result: $cf_cv_need_xopen_extension" >&5 -+echo "${ECHO_T}$cf_cv_need_xopen_extension" >&6 -+test $cf_cv_need_xopen_extension = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED" -+ -+echo "$as_me:12912: checking for term.h" >&5 -+echo $ECHO_N "checking for term.h... $ECHO_C" >&6 -+if test "${cf_cv_term_header+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+# If we found <ncurses/curses.h>, look for <ncurses/term.h>, but always look -+# for <term.h> if we do not find the variant. -+ -+cf_header_list="term.h ncurses/term.h ncursesw/term.h" -+ -+case ${cf_cv_ncurses_header:-curses.h} in #(vi -+*/*) -+ cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`term.h -+ cf_header_list="$cf_header_item $cf_header_list" -+ ;; -+esac -+ -+for cf_header in $cf_header_list -+do -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12933 "configure" -+#include "confdefs.h" -+ -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <${cf_header}> -+int -+main () -+{ -+WINDOW *x -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:12947: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:12950: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:12953: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:12956: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_term_header=$cf_header -+ break -+else -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_cv_term_header=no -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+done -+ -+case $cf_cv_term_header in #(vi -+no) -+ # If curses is ncurses, some packagers still mess it up by trying to make -+ # us use GNU termcap. This handles the most common case. -+ for cf_header in ncurses/term.h ncursesw/term.h -+ do -+ cat >conftest.$ac_ext <<_ACEOF -+#line 12975 "configure" -+#include "confdefs.h" -+ -+#include <${cf_cv_ncurses_header:-curses.h}> -+#ifdef NCURSES_VERSION -+#include <${cf_header}> -+#else -+make an error -+#endif -+int -+main () -+{ -+WINDOW *x -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:12993: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:12996: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:12999: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:13002: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_term_header=$cf_header -+ break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_lib_XCurses=no -+cf_cv_term_header=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+ done -+ ;; -+esac - - fi --echo "$as_me:12282: result: $cf_cv_lib_XCurses" >&5 --echo "${ECHO_T}$cf_cv_lib_XCurses" >&6 -+echo "$as_me:13017: result: $cf_cv_term_header" >&5 -+echo "${ECHO_T}$cf_cv_term_header" >&6 - --fi -+case $cf_cv_term_header in #(vi -+term.h) #(vi - --if test $cf_cv_lib_XCurses = yes ; then -- cat >>confdefs.h <<\EOF --#define UNIX 1 -+cat >>confdefs.h <<\EOF -+#define HAVE_TERM_H 1 - EOF - -- cat >>confdefs.h <<\EOF --#define XCURSES 1 --EOF -+ ;; -+ncurses/term.h) #(vi - -- echo "$as_me:12296: checking for xcurses.h" >&5 --echo $ECHO_N "checking for xcurses.h... $ECHO_C" >&6 --if test "${ac_cv_header_xcurses_h+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 12302 "configure" --#include "confdefs.h" --#include <xcurses.h> --_ACEOF --if { (eval echo "$as_me:12306: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -- ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:12312: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- ac_cv_header_xcurses_h=yes --else -- echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- ac_cv_header_xcurses_h=no --fi --rm -f conftest.err conftest.$ac_ext --fi --echo "$as_me:12331: result: $ac_cv_header_xcurses_h" >&5 --echo "${ECHO_T}$ac_cv_header_xcurses_h" >&6 --if test $ac_cv_header_xcurses_h = yes; then -- cat >>confdefs.h <<\EOF --#define HAVE_XCURSES 1 -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSES_TERM_H 1 - EOF - --fi -+ ;; -+ncursesw/term.h) - --else -- { { echo "$as_me:12341: error: Cannot link with XCurses" >&5 --echo "$as_me: error: Cannot link with XCurses" >&2;} -- { (exit 1); exit 1; }; } --fi -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSESW_TERM_H 1 -+EOF - - ;; - esac - --case $cf_cv_screen in #(vi --pdcurses) #(vi -- ;; --*) -- # look for curses-related libraries -- --as_ac_Lib=`echo "ac_cv_lib_panel$cf_cv_libtype''_new_panel" | $as_tr_sh` --echo "$as_me:12356: checking for new_panel in -lpanel$cf_cv_libtype" >&5 --echo $ECHO_N "checking for new_panel in -lpanel$cf_cv_libtype... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Lib+set}\" = set"; then -+echo "$as_me:13044: checking for unctrl.h" >&5 -+echo $ECHO_N "checking for unctrl.h... $ECHO_C" >&6 -+if test "${cf_cv_unctrl_header+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lpanel$cf_cv_libtype $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 12364 "configure" -+ -+# If we found <ncurses/curses.h>, look for <ncurses/unctrl.h>, but always look -+# for <unctrl.h> if we do not find the variant. -+ -+cf_header_list="unctrl.h ncurses/unctrl.h ncursesw/unctrl.h" -+ -+case ${cf_cv_ncurses_header:-curses.h} in #(vi -+*/*) -+ cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`unctrl.h -+ cf_header_list="$cf_header_item $cf_header_list" -+ ;; -+esac -+ -+for cf_header in $cf_header_list -+do -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13065 "configure" - #include "confdefs.h" - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char new_panel (); -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <${cf_header}> - int - main () - { --new_panel (); -+WINDOW *x - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12383: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:13079: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:12386: \$? = $ac_status" >&5 -+ echo "$as_me:13082: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12389: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:13085: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12392: \$? = $ac_status" >&5 -+ echo "$as_me:13088: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- eval "$as_ac_Lib=yes" -+ cf_cv_unctrl_header=$cf_header -+ break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --eval "$as_ac_Lib=no" -+cf_cv_unctrl_header=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS -+rm -f conftest.$ac_objext conftest.$ac_ext -+done -+ - fi --echo "$as_me:12403: result: `eval echo '${'$as_ac_Lib'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 --if test `eval echo '${'$as_ac_Lib'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_LIBpanel$cf_cv_libtype" | $as_tr_cpp` 1 -+echo "$as_me:13101: result: $cf_cv_unctrl_header" >&5 -+echo "${ECHO_T}$cf_cv_unctrl_header" >&6 -+ -+case $cf_cv_unctrl_header in #(vi -+no) -+ { echo "$as_me:13106: WARNING: unctrl.h header not found" >&5 -+echo "$as_me: WARNING: unctrl.h header not found" >&2;} -+ ;; -+esac -+ -+case $cf_cv_unctrl_header in #(vi -+unctrl.h) #(vi -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_UNCTRL_H 1 - EOF - -- LIBS="-lpanel$cf_cv_libtype $LIBS" -+ ;; -+ncurses/unctrl.h) #(vi - --fi -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSES_UNCTRL_H 1 -+EOF - --as_ac_Lib=`echo "ac_cv_lib_menu$cf_cv_libtype''_menu_driver" | $as_tr_sh` --echo "$as_me:12415: checking for menu_driver in -lmenu$cf_cv_libtype" >&5 --echo $ECHO_N "checking for menu_driver in -lmenu$cf_cv_libtype... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Lib+set}\" = set"; then -+ ;; -+ncursesw/unctrl.h) -+ -+cat >>confdefs.h <<\EOF -+#define HAVE_NCURSESW_UNCTRL_H 1 -+EOF -+ -+ ;; -+esac -+ -+for cf_func in \ -+assume_default_colors \ -+chgat \ -+color_set \ -+filter \ -+getbegx \ -+getcurx \ -+getmaxx \ -+getnstr \ -+getparx \ -+getwin \ -+mvvline \ -+mvwvline \ -+napms \ -+putwin \ -+resize_term \ -+resizeterm \ -+ripoffline \ -+scr_dump \ -+setupterm \ -+slk_color \ -+slk_init \ -+termattrs \ -+tgetent \ -+tigetnum \ -+tigetstr \ -+typeahead \ -+use_default_colors \ -+use_screen \ -+use_window \ -+vsscanf \ -+vw_printw \ -+wchgat \ -+winsstr \ -+wresize \ -+wsyncdown \ -+ -+do -+ -+cf_tr_func=`echo "$cf_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+ echo "$as_me:13176: checking for ${cf_func}" >&5 -+echo $ECHO_N "checking for ${cf_func}... $ECHO_C" >&6 -+ -+echo "${as_me:-configure}:13179: testing ${cf_func} ..." 1>&5 -+ -+ if eval "test \"\${cf_cv_func_$cf_func+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lmenu$cf_cv_libtype $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 12423 "configure" -+ -+ eval cf_result='$ac_cv_func_'$cf_func -+ if test ".$cf_result" != ".no"; then -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13188 "configure" - #include "confdefs.h" - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" -+#ifdef HAVE_XCURSES -+#include <xcurses.h> -+char * XCursesProgramName = "test"; -+#else -+#include <${cf_cv_ncurses_header:-curses.h}> -+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) -+#include <ncursesw/term.h> -+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) -+#include <ncurses/term.h> -+#elif defined(HAVE_TERM_H) -+#include <term.h> - #endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char menu_driver (); -+#endif -+ - int - main () - { --menu_driver (); -+ -+#ifndef ${cf_func} -+long foo = (long)(&${cf_func}); -+if (foo + 1234 > 5678) -+ ${cf_cv_main_return:-return}(foo); -+#endif -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12442: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13220: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12445: \$? = $ac_status" >&5 -+ echo "$as_me:13223: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12448: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13226: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12451: \$? = $ac_status" >&5 -+ echo "$as_me:13229: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- eval "$as_ac_Lib=yes" -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --eval "$as_ac_Lib=no" -+cf_result=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS -+ fi -+ eval 'cf_cv_func_'$cf_func'=$cf_result' -+ - fi --echo "$as_me:12462: result: `eval echo '${'$as_ac_Lib'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 --if test `eval echo '${'$as_ac_Lib'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_LIBmenu$cf_cv_libtype" | $as_tr_cpp` 1 -+ -+ # use the computed/retrieved cache-value: -+ eval 'cf_result=$cf_cv_func_'$cf_func -+ echo "$as_me:13245: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+ if test $cf_result != no; then -+ cat >>confdefs.h <<EOF -+#define HAVE_${cf_tr_func} 1 - EOF - -- LIBS="-lmenu$cf_cv_libtype $LIBS" -+ fi -+done - --fi -+for cf_func in tputs -+do - --as_ac_Lib=`echo "ac_cv_lib_form$cf_cv_libtype''_form_driver" | $as_tr_sh` --echo "$as_me:12474: checking for form_driver in -lform$cf_cv_libtype" >&5 --echo $ECHO_N "checking for form_driver in -lform$cf_cv_libtype... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Lib+set}\" = set"; then -+cf_tr_func=`echo "$cf_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+ echo "$as_me:13260: checking for ${cf_func}" >&5 -+echo $ECHO_N "checking for ${cf_func}... $ECHO_C" >&6 -+ -+echo "${as_me:-configure}:13263: testing ${cf_func} ..." 1>&5 -+ -+ if eval "test \"\${cf_cv_func_$cf_func+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lform$cf_cv_libtype $LIBS" --cat >conftest.$ac_ext <<_ACEOF --#line 12482 "configure" -+ -+ eval cf_result='$ac_cv_func_'$cf_func -+ if test ".$cf_result" != ".no"; then -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13272 "configure" - #include "confdefs.h" - --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" -+#ifdef HAVE_XCURSES -+#include <xcurses.h> -+char * XCursesProgramName = "test"; -+#else -+#include <${cf_cv_ncurses_header:-curses.h}> -+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) -+#include <ncursesw/term.h> -+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) -+#include <ncurses/term.h> -+#elif defined(HAVE_TERM_H) -+#include <term.h> - #endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char form_driver (); -+#endif -+ - int - main () - { --form_driver (); -+ -+#ifndef ${cf_func} -+long foo = (long)(&${cf_func}); -+if (foo + 1234 > 5678) -+ ${cf_cv_main_return:-return}(foo); -+#endif -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12501: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13304: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12504: \$? = $ac_status" >&5 -+ echo "$as_me:13307: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12507: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13310: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12510: \$? = $ac_status" >&5 -+ echo "$as_me:13313: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- eval "$as_ac_Lib=yes" -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --eval "$as_ac_Lib=no" -+cf_result=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS --fi --echo "$as_me:12521: result: `eval echo '${'$as_ac_Lib'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6 --if test `eval echo '${'$as_ac_Lib'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_LIBform$cf_cv_libtype" | $as_tr_cpp` 1 --EOF -- -- LIBS="-lform$cf_cv_libtype $LIBS" -+ fi -+ eval 'cf_cv_func_'$cf_func'=$cf_result' - - fi - -- # look for curses-related headers -- --for ac_header in \ -- nc_alloc.h \ -- nomacros.h \ -- form.h \ -- menu.h \ -- panel.h \ -- term_entry.h \ -- --do --as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:12544: checking for $ac_header" >&5 --echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Header+set}\" = set"; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 12550 "configure" --#include "confdefs.h" --#include <$ac_header> --_ACEOF --if { (eval echo "$as_me:12554: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -- ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:12560: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- eval "$as_ac_Header=yes" --else -- echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- eval "$as_ac_Header=no" --fi --rm -f conftest.err conftest.$ac_ext --fi --echo "$as_me:12579: result: `eval echo '${'$as_ac_Header'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 --if test `eval echo '${'$as_ac_Header'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -+ # use the computed/retrieved cache-value: -+ eval 'cf_result=$cf_cv_func_'$cf_func -+ echo "$as_me:13329: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+ if test $cf_result != no; then -+ cat >>confdefs.h <<EOF -+#define HAVE_${cf_tr_func} 1 - EOF - --fi -+ fi - done - -- ;; --esac -- --echo "$as_me:12592: checking return type of signal handlers" >&5 --echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6 --if test "${ac_cv_type_signal+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 12598 "configure" -+if test x$cf_cv_func_tputs = xyes -+then -+ cf_done=no -+ for cf_arg in int char -+ do -+ for cf_ret in int void -+ do -+ if test $cf_ret = void -+ then -+ cf_return="/* nothing */" -+ else -+ cf_return="return value" -+ fi -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13353 "configure" - #include "confdefs.h" --#include <sys/types.h> --#include <signal.h> --#ifdef signal --# undef signal --#endif --#ifdef __cplusplus --extern "C" void (*signal (int, void (*)(int)))(int); --#else --void (*signal ()) (); --#endif -+ -+#include <${cf_cv_ncurses_header:-curses.h}> -+#include <$cf_cv_term_header> -+ -+static $cf_ret outc($cf_arg value) { $cf_return; } - - int - main () - { --int i; -+ -+ tputs("hello", 0, outc); -+ ${cf_cv_main_return:-return}(0); -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:12620: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:13373: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:12623: \$? = $ac_status" >&5 -+ echo "$as_me:13376: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:12626: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13379: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12629: \$? = $ac_status" >&5 -+ echo "$as_me:13382: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_type_signal=void -+ -+ test -n "$verbose" && echo " prototype $cf_ret func($cf_arg value)" 1>&6 -+ -+echo "${as_me:-configure}:13387: testing prototype $cf_ret func($cf_arg value) ..." 1>&5 -+ -+ cat >>confdefs.h <<EOF -+#define TPUTS_ARG $cf_arg -+#define TPUTS_PROTO(func,value) $cf_ret func(TPUTS_ARG value) -+#define TPUTS_RETURN(value) $cf_return -+EOF -+ cf_done=yes -+ break -+ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_type_signal=int - fi - rm -f conftest.$ac_objext conftest.$ac_ext -+ done -+ test $cf_done = yes && break -+ done - fi --echo "$as_me:12639: result: $ac_cv_type_signal" >&5 --echo "${ECHO_T}$ac_cv_type_signal" >&6 -- --cat >>confdefs.h <<EOF --#define RETSIGTYPE $ac_cv_type_signal --EOF - --echo "$as_me:12646: checking for ANSI C header files" >&5 --echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 --if test "${ac_cv_header_stdc+set}" = set; then -+echo "$as_me:13407: checking for ncurses extended functions" >&5 -+echo $ECHO_N "checking for ncurses extended functions... $ECHO_C" >&6 -+if test "${cf_cv_ncurses_ext_funcs+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 12652 "configure" --#include "confdefs.h" --#include <stdlib.h> --#include <stdarg.h> --#include <string.h> --#include <float.h> -- --_ACEOF --if { (eval echo "$as_me:12660: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -- ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:12666: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- ac_cv_header_stdc=yes --else -- echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- ac_cv_header_stdc=no --fi --rm -f conftest.err conftest.$ac_ext - --if test $ac_cv_header_stdc = yes; then -- # SunOS 4.x string.h does not declare mem*, contrary to ANSI. -- cat >conftest.$ac_ext <<_ACEOF --#line 12688 "configure" -+cat >conftest.$ac_ext <<_ACEOF -+#line 13414 "configure" - #include "confdefs.h" --#include <string.h> -- --_ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- egrep "memchr" >/dev/null 2>&1; then -- : --else -- ac_cv_header_stdc=no --fi --rm -rf conftest* - --fi -+#include <${cf_cv_ncurses_header:-curses.h}> -+int -+main () -+{ - --if test $ac_cv_header_stdc = yes; then -- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. -- cat >conftest.$ac_ext <<_ACEOF --#line 12706 "configure" --#include "confdefs.h" --#include <stdlib.h> -+int x = NCURSES_EXT_FUNCS - -+ ; -+ return 0; -+} - _ACEOF --if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | -- egrep "free" >/dev/null 2>&1; then -- : -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:13429: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:13432: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:13435: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:13438: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_cv_ncurses_ext_funcs=defined - else -- ac_cv_header_stdc=no --fi --rm -rf conftest* -- --fi -+ echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 - --if test $ac_cv_header_stdc = yes; then -- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. -- if test "$cross_compiling" = yes; then -- : --else -- cat >conftest.$ac_ext <<_ACEOF --#line 12727 "configure" -+cat >conftest.$ac_ext <<_ACEOF -+#line 13446 "configure" - #include "confdefs.h" --#include <ctype.h> --#if ((' ' & 0x0FF) == 0x020) --# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') --# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) --#else --# define ISLOWER(c) (('a' <= (c) && (c) <= 'i') \ -- || ('j' <= (c) && (c) <= 'r') \ -- || ('s' <= (c) && (c) <= 'z')) --# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) --#endif - --#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -+#include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { -- int i; -- for (i = 0; i < 256; i++) -- if (XOR (islower (i), ISLOWER (i)) -- || toupper (i) != TOUPPER (i)) -- $ac_main_return(2); -- $ac_main_return (0); -+ -+ (void) assume_default_colors (0, 0); -+ (void) curses_version (); -+ (void) define_key (0, 0); -+ (void) is_term_resized (0, 0); -+ (void) key_defined (0); -+ (void) keybound (0, 0); -+ (void) keyok (0, 0); -+ (void) resize_term (0, 0); -+ (void) resizeterm (0, 0); -+ (void) use_default_colors (); -+ (void) use_extended_names (0); -+ (void) wresize (0, 0, 0); -+ ; -+ return 0; - } - _ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:12753: \"$ac_link\"") >&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:13471: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:12756: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:12758: \"$ac_try\"") >&5 -+ echo "$as_me:13474: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:13477: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12761: \$? = $ac_status" >&5 -+ echo "$as_me:13480: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- : -+ cf_cv_ncurses_ext_funcs=yes - else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 -+ echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_header_stdc=no --fi --rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext --fi -+cf_cv_ncurses_ext_funcs=no - fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ - fi --echo "$as_me:12774: result: $ac_cv_header_stdc" >&5 --echo "${ECHO_T}$ac_cv_header_stdc" >&6 --if test $ac_cv_header_stdc = yes; then -+rm -f conftest.$ac_objext conftest.$ac_ext - -+fi -+echo "$as_me:13494: result: $cf_cv_ncurses_ext_funcs" >&5 -+echo "${ECHO_T}$cf_cv_ncurses_ext_funcs" >&6 -+test "$cf_cv_ncurses_ext_funcs" = yes && - cat >>confdefs.h <<\EOF --#define STDC_HEADERS 1 -+#define NCURSES_EXT_FUNCS 1 - EOF - --fi -+if test "$cf_enable_widec" = yes -+then -+ # workaround for systems with ncurses before 20111029, due to change of -+ # feature test macro from _XPG5 to _XOPEN_SOURCE -+ if test -n "$cf_cv_ncurses_version" && test "x$cf_cv_ncurses_version" != xno -+ then -+ cf_define_xpg5=no -+ echo "$as_me:13508: checking if _XPG5 should be defined to enable wide-characters" >&5 -+echo $ECHO_N "checking if _XPG5 should be defined to enable wide-characters... $ECHO_C" >&6 - --echo "$as_me:12784: checking whether time.h and sys/time.h may both be included" >&5 --echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6 --if test "${ac_cv_header_time+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 12790 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13512 "configure" - #include "confdefs.h" --#include <sys/types.h> --#include <sys/time.h> --#include <time.h> - -+#include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { --if ((struct tm *) 0) --return 0; -+int x = _XPG5 - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:12806: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:13525: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:12809: \$? = $ac_status" >&5 -+ echo "$as_me:13528: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:12812: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13531: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12815: \$? = $ac_status" >&5 -+ echo "$as_me:13534: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_header_time=yes -+ : - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_header_time=no --fi --rm -f conftest.$ac_objext conftest.$ac_ext --fi --echo "$as_me:12825: result: $ac_cv_header_time" >&5 --echo "${ECHO_T}$ac_cv_header_time" >&6 --if test $ac_cv_header_time = yes; then -- --cat >>confdefs.h <<\EOF --#define TIME_WITH_SYS_TIME 1 --EOF -- --fi -- --for ac_header in \ --getopt.h \ --locale.h \ --math.h \ --stdarg.h \ --sys/ioctl.h \ --sys/select.h \ --sys/time.h \ --termios.h \ --unistd.h \ -- --do --as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:12848: checking for $ac_header" >&5 --echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Header+set}\" = set"; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 12854 "configure" --#include "confdefs.h" --#include <$ac_header> --_ACEOF --if { (eval echo "$as_me:12858: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -- ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:12864: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- eval "$as_ac_Header=yes" --else -- echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- eval "$as_ac_Header=no" --fi --rm -f conftest.err conftest.$ac_ext --fi --echo "$as_me:12883: result: `eval echo '${'$as_ac_Header'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 --if test `eval echo '${'$as_ac_Header'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 --EOF -- --fi --done -- --for ac_func in \ --gettimeofday \ --mblen \ --mbrlen \ --mbrtowc \ --mbsrtowcs \ --mbstowcs \ --mbtowc \ --strdup \ --wcsrtombs \ --wcstombs \ -- --do --as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` --echo "$as_me:12907: checking for $ac_func" >&5 --echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 --if eval "test \"\${$as_ac_var+set}\" = set"; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 12913 "configure" -+cf_save_cppflags="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XPG5" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13543 "configure" - #include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char $ac_func (); below. */ --#include <assert.h> --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char $ac_func (); --char (*f) (); - -+#include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_$ac_func) || defined (__stub___$ac_func) --choke me --#else --f = $ac_func; --#endif -- -+int x = _XPG5 - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:12944: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:13556: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:12947: \$? = $ac_status" >&5 -+ echo "$as_me:13559: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:12950: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:13562: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:12953: \$? = $ac_status" >&5 -+ echo "$as_me:13565: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- eval "$as_ac_var=yes" -+ cf_define_xpg5=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --eval "$as_ac_var=no" - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CPPFLAGS="$cf_save_cppflags" - fi --echo "$as_me:12963: result: `eval echo '${'$as_ac_var'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 --if test `eval echo '${'$as_ac_var'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 --EOF -+rm -f conftest.$ac_objext conftest.$ac_ext -+ echo "$as_me:13576: result: $cf_define_xpg5" >&5 -+echo "${ECHO_T}$cf_define_xpg5" >&6 - --fi --done -+ if test "$cf_define_xpg5" = yes -+ then -+ CPPFLAGS="$CPPFLAGS -D_XPG5" -+ fi -+ fi - --echo "$as_me:12973: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5 --echo $ECHO_N "checking if we must define _XOPEN_SOURCE_EXTENDED... $ECHO_C" >&6 --if test "${cf_cv_need_xopen_extension+set}" = set; then -+ echo "$as_me:13585: checking for wide-character functions" >&5 -+echo $ECHO_N "checking for wide-character functions... $ECHO_C" >&6 -+if test "${cf_cv_widechar_funcs+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --cat >conftest.$ac_ext <<_ACEOF --#line 12980 "configure" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13592 "configure" - #include "confdefs.h" - --#include <stdlib.h> - #include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { - --#if defined(NCURSES_VERSION_PATCH) --#if (NCURSES_VERSION_PATCH < 20100501) && (NCURSES_VERSION_PATCH >= 20100403) -- make an error --#endif --#endif -- long x = winnstr(stdscr, "", 0); -- int x1, y1; -- getbegyx(stdscr, y1, x1) -+ static wchar_t src_wchar[2]; -+ static cchar_t dst_cchar; -+ setcchar(&dst_cchar, src_wchar, A_NORMAL, 0, (void *) 0); -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13002: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13609: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13005: \$? = $ac_status" >&5 -+ echo "$as_me:13612: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13008: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13615: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13011: \$? = $ac_status" >&5 -+ echo "$as_me:13618: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_need_xopen_extension=no -+ cf_cv_widechar_funcs=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_cv_widechar_funcs=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ -+fi -+echo "$as_me:13629: result: $cf_cv_widechar_funcs" >&5 -+echo "${ECHO_T}$cf_cv_widechar_funcs" >&6 -+ if test "$cf_cv_widechar_funcs" != no ; then -+ -+cat >>confdefs.h <<\EOF -+#define USE_WIDEC_SUPPORT 1 -+EOF -+ -+ else -+ cat >>confdefs.h <<\EOF -+#define USE_WIDEC_SUPPORT 0 -+EOF -+ -+ fi -+else -+ cat >>confdefs.h <<\EOF -+#define USE_WIDEC_SUPPORT 0 -+EOF -+ -+fi -+ -+echo "$as_me:13650: checking if sys/time.h works with sys/select.h" >&5 -+echo $ECHO_N "checking if sys/time.h works with sys/select.h... $ECHO_C" >&6 -+if test "${cf_cv_sys_time_select+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ - cat >conftest.$ac_ext <<_ACEOF --#line 13018 "configure" -+#line 13657 "configure" - #include "confdefs.h" - --#define _XOPEN_SOURCE_EXTENDED --#include <stdlib.h> --#include <${cf_cv_ncurses_header:-curses.h}> -+#include <sys/types.h> -+#ifdef HAVE_SYS_TIME_H -+#include <sys/time.h> -+#endif -+#ifdef HAVE_SYS_SELECT_H -+#include <sys/select.h> -+#endif -+ - int - main () - { - --#ifdef NCURSES_VERSION -- cchar_t check; -- int check2 = curs_set((int)sizeof(check)); --#endif -- long x = winnstr(stdscr, "", 0); -- int x1, y1; -- getbegyx(stdscr, y1, x1) - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13040: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:13677: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13043: \$? = $ac_status" >&5 -+ echo "$as_me:13680: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13046: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:13683: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13049: \$? = $ac_status" >&5 -+ echo "$as_me:13686: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_need_xopen_extension=yes -+ cf_cv_sys_time_select=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_need_xopen_extension=unknown --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+cf_cv_sys_time_select=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+ - fi --echo "$as_me:13061: result: $cf_cv_need_xopen_extension" >&5 --echo "${ECHO_T}$cf_cv_need_xopen_extension" >&6 --test $cf_cv_need_xopen_extension = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED" - --echo "$as_me:13065: checking for term.h" >&5 --echo $ECHO_N "checking for term.h... $ECHO_C" >&6 --if test "${cf_cv_term_header+set}" = set; then -+echo "$as_me:13698: result: $cf_cv_sys_time_select" >&5 -+echo "${ECHO_T}$cf_cv_sys_time_select" >&6 -+test "$cf_cv_sys_time_select" = yes && -+cat >>confdefs.h <<\EOF -+#define HAVE_SYS_TIME_SELECT 1 -+EOF -+ -+echo "$as_me:13705: checking for function curses_version" >&5 -+echo $ECHO_N "checking for function curses_version... $ECHO_C" >&6 -+if test "${cf_cv_func_curses_version+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --# If we found <ncurses/curses.h>, look for <ncurses/term.h>, but always look --# for <term.h> if we do not find the variant. --for cf_header in \ -- `echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%/.*%/%'`term.h \ -- term.h --do -- cat >conftest.$ac_ext <<_ACEOF --#line 13078 "configure" -+if test "$cross_compiling" = yes; then -+ cf_cv_func_curses_version=unknown -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13715 "configure" - #include "confdefs.h" - - #include <${cf_cv_ncurses_header:-curses.h}> --#include <${cf_header}> --int --main () -+int main() - { --WINDOW *x -- ; -- return 0; -+ char temp[1024]; -+ sprintf(temp, "%s\n", curses_version()); -+ ${cf_cv_main_return:-return}(0); - } -+ - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:13092: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:13728: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13095: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13098: \"$ac_try\"") >&5 -+ echo "$as_me:13731: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:13733: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13101: \$? = $ac_status" >&5 -+ echo "$as_me:13736: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_term_header=$cf_header -- break -+ cf_cv_func_curses_version=yes -+ - else -- echo "$as_me: failed program was:" >&5 -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_term_header=no -+cf_cv_func_curses_version=no -+ - fi --rm -f conftest.$ac_objext conftest.$ac_ext --done -+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+fi -+rm -f core -+fi -+echo "$as_me:13751: result: $cf_cv_func_curses_version" >&5 -+echo "${ECHO_T}$cf_cv_func_curses_version" >&6 -+test "$cf_cv_func_curses_version" = yes && -+cat >>confdefs.h <<\EOF -+#define HAVE_CURSES_VERSION 1 -+EOF - --case $cf_cv_term_header in #(vi --no) -- # If curses is ncurses, some packagers still mess it up by trying to make -- # us use GNU termcap. This handles the most common case. -- for cf_header in ncurses/term.h ncursesw/term.h -- do -- cat >conftest.$ac_ext <<_ACEOF --#line 13120 "configure" -+echo "$as_me:13758: checking for alternate character set array" >&5 -+echo $ECHO_N "checking for alternate character set array... $ECHO_C" >&6 -+if test "${cf_cv_curses_acs_map+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+cf_cv_curses_acs_map=unknown -+for name in acs_map _acs_map __acs_map ${NCURSES_WRAP_PREFIX}acs_map -+do -+cat >conftest.$ac_ext <<_ACEOF -+#line 13768 "configure" - #include "confdefs.h" - - #include <${cf_cv_ncurses_header:-curses.h}> --#ifdef NCURSES_VERSION --#include <${cf_header}> --#else --make an error --#endif -+ - int - main () - { --WINDOW *x -+ -+$name['k'] = ACS_PLUS -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:13138: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:13784: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13141: \$? = $ac_status" >&5 -+ echo "$as_me:13787: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13144: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:13790: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13147: \$? = $ac_status" >&5 -+ echo "$as_me:13793: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_term_header=$cf_header -- break -+ cf_cv_curses_acs_map=$name; break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_term_header=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -- done -- ;; --esac -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+done - - fi --echo "$as_me:13162: result: $cf_cv_term_header" >&5 --echo "${ECHO_T}$cf_cv_term_header" >&6 -- --case $cf_cv_term_header in #(vi --term.h) #(vi -- cat >>confdefs.h <<\EOF --#define HAVE_TERM_H 1 --EOF -- -- ;; --ncurses/term.h) #(vi -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSES_TERM_H 1 --EOF -+echo "$as_me:13804: result: $cf_cv_curses_acs_map" >&5 -+echo "${ECHO_T}$cf_cv_curses_acs_map" >&6 - -- ;; --ncursesw/term.h) -- cat >>confdefs.h <<\EOF --#define HAVE_NCURSESW_TERM_H 1 -+test "$cf_cv_curses_acs_map" != unknown && -+cat >>confdefs.h <<EOF -+#define CURSES_ACS_ARRAY $cf_cv_curses_acs_map - EOF - -- ;; --esac -- --for cf_func in \ --chgat \ --color_set \ --filter \ --getbegx \ --getcurx \ --getmaxx \ --getnstr \ --getparx \ --getwin \ --mvvline \ --mvwvline \ --napms \ --putwin \ --resize_term \ --resizeterm \ --ripoffline \ --scr_dump \ --setupterm \ --slk_color \ --slk_init \ --termattrs \ --tgetent \ --tigetnum \ --tigetstr \ --typeahead \ --use_default_colors \ --vw_printw \ --vsscanf \ --wchgat \ --winsstr \ --wresize \ --wsyncdown \ -- --do -- --cf_tr_func=`echo "$cf_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -- -- echo "$as_me:13224: checking for ${cf_func}" >&5 --echo $ECHO_N "checking for ${cf_func}... $ECHO_C" >&6 -- --echo "${as_me:-configure}:13227: testing ${cf_func} ..." 1>&5 -+if test "$cf_enable_widec" = yes; then - -- if eval "test \"\${cf_cv_func_$cf_func+set}\" = set"; then -+echo "$as_me:13814: checking for wide alternate character set array" >&5 -+echo $ECHO_N "checking for wide alternate character set array... $ECHO_C" >&6 -+if test "${cf_cv_curses_wacs_map+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - -- eval cf_result='$ac_cv_func_'$cf_func -- if test ".$cf_result" != ".no"; then -- cat >conftest.$ac_ext <<_ACEOF --#line 13236 "configure" -+ cf_cv_curses_wacs_map=unknown -+ for name in wacs_map _wacs_map __wacs_map _nc_wacs _wacs_char -+ do -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13824 "configure" - #include "confdefs.h" - --#ifdef HAVE_XCURSES --#include <xcurses.h> --char * XCursesProgramName = "test"; --#else --#include <${cf_cv_ncurses_header:-curses.h}> --#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) --#include <ncursesw/term.h> --#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) --#include <ncurses/term.h> --#elif defined(HAVE_TERM_H) --#include <term.h> --#endif -+#ifndef _XOPEN_SOURCE_EXTENDED -+#define _XOPEN_SOURCE_EXTENDED - #endif -- -+#include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { -- --#ifndef ${cf_func} --long foo = (long)(&${cf_func}); --${cf_cv_main_return:-return}(foo == 0); --#endif -- -+void *foo = &($name['k']) - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13267: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13840: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13270: \$? = $ac_status" >&5 -+ echo "$as_me:13843: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13273: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13846: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13276: \$? = $ac_status" >&5 -+ echo "$as_me:13849: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_result=yes -+ cf_cv_curses_wacs_map=$name -+ break - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_result=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- fi -- eval 'cf_cv_func_'$cf_func'=$cf_result' -- -+ done - fi -+echo "$as_me:13860: result: $cf_cv_curses_wacs_map" >&5 -+echo "${ECHO_T}$cf_cv_curses_wacs_map" >&6 - -- # use the computed/retrieved cache-value: -- eval 'cf_result=$cf_cv_func_'$cf_func -- echo "$as_me:13292: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 -- if test $cf_result != no; then -- cat >>confdefs.h <<EOF --#define HAVE_${cf_tr_func} 1 -+test "$cf_cv_curses_wacs_map" != unknown && -+cat >>confdefs.h <<EOF -+#define CURSES_WACS_ARRAY $cf_cv_curses_wacs_map - EOF - -- fi --done -- --echo "$as_me:13302: checking for ncurses extended functions" >&5 --echo $ECHO_N "checking for ncurses extended functions... $ECHO_C" >&6 --if test "${cf_cv_ncurses_ext_funcs+set}" = set; then -+echo "$as_me:13868: checking for wide alternate character constants" >&5 -+echo $ECHO_N "checking for wide alternate character constants... $ECHO_C" >&6 -+if test "${cf_cv_curses_wacs_symbols+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --cat >conftest.$ac_ext <<_ACEOF --#line 13309 "configure" -+cf_cv_curses_wacs_symbols=no -+if test "$cf_cv_curses_wacs_map" != unknown -+then -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13878 "configure" - #include "confdefs.h" - -+#ifndef _XOPEN_SOURCE_EXTENDED -+#define _XOPEN_SOURCE_EXTENDED -+#endif - #include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { -- --int x = NCURSES_EXT_FUNCS -- -+cchar_t *foo = WACS_PLUS; -+ $cf_cv_curses_wacs_map['k'] = *WACS_PLUS - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:13324: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:13895: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13327: \$? = $ac_status" >&5 -+ echo "$as_me:13898: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13330: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:13901: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13333: \$? = $ac_status" >&5 -+ echo "$as_me:13904: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ncurses_ext_funcs=defined -+ cf_cv_curses_wacs_symbols=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -- --cat >conftest.$ac_ext <<_ACEOF --#line 13341 "configure" -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 13914 "configure" - #include "confdefs.h" - -+#ifndef _XOPEN_SOURCE_EXTENDED -+#define _XOPEN_SOURCE_EXTENDED -+#endif - #include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { -- -- (void) assume_default_colors (0, 0); -- (void) curses_version (); -- (void) define_key (0, 0); -- (void) is_term_resized (0, 0); -- (void) key_defined (0); -- (void) keybound (0, 0); -- (void) keyok (0, 0); -- (void) resize_term (0, 0); -- (void) resizeterm (0, 0); -- (void) use_default_colors (); -- (void) use_extended_names (0); -- (void) wresize (0, 0, 0); -+cchar_t *foo = WACS_PLUS - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13366: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:13930: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:13369: \$? = $ac_status" >&5 -+ echo "$as_me:13933: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13372: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:13936: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13375: \$? = $ac_status" >&5 -+ echo "$as_me:13939: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_ncurses_ext_funcs=yes -+ cf_cv_curses_wacs_symbols=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_ncurses_ext_funcs=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- - fi --rm -f conftest.$ac_objext conftest.$ac_ext - - fi --echo "$as_me:13389: result: $cf_cv_ncurses_ext_funcs" >&5 --echo "${ECHO_T}$cf_cv_ncurses_ext_funcs" >&6 --test "$cf_cv_ncurses_ext_funcs" = yes && cat >>confdefs.h <<\EOF --#define NCURSES_EXT_FUNCS 1 -+echo "$as_me:13950: result: $cf_cv_curses_wacs_symbols" >&5 -+echo "${ECHO_T}$cf_cv_curses_wacs_symbols" >&6 -+ -+test "$cf_cv_curses_wacs_symbols" != no && -+cat >>confdefs.h <<\EOF -+#define CURSES_WACS_SYMBOLS 1 - EOF - --echo "$as_me:13395: checking for wide-character functions" >&5 --echo $ECHO_N "checking for wide-character functions... $ECHO_C" >&6 --if test "${cf_cv_widechar_funcs+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+fi - -+echo "$as_me:13960: checking for type attr_t in ${cf_cv_ncurses_header:-curses.h}" >&5 -+echo $ECHO_N "checking for type attr_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 - cat >conftest.$ac_ext <<_ACEOF --#line 13402 "configure" -+#line 13963 "configure" - #include "confdefs.h" - -+#ifndef _XOPEN_SOURCE_EXTENDED -+#define _XOPEN_SOURCE_EXTENDED -+#endif - #include <${cf_cv_ncurses_header:-curses.h}> - int - main () - { - -- static wchar_t src_wchar[2]; -- static cchar_t dst_cchar; -- setcchar(&dst_cchar, src_wchar, A_NORMAL, 0, (void *) 0); -+attr_t foo - - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13419: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:13981: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13422: \$? = $ac_status" >&5 -+ echo "$as_me:13984: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13425: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:13987: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13428: \$? = $ac_status" >&5 -+ echo "$as_me:13990: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_widechar_funcs=yes -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_widechar_funcs=no -+cf_result=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+echo "$as_me:13999: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+if test $cf_result = yes ; then - --fi --echo "$as_me:13439: result: $cf_cv_widechar_funcs" >&5 --echo "${ECHO_T}$cf_cv_widechar_funcs" >&6 --if test "$cf_cv_widechar_funcs" != no ; then -- cat >>confdefs.h <<\EOF --#define USE_WIDEC_SUPPORT 1 -+cf_result=`echo "have_type_attr_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+cat >>confdefs.h <<EOF -+#define $cf_result 1 - EOF - - else -- cat >>confdefs.h <<\EOF --#define USE_WIDEC_SUPPORT 0 -+ -+cat >>confdefs.h <<EOF -+#define attr_t long - EOF - - fi - --# On IRIX 5.3, sys/types and inttypes.h are conflicting. -+if test "$cf_enable_widec" = yes; then - --for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ -- inttypes.h stdint.h unistd.h --do --as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:13459: checking for $ac_header" >&5 --echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Header+set}\" = set"; then -+# This is needed on Tru64 5.0 to declare mbstate_t -+echo "$as_me:14020: checking if we must include wchar.h to declare mbstate_t" >&5 -+echo $ECHO_N "checking if we must include wchar.h to declare mbstate_t... $ECHO_C" >&6 -+if test "${cf_cv_mbstate_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 13465 "configure" -+ -+cat >conftest.$ac_ext <<_ACEOF -+#line 14027 "configure" - #include "confdefs.h" --$ac_includes_default --#include <$ac_header> -+ -+#include <stdlib.h> -+#include <stdarg.h> -+#include <stdio.h> -+#ifdef HAVE_LIBUTF8_H -+#include <libutf8.h> -+#endif -+int -+main () -+{ -+mbstate_t state -+ ; -+ return 0; -+} - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:13471: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:14045: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13474: \$? = $ac_status" >&5 -+ echo "$as_me:14048: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13477: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14051: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13480: \$? = $ac_status" >&5 -+ echo "$as_me:14054: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- eval "$as_ac_Header=yes" -+ cf_cv_mbstate_t=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --eval "$as_ac_Header=no" --fi --rm -f conftest.$ac_objext conftest.$ac_ext --fi --echo "$as_me:13490: result: `eval echo '${'$as_ac_Header'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 --if test `eval echo '${'$as_ac_Header'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 --EOF -- --fi --done -- --echo "$as_me:13500: checking for pid_t" >&5 --echo $ECHO_N "checking for pid_t... $ECHO_C" >&6 --if test "${ac_cv_type_pid_t+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 13506 "configure" -+cat >conftest.$ac_ext <<_ACEOF -+#line 14061 "configure" - #include "confdefs.h" --$ac_includes_default -+ -+#include <stdlib.h> -+#include <stdarg.h> -+#include <stdio.h> -+#include <wchar.h> -+#ifdef HAVE_LIBUTF8_H -+#include <libutf8.h> -+#endif - int - main () - { --if ((pid_t *) 0) -- return 0; --if (sizeof (pid_t)) -- return 0; -+mbstate_t value - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:13521: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:14080: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13524: \$? = $ac_status" >&5 -+ echo "$as_me:14083: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13527: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14086: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13530: \$? = $ac_status" >&5 -+ echo "$as_me:14089: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_type_pid_t=yes -+ cf_cv_mbstate_t=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_type_pid_t=no -+cf_cv_mbstate_t=unknown - fi - rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:13540: result: $ac_cv_type_pid_t" >&5 --echo "${ECHO_T}$ac_cv_type_pid_t" >&6 --if test $ac_cv_type_pid_t = yes; then -- : --else -+rm -f conftest.$ac_objext conftest.$ac_ext -+fi -+echo "$as_me:14101: result: $cf_cv_mbstate_t" >&5 -+echo "${ECHO_T}$cf_cv_mbstate_t" >&6 - --cat >>confdefs.h <<EOF --#define pid_t int -+if test "$cf_cv_mbstate_t" = yes ; then -+ -+cat >>confdefs.h <<\EOF -+#define NEED_WCHAR_H 1 - EOF - -+ NEED_WCHAR_H=1 - fi - --for ac_header in unistd.h vfork.h --do --as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` --echo "$as_me:13555: checking for $ac_header" >&5 --echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 --if eval "test \"\${$as_ac_Header+set}\" = set"; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- cat >conftest.$ac_ext <<_ACEOF --#line 13561 "configure" --#include "confdefs.h" --#include <$ac_header> --_ACEOF --if { (eval echo "$as_me:13565: \"$ac_cpp conftest.$ac_ext\"") >&5 -- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -- ac_status=$? -- egrep -v '^ *\+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- echo "$as_me:13571: \$? = $ac_status" >&5 -- (exit $ac_status); } >/dev/null; then -- if test -s conftest.err; then -- ac_cpp_err=$ac_c_preproc_warn_flag -- else -- ac_cpp_err= -- fi --else -- ac_cpp_err=yes --fi --if test -z "$ac_cpp_err"; then -- eval "$as_ac_Header=yes" --else -- echo "$as_me: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- eval "$as_ac_Header=no" --fi --rm -f conftest.err conftest.$ac_ext -+# if we do not find mbstate_t in either place, use substitution to provide a fallback. -+if test "$cf_cv_mbstate_t" = unknown ; then -+ NCURSES_MBSTATE_T=1 - fi --echo "$as_me:13590: result: `eval echo '${'$as_ac_Header'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 --if test `eval echo '${'$as_ac_Header'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 --EOF - -+# if we find mbstate_t in either place, use substitution to provide a fallback. -+if test "$cf_cv_mbstate_t" != unknown ; then -+ NCURSES_OK_MBSTATE_T=1 - fi --done - --for ac_func in fork vfork --do --as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` --echo "$as_me:13603: checking for $ac_func" >&5 --echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 --if eval "test \"\${$as_ac_var+set}\" = set"; then -+# This is needed on Tru64 5.0 to declare wchar_t -+echo "$as_me:14124: checking if we must include wchar.h to declare wchar_t" >&5 -+echo $ECHO_N "checking if we must include wchar.h to declare wchar_t... $ECHO_C" >&6 -+if test "${cf_cv_wchar_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- cat >conftest.$ac_ext <<_ACEOF --#line 13609 "configure" -+ -+cat >conftest.$ac_ext <<_ACEOF -+#line 14131 "configure" - #include "confdefs.h" --/* System header to define __stub macros and hopefully few prototypes, -- which can conflict with char $ac_func (); below. */ --#include <assert.h> --/* Override any gcc2 internal prototype to avoid an error. */ --#ifdef __cplusplus --extern "C" --#endif --/* We use char because int might match the return type of a gcc2 -- builtin and then its argument prototype would still apply. */ --char $ac_func (); --char (*f) (); - -+#include <stdlib.h> -+#include <stdarg.h> -+#include <stdio.h> -+#ifdef HAVE_LIBUTF8_H -+#include <libutf8.h> -+#endif - int - main () - { --/* The GNU C library defines this for functions which it implements -- to always fail with ENOSYS. Some functions are actually named -- something starting with __ and the normal name is an alias. */ --#if defined (__stub_$ac_func) || defined (__stub___$ac_func) --choke me --#else --f = $ac_func; --#endif -- -+wchar_t state - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:13640: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:14149: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13643: \$? = $ac_status" >&5 -+ echo "$as_me:14152: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:13646: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:14155: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13649: \$? = $ac_status" >&5 -+ echo "$as_me:14158: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- eval "$as_ac_var=yes" -+ cf_cv_wchar_t=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --eval "$as_ac_var=no" --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --fi --echo "$as_me:13659: result: `eval echo '${'$as_ac_var'}'`" >&5 --echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 --if test `eval echo '${'$as_ac_var'}'` = yes; then -- cat >>confdefs.h <<EOF --#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 --EOF -- --fi --done -- --ac_cv_func_fork_works=$ac_cv_func_fork --if test "x$ac_cv_func_fork" = xyes; then -- echo "$as_me:13671: checking for working fork" >&5 --echo $ECHO_N "checking for working fork... $ECHO_C" >&6 --if test "${ac_cv_func_fork_works+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test "$cross_compiling" = yes; then -- ac_cv_func_fork_works=cross --else -- cat >conftest.$ac_ext <<_ACEOF --/* By Rüdiger Kuhlmann. */ -- #include <sys/types.h> -- #if HAVE_UNISTD_H -- # include <unistd.h> -- #endif -- /* Some systems only have a dummy stub for fork() */ -- int main () -- { -- if (fork() < 0) -- $ac_main_return (1); -- $ac_main_return (0); -- } --_ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:13694: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:13697: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:13699: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:13702: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- ac_cv_func_fork_works=yes --else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --ac_cv_func_fork_works=no --fi --rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext --fi --fi --echo "$as_me:13714: result: $ac_cv_func_fork_works" >&5 --echo "${ECHO_T}$ac_cv_func_fork_works" >&6 -- --fi --if test "x$ac_cv_func_fork_works" = xcross; then -- case $host in -- *-*-amigaos* | *-*-msdosdjgpp*) -- # Override, as these systems have only a dummy fork() stub -- ac_cv_func_fork_works=no -- ;; -- *) -- ac_cv_func_fork_works=yes -- ;; -- esac -- { echo "$as_me:13728: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&5 --echo "$as_me: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&2;} --fi --ac_cv_func_vfork_works=$ac_cv_func_vfork --if test "x$ac_cv_func_vfork" = xyes; then -- echo "$as_me:13733: checking for working vfork" >&5 --echo $ECHO_N "checking for working vfork... $ECHO_C" >&6 --if test "${ac_cv_func_vfork_works+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- if test "$cross_compiling" = yes; then -- ac_cv_func_vfork_works=cross --else -- cat >conftest.$ac_ext <<_ACEOF --#line 13742 "configure" -+cat >conftest.$ac_ext <<_ACEOF -+#line 14165 "configure" - #include "confdefs.h" --/* Thanks to Paul Eggert for this test. */ -+ -+#include <stdlib.h> -+#include <stdarg.h> - #include <stdio.h> --#include <sys/types.h> --#include <sys/stat.h> --#if HAVE_UNISTD_H --# include <unistd.h> --#endif --#if HAVE_VFORK_H --# include <vfork.h> --#endif --/* On some sparc systems, changes by the child to local and incoming -- argument registers are propagated back to the parent. The compiler -- is told about this with #include <vfork.h>, but some compilers -- (e.g. gcc -O) don't grok <vfork.h>. Test for this by using a -- static variable whose address is put into a register that is -- clobbered by the vfork. */ --static --#ifdef __cplusplus --sparc_address_test (int arg) --# else --sparc_address_test (arg) int arg; -+#include <wchar.h> -+#ifdef HAVE_LIBUTF8_H -+#include <libutf8.h> - #endif --{ -- static pid_t child; -- if (!child) { -- child = vfork (); -- if (child < 0) { -- perror ("vfork"); -- _exit(2); -- } -- if (!child) { -- arg = getpid(); -- write(-1, "", 0); -- _exit (arg); -- } -- } --} -- - int - main () - { -- pid_t parent = getpid (); -- pid_t child; -- -- sparc_address_test (); -- -- child = vfork (); -- -- if (child == 0) { -- /* Here is another test for sparc vfork register problems. This -- test uses lots of local variables, at least as many local -- variables as main has allocated so far including compiler -- temporaries. 4 locals are enough for gcc 1.40.3 on a Solaris -- 4.1.3 sparc, but we use 8 to be safe. A buggy compiler should -- reuse the register of parent for one of the local variables, -- since it will think that parent can't possibly be used any more -- in this routine. Assigning to the local variable will thus -- munge parent in the parent process. */ -- pid_t -- p = getpid(), p1 = getpid(), p2 = getpid(), p3 = getpid(), -- p4 = getpid(), p5 = getpid(), p6 = getpid(), p7 = getpid(); -- /* Convince the compiler that p..p7 are live; otherwise, it might -- use the same hardware register for all 8 local variables. */ -- if (p != p1 || p != p2 || p != p3 || p != p4 -- || p != p5 || p != p6 || p != p7) -- _exit(1); -- -- /* On some systems (e.g. IRIX 3.3), vfork doesn't separate parent -- from child file descriptors. If the child closes a descriptor -- before it execs or exits, this munges the parent's descriptor -- as well. Test for this by closing stdout in the child. */ -- _exit(close(fileno(stdout)) != 0); -- } else { -- int status; -- struct stat st; -- -- while (wait(&status) != child) -- ; -- $ac_main_return( -- /* Was there some problem with vforking? */ -- child < 0 -- -- /* Did the child fail? (This shouldn't happen.) */ -- || status -- -- /* Did the vfork/compiler bug occur? */ -- || parent != getpid() -- -- /* Did the file descriptor bug occur? */ -- || fstat(fileno(stdout), &st) != 0 -- ); -- } -+wchar_t value -+ ; -+ return 0; - } - _ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:13839: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:14184: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13842: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:13844: \"$ac_try\"") >&5 -+ echo "$as_me:14187: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:14190: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13847: \$? = $ac_status" >&5 -+ echo "$as_me:14193: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- ac_cv_func_vfork_works=yes -+ cf_cv_wchar_t=yes - else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 -+ echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --ac_cv_func_vfork_works=no --fi --rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+cf_cv_wchar_t=unknown - fi -+rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:13859: result: $ac_cv_func_vfork_works" >&5 --echo "${ECHO_T}$ac_cv_func_vfork_works" >&6 -- --fi; --if test "x$ac_cv_func_fork_works" = xcross; then -- ac_cv_func_vfork_works=ac_cv_func_vfork -- { echo "$as_me:13865: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&5 --echo "$as_me: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&2;} -+rm -f conftest.$ac_objext conftest.$ac_ext - fi -+echo "$as_me:14205: result: $cf_cv_wchar_t" >&5 -+echo "${ECHO_T}$cf_cv_wchar_t" >&6 - --if test "x$ac_cv_func_vfork_works" = xyes; then -- --cat >>confdefs.h <<\EOF --#define HAVE_WORKING_VFORK 1 --EOF -- --else -+if test "$cf_cv_wchar_t" = yes ; then - - cat >>confdefs.h <<\EOF --#define vfork fork -+#define NEED_WCHAR_H 1 - EOF - -+ NEED_WCHAR_H=1 - fi --if test "x$ac_cv_func_fork_works" = xyes; then - --cat >>confdefs.h <<\EOF --#define HAVE_WORKING_FORK 1 --EOF -+# if we do not find wchar_t in either place, use substitution to provide a fallback. -+if test "$cf_cv_wchar_t" = unknown ; then -+ NCURSES_WCHAR_T=1 -+fi - -+# if we find wchar_t in either place, use substitution to provide a fallback. -+if test "$cf_cv_wchar_t" != unknown ; then -+ NCURSES_OK_WCHAR_T=1 - fi - --echo "$as_me:13890: checking if sys/time.h works with sys/select.h" >&5 --echo $ECHO_N "checking if sys/time.h works with sys/select.h... $ECHO_C" >&6 --if test "${cf_cv_sys_time_select+set}" = set; then -+# This is needed on Tru64 5.0 to declare wint_t -+echo "$as_me:14228: checking if we must include wchar.h to declare wint_t" >&5 -+echo $ECHO_N "checking if we must include wchar.h to declare wint_t... $ECHO_C" >&6 -+if test "${cf_cv_wint_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - - cat >conftest.$ac_ext <<_ACEOF --#line 13897 "configure" -+#line 14235 "configure" - #include "confdefs.h" - --#include <sys/types.h> --#ifdef HAVE_SYS_TIME_H --#include <sys/time.h> --#endif --#ifdef HAVE_SYS_SELECT_H --#include <sys/select.h> -+#include <stdlib.h> -+#include <stdarg.h> -+#include <stdio.h> -+#ifdef HAVE_LIBUTF8_H -+#include <libutf8.h> - #endif -- - int - main () - { -- -+wint_t state - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:13917: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:14253: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13920: \$? = $ac_status" >&5 -+ echo "$as_me:14256: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:13923: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14259: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13926: \$? = $ac_status" >&5 -+ echo "$as_me:14262: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_sys_time_select=yes -+ cf_cv_wint_t=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_sys_time_select=no --fi --rm -f conftest.$ac_objext conftest.$ac_ext -- --fi -- --echo "$as_me:13938: result: $cf_cv_sys_time_select" >&5 --echo "${ECHO_T}$cf_cv_sys_time_select" >&6 --test "$cf_cv_sys_time_select" = yes && cat >>confdefs.h <<\EOF --#define HAVE_SYS_TIME_SELECT 1 --EOF -- --echo "$as_me:13944: checking for function curses_version" >&5 --echo $ECHO_N "checking for function curses_version... $ECHO_C" >&6 --if test "${cf_cv_func_curses_version+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- --if test "$cross_compiling" = yes; then -- cf_cv_func_curses_version=unknown --else -- cat >conftest.$ac_ext <<_ACEOF --#line 13954 "configure" -+cat >conftest.$ac_ext <<_ACEOF -+#line 14269 "configure" - #include "confdefs.h" - --#include <${cf_cv_ncurses_header:-curses.h}> --int main() -+#include <stdlib.h> -+#include <stdarg.h> -+#include <stdio.h> -+#include <wchar.h> -+#ifdef HAVE_LIBUTF8_H -+#include <libutf8.h> -+#endif -+int -+main () - { -- char temp[1024]; -- sprintf(temp, "%s\n", curses_version()); -- ${cf_cv_main_return:-return}(0); -+wint_t value -+ ; -+ return 0; - } -- - _ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:13967: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:14288: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:13970: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:13972: \"$ac_try\"") >&5 -+ echo "$as_me:14291: \$? = $ac_status" >&5 -+ (exit $ac_status); } && -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:14294: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:13975: \$? = $ac_status" >&5 -+ echo "$as_me:14297: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_func_curses_version=yes -- -+ cf_cv_wint_t=yes - else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 -+ echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_func_curses_version=no -- -+cf_cv_wint_t=unknown - fi --rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext - fi --rm -f core -+rm -f conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:13990: result: $cf_cv_func_curses_version" >&5 --echo "${ECHO_T}$cf_cv_func_curses_version" >&6 --test "$cf_cv_func_curses_version" = yes && cat >>confdefs.h <<\EOF --#define HAVE_CURSES_VERSION 1 -+echo "$as_me:14309: result: $cf_cv_wint_t" >&5 -+echo "${ECHO_T}$cf_cv_wint_t" >&6 -+ -+if test "$cf_cv_wint_t" = yes ; then -+ -+cat >>confdefs.h <<\EOF -+#define NEED_WCHAR_H 1 - EOF - --echo "$as_me:13996: checking for ncurses wrap-prefix" >&5 --echo $ECHO_N "checking for ncurses wrap-prefix... $ECHO_C" >&6 -+ NEED_WCHAR_H=1 -+fi - --# Check whether --with-ncurses-wrap-prefix or --without-ncurses-wrap-prefix was given. --if test "${with_ncurses_wrap_prefix+set}" = set; then -- withval="$with_ncurses_wrap_prefix" -- NCURSES_WRAP_PREFIX=$withval --else -- NCURSES_WRAP_PREFIX=_nc_ --fi; --echo "$as_me:14006: result: $NCURSES_WRAP_PREFIX" >&5 --echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6 -+# if we do not find wint_t in either place, use substitution to provide a fallback. -+if test "$cf_cv_wint_t" = unknown ; then -+ NCURSES_WINT_T=1 -+fi - --echo "$as_me:14009: checking for alternate character set array" >&5 --echo $ECHO_N "checking for alternate character set array... $ECHO_C" >&6 --if test "${cf_cv_curses_acs_map+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+# if we find wint_t in either place, use substitution to provide a fallback. -+if test "$cf_cv_wint_t" != unknown ; then -+ NCURSES_OK_WINT_T=1 -+fi - --cf_cv_curses_acs_map=unknown --for name in acs_map _acs_map __acs_map ${NCURSES_WRAP_PREFIX}acs_map --do -+ if test "$NCURSES_OK_MBSTATE_T" = 0 ; then -+ -+echo "$as_me:14333: checking for type mbstate_t in ${cf_cv_ncurses_header:-curses.h}" >&5 -+echo $ECHO_N "checking for type mbstate_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 - cat >conftest.$ac_ext <<_ACEOF --#line 14019 "configure" -+#line 14336 "configure" - #include "confdefs.h" - -+#ifndef _XOPEN_SOURCE_EXTENDED -+#define _XOPEN_SOURCE_EXTENDED -+#endif - #include <${cf_cv_ncurses_header:-curses.h}> -- - int - main () - { - --$name['k'] = ACS_PLUS -+mbstate_t foo - - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14035: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:14354: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14038: \$? = $ac_status" >&5 -+ echo "$as_me:14357: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:14041: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:14360: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14044: \$? = $ac_status" >&5 -+ echo "$as_me:14363: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_curses_acs_map=$name; break -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_result=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --done -+rm -f conftest.$ac_objext conftest.$ac_ext -+echo "$as_me:14372: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+if test $cf_result = yes ; then - --fi --echo "$as_me:14055: result: $cf_cv_curses_acs_map" >&5 --echo "${ECHO_T}$cf_cv_curses_acs_map" >&6 -+cf_result=`echo "have_type_mbstate_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - --test "$cf_cv_curses_acs_map" != unknown && cat >>confdefs.h <<EOF --#define CURSES_ACS_ARRAY $cf_cv_curses_acs_map -+cat >>confdefs.h <<EOF -+#define $cf_result 1 - EOF - --echo "$as_me:14062: checking for wide alternate character set array" >&5 --echo $ECHO_N "checking for wide alternate character set array... $ECHO_C" >&6 --if test "${cf_cv_curses_wacs_map+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 - else - -- cf_cv_curses_wacs_map=unknown -- for name in wacs_map _wacs_map __wacs_map _nc_wacs _wacs_char -- do -- cat >conftest.$ac_ext <<_ACEOF --#line 14072 "configure" -+cat >>confdefs.h <<EOF -+#define mbstate_t long -+EOF -+ -+fi -+ -+ fi -+ -+ if test "$NCURSES_OK_WCHAR_T" = 0 ; then -+ -+echo "$as_me:14394: checking for type wchar_t in ${cf_cv_ncurses_header:-curses.h}" >&5 -+echo $ECHO_N "checking for type wchar_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 -+cat >conftest.$ac_ext <<_ACEOF -+#line 14397 "configure" - #include "confdefs.h" - - #ifndef _XOPEN_SOURCE_EXTENDED -@@ -14079,86 +14404,58 @@ - int - main () - { --void *foo = &($name['k']) -+ -+wchar_t foo -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14088: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:14415: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14091: \$? = $ac_status" >&5 -+ echo "$as_me:14418: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:14094: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:14421: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14097: \$? = $ac_status" >&5 -+ echo "$as_me:14424: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_curses_wacs_map=$name -- break -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_result=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -- done --fi --echo "$as_me:14108: result: $cf_cv_curses_wacs_map" >&5 --echo "${ECHO_T}$cf_cv_curses_wacs_map" >&6 -+rm -f conftest.$ac_objext conftest.$ac_ext -+echo "$as_me:14433: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+if test $cf_result = yes ; then - --test "$cf_cv_curses_wacs_map" != unknown && cat >>confdefs.h <<EOF --#define CURSES_WACS_ARRAY $cf_cv_curses_wacs_map -+cf_result=`echo "have_type_wchar_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+cat >>confdefs.h <<EOF -+#define $cf_result 1 - EOF - --echo "$as_me:14115: checking for wide alternate character constants" >&5 --echo $ECHO_N "checking for wide alternate character constants... $ECHO_C" >&6 --if test "${cf_cv_curses_wacs_symbols+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 - else - --cf_cv_curses_wacs_symbols=no --if test "$cf_cv_curses_wacs_map" != unknown --then -- cat >conftest.$ac_ext <<_ACEOF --#line 14125 "configure" --#include "confdefs.h" -+cat >>confdefs.h <<EOF -+#define wchar_t long -+EOF - --#ifndef _XOPEN_SOURCE_EXTENDED --#define _XOPEN_SOURCE_EXTENDED --#endif --#include <${cf_cv_ncurses_header:-curses.h}> --int --main () --{ --cchar_t *foo = WACS_PLUS; -- $cf_cv_curses_wacs_map['k'] = *WACS_PLUS -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14142: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:14145: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:14148: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:14151: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_cv_curses_wacs_symbols=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext --else -- cat >conftest.$ac_ext <<_ACEOF --#line 14161 "configure" -+ -+ fi -+ -+ if test "$NCURSES_OK_WINT_T" = 0 ; then -+ -+echo "$as_me:14455: checking for type wint_t in ${cf_cv_ncurses_header:-curses.h}" >&5 -+echo $ECHO_N "checking for type wint_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 -+cat >conftest.$ac_ext <<_ACEOF -+#line 14458 "configure" - #include "confdefs.h" - - #ifndef _XOPEN_SOURCE_EXTENDED -@@ -14168,70 +14465,95 @@ - int - main () - { --cchar_t *foo = WACS_PLUS -+ -+wint_t foo -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14177: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -+rm -f conftest.$ac_objext -+if { (eval echo "$as_me:14476: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14180: \$? = $ac_status" >&5 -+ echo "$as_me:14479: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:14183: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest.$ac_objext' -+ { (eval echo "$as_me:14482: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14186: \$? = $ac_status" >&5 -+ echo "$as_me:14485: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_curses_wacs_symbols=yes -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_result=no - fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+rm -f conftest.$ac_objext conftest.$ac_ext -+echo "$as_me:14494: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+if test $cf_result = yes ; then -+ -+cf_result=`echo "have_type_wint_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+cat >>confdefs.h <<EOF -+#define $cf_result 1 -+EOF -+ -+else -+ -+cat >>confdefs.h <<EOF -+#define wint_t long -+EOF -+ - fi - -+ fi - fi --echo "$as_me:14197: result: $cf_cv_curses_wacs_symbols" >&5 --echo "${ECHO_T}$cf_cv_curses_wacs_symbols" >&6 - --test "$cf_cv_curses_wacs_symbols" != no && cat >>confdefs.h <<\EOF --#define CURSES_WACS_SYMBOLS 1 --EOF -+echo "$as_me:14515: checking for data boolnames declaration in ${cf_cv_ncurses_header:-curses.h}" >&5 -+echo $ECHO_N "checking for data boolnames declaration in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 - --echo "$as_me:14204: checking for type attr_t in ${cf_cv_ncurses_header:-curses.h}" >&5 --echo $ECHO_N "checking for type attr_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 - cat >conftest.$ac_ext <<_ACEOF --#line 14207 "configure" -+#line 14519 "configure" - #include "confdefs.h" - --#ifndef _XOPEN_SOURCE_EXTENDED --#define _XOPEN_SOURCE_EXTENDED --#endif -+#ifdef HAVE_XCURSES -+#include <xcurses.h> -+char * XCursesProgramName = "test"; -+#else - #include <${cf_cv_ncurses_header:-curses.h}> -+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) -+#include <ncursesw/term.h> -+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) -+#include <ncurses/term.h> -+#elif defined(HAVE_TERM_H) -+#include <term.h> -+#endif -+#endif -+ - int - main () - { - --attr_t foo -+void *foo = &(boolnames) - - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14225: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:14547: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14228: \$? = $ac_status" >&5 -+ echo "$as_me:14550: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14231: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14553: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14234: \$? = $ac_status" >&5 -+ echo "$as_me:14556: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cf_result=yes - else -@@ -14240,868 +14562,1577 @@ - cf_result=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext --echo "$as_me:14243: result: $cf_result" >&5 -+echo "$as_me:14565: result: $cf_result" >&5 - echo "${ECHO_T}$cf_result" >&6 -+ - if test $cf_result = yes ; then - --cf_result=`echo "have_type_attr_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+cf_result=`echo "have_curses_data_boolnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - - cat >>confdefs.h <<EOF - #define $cf_result 1 - EOF - - else -- cat >>confdefs.h <<EOF --#define attr_t long --EOF -- --fi -- --# This is needed on Tru64 5.0 to declare mbstate_t --echo "$as_me:14261: checking if we must include wchar.h to declare mbstate_t" >&5 --echo $ECHO_N "checking if we must include wchar.h to declare mbstate_t... $ECHO_C" >&6 --if test "${cf_cv_mbstate_t+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -+ echo "$as_me:14577: checking for data boolnames in library" >&5 -+echo $ECHO_N "checking for data boolnames in library... $ECHO_C" >&6 -+ # BSD linkers insist on making weak linkage, but resolve at runtime. -+ if test "$cross_compiling" = yes; then - --cat >conftest.$ac_ext <<_ACEOF --#line 14268 "configure" -+ # cross-compiling -+ cat >conftest.$ac_ext <<_ACEOF -+#line 14584 "configure" - #include "confdefs.h" - --#include <stdlib.h> --#include <stdarg.h> --#include <stdio.h> --#ifdef HAVE_LIBUTF8_H --#include <libutf8.h> -+#ifdef HAVE_XCURSES -+#include <xcurses.h> -+char * XCursesProgramName = "test"; -+#else -+#include <${cf_cv_ncurses_header:-curses.h}> -+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) -+#include <ncursesw/term.h> -+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) -+#include <ncurses/term.h> -+#elif defined(HAVE_TERM_H) -+#include <term.h> - #endif -+#endif -+ -+extern char boolnames; - int - main () - { --mbstate_t state -+ -+ do { -+ void *foo = &(boolnames); -+ ${cf_cv_main_return:-return}(foo == 0); -+ } while (0) -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:14286: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:14616: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14289: \$? = $ac_status" >&5 -+ echo "$as_me:14619: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14292: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:14622: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14295: \$? = $ac_status" >&5 -+ echo "$as_me:14625: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_mbstate_t=no -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 -+cf_result=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 14637 "configure" -+#include "confdefs.h" -+ -+#ifdef HAVE_XCURSES -+#include <xcurses.h> -+char * XCursesProgramName = "test"; -+#else -+#include <${cf_cv_ncurses_header:-curses.h}> -+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) -+#include <ncursesw/term.h> -+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) -+#include <ncurses/term.h> -+#elif defined(HAVE_TERM_H) -+#include <term.h> -+#endif -+#endif -+ -+extern char boolnames; -+int main(void) -+{ -+ void *foo = &(boolnames); -+ ${cf_cv_main_return:-return}(foo == 0); -+} -+_ACEOF -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:14662: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 -+ ac_status=$? -+ echo "$as_me:14665: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:14667: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:14670: \$? = $ac_status" >&5 -+ (exit $ac_status); }; }; then -+ cf_result=yes -+else -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 -+cat conftest.$ac_ext >&5 -+cf_result=no -+fi -+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+fi -+ echo "$as_me:14681: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+ if test $cf_result = yes ; then -+ -+cf_result=`echo "decl_curses_data_boolnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+ cat >>confdefs.h <<EOF -+#define $cf_result 1 -+EOF -+ -+ fi -+fi -+ -+echo "$as_me:14694: checking for data boolfnames declaration in ${cf_cv_ncurses_header:-curses.h}" >&5 -+echo $ECHO_N "checking for data boolfnames declaration in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 -+ - cat >conftest.$ac_ext <<_ACEOF --#line 14302 "configure" -+#line 14698 "configure" - #include "confdefs.h" - --#include <stdlib.h> --#include <stdarg.h> --#include <stdio.h> --#include <wchar.h> --#ifdef HAVE_LIBUTF8_H --#include <libutf8.h> -+#ifdef HAVE_XCURSES -+#include <xcurses.h> -+char * XCursesProgramName = "test"; -+#else -+#include <${cf_cv_ncurses_header:-curses.h}> -+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) -+#include <ncursesw/term.h> -+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) -+#include <ncurses/term.h> -+#elif defined(HAVE_TERM_H) -+#include <term.h> - #endif -+#endif -+ - int - main () - { --mbstate_t value -+ -+void *foo = &(boolfnames) -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14321: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:14726: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14324: \$? = $ac_status" >&5 -+ echo "$as_me:14729: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14327: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:14732: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14330: \$? = $ac_status" >&5 -+ echo "$as_me:14735: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_mbstate_t=yes -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_mbstate_t=unknown --fi --rm -f conftest.$ac_objext conftest.$ac_ext -+cf_result=no - fi - rm -f conftest.$ac_objext conftest.$ac_ext --fi --echo "$as_me:14342: result: $cf_cv_mbstate_t" >&5 --echo "${ECHO_T}$cf_cv_mbstate_t" >&6 -- --if test "$cf_cv_mbstate_t" = yes ; then -- cat >>confdefs.h <<\EOF --#define NEED_WCHAR_H 1 --EOF -+echo "$as_me:14744: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 - -- NEED_WCHAR_H=1 --fi -+if test $cf_result = yes ; then - --# if we do not find mbstate_t in either place, use substitution to provide a fallback. --if test "$cf_cv_mbstate_t" = unknown ; then -- NCURSES_MBSTATE_T=1 --fi -+cf_result=`echo "have_curses_data_boolfnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` - --# if we find mbstate_t in either place, use substitution to provide a fallback. --if test "$cf_cv_mbstate_t" != unknown ; then -- NCURSES_OK_MBSTATE_T=1 --fi -+ cat >>confdefs.h <<EOF -+#define $cf_result 1 -+EOF - --# This is needed on Tru64 5.0 to declare wchar_t --echo "$as_me:14364: checking if we must include wchar.h to declare wchar_t" >&5 --echo $ECHO_N "checking if we must include wchar.h to declare wchar_t... $ECHO_C" >&6 --if test "${cf_cv_wchar_t+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 - else -+ echo "$as_me:14756: checking for data boolfnames in library" >&5 -+echo $ECHO_N "checking for data boolfnames in library... $ECHO_C" >&6 -+ # BSD linkers insist on making weak linkage, but resolve at runtime. -+ if test "$cross_compiling" = yes; then - --cat >conftest.$ac_ext <<_ACEOF --#line 14371 "configure" -+ # cross-compiling -+ cat >conftest.$ac_ext <<_ACEOF -+#line 14763 "configure" - #include "confdefs.h" - --#include <stdlib.h> --#include <stdarg.h> --#include <stdio.h> --#ifdef HAVE_LIBUTF8_H --#include <libutf8.h> -+#ifdef HAVE_XCURSES -+#include <xcurses.h> -+char * XCursesProgramName = "test"; -+#else -+#include <${cf_cv_ncurses_header:-curses.h}> -+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) -+#include <ncursesw/term.h> -+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) -+#include <ncurses/term.h> -+#elif defined(HAVE_TERM_H) -+#include <term.h> -+#endif - #endif -+ -+extern char boolfnames; - int - main () - { --wchar_t state -+ -+ do { -+ void *foo = &(boolfnames); -+ ${cf_cv_main_return:-return}(foo == 0); -+ } while (0) -+ - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:14389: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:14795: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14392: \$? = $ac_status" >&5 -+ echo "$as_me:14798: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14395: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:14801: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14398: \$? = $ac_status" >&5 -+ echo "$as_me:14804: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_wchar_t=no -+ cf_result=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cat >conftest.$ac_ext <<_ACEOF --#line 14405 "configure" -+cf_result=no -+fi -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 14816 "configure" - #include "confdefs.h" - --#include <stdlib.h> --#include <stdarg.h> --#include <stdio.h> --#include <wchar.h> --#ifdef HAVE_LIBUTF8_H --#include <libutf8.h> -+#ifdef HAVE_XCURSES -+#include <xcurses.h> -+char * XCursesProgramName = "test"; -+#else -+#include <${cf_cv_ncurses_header:-curses.h}> -+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) -+#include <ncursesw/term.h> -+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) -+#include <ncurses/term.h> -+#elif defined(HAVE_TERM_H) -+#include <term.h> - #endif --int --main () -+#endif -+ -+extern char boolfnames; -+int main(void) - { --wchar_t value -- ; -- return 0; -+ void *foo = &(boolfnames); -+ ${cf_cv_main_return:-return}(foo == 0); - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:14424: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest$ac_exeext -+if { (eval echo "$as_me:14841: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14427: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14430: \"$ac_try\"") >&5 -+ echo "$as_me:14844: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -+ { (eval echo "$as_me:14846: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14433: \$? = $ac_status" >&5 -+ echo "$as_me:14849: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_wchar_t=yes -+ cf_result=yes - else -- echo "$as_me: failed program was:" >&5 -+ echo "$as_me: program exited with status $ac_status" >&5 -+echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_wchar_t=unknown --fi --rm -f conftest.$ac_objext conftest.$ac_ext -+cf_result=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext -+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext - fi --echo "$as_me:14445: result: $cf_cv_wchar_t" >&5 --echo "${ECHO_T}$cf_cv_wchar_t" >&6 -+ echo "$as_me:14860: result: $cf_result" >&5 -+echo "${ECHO_T}$cf_result" >&6 -+ if test $cf_result = yes ; then - --if test "$cf_cv_wchar_t" = yes ; then -- cat >>confdefs.h <<\EOF --#define NEED_WCHAR_H 1 -+cf_result=`echo "decl_curses_data_boolfnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+ cat >>confdefs.h <<EOF -+#define $cf_result 1 - EOF - -- NEED_WCHAR_H=1 -+ fi - fi - --# if we do not find wchar_t in either place, use substitution to provide a fallback. --if test "$cf_cv_wchar_t" = unknown ; then -- NCURSES_WCHAR_T=1 --fi -+if ( test "$GCC" = yes || test "$GXX" = yes ) -+then -+echo "$as_me:14875: checking if you want to turn on gcc warnings" >&5 -+echo $ECHO_N "checking if you want to turn on gcc warnings... $ECHO_C" >&6 - --# if we find wchar_t in either place, use substitution to provide a fallback. --if test "$cf_cv_wchar_t" != unknown ; then -- NCURSES_OK_WCHAR_T=1 --fi -+# Check whether --enable-warnings or --disable-warnings was given. -+if test "${enable_warnings+set}" = set; then -+ enableval="$enable_warnings" -+ test "$enableval" != yes && enableval=no -+ if test "$enableval" != "no" ; then -+ with_warnings=yes -+ else -+ with_warnings=no -+ fi -+else -+ enableval=no -+ with_warnings=no - --# This is needed on Tru64 5.0 to declare wint_t --echo "$as_me:14467: checking if we must include wchar.h to declare wint_t" >&5 --echo $ECHO_N "checking if we must include wchar.h to declare wint_t... $ECHO_C" >&6 --if test "${cf_cv_wint_t+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 -+fi; -+echo "$as_me:14892: result: $with_warnings" >&5 -+echo "${ECHO_T}$with_warnings" >&6 -+if test "$with_warnings" = "yes" -+then -+ -+if test "$GCC" = yes -+then -+cat > conftest.i <<EOF -+#ifndef GCC_PRINTF -+#define GCC_PRINTF 0 -+#endif -+#ifndef GCC_SCANF -+#define GCC_SCANF 0 -+#endif -+#ifndef GCC_NORETURN -+#define GCC_NORETURN /* nothing */ -+#endif -+#ifndef GCC_UNUSED -+#define GCC_UNUSED /* nothing */ -+#endif -+EOF -+if test "$GCC" = yes -+then -+ { echo "$as_me:14915: checking for $CC __attribute__ directives..." >&5 -+echo "$as_me: checking for $CC __attribute__ directives..." >&6;} -+cat > conftest.$ac_ext <<EOF -+#line 14918 "${as_me:-configure}" -+#include "confdefs.h" -+#include "conftest.h" -+#include "conftest.i" -+#if GCC_PRINTF -+#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) -+#else -+#define GCC_PRINTFLIKE(fmt,var) /*nothing*/ -+#endif -+#if GCC_SCANF -+#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var))) -+#else -+#define GCC_SCANFLIKE(fmt,var) /*nothing*/ -+#endif -+extern void wow(char *,...) GCC_SCANFLIKE(1,2); -+extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; -+extern void foo(void) GCC_NORETURN; -+int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { return 0; } -+EOF -+ cf_printf_attribute=no -+ cf_scanf_attribute=no -+ for cf_attribute in scanf printf unused noreturn -+ do -+ -+cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+ -+ cf_directive="__attribute__(($cf_attribute))" -+ echo "checking for $CC $cf_directive" 1>&5 -+ -+ case $cf_attribute in #(vi -+ printf) #(vi -+ cf_printf_attribute=yes -+ cat >conftest.h <<EOF -+#define GCC_$cf_ATTRIBUTE 1 -+EOF -+ ;; -+ scanf) #(vi -+ cf_scanf_attribute=yes -+ cat >conftest.h <<EOF -+#define GCC_$cf_ATTRIBUTE 1 -+EOF -+ ;; -+ *) #(vi -+ cat >conftest.h <<EOF -+#define GCC_$cf_ATTRIBUTE $cf_directive -+EOF -+ ;; -+ esac -+ -+ if { (eval echo "$as_me:14967: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:14970: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ test -n "$verbose" && echo "$as_me:14972: result: ... $cf_attribute" >&5 -+echo "${ECHO_T}... $cf_attribute" >&6 -+ cat conftest.h >>confdefs.h -+ case $cf_attribute in #(vi -+ noreturn) #(vi -+ -+cat >>confdefs.h <<EOF -+#define GCC_NORETURN $cf_directive -+EOF -+ -+ ;; -+ printf) #(vi -+ cf_value='/* nothing */' -+ if test "$cf_printf_attribute" != no ; then -+ cf_value='__attribute__((format(printf,fmt,var)))' -+ -+cat >>confdefs.h <<\EOF -+#define GCC_PRINTF 1 -+EOF -+ -+ fi -+ -+cat >>confdefs.h <<EOF -+#define GCC_PRINTFLIKE(fmt,var) $cf_value -+EOF -+ -+ ;; -+ scanf) #(vi -+ cf_value='/* nothing */' -+ if test "$cf_scanf_attribute" != no ; then -+ cf_value='__attribute__((format(scanf,fmt,var)))' -+ -+cat >>confdefs.h <<\EOF -+#define GCC_SCANF 1 -+EOF -+ -+ fi -+ -+cat >>confdefs.h <<EOF -+#define GCC_SCANFLIKE(fmt,var) $cf_value -+EOF -+ -+ ;; -+ unused) #(vi -+ -+cat >>confdefs.h <<EOF -+#define GCC_UNUSED $cf_directive -+EOF -+ -+ ;; -+ esac -+ fi -+ done - else -+ fgrep define conftest.i >>confdefs.h -+fi -+rm -rf conftest* -+fi - --cat >conftest.$ac_ext <<_ACEOF --#line 14474 "configure" -+INTEL_COMPILER=no -+ -+if test "$GCC" = yes ; then -+ case $host_os in -+ linux*|gnu*) -+ echo "$as_me:15036: checking if this is really Intel C compiler" >&5 -+echo $ECHO_N "checking if this is really Intel C compiler... $ECHO_C" >&6 -+ cf_save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -no-gcc" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 15041 "configure" - #include "confdefs.h" - --#include <stdlib.h> --#include <stdarg.h> --#include <stdio.h> --#ifdef HAVE_LIBUTF8_H --#include <libutf8.h> --#endif - int - main () - { --wint_t state -+ -+#ifdef __INTEL_COMPILER -+#else -+make an error -+#endif -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14492: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:15058: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14495: \$? = $ac_status" >&5 -+ echo "$as_me:15061: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14498: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15064: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14501: \$? = $ac_status" >&5 -+ echo "$as_me:15067: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_wint_t=no -+ INTEL_COMPILER=yes -+cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc" -+ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cat >conftest.$ac_ext <<_ACEOF --#line 14508 "configure" -+fi -+rm -f conftest.$ac_objext conftest.$ac_ext -+ CFLAGS="$cf_save_CFLAGS" -+ echo "$as_me:15078: result: $INTEL_COMPILER" >&5 -+echo "${ECHO_T}$INTEL_COMPILER" >&6 -+ ;; -+ esac -+fi -+ -+CLANG_COMPILER=no -+ -+if test "$GCC" = yes ; then -+ echo "$as_me:15087: checking if this is really Clang C compiler" >&5 -+echo $ECHO_N "checking if this is really Clang C compiler... $ECHO_C" >&6 -+ cf_save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -Qunused-arguments" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 15092 "configure" - #include "confdefs.h" - --#include <stdlib.h> --#include <stdarg.h> --#include <stdio.h> --#include <wchar.h> --#ifdef HAVE_LIBUTF8_H --#include <libutf8.h> --#endif - int - main () - { --wint_t value -+ -+#ifdef __clang__ -+#else -+make an error -+#endif -+ - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext --if { (eval echo "$as_me:14527: \"$ac_compile\"") >&5 -+if { (eval echo "$as_me:15109: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -- echo "$as_me:14530: \$? = $ac_status" >&5 -+ echo "$as_me:15112: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14533: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15115: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14536: \$? = $ac_status" >&5 -+ echo "$as_me:15118: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_cv_wint_t=yes -+ CLANG_COMPILER=yes -+cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments" -+ - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_cv_wint_t=unknown - fi - rm -f conftest.$ac_objext conftest.$ac_ext -+ CFLAGS="$cf_save_CFLAGS" -+ echo "$as_me:15129: result: $CLANG_COMPILER" >&5 -+echo "${ECHO_T}$CLANG_COMPILER" >&6 - fi --rm -f conftest.$ac_objext conftest.$ac_ext -+ -+cat > conftest.$ac_ext <<EOF -+#line 15134 "${as_me:-configure}" -+int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; } -+EOF -+ -+if test "$INTEL_COMPILER" = yes -+then -+# The "-wdXXX" options suppress warnings: -+# remark #1419: external declaration in primary source file -+# remark #1683: explicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem) -+# remark #1684: conversion from pointer to same-sized integral type (potential portability problem) -+# remark #193: zero used for undefined preprocessing identifier -+# remark #593: variable "curs_sb_left_arrow" was set but never used -+# remark #810: conversion from "int" to "Dimension={unsigned short}" may lose significant bits -+# remark #869: parameter "tw" was never referenced -+# remark #981: operands are evaluated in unspecified order -+# warning #279: controlling expression is constant -+ -+ { echo "$as_me:15151: checking for $CC warning options..." >&5 -+echo "$as_me: checking for $CC warning options..." >&6;} -+ cf_save_CFLAGS="$CFLAGS" -+ EXTRA_CFLAGS="-Wall" -+ for cf_opt in \ -+ wd1419 \ -+ wd1683 \ -+ wd1684 \ -+ wd193 \ -+ wd593 \ -+ wd279 \ -+ wd810 \ -+ wd869 \ -+ wd981 -+ do -+ CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" -+ if { (eval echo "$as_me:15167: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:15170: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ test -n "$verbose" && echo "$as_me:15172: result: ... -$cf_opt" >&5 -+echo "${ECHO_T}... -$cf_opt" >&6 -+ EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt" -+ fi -+ done -+ CFLAGS="$cf_save_CFLAGS" -+ -+elif test "$GCC" = yes -+then -+ { echo "$as_me:15181: checking for $CC warning options..." >&5 -+echo "$as_me: checking for $CC warning options..." >&6;} -+ cf_save_CFLAGS="$CFLAGS" -+ EXTRA_CFLAGS= -+ cf_warn_CONST="" -+ test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings" -+ cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs" -+ test "x$CLANG_COMPILER" = xyes && cf_gcc_warnings= -+ for cf_opt in W Wall \ -+ Wbad-function-cast \ -+ Wcast-align \ -+ Wcast-qual \ -+ Wdeclaration-after-statement \ -+ Wextra \ -+ Winline \ -+ Wmissing-declarations \ -+ Wmissing-prototypes \ -+ Wnested-externs \ -+ Wpointer-arith \ -+ Wshadow \ -+ Wstrict-prototypes \ -+ Wundef $cf_gcc_warnings $cf_warn_CONST -+ do -+ CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" -+ if { (eval echo "$as_me:15205: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:15208: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ test -n "$verbose" && echo "$as_me:15210: result: ... -$cf_opt" >&5 -+echo "${ECHO_T}... -$cf_opt" >&6 -+ case $cf_opt in #(vi -+ Wcast-qual) #(vi -+ CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES" -+ ;; -+ Winline) #(vi -+ case $GCC_VERSION in -+ [34].*) -+ test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6 -+ -+echo "${as_me:-configure}:15221: testing feature is broken in gcc $GCC_VERSION ..." 1>&5 -+ -+ continue;; -+ esac -+ ;; -+ Wpointer-arith) #(vi -+ case $GCC_VERSION in -+ [12].*) -+ test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6 -+ -+echo "${as_me:-configure}:15231: testing feature is broken in gcc $GCC_VERSION ..." 1>&5 -+ -+ continue;; -+ esac -+ ;; -+ esac -+ EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt" -+ fi -+ done -+ CFLAGS="$cf_save_CFLAGS" - fi --echo "$as_me:14548: result: $cf_cv_wint_t" >&5 --echo "${ECHO_T}$cf_cv_wint_t" >&6 -+rm -rf conftest* - --if test "$cf_cv_wint_t" = yes ; then -- cat >>confdefs.h <<\EOF --#define NEED_WCHAR_H 1 -+fi -+fi -+ -+echo "$as_me:15247: checking if you want to use dmalloc for testing" >&5 -+echo $ECHO_N "checking if you want to use dmalloc for testing... $ECHO_C" >&6 -+ -+# Check whether --with-dmalloc or --without-dmalloc was given. -+if test "${with_dmalloc+set}" = set; then -+ withval="$with_dmalloc" -+ -+cat >>confdefs.h <<EOF -+#define USE_DMALLOC 1 - EOF - -- NEED_WCHAR_H=1 -+ : ${with_cflags:=-g} -+ : ${with_no_leaks:=yes} -+ with_dmalloc=yes -+else -+ with_dmalloc= -+fi; -+echo "$as_me:15264: result: ${with_dmalloc:-no}" >&5 -+echo "${ECHO_T}${with_dmalloc:-no}" >&6 -+ -+case .$with_cflags in #(vi -+.*-g*) -+ case .$CFLAGS in #(vi -+ .*-g*) #(vi -+ ;; -+ *) -+ -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= -+ -+for cf_add_cflags in -g -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes -+ -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` -+ -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` -+ -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" - fi - --# if we do not find wint_t in either place, use substitution to provide a fallback. --if test "$cf_cv_wint_t" = unknown ; then -- NCURSES_WINT_T=1 -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi -+ -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+ ;; -+ esac -+ ;; -+esac -+ -+if test "$with_dmalloc" = yes ; then -+ echo "$as_me:15358: checking for dmalloc.h" >&5 -+echo $ECHO_N "checking for dmalloc.h... $ECHO_C" >&6 -+if test "${ac_cv_header_dmalloc_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 15364 "configure" -+#include "confdefs.h" -+#include <dmalloc.h> -+_ACEOF -+if { (eval echo "$as_me:15368: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:15374: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ ac_cv_header_dmalloc_h=yes -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ ac_cv_header_dmalloc_h=no - fi -- --# if we find wint_t in either place, use substitution to provide a fallback. --if test "$cf_cv_wint_t" != unknown ; then -- NCURSES_OK_WINT_T=1 -+rm -f conftest.err conftest.$ac_ext - fi -+echo "$as_me:15393: result: $ac_cv_header_dmalloc_h" >&5 -+echo "${ECHO_T}$ac_cv_header_dmalloc_h" >&6 -+if test $ac_cv_header_dmalloc_h = yes; then - --if test "$NCURSES_OK_MBSTATE_T" = 0 ; then -- --echo "$as_me:14571: checking for type mbstate_t in ${cf_cv_ncurses_header:-curses.h}" >&5 --echo $ECHO_N "checking for type mbstate_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 -+echo "$as_me:15397: checking for dmalloc_debug in -ldmalloc" >&5 -+echo $ECHO_N "checking for dmalloc_debug in -ldmalloc... $ECHO_C" >&6 -+if test "${ac_cv_lib_dmalloc_dmalloc_debug+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-ldmalloc $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 14574 "configure" -+#line 15405 "configure" - #include "confdefs.h" - --#ifndef _XOPEN_SOURCE_EXTENDED --#define _XOPEN_SOURCE_EXTENDED -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" - #endif --#include <${cf_cv_ncurses_header:-curses.h}> -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char dmalloc_debug (); - int - main () - { -- --mbstate_t foo -- -+dmalloc_debug (); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:14592: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:15424: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14595: \$? = $ac_status" >&5 -+ echo "$as_me:15427: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14598: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:15430: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14601: \$? = $ac_status" >&5 -+ echo "$as_me:15433: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_result=yes -+ ac_cv_lib_dmalloc_dmalloc_debug=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_result=no -+ac_cv_lib_dmalloc_dmalloc_debug=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext --echo "$as_me:14610: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 --if test $cf_result = yes ; then -- --cf_result=`echo "have_type_mbstate_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -- -- cat >>confdefs.h <<EOF --#define $cf_result 1 -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:15444: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5 -+echo "${ECHO_T}$ac_cv_lib_dmalloc_dmalloc_debug" >&6 -+if test $ac_cv_lib_dmalloc_dmalloc_debug = yes; then -+ cat >>confdefs.h <<EOF -+#define HAVE_LIBDMALLOC 1 - EOF - --else -- cat >>confdefs.h <<EOF --#define mbstate_t long --EOF -+ LIBS="-ldmalloc $LIBS" - - fi - - fi - --if test "$NCURSES_OK_WCHAR_T" = 0 ; then -+fi - --echo "$as_me:14631: checking for type wchar_t in ${cf_cv_ncurses_header:-curses.h}" >&5 --echo $ECHO_N "checking for type wchar_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 --cat >conftest.$ac_ext <<_ACEOF --#line 14634 "configure" --#include "confdefs.h" -+echo "$as_me:15459: checking if you want to use dbmalloc for testing" >&5 -+echo $ECHO_N "checking if you want to use dbmalloc for testing... $ECHO_C" >&6 - --#ifndef _XOPEN_SOURCE_EXTENDED --#define _XOPEN_SOURCE_EXTENDED --#endif --#include <${cf_cv_ncurses_header:-curses.h}> --int --main () --{ -+# Check whether --with-dbmalloc or --without-dbmalloc was given. -+if test "${with_dbmalloc+set}" = set; then -+ withval="$with_dbmalloc" - --wchar_t foo -+cat >>confdefs.h <<EOF -+#define USE_DBMALLOC 1 -+EOF - -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:14652: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:14655: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14658: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:14661: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_result=yes -+ : ${with_cflags:=-g} -+ : ${with_no_leaks:=yes} -+ with_dbmalloc=yes - else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --cf_result=no --fi --rm -f conftest.$ac_objext conftest.$ac_ext --echo "$as_me:14670: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 --if test $cf_result = yes ; then -+ with_dbmalloc= -+fi; -+echo "$as_me:15476: result: ${with_dbmalloc:-no}" >&5 -+echo "${ECHO_T}${with_dbmalloc:-no}" >&6 - --cf_result=`echo "have_type_wchar_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+case .$with_cflags in #(vi -+.*-g*) -+ case .$CFLAGS in #(vi -+ .*-g*) #(vi -+ ;; -+ *) - -- cat >>confdefs.h <<EOF --#define $cf_result 1 --EOF -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= - --else -- cat >>confdefs.h <<EOF --#define wchar_t long --EOF -+for cf_add_cflags in -g -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` - --fi -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes - --fi -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` - --if test "$NCURSES_OK_WINT_T" = 0 ; then -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` - --echo "$as_me:14691: checking for type wint_t in ${cf_cv_ncurses_header:-curses.h}" >&5 --echo $ECHO_N "checking for type wint_t in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 --cat >conftest.$ac_ext <<_ACEOF --#line 14694 "configure" --#include "confdefs.h" -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" - --#ifndef _XOPEN_SOURCE_EXTENDED --#define _XOPEN_SOURCE_EXTENDED --#endif --#include <${cf_cv_ncurses_header:-curses.h}> --int --main () --{ -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` - --wint_t foo -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done - -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:14712: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -- ac_status=$? -- echo "$as_me:14715: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14718: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:14721: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_result=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --cf_result=no -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" - fi --rm -f conftest.$ac_objext conftest.$ac_ext --echo "$as_me:14730: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 --if test $cf_result = yes ; then - --cf_result=`echo "have_type_wint_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+if test -n "$cf_new_cppflags" ; then - -- cat >>confdefs.h <<EOF --#define $cf_result 1 --EOF -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" -+fi - --else -- cat >>confdefs.h <<EOF --#define wint_t long --EOF -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+ ;; -+ esac -+ ;; -+esac - -+if test "$with_dbmalloc" = yes ; then -+ echo "$as_me:15570: checking for dbmalloc.h" >&5 -+echo $ECHO_N "checking for dbmalloc.h... $ECHO_C" >&6 -+if test "${ac_cv_header_dbmalloc_h+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ cat >conftest.$ac_ext <<_ACEOF -+#line 15576 "configure" -+#include "confdefs.h" -+#include <dbmalloc.h> -+_ACEOF -+if { (eval echo "$as_me:15580: \"$ac_cpp conftest.$ac_ext\"") >&5 -+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 -+ ac_status=$? -+ egrep -v '^ *\+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:15586: \$? = $ac_status" >&5 -+ (exit $ac_status); } >/dev/null; then -+ if test -s conftest.err; then -+ ac_cpp_err=$ac_c_preproc_warn_flag -+ else -+ ac_cpp_err= -+ fi -+else -+ ac_cpp_err=yes -+fi -+if test -z "$ac_cpp_err"; then -+ ac_cv_header_dbmalloc_h=yes -+else -+ echo "$as_me: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ ac_cv_header_dbmalloc_h=no - fi -- -+rm -f conftest.err conftest.$ac_ext - fi -+echo "$as_me:15605: result: $ac_cv_header_dbmalloc_h" >&5 -+echo "${ECHO_T}$ac_cv_header_dbmalloc_h" >&6 -+if test $ac_cv_header_dbmalloc_h = yes; then - --echo "$as_me:14749: checking for data boolnames declaration in ${cf_cv_ncurses_header:-curses.h}" >&5 --echo $ECHO_N "checking for data boolnames declaration in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 -- -+echo "$as_me:15609: checking for debug_malloc in -ldbmalloc" >&5 -+echo $ECHO_N "checking for debug_malloc in -ldbmalloc... $ECHO_C" >&6 -+if test "${ac_cv_lib_dbmalloc_debug_malloc+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-ldbmalloc $LIBS" - cat >conftest.$ac_ext <<_ACEOF --#line 14753 "configure" -+#line 15617 "configure" - #include "confdefs.h" - --#ifdef HAVE_XCURSES --#include <xcurses.h> --char * XCursesProgramName = "test"; --#else --#include <${cf_cv_ncurses_header:-curses.h}> --#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) --#include <ncursesw/term.h> --#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) --#include <ncurses/term.h> --#elif defined(HAVE_TERM_H) --#include <term.h> --#endif -+/* Override any gcc2 internal prototype to avoid an error. */ -+#ifdef __cplusplus -+extern "C" - #endif -- -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char debug_malloc (); - int - main () - { -- --void *foo = &(boolnames) -- -+debug_malloc (); - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:14781: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:15636: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14784: \$? = $ac_status" >&5 -+ echo "$as_me:15639: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14787: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:15642: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14790: \$? = $ac_status" >&5 -+ echo "$as_me:15645: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_result=yes -+ ac_cv_lib_dbmalloc_debug_malloc=yes - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_result=no -+ac_cv_lib_dbmalloc_debug_malloc=no - fi --rm -f conftest.$ac_objext conftest.$ac_ext --echo "$as_me:14799: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+echo "$as_me:15656: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5 -+echo "${ECHO_T}$ac_cv_lib_dbmalloc_debug_malloc" >&6 -+if test $ac_cv_lib_dbmalloc_debug_malloc = yes; then -+ cat >>confdefs.h <<EOF -+#define HAVE_LIBDBMALLOC 1 -+EOF - --if test $cf_result = yes ; then -+ LIBS="-ldbmalloc $LIBS" - --cf_result=`echo "have_curses_data_boolnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+fi - -- cat >>confdefs.h <<EOF --#define $cf_result 1 -+fi -+ -+fi -+ -+echo "$as_me:15671: checking if you want to use valgrind for testing" >&5 -+echo $ECHO_N "checking if you want to use valgrind for testing... $ECHO_C" >&6 -+ -+# Check whether --with-valgrind or --without-valgrind was given. -+if test "${with_valgrind+set}" = set; then -+ withval="$with_valgrind" -+ -+cat >>confdefs.h <<EOF -+#define USE_VALGRIND 1 - EOF - -+ : ${with_cflags:=-g} -+ : ${with_no_leaks:=yes} -+ with_valgrind=yes - else -- echo "$as_me:14811: checking for data boolnames in library" >&5 --echo $ECHO_N "checking for data boolnames in library... $ECHO_C" >&6 -- # BSD linkers insist on making weak linkage, but resolve at runtime. -- if test "$cross_compiling" = yes; then -+ with_valgrind= -+fi; -+echo "$as_me:15688: result: ${with_valgrind:-no}" >&5 -+echo "${ECHO_T}${with_valgrind:-no}" >&6 - -- # cross-compiling -- cat >conftest.$ac_ext <<_ACEOF --#line 14818 "configure" --#include "confdefs.h" -+case .$with_cflags in #(vi -+.*-g*) -+ case .$CFLAGS in #(vi -+ .*-g*) #(vi -+ ;; -+ *) - --#ifdef HAVE_XCURSES --#include <xcurses.h> --char * XCursesProgramName = "test"; --#else --#include <${cf_cv_ncurses_header:-curses.h}> --#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) --#include <ncursesw/term.h> --#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) --#include <ncurses/term.h> --#elif defined(HAVE_TERM_H) --#include <term.h> --#endif --#endif -+cf_fix_cppflags=no -+cf_new_cflags= -+cf_new_cppflags= -+cf_new_extra_cppflags= - --extern char boolnames; --int --main () --{ -+for cf_add_cflags in -g -+do -+case $cf_fix_cppflags in -+no) -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case $cf_add_cflags in -+ -D*) -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` - -- do { -- void *foo = &(boolnames); -- ${cf_cv_main_return:-return}(foo == 0); -- } while (0) -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=yes - -- ; -- return 0; --} --_ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:14850: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:14853: \$? = $ac_status" >&5 -- (exit $ac_status); } && -- { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:14856: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:14859: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_result=yes --else -- echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --cf_result=no --fi --rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ if test $cf_fix_cppflags = yes ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ elif test "${cf_tst_cflags}" = "\"'" ; then -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" -+ continue -+ fi -+ ;; -+ esac -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ case $cf_add_cflags in #(vi -+ -D*) -+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` - --else -- cat >conftest.$ac_ext <<_ACEOF --#line 14871 "configure" --#include "confdefs.h" -+CPPFLAGS=`echo "$CPPFLAGS" | \ -+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ -+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` - --#ifdef HAVE_XCURSES --#include <xcurses.h> --char * XCursesProgramName = "test"; --#else --#include <${cf_cv_ncurses_header:-curses.h}> --#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) --#include <ncursesw/term.h> --#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) --#include <ncurses/term.h> --#elif defined(HAVE_TERM_H) --#include <term.h> --#endif --#endif -+ ;; -+ esac -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+yes) -+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" - --extern char boolnames; --int main(void) --{ -- void *foo = &(boolnames); -- ${cf_cv_main_return:-return}(foo == 0); --} --_ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:14896: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:14899: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:14901: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:14904: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_result=yes --else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --cf_result=no -+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` -+ -+ test "${cf_add_cflags}" != "${cf_tst_cflags}" \ -+ && test -z "${cf_tst_cflags}" \ -+ && cf_fix_cppflags=no -+ ;; -+esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ -+ CFLAGS="$CFLAGS $cf_new_cflags" - fi --rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -+ -+if test -n "$cf_new_cppflags" ; then -+ -+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags" - fi -- echo "$as_me:14915: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 -- if test $cf_result = yes ; then - --cf_result=`echo "decl_curses_data_boolnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+if test -n "$cf_new_extra_cppflags" ; then -+ -+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" -+fi -+ -+ ;; -+ esac -+ ;; -+esac -+ -+echo "$as_me:15781: checking if you want to perform memory-leak testing" >&5 -+echo $ECHO_N "checking if you want to perform memory-leak testing... $ECHO_C" >&6 -+ -+# Check whether --enable-leaks or --disable-leaks was given. -+if test "${enable_leaks+set}" = set; then -+ enableval="$enable_leaks" -+ if test "x$enableval" = xno; then with_no_leaks=yes; else with_no_leaks=no; fi -+else -+ : ${with_no_leaks:=no} -+fi; -+echo "$as_me:15791: result: $with_no_leaks" >&5 -+echo "${ECHO_T}$with_no_leaks" >&6 -+ -+if test "$with_no_leaks" = yes ; then - -- cat >>confdefs.h <<EOF --#define $cf_result 1 -+cat >>confdefs.h <<\EOF -+#define NO_LEAKS 1 -+EOF -+ -+cat >>confdefs.h <<\EOF -+#define YY_NO_LEAKS 1 - EOF - -- fi - fi - --echo "$as_me:14928: checking for data boolfnames declaration in ${cf_cv_ncurses_header:-curses.h}" >&5 --echo $ECHO_N "checking for data boolfnames declaration in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6 -+LD_RPATH_OPT= -+echo "$as_me:15807: checking for an rpath option" >&5 -+echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6 -+case $cf_cv_system_name in #(vi -+irix*) #(vi -+ if test "$GCC" = yes; then -+ LD_RPATH_OPT="-Wl,-rpath," -+ else -+ LD_RPATH_OPT="-rpath " -+ fi -+ ;; -+linux*|gnu*|k*bsd*-gnu) #(vi -+ LD_RPATH_OPT="-Wl,-rpath," -+ ;; -+openbsd[2-9].*|mirbsd*) #(vi -+ LD_RPATH_OPT="-Wl,-rpath," -+ ;; -+dragonfly*|freebsd*) #(vi -+ LD_RPATH_OPT="-rpath " -+ ;; -+netbsd*) #(vi -+ LD_RPATH_OPT="-Wl,-rpath," -+ ;; -+osf*|mls+*) #(vi -+ LD_RPATH_OPT="-rpath " -+ ;; -+solaris2*) #(vi -+ LD_RPATH_OPT="-R" -+ ;; -+*) -+ ;; -+esac -+echo "$as_me:15838: result: $LD_RPATH_OPT" >&5 -+echo "${ECHO_T}$LD_RPATH_OPT" >&6 - --cat >conftest.$ac_ext <<_ACEOF --#line 14932 "configure" -+case "x$LD_RPATH_OPT" in #(vi -+x-R*) -+ echo "$as_me:15843: checking if we need a space after rpath option" >&5 -+echo $ECHO_N "checking if we need a space after rpath option... $ECHO_C" >&6 -+ cf_save_LIBS="$LIBS" -+ LIBS="${LD_RPATH_OPT}$libdir $LIBS" -+ cat >conftest.$ac_ext <<_ACEOF -+#line 15848 "configure" - #include "confdefs.h" - --#ifdef HAVE_XCURSES --#include <xcurses.h> --char * XCursesProgramName = "test"; --#else --#include <${cf_cv_ncurses_header:-curses.h}> --#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) --#include <ncursesw/term.h> --#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) --#include <ncurses/term.h> --#elif defined(HAVE_TERM_H) --#include <term.h> --#endif --#endif -- - int - main () - { - --void *foo = &(boolfnames) -- - ; - return 0; - } - _ACEOF --rm -f conftest.$ac_objext --if { (eval echo "$as_me:14960: \"$ac_compile\"") >&5 -- (eval $ac_compile) 2>&5 -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (eval echo "$as_me:15860: \"$ac_link\"") >&5 -+ (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:14963: \$? = $ac_status" >&5 -+ echo "$as_me:15863: \$? = $ac_status" >&5 - (exit $ac_status); } && -- { ac_try='test -s conftest.$ac_objext' -- { (eval echo "$as_me:14966: \"$ac_try\"") >&5 -+ { ac_try='test -s conftest$ac_exeext' -+ { (eval echo "$as_me:15866: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:14969: \$? = $ac_status" >&5 -+ echo "$as_me:15869: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_result=yes -+ cf_rpath_space=no - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_result=no -+cf_rpath_space=yes - fi --rm -f conftest.$ac_objext conftest.$ac_ext --echo "$as_me:14978: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 -+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -+ LIBS="$cf_save_LIBS" -+ echo "$as_me:15879: result: $cf_rpath_space" >&5 -+echo "${ECHO_T}$cf_rpath_space" >&6 -+ test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT " -+ ;; -+esac - --if test $cf_result = yes ; then -+echo "$as_me:15885: checking if rpath-hack should be disabled" >&5 -+echo $ECHO_N "checking if rpath-hack should be disabled... $ECHO_C" >&6 - --cf_result=`echo "have_curses_data_boolfnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+# Check whether --enable-rpath-hack or --disable-rpath-hack was given. -+if test "${enable_rpath_hack+set}" = set; then -+ enableval="$enable_rpath_hack" -+ test "$enableval" != no && enableval=yes -+ if test "$enableval" != "yes" ; then -+ cf_disable_rpath_hack=yes -+ else -+ cf_disable_rpath_hack=no -+ fi -+else -+ enableval=yes -+ cf_disable_rpath_hack=no - -- cat >>confdefs.h <<EOF --#define $cf_result 1 --EOF -+fi; -+echo "$as_me:15902: result: $cf_disable_rpath_hack" >&5 -+echo "${ECHO_T}$cf_disable_rpath_hack" >&6 -+if test "$cf_disable_rpath_hack" = no ; then -+ -+echo "$as_me:15906: checking for updated LDFLAGS" >&5 -+echo $ECHO_N "checking for updated LDFLAGS... $ECHO_C" >&6 -+if test -n "$LD_RPATH_OPT" ; then -+ echo "$as_me:15909: result: maybe" >&5 -+echo "${ECHO_T}maybe" >&6 - -+ for ac_prog in ldd -+do -+ # Extract the first word of "$ac_prog", so it can be a program name with args. -+set dummy $ac_prog; ac_word=$2 -+echo "$as_me:15916: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_cf_ldd_prog+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- echo "$as_me:14990: checking for data boolfnames in library" >&5 --echo $ECHO_N "checking for data boolfnames in library... $ECHO_C" >&6 -- # BSD linkers insist on making weak linkage, but resolve at runtime. -- if test "$cross_compiling" = yes; then -+ if test -n "$cf_ldd_prog"; then -+ ac_cv_prog_cf_ldd_prog="$cf_ldd_prog" # Let the user override the test. -+else -+ ac_save_IFS=$IFS; IFS=$ac_path_separator -+ac_dummy="$PATH" -+for ac_dir in $ac_dummy; do -+ IFS=$ac_save_IFS -+ test -z "$ac_dir" && ac_dir=. -+ $as_executable_p "$ac_dir/$ac_word" || continue -+ac_cv_prog_cf_ldd_prog="$ac_prog" -+echo "$as_me:15931: found $ac_dir/$ac_word" >&5 -+break -+done - -- # cross-compiling -- cat >conftest.$ac_ext <<_ACEOF --#line 14997 "configure" --#include "confdefs.h" -+fi -+fi -+cf_ldd_prog=$ac_cv_prog_cf_ldd_prog -+if test -n "$cf_ldd_prog"; then -+ echo "$as_me:15939: result: $cf_ldd_prog" >&5 -+echo "${ECHO_T}$cf_ldd_prog" >&6 -+else -+ echo "$as_me:15942: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi - --#ifdef HAVE_XCURSES --#include <xcurses.h> --char * XCursesProgramName = "test"; --#else --#include <${cf_cv_ncurses_header:-curses.h}> --#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) --#include <ncursesw/term.h> --#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) --#include <ncurses/term.h> --#elif defined(HAVE_TERM_H) --#include <term.h> --#endif --#endif -+ test -n "$cf_ldd_prog" && break -+done -+test -n "$cf_ldd_prog" || cf_ldd_prog="no" - --extern char boolfnames; -+ cf_rpath_list="/usr/lib /lib" -+ if test "$cf_ldd_prog" != no -+ then -+ cf_rpath_oops= -+ -+cat >conftest.$ac_ext <<_ACEOF -+#line 15956 "configure" -+#include "confdefs.h" -+#include <stdio.h> - int - main () - { -- -- do { -- void *foo = &(boolfnames); -- ${cf_cv_main_return:-return}(foo == 0); -- } while (0) -- -+printf("Hello"); - ; - return 0; - } - _ACEOF - rm -f conftest.$ac_objext conftest$ac_exeext --if { (eval echo "$as_me:15029: \"$ac_link\"") >&5 -+if { (eval echo "$as_me:15968: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? -- echo "$as_me:15032: \$? = $ac_status" >&5 -+ echo "$as_me:15971: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' -- { (eval echo "$as_me:15035: \"$ac_try\"") >&5 -+ { (eval echo "$as_me:15974: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? -- echo "$as_me:15038: \$? = $ac_status" >&5 -+ echo "$as_me:15977: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then -- cf_result=yes -+ cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort | uniq` -+ cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[ ]/%/%' -e 's%/[^/][^/]*$%%' |sort | uniq` - else - echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 --cf_result=no - fi - rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - --else -- cat >conftest.$ac_ext <<_ACEOF --#line 15050 "configure" --#include "confdefs.h" -+ # If we passed the link-test, but get a "not found" on a given library, -+ # this could be due to inept reconfiguration of gcc to make it only -+ # partly honor /usr/local/lib (or whatever). Sometimes this behavior -+ # is intentional, e.g., installing gcc in /usr/bin and suppressing the -+ # /usr/local libraries. -+ if test -n "$cf_rpath_oops" -+ then -+ for cf_rpath_src in $cf_rpath_oops -+ do -+ for cf_rpath_dir in \ -+ /usr/local \ -+ /usr/pkg \ -+ /opt/sfw -+ do -+ if test -f $cf_rpath_dir/lib/$cf_rpath_src -+ then -+ test -n "$verbose" && echo " ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src" 1>&6 -+ -+echo "${as_me:-configure}:16005: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5 -+ -+ LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib" -+ break -+ fi -+ done -+ done -+ fi -+ fi - --#ifdef HAVE_XCURSES --#include <xcurses.h> --char * XCursesProgramName = "test"; --#else --#include <${cf_cv_ncurses_header:-curses.h}> --#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) --#include <ncursesw/term.h> --#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) --#include <ncurses/term.h> --#elif defined(HAVE_TERM_H) --#include <term.h> --#endif --#endif -+ test -n "$verbose" && echo " ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6 - --extern char boolfnames; --int main(void) --{ -- void *foo = &(boolfnames); -- ${cf_cv_main_return:-return}(foo == 0); --} --_ACEOF --rm -f conftest$ac_exeext --if { (eval echo "$as_me:15075: \"$ac_link\"") >&5 -- (eval $ac_link) 2>&5 -- ac_status=$? -- echo "$as_me:15078: \$? = $ac_status" >&5 -- (exit $ac_status); } && { ac_try='./conftest$ac_exeext' -- { (eval echo "$as_me:15080: \"$ac_try\"") >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- echo "$as_me:15083: \$? = $ac_status" >&5 -- (exit $ac_status); }; }; then -- cf_result=yes --else -- echo "$as_me: program exited with status $ac_status" >&5 --echo "$as_me: failed program was:" >&5 --cat conftest.$ac_ext >&5 --cf_result=no --fi --rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext --fi -- echo "$as_me:15094: result: $cf_result" >&5 --echo "${ECHO_T}$cf_result" >&6 -- if test $cf_result = yes ; then -+echo "${as_me:-configure}:16017: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5 - --cf_result=`echo "decl_curses_data_boolfnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+test -n "$verbose" && echo " ...checking LDFLAGS $LDFLAGS" 1>&6 - -- cat >>confdefs.h <<EOF --#define $cf_result 1 --EOF -+echo "${as_me:-configure}:16021: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5 -+ -+cf_rpath_dst= -+for cf_rpath_src in $LDFLAGS -+do -+ case $cf_rpath_src in #(vi -+ -L*) #(vi -+ -+ # check if this refers to a directory which we will ignore -+ cf_rpath_skip=no -+ if test -n "$cf_rpath_list" -+ then -+ for cf_rpath_item in $cf_rpath_list -+ do -+ if test "x$cf_rpath_src" = "x-L$cf_rpath_item" -+ then -+ cf_rpath_skip=yes -+ break -+ fi -+ done -+ fi -+ -+ if test "$cf_rpath_skip" = no -+ then -+ # transform the option -+ if test "$LD_RPATH_OPT" = "-R " ; then -+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%-R %"` -+ else -+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%$LD_RPATH_OPT%"` -+ fi -+ -+ # if we have not already added this, add it now -+ cf_rpath_tst=`echo "$EXTRA_LDFLAGS" | sed -e "s%$cf_rpath_tmp %%"` -+ if test "x$cf_rpath_tst" = "x$EXTRA_LDFLAGS" -+ then -+ test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6 -+ -+echo "${as_me:-configure}:16058: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5 -+ -+ EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS" -+ fi -+ fi -+ ;; -+ esac -+ cf_rpath_dst="$cf_rpath_dst $cf_rpath_src" -+done -+LDFLAGS=$cf_rpath_dst -+ -+test -n "$verbose" && echo " ...checked LDFLAGS $LDFLAGS" 1>&6 -+ -+echo "${as_me:-configure}:16071: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5 -+ -+test -n "$verbose" && echo " ...checking LIBS $LIBS" 1>&6 -+ -+echo "${as_me:-configure}:16075: testing ...checking LIBS $LIBS ..." 1>&5 -+ -+cf_rpath_dst= -+for cf_rpath_src in $LIBS -+do -+ case $cf_rpath_src in #(vi -+ -L*) #(vi -+ -+ # check if this refers to a directory which we will ignore -+ cf_rpath_skip=no -+ if test -n "$cf_rpath_list" -+ then -+ for cf_rpath_item in $cf_rpath_list -+ do -+ if test "x$cf_rpath_src" = "x-L$cf_rpath_item" -+ then -+ cf_rpath_skip=yes -+ break -+ fi -+ done -+ fi -+ -+ if test "$cf_rpath_skip" = no -+ then -+ # transform the option -+ if test "$LD_RPATH_OPT" = "-R " ; then -+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%-R %"` -+ else -+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%$LD_RPATH_OPT%"` -+ fi -+ -+ # if we have not already added this, add it now -+ cf_rpath_tst=`echo "$EXTRA_LDFLAGS" | sed -e "s%$cf_rpath_tmp %%"` -+ if test "x$cf_rpath_tst" = "x$EXTRA_LDFLAGS" -+ then -+ test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6 -+ -+echo "${as_me:-configure}:16112: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5 -+ -+ EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS" -+ fi -+ fi -+ ;; -+ esac -+ cf_rpath_dst="$cf_rpath_dst $cf_rpath_src" -+done -+LIBS=$cf_rpath_dst -+ -+test -n "$verbose" && echo " ...checked LIBS $LIBS" 1>&6 -+ -+echo "${as_me:-configure}:16125: testing ...checked LIBS $LIBS ..." 1>&5 -+ -+ test -n "$verbose" && echo " ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6 -+ -+echo "${as_me:-configure}:16129: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5 -+ -+else -+ echo "$as_me:16132: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi - -- fi - fi - - TEST_ARGS="$LIBS" -@@ -15188,7 +16219,7 @@ - : ${CONFIG_STATUS=./config.status} - ac_clean_files_save=$ac_clean_files - ac_clean_files="$ac_clean_files $CONFIG_STATUS" --{ echo "$as_me:15191: creating $CONFIG_STATUS" >&5 -+{ echo "$as_me:16222: creating $CONFIG_STATUS" >&5 - echo "$as_me: creating $CONFIG_STATUS" >&6;} - cat >$CONFIG_STATUS <<_ACEOF - #! $SHELL -@@ -15320,7 +16351,7 @@ - cat >>$CONFIG_STATUS <<EOF - ac_cs_version="\\ - config.status --configured by $0, generated by GNU Autoconf 2.52.20101002, -+configured by $0, generated by GNU Autoconf 2.52.20121002, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - - Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 -@@ -15364,7 +16395,7 @@ - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header -- { { echo "$as_me:15367: error: ambiguous option: $1 -+ { { echo "$as_me:16398: 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;} -@@ -15383,7 +16414,7 @@ - ac_need_defaults=false;; - - # This is an error. -- -*) { { echo "$as_me:15386: error: unrecognized option: $1 -+ -*) { { echo "$as_me:16417: 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;} -@@ -15402,7 +16433,7 @@ - ## Running config.status. ## - ## ----------------------- ## - --This file was extended by $as_me 2.52.20101002, executed with -+This file was extended by $as_me 2.52.20121002, executed with - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS -@@ -15419,7 +16450,9 @@ - # - - AWK="$AWK" -+ECHO_CC="$ECHO_CC" - ECHO_LD="$ECHO_LD" -+SHOW_CC="$SHOW_LD" - - EOF - -@@ -15431,7 +16464,7 @@ - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;; - "ncurses_cfg.h" ) CONFIG_HEADERS="$CONFIG_HEADERS ncurses_cfg.h:ncurses_tst.hin" ;; -- *) { { echo "$as_me:15434: error: invalid argument: $ac_config_target" >&5 -+ *) { { echo "$as_me:16467: error: invalid argument: $ac_config_target" >&5 - echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -@@ -15490,6 +16523,7 @@ - s,@bindir@,$bindir,;t t - s,@sbindir@,$sbindir,;t t - s,@libexecdir@,$libexecdir,;t t -+s,@datarootdir@,$datarootdir,;t t - s,@datadir@,$datadir,;t t - s,@sysconfdir@,$sysconfdir,;t t - s,@sharedstatedir@,$sharedstatedir,;t t -@@ -15529,6 +16563,7 @@ - s,@ac_ct_CC@,$ac_ct_CC,;t t - s,@EXEEXT@,$EXEEXT,;t t - s,@OBJEXT@,$OBJEXT,;t t -+s,@EXTRA_CPPFLAGS@,$EXTRA_CPPFLAGS,;t t - s,@CPP@,$CPP,;t t - s,@AWK@,$AWK,;t t - s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -@@ -15541,6 +16576,7 @@ - s,@MAKE_LOWER_TAGS@,$MAKE_LOWER_TAGS,;t t - s,@MAKE_UPPER_TAGS@,$MAKE_UPPER_TAGS,;t t - s,@MATH_LIB@,$MATH_LIB,;t t -+s,@top_builddir@,$top_builddir,;t t - s,@CC_G_OPT@,$CC_G_OPT,;t t - s,@CC_SHARED_OPTS@,$CC_SHARED_OPTS,;t t - s,@DFT_DEP_SUFFIX@,$DFT_DEP_SUFFIX,;t t -@@ -15561,25 +16597,30 @@ - s,@TEST_ARGS@,$TEST_ARGS,;t t - s,@TEST_DEPS@,$TEST_DEPS,;t t - s,@TEST_LIBS@,$TEST_LIBS,;t t --s,@TINFO_ARGS@,$TINFO_ARGS,;t t -+s,@TINFO_LDFLAGS@,$TINFO_LDFLAGS,;t t -+s,@TINFO_LIBS@,$TINFO_LIBS,;t t - s,@cf_cv_abi_version@,$cf_cv_abi_version,;t t - s,@cf_cv_rel_version@,$cf_cv_rel_version,;t t --s,@EXTRA_CPPFLAGS@,$EXTRA_CPPFLAGS,;t t -+s,@includesubdir@,$includesubdir,;t t -+s,@PKG_CONFIG@,$PKG_CONFIG,;t t -+s,@ac_pt_PKG_CONFIG@,$ac_pt_PKG_CONFIG,;t t - s,@ECHO_LT@,$ECHO_LT,;t t - s,@ECHO_LD@,$ECHO_LD,;t t - s,@RULE_CC@,$RULE_CC,;t t - s,@SHOW_CC@,$SHOW_CC,;t t - s,@ECHO_CC@,$ECHO_CC,;t t --s,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t -+s,@NCURSES_WRAP_PREFIX@,$NCURSES_WRAP_PREFIX,;t t - s,@NCURSES_CONFIG@,$NCURSES_CONFIG,;t t --s,@PKG_CONFIG@,$PKG_CONFIG,;t t --s,@ac_pt_PKG_CONFIG@,$ac_pt_PKG_CONFIG,;t t -+s,@ac_ct_NCURSES_CONFIG@,$ac_ct_NCURSES_CONFIG,;t t - s,@X_CFLAGS@,$X_CFLAGS,;t t - s,@X_PRE_LIBS@,$X_PRE_LIBS,;t t - s,@X_LIBS@,$X_LIBS,;t t - s,@X_EXTRA_LIBS@,$X_EXTRA_LIBS,;t t - s,@XCURSES_CONFIG@,$XCURSES_CONFIG,;t t --s,@NCURSES_WRAP_PREFIX@,$NCURSES_WRAP_PREFIX,;t t -+s,@ac_ct_XCURSES_CONFIG@,$ac_ct_XCURSES_CONFIG,;t t -+s,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t -+s,@cf_ldd_prog@,$cf_ldd_prog,;t t -+s,@EXTRA_LDFLAGS@,$EXTRA_LDFLAGS,;t t - CEOF - - EOF -@@ -15694,7 +16735,7 @@ - esac - - if test x"$ac_file" != x-; then -- { echo "$as_me:15697: creating $ac_file" >&5 -+ { echo "$as_me:16738: creating $ac_file" >&5 - echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi -@@ -15712,7 +16753,7 @@ - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) -- test -f "$f" || { { echo "$as_me:15715: error: cannot find input file: $f" >&5 -+ test -f "$f" || { { echo "$as_me:16756: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo $f;; -@@ -15725,13 +16766,45 @@ - echo $srcdir/$f - else - # /dev/null tree -- { { echo "$as_me:15728: error: cannot find input file: $f" >&5 -+ { { echo "$as_me:16769: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - EOF -+cat >>$CONFIG_STATUS <<\EOF -+ ac_warn_datarootdir=no -+ if test x"$ac_file" != x-; then -+ for ac_item in $ac_file_inputs -+ do -+ ac_seen=`grep '@\(datadir\|mandir\|infodir\)@' $ac_item` -+ if test -n "$ac_seen"; then -+ ac_used=`grep '@datarootdir@' $ac_item` -+ if test -z "$ac_used"; then -+ { echo "$as_me:16785: 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;} -+ ac_warn_datarootdir=yes -+ fi -+ fi -+ ac_seen=`grep '${datarootdir}' $ac_item` -+ if test -n "$ac_seen"; then -+ { echo "$as_me:16794: 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;} -+ ac_warn_datarootdir=yes -+ fi -+ done -+ fi -+ -+if test "x$ac_warn_datarootdir" = xyes; then -+ ac_sed_cmds="$ac_sed_cmds | sed -e 's,@datarootdir@,\${prefix}/share,g' -e 's,\${datarootdir},\${prefix}/share,g'" -+fi -+ -+EOF - cat >>$CONFIG_STATUS <<EOF - sed "$ac_vpsub - $extrasub -@@ -15746,11 +16819,35 @@ - " $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then -- mv $tmp/out $ac_file -+ cp $tmp/out $ac_file -+ -+ for ac_name in prefix exec_prefix datarootdir -+ do -+ ac_seen=`fgrep -n '${'$ac_name'[:=].*}' $ac_file` -+ if test -n "$ac_seen"; then -+ 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:16831: 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;} -+ fi -+ fi -+ done -+ egrep -n '@[a-z_][a-z_0-9]+@' $ac_file >$tmp/out -+ 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:16842: WARNING: Some variables may not be substituted: -+$ac_seen" >&5 -+echo "$as_me: WARNING: Some variables may not be substituted: -+$ac_seen" >&2;} -+ fi - else - cat $tmp/out -- rm -f $tmp/out - fi -+ rm -f $tmp/out - - done - EOF -@@ -15791,7 +16888,7 @@ - * ) ac_file_in=$ac_file.in ;; - esac - -- test x"$ac_file" != x- && { echo "$as_me:15794: creating $ac_file" >&5 -+ test x"$ac_file" != x- && { echo "$as_me:16891: creating $ac_file" >&5 - echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the -@@ -15802,7 +16899,7 @@ - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) -- test -f "$f" || { { echo "$as_me:15805: error: cannot find input file: $f" >&5 -+ test -f "$f" || { { echo "$as_me:16902: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo $f;; -@@ -15815,7 +16912,7 @@ - echo $srcdir/$f - else - # /dev/null tree -- { { echo "$as_me:15818: error: cannot find input file: $f" >&5 -+ { { echo "$as_me:16915: error: cannot find input file: $f" >&5 - echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; -@@ -15873,7 +16970,7 @@ - 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:15876: $ac_file is unchanged" >&5 -+ { echo "$as_me:16973: $ac_file is unchanged" >&5 - echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ -@@ -15949,7 +17046,8 @@ - \$(MODEL)/$N.o : \$(srcdir)/$N.c \\ - \$(srcdir)/test.priv.h \\ - ncurses_cfg.h -- @echo compiling $N; \$(CC) -c \$(CFLAGS_DEFAULT) \$(srcdir)/$N.c -+ $SHOW_CC -+ $ECHO_CC\$(CC) -c \$(CFLAGS_DEFAULT) \$(srcdir)/$N.c - TEST_EOF - done - -diff -Naur ncurses-5.9/test/configure.in ncurses-5.9.patch/test/configure.in ---- ncurses-5.9/test/configure.in 2011-03-22 10:15:08.000000000 +0100 -+++ ncurses-5.9.patch/test/configure.in 2014-09-01 16:33:22.534792419 +0200 -@@ -1,5 +1,5 @@ - dnl*************************************************************************** --dnl Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+dnl Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - dnl * - dnl Permission is hereby granted, free of charge, to any person obtaining a * - dnl copy of this software and associated documentation files (the * -@@ -28,7 +28,7 @@ - dnl - dnl Author: Thomas E. Dickey 1996, etc. - dnl --dnl $Id: configure.in,v 1.90 2011/03/22 09:15:08 tom Exp $ -+dnl $Id: configure.in,v 1.113 2013/10/19 21:03:17 tom Exp $ - dnl This is a simple configuration-script for the ncurses test programs that - dnl allows the test-directory to be separately configured against a reference - dnl system (i.e., sysvr4 curses) -@@ -38,7 +38,7 @@ - dnl - dnl See http://invisible-island.net/autoconf/ for additional information. - dnl --------------------------------------------------------------------------- --AC_PREREQ(2.13.20020210) -+AC_PREREQ(2.52.20030208) - AC_INIT(ncurses.c) - AC_CONFIG_HEADER(ncurses_cfg.h:ncurses_tst.hin) - -@@ -49,17 +49,18 @@ - AC_ARG_PROGRAM - - AC_PROG_MAKE_SET --AC_PROG_CC -+CF_PROG_CC - AC_PROG_CPP - AC_PROG_AWK - CF_PROG_INSTALL - CF_PROG_LINT - CF_MAKE_TAGS - --CF_MATH_LIB(MATH_LIB,sin(x)) -+CF_MATH_LIB(MATH_LIB,pow(sin(x),x)) - AC_SUBST(MATH_LIB) - - dnl Things that we don't need (or must override) if we're not building ncurses -+CF_TOP_BUILDDIR - CC_G_OPT="-g" AC_SUBST(CC_G_OPT) - CC_SHARED_OPTS=unknown AC_SUBST(CC_SHARED_OPTS) - CPPFLAGS="$CPPFLAGS" AC_SUBST(CPPFLAGS) -@@ -81,9 +82,11 @@ - TEST_ARGS="" AC_SUBST(TEST_ARGS) - TEST_DEPS="" AC_SUBST(TEST_DEPS) - TEST_LIBS="" AC_SUBST(TEST_LIBS) --TINFO_ARGS='$(LIBS_CURSES)' AC_SUBST(TINFO_ARGS) -+TINFO_LDFLAGS='' AC_SUBST(TINFO_LDFLAGS) -+TINFO_LIBS='$(LIBS_CURSES)' AC_SUBST(TINFO_LIBS) - cf_cv_abi_version="" AC_SUBST(cf_cv_abi_version) - cf_cv_rel_version="" AC_SUBST(cf_cv_rel_version) -+includesubdir="" AC_SUBST(includesubdir) - - cf_cv_screen=curses - cf_cv_libtype= -@@ -91,55 +94,38 @@ - AC_EXEEXT - AC_OBJEXT - --CF_ANSI_CC_REQD - CF_GCC_ATTRIBUTES - CF_XOPEN_SOURCE --AC_C_CONST - CF_SIG_ATOMIC_T - -+dnl --------------------------------------------------------------------------- -+CF_HELP_MESSAGE(General Options:) -+CF_PKG_CONFIG - CF_DISABLE_ECHO --CF_ENABLE_WARNINGS - --CF_DISABLE_LEAKS --CF_WITH_CURSES_DIR -+dnl --------------------------------------------------------------------------- -+CF_HELP_MESSAGE(Curses Version-dependent Options:) -+CF_NCURSES_WRAP_PREFIX - --dnl SunOS 4.x --AC_ARG_WITH(5lib, -- [ --with-5lib use SunOS sysv-libraries], -- [LIBS="-L/usr/5lib $LIBS" -- CPPFLAGS="$CPPFLAGS -I/usr/5include"]) -+AC_MSG_CHECKING(if you want to check for wide-character functions) -+CF_ARG_DISABLE(widec, -+ [ --disable-widec disable checks for wide-character functions], -+ cf_enable_widec=no, -+ cf_enable_widec=yes, -+ yes) -+AC_MSG_RESULT($cf_enable_widec) - - dnl --------------------------------------------------------------------------- --dnl NcursesW, installed in conventional location --AC_ARG_WITH(ncursesw, -- [ --with-ncursesw use wide ncurses-libraries (installed)], -- [cf_cv_screen=ncursesw],[ -- --dnl Ncurses, installed in conventional location --AC_ARG_WITH(ncurses, -- [ --with-ncurses use ncurses-libraries (installed)], -- [cf_cv_screen=ncurses],[ -- --AC_ARG_WITH(pdcurses, -- [ --with-pdcurses compile/link with pdcurses X11 library], -- [cf_cv_screen=pdcurses])])]) -+CF_HELP_MESSAGE(Curses Version-dependent Options:) -+CF_WITH_NCURSES_ETC - - case $cf_cv_screen in --curses) -- CF_CURSES_CONFIG -+curses|curses_*) - CF_NETBSD_FORM_H - CF_NETBSD_MENU_H - ;; --ncurses) -- CF_NCURSES_CONFIG -- ;; - ncursesw) - cf_cv_libtype=w -- CF_UTF8_LIB -- CF_NCURSES_CONFIG(ncursesw) -- ;; --pdcurses) #(vi -- CF_PDCURSES_X11 - ;; - esac - -@@ -153,9 +139,12 @@ - ;; - *) - # look for curses-related libraries -- AC_CHECK_LIB(panel$cf_cv_libtype,new_panel) -- AC_CHECK_LIB(menu$cf_cv_libtype,menu_driver) -- AC_CHECK_LIB(form$cf_cv_libtype,form_driver) -+ : ${cf_panel_lib:=panel} -+ : ${cf_menu_lib:=menu} -+ : ${cf_form_lib:=form} -+ AC_CHECK_LIB($cf_panel_lib$cf_cv_libtype,new_panel) -+ AC_CHECK_LIB($cf_menu_lib$cf_cv_libtype,menu_driver) -+ AC_CHECK_LIB($cf_form_lib$cf_cv_libtype,form_driver) - - # look for curses-related headers - AC_CHECK_HEADERS( \ -@@ -169,8 +158,6 @@ - ;; - esac - --AC_TYPE_SIGNAL -- - AC_STDC_HEADERS - AC_HEADER_TIME - AC_CHECK_HEADERS( \ -@@ -185,20 +172,27 @@ - unistd.h \ - ) - -+CF_GETOPT_HEADER -+ - AC_CHECK_FUNCS( \ - gettimeofday \ -+) -+ -+if test "$cf_enable_widec" = yes; then -+AC_CHECK_FUNCS( \ - mblen \ - mbrlen \ - mbrtowc \ - mbsrtowcs \ - mbstowcs \ - mbtowc \ --strdup \ - wcsrtombs \ - wcstombs \ - ) -+fi - - CF_CURSES_FUNCS( \ -+assume_default_colors \ - chgat \ - color_set \ - filter \ -@@ -225,61 +219,104 @@ - tigetstr \ - typeahead \ - use_default_colors \ --vw_printw \ -+use_screen \ -+use_window \ - vsscanf \ -+vw_printw \ - wchgat \ - winsstr \ - wresize \ - wsyncdown \ - ) - -+CF_TPUTS_PROTO - CF_NCURSES_EXT_FUNCS - --AC_CACHE_CHECK(for wide-character functions,cf_cv_widechar_funcs,[ --AC_TRY_LINK([ -+if test "$cf_enable_widec" = yes -+then -+ # workaround for systems with ncurses before 20111029, due to change of -+ # feature test macro from _XPG5 to _XOPEN_SOURCE -+ if test -n "$cf_cv_ncurses_version" && test "x$cf_cv_ncurses_version" != xno -+ then -+ cf_define_xpg5=no -+ AC_MSG_CHECKING(if _XPG5 should be defined to enable wide-characters) -+ -+ AC_TRY_COMPILE([ -+#include <${cf_cv_ncurses_header:-curses.h}>], -+ [int x = _XPG5],, -+ [cf_save_cppflags="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XPG5" -+ AC_TRY_COMPILE([ -+#include <${cf_cv_ncurses_header:-curses.h}>], -+ [int x = _XPG5], -+ [cf_define_xpg5=yes]) -+ CPPFLAGS="$cf_save_cppflags"]) -+ AC_MSG_RESULT($cf_define_xpg5) -+ -+ if test "$cf_define_xpg5" = yes -+ then -+ CPPFLAGS="$CPPFLAGS -D_XPG5" -+ fi -+ fi -+ -+ AC_CACHE_CHECK(for wide-character functions,cf_cv_widechar_funcs,[ -+ AC_TRY_LINK([ - #include <${cf_cv_ncurses_header:-curses.h}>], --[ -- static wchar_t src_wchar[2]; -- static cchar_t dst_cchar; -- setcchar(&dst_cchar, src_wchar, A_NORMAL, 0, (void *) 0); -- ], -- [cf_cv_widechar_funcs=yes], -- [cf_cv_widechar_funcs=no]) --]) --if test "$cf_cv_widechar_funcs" != no ; then -- AC_DEFINE(USE_WIDEC_SUPPORT,1) -+ [ -+ static wchar_t src_wchar[2]; -+ static cchar_t dst_cchar; -+ setcchar(&dst_cchar, src_wchar, A_NORMAL, 0, (void *) 0); -+ ], -+ [cf_cv_widechar_funcs=yes], -+ [cf_cv_widechar_funcs=no]) -+ ]) -+ if test "$cf_cv_widechar_funcs" != no ; then -+ AC_DEFINE(USE_WIDEC_SUPPORT,1,[Define to 1 to enable wide-character support in (n)curses]) -+ else -+ AC_DEFINE(USE_WIDEC_SUPPORT,0) -+ fi - else - AC_DEFINE(USE_WIDEC_SUPPORT,0) - fi - --AC_FUNC_VFORK - CF_SYS_TIME_SELECT - CF_FUNC_CURSES_VERSION --CF_CURSES_ACS_MAP --CF_CURSES_WACS_MAP --CF_CURSES_WACS_SYMBOLS -- --CF_CURSES_CHECK_TYPE(attr_t,long) -- --CF_WCHAR_TYPE(mbstate_t, NCURSES_MBSTATE_T, NCURSES_OK_MBSTATE_T) --CF_WCHAR_TYPE(wchar_t, NCURSES_WCHAR_T, NCURSES_OK_WCHAR_T) --CF_WCHAR_TYPE(wint_t, NCURSES_WINT_T, NCURSES_OK_WINT_T) - --if test "$NCURSES_OK_MBSTATE_T" = 0 ; then -- CF_CURSES_CHECK_TYPE(mbstate_t,long) -+CF_CURSES_ACS_MAP -+if test "$cf_enable_widec" = yes; then -+ CF_CURSES_WACS_MAP -+ CF_CURSES_WACS_SYMBOLS - fi - --if test "$NCURSES_OK_WCHAR_T" = 0 ; then -- CF_CURSES_CHECK_TYPE(wchar_t,long) --fi -+CF_CURSES_CHECK_TYPE(attr_t,long) - --if test "$NCURSES_OK_WINT_T" = 0 ; then -- CF_CURSES_CHECK_TYPE(wint_t,long) -+if test "$cf_enable_widec" = yes; then -+ CF_WCHAR_TYPE(mbstate_t, NCURSES_MBSTATE_T, NCURSES_OK_MBSTATE_T) -+ CF_WCHAR_TYPE(wchar_t, NCURSES_WCHAR_T, NCURSES_OK_WCHAR_T) -+ CF_WCHAR_TYPE(wint_t, NCURSES_WINT_T, NCURSES_OK_WINT_T) -+ -+ if test "$NCURSES_OK_MBSTATE_T" = 0 ; then -+ CF_CURSES_CHECK_TYPE(mbstate_t,long) -+ fi -+ -+ if test "$NCURSES_OK_WCHAR_T" = 0 ; then -+ CF_CURSES_CHECK_TYPE(wchar_t,long) -+ fi -+ -+ if test "$NCURSES_OK_WINT_T" = 0 ; then -+ CF_CURSES_CHECK_TYPE(wint_t,long) -+ fi - fi - - CF_CURSES_CHECK_DATA(boolnames) - CF_CURSES_CHECK_DATA(boolfnames) - -+dnl --------------------------------------------------------------------------- -+CF_HELP_MESSAGE(Testing/development Options:) -+CF_ENABLE_WARNINGS -+CF_DISABLE_LEAKS -+CF_DISABLE_RPATH_HACK -+ - TEST_ARGS="$LIBS" - LIBS= - -@@ -302,7 +339,8 @@ - \$(MODEL)/$N.o : \$(srcdir)/$N.c \\ - \$(srcdir)/test.priv.h \\ - ncurses_cfg.h -- @echo compiling $N; \$(CC) -c \$(CFLAGS_DEFAULT) \$(srcdir)/$N.c -+ $SHOW_CC -+ $ECHO_CC\$(CC) -c \$(CFLAGS_DEFAULT) \$(srcdir)/$N.c - TEST_EOF - done - -@@ -317,5 +355,7 @@ - fi - ],[ - AWK="$AWK" -+ECHO_CC="$ECHO_CC" - ECHO_LD="$ECHO_LD" -+SHOW_CC="$SHOW_LD" - ],cat) -diff -Naur ncurses-5.9/test/demo_defkey.c ncurses-5.9.patch/test/demo_defkey.c ---- ncurses-5.9/test/demo_defkey.c 2010-11-14 01:59:35.000000000 +0100 -+++ ncurses-5.9.patch/test/demo_defkey.c 2014-09-01 16:33:22.534792419 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: demo_defkey.c,v 1.20 2010/11/14 00:59:35 tom Exp $ -+ * $Id: demo_defkey.c,v 1.22 2013/09/28 22:02:17 tom Exp $ - * - * Demonstrate the define_key() function. - * Thomas Dickey - 2002/11/23 -@@ -106,7 +106,7 @@ - for (pass = 0; pass < 2; ++pass) { - for (n = 0; string[n] != '\0'; ++n) { - char temp[80]; -- strcpy(temp, visichar(string[n])); -+ strncpy(temp, visichar(string[n]), sizeof(temp) - 2); - if (pass) - strcat(result, temp); - else -@@ -116,7 +116,7 @@ - result = typeCalloc(char, need); - } - } else { -- result = typeCalloc(char, 1); -+ result = typeCalloc(char, (size_t) 1); - } - return result; - } -@@ -186,9 +186,9 @@ - const char *prefix = 0; - char temp[BUFSIZ]; - -- if (!strncmp(value, "\033[", 2)) { -+ if (!strncmp(value, "\033[", (size_t) 2)) { - prefix = "\033O"; -- } else if (!strncmp(value, "\033O", 2)) { -+ } else if (!strncmp(value, "\033O", (size_t) 2)) { - prefix = "\033["; - } - if (prefix != 0) { -diff -Naur ncurses-5.9/test/demo_forms.c ncurses-5.9.patch/test/demo_forms.c ---- ncurses-5.9/test/demo_forms.c 2011-01-15 19:15:11.000000000 +0100 -+++ ncurses-5.9.patch/test/demo_forms.c 2014-09-01 16:33:22.534792419 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2003-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 2003-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: demo_forms.c,v 1.38 2011/01/15 18:15:11 tom Exp $ -+ * $Id: demo_forms.c,v 1.46 2013/09/28 21:55:54 tom Exp $ - * - * Demonstrate a variety of functions from the form library. - * Thomas Dickey - 2003/4/26 -@@ -70,14 +70,115 @@ - - #include <edit_field.h> - -+typedef struct { -+ char *name; -+ char *value; -+} MY_DATA; -+ -+static MY_DATA *my_data; -+ - static int d_option = 0; - static int j_value = 0; - static int m_value = 0; - static int o_value = 0; - static char *t_value = 0; - -+static void -+failed(const char *s) -+{ -+ perror(s); -+ ExitProgram(EXIT_FAILURE); -+} -+ -+static void -+chomp(char *value) -+{ -+ size_t have = strlen(value); -+ while (have != 0 && (value[have - 1] == '\n' || value[have - 1] == '\r')) { -+ value[--have] = '\0'; -+ } -+} -+ -+static int -+trimmed(const char *value) -+{ -+ int result = (int) strlen(value); -+ while (result > 0 && isspace(UChar(value[result - 1]))) { -+ --result; -+ } -+ return result; -+} -+ -+static char * -+get_data(const char *name) -+{ -+ char *result = t_value; -+ if (my_data != 0) { -+ int n; -+ for (n = 0; my_data[n].name != 0; ++n) { -+ if (!strcmp(name, my_data[n].name)) { -+ result = my_data[n].value; -+ break; -+ } -+ } -+ } -+ return result; -+} -+ -+/* -+ * Read (possibly) multi-line data with name+value pairs. -+ */ -+static void -+read_data(const char *filename) -+{ -+ FILE *fp = fopen(filename, "r"); -+ -+ if (fp != 0) { -+ char buffer[BUFSIZ]; -+ char *colon; -+ int more = 0; -+ int item = 0; -+ -+ my_data = typeCalloc(MY_DATA, (size_t) 100); /* FIXME */ -+ while (fgets(buffer, sizeof(buffer), fp) != 0) { -+ chomp(buffer); -+ if (more) { -+ if (strcmp(buffer, ".")) { -+ char *prior = my_data[more - 1].value; -+ size_t need = strlen(buffer) + 2 + strlen(prior); -+ char *value = typeRealloc(char, need, prior); -+ if (value == 0) -+ failed("realloc"); -+ strcat(value, "\n"); -+ strcat(value, buffer); -+ my_data[more - 1].value = value; -+ } else { -+ more = 0; -+ } -+ } else if (*buffer == '#') { -+ continue; -+ } else if ((colon = strchr(buffer, ':')) != 0) { -+ char *name; -+ char *value; -+ *colon++ = '\0'; -+ name = strdup(buffer); -+ value = strdup(colon); -+ if (name == 0 || value == 0) -+ failed("strdup"); -+ my_data[item].name = name; -+ my_data[item].value = value; -+ more = ++item; -+ } else { -+ failed("expected a colon"); -+ } -+ } -+ } else { -+ failed(filename); -+ } -+} -+ - static FIELD * --make_label(int frow, int fcol, NCURSES_CONST char *label) -+make_label(const char *label, int frow, int fcol) - { - FIELD *f = new_field(1, (int) strlen(label), frow, fcol, 0, 0); - -@@ -92,13 +193,11 @@ - * Define each field with an extra one, for reflecting "actual" text. - */ - static FIELD * --make_field(int frow, int fcol, int rows, int cols) -+make_field(const char *label, int frow, int fcol, int rows, int cols) - { - FIELD *f = new_field(rows, cols, frow, fcol, o_value, 1); - - if (f) { -- FieldAttrs *ptr; -- - set_field_back(f, A_UNDERLINE); - /* - * If -j and -d options are combined, -j loses. It is documented in -@@ -108,7 +207,7 @@ - set_field_just(f, j_value); - if (d_option) { - if (has_colors()) { -- set_field_fore(f, COLOR_PAIR(2)); -+ set_field_fore(f, (chtype) COLOR_PAIR(2)); - set_field_back(f, A_UNDERLINE | COLOR_PAIR(3)); - } else { - set_field_fore(f, A_BOLD); -@@ -121,17 +220,7 @@ - set_max_field(f, m_value); - } - -- /* -- * The userptr is used in edit_field.c's inactive_field(). -- */ -- ptr = (FieldAttrs *) field_userptr(f); -- if (ptr == 0) { -- ptr = typeCalloc(FieldAttrs, 1); -- ptr->background = field_back(f); -- } -- set_field_userptr(f, (void *) ptr); -- if (t_value) -- set_field_buffer(f, 0, t_value); -+ init_edit_field(f, get_data(label)); - } - return (f); - } -@@ -153,10 +242,10 @@ - set_form_sub(f, derwin(w, rows, cols, 1, 2)); - box(w, 0, 0); - keypad(w, TRUE); -- } - -- if (post_form(f) != E_OK) -- wrefresh(w); -+ if (post_form(f) != E_OK) -+ wrefresh(w); -+ } - } - - static void -@@ -257,7 +346,7 @@ - int currow, curcol; - - if (has_colors()) { -- wbkgd(win, COLOR_PAIR(1)); -+ wbkgd(win, (chtype) COLOR_PAIR(1)); - } - werase(win); - form_getyx(form, currow, curcol); -@@ -309,25 +398,28 @@ - } - - waddch(win, ' '); -- (void) wattrset(win, field_fore(field)); -+ (void) wattrset(win, (int) field_fore(field)); - waddstr(win, "fore"); -- wattroff(win, field_fore(field)); -+ wattroff(win, (int) field_fore(field)); - - waddch(win, '/'); - -- (void) wattrset(win, field_back(field)); -+ (void) wattrset(win, (int) field_back(field)); - waddstr(win, "back"); -- wattroff(win, field_back(field)); -+ wattroff(win, (int) field_back(field)); - -- wprintw(win, ", pad '%c'", -- field_pad(field)); -+ wprintw(win, ", pad '%c'", field_pad(field)); - - waddstr(win, "\n"); - for (nbuf = 0; nbuf <= 2; ++nbuf) { - if ((buffer = field_buffer(field, nbuf)) != 0) { - wprintw(win, "buffer %d:", nbuf); - (void) wattrset(win, A_REVERSE); -- waddstr(win, buffer); -+ if (nbuf) { -+ waddnstr(win, buffer, trimmed(buffer)); -+ } else { -+ waddstr(win, buffer); -+ } - wattroff(win, A_REVERSE); - waddstr(win, "\n"); - } -@@ -341,11 +433,12 @@ - { - WINDOW *w; - FORM *form; -- FIELD *f[100]; /* FIXME memset to zero */ -+ FIELD *f[100]; /* will memset to zero */ - int finished = 0, c; - unsigned n = 0; - int pg; - WINDOW *also; -+ const char *fname; - - #ifdef NCURSES_MOUSE_VERSION - mousemask(ALL_MOUSE_EVENTS, (mmask_t *) 0); -@@ -363,66 +456,76 @@ - for (pg = 0; pg < 4; ++pg) { - char label[80]; - sprintf(label, "Sample Form Page %d", pg + 1); -- f[n++] = make_label(0, 15, label); -+ f[n++] = make_label(label, 0, 15); - set_new_page(f[n - 1], TRUE); - - switch (pg) { - default: -- f[n++] = make_label(2, 0, "Last Name"); -- f[n++] = make_field(3, 0, 1, 18); -+ fname = "Last Name"; -+ f[n++] = make_label(fname, 2, 0); -+ f[n++] = make_field(fname, 3, 0, 1, 18); - set_field_type(f[n - 1], TYPE_ALPHA, 1); - -- f[n++] = make_label(2, 20, "First Name"); -- f[n++] = make_field(3, 20, 1, 12); -+ fname = "First Name"; -+ f[n++] = make_label(fname, 2, 20); -+ f[n++] = make_field(fname, 3, 20, 1, 12); - set_field_type(f[n - 1], TYPE_ALPHA, 1); - -- f[n++] = make_label(2, 34, "Middle Name"); -- f[n++] = make_field(3, 34, 1, 12); -+ fname = "Middle Name"; -+ f[n++] = make_label(fname, 2, 34); -+ f[n++] = make_field(fname, 3, 34, 1, 12); - set_field_type(f[n - 1], TYPE_ALPHA, 1); - break; - case 1: -- f[n++] = make_label(2, 0, "Last Name"); -- f[n++] = make_field(3, 0, 1, 18); -+ fname = "Last Name"; -+ f[n++] = make_label(fname, 2, 0); -+ f[n++] = make_field(fname, 3, 0, 1, 18); - set_field_type(f[n - 1], TYPE_ALPHA, 1); - -- f[n++] = make_label(2, 20, "First Name"); -- f[n++] = make_field(3, 20, 1, 12); -+ fname = "First Name"; -+ f[n++] = make_label(fname, 2, 20); -+ f[n++] = make_field(fname, 3, 20, 1, 12); - set_field_type(f[n - 1], TYPE_ALPHA, 1); - -- f[n++] = make_label(2, 34, "MI"); -- f[n++] = make_field(3, 34, 1, 1); -+ fname = "MI"; -+ f[n++] = make_label(fname, 2, 34); -+ f[n++] = make_field(fname, 3, 34, 1, 1); - set_field_pad(f[n - 1], '?'); - set_field_type(f[n - 1], TYPE_ALPHA, 1); - break; - case 2: -- f[n++] = make_label(2, 0, "Host Name"); -- f[n++] = make_field(3, 0, 1, 18); -+ fname = "Host Name"; -+ f[n++] = make_label(fname, 2, 0); -+ f[n++] = make_field(fname, 3, 0, 1, 24); - set_field_type(f[n - 1], TYPE_ALNUM, 1); - - #ifdef NCURSES_VERSION -- f[n++] = make_label(2, 20, "IP Address"); -- f[n++] = make_field(3, 20, 1, 12); -+ fname = "IP Address"; -+ f[n++] = make_label(fname, 2, 26); -+ f[n++] = make_field(fname, 3, 26, 1, 16); - set_field_type(f[n - 1], TYPE_IPV4, 1); - #endif - - break; - - case 3: -- f[n++] = make_label(2, 0, "Four digits"); -- f[n++] = make_field(3, 0, 1, 18); -+ fname = "Four digits"; -+ f[n++] = make_label(fname, 2, 0); -+ f[n++] = make_field(fname, 3, 0, 1, 18); - set_field_type(f[n - 1], TYPE_INTEGER, 4, 0, 0); - -- f[n++] = make_label(2, 20, "Numeric"); -- f[n++] = make_field(3, 20, 1, 12); -+ fname = "Numeric"; -+ f[n++] = make_label(fname, 2, 20); -+ f[n++] = make_field(fname, 3, 20, 1, 12); - set_field_type(f[n - 1], TYPE_NUMERIC, 3, -10000.0, 100000000.0); - - break; - } - -- f[n++] = make_label(5, 0, "Comments"); -- f[n++] = make_field(6, 0, 4, 46); -- set_field_buffer(f[n - 1], 0, "HELLO\nWORLD!"); -- set_field_buffer(f[n - 1], 1, "Hello\nWorld!"); -+ fname = "Comments"; -+ f[n++] = make_label(fname, 5, 0); -+ f[n++] = make_field(fname, 6, 0, 4, 46); -+ init_edit_field(f[n - 1], get_data(fname)); - } - - f[n] = (FIELD *) 0; -@@ -471,7 +574,7 @@ - { - static const char *tbl[] = - { -- "Usage: demo_forms [options]" -+ "Usage: demo_forms [options] [data file]" - ,"" - ," -d make fields dynamic" - ," -j value justify (1=left, 2=center, 3=right)" -@@ -517,6 +620,9 @@ - - } - } -+ while (optind < argc) { -+ read_data(argv[optind++]); -+ } - - initscr(); - cbreak(); -@@ -531,7 +637,7 @@ - init_pair(1, COLOR_WHITE, COLOR_BLUE); - init_pair(2, COLOR_GREEN, COLOR_BLACK); - init_pair(3, COLOR_CYAN, COLOR_BLACK); -- bkgd(COLOR_PAIR(1)); -+ bkgd((chtype) COLOR_PAIR(1)); - refresh(); - } - -@@ -540,6 +646,7 @@ - endwin(); - ExitProgram(EXIT_SUCCESS); - } -+ - #else - int - main(void) -diff -Naur ncurses-5.9/test/demo_forms.txt ncurses-5.9.patch/test/demo_forms.txt ---- ncurses-5.9/test/demo_forms.txt 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/test/demo_forms.txt 2014-09-01 16:33:22.534792419 +0200 -@@ -0,0 +1,20 @@ -+# $Id: demo_forms.txt,v 1.3 2013/06/08 14:10:15 tom Exp $ -+First Name:John -+. -+Middle Name:Don -+. -+MI:D -+. -+Last Name:Smith -+. -+Comments:Hello -+World! -+. -+Host Name:localhost@localdomain -+. -+IP Address:192.168.1.100 -+. -+Four digits:1234 -+. -+Numeric:32768 -+. -diff -Naur ncurses-5.9/test/demo_menus.c ncurses-5.9.patch/test/demo_menus.c ---- ncurses-5.9/test/demo_menus.c 2011-01-15 21:02:47.000000000 +0100 -+++ ncurses-5.9.patch/test/demo_menus.c 2014-09-01 16:33:22.535792421 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2005-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 2005-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: demo_menus.c,v 1.32 2011/01/15 20:02:47 tom Exp $ -+ * $Id: demo_menus.c,v 1.52 2013/09/28 21:55:02 tom Exp $ - * - * Demonstrate a variety of functions from the menu library. - * Thomas Dickey - 2005/4/9 -@@ -38,7 +38,6 @@ - item_opts_off - - item_opts_on - - item_term - --item_userptr - - item_visible - - menu_back - - menu_fore - -@@ -49,22 +48,16 @@ - menu_pad - - menu_request_by_name - - menu_request_name - --menu_sub - - menu_term - - menu_userptr - - set_current_item - --set_item_init - - set_item_opts - --set_item_term - --set_item_userptr - - set_menu_grey - --set_menu_init - - set_menu_items - - set_menu_opts - - set_menu_pad - - set_menu_pattern - - set_menu_spacing - --set_menu_term - - set_menu_userptr - - set_top_row - - top_row - -@@ -103,23 +96,21 @@ - - #define MENU_Y 1 - -+typedef struct { -+ const char *name; -+ void (*func) (int); -+ unsigned mask; -+} MENU_DATA; -+ -+static void call_files(int); -+ - static MENU *mpBanner; - static MENU *mpFile; - static MENU *mpSelect; - --static bool loaded_file = FALSE; -+static WINDOW *status; - --#if !HAVE_STRDUP --#define strdup my_strdup --static char * --strdup(char *s) --{ -- char *p = typeMalloc(char, strlen(s) + 1); -- if (p) -- strcpy(p, s); -- return (p); --} --#endif /* not HAVE_STRDUP */ -+static bool loaded_file = FALSE; - - /* Common function to allow ^T to toggle trace-mode in the middle of a test - * so that trace-files can be made smaller. -@@ -207,6 +198,48 @@ - return result; - } - -+static void -+my_menu_init(MENU * menu) -+{ -+ Trace(("called MenuHook my_menu_init")); -+ mvwprintw(status, 2, 0, "menu_init %p", (void *) menu); -+ wclrtoeol(status); -+ wrefresh(status); -+} -+ -+static void -+my_menu_term(MENU * menu) -+{ -+ Trace(("called MenuHook my_menu_term")); -+ mvwprintw(status, 2, 0, "menu_term %p", (void *) menu); -+ wclrtoeol(status); -+ wrefresh(status); -+} -+ -+static void -+my_item_init(MENU * menu) -+{ -+ ITEM *item = current_item(menu); -+ const char *name = item_name(item); -+ -+ Trace(("called MenuHook my_item_init (%s)", name)); -+ mvwprintw(status, 2, 0, "item_init %s", name); -+ wclrtoeol(status); -+ wrefresh(status); -+} -+ -+static void -+my_item_term(MENU * menu) -+{ -+ ITEM *item = current_item(menu); -+ const char *name = item_name(item); -+ -+ Trace(("called MenuHook my_item_term (%s)", name)); -+ mvwprintw(status, 2, 0, "item_term %s", name); -+ wclrtoeol(status); -+ wrefresh(status); -+} -+ - static MENU * - menu_create(ITEM ** items, int count, int ncols, MenuNo number) - { -@@ -225,8 +258,8 @@ - result = new_menu(items); - - if (has_colors()) { -- set_menu_fore(result, COLOR_PAIR(1)); -- set_menu_back(result, COLOR_PAIR(2)); -+ set_menu_fore(result, (chtype) COLOR_PAIR(1)); -+ set_menu_back(result, (chtype) COLOR_PAIR(2)); - } - - set_menu_format(result, maxrow, maxcol); -@@ -252,6 +285,10 @@ - - post_menu(result); - -+ set_menu_init(result, my_menu_init); -+ set_menu_term(result, my_menu_term); -+ set_item_init(result, my_item_init); -+ set_item_term(result, my_item_term); - return result; - } - -@@ -281,12 +318,15 @@ - free((char *) blob); - } - free(items); -+ items = 0; - } - #ifdef TRACE - if ((count > 0) && (m == mpTrace)) { - ITEM **ip = items; -- while (*ip) -- free(*ip++); -+ if (ip != 0) { -+ while (*ip) -+ free(*ip++); -+ } - } - #endif - } -@@ -305,21 +345,24 @@ - static void - build_file_menu(MenuNo number) - { -- static CONST_MENUS char *labels[] = -+ static MENU_DATA table[] = - { -- "Exit", -- (char *) 0 -+ {"Exit", call_files, 0}, -+ {(char *) 0, 0, 0} - }; -- static ITEM *items[SIZEOF(labels)]; -+ static ITEM *items[SIZEOF(table)]; - - ITEM **ip = items; -- CONST_MENUS char **ap; -+ int n; - -- for (ap = labels; *ap; ap++) -- *ip++ = new_item(*ap, ""); -+ for (n = 0; table[n].name != 0; ++n) { -+ *ip = new_item(table[n].name, ""); -+ set_item_userptr(*ip, &table[n]); -+ ++ip; -+ } - *ip = (ITEM *) 0; - -- mpFile = menu_create(items, SIZEOF(labels) - 1, 1, number); -+ mpFile = menu_create(items, SIZEOF(table) - 1, 1, number); - } - - static int -@@ -331,31 +374,40 @@ - /*****************************************************************************/ - - static void -+call_select(int code) -+{ -+ (void) code; -+ Trace(("Selected item %d", code)); -+} -+ -+static void - build_select_menu(MenuNo number, char *filename) - { -- static CONST_MENUS char *labels[] = -+#define MY_DATA(name) { name, call_select, 0 } -+ static MENU_DATA table[] = - { -- "Lions", -- "Tigers", -- "Bears", -- "(Oh my!)", -- "Newts", -- "Platypi", -- "Lemurs", -- "(Oh really?!)", -- "Leopards", -- "Panthers", -- "Pumas", -- "Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs", -- "Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs, Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs", -- (char *) 0 -+ MY_DATA("Lions"), -+ MY_DATA("Tigers"), -+ MY_DATA("Bears"), -+ MY_DATA("(Oh my!)"), -+ MY_DATA("Newts"), -+ MY_DATA("Platypi"), -+ MY_DATA("Lemurs"), -+ MY_DATA("(Oh really?!)"), -+ MY_DATA("Leopards"), -+ MY_DATA("Panthers"), -+ MY_DATA("Pumas"), -+ MY_DATA("Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs"), -+ MY_DATA("Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs, Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs"), -+ {(char *) 0, 0, 0} - }; - static ITEM **items; - - ITEM **ip; -- CONST_MENUS char **ap = 0; -- CONST_MENUS char **myList = 0; -- unsigned count = 0; -+ MENU_DATA *ap = 0; -+ MENU_DATA *myList = 0; -+ int i; -+ size_t count = 0; - - if (filename != 0) { - struct stat sb; -@@ -365,7 +417,7 @@ - size_t size = (size_t) sb.st_size; - unsigned j, k; - char *blob = typeMalloc(char, size + 1); -- CONST_MENUS char **list = typeCalloc(CONST_MENUS char *, size + 1); -+ MENU_DATA *list = typeCalloc(MENU_DATA, size + 1); - - items = typeCalloc(ITEM *, size + 1); - Trace(("build_select_menu blob=%p, items=%p", -@@ -378,19 +430,19 @@ - bool mark = TRUE; - for (j = k = 0; j < size; ++j) { - if (mark) { -- list[k++] = blob + j; -+ list[k++].name = blob + j; - mark = FALSE; - } - if (blob[j] == '\n') { - blob[j] = '\0'; -- if (k > 0 && *list[k - 1] == '\0') -+ if (k > 0 && *list[k - 1].name == '\0') - --k; - mark = TRUE; - } else if (blob[j] == '\t') { - blob[j] = ' '; /* menu items are printable */ - } - } -- list[k] = 0; -+ list[k].name = 0; - count = k; - ap = myList = list; - } -@@ -398,17 +450,24 @@ - } - loaded_file = TRUE; - } -+ if (ap == 0) -+ free(items); - } - } - if (ap == 0) { -- count = SIZEOF(labels) - 1; -+ count = SIZEOF(table) - 1; - items = typeCalloc(ITEM *, count + 1); -- ap = labels; -+ ap = table; - } - - ip = items; -- while (*ap != 0) -- *ip++ = new_item(*ap++, ""); -+ for (i = 0; ap[i].name != 0; ++i) { -+ ap[i].func = call_select; -+ ap[i].mask = (unsigned) i; -+ *ip = new_item(ap[i].name, ""); -+ set_item_userptr(*ip, &table[i]); -+ ++ip; -+ } - *ip = 0; - - mpSelect = menu_create(items, (int) count, 1, number); -@@ -425,30 +484,36 @@ - /*****************************************************************************/ - - #ifdef TRACE --#define T_TBL(name) { #name, name } --static struct { -- const char *name; -- unsigned mask; --} t_tbl[] = { -+ -+static void -+call_trace(int code) -+{ -+ (void) code; -+ Trace(("Updating trace mask %d", code)); -+} -+ -+#define T_TBL(name) { #name, call_trace, name } -+static MENU_DATA t_tbl[] = -+{ - - T_TBL(TRACE_DISABLE), -- T_TBL(TRACE_TIMES), -- T_TBL(TRACE_TPUTS), -- T_TBL(TRACE_UPDATE), -- T_TBL(TRACE_MOVE), -- T_TBL(TRACE_CHARPUT), -- T_TBL(TRACE_ORDINARY), -- T_TBL(TRACE_CALLS), -- T_TBL(TRACE_VIRTPUT), -- T_TBL(TRACE_IEVENT), -- T_TBL(TRACE_BITS), -- T_TBL(TRACE_ICALLS), -- T_TBL(TRACE_CCALLS), -- T_TBL(TRACE_DATABASE), -- T_TBL(TRACE_ATTRS), -- T_TBL(TRACE_MAXIMUM), -+ T_TBL(TRACE_TIMES), -+ T_TBL(TRACE_TPUTS), -+ T_TBL(TRACE_UPDATE), -+ T_TBL(TRACE_MOVE), -+ T_TBL(TRACE_CHARPUT), -+ T_TBL(TRACE_ORDINARY), -+ T_TBL(TRACE_CALLS), -+ T_TBL(TRACE_VIRTPUT), -+ T_TBL(TRACE_IEVENT), -+ T_TBL(TRACE_BITS), -+ T_TBL(TRACE_ICALLS), -+ T_TBL(TRACE_CCALLS), -+ T_TBL(TRACE_DATABASE), -+ T_TBL(TRACE_ATTRS), -+ T_TBL(TRACE_MAXIMUM), - { -- (char *) 0, 0 -+ (char *) 0, 0, 0 - } - }; - -@@ -460,8 +525,11 @@ - ITEM **ip = items; - int n; - -- for (n = 0; t_tbl[n].name != 0; n++) -- *ip++ = new_item(t_tbl[n].name, ""); -+ for (n = 0; t_tbl[n].name != 0; n++) { -+ *ip = new_item(t_tbl[n].name, ""); -+ set_item_userptr(*ip, &t_tbl[n]); -+ ++ip; -+ } - *ip = (ITEM *) 0; - - mpTrace = menu_create(items, SIZEOF(t_tbl) - 1, 2, number); -@@ -527,7 +595,8 @@ - int result; - - for (ip = menu_items(mpTrace); *ip; ip++) { -- unsigned mask = t_tbl[item_index(*ip)].mask; -+ MENU_DATA *td = (MENU_DATA *) item_userptr(*ip); -+ unsigned mask = td->mask; - if (mask == 0) - set_item_value(*ip, _nc_tracing == 0); - else if ((mask & _nc_tracing) == mask) -@@ -540,15 +609,17 @@ - if (update_trace_menu(mpTrace) || cmd == REQ_TOGGLE_ITEM) { - newtrace = 0; - for (ip = menu_items(mpTrace); *ip; ip++) { -- if (item_value(*ip)) -- newtrace |= t_tbl[item_index(*ip)].mask; -+ if (item_value(*ip)) { -+ MENU_DATA *td = (MENU_DATA *) item_userptr(*ip); -+ newtrace |= td->mask; -+ } - } - trace(newtrace); - Trace(("trace level interactively set to %s", tracetrace(_nc_tracing))); - -- MvPrintw(LINES - 2, 0, -- "Trace level is %s\n", tracetrace(_nc_tracing)); -- refresh(); -+ MvWPrintw(status, 1, 0, -+ "Trace level is %s\n", tracetrace(_nc_tracing)); -+ wrefresh(status); - } - } - return result; -@@ -588,27 +659,37 @@ - } - - static void -+call_menus(int code) -+{ -+ (void) code; -+ Trace(("Activated menu %d\n", code)); -+} -+ -+static void - build_menus(char *filename) - { -- static CONST_MENUS char *labels[] = -+ static MENU_DATA table[] = - { -- "File", -- "Select", -+ {"File", call_menus, 0}, -+ {"Select", call_menus, 1}, - #ifdef TRACE -- "Trace", -+ {"Trace", call_menus, 2}, - #endif -- (char *) 0 -+ {(char *) 0, 0, 0} - }; -- static ITEM *items[SIZEOF(labels)]; -+ static ITEM *items[SIZEOF(table)]; - - ITEM **ip = items; -- CONST_MENUS char **ap; -+ int n; - -- for (ap = labels; *ap; ap++) -- *ip++ = new_item(*ap, ""); -+ for (n = 0; table[n].name != 0; ++n) { -+ *ip = new_item(table[n].name, ""); -+ set_item_userptr(*ip, &table[n]); -+ ++ip; -+ } - *ip = (ITEM *) 0; - -- mpBanner = menu_create(items, SIZEOF(labels) - 1, SIZEOF(labels) - 1, eBanner); -+ mpBanner = menu_create(items, SIZEOF(table) - 1, SIZEOF(table) - 1, eBanner); - set_menu_mark(mpBanner, ">"); - - build_file_menu(eFile); -@@ -671,14 +752,14 @@ - static void - show_status(int ch, MENU * menu) - { -- move(LINES - 1, 0); -- printw("key %s, menu %d, mark %s, match %s", -- keyname(ch), -- menu_number(), -- menu_mark(menu), -- menu_pattern(menu)); -- clrtoeol(); -- refresh(); -+ wmove(status, 0, 0); -+ wprintw(status, "key %s, menu %d, mark %s, match %s", -+ keyname(ch), -+ menu_number(), -+ menu_mark(menu), -+ menu_pattern(menu)); -+ wclrtoeol(status); -+ wrefresh(status); - } - - static void -@@ -777,9 +858,9 @@ - wrefresh(menu_win(last_menu)); - if (code == E_UNKNOWN_COMMAND - || code == E_NOT_POSTED) { -- if (menu_number() == eFile) -- break; -- beep(); -+ ITEM *item = current_item(last_menu); -+ MENU_DATA *td = (MENU_DATA *) item_userptr(item); -+ td->func((int) td->mask); - } - if (code == E_REQUEST_DENIED) - beep(); -@@ -827,11 +908,23 @@ - #endif /* HAVE_RIPOFFLINE */ - - static void -+call_files(int code) -+{ -+ switch (code) { -+ case 0: -+ destroy_menus(); -+ endwin(); -+ printf("DONE!\n"); -+ ExitProgram(EXIT_SUCCESS); -+ } -+} -+ -+static void - usage(void) - { - static const char *const tbl[] = - { -- "Usage: demo_menus [options]" -+ "Usage: demo_menus [options] [menu-file]" - ,"" - ,"Options:" - #if HAVE_RIPOFFLINE -@@ -867,7 +960,7 @@ - #endif /* HAVE_RIPOFFLINE */ - #ifdef TRACE - case 't': -- trace(strtoul(optarg, 0, 0)); -+ trace((unsigned) strtoul(optarg, 0, 0)); - break; - #endif - default: -@@ -885,6 +978,7 @@ - init_pair(1, COLOR_RED, COLOR_BLACK); - init_pair(2, COLOR_BLUE, COLOR_WHITE); - } -+ status = newwin(3, COLS, LINES - 3, 0); - build_menus(argc > 1 ? argv[1] : 0); - perform_menus(); - destroy_menus(); -diff -Naur ncurses-5.9/test/demo_termcap.c ncurses-5.9.patch/test/demo_termcap.c ---- ncurses-5.9/test/demo_termcap.c 2011-01-15 22:41:27.000000000 +0100 -+++ ncurses-5.9.patch/test/demo_termcap.c 2014-09-01 16:33:22.535792421 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2005-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 2005-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,7 +29,7 @@ - /* - * Author: Thomas E. Dickey - * -- * $Id: demo_termcap.c,v 1.14 2011/01/15 21:41:27 tom Exp $ -+ * $Id: demo_termcap.c,v 1.24 2013/06/08 16:58:49 tom Exp $ - * - * A simple demo of the termcap interface. - */ -@@ -50,11 +50,90 @@ - #if USE_CODE_LISTS - static bool b_opt = FALSE; - static bool n_opt = FALSE; -+static bool q_opt = FALSE; - static bool s_opt = FALSE; - #endif - -+static char *d_opt; -+static char *e_opt; -+static char **db_list; -+static int db_item; -+ -+static long total_values; -+ - #define isCapName(c) (isgraph(c) && strchr("^#=:\\", c) == 0) - -+static char * -+make_dbitem(char *p, char *q) -+{ -+ char *result = malloc(strlen(e_opt) + 2 + (size_t) (p - q)); -+ sprintf(result, "%s=%.*s", e_opt, (int) (p - q), q); -+ return result; -+} -+ -+static void -+make_dblist(void) -+{ -+ if (d_opt && e_opt) { -+ int pass; -+ -+ for (pass = 0; pass < 2; ++pass) { -+ char *p, *q; -+ size_t count = 0; -+ -+ for (p = q = d_opt; *p != '\0'; ++p) { -+ if (*p == ':') { -+ if (p != q + 1) { -+ if (pass) { -+ db_list[count] = make_dbitem(p, q); -+ } -+ count++; -+ } -+ q = p + 1; -+ } -+ } -+ if (p != q + 1) { -+ if (pass) { -+ db_list[count] = make_dbitem(p, q); -+ } -+ count++; -+ } -+ if (!pass) { -+ db_list = typeCalloc(char *, count + 1); -+ } -+ } -+ } -+} -+ -+static char * -+next_dbitem(void) -+{ -+ char *result = 0; -+ -+ if (db_list) { -+ if ((result = db_list[db_item]) == 0) { -+ db_item = 0; -+ result = db_list[0]; -+ } else { -+ db_item++; -+ } -+ } -+ printf("** %s\n", result); -+ return result; -+} -+ -+static void -+free_dblist(void) -+{ -+ if (db_list) { -+ int n; -+ for (n = 0; db_list[n]; ++n) -+ free(db_list[n]); -+ free(db_list); -+ db_list = 0; -+ } -+} -+ - static void - dumpit(NCURSES_CONST char *cap) - { -@@ -70,66 +149,77 @@ - int num; - - if ((str = tgetstr(cap, &ap)) != 0) { -- /* -- * Note that the strings returned are mostly terminfo format, since -- * ncurses does not convert except for a handful of special cases. -- */ -- printf(FNAME(str), cap); -- while (*str != 0) { -- int ch = UChar(*str++); -- switch (ch) { -- case '\177': -- fputs("^?", stdout); -- break; -- case '\033': -- fputs("\\E", stdout); -- break; -- case '\b': -- fputs("\\b", stdout); -- break; -- case '\f': -- fputs("\\f", stdout); -- break; -- case '\n': -- fputs("\\n", stdout); -- break; -- case '\r': -- fputs("\\r", stdout); -- break; -- case ' ': -- fputs("\\s", stdout); -- break; -- case '\t': -- fputs("\\t", stdout); -- break; -- case '^': -- fputs("\\^", stdout); -- break; -- case ':': -- fputs("\\072", stdout); -- break; -- case '\\': -- fputs("\\\\", stdout); -- break; -- default: -- if (isgraph(ch)) -- fputc(ch, stdout); -- else if (ch < 32) -- printf("^%c", ch + '@'); -- else -- printf("\\%03o", ch); -- break; -+ total_values++; -+ if (!q_opt) { -+ /* -+ * Note that the strings returned are mostly terminfo format, since -+ * ncurses does not convert except for a handful of special cases. -+ */ -+ printf(FNAME(str), cap); -+ while (*str != 0) { -+ int ch = UChar(*str++); -+ switch (ch) { -+ case '\177': -+ fputs("^?", stdout); -+ break; -+ case '\033': -+ fputs("\\E", stdout); -+ break; -+ case '\b': -+ fputs("\\b", stdout); -+ break; -+ case '\f': -+ fputs("\\f", stdout); -+ break; -+ case '\n': -+ fputs("\\n", stdout); -+ break; -+ case '\r': -+ fputs("\\r", stdout); -+ break; -+ case ' ': -+ fputs("\\s", stdout); -+ break; -+ case '\t': -+ fputs("\\t", stdout); -+ break; -+ case '^': -+ fputs("\\^", stdout); -+ break; -+ case ':': -+ fputs("\\072", stdout); -+ break; -+ case '\\': -+ fputs("\\\\", stdout); -+ break; -+ default: -+ if (isgraph(ch)) -+ fputc(ch, stdout); -+ else if (ch < 32) -+ printf("^%c", ch + '@'); -+ else -+ printf("\\%03o", ch); -+ break; -+ } - } -+ printf("\n"); - } -- printf("\n"); - } else if ((num = tgetnum(cap)) >= 0) { -- printf(FNAME(num), cap); -- printf(" %d\n", num); -+ total_values++; -+ if (!q_opt) { -+ printf(FNAME(num), cap); -+ printf(" %d\n", num); -+ } - } else if (tgetflag(cap) > 0) { -- printf(FNAME(flg), cap); -- printf("%s\n", "true"); -+ ++total_values; -+ if (!q_opt) { -+ printf(FNAME(flg), cap); -+ printf("%s\n", "true"); -+ } - } -- fflush(stdout); -+ -+ if (!q_opt) -+ fflush(stdout); - } - - static void -@@ -137,6 +227,9 @@ - { - char buffer[1024]; - -+ if (db_list) { -+ putenv(next_dbitem()); -+ } - printf("Terminal type %s\n", name); - if (tgetent(buffer, name) >= 0) { - char cap[3]; -@@ -159,42 +252,43 @@ - - #if USE_CODE_LISTS - static void --demo_terminfo(NCURSES_CONST char *name) -+demo_termcap(NCURSES_CONST char *name) - { - unsigned n; - NCURSES_CONST char *cap; -+ char buffer[1024]; - -+ if (db_list) { -+ putenv(next_dbitem()); -+ } - printf("Terminal type \"%s\"\n", name); --#if HAVE_SETUPTERM -- setupterm(name, 1, (int *) 0); --#else -- setterm(name); --#endif -+ if (tgetent(buffer, name) >= 0) { - -- if (b_opt) { -- for (n = 0;; ++n) { -- cap = boolcodes[n]; -- if (cap == 0) -- break; -- dumpit(cap); -+ if (b_opt) { -+ for (n = 0;; ++n) { -+ cap = boolcodes[n]; -+ if (cap == 0) -+ break; -+ dumpit(cap); -+ } - } -- } - -- if (n_opt) { -- for (n = 0;; ++n) { -- cap = numcodes[n]; -- if (cap == 0) -- break; -- dumpit(cap); -+ if (n_opt) { -+ for (n = 0;; ++n) { -+ cap = numcodes[n]; -+ if (cap == 0) -+ break; -+ dumpit(cap); -+ } - } -- } - -- if (s_opt) { -- for (n = 0;; ++n) { -- cap = strcodes[n]; -- if (cap == 0) -- break; -- dumpit(cap); -+ if (s_opt) { -+ for (n = 0;; ++n) { -+ cap = strcodes[n]; -+ if (cap == 0) -+ break; -+ dumpit(cap); -+ } - } - } - } -@@ -204,7 +298,7 @@ - { - static const char *msg[] = - { -- "Usage: demo_terminfo [options] [terminal]", -+ "Usage: demo_termcap [options] [terminal]", - "", - "If no options are given, print all (boolean, numeric, string)", - "capabilities for the given terminal, using short names.", -@@ -212,9 +306,15 @@ - "Options:", - " -a try all names, print capabilities found", - " -b print boolean-capabilities", -+ " -d LIST colon-separated list of databases to use", -+ " -e NAME environment variable to set with -d option", - " -n print numeric-capabilities", -+ " -q quiet (prints only counts)", - " -r COUNT repeat for given count", - " -s print string-capabilities", -+#ifdef NCURSES_VERSION -+ " -y disable extended capabilities", -+#endif - }; - unsigned n; - for (n = 0; n < SIZEOF(msg); ++n) { -@@ -235,7 +335,7 @@ - int repeat; - int r_opt = 1; - -- while ((n = getopt(argc, argv, "abnr:s")) != -1) { -+ while ((n = getopt(argc, argv, "abd:e:nqr:sy")) != -1) { - switch (n) { - case 'a': - a_opt = TRUE; -@@ -243,9 +343,18 @@ - case 'b': - b_opt = TRUE; - break; -+ case 'd': -+ d_opt = optarg; -+ break; -+ case 'e': -+ e_opt = optarg; -+ break; - case 'n': - n_opt = TRUE; - break; -+ case 'q': -+ q_opt = TRUE; -+ break; - case 'r': - if ((r_opt = atoi(optarg)) <= 0) - usage(); -@@ -253,6 +362,11 @@ - case 's': - s_opt = TRUE; - break; -+#if NCURSES_XNAMES -+ case 'y': -+ use_extended_names(FALSE); -+ break; -+#endif - default: - usage(); - break; -@@ -268,6 +382,8 @@ - a_opt = TRUE; - #endif - -+ make_dblist(); -+ - if (a_opt) { - if (optind < argc) { - for (n = optind; n < argc; ++n) { -@@ -285,17 +401,21 @@ - for (repeat = 0; repeat < r_opt; ++repeat) { - if (optind < argc) { - for (n = optind; n < argc; ++n) { -- demo_terminfo(argv[n]); -+ demo_termcap(argv[n]); - } - } else if ((name = getenv("TERM")) != 0) { -- demo_terminfo(name); -+ demo_termcap(name); - } else { - static char dumb[] = "dumb"; -- demo_terminfo(dumb); -+ demo_termcap(dumb); - } - } - } --#endif -+#endif /* USE_CODE_LISTS */ -+ -+ printf("%ld values\n", total_values); -+ -+ free_dblist(); - - ExitProgram(EXIT_SUCCESS); - } -@@ -306,6 +426,6 @@ - char *argv[]GCC_UNUSED) - { - printf("This program requires termcap\n"); -- exit(EXIT_FAILURE); -+ ExitProgram(EXIT_FAILURE); - } - #endif -diff -Naur ncurses-5.9/test/demo_terminfo.c ncurses-5.9.patch/test/demo_terminfo.c ---- ncurses-5.9/test/demo_terminfo.c 2010-11-28 01:15:27.000000000 +0100 -+++ ncurses-5.9.patch/test/demo_terminfo.c 2014-09-01 16:33:22.535792421 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2009-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,20 +29,19 @@ - /* - * Author: Thomas E. Dickey - * -- * $Id: demo_terminfo.c,v 1.9 2010/11/28 00:15:27 tom Exp $ -+ * $Id: demo_terminfo.c,v 1.19 2013/09/28 21:50:01 tom Exp $ - * - * A simple demo of the terminfo interface. - */ - #define USE_TINFO - #include <test.priv.h> - --#ifdef NCURSES_VERSION --#if !(defined(HAVE_TERM_ENTRY_H) && HAVE_TERM_ENTRY_H) --#undef NCURSES_XNAMES --#define NCURSES_XNAMES 0 --#endif - #if NCURSES_XNAMES -+#if HAVE_TERM_ENTRY_H - #include <term_entry.h> -+#else -+#undef NCURSES_XNAMES -+#define NCURSES_XNAMES 0 - #endif - #endif - -@@ -52,12 +51,90 @@ - static bool b_opt = FALSE; - static bool f_opt = FALSE; - static bool n_opt = FALSE; -+static bool q_opt = FALSE; - static bool s_opt = FALSE; - static bool x_opt = FALSE; - -+static char *d_opt; -+static char *e_opt; -+static char **db_list; -+static int db_item; -+ -+static long total_values; -+ - #define FCOLS 8 - #define FNAME(type) "%s %-*s = ", #type, FCOLS - -+static char * -+make_dbitem(char *p, char *q) -+{ -+ char *result = malloc(strlen(e_opt) + 2 + (size_t) (p - q)); -+ sprintf(result, "%s=%.*s", e_opt, (int) (p - q), q); -+ return result; -+} -+ -+static void -+make_dblist(void) -+{ -+ if (d_opt && e_opt) { -+ int pass; -+ -+ for (pass = 0; pass < 2; ++pass) { -+ char *p, *q; -+ size_t count = 0; -+ -+ for (p = q = d_opt; *p != '\0'; ++p) { -+ if (*p == ':') { -+ if (p != q + 1) { -+ if (pass) { -+ db_list[count] = make_dbitem(p, q); -+ } -+ count++; -+ } -+ q = p + 1; -+ } -+ } -+ if (p != q + 1) { -+ if (pass) { -+ db_list[count] = make_dbitem(p, q); -+ } -+ count++; -+ } -+ if (!pass) { -+ db_list = typeCalloc(char *, count + 1); -+ } -+ } -+ } -+} -+ -+static char * -+next_dbitem(void) -+{ -+ char *result = 0; -+ -+ if (db_list) { -+ if ((result = db_list[db_item]) == 0) { -+ db_item = 0; -+ result = db_list[0]; -+ } else { -+ db_item++; -+ } -+ } -+ printf("** %s\n", result); -+ return result; -+} -+ -+static void -+free_dblist(void) -+{ -+ if (db_list) { -+ int n; -+ for (n = 0; db_list[n]; ++n) -+ free(db_list[n]); -+ free(db_list); -+ db_list = 0; -+ } -+} - static void - dumpit(NCURSES_CONST char *cap) - { -@@ -72,66 +149,77 @@ - int num; - - if ((str = tigetstr(cap)) != 0 && (str != (char *) -1)) { -- /* -- * Note that the strings returned are mostly terminfo format, since -- * ncurses does not convert except for a handful of special cases. -- */ -- printf(FNAME(str), cap); -- while (*str != 0) { -- int ch = UChar(*str++); -- switch (ch) { -- case '\177': -- fputs("^?", stdout); -- break; -- case '\033': -- fputs("\\E", stdout); -- break; -- case '\b': -- fputs("\\b", stdout); -- break; -- case '\f': -- fputs("\\f", stdout); -- break; -- case '\n': -- fputs("\\n", stdout); -- break; -- case '\r': -- fputs("\\r", stdout); -- break; -- case ' ': -- fputs("\\s", stdout); -- break; -- case '\t': -- fputs("\\t", stdout); -- break; -- case '^': -- fputs("\\^", stdout); -- break; -- case ':': -- fputs("\\072", stdout); -- break; -- case '\\': -- fputs("\\\\", stdout); -- break; -- default: -- if (isgraph(ch)) -- fputc(ch, stdout); -- else if (ch < 32) -- printf("^%c", ch + '@'); -- else -- printf("\\%03o", ch); -- break; -+ total_values++; -+ if (!q_opt) { -+ /* -+ * Note that the strings returned are mostly terminfo format, since -+ * ncurses does not convert except for a handful of special cases. -+ */ -+ printf(FNAME(str), cap); -+ while (*str != 0) { -+ int ch = UChar(*str++); -+ switch (ch) { -+ case '\177': -+ fputs("^?", stdout); -+ break; -+ case '\033': -+ fputs("\\E", stdout); -+ break; -+ case '\b': -+ fputs("\\b", stdout); -+ break; -+ case '\f': -+ fputs("\\f", stdout); -+ break; -+ case '\n': -+ fputs("\\n", stdout); -+ break; -+ case '\r': -+ fputs("\\r", stdout); -+ break; -+ case ' ': -+ fputs("\\s", stdout); -+ break; -+ case '\t': -+ fputs("\\t", stdout); -+ break; -+ case '^': -+ fputs("\\^", stdout); -+ break; -+ case ':': -+ fputs("\\072", stdout); -+ break; -+ case '\\': -+ fputs("\\\\", stdout); -+ break; -+ default: -+ if (isgraph(ch)) -+ fputc(ch, stdout); -+ else if (ch < 32) -+ printf("^%c", ch + '@'); -+ else -+ printf("\\%03o", ch); -+ break; -+ } - } -+ printf("\n"); - } -- printf("\n"); - } else if ((num = tigetnum(cap)) >= 0) { -- printf(FNAME(num), cap); -- printf(" %d\n", num); -+ total_values++; -+ if (!q_opt) { -+ printf(FNAME(num), cap); -+ printf(" %d\n", num); -+ } - } else if ((num = tigetflag(cap)) >= 0) { -- printf(FNAME(flg), cap); -- printf("%s\n", num ? "true" : "false"); -+ total_values++; -+ if (!q_opt) { -+ printf(FNAME(flg), cap); -+ printf("%s\n", num ? "true" : "false"); -+ } - } -- fflush(stdout); -+ -+ if (!q_opt) -+ fflush(stdout); - } - - static void -@@ -140,6 +228,9 @@ - unsigned n; - NCURSES_CONST char *cap; - -+ if (db_list) { -+ putenv(next_dbitem()); -+ } - printf("Terminal type \"%s\"\n", name); - setupterm(name, 1, (int *) 0); - -@@ -191,7 +282,7 @@ - } - #endif - } else { -- char temp[10]; -+ char temp[80]; - static const char *xterm_keys[] = - { - "kDC", "kDN", "kEND", "kHOM", "kIC", -@@ -200,9 +291,9 @@ - for (n = 0; n < SIZEOF(xterm_keys); ++n) { - for (mod = 0; mod < 8; ++mod) { - if (mod == 0) -- strcpy(temp, xterm_keys[n]); -+ sprintf(temp, "%.*s", 8, xterm_keys[n]); - else -- sprintf(temp, "%s%d", xterm_keys[n], mod); -+ sprintf(temp, "%.*s%d", 8, xterm_keys[n], mod); - dumpit(temp); - } - } -@@ -224,12 +315,16 @@ - "", - "Options:", - " -b print boolean-capabilities", -+ " -d LIST colon-separated list of databases to use", -+ " -e NAME environment variable to set with -d option", - " -f print full names", - " -n print numeric-capabilities", -+ " -q quiet (prints only counts)", - " -r COUNT repeat for given count", - " -s print string-capabilities", - #ifdef NCURSES_VERSION - " -x print extended capabilities", -+ " -y disable extended capabilities", - #endif - }; - unsigned n; -@@ -246,18 +341,30 @@ - int repeat; - char *name; - int r_opt = 1; -+#ifdef NCURSES_VERSION -+ bool xy_opt = TRUE; /* by default, use_extended_names is true */ -+#endif - -- while ((n = getopt(argc, argv, "bfnr:sx")) != -1) { -+ while ((n = getopt(argc, argv, "bd:e:fnqr:sxy")) != -1) { - switch (n) { - case 'b': - b_opt = TRUE; - break; -+ case 'd': -+ d_opt = optarg; -+ break; -+ case 'e': -+ e_opt = optarg; -+ break; - case 'f': - f_opt = TRUE; - break; - case 'n': - n_opt = TRUE; - break; -+ case 'q': -+ q_opt = TRUE; -+ break; - case 'r': - if ((r_opt = atoi(optarg)) <= 0) - usage(); -@@ -268,7 +375,10 @@ - #ifdef NCURSES_VERSION - case 'x': - x_opt = TRUE; -- use_extended_names(TRUE); -+ xy_opt = TRUE; -+ break; -+ case 'y': -+ xy_opt = FALSE; - break; - #endif - default: -@@ -277,12 +387,18 @@ - } - } - -+#if NCURSES_XNAMES -+ use_extended_names(xy_opt); -+#endif -+ - if (!(b_opt || n_opt || s_opt || x_opt)) { - b_opt = TRUE; - n_opt = TRUE; - s_opt = TRUE; - } - -+ make_dblist(); -+ - for (repeat = 0; repeat < r_opt; ++repeat) { - if (optind < argc) { - for (n = optind; n < argc; ++n) { -@@ -296,6 +412,10 @@ - } - } - -+ printf("%ld values\n", total_values); -+ -+ free_dblist(); -+ - ExitProgram(EXIT_SUCCESS); - } - -diff -Naur ncurses-5.9/test/ditto.c ncurses-5.9.patch/test/ditto.c ---- ncurses-5.9/test/ditto.c 2010-11-14 02:06:47.000000000 +0100 -+++ ncurses-5.9.patch/test/ditto.c 2014-09-01 16:33:22.535792421 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,7 +29,7 @@ - /* - * Author: Thomas E. Dickey (1998-on) - * -- * $Id: ditto.c,v 1.40 2010/11/14 01:06:47 tom Exp $ -+ * $Id: ditto.c,v 1.42 2012/11/24 20:16:18 tom Exp $ - * - * The program illustrates how to set up multiple screens from a single - * program. -@@ -80,6 +80,7 @@ - int which1; /* this screen's index in DITTO[] array */ - int length; /* length of windows[] and peeks[] */ - char **titles; /* per-window titles */ -+ WINDOW **parents; /* display boxes around each screen's data */ - WINDOW **windows; /* display data from each screen */ - PEEK *peeks; /* indices for each screen's fifo */ - FIFO fifo; /* fifo for this screen */ -@@ -98,6 +99,9 @@ - DITTO *ditto; /* data for all screens */ - } DDATA; - -+static void failed(const char *) GCC_NORETURN; -+static void usage(void) GCC_NORETURN; -+ - static void - failed(const char *s) - { -@@ -201,6 +205,7 @@ - scrollok(stdscr, TRUE); - box(stdscr, 0, 0); - -+ target->parents = typeCalloc(WINDOW *, (size_t) target->length); - target->windows = typeCalloc(WINDOW *, (size_t) target->length); - target->peeks = typeCalloc(PEEK, (size_t) target->length); - -@@ -220,6 +225,7 @@ - nodelay(inner, TRUE); - #endif - -+ target->parents[k] = outer; - target->windows[k] = inner; - } - doupdate(); -diff -Naur ncurses-5.9/test/dots.c ncurses-5.9.patch/test/dots.c ---- ncurses-5.9/test/dots.c 2010-11-14 02:00:02.000000000 +0100 -+++ ncurses-5.9.patch/test/dots.c 2014-09-01 16:33:22.536792422 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1999-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1999-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,7 +29,7 @@ - /* - * Author: Thomas E. Dickey <dickey@clark.net> 1999 - * -- * $Id: dots.c,v 1.22 2010/11/14 01:00:02 tom Exp $ -+ * $Id: dots.c,v 1.25 2013/09/28 22:12:09 tom Exp $ - * - * A simple demo of the terminfo interface. - */ -@@ -46,23 +46,23 @@ - static long total_chars = 0; - static time_t started; - --static int --outc(TPUTS_ARG c) -+static -+TPUTS_PROTO(outc, c) - { - int rc = c; - - if (interrupted) { - char tmp = (char) c; -- if (write(STDOUT_FILENO, &tmp, 1) == -1) -+ if (write(STDOUT_FILENO, &tmp, (size_t) 1) == -1) - rc = EOF; - } else { - rc = putc(c, stdout); - } -- return rc; -+ TPUTS_RETURN(rc); - } - - static bool --outs(char *s) -+outs(const char *s) - { - if (valid(s)) { - tputs(s, 1, outc); -@@ -105,6 +105,7 @@ - int x, y, z, p; - double r; - double c; -+ int my_colors; - - CATCHALL(onsig); - -@@ -112,11 +113,12 @@ - setupterm((char *) 0, 1, (int *) 0); - outs(clear_screen); - outs(cursor_invisible); -- if (max_colors > 1) { -+ my_colors = max_colors; -+ if (my_colors > 1) { - if (!valid(set_a_foreground) - || !valid(set_a_background) - || (!valid(orig_colors) && !valid(orig_pair))) -- max_colors = -1; -+ my_colors = -1; - } - - r = (double) (lines - 4); -@@ -129,8 +131,8 @@ - p = (ranf() > 0.9) ? '*' : ' '; - - tputs(tparm3(cursor_address, y, x), 1, outc); -- if (max_colors > 0) { -- z = (int) (ranf() * max_colors); -+ if (my_colors > 0) { -+ z = (int) (ranf() * my_colors); - if (ranf() > 0.01) { - tputs(tparm2(set_a_foreground, z), 1, outc); - } else { -diff -Naur ncurses-5.9/test/dots_mvcur.c ncurses-5.9.patch/test/dots_mvcur.c ---- ncurses-5.9/test/dots_mvcur.c 2010-11-14 02:00:44.000000000 +0100 -+++ ncurses-5.9.patch/test/dots_mvcur.c 2014-09-01 16:33:22.536792422 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2007-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 2007-2009,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,7 +29,7 @@ - /* - * Author: Thomas E. Dickey - 2007 - * -- * $Id: dots_mvcur.c,v 1.6 2010/11/14 01:00:44 tom Exp $ -+ * $Id: dots_mvcur.c,v 1.10 2013/09/28 22:44:18 tom Exp $ - * - * A simple demo of the terminfo interface, and mvcur. - */ -@@ -46,24 +46,24 @@ - static long total_chars = 0; - static time_t started; - --static int --outc(TPUTS_ARG c) -+static -+TPUTS_PROTO(outc, c) - { - int rc = c; - - if (interrupted) { - char tmp = (char) c; -- if (write(STDOUT_FILENO, &tmp, 1) == -1) -+ if (write(STDOUT_FILENO, &tmp, (size_t) 1) == -1) - rc = EOF; - } else { - if (putc(c, stdout) == EOF) - rc = EOF; - } -- return rc; -+ TPUTS_RETURN(rc); - } - - static bool --outs(char *s) -+outs(const char *s) - { - if (valid(s)) { - tputs(s, 1, outc); -@@ -108,6 +108,7 @@ - double r; - double c; - SCREEN *sp; -+ int my_colors; - - CATCHALL(onsig); - -@@ -116,11 +117,12 @@ - outs(clear_screen); - outs(cursor_home); - outs(cursor_invisible); -- if (max_colors > 1) { -+ my_colors = max_colors; -+ if (my_colors > 1) { - if (!valid(set_a_foreground) - || !valid(set_a_background) - || (!valid(orig_colors) && !valid(orig_pair))) -- max_colors = -1; -+ my_colors = -1; - } - - r = (double) (lines - 4); -@@ -137,8 +139,8 @@ - y0 = y; - } - -- if (max_colors > 0) { -- z = (int) (ranf() * max_colors); -+ if (my_colors > 0) { -+ z = (int) (ranf() * my_colors); - if (ranf() > 0.01) { - tputs(tparm2(set_a_foreground, z), 1, outc); - } else { -@@ -155,6 +157,7 @@ - } - } - outc(p); -+ ++x0; - fflush(stdout); - ++total_chars; - } -diff -Naur ncurses-5.9/test/dots_termcap.c ncurses-5.9.patch/test/dots_termcap.c ---- ncurses-5.9/test/dots_termcap.c 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/test/dots_termcap.c 2014-09-01 16:33:22.536792422 +0200 -@@ -0,0 +1,254 @@ -+/**************************************************************************** -+ * Copyright (c) 2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/* -+ * Author: Thomas E. Dickey -+ * -+ * $Id: dots_termcap.c,v 1.7 2013/09/28 21:50:35 tom Exp $ -+ * -+ * A simple demo of the termcap interface. -+ */ -+#define USE_TINFO -+#include <test.priv.h> -+ -+#if !defined(__MINGW32__) -+#include <sys/time.h> -+#endif -+ -+#if HAVE_TGETENT -+ -+#include <time.h> -+ -+#define valid(s) ((s != 0) && s != (char *)-1) -+ -+static bool interrupted = FALSE; -+static long total_chars = 0; -+static time_t started; -+ -+static char *t_AB; -+static char *t_AF; -+static char *t_cl; -+static char *t_cm; -+static char *t_me; -+static char *t_mr; -+static char *t_oc; -+static char *t_op; -+static char *t_ve; -+static char *t_vi; -+ -+static struct { -+ const char *name; -+ char **value; -+} my_caps[] = { -+ -+ { -+ "AB", &t_AB -+ }, -+ { -+ "AF", &t_AF -+ }, -+ { -+ "cl", &t_cl -+ }, -+ { -+ "cm", &t_cm -+ }, -+ { -+ "me", &t_me -+ }, -+ { -+ "mr", &t_mr -+ }, -+ { -+ "oc", &t_oc -+ }, -+ { -+ "op", &t_op -+ }, -+ { -+ "ve", &t_ve -+ }, -+ { -+ "vi", &t_vi -+ }, -+}; -+ -+static -+TPUTS_PROTO(outc, c) -+{ -+ int rc = c; -+ -+ if (interrupted) { -+ char tmp = (char) c; -+ if (write(STDOUT_FILENO, &tmp, (size_t) 1) == -1) -+ rc = EOF; -+ } else { -+ rc = putc(c, stdout); -+ } -+ TPUTS_RETURN(rc); -+} -+ -+static bool -+outs(char *s) -+{ -+ if (valid(s)) { -+ tputs(s, 1, outc); -+ return TRUE; -+ } -+ return FALSE; -+} -+ -+static void -+cleanup(void) -+{ -+ outs(t_me); -+ if (!outs(t_oc)) -+ outs(t_op); -+ outs(t_cl); -+ outs(t_ve); -+ -+ printf("\n\n%ld total chars, rate %.2f/sec\n", -+ total_chars, -+ ((double) (total_chars) / (double) (time((time_t *) 0) - started))); -+} -+ -+static void -+onsig(int n GCC_UNUSED) -+{ -+ interrupted = TRUE; -+} -+ -+static double -+ranf(void) -+{ -+ long r = (rand() & 077777); -+ return ((double) r / 32768.); -+} -+ -+static void -+my_napms(int ms) -+{ -+#if defined(__MINGW32__) || !HAVE_GETTIMEOFDAY -+ Sleep(ms); -+#else -+ struct timeval data; -+ data.tv_sec = 0; -+ data.tv_usec = ms * 1000; -+ select(0, NULL, NULL, NULL, &data); -+#endif -+} -+ -+int -+main(int argc GCC_UNUSED, -+ char *argv[]GCC_UNUSED) -+{ -+ int x, y, z, p; -+ int num_colors; -+ int num_lines; -+ int num_columns; -+ double r; -+ double c; -+ char buffer[1024]; -+ char area[1024]; -+ char *name; -+ -+ CATCHALL(onsig); -+ -+ srand((unsigned) time(0)); -+ -+ if ((name = getenv("TERM")) == 0) { -+ fprintf(stderr, "TERM is not set\n"); -+ ExitProgram(EXIT_FAILURE); -+ } else if (tgetent(buffer, name) < 0) { -+ fprintf(stderr, "terminal description not found\n"); -+ ExitProgram(EXIT_FAILURE); -+ } else { -+ size_t t; -+ char *ap = area; -+ for (t = 0; t < SIZEOF(my_caps); ++t) { -+ *(my_caps[t].value) = tgetstr((NCURSES_CONST char *) -+ my_caps[t].name, &ap); -+ } -+ } -+ -+ num_colors = tgetnum("Co"); -+ num_lines = tgetnum("li"); -+ num_columns = tgetnum("co"); -+ -+ outs(t_cl); -+ outs(t_vi); -+ if (num_colors > 1) { -+ if (!valid(t_AF) -+ || !valid(t_AB) -+ || (!valid(t_oc) && !valid(t_op))) -+ num_colors = -1; -+ } -+ -+ r = (double) (num_lines - 4); -+ c = (double) (num_columns - 4); -+ started = time((time_t *) 0); -+ -+ while (!interrupted) { -+ x = (int) (c * ranf()) + 2; -+ y = (int) (r * ranf()) + 2; -+ p = (ranf() > 0.9) ? '*' : ' '; -+ -+ tputs(tgoto(t_cm, x, y), 1, outc); -+ if (num_colors > 0) { -+ z = (int) (ranf() * num_colors); -+ if (ranf() > 0.01) { -+ tputs(tgoto(t_AF, 0, z), 1, outc); -+ } else { -+ tputs(tgoto(t_AB, 0, z), 1, outc); -+ my_napms(1); -+ } -+ } else if (valid(t_me) -+ && valid(t_mr)) { -+ if (ranf() <= 0.01) { -+ outs((ranf() > 0.6) -+ ? t_mr -+ : t_me); -+ my_napms(1); -+ } -+ } -+ outc(p); -+ fflush(stdout); -+ ++total_chars; -+ } -+ cleanup(); -+ ExitProgram(EXIT_SUCCESS); -+} -+#else -+int -+main(int argc GCC_UNUSED, -+ char *argv[]GCC_UNUSED) -+{ -+ fprintf(stderr, "This program requires termcap\n"); -+ exit(EXIT_FAILURE); -+} -+#endif -diff -Naur ncurses-5.9/test/echochar.c ncurses-5.9.patch/test/echochar.c ---- ncurses-5.9/test/echochar.c 2010-11-14 02:00:44.000000000 +0100 -+++ ncurses-5.9.patch/test/echochar.c 2014-09-01 16:33:22.536792422 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2006-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2006-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: echochar.c,v 1.8 2010/11/14 01:00:44 tom Exp $ -+ * $Id: echochar.c,v 1.9 2012/06/09 20:30:32 tom Exp $ - * - * Demonstrate the echochar function (compare to dots.c). - * Thomas Dickey - 2006/11/4 -@@ -74,7 +74,7 @@ - (short) fg, - (short) bg); - } -- attron(COLOR_PAIR(pair)); -+ attron((attr_t) COLOR_PAIR(pair)); - } - - int -diff -Naur ncurses-5.9/test/edit_field.c ncurses-5.9.patch/test/edit_field.c ---- ncurses-5.9/test/edit_field.c 2011-01-15 19:15:11.000000000 +0100 -+++ ncurses-5.9.patch/test/edit_field.c 2014-09-01 16:33:22.536792422 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2003-2008,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 2003-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,11 +26,11 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: edit_field.c,v 1.17 2011/01/15 18:15:11 tom Exp $ -+ * $Id: edit_field.c,v 1.22 2013/09/28 22:02:17 tom Exp $ - * - * A wrapper for form_driver() which keeps track of the user's editing changes -- * for each field, and makes the result available as a null-terminated string -- * in field_buffer(field,1). -+ * for each field, and makes the resulting length available as a -+ * null-terminated string in field_buffer(field,1). - * - * Thomas Dickey - 2003/4/26. - */ -@@ -297,8 +297,49 @@ - static void - inactive_field(FIELD * f) - { -- FieldAttrs *ptr = (FieldAttrs *) field_userptr(f); -- set_field_back(f, ptr->background); -+ set_field_back(f, field_attrs(f)->background); -+} -+ -+FieldAttrs * -+field_attrs(FIELD * f) -+{ -+ return (FieldAttrs *) field_userptr(f); -+} -+ -+static int -+buffer_length(FIELD * f) -+{ -+ return field_attrs(f)->row_lengths[0]; -+} -+ -+static void -+set_buffer_length(FIELD * f, int length) -+{ -+ field_attrs(f)->row_lengths[0] = length; -+} -+ -+/* -+ * The userptr is used in edit_field.c's inactive_field(), as well as for -+ * keeping track of the actual lengths of lines in a multiline field. -+ */ -+void -+init_edit_field(FIELD * f, char *value) -+{ -+ FieldAttrs *ptr = field_attrs(f); -+ if (ptr == 0) { -+ int rows, cols, frow, fcol, nrow, nbuf; -+ -+ ptr = typeCalloc(FieldAttrs, (size_t) 1); -+ ptr->background = field_back(f); -+ if (field_info(f, &rows, &cols, &frow, &fcol, &nrow, &nbuf) == E_OK) { -+ ptr->row_count = nrow; -+ ptr->row_lengths = typeCalloc(int, (size_t) nrow + 1); -+ } -+ } -+ set_field_userptr(f, (void *) ptr); -+ set_field_buffer(f, 0, value); /* will be formatted */ -+ set_field_buffer(f, 1, value); /* will be unformatted */ -+ set_buffer_length(f, (int) strlen(value)); - } - - int -@@ -308,9 +349,7 @@ - int status; - FIELD *before; - unsigned n; -- char lengths[80]; - int length; -- char *buffer; - int before_row; - int before_col; - int before_off = offset_in_field(form); -@@ -337,9 +376,7 @@ - if (status == E_OK) { - bool modified = TRUE; - -- length = 0; -- if ((buffer = field_buffer(before, 1)) != 0) -- length = atoi(buffer); -+ length = buffer_length(before); - if (length < before_off) - length = before_off; - switch (*result) { -@@ -445,8 +482,7 @@ - < MIN_FORM_COMMAND) - ++length; - -- sprintf(lengths, "%d", length); -- set_field_buffer(before, 1, lengths); -+ set_buffer_length(before, length); - } - - if (current_field(form) != before) -diff -Naur ncurses-5.9/test/edit_field.h ncurses-5.9.patch/test/edit_field.h ---- ncurses-5.9/test/edit_field.h 2008-12-20 20:23:18.000000000 +0100 -+++ ncurses-5.9.patch/test/edit_field.h 2014-09-01 16:33:22.536792422 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2003-2006,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 2003-2008,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: edit_field.h,v 1.6 2008/12/20 19:23:18 tom Exp $ -+ * $Id: edit_field.h,v 1.9 2013/06/08 15:46:01 tom Exp $ - * - * Interface of edit_field.c - */ -@@ -45,8 +45,12 @@ - - typedef struct { - chtype background; -+ int row_count; -+ int *row_lengths; - } FieldAttrs; - -+extern FieldAttrs *field_attrs(FIELD * field); -+extern void init_edit_field(FIELD * field, char *value); - extern void help_edit_field(void); - extern int edit_field(FORM * form, int *result); - -diff -Naur ncurses-5.9/test/filter.c ncurses-5.9.patch/test/filter.c ---- ncurses-5.9/test/filter.c 2010-11-13 21:55:54.000000000 +0100 -+++ ncurses-5.9.patch/test/filter.c 2014-09-01 16:33:22.536792422 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,7 +29,7 @@ - /* - * Author: Thomas E. Dickey <dickey@clark.net> 1998 - * -- * $Id: filter.c,v 1.13 2010/11/13 20:55:54 tom Exp $ -+ * $Id: filter.c,v 1.15 2012/06/09 20:30:32 tom Exp $ - */ - #include <test.priv.h> - -@@ -133,7 +133,7 @@ - background = -1; - #endif - init_pair(1, COLOR_CYAN, (short) background); -- underline = COLOR_PAIR(1); -+ underline = (attr_t) COLOR_PAIR(1); - } else { - underline = A_UNDERLINE; - } -@@ -143,7 +143,7 @@ - reset_shell_mode(); - printf("\n"); - fflush(stdout); -- system(buffer); -+ IGNORE_RC(system(buffer)); - reset_prog_mode(); - touchwin(stdscr); - erase(); -diff -Naur ncurses-5.9/test/firework.c ncurses-5.9.patch/test/firework.c ---- ncurses-5.9/test/firework.c 2010-11-13 21:58:25.000000000 +0100 -+++ ncurses-5.9.patch/test/firework.c 2014-09-01 16:33:22.536792422 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: firework.c,v 1.27 2010/11/13 20:58:25 tom Exp $ -+ * $Id: firework.c,v 1.29 2013/04/27 19:46:53 tom Exp $ - */ - #include <test.priv.h> - -@@ -41,7 +41,7 @@ - endwin(); - } - --static RETSIGTYPE -+static void - onsig(int n GCC_UNUSED) - { - cleanup(); -@@ -94,14 +94,14 @@ - showit(); - - init_pair(1, get_colour(&bold), my_bg); -- (void) attrset(COLOR_PAIR(1) | bold); -+ (void) attrset((chtype) COLOR_PAIR(1) | bold); - MvPrintw(row - 1, col - 1, " - "); - MvPrintw(row + 0, col - 1, "-+-"); - MvPrintw(row + 1, col - 1, " - "); - showit(); - - init_pair(1, get_colour(&bold), my_bg); -- (void) attrset(COLOR_PAIR(1) | bold); -+ (void) attrset((chtype) COLOR_PAIR(1) | bold); - MvPrintw(row - 2, col - 2, " --- "); - MvPrintw(row - 1, col - 2, "-+++-"); - MvPrintw(row + 0, col - 2, "-+#+-"); -@@ -110,7 +110,7 @@ - showit(); - - init_pair(1, get_colour(&bold), my_bg); -- (void) attrset(COLOR_PAIR(1) | bold); -+ (void) attrset((chtype) COLOR_PAIR(1) | bold); - MvPrintw(row - 2, col - 2, " +++ "); - MvPrintw(row - 1, col - 2, "++#++"); - MvPrintw(row + 0, col - 2, "+# #+"); -@@ -119,7 +119,7 @@ - showit(); - - init_pair(1, get_colour(&bold), my_bg); -- (void) attrset(COLOR_PAIR(1) | bold); -+ (void) attrset((chtype) COLOR_PAIR(1) | bold); - MvPrintw(row - 2, col - 2, " # "); - MvPrintw(row - 1, col - 2, "## ##"); - MvPrintw(row + 0, col - 2, "# #"); -@@ -128,7 +128,7 @@ - showit(); - - init_pair(1, get_colour(&bold), my_bg); -- (void) attrset(COLOR_PAIR(1) | bold); -+ (void) attrset((chtype) COLOR_PAIR(1) | bold); - MvPrintw(row - 2, col - 2, " # # "); - MvPrintw(row - 1, col - 2, "# #"); - MvPrintw(row + 0, col - 2, " "); -diff -Naur ncurses-5.9/test/form_driver_w.c ncurses-5.9.patch/test/form_driver_w.c ---- ncurses-5.9/test/form_driver_w.c 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/test/form_driver_w.c 2014-09-01 16:33:22.537792423 +0200 -@@ -0,0 +1,150 @@ -+/**************************************************************************** -+ * Copyright (c) 2013,2014 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+/**************************************************************************** -+ * Author: Gaute Hope, 2013 * -+ ****************************************************************************/ -+ -+/* -+ * $Id: form_driver_w.c,v 1.11 2014/02/09 22:20:27 tom Exp $ -+ * -+ * Test form_driver_w (int, int, wchar_t), a wide char aware -+ * replacement of form_driver. -+ */ -+ -+#include <locale.h> -+ -+#include <test.priv.h> -+ -+#if USE_WIDEC_SUPPORT && USE_LIBFORM -+ -+#include <form.h> -+ -+int -+main(void) -+{ -+ FIELD *field[3]; -+ FORM *my_form; -+ bool done = FALSE; -+ -+ setlocale(LC_ALL, ""); -+ -+ /* Initialize curses */ -+ initscr(); -+ cbreak(); -+ noecho(); -+ keypad(stdscr, TRUE); -+ -+ /* Initialize the fields */ -+ field[0] = new_field(1, 10, 4, 18, 0, 0); -+ field[1] = new_field(1, 10, 6, 18, 0, 0); -+ field[2] = NULL; -+ -+ /* Set field options */ -+ set_field_back(field[0], A_UNDERLINE); /* Print a line for the option */ -+ field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */ -+ /* Field is filled up */ -+ set_field_back(field[1], A_UNDERLINE); -+ field_opts_off(field[1], O_AUTOSKIP); -+ -+ /* Create the form and post it */ -+ my_form = new_form(field); -+ post_form(my_form); -+ refresh(); -+ -+ mvprintw(4, 10, "Value 1:"); -+ mvprintw(6, 10, "Value 2:"); -+ refresh(); -+ -+ /* Loop through to get user requests */ -+ while (!done) { -+ wint_t ch; -+ int ret = get_wch(&ch); -+ -+ mvprintw(8, 10, "Got %d (%#x), type: %s", (int) ch, (int) ch, -+ (ret == KEY_CODE_YES) -+ ? "KEY_CODE_YES" -+ : ((ret == OK) -+ ? "OK" -+ : ((ret == ERR) -+ ? "ERR" -+ : "?"))); -+ clrtoeol(); -+ -+ switch (ret) { -+ case KEY_CODE_YES: -+ switch (ch) { -+ case KEY_DOWN: -+ /* Go to next field */ -+ form_driver_w(my_form, KEY_CODE_YES, REQ_NEXT_FIELD); -+ /* Go to the end of the present buffer */ -+ /* Leaves nicely at the last character */ -+ form_driver_w(my_form, KEY_CODE_YES, REQ_END_LINE); -+ break; -+ case KEY_UP: -+ /* Go to previous field */ -+ form_driver_w(my_form, KEY_CODE_YES, REQ_PREV_FIELD); -+ form_driver_w(my_form, KEY_CODE_YES, REQ_END_LINE); -+ break; -+ default: -+ break; -+ } -+ break; -+ case OK: -+ switch (ch) { -+ case CTRL('D'): -+ case QUIT: -+ case ESCAPE: -+ done = TRUE; -+ break; -+ default: -+ form_driver_w(my_form, OK, ch); -+ break; -+ } -+ break; -+ } -+ } -+ -+ /* Un post form and free the memory */ -+ unpost_form(my_form); -+ free_form(my_form); -+ free_field(field[0]); -+ free_field(field[1]); -+ -+ endwin(); -+ ExitProgram(EXIT_SUCCESS); -+} -+ -+#else -+int -+main(void) -+{ -+ printf("This program requires the wide-ncurses and forms library\n"); -+ ExitProgram(EXIT_FAILURE); -+} -+#endif /* USE_WIDEC_SUPPORT */ -diff -Naur ncurses-5.9/test/gdc.c ncurses-5.9.patch/test/gdc.c ---- ncurses-5.9/test/gdc.c 2010-11-13 22:01:23.000000000 +0100 -+++ ncurses-5.9.patch/test/gdc.c 2014-09-01 16:33:22.537792423 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -27,13 +27,13 @@ - ****************************************************************************/ - /* - * Grand digital clock for curses compatible terminals -- * Usage: gdc [-s] [n] -- run for n seconds (default infinity) -+ * Usage: gdc [-s] [-t hh:mm:ss] [n] -- run for n seconds (default infinity) - * Flags: -s: scroll - * - * modified 10-18-89 for curses (jrl) - * 10-18-89 added signal handling - * -- * $Id: gdc.c,v 1.34 2010/11/13 21:01:23 tom Exp $ -+ * $Id: gdc.c,v 1.40 2014/02/15 17:34:36 tom Exp $ - */ - - #include <test.priv.h> -@@ -60,7 +60,7 @@ - static bool redirected = FALSE; - static bool hascolor = FALSE; - --static RETSIGTYPE -+static void - sighndl(int signo) - { - signal(signo, sighndl); -@@ -72,13 +72,24 @@ - } - - static void -+check_term(void) -+{ -+ if (sigtermed) { -+ (void) standend(); -+ endwin(); -+ fprintf(stderr, "gdc terminated by signal %d\n", sigtermed); -+ ExitProgram(EXIT_FAILURE); -+ } -+} -+ -+static void - drawbox(bool scrolling) - { - chtype bottom[XLENGTH + 1]; - int n; - - if (hascolor) -- (void) attrset(COLOR_PAIR(PAIR_FRAMES)); -+ (void) attrset((attr_t) COLOR_PAIR(PAIR_FRAMES)); - - MvAddCh(YBASE - 1, XBASE - 1, ACS_ULCORNER); - hline(ACS_HLINE, XLENGTH); -@@ -102,7 +113,7 @@ - vline(ACS_VLINE, YDEPTH); - - if (hascolor) -- (void) attrset(COLOR_PAIR(PAIR_OTHERS)); -+ (void) attrset((attr_t) COLOR_PAIR(PAIR_OTHERS)); - } - - static void -@@ -110,13 +121,13 @@ - { - if (on) { - if (hascolor) { -- attron(COLOR_PAIR(PAIR_DIGITS)); -+ attron((attr_t) COLOR_PAIR(PAIR_DIGITS)); - } else { - attron(A_STANDOUT); - } - } else { - if (hascolor) { -- attron(COLOR_PAIR(PAIR_OTHERS)); -+ attron((attr_t) COLOR_PAIR(PAIR_OTHERS)); - } else { - attroff(A_STANDOUT); - } -@@ -147,6 +158,7 @@ - ,"Options:" - ," -n redirect input to /dev/null" - ," -s scroll each number into place, rather than flipping" -+ ," -t hh:mm:ss specify starting time (default is ``now'')" - ,"" - ,"If you specify a count, gdc runs for that number of seconds" - }; -@@ -156,6 +168,43 @@ - ExitProgram(EXIT_FAILURE); - } - -+static time_t -+parse_time(const char *value) -+{ -+ int hh, mm, ss; -+ int check; -+ time_t result; -+ char c; -+ struct tm *tm; -+ -+ if (sscanf(value, "%d:%d:%d%c", &hh, &mm, &ss, &c) != 3) { -+ if (sscanf(value, "%02d%02d%02d%c", &hh, &mm, &ss, &c) != 3) { -+ usage(); -+ } -+ } -+ -+ if ((hh < 0) || (hh >= 24) || -+ (mm < 0) || (mm >= 60) || -+ (ss < 0) || (ss >= 60)) { -+ usage(); -+ } -+ -+ /* adjust so that the localtime in the main loop will give usable time */ -+ result = (hh * 3600) + ((mm * 60) + ss); -+ for (check = 0; check < 24; ++check) { -+ tm = localtime(&result); -+ if (tm->tm_hour == hh) -+ break; -+ result += 3600; -+ } -+ -+ if (tm->tm_hour != hh) { -+ fprintf(stderr, "Cannot find local time for %s!\n", value); -+ usage(); -+ } -+ return result; -+} -+ - int - main(int argc, char *argv[]) - { -@@ -166,21 +215,26 @@ - int count = 0; - FILE *ofp = stdout; - FILE *ifp = stdin; -- bool scrol = FALSE; -+ bool smooth = FALSE; -+ bool stages = FALSE; -+ time_t starts = 0; - - setlocale(LC_ALL, ""); - - CATCHALL(sighndl); - -- while ((k = getopt(argc, argv, "sn")) != -1) { -+ while ((k = getopt(argc, argv, "nst:")) != -1) { - switch (k) { -- case 's': -- scrol = TRUE; -- break; - case 'n': - ifp = fopen("/dev/null", "r"); - redirected = TRUE; - break; -+ case 's': -+ smooth = TRUE; -+ break; -+ case 't': -+ starts = parse_time(optarg); -+ break; - default: - usage(); - } -@@ -220,7 +274,7 @@ - init_pair(PAIR_DIGITS, COLOR_BLACK, COLOR_RED); - init_pair(PAIR_OTHERS, COLOR_RED, bg); - init_pair(PAIR_FRAMES, COLOR_WHITE, bg); -- (void) attrset(COLOR_PAIR(PAIR_OTHERS)); -+ (void) attrset((attr_t) COLOR_PAIR(PAIR_OTHERS)); - } - - restart: -@@ -231,9 +285,13 @@ - drawbox(FALSE); - - do { -- char buf[30]; -+ char buf[40]; - -- time(&now); -+ if (starts != 0) { -+ now = ++starts; -+ } else { -+ time(&now); -+ } - tm = localtime(&now); - - mask = 0; -@@ -247,12 +305,13 @@ - set(10, 17); - - for (k = 0; k < 6; k++) { -- if (scrol) { -+ if (smooth) { - for (i = 0; i < 5; i++) - newer[i] = (newer[i] & ~mask) | (newer[i + 1] & mask); - newer[5] = (newer[5] & ~mask) | (next[k] & mask); -- } else -+ } else { - newer[k] = (newer[k] & ~mask) | (next[k] & mask); -+ } - next[k] = 0; - for (s = 1; s >= 0; s--) { - standt(s); -@@ -273,7 +332,7 @@ - } - } - if (!s) { -- if (scrol) -+ if (smooth) - drawbox(TRUE); - refresh(); - /* -@@ -286,14 +345,41 @@ - * a lot of time when asking what time it is, at the top of - * this loop -T.Dickey - */ -- if (scrol) -+ if (smooth) - napms(85); -+ if (stages) { -+ stages = FALSE; -+ switch (wgetch(stdscr)) { -+ case 'q': -+ count = 1; -+ break; -+ case 'S': -+ stages = TRUE; -+ /* FALLTHRU */ -+ case 's': -+ nodelay(stdscr, FALSE); -+ break; -+ case ' ': -+ nodelay(stdscr, TRUE); -+ break; -+#ifdef KEY_RESIZE -+ case KEY_RESIZE: -+#endif -+ case '?': -+ goto restart; -+ case ERR: -+ check_term(); -+ /* FALLTHRU */ -+ default: -+ continue; -+ } -+ } - } - } - } - - /* this depends on the detailed format of ctime(3) */ -- (void) strcpy(buf, ctime(&now)); -+ (void) strncpy(buf, ctime(&now), (size_t) 30); - (void) strcpy(buf + 10, buf + 19); - MvAddStr(16, 30, buf); - -@@ -302,11 +388,11 @@ - refresh(); - - /* -- * If we're not scrolling, wait 1000 msec (1 sec). Use napms() rather -- * than sleep() because the latter does odd things on some systems, -- * e.g., suspending output as well. -+ * If we're not smooth-scrolling, wait 1000 msec (1 sec). Use napms() -+ * rather than sleep() because the latter does odd things on some -+ * systems, e.g., suspending output as well. - */ -- if (scrol) -+ if (smooth) - napms(500); - else - napms(1000); -@@ -318,10 +404,14 @@ - * will return an error if interrupted. This works only if we can - * read from the input, of course. - */ -+ stages = FALSE; - switch (wgetch(stdscr)) { - case 'q': - count = 1; - break; -+ case 'S': -+ stages = TRUE; -+ /* FALLTHRU */ - case 's': - nodelay(stdscr, FALSE); - break; -@@ -334,12 +424,7 @@ - case '?': - goto restart; - case ERR: -- if (sigtermed) { -- (void) standend(); -- endwin(); -- fprintf(stderr, "gdc terminated by signal %d\n", sigtermed); -- ExitProgram(EXIT_FAILURE); -- } -+ check_term(); - /* FALLTHRU */ - default: - continue; -diff -Naur ncurses-5.9/test/hanoi.c ncurses-5.9.patch/test/hanoi.c ---- ncurses-5.9/test/hanoi.c 2010-11-14 02:01:07.000000000 +0100 -+++ ncurses-5.9.patch/test/hanoi.c 2014-09-01 16:33:22.569792509 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -41,10 +41,11 @@ - * - * Date: 05.Nov.90 - * -- * $Id: hanoi.c,v 1.31 2010/11/14 01:01:07 tom Exp $ -+ * $Id: hanoi.c,v 1.35 2013/09/28 22:02:17 tom Exp $ - */ - - #include <test.priv.h> -+#include <math.h> - - #define NPEGS 3 /* This is not configurable !! */ - #define MINTILES 3 -@@ -57,7 +58,7 @@ - #define MIDPEG 39 - #define RIGHTPEG 59 - --#define LENTOIND(x) (((x)-1)/2) -+#define LENTOIND(x) (((int)(x)-1)/2) - #define OTHER(a,b) (3-((a)+(b))) - - struct Peg { -@@ -84,10 +85,11 @@ - COLOR_MAGENTA, /* Length 17 */ - COLOR_RED, /* Length 19 */ - }; -+static int NTiles = 0; - static int NMoves = 0; - static bool AutoFlag = FALSE; - --static void InitTiles(int NTiles); -+static void InitTiles(void); - static void DisplayTiles(void); - static void MakeMove(int From, int To); - static void AutoMove(int From, int To, int Num); -@@ -99,7 +101,7 @@ - int - main(int argc, char **argv) - { -- int NTiles, FromCol, ToCol; -+ int FromCol, ToCol; - - setlocale(LC_ALL, ""); - -@@ -130,9 +132,6 @@ - Usage(); - ExitProgram(EXIT_FAILURE); - } --#ifdef TRACE -- trace(TRACE_MAXIMUM); --#endif - initscr(); - if (has_colors()) { - int i; -@@ -155,7 +154,7 @@ - curs_set(0); - leaveok(stdscr, TRUE); /* Attempt to remove cursor */ - } -- InitTiles(NTiles); -+ InitTiles(); - DisplayTiles(); - if (AutoFlag) { - do { -@@ -211,7 +210,7 @@ - } - - static void --InitTiles(int NTiles) -+InitTiles(void) - { - int Size, SlotNo; - -@@ -232,7 +231,7 @@ - erase(); - MvAddStr(1, 24, "T O W E R S O F H A N O I"); - MvAddStr(3, 34, "SJR 1990"); -- MvPrintw(19, 5, "Moves : %d", NMoves); -+ MvPrintw(19, 5, "Moves : %d of %.0f", NMoves, pow(2.0, (float) NTiles) - 1); - (void) attrset(A_REVERSE); - MvAddStr(BASELINE, 8, - " "); -@@ -255,7 +254,7 @@ - memset(TileBuf, ' ', len); - TileBuf[len] = '\0'; - if (has_colors()) -- (void) attrset(COLOR_PAIR(LENTOIND(len))); -+ (void) attrset((attr_t) COLOR_PAIR(LENTOIND(len))); - else - (void) attrset(A_REVERSE); - MvAddStr(BASELINE - (SlotNo + 1), -@@ -310,12 +309,12 @@ - if (Num == 1) { - MakeMove(From, To); - napms(500); -- return; -+ } else { -+ AutoMove(From, OTHER(From, To), Num - 1); -+ MakeMove(From, To); -+ napms(500); -+ AutoMove(OTHER(From, To), To, Num - 1); - } -- AutoMove(From, OTHER(From, To), Num - 1); -- MakeMove(From, To); -- napms(500); -- AutoMove(OTHER(From, To), To, Num - 1); - } - - static int -diff -Naur ncurses-5.9/test/hashtest.c ncurses-5.9.patch/test/hashtest.c ---- ncurses-5.9/test/hashtest.c 2010-11-14 00:43:15.000000000 +0100 -+++ ncurses-5.9.patch/test/hashtest.c 2014-09-01 16:33:22.569792509 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -30,7 +30,7 @@ - * - * Generate timing statistics for vertical-motion optimization. - * -- * $Id: hashtest.c,v 1.31 2010/11/13 23:43:15 tom Exp $ -+ * $Id: hashtest.c,v 1.32 2013/04/27 19:50:17 tom Exp $ - */ - - #include <test.priv.h> -@@ -54,7 +54,7 @@ - endwin(); - } - --static RETSIGTYPE -+static void - finish(int sig GCC_UNUSED) - { - cleanup(); -diff -Naur ncurses-5.9/test/inchs.c ncurses-5.9.patch/test/inchs.c ---- ncurses-5.9/test/inchs.c 2010-11-14 00:41:23.000000000 +0100 -+++ ncurses-5.9.patch/test/inchs.c 2014-09-01 16:33:22.569792509 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2007-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: inchs.c,v 1.11 2010/11/13 23:41:23 tom Exp $ -+ * $Id: inchs.c,v 1.12 2012/11/18 01:58:15 tom Exp $ - * - * Author: Thomas E Dickey - */ -@@ -50,6 +50,16 @@ - #define BASE_Y 7 - #define MAX_COLS 1024 - -+static void -+failed(const char *s) -+{ -+ int save = errno; -+ endwin(); -+ errno = save; -+ perror(s); -+ ExitProgram(EXIT_FAILURE); -+} -+ - static bool - Quit(int ch) - { -@@ -87,6 +97,8 @@ - txtwin = stdscr; - base_y = BASE_Y; - } -+ if (txtwin == 0) -+ failed("cannot create txtwin"); - - keypad(txtwin, TRUE); /* enable keyboard mapping */ - (void) cbreak(); /* take input chars one at a time, no wait for \n */ -diff -Naur ncurses-5.9/test/insdelln.c ncurses-5.9.patch/test/insdelln.c ---- ncurses-5.9/test/insdelln.c 2010-11-14 00:39:38.000000000 +0100 -+++ ncurses-5.9.patch/test/insdelln.c 2014-09-01 16:33:22.570792508 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2008-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: insdelln.c,v 1.5 2010/11/13 23:39:38 tom Exp $ -+ * $Id: insdelln.c,v 1.7 2012/11/18 00:37:58 tom Exp $ - * - * test-driver for deleteln, wdeleteln, insdelln, winsdelln, insertln, winsertln - */ -@@ -175,6 +175,8 @@ - delwin(win1); - touchwin(win); - } else { -+ if (win1) -+ delwin(win1); - beep(); - } - } -@@ -300,7 +302,7 @@ - init_status(win, &st); - - do { -- (void) wattrset(win, st.attr | (attr_t) COLOR_PAIR(st.pair)); -+ (void) wattrset(win, (int) (st.attr | (attr_t) COLOR_PAIR(st.pair))); - switch (st.ch) { - case 'i': - for (n = 0; n < st.count; ++n) -diff -Naur ncurses-5.9/test/inserts.c ncurses-5.9.patch/test/inserts.c ---- ncurses-5.9/test/inserts.c 2010-12-12 01:19:55.000000000 +0100 -+++ ncurses-5.9.patch/test/inserts.c 2014-09-01 16:33:22.570792508 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: inserts.c,v 1.23 2010/12/12 00:19:55 tom Exp $ -+ * $Id: inserts.c,v 1.27 2012/12/16 00:35:27 tom Exp $ - * - * Demonstrate the winsstr() and winsch functions. - * Thomas Dickey - 2002/10/19 -@@ -167,6 +167,15 @@ - (void) cbreak(); /* take input chars one at a time, no wait for \n */ - (void) noecho(); /* don't echo input */ - keypad(stdscr, TRUE); -+ -+ /* -+ * Show the characters inserted in color, to distinguish from those -+ * that are shifted. -+ */ -+ if (has_colors()) { -+ start_color(); -+ init_pair(1, COLOR_WHITE, COLOR_BLUE); -+ } - } - - limit = LINES - 5; -@@ -200,14 +209,8 @@ - - doupdate(); - -- /* -- * Show the characters inserted in color, to distinguish from those that -- * are shifted. -- */ - if (has_colors()) { -- start_color(); -- init_pair(1, COLOR_WHITE, COLOR_BLUE); -- wbkgdset(work, COLOR_PAIR(1) | ' '); -+ wbkgdset(work, (chtype) (COLOR_PAIR(1) | ' ')); - } - - while ((ch = read_linedata(work)) != ERR && !isQUIT(ch)) { -@@ -216,11 +219,13 @@ - case key_RECUR: - test_inserts(level + 1); - -- touchwin(look); -+ if (look) -+ touchwin(look); - touchwin(work); - touchwin(show); - -- wnoutrefresh(look); -+ if (look) -+ wnoutrefresh(look); - wnoutrefresh(work); - wnoutrefresh(show); - -@@ -368,10 +373,10 @@ - } - } - if (level > 0) { -- delwin(show); - delwin(work); - delwin(look); - } -+ delwin(show); - } - - static void -diff -Naur ncurses-5.9/test/ins_wide.c ncurses-5.9.patch/test/ins_wide.c ---- ncurses-5.9/test/ins_wide.c 2010-12-12 01:20:14.000000000 +0100 -+++ ncurses-5.9.patch/test/ins_wide.c 2014-09-01 16:33:22.570792508 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: ins_wide.c,v 1.15 2010/12/12 00:20:14 tom Exp $ -+ * $Id: ins_wide.c,v 1.20 2012/12/16 00:51:02 tom Exp $ - * - * Demonstrate the wins_wstr() and wins_wch functions. - * Thomas Dickey - 2002/11/23 -@@ -228,8 +228,9 @@ - WINDOW *work = 0; - WINDOW *show = 0; - int margin = (2 * MY_TABSIZE) - 1; -- Options option = ((m_opt ? oMove : oDefault) -- | ((w_opt || (level > 0)) ? oWindow : oDefault)); -+ Options option = (Options) ((int) (m_opt ? oMove : oDefault) -+ | (int) ((w_opt || (level > 0)) -+ ? oWindow : oDefault)); - - if (first) { - static char cmd[80]; -@@ -241,6 +242,15 @@ - (void) cbreak(); /* take input chars one at a time, no wait for \n */ - (void) noecho(); /* don't echo input */ - keypad(stdscr, TRUE); -+ -+ /* -+ * Show the characters inserted in color, to distinguish from those -+ * that are shifted. -+ */ -+ if (has_colors()) { -+ start_color(); -+ init_pair(1, COLOR_WHITE, COLOR_BLUE); -+ } - } - - limit = LINES - 5; -@@ -274,14 +284,8 @@ - - doupdate(); - -- /* -- * Show the characters inserted in color, to distinguish from those that -- * are shifted. -- */ - if (has_colors()) { -- start_color(); -- init_pair(1, COLOR_WHITE, COLOR_BLUE); -- wbkgdset(work, COLOR_PAIR(1) | ' '); -+ wbkgdset(work, (chtype) (COLOR_PAIR(1) | ' ')); - } - - while ((ch = read_linedata(work)) != ERR && !isQUIT(ch)) { -@@ -290,11 +294,13 @@ - case key_RECUR: - test_inserts(level + 1); - -- touchwin(look); -+ if (look) -+ touchwin(look); - touchwin(work); - touchwin(show); - -- wnoutrefresh(look); -+ if (look) -+ wnoutrefresh(look); - wnoutrefresh(work); - wnoutrefresh(show); - -@@ -438,10 +444,10 @@ - } - } - if (level > 0) { -- delwin(show); - delwin(work); - delwin(look); - } -+ delwin(show); - } - - static void -diff -Naur ncurses-5.9/test/knight.c ncurses-5.9.patch/test/knight.c ---- ncurses-5.9/test/knight.c 2010-11-13 21:44:21.000000000 +0100 -+++ ncurses-5.9.patch/test/knight.c 2014-09-01 16:33:22.570792508 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -33,7 +33,7 @@ - * Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995. Mouse support - * added September 20th 1995. - * -- * $Id: knight.c,v 1.31 2010/11/13 20:44:21 tom Exp $ -+ * $Id: knight.c,v 1.36 2013/02/16 19:53:08 tom Exp $ - */ - - #include <test.priv.h> -@@ -123,13 +123,16 @@ - (void) init_pair(PLUS_COLOR, (short) COLOR_RED, (short) bg); - (void) init_pair(MINUS_COLOR, (short) COLOR_GREEN, (short) bg); - -- trail |= COLOR_PAIR(TRAIL_COLOR); -- plus |= COLOR_PAIR(PLUS_COLOR); -- minus |= COLOR_PAIR(MINUS_COLOR); -+ trail |= (chtype) COLOR_PAIR(TRAIL_COLOR); -+ plus |= (chtype) COLOR_PAIR(PLUS_COLOR); -+ minus |= (chtype) COLOR_PAIR(MINUS_COLOR); - } - #ifdef NCURSES_MOUSE_VERSION - (void) mousemask(BUTTON1_CLICKED, (mmask_t *) NULL); - #endif /* NCURSES_MOUSE_VERSION */ -+#if defined(PDCURSES) -+ mouse_set(BUTTON1_RELEASED); -+#endif - - oldch = minus; - } -@@ -300,15 +303,16 @@ - } - } - --static void -+static bool - find_next_move(int *y, int *x) - { - unsigned j, k; - int found = -1; - int first = -1; -- int next = 0; -+ int next = -1; - int oldy, oldx; - int newy, newx; -+ bool result = FALSE; - - if (movecount > 1) { - oldy = history[movecount - 1].y; -@@ -335,9 +339,27 @@ - *y = oldy + offsets[next].y; - *x = oldx + offsets[next].x; - } -- } else { -- beep(); -+ result = TRUE; - } -+ return result; -+} -+ -+static void -+count_next_moves(int y, int x) -+{ -+ int count = 0; -+ unsigned j; -+ -+ wprintw(msgwin, "\nMove %d", movecount); -+ for (j = 0; j < SIZEOF(offsets); j++) { -+ int newy = y + offsets[j].y; -+ int newx = x + offsets[j].x; -+ if (chksqr(newy, newx)) { -+ ++count; -+ } -+ } -+ wprintw(msgwin, ", gives %d choices", count); -+ wclrtoeol(msgwin); - } - - static void -@@ -558,8 +580,9 @@ - nx = col + 1; - break; - --#ifdef NCURSES_MOUSE_VERSION -+#ifdef KEY_MOUSE - case KEY_MOUSE: -+#ifdef NCURSES_MOUSE_VERSION - { - MEVENT myevent; - -@@ -576,6 +599,24 @@ - } - } - #endif /* NCURSES_MOUSE_VERSION */ -+#ifdef PDCURSES -+ { -+ int test_y, test_x; -+ request_mouse_pos(); -+ test_y = MOUSE_Y_POS + 0; -+ test_x = MOUSE_X_POS + 1; -+ if (test_y >= CY(0) && test_y <= CY(BDEPTH) -+ && test_x >= CX(0) && test_x <= CX(BWIDTH)) { -+ ny = CYINV(test_y); -+ nx = CXINV(test_x); -+ wmove(helpwin, 0, 0); -+ wrefresh(helpwin); -+ ungetch('\n'); -+ } -+ break; -+ } -+#endif /* PDCURSES */ -+#endif /* KEY_MOUSE */ - - case KEY_B2: - case '\n': -@@ -614,8 +655,8 @@ - ny = history[movecount].y; - nx = history[movecount].x; - if (nx < 0 || ny < 0) { -- ny = lastrow; -- nx = lastcol; -+ ny = (lastrow >= 0) ? lastrow : 0; -+ nx = (lastcol >= 0) ? lastcol : 0; - } - movecount = 0; - board[ny][nx] = FALSE; -@@ -652,7 +693,10 @@ - case 'a': - nx = col; - ny = rw; -- find_next_move(&ny, &nx); -+ if (find_next_move(&ny, &nx)) -+ count_next_moves(ny, nx); -+ else -+ beep(); - break; - - case 'F': -diff -Naur ncurses-5.9/test/linedata.h ncurses-5.9.patch/test/linedata.h ---- ncurses-5.9/test/linedata.h 2010-11-13 22:12:31.000000000 +0100 -+++ ncurses-5.9.patch/test/linedata.h 2014-09-01 16:33:22.570792508 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2009-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -85,10 +85,8 @@ - beep(); - continue; - } -- } else if (code != ERR) { -- result = (int) ch; -- break; - } else { -+ result = (int) ch; - break; - } - } -diff -Naur ncurses-5.9/test/Makefile.in ncurses-5.9.patch/test/Makefile.in ---- ncurses-5.9/test/Makefile.in 2010-11-28 17:39:40.000000000 +0100 -+++ ncurses-5.9.patch/test/Makefile.in 2014-09-01 16:33:22.524792400 +0200 -@@ -1,6 +1,6 @@ --# $Id: Makefile.in,v 1.108 2010/11/28 16:39:40 tom Exp $ -+# $Id: Makefile.in,v 1.111 2013/10/05 23:46:10 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -47,13 +47,16 @@ - srcdir = @srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ -+datarootdir = @datarootdir@ -+ - bindir = @bindir@ - libdir = @libdir@ - includedir = @includedir@ -+includesubdir = @includesubdir@ - - BINDIR = $(DESTDIR)$(bindir) - LIBDIR = $(DESTDIR)$(libdir) --INCLUDEDIR = $(DESTDIR)$(includedir) -+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir) - - LIBTOOL = @LIBTOOL@ - LIBTOOL_CLEAN = @LIB_CLEAN@ -@@ -102,7 +105,7 @@ - LDFLAGS_PROFILE = $(LDFLAGS) $(CFLAGS_PROFILE) - LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@ - --TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@ -+TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@ - - # use these for linking with all of the libraries - LIBS_DEFAULT = $(TEST_ARGS) @LIBS@ $(TEST_LIBS) $(MATH_LIB) -@@ -117,8 +120,8 @@ - LDFLAGS_CURSES = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_CURSES) - - # use these for linking with the tinfo library if we have it, or curses library if not --LIBS_TINFO = @LDFLAGS_STATIC@ @TINFO_ARGS@ @LDFLAGS_SHARED@ @LIBS@ $(TEST_LIBS) $(MATH_LIB) --LDFLAGS_TINFO = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TINFO) -+LIBS_TINFO = @LDFLAGS_STATIC@ @TINFO_LIBS@ @LDFLAGS_SHARED@ @LIBS@ $(TEST_LIBS) $(MATH_LIB) -+LDFLAGS_TINFO = @TINFO_LDFLAGS@ $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TINFO) - - LINT = @LINT@ - LINT_OPTS = @LINT_OPTS@ -diff -Naur ncurses-5.9/test/make-tar.sh ncurses-5.9.patch/test/make-tar.sh ---- ncurses-5.9/test/make-tar.sh 2011-03-26 21:46:51.000000000 +0100 -+++ ncurses-5.9.patch/test/make-tar.sh 2014-09-01 16:33:22.570792508 +0200 -@@ -1,7 +1,7 @@ - #!/bin/sh --# $Id: make-tar.sh,v 1.10 2011/03/26 20:46:51 tom Exp $ -+# $Id: make-tar.sh,v 1.12 2013/10/26 23:11:43 tom Exp $ - ############################################################################## --# Copyright (c) 2010,2011 Free Software Foundation, Inc. # -+# Copyright (c) 2010-2011,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -66,11 +66,11 @@ - make_changelog() { - test -f $1 && chmod u+w $1 - cat >$1 <<EOF --`echo $PKG_NAME|tr '[A-Z]' '[a-z]'` ($NCURSES_PATCH) unstable; urgency=low -+`echo $PKG_NAME|tr '[A-Z]' '[a-z]'` ($NCURSES_MAJOR.$NCURSES_MINOR-$NCURSES_PATCH) unstable; urgency=low - - * snapshot of ncurses subpackage for $PKG_NAME. - -- -- `head -1 $HOME/.signature` `date -R` -+ -- `head -n 1 $HOME/.signature` `date -R` - EOF - } - -@@ -108,7 +108,10 @@ - do - edit_specfile $spec - done --make_changelog $BUILD/$ROOTNAME/package/debian/changelog -+for spec in $BUILD/$ROOTNAME/package/debian* -+do -+ make_changelog $spec/changelog -+done - - cp -p $SOURCE/NEWS $BUILD/$ROOTNAME - -diff -Naur ncurses-5.9/test/modules ncurses-5.9.patch/test/modules ---- ncurses-5.9/test/modules 2010-01-23 18:51:38.000000000 +0100 -+++ ncurses-5.9.patch/test/modules 2014-09-01 16:33:22.571792503 +0200 -@@ -1,6 +1,6 @@ --# $Id: modules,v 1.43 2010/01/23 17:51:38 tom Exp $ -+# $Id: modules,v 1.50 2013/12/07 18:06:01 tom Exp $ - ############################################################################## --# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. # -+# Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -50,12 +50,14 @@ - ditto progs $(srcdir) $(HEADER_DEPS) - dots progs $(srcdir) $(HEADER_DEPS) - dots_mvcur progs $(srcdir) $(HEADER_DEPS) -+dots_termcap progs $(srcdir) $(HEADER_DEPS) - echochar progs $(srcdir) $(HEADER_DEPS) - edit_field progs $(srcdir) $(HEADER_DEPS) $(srcdir)/edit_field.h - filter progs $(srcdir) $(HEADER_DEPS) - firework progs $(srcdir) $(HEADER_DEPS) - firstlast progs $(srcdir) $(HEADER_DEPS) - foldkeys progs $(srcdir) $(HEADER_DEPS) -+form_driver_w progs $(srcdir) $(HEADER_DEPS) - gdc progs $(srcdir) $(HEADER_DEPS) - hanoi progs $(srcdir) $(HEADER_DEPS) - hashtest progs $(srcdir) $(HEADER_DEPS) -@@ -86,10 +88,12 @@ - test_instr progs $(srcdir) $(HEADER_DEPS) - test_inwstr progs $(srcdir) $(HEADER_DEPS) - test_opaque progs $(srcdir) $(HEADER_DEPS) -+test_vid_puts progs $(srcdir) $(HEADER_DEPS) -+test_vidputs progs $(srcdir) $(HEADER_DEPS) - testaddch progs $(srcdir) $(HEADER_DEPS) - testcurs progs $(srcdir) $(HEADER_DEPS) - testscanw progs $(srcdir) $(HEADER_DEPS) --view progs $(srcdir) $(HEADER_DEPS) -+view progs $(srcdir) $(HEADER_DEPS) $(srcdir)/widechars.h - worm progs $(srcdir) $(HEADER_DEPS) - xmas progs $(srcdir) $(HEADER_DEPS) - -diff -Naur ncurses-5.9/test/movewindow.c ncurses-5.9.patch/test/movewindow.c ---- ncurses-5.9/test/movewindow.c 2010-11-14 00:34:55.000000000 +0100 -+++ ncurses-5.9.patch/test/movewindow.c 2014-09-01 16:33:22.571792503 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2006-2008,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2006-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,18 +26,22 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: movewindow.c,v 1.24 2010/11/13 23:34:55 tom Exp $ -+ * $Id: movewindow.c,v 1.39 2013/05/04 19:41:02 tom Exp $ - * - * Demonstrate move functions for windows and derived windows from the curses - * library. - * -- * Thomas Dickey - 2006/2/11 -+ * Author: Thomas E. Dickey - */ - /* - derwin - mvderwin - subwin - mvwin -+ -+TODO: -+ add command to reset subwindow's origin to coincide with parent. -+ add command to delete subwindow (check if it has subwindows though) - */ - - #include <test.priv.h> -@@ -76,6 +80,14 @@ - static FRAME *all_windows; - - static void -+failed(const char *s) -+{ -+ perror(s); -+ endwin(); -+ ExitProgram(EXIT_FAILURE); -+} -+ -+static void - message(int lineno, CONST_FMT char *fmt, va_list argp) - { - int y, x; -@@ -122,7 +134,12 @@ - * Arrow keys move cursor, return location at current on non-arrow key. - */ - static PAIR * --selectcell(WINDOW *parent, int uli, int ulj, int lri, int lrj) -+selectcell(WINDOW *parent, -+ WINDOW *child, -+ int uli, int ulj, -+ int lri, int lrj, -+ bool relative, -+ bool * more) - { - static PAIR res; /* result cell */ - int si = lri - uli + 1; /* depth of the select area */ -@@ -131,25 +148,46 @@ - - res.y = uli; - res.x = ulj; -+ -+ if (child != 0) { -+ if (relative) { -+ getparyx(child, i, j); -+ } else { -+ getbegyx(child, i, j); -+ i -= uli + getbegy(parent); -+ j -= ulj + getbegx(parent); -+ } -+ } -+ -+ if (more) -+ *more = FALSE; -+ - for (;;) { -- tail_line("Upper left [%2d,%2d] Lower right [%2d,%2d] -> %d,%d", -+ bool moved = FALSE; -+ -+ tail_line("Upper left [%2d,%2d] Lower right [%2d,%2d] -> %d,%d -> %d,%d", - uli, ulj, - lri, lrj, -+ i, j, - uli + i, ulj + j); - wmove(parent, uli + i, ulj + j); - - switch (wgetch(parent)) { - case KEY_UP: - i += si - 1; -+ moved = TRUE; - break; - case KEY_DOWN: - i++; -+ moved = TRUE; - break; - case KEY_LEFT: - j += sj - 1; -+ moved = TRUE; - break; - case KEY_RIGHT: - j++; -+ moved = TRUE; - break; - case QUIT: - case ESCAPE: -@@ -161,8 +199,13 @@ - - getmouse(&event); - if (event.y > uli && event.x > ulj) { -- i = event.y - uli; -- j = event.x - ulj; -+ if (parent != stdscr) { -+ i = event.y - getbegy(parent) - uli; -+ j = event.x - getbegx(parent) - ulj; -+ } else { -+ i = event.y - uli; -+ j = event.x - ulj; -+ } - } else { - beep(); - break; -@@ -175,8 +218,26 @@ - res.x = ulj + j; - return (&res); - } -- i %= si; -- j %= sj; -+ -+ if (si <= 0) -+ i = 0; -+ else -+ i %= si; -+ -+ if (sj <= 0) -+ j = 0; -+ else -+ j %= sj; -+ -+ /* -+ * If the caller can handle continuous movement, return the result. -+ */ -+ if (moved && more) { -+ *more = TRUE; -+ res.y = uli + i; -+ res.x = ulj + j; -+ return (&res); -+ } - } - } - -@@ -194,12 +255,20 @@ - bool result = FALSE; - - head_line("Use arrows to move cursor, anything else to mark corner 1"); -- if ((tmp = selectcell(parent, min_line, min_col, max_line, max_col)) != 0) { -+ if ((tmp = selectcell(parent, 0, -+ min_line, min_col, -+ max_line, max_col, -+ FALSE, -+ (bool *) 0)) != 0) { - *ul = *tmp; - MvWAddCh(parent, ul->y, ul->x, '*'); - - head_line("Use arrows to move cursor, anything else to mark corner 2"); -- if ((tmp = selectcell(parent, ul->y, ul->x, max_line, max_col)) != 0) { -+ if ((tmp = selectcell(parent, 0, -+ ul->y, ul->x, -+ max_line, max_col, -+ FALSE, -+ (bool *) 0)) != 0) { - *lr = *tmp; - MvWAddCh(parent, lr->y, lr->x, '*'); - wmove(parent, lr->y, lr->x); -@@ -252,6 +321,8 @@ - keypad(child, TRUE); - if (need > have) { - all_windows = typeRealloc(FRAME, need, all_windows); -+ if (!all_windows) -+ failed("add_window"); - } - all_windows[num_windows].parent = parent; - all_windows[num_windows].child = child; -@@ -341,10 +412,7 @@ - - for (n = 0; n < num_windows; ++n) { - if (all_windows[n].parent == parent) { -- int y0, x0; -- -- getbegyx(all_windows[n].child, y0, x0); -- mvwin(all_windows[n].child, y0 + dy, x0 + dx); -+ mvwin(all_windows[n].child, dy, dx); - recur_move_window(all_windows[n].child, dy, dx); - } - } -@@ -366,20 +434,24 @@ - int min_line = top ? LINE_MIN : 0; - int max_line = top ? LINE_MAX : getmaxy(parent); - PAIR *tmp; -+ bool more; - - head_line("Select new position for %swindow", top ? "" : "sub"); - -- if ((tmp = selectcell(parent, -- min_line, min_col, -- max_line, max_col)) != 0) { -+ while ((tmp = selectcell(parent, -+ win, -+ min_line, min_col, -+ max_line, max_col, -+ FALSE, -+ &more)) != 0) { - int y0, x0; - getbegyx(parent, y0, x0); - /* -- * Note: Moving a subwindow has the effect of moving a viewport -- * around the screen. The parent window retains the contents of -- * the subwindow in the original location, but the viewport will -- * show the contents (again) at the new location. So it will look -- * odd when testing. -+ * Moving a subwindow has the effect of moving a viewport around -+ * the screen. The parent window retains the contents of the -+ * subwindow in the original location, but the viewport will show -+ * the contents (again) at the new location. So it will look odd -+ * when testing. - */ - if (mvwin(win, y0 + tmp->y, x0 + tmp->x) != ERR) { - if (recur) { -@@ -388,45 +460,69 @@ - refresh_all(win); - doupdate(); - result = TRUE; -+ } else { -+ result = FALSE; - } -+ if (!more) -+ break; - } - } -+ head_line("done"); - return result; - } - -+static void -+show_derwin(WINDOW *win) -+{ -+ int pary, parx, maxy, maxx; -+ -+ getmaxyx(win, maxy, maxx); -+ getparyx(win, pary, parx); -+ -+ head_line("Select new position for derived window at %d,%d (%d,%d)", -+ pary, parx, maxy, maxx); -+} -+ - /* - * test mvderwin(). - */ - static bool --move_subwin(WINDOW *win) -+move_derwin(WINDOW *win) - { - WINDOW *parent = parent_of(win); - bool result = FALSE; - - if (parent != 0) { - bool top = (parent == stdscr); -- if (!top) { -- int min_col = top ? COL_MIN : 0; -- int max_col = top ? COL_MAX : getmaxx(parent); -- int min_line = top ? LINE_MIN : 0; -- int max_line = top ? LINE_MAX : getmaxy(parent); -- PAIR *tmp; -- -- head_line("Select new position for subwindow"); -- -- if ((tmp = selectcell(parent, -- min_line, min_col, -- max_line, max_col)) != 0) { -- int y0, x0; -- getbegyx(parent, y0, x0); -- if (mvderwin(win, y0 + tmp->y, x0 + tmp->x) != ERR) { -- refresh_all(win); -- doupdate(); -- result = TRUE; -- } -+ int min_col = top ? COL_MIN : 0; -+ int max_col = top ? COL_MAX : getmaxx(parent); -+ int min_line = top ? LINE_MIN : 0; -+ int max_line = top ? LINE_MAX : getmaxy(parent); -+ PAIR *tmp; -+ bool more; -+ -+ show_derwin(win); -+ while ((tmp = selectcell(parent, -+ win, -+ min_line, min_col, -+ max_line, max_col, -+ TRUE, -+ &more)) != 0) { -+ if (mvderwin(win, tmp->y, tmp->x) != ERR) { -+ refresh_all(win); -+ doupdate(); -+ repaint_one(win); -+ doupdate(); -+ result = TRUE; -+ show_derwin(win); -+ } else { -+ flash(); - } -+ if (!more) -+ break; - } - } -+ head_line("done"); - return result; - } - -@@ -449,6 +545,28 @@ - wrefresh(win); - } - -+static void -+fill_with_pattern(WINDOW *win) -+{ -+ int y, x; -+ int y0, x0; -+ int y1, x1; -+ int ch = 'a'; -+ -+ getyx(win, y0, x0); -+ getmaxyx(win, y1, x1); -+ for (y = 0; y < y1; ++y) { -+ for (x = 0; x < x1; ++x) { -+ MvWAddCh(win, y, x, (chtype) ch); -+ if (++ch > 'z') -+ ch = 'a'; -+ } -+ } -+ wsyncdown(win); -+ wmove(win, y0, x0); -+ wrefresh(win); -+} -+ - #define lines_of(ul,lr) (lr.y - ul.y + 1) - #define cols_of(ul,lr) (lr.x - ul.x + 1) - #define pair_of(ul) ul.y, ul.x -@@ -523,12 +641,13 @@ - { 'b', "Draw a box inside the current window" }, - { 'c', "Create a new window" }, - { 'd', "Create a new derived window" }, -+ { 'D', "Move derived window (moves viewport)" }, - { 'f', "Fill the current window with the next character" }, -+ { 'F', "Fill the current window with a pattern" }, - { 'm', "Move the current window" }, - { 'M', "Move the current window (and its children)" }, - { 'q', "Quit" }, - { 's', "Create a new subwindow" }, -- { 't', "Move the current subwindow (moves content)" }, - { CTRL('L'), "Repaint all windows, doing current one last" }, - { CTRL('N'), "Cursor to next window" }, - { CTRL('P'), "Cursor to previous window" }, -@@ -571,6 +690,10 @@ - #endif /* NCURSES_MOUSE_VERSION */ - - while (!done && (ch = wgetch(current_win)) != ERR) { -+ int y, x; -+ -+ getyx(current_win, y, x); -+ - switch (ch) { - case '?': - show_help(current_win); -@@ -584,9 +707,18 @@ - case 'd': - current_win = create_my_derwin(current_win); - break; -+ case 'D': -+ if (!move_derwin(current_win)) { -+ tail_line("error"); -+ continue; -+ } -+ break; - case 'f': - fill_window(current_win, (chtype) wgetch(current_win)); - break; -+ case 'F': -+ fill_with_pattern(current_win); -+ break; - case 'm': - case 'M': - if (!move_window(current_win, (ch == 'M'))) { -@@ -600,12 +732,6 @@ - case 's': - current_win = create_my_subwin(current_win); - break; -- case 't': -- if (!move_subwin(current_win)) { -- tail_line("error"); -- continue; -- } -- break; - case CTRL('L'): - refresh_all(current_win); - break; -@@ -621,6 +747,7 @@ - /* want to allow deleting a window also */ - #endif - default: -+ wmove(current_win, y, x); - tail_line("unrecognized key (use '?' for help)"); - beep(); - continue; -diff -Naur ncurses-5.9/test/ncurses.c ncurses-5.9.patch/test/ncurses.c ---- ncurses-5.9/test/ncurses.c 2011-01-22 20:48:33.000000000 +0100 -+++ ncurses-5.9.patch/test/ncurses.c 2014-09-01 16:33:22.572792500 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -40,7 +40,7 @@ - Author: Eric S. Raymond <esr@snark.thyrsus.com> 1993 - Thomas E. Dickey (beginning revision 1.27 in 1996). - --$Id: ncurses.c,v 1.365 2011/01/22 19:48:33 tom Exp $ -+$Id: ncurses.c,v 1.397 2014/02/01 22:29:37 tom Exp $ - - ***************************************************************************/ - -@@ -157,15 +157,23 @@ - static int max_pairs; /* ...and the number of color pairs */ - - typedef struct { -- short red; -- short green; -- short blue; -+ NCURSES_COLOR_T red; -+ NCURSES_COLOR_T green; -+ NCURSES_COLOR_T blue; - } RGB_DATA; - - static RGB_DATA *all_colors; - - static void main_menu(bool); - -+static void -+failed(const char *s) -+{ -+ perror(s); -+ endwin(); -+ ExitProgram(EXIT_FAILURE); -+} -+ - /* The behavior of mvhline, mvvline for negative/zero length is unspecified, - * though we can rely on negative x/y values to stop the macro. - */ -@@ -490,7 +498,7 @@ - #ifdef __MINGW32__ - system("cmd.exe"); - #else -- system("sh"); -+ IGNORE_RC(system("sh")); - #endif - if (message) - addstr("returned from shellout.\n"); -@@ -723,6 +731,8 @@ - len_winstack = need; - winstack = typeRealloc(WINSTACK, len_winstack, winstack); - } -+ if (!winstack) -+ failed("remember_boxes"); - winstack[level].text = txt_win; - winstack[level].frame = box_win; - } -@@ -777,12 +787,21 @@ - } - doupdate(); - } --#endif /* resize_boxes */ -+#endif /* resize_boxes */ - #else - #define forget_boxes() /* nothing */ - #define remember_boxes(level,text,frame) /* nothing */ - #endif - -+/* -+ * Return-code is OK/ERR or a keyname. -+ */ -+static const char * -+ok_keyname(int code) -+{ -+ return ((code == OK) ? "OK" : ((code == ERR) ? "ERR" : keyname(code))); -+} -+ - static void - wgetch_test(unsigned level, WINDOW *win, int delay) - { -@@ -824,9 +843,11 @@ - } else if (c == 'g') { - waddstr(win, "getstr test: "); - echo(); -- wgetnstr(win, buf, sizeof(buf) - 1); -+ c = wgetnstr(win, buf, sizeof(buf) - 1); - noecho(); -- wprintw(win, "I saw %d characters:\n\t`%s'.", (int) strlen(buf), buf); -+ wprintw(win, "I saw %d characters:\n\t`%s' (%s).", -+ (int) strlen(buf), buf, -+ ok_keyname(c)); - wclrtoeol(win); - wgetch_wrap(win, first_y); - } else if (c == 'k') { -@@ -1023,6 +1044,8 @@ - free(result); - result = 0; - } -+ } else { -+ failed("wcstos"); - } - } - return result; -@@ -1072,7 +1095,7 @@ - } else if (c == 'g') { - waddstr(win, "getstr test: "); - echo(); -- code = wgetn_wstr(win, wint_buf, sizeof(wint_buf) - 1); -+ code = wgetn_wstr(win, wint_buf, BUFSIZ - 1); - noecho(); - if (code == ERR) { - wprintw(win, "wgetn_wstr returns an error."); -@@ -1278,29 +1301,29 @@ - } - - static bool --cycle_color_attr(int ch, short *fg, short *bg, short *tx) -+cycle_color_attr(int ch, NCURSES_COLOR_T *fg, NCURSES_COLOR_T *bg, NCURSES_COLOR_T *tx) - { - bool error = FALSE; - - if (use_colors) { - switch (ch) { - case 'f': -- *fg = (short) (*fg + 1); -+ *fg = (NCURSES_COLOR_T) (*fg + 1); - break; - case 'F': -- *fg = (short) (*fg - 1); -+ *fg = (NCURSES_COLOR_T) (*fg - 1); - break; - case 'b': -- *bg = (short) (*bg + 1); -+ *bg = (NCURSES_COLOR_T) (*bg + 1); - break; - case 'B': -- *bg = (short) (*bg - 1); -+ *bg = (NCURSES_COLOR_T) (*bg - 1); - break; - case 't': -- *tx = (short) (*tx + 1); -+ *tx = (NCURSES_COLOR_T) (*tx + 1); - break; - case 'T': -- *tx = (short) (*tx - 1); -+ *tx = (NCURSES_COLOR_T) (*tx - 1); - break; - default: - beep(); -@@ -1308,17 +1331,17 @@ - break; - } - if (*fg >= COLORS) -- *fg = (short) min_colors; -+ *fg = (NCURSES_COLOR_T) min_colors; - if (*fg < min_colors) -- *fg = (short) (COLORS - 1); -+ *fg = (NCURSES_COLOR_T) (COLORS - 1); - if (*bg >= COLORS) -- *bg = (short) min_colors; -+ *bg = (NCURSES_COLOR_T) min_colors; - if (*bg < min_colors) -- *bg = (short) (COLORS - 1); -+ *bg = (NCURSES_COLOR_T) (COLORS - 1); - if (*tx >= COLORS) - *tx = -1; - if (*tx < -1) -- *tx = (short) (COLORS - 1); -+ *tx = (NCURSES_COLOR_T) (COLORS - 1); - } else { - beep(); - error = TRUE; -@@ -1394,7 +1417,7 @@ - if (!(termattrs() & test)) { - printw(" (N/A)"); - } else { -- if (ncv > 0 && (getbkgd(stdscr) & A_COLOR)) { -+ if (ncv > 0 && stdscr && (getbkgd(stdscr) & A_COLOR)) { - static const chtype table[] = - { - A_STANDOUT, -@@ -1406,6 +1429,9 @@ - #ifdef A_INVIS - A_INVIS, - #endif -+#ifdef A_ITALIC -+ A_ITALIC, -+#endif - A_PROTECT, - A_ALTCHARSET - }; -@@ -1427,11 +1453,13 @@ - } - return row + 2; - } -+ -+typedef struct { -+ attr_t attr; -+ NCURSES_CONST char *name; -+} ATTR_TBL; - /* *INDENT-OFF* */ --static const struct { -- chtype attr; -- NCURSES_CONST char * name; --} attrs_to_test[] = { -+static const ATTR_TBL attrs_to_test[] = { - { A_STANDOUT, "STANDOUT" }, - { A_REVERSE, "REVERSE" }, - { A_BOLD, "BOLD" }, -@@ -1442,12 +1470,36 @@ - #ifdef A_INVIS - { A_INVIS, "INVISIBLE" }, - #endif -+#ifdef A_ITALIC -+ { A_ITALIC, "ITALIC" }, -+#endif - { A_NORMAL, "NORMAL" }, - }; - /* *INDENT-ON* */ - -+static unsigned -+init_attr_list(ATTR_TBL * target, attr_t attrs) -+{ -+ unsigned result = 0; -+ size_t n; -+ -+ for (n = 0; n < SIZEOF(attrs_to_test); ++n) { -+ attr_t test = attrs_to_test[n].attr; -+ if (test == A_NORMAL || (test & attrs) != 0) { -+ target[result++] = attrs_to_test[n]; -+ } -+ } -+ return result; -+} -+ - static bool --attr_getc(int *skip, short *fg, short *bg, short *tx, int *ac, unsigned *kc) -+attr_getc(int *skip, -+ NCURSES_COLOR_T *fg, -+ NCURSES_COLOR_T *bg, -+ NCURSES_COLOR_T *tx, -+ int *ac, -+ unsigned *kc, -+ unsigned limit) - { - bool result = TRUE; - bool error = FALSE; -@@ -1480,13 +1532,13 @@ - break; - case 'v': - if (*kc == 0) -- *kc = SIZEOF(attrs_to_test) - 1; -+ *kc = limit - 1; - else - *kc -= 1; - break; - case 'V': - *kc += 1; -- if (*kc >= SIZEOF(attrs_to_test)) -+ if (*kc >= limit) - *kc = 0; - break; - case '<': -@@ -1513,72 +1565,78 @@ - { - int n; - int skip = get_xmc(); -- short fg = COLOR_BLACK; /* color pair 0 is special */ -- short bg = COLOR_BLACK; -- short tx = -1; -+ NCURSES_COLOR_T fg = COLOR_BLACK; /* color pair 0 is special */ -+ NCURSES_COLOR_T bg = COLOR_BLACK; -+ NCURSES_COLOR_T tx = -1; - int ac = 0; - unsigned j, k; -+ ATTR_TBL my_list[SIZEOF(attrs_to_test)]; -+ unsigned my_size = init_attr_list(my_list, termattrs()); - -- if (skip < 0) -- skip = 0; -- -- n = skip; /* make it easy */ -- k = SIZEOF(attrs_to_test) - 1; -- init_attr_string(); -+ if (my_size > 1) { -+ if (skip < 0) -+ skip = 0; -+ -+ n = skip; /* make it easy */ -+ k = my_size - 1; -+ init_attr_string(); - -- do { -- int row = 2; -- chtype normal = A_NORMAL | BLANK; -- chtype extras = (chtype) ac; -+ do { -+ int row = 2; -+ chtype normal = A_NORMAL | BLANK; -+ chtype extras = (chtype) ac; - -- if (use_colors) { -- short pair = (short) (fg != COLOR_BLACK || bg != COLOR_BLACK); -- if (pair != 0) { -- pair = 1; -- if (init_pair(pair, fg, bg) == ERR) { -- beep(); -- } else { -- normal |= (chtype) COLOR_PAIR(pair); -+ if (use_colors) { -+ NCURSES_PAIRS_T pair = 0; -+ if ((fg != COLOR_BLACK) || (bg != COLOR_BLACK)) { -+ pair = 1; -+ if (init_pair(pair, fg, bg) == ERR) { -+ beep(); -+ } else { -+ normal |= (chtype) COLOR_PAIR(pair); -+ } - } -- } -- if (tx >= 0) { -- pair = 2; -- if (init_pair(pair, tx, bg) == ERR) { -- beep(); -- } else { -- extras |= (chtype) COLOR_PAIR(pair); -+ if (tx >= 0) { -+ pair = 2; -+ if (init_pair(pair, tx, bg) == ERR) { -+ beep(); -+ } else { -+ extras |= (chtype) COLOR_PAIR(pair); -+ } - } - } -- } -- bkgd(normal); -- bkgdset(normal); -- erase(); -+ bkgd(normal); -+ bkgdset(normal); -+ erase(); - -- box(stdscr, 0, 0); -- MvAddStr(0, 20, "Character attribute test display"); -+ box(stdscr, 0, 0); -+ MvAddStr(0, 20, "Character attribute test display"); - -- for (j = 0; j < SIZEOF(attrs_to_test); ++j) { -- bool arrow = (j == k); -- row = show_attr(row, n, arrow, -- extras | -- attrs_to_test[j].attr | -- attrs_to_test[k].attr, -- attrs_to_test[j].name); -- } -- -- MvPrintw(row, 8, -- "This terminal does %shave the magic-cookie glitch", -- get_xmc() > -1 ? "" : "not "); -- MvPrintw(row + 1, 8, "Enter '?' for help."); -- show_color_attr(fg, bg, tx); -- printw(" ACS (%d)", ac != 0); -+ for (j = 0; j < my_size; ++j) { -+ bool arrow = (j == k); -+ row = show_attr(row, n, arrow, -+ extras | -+ my_list[j].attr | -+ my_list[k].attr, -+ my_list[j].name); -+ } -+ -+ MvPrintw(row, 8, -+ "This terminal does %shave the magic-cookie glitch", -+ get_xmc() > -1 ? "" : "not "); -+ MvPrintw(row + 1, 8, "Enter '?' for help."); -+ show_color_attr(fg, bg, tx); -+ printw(" ACS (%d)", ac != 0); - -- refresh(); -- } while (attr_getc(&n, &fg, &bg, &tx, &ac, &k)); -+ refresh(); -+ } while (attr_getc(&n, &fg, &bg, &tx, &ac, &k, my_size)); - -- bkgdset(A_NORMAL | BLANK); -- erase(); -- endwin(); -+ bkgdset(A_NORMAL | BLANK); -+ erase(); -+ endwin(); -+ } else { -+ Cannot("does not support video attributes."); -+ } - } - - #if USE_WIDEC_SUPPORT -@@ -1616,7 +1674,7 @@ - } - - static void --set_wide_background(short pair) -+set_wide_background(NCURSES_PAIRS_T pair) - { - cchar_t normal; - wchar_t blank[2]; -@@ -1634,9 +1692,10 @@ - attr_t result = A_NORMAL; - attr_t attr; - cchar_t ch; -- short pair; -+ NCURSES_PAIRS_T pair; - wchar_t wch[10]; - -+ memset(&ch, 0, sizeof(ch)); - if (getbkgrnd(&ch) != ERR) { - if (getcchar(&ch, wch, &attr, &pair, 0) != ERR) { - result = attr; -@@ -1646,7 +1705,12 @@ - } - - static int --wide_show_attr(int row, int skip, bool arrow, chtype attr, short pair, const char *name) -+wide_show_attr(int row, -+ int skip, -+ bool arrow, -+ chtype attr, -+ NCURSES_PAIRS_T pair, -+ const char *name) - { - int ncv = get_ncv(); - chtype test = attr & ~WA_ALTCHARSET; -@@ -1675,10 +1739,10 @@ - add_wch(&ch); - } - } else { -- attr_t old_attr; -- short old_pair; -+ attr_t old_attr = 0; -+ NCURSES_PAIRS_T old_pair = 0; - -- (void) attr_get(&old_attr, &old_pair, 0); -+ (void) (attr_get) (&old_attr, &old_pair, 0); - (void) attr_set(attr, pair, 0); - addwstr(wide_attr_test_string); - (void) attr_set(old_attr, old_pair, 0); -@@ -1723,7 +1787,10 @@ - } - - static bool --wide_attr_getc(int *skip, short *fg, short *bg, short *tx, int *ac, unsigned *kc) -+wide_attr_getc(int *skip, -+ NCURSES_COLOR_T *fg, NCURSES_COLOR_T *bg, -+ NCURSES_COLOR_T *tx, int *ac, -+ unsigned *kc, unsigned limit) - { - bool result = TRUE; - bool error = FALSE; -@@ -1756,13 +1823,13 @@ - break; - case 'v': - if (*kc == 0) -- *kc = SIZEOF(attrs_to_test) - 1; -+ *kc = limit - 1; - else - *kc -= 1; - break; - case 'V': - *kc += 1; -- if (*kc >= SIZEOF(attrs_to_test)) -+ if (*kc >= limit) - *kc = 0; - break; - case '<': -@@ -1789,68 +1856,74 @@ - { - int n; - int skip = get_xmc(); -- short fg = COLOR_BLACK; /* color pair 0 is special */ -- short bg = COLOR_BLACK; -- short tx = -1; -+ NCURSES_COLOR_T fg = COLOR_BLACK; /* color pair 0 is special */ -+ NCURSES_COLOR_T bg = COLOR_BLACK; -+ NCURSES_COLOR_T tx = -1; - int ac = 0; - unsigned j, k; -+ ATTR_TBL my_list[SIZEOF(attrs_to_test)]; -+ unsigned my_size = init_attr_list(my_list, term_attrs()); - -- if (skip < 0) -- skip = 0; -+ if (my_size > 1) { -+ if (skip < 0) -+ skip = 0; -+ -+ n = skip; /* make it easy */ -+ k = my_size - 1; -+ wide_init_attr_string(); - -- n = skip; /* make it easy */ -- k = SIZEOF(attrs_to_test) - 1; -- wide_init_attr_string(); -- -- do { -- int row = 2; -- short pair = 0; -- short extras = 0; -+ do { -+ int row = 2; -+ NCURSES_PAIRS_T pair = 0; -+ NCURSES_PAIRS_T extras = 0; - -- if (use_colors) { -- pair = (short) (fg != COLOR_BLACK || bg != COLOR_BLACK); -- if (pair != 0) { -- pair = 1; -- if (init_pair(pair, fg, bg) == ERR) { -- beep(); -+ if (use_colors) { -+ pair = (NCURSES_PAIRS_T) (fg != COLOR_BLACK || bg != COLOR_BLACK); -+ if (pair != 0) { -+ pair = 1; -+ if (init_pair(pair, fg, bg) == ERR) { -+ beep(); -+ } - } -- } -- extras = pair; -- if (tx >= 0) { -- extras = 2; -- if (init_pair(extras, tx, bg) == ERR) { -- beep(); -+ extras = pair; -+ if (tx >= 0) { -+ extras = 2; -+ if (init_pair(extras, tx, bg) == ERR) { -+ beep(); -+ } - } - } -- } -- set_wide_background(pair); -- erase(); -+ set_wide_background(pair); -+ erase(); - -- box_set(stdscr, 0, 0); -- MvAddStr(0, 20, "Character attribute test display"); -+ box_set(stdscr, 0, 0); -+ MvAddStr(0, 20, "Character attribute test display"); - -- for (j = 0; j < SIZEOF(attrs_to_test); ++j) { -- row = wide_show_attr(row, n, j == k, -- ((attr_t) ac | -- attrs_to_test[j].attr | -- attrs_to_test[k].attr), -- extras, -- attrs_to_test[j].name); -- } -- -- MvPrintw(row, 8, -- "This terminal does %shave the magic-cookie glitch", -- get_xmc() > -1 ? "" : "not "); -- MvPrintw(row + 1, 8, "Enter '?' for help."); -- show_color_attr(fg, bg, tx); -- printw(" ACS (%d)", ac != 0); -+ for (j = 0; j < my_size; ++j) { -+ row = wide_show_attr(row, n, j == k, -+ ((attr_t) ac | -+ my_list[j].attr | -+ my_list[k].attr), -+ extras, -+ my_list[j].name); -+ } -+ -+ MvPrintw(row, 8, -+ "This terminal does %shave the magic-cookie glitch", -+ get_xmc() > -1 ? "" : "not "); -+ MvPrintw(row + 1, 8, "Enter '?' for help."); -+ show_color_attr(fg, bg, tx); -+ printw(" ACS (%d)", ac != 0); - -- refresh(); -- } while (wide_attr_getc(&n, &fg, &bg, &tx, &ac, &k)); -+ refresh(); -+ } while (wide_attr_getc(&n, &fg, &bg, &tx, &ac, &k, my_size)); - -- set_wide_background(0); -- erase(); -- endwin(); -+ set_wide_background(0); -+ erase(); -+ endwin(); -+ } else { -+ Cannot("does not support extended video attributes."); -+ } - } - #endif - -@@ -1895,7 +1968,7 @@ - } else if (color < 0) { - strcpy(temp, "default"); - } else { -- strcpy(temp, the_color_names[color]); -+ sprintf(temp, "%.*s", 16, the_color_names[color]); - } - printw("%-*.*s", width, width, temp); - } -@@ -1949,7 +2022,7 @@ - static void - color_test(void) - { -- short i; -+ NCURSES_PAIRS_T i; - int top = 0, width; - int base_row = 0; - int grid_top = top + 3; -@@ -2010,16 +2083,16 @@ - show_color_name(top + 2, (i + 1) * width, i + min_colors, opt_wide); - - /* show a grid of colors, with color names/ numbers on the left */ -- for (i = (short) (base_row * per_row); i < pairs_max; i++) { -+ for (i = (NCURSES_PAIRS_T) (base_row * per_row); i < pairs_max; i++) { - int row = grid_top + (i / per_row) - base_row; - int col = (i % per_row + 1) * width; -- short pair = i; -+ NCURSES_PAIRS_T pair = i; - --#define InxToFG(i) (short) ((i % (COLORS - min_colors)) + min_colors) --#define InxToBG(i) (short) ((i / (COLORS - min_colors)) + min_colors) -+#define InxToFG(i) (NCURSES_COLOR_T) ((i % (COLORS - min_colors)) + min_colors) -+#define InxToBG(i) (NCURSES_COLOR_T) ((i / (COLORS - min_colors)) + min_colors) - if (row >= 0 && move(row, col) != ERR) { -- short fg = InxToFG(i); -- short bg = InxToBG(i); -+ NCURSES_COLOR_T fg = InxToFG(i); -+ NCURSES_COLOR_T bg = InxToBG(i); - - init_pair(pair, fg, bg); - attron((attr_t) COLOR_PAIR(pair)); -@@ -2031,7 +2104,7 @@ - attron((attr_t) A_REVERSE); - - if (opt_nums) { -- sprintf(numbered, "{%02X}", i); -+ sprintf(numbered, "{%02X}", (int) i); - hello = numbered; - } - printw("%-*.*s", width, width, hello); -@@ -2159,7 +2232,7 @@ - bool opt_wide = FALSE; - bool opt_nums = FALSE; - bool opt_xchr = FALSE; -- wchar_t buffer[10]; -+ wchar_t buffer[80]; - WINDOW *helpwin; - - if (COLORS * COLORS == COLOR_PAIRS) { -@@ -2216,11 +2289,11 @@ - for (i = (base_row * per_row); i < pairs_max; i++) { - int row = grid_top + (i / per_row) - base_row; - int col = (i % per_row + 1) * width; -- short pair = (short) i; -+ NCURSES_PAIRS_T pair = (NCURSES_PAIRS_T) i; - - if (row >= 0 && move(row, col) != ERR) { - init_pair(pair, InxToFG(i), InxToBG(i)); -- color_set(pair, NULL); -+ (void) color_set(pair, NULL); - if (opt_acsc) - attr_on((attr_t) A_ALTCHARSET, NULL); - if (opt_bold) -@@ -2347,21 +2420,21 @@ - #endif /* USE_WIDEC_SUPPORT */ - - static void --change_color(short current, int field, int value, int usebase) -+change_color(NCURSES_PAIRS_T current, int field, int value, int usebase) - { -- short red, green, blue; -+ NCURSES_COLOR_T red, green, blue; - - color_content(current, &red, &green, &blue); - - switch (field) { - case 0: -- red = (short) (usebase ? (red + value) : value); -+ red = (NCURSES_COLOR_T) (usebase ? (red + value) : value); - break; - case 1: -- green = (short) (usebase ? (green + value) : value); -+ green = (NCURSES_COLOR_T) (usebase ? (green + value) : value); - break; - case 2: -- blue = (short) (usebase ? (blue + value) : value); -+ blue = (NCURSES_COLOR_T) (usebase ? (blue + value) : value); - break; - } - -@@ -2372,7 +2445,7 @@ - static void - init_all_colors(void) - { -- short c; -+ NCURSES_PAIRS_T c; - - for (c = 0; c < COLORS; ++c) - init_color(c, -@@ -2398,18 +2471,20 @@ - refresh(); - - for (i = 0; i < max_colors; i++) -- init_pair((short) i, (short) COLOR_WHITE, (short) i); -+ init_pair((NCURSES_PAIRS_T) i, -+ (NCURSES_COLOR_T) COLOR_WHITE, -+ (NCURSES_COLOR_T) i); - - MvPrintw(LINES - 2, 0, "Number: %d", value); - - do { -- short red, green, blue; -+ NCURSES_COLOR_T red, green, blue; - - attron(A_BOLD); - MvAddStr(0, 20, "Color RGB Value Editing"); - attroff(A_BOLD); - -- for (i = (short) top_color; -+ for (i = (NCURSES_COLOR_T) top_color; - (i - top_color < page_size) - && (i < max_colors); i++) { - char numeric[80]; -@@ -2423,30 +2498,30 @@ - addstr(" "); - (void) attrset(A_NORMAL); - -- color_content((short) i, &red, &green, &blue); -+ color_content((NCURSES_PAIRS_T) i, &red, &green, &blue); - addstr(" R = "); - if (current == i && field == 0) - attron(A_STANDOUT); -- printw("%04d", red); -+ printw("%04d", (int) red); - if (current == i && field == 0) - (void) attrset(A_NORMAL); - addstr(", G = "); - if (current == i && field == 1) - attron(A_STANDOUT); -- printw("%04d", green); -+ printw("%04d", (int) green); - if (current == i && field == 1) - (void) attrset(A_NORMAL); - addstr(", B = "); - if (current == i && field == 2) - attron(A_STANDOUT); -- printw("%04d", blue); -+ printw("%04d", (int) blue); - if (current == i && field == 2) - (void) attrset(A_NORMAL); - (void) attrset(A_NORMAL); - printw(" ( %3d %3d %3d )", -- scaled_rgb(red), -- scaled_rgb(green), -- scaled_rgb(blue)); -+ (int) scaled_rgb(red), -+ (int) scaled_rgb(green), -+ (int) scaled_rgb(blue)); - } - - MvAddStr(LINES - 3, 0, -@@ -2510,15 +2585,15 @@ - break; - - case '+': -- change_color((short) current, field, value, 1); -+ change_color((NCURSES_PAIRS_T) current, field, value, 1); - break; - - case '-': -- change_color((short) current, field, -value, 1); -+ change_color((NCURSES_PAIRS_T) current, field, -value, 1); - break; - - case '=': -- change_color((short) current, field, value, 0); -+ change_color((NCURSES_PAIRS_T) current, field, value, 0); - break; - - case '?': -@@ -2545,7 +2620,9 @@ - endwin(); - main_menu(FALSE); - for (i = 0; i < max_colors; i++) -- init_pair((short) i, (short) COLOR_WHITE, (short) i); -+ init_pair((NCURSES_PAIRS_T) i, -+ (NCURSES_COLOR_T) COLOR_WHITE, -+ (NCURSES_COLOR_T) i); - refresh(); - break; - -@@ -2586,32 +2663,19 @@ - * Alternate character-set stuff - * - ****************************************************************************/ --/* *INDENT-OFF* */ --static struct { -- chtype attr; -- const char *name; --} attrs_to_cycle[] = { -- { A_NORMAL, "normal" }, -- { A_BOLD, "bold" }, -- { A_BLINK, "blink" }, -- { A_REVERSE, "reverse" }, -- { A_UNDERLINE, "underline" }, --}; --/* *INDENT-ON* */ -- - static bool --cycle_attr(int ch, unsigned *at_code, chtype *attr) -+cycle_attr(int ch, unsigned *at_code, chtype *attr, ATTR_TBL * list, unsigned limit) - { - bool result = TRUE; - - switch (ch) { - case 'v': -- if ((*at_code += 1) >= SIZEOF(attrs_to_cycle)) -+ if ((*at_code += 1) >= limit) - *at_code = 0; - break; - case 'V': - if (*at_code == 0) -- *at_code = SIZEOF(attrs_to_cycle) - 1; -+ *at_code = limit - 1; - else - *at_code -= 1; - break; -@@ -2620,12 +2684,12 @@ - break; - } - if (result) -- *attr = attrs_to_cycle[*at_code].attr; -+ *attr = list[*at_code].attr; - return result; - } - - static bool --cycle_colors(int ch, int *fg, int *bg, short *pair) -+cycle_colors(int ch, int *fg, int *bg, NCURSES_PAIRS_T *pair) - { - bool result = FALSE; - -@@ -2653,10 +2717,12 @@ - break; - } - if (result) { -- *pair = (short) (*fg != COLOR_BLACK || *bg != COLOR_BLACK); -+ *pair = (NCURSES_PAIRS_T) (*fg != COLOR_BLACK || *bg != COLOR_BLACK); - if (*pair != 0) { - *pair = 1; -- if (init_pair(*pair, (short) *fg, (short) *bg) == ERR) { -+ if (init_pair(*pair, -+ (NCURSES_COLOR_T) *fg, -+ (NCURSES_COLOR_T) *bg) == ERR) { - result = FALSE; - } - } -@@ -2715,7 +2781,7 @@ - static void - call_slk_color(int fg, int bg) - { -- init_pair(1, (short) bg, (short) fg); -+ init_pair(1, (NCURSES_COLOR_T) bg, (NCURSES_COLOR_T) fg); - slk_color(1); - MvPrintw(SLK_WORK, 0, "Colors %d/%d\n", fg, bg); - clrtoeol(); -@@ -2737,8 +2803,10 @@ - #if HAVE_SLK_COLOR - int fg = COLOR_BLACK; - int bg = COLOR_WHITE; -- short pair = 0; -+ NCURSES_PAIRS_T pair = 0; - #endif -+ ATTR_TBL my_list[SIZEOF(attrs_to_test)]; -+ unsigned my_size = init_attr_list(my_list, termattrs()); - - c = CTRL('l'); - #if HAVE_SLK_COLOR -@@ -2800,7 +2868,7 @@ - MvAddStr(SLK_WORK, 0, "Please enter the label value: "); - strcpy(buf, ""); - if ((s = slk_label(c - '0')) != 0) { -- strncpy(buf, s, 8); -+ strncpy(buf, s, (size_t) 8); - } - wGetstring(stdscr, buf, 8); - slk_set((c - '0'), buf, fmt); -@@ -2819,7 +2887,7 @@ - #endif - - default: -- if (cycle_attr(c, &at_code, &attr)) { -+ if (cycle_attr(c, &at_code, &attr, my_list, my_size)) { - slk_attrset(attr); - slk_touch(); - slk_noutrefresh(); -@@ -2859,7 +2927,9 @@ - unsigned at_code = 0; - int fg = COLOR_BLACK; - int bg = COLOR_WHITE; -- short pair = 0; -+ NCURSES_PAIRS_T pair = 0; -+ ATTR_TBL my_list[SIZEOF(attrs_to_test)]; -+ unsigned my_size = init_attr_list(my_list, term_attrs()); - - c = CTRL('l'); - if (use_colors) { -@@ -2955,13 +3025,13 @@ - - case 'F': - if (use_colors) { -- fg = (short) ((fg + 1) % COLORS); -+ fg = (NCURSES_COLOR_T) ((fg + 1) % COLORS); - call_slk_color(fg, bg); - } - break; - case 'B': - if (use_colors) { -- bg = (short) ((bg + 1) % COLORS); -+ bg = (NCURSES_COLOR_T) ((bg + 1) % COLORS); - call_slk_color(fg, bg); - } - break; -@@ -2971,8 +3041,8 @@ - break; - #endif - default: -- if (cycle_attr(c, &at_code, &attr)) { -- slk_attr_set(attr, (fg || bg), NULL); -+ if (cycle_attr(c, &at_code, &attr, my_list, my_size)) { -+ slk_attr_set(attr, (NCURSES_COLOR_T) (fg || bg), NULL); - slk_touch(); - slk_noutrefresh(); - break; -@@ -3000,15 +3070,46 @@ - #endif - #endif /* SLK_INIT */ - --/* ISO 6429: codes 0x80 to 0x9f may be control characters that cause the -+static void -+show_256_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair) -+{ -+ unsigned first = 0; -+ unsigned last = 255; -+ unsigned code; -+ int count; -+ -+ erase(); -+ attron(A_BOLD); -+ MvPrintw(0, 20, "Display of Character Codes %#0x to %#0x", -+ first, last); -+ attroff(A_BOLD); -+ refresh(); -+ -+ for (code = first; code <= last; ++code) { -+ int row = (int) (2 + (code / 16)); -+ int col = (int) (5 * (code % 16)); -+ IGNORE_RC(mvaddch(row, col, colored_chtype(code, attr, pair))); -+ for (count = 1; count < repeat; ++count) { -+ addch(colored_chtype(code, attr, pair)); -+ } -+ } -+ -+} -+ -+/* -+ * Show a slice of 32 characters, allowing those to be repeated up to the -+ * screen's width. -+ * -+ * ISO 6429: codes 0x80 to 0x9f may be control characters that cause the - * terminal to perform functions. The remaining codes can be graphic. - */ - static void --show_upper_chars(unsigned first, int repeat, attr_t attr, short pair) -+show_upper_chars(int base, int pagesize, int repeat, attr_t attr, NCURSES_PAIRS_T pair) - { -- bool C1 = (first == 128); - unsigned code; -- unsigned last = first + 31; -+ unsigned first = (unsigned) base; -+ unsigned last = first + (unsigned) pagesize - 2; -+ bool C1 = (first == 128); - int reply; - - erase(); -@@ -3020,8 +3121,8 @@ - - for (code = first; code <= last; code++) { - int count = repeat; -- int row = 2 + ((int) (code - first) % 16); -- int col = ((int) (code - first) / 16) * COLS / 2; -+ int row = 2 + ((int) (code - first) % (pagesize / 2)); -+ int col = ((int) (code - first) / (pagesize / 2)) * COLS / 2; - char tmp[80]; - sprintf(tmp, "%3u (0x%x)", code, code); - MvPrintw(row, col, "%*s: ", COLS / 4, tmp); -@@ -3045,7 +3146,7 @@ - #define PC_COLS 4 - - static void --show_pc_chars(int repeat, attr_t attr, short pair) -+show_pc_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair) - { - unsigned code; - -@@ -3086,7 +3187,7 @@ - } - - static void --show_box_chars(int repeat, attr_t attr, short pair) -+show_box_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair) - { - (void) repeat; - -@@ -3133,7 +3234,7 @@ - } - - static void --show_acs_chars(int repeat, attr_t attr, short pair) -+show_acs_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair) - /* display the ACS character set */ - { - int n; -@@ -3195,6 +3296,7 @@ - acs_display(void) - { - int c = 'a'; -+ int pagesize = 32; - char *term = getenv("TERM"); - const char *pch_kludge = ((term != 0 && strstr(term, "linux")) - ? "p=PC, " -@@ -3205,8 +3307,10 @@ - int fg = COLOR_BLACK; - int bg = COLOR_BLACK; - unsigned at_code = 0; -- short pair = 0; -- void (*last_show_acs) (int, attr_t, short) = 0; -+ NCURSES_PAIRS_T pair = 0; -+ void (*last_show_acs) (int, attr_t, NCURSES_PAIRS_T) = 0; -+ ATTR_TBL my_list[SIZEOF(attrs_to_test)]; -+ unsigned my_size = init_attr_list(my_list, termattrs()); - - do { - switch (c) { -@@ -3222,6 +3326,13 @@ - else - beep(); - break; -+ case 'w': -+ if (pagesize == 32) { -+ pagesize = 256; -+ } else { -+ pagesize = 32; -+ } -+ break; - case 'x': - ToggleAcs(last_show_acs, show_box_chars); - break; -@@ -3257,7 +3368,7 @@ - --repeat; - break; - default: -- if (cycle_attr(c, &at_code, &attr) -+ if (cycle_attr(c, &at_code, &attr, my_list, my_size) - || cycle_colors(c, &fg, &bg, &pair)) { - break; - } else { -@@ -3265,25 +3376,28 @@ - } - break; - } -- if (last_show_acs != 0) -+ if (pagesize != 32) { -+ show_256_chars(repeat, attr, pair); -+ } else if (last_show_acs != 0) { - last_show_acs(repeat, attr, pair); -- else -- show_upper_chars((unsigned) (digit * 32 + 128), repeat, attr, pair); -+ } else { -+ show_upper_chars(digit * pagesize + 128, pagesize, repeat, attr, pair); -+ } - - MvPrintw(LINES - 3, 0, - "Note: ANSI terminals may not display C1 characters."); - MvPrintw(LINES - 2, 0, -- "Select: a=ACS, x=box, %s0=C1, 1-3,+/- non-ASCII, </> repeat, ESC=quit", -+ "Select: a=ACS, w=all x=box, %s0=C1, 1-3,+/- non-ASCII, </> repeat, ESC=quit", - pch_kludge); - if (use_colors) { - MvPrintw(LINES - 1, 0, - "v/V, f/F, b/B cycle through video attributes (%s) and color %d/%d.", -- attrs_to_cycle[at_code].name, -+ my_list[at_code].name, - fg, bg); - } else { - MvPrintw(LINES - 1, 0, - "v/V cycles through video attributes (%s).", -- attrs_to_cycle[at_code].name); -+ my_list[at_code].name); - } - refresh(); - } while (!isQuit(c = Getchar())); -@@ -3295,7 +3409,7 @@ - - #if USE_WIDEC_SUPPORT - static cchar_t * --merge_wide_attr(cchar_t *dst, const cchar_t *src, attr_t attr, short pair) -+merge_wide_attr(cchar_t *dst, const cchar_t *src, attr_t attr, NCURSES_PAIRS_T pair) - { - int count; - -@@ -3312,8 +3426,55 @@ - return dst; - } - -+/* -+ * Header/legend take up no more than 8 lines, leaving 16 lines on a 24-line -+ * display. If there are no repeats, we could normally display 16 lines of 64 -+ * characters (1024 total). However, taking repeats and double-width cells -+ * into account, use 256 characters for the page. -+ */ -+static void -+show_paged_widechars(int base, -+ int pagesize, -+ int repeat, -+ int space, -+ attr_t attr, -+ NCURSES_PAIRS_T pair) -+{ -+ int first = base * pagesize; -+ int last = first + pagesize - 1; -+ int per_line = 16; -+ cchar_t temp; -+ wchar_t code; -+ wchar_t codes[10]; -+ -+ erase(); -+ attron(A_BOLD); -+ MvPrintw(0, 20, "Display of Character Codes %#x to %#x", first, last); -+ attroff(A_BOLD); -+ -+ for (code = first; (int) code <= last; code++) { -+ int row = (2 + ((int) code - first) / per_line); -+ int col = 5 * ((int) code % per_line); -+ int count; -+ -+ memset(&codes, 0, sizeof(codes)); -+ codes[0] = code; -+ setcchar(&temp, codes, attr, pair, 0); -+ move(row, col); -+ if (wcwidth(code) == 0 && code != 0) { -+ addch((chtype) space | -+ (A_REVERSE ^ attr) | -+ (attr_t) COLOR_PAIR(pair)); -+ } -+ add_wch(&temp); -+ for (count = 1; count < repeat; ++count) { -+ add_wch(&temp); -+ } -+ } -+} -+ - static void --show_upper_widechars(int first, int repeat, int space, attr_t attr, short pair) -+show_upper_widechars(int first, int repeat, int space, attr_t attr, NCURSES_PAIRS_T pair) - { - cchar_t temp; - wchar_t code; -@@ -3332,11 +3493,13 @@ - int count = repeat; - int y, x; - -- memset(&codes, 0, sizeof(codes)); -- codes[0] = code; - sprintf(tmp, "%3ld (0x%lx)", (long) code, (long) code); - MvPrintw(row, col, "%*s: ", COLS / 4, tmp); -+ -+ memset(&codes, 0, sizeof(codes)); -+ codes[0] = code; - setcchar(&temp, codes, attr, pair, 0); -+ - do { - /* - * Give non-spacing characters something to combine with. If we -@@ -3350,16 +3513,17 @@ - (attr_t) COLOR_PAIR(pair)); - } - /* -- * This could use add_wch(), but is done for comparison with the -- * normal 'f' test (and to make a test-case for echo_wchar()). -- * The screen will flicker because the erase() at the top of the -- * function is met by the builtin refresh() in echo_wchar(). -+ * This uses echo_wchar(), for comparison with the normal 'f' -+ * test (and to make a test-case for echo_wchar()). The screen -+ * may flicker because the erase() at the top of the function -+ * is met by the builtin refresh() in echo_wchar(). - */ - echo_wchar(&temp); - /* - * The repeat-count may make text wrap - avoid that. - */ - getyx(stdscr, y, x); -+ (void) y; - if (x >= col + (COLS / 2) - 2) - break; - } while (--count > 0); -@@ -3383,7 +3547,7 @@ - #define MERGE_ATTR(wch) merge_wide_attr(&temp, wch, attr, pair) - - static void --show_wacs_chars(int repeat, attr_t attr, short pair) -+show_wacs_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair) - /* display the wide-ACS character set */ - { - cchar_t temp; -@@ -3443,7 +3607,7 @@ - - #ifdef WACS_D_PLUS - static void --show_wacs_chars_double(int repeat, attr_t attr, short pair) -+show_wacs_chars_double(int repeat, attr_t attr, NCURSES_PAIRS_T pair) - /* display the wide-ACS character set */ - { - cchar_t temp; -@@ -3504,7 +3668,7 @@ - - #ifdef WACS_T_PLUS - static void --show_wacs_chars_thick(int repeat, attr_t attr, short pair) -+show_wacs_chars_thick(int repeat, attr_t attr, NCURSES_PAIRS_T pair) - /* display the wide-ACS character set */ - { - cchar_t temp; -@@ -3568,7 +3732,7 @@ - #define MERGE_ATTR(n,wch) merge_wide_attr(&temp[n], wch, attr, pair) - - static void --show_wbox_chars(int repeat, attr_t attr, short pair) -+show_wbox_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair) - { - cchar_t temp[8]; - -@@ -3603,7 +3767,7 @@ - #undef MERGE_ATTR - - static int --show_2_wacs(int n, const char *name, const char *code, attr_t attr, short pair) -+show_2_wacs(int n, const char *name, const char *code, attr_t attr, NCURSES_PAIRS_T pair) - { - const int height = 16; - int row = 2 + (n % height); -@@ -3612,7 +3776,7 @@ - - MvPrintw(row, col, "%*s : ", COLS / 4, name); - (void) attr_set(attr, pair, 0); -- addstr(strcpy(temp, code)); -+ addstr(strncpy(temp, code, 20)); - (void) attr_set(A_NORMAL, 0, 0); - return n + 1; - } -@@ -3620,7 +3784,7 @@ - #define SHOW_UTF8(n, name, code) show_2_wacs(n, name, code, attr, pair) - - static void --show_utf8_chars(int repeat, attr_t attr, short pair) -+show_utf8_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair) - { - int n; - -@@ -3680,12 +3844,15 @@ - int digit = 0; - int repeat = 1; - int space = ' '; -+ int pagesize = 32; - chtype attr = A_NORMAL; - int fg = COLOR_BLACK; - int bg = COLOR_BLACK; - unsigned at_code = 0; -- short pair = 0; -- void (*last_show_wacs) (int, attr_t, short) = 0; -+ NCURSES_PAIRS_T pair = 0; -+ void (*last_show_wacs) (int, attr_t, NCURSES_PAIRS_T) = 0; -+ ATTR_TBL my_list[SIZEOF(attrs_to_test)]; -+ unsigned my_size = init_attr_list(my_list, term_attrs()); - - do { - switch (c) { -@@ -3705,6 +3872,13 @@ - ToggleAcs(last_show_wacs, show_wacs_chars_thick); - break; - #endif -+ case 'w': -+ if (pagesize == 32) { -+ pagesize = 256; -+ } else { -+ pagesize = 32; -+ } -+ break; - case 'x': - ToggleAcs(last_show_wacs, show_wbox_chars); - break; -@@ -3728,7 +3902,7 @@ - } else if (c == '_') { - space = (space == ' ') ? '_' : ' '; - last_show_wacs = 0; -- } else if (cycle_attr(c, &at_code, &attr) -+ } else if (cycle_attr(c, &at_code, &attr, my_list, my_size) - || cycle_colors(c, &fg, &bg, &pair)) { - if (last_show_wacs != 0) - break; -@@ -3738,22 +3912,27 @@ - } - break; - } -- if (last_show_wacs != 0) -+ if (pagesize != 32) { -+ show_paged_widechars(digit, pagesize, repeat, space, attr, pair); -+ } else if (last_show_wacs != 0) { - last_show_wacs(repeat, attr, pair); -- else -+ } else { - show_upper_widechars(digit * 32 + 128, repeat, space, attr, pair); -+ } - -- MvPrintw(LINES - 3, 0, -- "Select: a/d/t WACS, x box, u UTF-8, 0-9,+/- non-ASCII, </> repeat, ESC=quit"); -+ MvPrintw(LINES - 4, 0, -+ "Select: a/d/t WACS, w=all x=box, u UTF-8, ^L repaint"); -+ MvPrintw(LINES - 3, 2, -+ "0-9,+/- non-ASCII, </> repeat, _ space, ESC=quit"); - if (use_colors) { -- MvPrintw(LINES - 2, 0, -+ MvPrintw(LINES - 2, 2, - "v/V, f/F, b/B cycle through video attributes (%s) and color %d/%d.", -- attrs_to_cycle[at_code].name, -+ my_list[at_code].name, - fg, bg); - } else { -- MvPrintw(LINES - 2, 0, -+ MvPrintw(LINES - 2, 2, - "v/V cycles through video attributes (%s).", -- attrs_to_cycle[at_code].name); -+ my_list[at_code].name); - } - refresh(); - } while (!isQuit(c = Getchar())); -@@ -3779,7 +3958,7 @@ - /* Use non-default colors if possible to exercise bce a little */ - if (use_colors) { - init_pair(1, COLOR_WHITE, COLOR_BLUE); -- normal |= COLOR_PAIR(1); -+ normal |= (chtype) COLOR_PAIR(1); - } - bkgdset(normal); - erase(); -@@ -4115,7 +4294,8 @@ - outerbox(ul, lr, TRUE); - refresh(); - -- wrefresh(rwindow); -+ if (rwindow != 0) -+ wrefresh(rwindow); - - move(0, 0); - clrtoeol(); -@@ -4185,10 +4365,12 @@ - transient((FRAME *) 0, (char *) 0); - switch (c) { - case CTRL('C'): -- if ((neww = typeCalloc(FRAME, 1)) == 0) { -+ if ((neww = typeCalloc(FRAME, (size_t) 1)) == 0) { -+ failed("acs_and_scroll"); - goto breakout; - } - if ((neww->wind = getwindow()) == (WINDOW *) 0) { -+ failed("acs_and_scroll"); - free(neww); - goto breakout; - } -@@ -4265,16 +4447,20 @@ - if ((fp = fopen(DUMPFILE, "r")) == (FILE *) 0) { - transient(current, "Can't open screen dump file"); - } else { -- if ((neww = typeCalloc(FRAME, 1)) != 0) { -+ if ((neww = typeCalloc(FRAME, (size_t) 1)) != 0) { - - neww->next = current ? current->next : 0; - neww->last = current; -- neww->last->next = neww; -- neww->next->last = neww; -+ if (neww->last != 0) -+ neww->last->next = neww; -+ if (neww->next != 0) -+ neww->next->last = neww; - - neww->wind = getwin(fp); - - wrefresh(neww->wind); -+ } else { -+ failed("acs_and_scroll"); - } - (void) fclose(fp); - } -@@ -4463,7 +4649,7 @@ - mkpanel(rows,cols,tly,tlx) - alloc a win and panel and associate them - --------------------------------------------------------------------------*/ - static PANEL * --mkpanel(short color, int rows, int cols, int tly, int tlx) -+mkpanel(NCURSES_COLOR_T color, int rows, int cols, int tly, int tlx) - { - WINDOW *win; - PANEL *pan = 0; -@@ -4472,8 +4658,10 @@ - if ((pan = new_panel(win)) == 0) { - delwin(win); - } else if (use_colors) { -- short fg = (short) ((color == COLOR_BLUE) ? COLOR_WHITE : COLOR_BLACK); -- short bg = color; -+ NCURSES_COLOR_T fg = (NCURSES_COLOR_T) ((color == COLOR_BLUE) -+ ? COLOR_WHITE -+ : COLOR_BLACK); -+ NCURSES_COLOR_T bg = color; - - init_pair(color, fg, bg); - wbkgdset(win, (attr_t) (COLOR_PAIR(color) | ' ')); -@@ -5226,7 +5414,7 @@ - #ifdef A_COLOR - if (use_colors) { - init_pair(2, COLOR_CYAN, COLOR_BLUE); -- wbkgd(subWin, COLOR_PAIR(2) | ' '); -+ wbkgd(subWin, (chtype) (COLOR_PAIR(2) | ' ')); - } - #endif - (void) wattrset(subWin, A_BOLD); -@@ -5449,6 +5637,8 @@ - for (n = 0; t_tbl[n].name != 0; n++) - need += strlen(t_tbl[n].name) + 2; - buf = typeMalloc(char, need); -+ if (!buf) -+ failed("tracetrace"); - } - sprintf(buf, "0x%02x = {", tlevel); - if (tlevel == 0) { -@@ -5622,10 +5812,9 @@ - set_form_sub(f, derwin(w, rows, cols, 1, 2)); - box(w, 0, 0); - keypad(w, TRUE); -+ if (post_form(f) != E_OK) -+ wrefresh(w); - } -- -- if (post_form(f) != E_OK) -- wrefresh(w); - } - - static void -@@ -5649,55 +5838,60 @@ - if (field_info(me, &rows, &cols, &frow, &fcol, &nrow, &nbuf) == E_OK - && nbuf > 0) { - char *source = field_buffer(me, 1); -- char temp[80]; -- long len; -- -- strcpy(temp, source ? source : ""); -- len = (long) (char *) field_userptr(me); -- if (c <= KEY_MAX) { -- if (isgraph(c) && (len + 1) < (int) sizeof(temp)) { -- temp[len++] = (char) c; -- temp[len] = 0; -- set_field_buffer(me, 1, temp); -- c = '*'; -- } else { -- c = 0; -- } -- } else { -- switch (c) { -- case REQ_BEG_FIELD: -- case REQ_CLR_EOF: -- case REQ_CLR_EOL: -- case REQ_DEL_LINE: -- case REQ_DEL_WORD: -- case REQ_DOWN_CHAR: -- case REQ_END_FIELD: -- case REQ_INS_CHAR: -- case REQ_INS_LINE: -- case REQ_LEFT_CHAR: -- case REQ_NEW_LINE: -- case REQ_NEXT_WORD: -- case REQ_PREV_WORD: -- case REQ_RIGHT_CHAR: -- case REQ_UP_CHAR: -- c = 0; /* we don't want to do inline editing */ -- break; -- case REQ_CLR_FIELD: -- if (len) { -- temp[0] = 0; -+ size_t have = (source ? strlen(source) : 0) + 1; -+ size_t need = 80 + have; -+ char *temp = malloc(need); -+ size_t len; -+ -+ if (temp != 0) { -+ strncpy(temp, source ? source : "", have + 1); -+ len = (size_t) (char *) field_userptr(me); -+ if (c <= KEY_MAX) { -+ if (isgraph(c) && (len + 1) < sizeof(temp)) { -+ temp[len++] = (char) c; -+ temp[len] = 0; - set_field_buffer(me, 1, temp); -+ c = '*'; -+ } else { -+ c = 0; - } -- break; -- case REQ_DEL_CHAR: -- case REQ_DEL_PREV: -- if (len) { -- temp[--len] = 0; -- set_field_buffer(me, 1, temp); -+ } else { -+ switch (c) { -+ case REQ_BEG_FIELD: -+ case REQ_CLR_EOF: -+ case REQ_CLR_EOL: -+ case REQ_DEL_LINE: -+ case REQ_DEL_WORD: -+ case REQ_DOWN_CHAR: -+ case REQ_END_FIELD: -+ case REQ_INS_CHAR: -+ case REQ_INS_LINE: -+ case REQ_LEFT_CHAR: -+ case REQ_NEW_LINE: -+ case REQ_NEXT_WORD: -+ case REQ_PREV_WORD: -+ case REQ_RIGHT_CHAR: -+ case REQ_UP_CHAR: -+ c = 0; /* we don't want to do inline editing */ -+ break; -+ case REQ_CLR_FIELD: -+ if (len) { -+ temp[0] = 0; -+ set_field_buffer(me, 1, temp); -+ } -+ break; -+ case REQ_DEL_CHAR: -+ case REQ_DEL_PREV: -+ if (len) { -+ temp[--len] = 0; -+ set_field_buffer(me, 1, temp); -+ } -+ break; - } -- break; - } -+ set_field_userptr(me, (void *) len); -+ free(temp); - } -- set_field_userptr(me, (void *) len); - } - return c; - } -@@ -6045,7 +6239,7 @@ - static void - overlap_test_1_attr(WINDOW *win, int flavor, int col) - { -- short cpair = (short) (1 + (flavor * 2) + col); -+ NCURSES_PAIRS_T cpair = (NCURSES_PAIRS_T) (1 + (flavor * 2) + col); - - switch (flavor) { - case 0: -@@ -6056,11 +6250,11 @@ - break; - case 2: - init_pair(cpair, COLOR_BLUE, COLOR_WHITE); -- (void) wattrset(win, (attr_t) COLOR_PAIR(cpair) | A_NORMAL); -+ (void) wattrset(win, (int) (COLOR_PAIR(cpair) | A_NORMAL)); - break; - case 3: - init_pair(cpair, COLOR_WHITE, COLOR_BLUE); -- (void) wattrset(win, (attr_t) COLOR_PAIR(cpair) | A_BOLD); -+ (void) wattrset(win, (int) (COLOR_PAIR(cpair) | A_BOLD)); - break; - } - } -@@ -6068,7 +6262,7 @@ - static void - overlap_test_2_attr(WINDOW *win, int flavor, int col) - { -- short cpair = (short) (9 + (flavor * 2) + col); -+ NCURSES_PAIRS_T cpair = (NCURSES_PAIRS_T) (9 + (flavor * 2) + col); - - switch (flavor) { - case 0: -@@ -6483,6 +6677,7 @@ - ," -a f,b set default-colors (assumed white-on-black)" - ," -d use default-colors if terminal supports them" - #endif -+ ," -E call use_env(FALSE) to ignore $LINES and $COLUMNS" - #if USE_SOFTKEYS - ," -e fmt specify format for soft-keys test (e)" - #endif -@@ -6495,6 +6690,9 @@ - #if USE_LIBPANEL - ," -s msec specify nominal time for panel-demo (default: 1, to hold)" - #endif -+#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714) -+ ," -T call use_tioctl(TRUE) to allow SIGWINCH to override environment" -+#endif - #ifdef TRACE - ," -t mask specify default trace-level (may toggle with ^T)" - #endif -@@ -6517,7 +6715,7 @@ - } - - #ifdef SIGUSR1 --static RETSIGTYPE -+static void - announce_sig(int sig) - { - (void) fprintf(stderr, "Handled signal %d\r\n", sig); -@@ -6613,7 +6811,7 @@ - command = 0; - for (;;) { - char ch = '\0'; -- if (read(fileno(stdin), &ch, 1) <= 0) { -+ if (read(fileno(stdin), &ch, (size_t) 1) <= 0) { - if (command == 0) - command = 'q'; - break; -@@ -6681,17 +6879,27 @@ - - setlocale(LC_ALL, ""); - -- while ((c = getopt(argc, argv, "a:de:fhmp:s:t:")) != -1) { -+ while ((c = getopt(argc, argv, "a:dEe:fhmp:s:Tt:")) != -1) { - switch (c) { - #ifdef NCURSES_VERSION - case 'a': - assumed_colors = TRUE; -- sscanf(optarg, "%d,%d", &default_fg, &default_bg); -+ switch (sscanf(optarg, "%d,%d", &default_fg, &default_bg)) { -+ case 0: -+ default_fg = COLOR_WHITE; -+ /* FALLTHRU */ -+ case 1: -+ default_bg = COLOR_BLACK; -+ break; -+ } - break; - case 'd': - default_colors = TRUE; - break; - #endif -+ case 'E': -+ use_env(FALSE); -+ break; - case 'e': - my_e_param = atoi(optarg); - #ifdef NCURSES_VERSION -@@ -6721,6 +6929,11 @@ - nap_msec = (int) atol(optarg); - break; - #endif -+#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714) -+ case 'T': -+ use_tioctl(TRUE); -+ break; -+#endif - #ifdef TRACE - case 't': - save_trace = (unsigned) strtol(optarg, 0, 0); -@@ -6761,7 +6974,7 @@ - bkgdset(BLANK); - - /* tests, in general, will want these modes */ -- use_colors = monochrome ? FALSE : has_colors(); -+ use_colors = (bool) (monochrome ? FALSE : has_colors()); - - if (use_colors) { - start_color(); -@@ -6772,7 +6985,7 @@ - use_default_colors(); - min_colors = -1; - } --#if NCURSES_VERSION_PATCH >= 20000708 -+#if HAVE_ASSUME_DEFAULT_COLORS - if (assumed_colors) - assume_default_colors(default_fg, default_bg); - #endif -@@ -6783,8 +6996,10 @@ - max_pairs = COLOR_PAIRS; /* was > 256 ? 256 : COLOR_PAIRS */ - - if (can_change_color()) { -- short cp; -+ NCURSES_PAIRS_T cp; - all_colors = typeMalloc(RGB_DATA, (unsigned) max_colors); -+ if (!all_colors) -+ failed("all_colors"); - for (cp = 0; cp < max_colors; ++cp) { - color_content(cp, - &all_colors[cp].red, -@@ -6809,9 +7024,10 @@ - && okRGB(red) - && okRGB(green) - && okRGB(blue)) { -- all_colors[c].red = (short) ((red * 1000) / scale); -- all_colors[c].green = (short) ((green * 1000) / scale); -- all_colors[c].blue = (short) ((blue * 1000) / scale); -+#define Scaled(n) (NCURSES_COLOR_T) (((n) * 1000) / scale) -+ all_colors[c].red = Scaled(red); -+ all_colors[c].green = Scaled(green); -+ all_colors[c].blue = Scaled(blue); - } - } - fclose(fp); -diff -Naur ncurses-5.9/test/newdemo.c ncurses-5.9.patch/test/newdemo.c ---- ncurses-5.9/test/newdemo.c 2010-12-12 01:19:15.000000000 +0100 -+++ ncurses-5.9.patch/test/newdemo.c 2014-09-01 16:33:22.572792500 +0200 -@@ -2,7 +2,7 @@ - * newdemo.c - A demo program using PDCurses. The program illustrate - * the use of colours for text output. - * -- * $Id: newdemo.c,v 1.35 2010/12/12 00:19:15 tom Exp $ -+ * $Id: newdemo.c,v 1.40 2013/04/27 19:46:53 tom Exp $ - */ - - #include <test.priv.h> -@@ -47,7 +47,7 @@ - /* - * Trap interrupt - */ --static RETSIGTYPE -+static void - trap(int sig GCC_UNUSED) - { - endwin(); -@@ -84,7 +84,7 @@ - if (pair > COLOR_PAIRS) - pair = COLOR_PAIRS; - init_pair((short) pair, (short) foreground, (short) background); -- (void) wattrset(win, (attr_t) COLOR_PAIR(pair)); -+ (void) wattrset(win, (int) COLOR_PAIR(pair)); - } - } - -@@ -96,7 +96,7 @@ - pair = COLOR_PAIRS; - attrs |= (chtype) COLOR_PAIR(pair); - } -- (void) wattrset(win, attrs); -+ (void) wattrset(win, (int) attrs); - return attrs; - } - -@@ -113,12 +113,19 @@ - getbegyx(win, by, bx); - sw = w / 3; - sh = h / 3; -- if ((swin1 = subwin(win, sh, sw, by + 3, bx + 5)) == NULL) -+ -+ if ((swin1 = subwin(win, sh, sw, by + 3, bx + 5)) == NULL) { - return 1; -- if ((swin2 = subwin(win, sh, sw, by + 4, bx + 8)) == NULL) -+ } -+ if ((swin2 = subwin(win, sh, sw, by + 4, bx + 8)) == NULL) { -+ delwin(swin1); - return 1; -- if ((swin3 = subwin(win, sh, sw, by + 5, bx + 11)) == NULL) -+ } -+ if ((swin3 = subwin(win, sh, sw, by + 5, bx + 11)) == NULL) { -+ delwin(swin1); -+ delwin(swin2); - return 1; -+ } - - set_colors(swin1, 8, COLOR_RED, COLOR_BLUE); - werase(swin1); -@@ -215,7 +222,7 @@ - { - WINDOW *win; - int w, x, y, i, j, k; -- char buffer[200]; -+ char buffer[SIZEOF(messages) * 80]; - const char *message; - int width, height; - chtype save[80]; -diff -Naur ncurses-5.9/test/package/mingw-ncurses-examples.spec ncurses-5.9.patch/test/package/mingw-ncurses-examples.spec ---- ncurses-5.9/test/package/mingw-ncurses-examples.spec 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/test/package/mingw-ncurses-examples.spec 2014-09-01 16:33:22.572792500 +0200 -@@ -0,0 +1,109 @@ -+Summary: ncurses-examples - example/test programs from ncurses -+%?mingw_package_header -+ -+%define AppProgram ncurses-examples -+%define AppVersion MAJOR.MINOR -+%define AppRelease YYYYMMDD -+# $Id: mingw-ncurses-examples.spec,v 1.3 2013/10/26 23:30:21 tom Exp $ -+Name: mingw32-ncurses6-examples -+Version: %{AppVersion} -+Release: %{AppRelease} -+License: X11 -+Group: Development/Libraries -+Source: ncurses-examples-%{release}.tgz -+# URL: http://invisible-island.net/ncurses/ -+ -+BuildRequires: mingw32-ncurses6 -+ -+BuildRequires: mingw32-filesystem >= 95 -+BuildRequires: mingw32-gcc -+BuildRequires: mingw32-binutils -+ -+BuildRequires: mingw64-ncurses6 -+ -+BuildRequires: mingw64-filesystem >= 95 -+BuildRequires: mingw64-gcc -+BuildRequires: mingw64-binutils -+ -+%define CC_NORMAL -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion -+%define CC_STRICT %{CC_NORMAL} -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic -+ -+%description -n mingw32-ncurses6-examples -+Cross-compiling support for ncurses to mingw32. -+ -+The ncurses library routines are a terminal-independent method of -+updating character screens with reasonable optimization. -+ -+This package is used for testing ABI 6 with cross-compiles to MinGW. -+ -+%package -n mingw64-ncurses6-examples -+Summary: Curses library for MinGW64 -+ -+%description -n mingw64-ncurses6-examples -+Cross-compiling support for ncurses to mingw64. -+ -+The ncurses library routines are a terminal-independent method of -+updating character screens with reasonable optimization. -+ -+This package is used for testing ABI 6 with cross-compiles to MinGW. -+ -+%prep -+ -+# override location of bindir, e.g., to avoid conflict with pdcurses -+%global mingw32_bindir %{mingw32_exec_prefix}/bin/%{AppProgram} -+%global mingw64_bindir %{mingw64_exec_prefix}/bin/%{AppProgram} -+ -+%define CFG_OPTS \\\ -+ --disable-echo \\\ -+ --enable-warnings \\\ -+ --verbose -+ -+%define debug_package %{nil} -+%setup -q -n ncurses-examples-%{release} -+ -+%build -+mkdir BUILD-W32 -+pushd BUILD-W32 -+CFLAGS="%{CC_NORMAL}" \ -+CC=%{mingw32_cc} \ -+%mingw32_configure %{CFG_OPTS} -+cp config.status /tmp/ming32-config.status -+make -+popd -+ -+mkdir BUILD-W64 -+pushd BUILD-W64 -+CFLAGS="%{CC_NORMAL}" \ -+CC=%{mingw64_cc} \ -+%mingw64_configure %{CFG_OPTS} -+cp config.status /tmp/ming64-config.status -+make -+popd -+ -+%install -+rm -rf $RPM_BUILD_ROOT -+ -+pushd BUILD-W32 -+%{mingw32_make} install DESTDIR=$RPM_BUILD_ROOT -+popd -+ -+pushd BUILD-W64 -+%{mingw64_make} install DESTDIR=$RPM_BUILD_ROOT -+popd -+ -+%clean -+rm -rf $RPM_BUILD_ROOT -+ -+%files -+%defattr(-,root,root,-) -+ -+%files -n mingw32-ncurses6-examples -+%{mingw32_bindir}/* -+ -+%files -n mingw64-ncurses6-examples -+%{mingw64_bindir}/* -+ -+%changelog -+ -+* Sat Oct 19 2013 Thomas E. Dickey -+- initial version -diff -Naur ncurses-5.9/test/package/ncurses-examples.spec ncurses-5.9.patch/test/package/ncurses-examples.spec ---- ncurses-5.9/test/package/ncurses-examples.spec 2011-03-25 18:46:44.000000000 +0100 -+++ ncurses-5.9.patch/test/package/ncurses-examples.spec 2014-09-01 16:33:22.572792500 +0200 -@@ -2,7 +2,7 @@ - %define AppProgram ncurses-examples - %define AppVersion MAJOR.MINOR - %define AppRelease YYYYMMDD --# $Id: ncurses-examples.spec,v 1.2 2011/03/25 17:46:44 tom Exp $ -+# $Id: ncurses-examples.spec,v 1.3 2013/10/05 23:44:19 tom Exp $ - Name: %{AppProgram} - Version: %{AppVersion} - Release: %{AppRelease} -@@ -51,5 +51,5 @@ - %changelog - # each patch should add its ChangeLog entries here - --* Fri Mar 25 2010 Thomas Dickey -+* Thu Mar 25 2010 Thomas Dickey - - initial version -diff -Naur ncurses-5.9/test/programs ncurses-5.9.patch/test/programs ---- ncurses-5.9/test/programs 2009-09-12 21:44:01.000000000 +0200 -+++ ncurses-5.9.patch/test/programs 2014-09-01 16:33:22.572792500 +0200 -@@ -1,6 +1,6 @@ --# $Id: programs,v 1.19 2009/09/12 19:44:01 tom Exp $ -+# $Id: programs,v 1.24 2013/12/07 18:06:24 tom Exp $ - ############################################################################## --# Copyright (c) 2006-2008,2009 Free Software Foundation, Inc. # -+# Copyright (c) 2006-2009,2013 Free Software Foundation, Inc. # - # # - # Permission is hereby granted, free of charge, to any person obtaining a # - # copy of this software and associated documentation files (the "Software"), # -@@ -48,11 +48,13 @@ - ditto $(LDFLAGS_THREADS) $(LOCAL_LIBS) ditto - dots $(LDFLAGS_TINFO) $(LOCAL_LIBS) dots - dots_mvcur $(LDFLAGS_CURSES) $(LOCAL_LIBS) dots_mvcur -+dots_termcap $(LDFLAGS_TINFO) $(LOCAL_LIBS) dots_termcap - echochar $(LDFLAGS_CURSES) $(LOCAL_LIBS) echochar - filter $(LDFLAGS_CURSES) $(LOCAL_LIBS) filter - firework $(LDFLAGS_CURSES) $(LOCAL_LIBS) firework - firstlast $(LDFLAGS_DEFAULT) $(LOCAL_LIBS) firstlast - foldkeys $(LDFLAGS_CURSES) $(LOCAL_LIBS) foldkeys -+form_driver_w $(LDFLAGS_DEFAULT) $(LOCAL_LIBS) form_driver_w - gdc $(LDFLAGS_CURSES) $(LOCAL_LIBS) gdc - hanoi $(LDFLAGS_CURSES) $(LOCAL_LIBS) hanoi - hashtest $(LDFLAGS_CURSES) $(LOCAL_LIBS) hashtest -@@ -83,6 +85,8 @@ - test_instr $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_instr - test_inwstr $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_inwstr - test_opaque $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_opaque -+test_vid_puts $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_vid_puts -+test_vidputs $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_vidputs - testaddch $(LDFLAGS_CURSES) $(LOCAL_LIBS) testaddch - testcurs $(LDFLAGS_CURSES) $(LOCAL_LIBS) testcurs - testscanw $(LDFLAGS_CURSES) $(LOCAL_LIBS) testscanw -diff -Naur ncurses-5.9/test/railroad.c ncurses-5.9.patch/test/railroad.c ---- ncurses-5.9/test/railroad.c 2009-10-24 23:37:56.000000000 +0200 -+++ ncurses-5.9.patch/test/railroad.c 2014-09-01 16:33:22.572792500 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2000-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 2000-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,7 +29,7 @@ - /* - * Author: Thomas E. Dickey - 2000 - * -- * $Id: railroad.c,v 1.19 2009/10/24 21:37:56 tom Exp $ -+ * $Id: railroad.c,v 1.21 2013/09/28 22:02:17 tom Exp $ - * - * A simple demo of the termcap interface. - */ -@@ -55,20 +55,20 @@ - - static bool interrupted = FALSE; - --static int --outc(TPUTS_ARG c) -+static -+TPUTS_PROTO(outc, c) - { - int rc = OK; - - if (interrupted) { - char tmp = (char) c; -- if (write(STDOUT_FILENO, &tmp, 1) == -1) -+ if (write(STDOUT_FILENO, &tmp, (size_t) 1) == -1) - rc = ERR; - } else { - if (putc(c, stdout) == EOF) - rc = ERR; - } -- return rc; -+ TPUTS_RETURN(rc); - } - - static void -diff -Naur ncurses-5.9/test/rain.c ncurses-5.9.patch/test/rain.c ---- ncurses-5.9/test/rain.c 2010-11-13 21:11:46.000000000 +0100 -+++ ncurses-5.9.patch/test/rain.c 2014-09-01 16:33:22.573792493 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: rain.c,v 1.38 2010/11/13 20:11:46 tom Exp $ -+ * $Id: rain.c,v 1.40 2012/01/21 23:54:47 tom Exp $ - */ - #include <test.priv.h> - -@@ -222,7 +222,7 @@ - * Find myself in the list of threads so we can count the number of loops. - */ - for (mystats = 0; mystats < MAX_THREADS; ++mystats) { --#ifdef __MINGW32__ -+#if defined(__MINGW32__) && !defined(__WINPTHREADS_VERSION) - if (drop_threads[mystats].myself.p == pthread_self().p) - #else - if (drop_threads[mystats].myself == pthread_self()) -@@ -256,7 +256,7 @@ - /* - * The description of pthread_create() is misleading, since it implies that - * threads will exit cleanly after their function returns. -- * -+ * - * Since they do not (and the number of threads is limited by system - * resources), make a limited number of threads, and signal any that are - * waiting when we want a thread past that limit. -diff -Naur ncurses-5.9/test/README ncurses-5.9.patch/test/README ---- ncurses-5.9/test/README 2011-02-26 01:09:25.000000000 +0100 -+++ ncurses-5.9.patch/test/README 2014-09-01 16:33:22.524792400 +0200 -@@ -1,5 +1,5 @@ - ------------------------------------------------------------------------------- ---- Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. -- -+-- Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. -- - -- -- - -- Permission is hereby granted, free of charge, to any person obtaining a -- - -- copy of this software and associated documentation files (the -- -@@ -25,7 +25,7 @@ - -- sale, use or other dealings in this Software without prior written -- - -- authorization. -- - ------------------------------------------------------------------------------- ---- $Id: README,v 1.44 2011/02/26 00:09:25 tom Exp $ -+-- $Id: README,v 1.48 2013/01/19 21:30:38 tom Exp $ - ------------------------------------------------------------------------------- - - The programs in this directory are designed to test your newest toy :-) -@@ -223,18 +223,18 @@ - SP lib: form - TABSIZE test: test_opaque - UP - --acs_map test: gdc ins_wide inserts knight movewindow ncurses newdemo test_add_wchstr test_addchstr test_addstr test_addwstr testcurs -+acs_map test: background gdc ins_wide inserts knight movewindow ncurses newdemo test_add_wchstr test_addchstr test_addstr test_addwstr testcurs - add_wch test: demo_panels ncurses test_add_wchstr test_addwstr - add_wchnstr test: test_add_wchstr - add_wchstr test: test_add_wchstr view --addch test: blue bs echochar hashtest ncurses savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_opaque testaddch view worm -+addch test: background blue bs echochar hashtest ncurses savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_opaque testaddch view worm - addchnstr test: test_addchstr - addchstr test: test_addchstr - addnstr test: test_addstr - addnwstr test: ncurses test_addwstr - addstr test: blue bs cardfile gdc hanoi lrtest ncurses savescreen test_addstr - addwstr test: ncurses test_addwstr --assume_default_colors test: ncurses -+assume_default_colors test: background ncurses - assume_default_colors_sp - - attr_get test: ncurses - attr_off test: ncurses -@@ -271,7 +271,7 @@ - color_content_sp - - color_set test: color_set ncurses - copywin test: ncurses testcurs --cur_term test: demo_terminfo dots dots_mvcur lrtest progs: clear tabs tput tset -+cur_term test: demo_terminfo dots dots_mvcur lrtest test_vid_puts test_vidputs progs: clear tabs tput tset - curs_set test: echochar firework gdc hanoi lrtest ncurses newdemo rain savescreen tclock testcurs worm xmas - curs_set_sp lib: ncurses - curscr test: demo_panels edit_field knight lrtest ncurses savescreen tclock view -@@ -306,7 +306,7 @@ - erasewchar - - filter test: filter - filter_sp - --flash test: cardfile lrtest ncurses tclock testcurs -+flash test: cardfile lrtest movewindow ncurses tclock testcurs - flash_sp - - flushinp test: ncurses newdemo testcurs - flushinp_sp lib: ncurses -@@ -399,7 +399,7 @@ - key_name test: key_names ncurses - keybound test: demo_altkeys demo_defkey - keybound_sp lib: ncurses --keyname test: demo_altkeys demo_defkey demo_keyok demo_menus edit_field foldkeys keynames movewindow ncurses redraw testcurs view progs: tic -+keyname test: demo_altkeys demo_defkey demo_keyok demo_menus edit_field foldkeys keynames movewindow ncurses redraw test_getstr testcurs view progs: tic - keyname_sp lib: ncurses - keyok test: demo_keyok foldkeys - keyok_sp lib: ncurses -@@ -430,7 +430,7 @@ - mvaddwstr test: test_addwstr - mvchgat test: chgat - mvcur test: dots_mvcur redraw --mvcur_sp lib: ncurses -+mvcur_sp - - mvdelch - - mvderwin test: movewindow - mvget_wch - -@@ -457,7 +457,7 @@ - mvinsstr test: inserts - mvinstr test: test_instr - mvinwstr test: test_inwstr --mvprintw test: bs demo_menus firework hanoi ncurses tclock view -+mvprintw test: background bs demo_menus firework hanoi ncurses tclock view - mvscanw - - mvvline test: ncurses - mvvline_set test: ncurses -@@ -542,13 +542,13 @@ - prefresh test: testcurs - printw test: background blue bs color_set demo_altkeys demo_defkey demo_keyok demo_menus filter foldkeys ncurses savescreen testcurs testscanw view - putp progs: tput --putp_sp lib: ncurses -+putp_sp - - putwin test: ncurses - qiflush - - qiflush_sp - - raw test: demo_forms ncurses redraw testcurs - raw_sp lib: ncurses --redrawwin test: redraw -+redrawwin test: redraw view - refresh test: blue bs demo_defkey demo_forms demo_keyok demo_menus demo_panels echochar filter firstlast gdc hanoi hashtest lrtest movewindow ncurses savescreen tclock testcurs view xmas - reset_prog_mode test: filter ncurses - reset_prog_mode_sp lib: ncurses -@@ -586,7 +586,7 @@ - set_term lib: ncurses - setcchar test: demo_panels ins_wide ncurses test_add_wchstr test_addwstr view - setscrreg test: view --setupterm test: demo_termcap demo_terminfo dots progs: clear tabs tput tset -+setupterm test: demo_termcap demo_terminfo dots test_vid_puts test_vidputs progs: clear tabs tput tset - slk_attr - - slk_attr_off - - slk_attr_on - -@@ -644,20 +644,20 @@ - tgetstr test: demo_termcap railroad - tgetstr_sp - - tgoto test: railroad --tigetflag test: demo_terminfo progs: tput -+tigetflag test: demo_terminfo progs: tic tput - tigetflag_sp - - tigetnum test: demo_terminfo ncurses progs: tput - tigetnum_sp - --tigetstr test: blue demo_defkey demo_terminfo foldkeys testcurs progs: tput -+tigetstr test: demo_defkey demo_terminfo foldkeys testcurs progs: tput - tigetstr_sp - - timeout test: rain savescreen - tiparm - - touchline test: chgat clip_printw insdelln - touchwin test: chgat clip_printw demo_menus edit_field filter firstlast inch_wide inchs ins_wide insdelln inserts movewindow ncurses redraw test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque xmas - tparm test: dots dots_mvcur progs: tabs tic tput --tputs test: dots dots_mvcur railroad progs: clear tabs tset -+tputs test: dots dots_mvcur railroad test_vid_puts test_vidputs progs: clear tabs tset - tputs_sp lib: ncurses --trace test: demo_menus hanoi hashtest lrtest ncurses testcurs view worm -+trace test: demo_menus hashtest lrtest ncurses testcurs view worm - ttytype lib: ncurses - typeahead test: testcurs - typeahead_sp lib: ncurses -@@ -670,22 +670,24 @@ - ungetmouse - - ungetmouse_sp - - untouchwin lib: form --use_default_colors test: filter firework gdc hanoi knight ncurses rain tclock worm xmas -+use_default_colors test: background filter firework gdc hanoi knight ncurses rain tclock worm xmas - use_default_colors_sp - --use_env progs: tput -+use_env test: ncurses progs: tput - use_env_sp - --use_extended_names test: demo_terminfo progs: infocmp tic -+use_extended_names test: demo_termcap demo_terminfo progs: infocmp tic - use_legacy_coding - - use_legacy_coding_sp - - use_screen test: ditto -+use_tioctl test: ncurses -+use_tioctl_sp - - use_window test: rain worm --vid_attr - -+vid_attr test: test_vid_puts - vid_attr_sp - --vid_puts - -+vid_puts test: test_vid_puts - vid_puts_sp - --vidattr - --vidattr_sp lib: ncurses --vidputs - -+vidattr test: test_vidputs -+vidattr_sp - -+vidputs test: test_vidputs - vidputs_sp lib: ncurses - vline test: gdc ncurses - vline_set - -diff -Naur ncurses-5.9/test/redraw.c ncurses-5.9.patch/test/redraw.c ---- ncurses-5.9/test/redraw.c 2010-05-02 00:04:08.000000000 +0200 -+++ ncurses-5.9.patch/test/redraw.c 2014-09-01 16:33:22.573792493 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2006-2007,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2006-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: redraw.c,v 1.5 2010/05/01 22:04:08 tom Exp $ -+ * $Id: redraw.c,v 1.8 2012/12/08 20:46:02 tom Exp $ - * - * Demonstrate the redrawwin() and wredrawln() functions. - * Thomas Dickey - 2006/11/4 -@@ -113,7 +113,7 @@ - * using mvcur(). It is ifdef'd for NCURSES, since X/Open does - * not define the case where the old location is unknown. - */ -- system("date"); -+ IGNORE_RC(system("date")); - mvcur(-1, -1, y, x); - break; - #endif -diff -Naur ncurses-5.9/test/tclock.c ncurses-5.9.patch/test/tclock.c ---- ncurses-5.9/test/tclock.c 2011-03-22 10:16:00.000000000 +0100 -+++ ncurses-5.9.patch/test/tclock.c 2014-09-01 16:33:22.573792493 +0200 -@@ -1,4 +1,4 @@ --/* $Id: tclock.c,v 1.30 2011/03/22 09:16:00 tom Exp $ */ -+/* $Id: tclock.c,v 1.33 2013/09/28 21:52:34 tom Exp $ */ - - #include <test.priv.h> - -@@ -53,14 +53,14 @@ - - /* Plot a point */ - static void --plot(int x, int y, char col) -+plot(int x, int y, int col) - { - MvAddCh(y, x, (chtype) col); - } - - /* Draw a diagonal(arbitrary) line using Bresenham's alogrithm. */ - static void --dline(int pair, int from_x, int from_y, int x2, int y2, char ch) -+dline(int pair, int from_x, int from_y, int x2, int y2, int ch) - { - int dx, dy; - int ax, ay; -@@ -135,8 +135,8 @@ - short my_bg = COLOR_BLACK; - #if HAVE_GETTIMEOFDAY - struct timeval current; -- double fraction = 0.0; - #endif -+ double fraction = 0.0; - - setlocale(LC_ALL, ""); - -@@ -216,12 +216,12 @@ - attroff(A_REVERSE); - - if (has_colors()) -- (void) attrset(COLOR_PAIR(1)); -+ (void) attrset((attr_t) COLOR_PAIR(1)); - - dline(1, cx, cy, cx + sdx, cy - sdy, 'O'); - - if (has_colors()) -- (void) attrset(COLOR_PAIR(0)); -+ (void) attrset((attr_t) COLOR_PAIR(0)); - - text = ctime(&tim); - MvPrintw(2, 0, "%.*s", (int) (strlen(text) - 1), text); -diff -Naur ncurses-5.9/test/testaddch.c ncurses-5.9.patch/test/testaddch.c ---- ncurses-5.9/test/testaddch.c 2009-08-29 21:02:25.000000000 +0200 -+++ ncurses-5.9.patch/test/testaddch.c 2014-09-01 16:33:22.574792487 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,7 +29,7 @@ - * This is an example written by Alexander V. Lukyanov <lav@yars.free.net>, - * to demonstrate an inconsistency between ncurses and SVr4 curses. - * -- * $Id: testaddch.c,v 1.7 2009/08/29 19:02:25 tom Exp $ -+ * $Id: testaddch.c,v 1.9 2013/01/13 01:02:41 tom Exp $ - */ - #include <test.priv.h> - -@@ -63,7 +63,7 @@ - for (i = 0; i < 8; i++) { - back = (i & 1) ? A_BOLD | 'B' : ' '; - set = (i & 2) ? A_REVERSE : 0; -- attr = (i & 4) ? COLOR_PAIR(4) : 0; -+ attr = (chtype) ((i & 4) ? COLOR_PAIR(4) : 0); - - bkgdset(back); - (void) attrset(set); -@@ -72,9 +72,9 @@ - } - addch('\n'); - for (i = 0; i < 8; i++) { -- back = (i & 1) ? A_BOLD | 'B' | COLOR_PAIR(1) : ' '; -- set = (i & 2) ? A_REVERSE | COLOR_PAIR(2) : 0; -- attr = (i & 4) ? COLOR_PAIR(4) : 0; -+ back = (i & 1) ? (A_BOLD | 'B' | COLOR_PAIR(1)) : ' '; -+ set = (i & 2) ? (A_REVERSE | COLOR_PAIR(2)) : 0; -+ attr = (chtype) ((i & 4) ? COLOR_PAIR(4) : 0); - - bkgdset(back); - (void) attrset(set); -diff -Naur ncurses-5.9/test/test_addchstr.c ncurses-5.9.patch/test/test_addchstr.c ---- ncurses-5.9/test/test_addchstr.c 2010-12-12 02:28:24.000000000 +0100 -+++ ncurses-5.9.patch/test/test_addchstr.c 2014-09-01 16:33:22.573792493 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2009-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: test_addchstr.c,v 1.13 2010/12/12 01:28:24 tom Exp $ -+ * $Id: test_addchstr.c,v 1.18 2012/12/16 00:36:27 tom Exp $ - * - * Demonstrate the waddchstr() and waddch functions. - * Thomas Dickey - 2009/9/12 -@@ -101,6 +101,8 @@ - if (need > temp_length) { - temp_length = need * 2; - temp_buffer = typeRealloc(chtype, temp_length, temp_buffer); -+ if (!temp_buffer) -+ failed("TempBuffer"); - } - do { - const char *s; -@@ -237,6 +239,15 @@ - (void) cbreak(); /* take input chars one at a time, no wait for \n */ - (void) noecho(); /* don't echo input */ - keypad(stdscr, TRUE); -+ -+ /* -+ * Show the characters added in color, to distinguish from those that -+ * are shifted. -+ */ -+ if (has_colors()) { -+ start_color(); -+ init_pair(1, COLOR_WHITE, COLOR_BLUE); -+ } - } - - limit = LINES - 5; -@@ -270,14 +281,8 @@ - - doupdate(); - -- /* -- * Show the characters added in color, to distinguish from those that -- * are shifted. -- */ - if (has_colors()) { -- start_color(); -- init_pair(1, COLOR_WHITE, COLOR_BLUE); -- show_attr = COLOR_PAIR(1); -+ show_attr = (attr_t) COLOR_PAIR(1); - wbkgdset(work, show_attr | ' '); - } else { - show_attr = A_STANDOUT; -@@ -289,11 +294,13 @@ - case key_RECUR: - test_adds(level + 1); - -- touchwin(look); -+ if (look) -+ touchwin(look); - touchwin(work); - touchwin(show); - -- wnoutrefresh(look); -+ if (look) -+ wnoutrefresh(look); - wnoutrefresh(work); - wnoutrefresh(show); - -@@ -445,10 +452,10 @@ - } - } - if (level > 0) { -- delwin(show); - delwin(work); - delwin(look); - } -+ delwin(show); - } - - static void -diff -Naur ncurses-5.9/test/test_addstr.c ncurses-5.9.patch/test/test_addstr.c ---- ncurses-5.9/test/test_addstr.c 2010-12-12 01:17:37.000000000 +0100 -+++ ncurses-5.9.patch/test/test_addstr.c 2014-09-01 16:33:22.574792487 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2009-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: test_addstr.c,v 1.6 2010/12/12 00:17:37 tom Exp $ -+ * $Id: test_addstr.c,v 1.10 2012/12/16 00:14:10 tom Exp $ - * - * Demonstrate the waddstr() and waddch functions. - * Thomas Dickey - 2009/9/12 -@@ -161,6 +161,15 @@ - (void) cbreak(); /* take input chars one at a time, no wait for \n */ - (void) noecho(); /* don't echo input */ - keypad(stdscr, TRUE); -+ -+ /* -+ * Show the characters added in color, to distinguish from those that -+ * are shifted. -+ */ -+ if (has_colors()) { -+ start_color(); -+ init_pair(1, COLOR_WHITE, COLOR_BLUE); -+ } - } - - limit = LINES - 5; -@@ -194,14 +203,8 @@ - - doupdate(); - -- /* -- * Show the characters added in color, to distinguish from those that -- * are shifted. -- */ - if (has_colors()) { -- start_color(); -- init_pair(1, COLOR_WHITE, COLOR_BLUE); -- wbkgdset(work, COLOR_PAIR(1) | ' '); -+ wbkgdset(work, (chtype) (COLOR_PAIR(1) | ' ')); - } - - while ((ch = read_linedata(work)) != ERR && !isQUIT(ch)) { -@@ -210,11 +213,13 @@ - case key_RECUR: - test_adds(level + 1); - -- touchwin(look); -+ if (look) -+ touchwin(look); - touchwin(work); - touchwin(show); - -- wnoutrefresh(look); -+ if (look) -+ wnoutrefresh(look); - wnoutrefresh(work); - wnoutrefresh(show); - -@@ -361,8 +366,8 @@ - break; - } - } -+ delwin(show); - if (level > 0) { -- delwin(show); - delwin(work); - delwin(look); - } -diff -Naur ncurses-5.9/test/test_add_wchstr.c ncurses-5.9.patch/test/test_add_wchstr.c ---- ncurses-5.9/test/test_add_wchstr.c 2011-01-15 19:15:11.000000000 +0100 -+++ ncurses-5.9.patch/test/test_add_wchstr.c 2014-09-01 16:33:22.573792493 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2009,2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 2010-2011,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: test_add_wchstr.c,v 1.15 2011/01/15 18:15:11 tom Exp $ -+ * $Id: test_add_wchstr.c,v 1.20 2012/12/16 00:12:04 tom Exp $ - * - * Demonstrate the waddwchstr() and wadd_wch functions. - * Thomas Dickey - 2009/9/12 -@@ -90,6 +90,8 @@ - if (need > temp_length) { \ - temp_length = need * 2; \ - temp_buffer = typeRealloc(cchar_t, temp_length, temp_buffer); \ -+ if (!temp_buffer) \ -+ failed("TempBuffer"); \ - } \ - have[0] = 0; \ - have[1] = 0; \ -@@ -317,6 +319,15 @@ - (void) cbreak(); /* take input chars one at a time, no wait for \n */ - (void) noecho(); /* don't echo input */ - keypad(stdscr, TRUE); -+ -+ /* -+ * Show the characters added in color, to distinguish from those that -+ * are shifted. -+ */ -+ if (has_colors()) { -+ start_color(); -+ init_pair(1, COLOR_WHITE, COLOR_BLUE); -+ } - } - - limit = LINES - 5; -@@ -350,14 +361,8 @@ - - doupdate(); - -- /* -- * Show the characters added in color, to distinguish from those that -- * are shifted. -- */ - if (has_colors()) { -- start_color(); -- init_pair(1, COLOR_WHITE, COLOR_BLUE); -- wbkgdset(work, COLOR_PAIR(1) | ' '); -+ wbkgdset(work, (chtype) (COLOR_PAIR(1) | ' ')); - } - - while ((ch = read_linedata(work)) != ERR && !isQUIT(ch)) { -@@ -366,11 +371,13 @@ - case key_RECUR: - test_add_wchstr(level + 1); - -- touchwin(look); -+ if (look) -+ touchwin(look); - touchwin(work); - touchwin(show); - -- wnoutrefresh(look); -+ if (look) -+ wnoutrefresh(look); - wnoutrefresh(work); - wnoutrefresh(show); - -@@ -514,8 +521,8 @@ - break; - } - } -+ delwin(show); - if (level > 0) { -- delwin(show); - delwin(work); - delwin(look); - } -diff -Naur ncurses-5.9/test/test_addwstr.c ncurses-5.9.patch/test/test_addwstr.c ---- ncurses-5.9/test/test_addwstr.c 2010-12-12 01:18:00.000000000 +0100 -+++ ncurses-5.9.patch/test/test_addwstr.c 2014-09-01 16:33:22.574792487 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 2009-2010,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: test_addwstr.c,v 1.6 2010/12/12 00:18:00 tom Exp $ -+ * $Id: test_addwstr.c,v 1.11 2012/12/16 00:11:18 tom Exp $ - * - * Demonstrate the waddwstr() and wadd_wch functions. - * Thomas Dickey - 2009/9/12 -@@ -233,8 +233,9 @@ - WINDOW *work = 0; - WINDOW *show = 0; - int margin = (2 * MY_TABSIZE) - 1; -- Options option = ((m_opt ? oMove : oDefault) -- | ((w_opt || (level > 0)) ? oWindow : oDefault)); -+ Options option = (Options) ((int) (m_opt ? oMove : oDefault) -+ | (int) ((w_opt || (level > 0)) -+ ? oWindow : oDefault)); - - if (first) { - static char cmd[80]; -@@ -246,6 +247,15 @@ - (void) cbreak(); /* take input chars one at a time, no wait for \n */ - (void) noecho(); /* don't echo input */ - keypad(stdscr, TRUE); -+ -+ /* -+ * Show the characters inserted in color, to distinguish from those that -+ * are shifted. -+ */ -+ if (has_colors()) { -+ start_color(); -+ init_pair(1, COLOR_WHITE, COLOR_BLUE); -+ } - } - - limit = LINES - 5; -@@ -279,14 +289,8 @@ - - doupdate(); - -- /* -- * Show the characters inserted in color, to distinguish from those that -- * are shifted. -- */ - if (has_colors()) { -- start_color(); -- init_pair(1, COLOR_WHITE, COLOR_BLUE); -- wbkgdset(work, COLOR_PAIR(1) | ' '); -+ wbkgdset(work, (chtype) (COLOR_PAIR(1) | ' ')); - } - - while ((ch = read_linedata(work)) != ERR && !isQUIT(ch)) { -@@ -295,11 +299,13 @@ - case key_RECUR: - test_inserts(level + 1); - -- touchwin(look); -+ if (look) -+ touchwin(look); - touchwin(work); - touchwin(show); - -- wnoutrefresh(look); -+ if (look) -+ wnoutrefresh(look); - wnoutrefresh(work); - wnoutrefresh(show); - -@@ -445,8 +451,8 @@ - break; - } - } -+ delwin(show); - if (level > 0) { -- delwin(show); - delwin(work); - delwin(look); - } -diff -Naur ncurses-5.9/test/testcurs.c ncurses-5.9.patch/test/testcurs.c ---- ncurses-5.9/test/testcurs.c 2010-11-13 22:02:28.000000000 +0100 -+++ ncurses-5.9.patch/test/testcurs.c 2014-09-01 16:33:22.574792487 +0200 -@@ -6,7 +6,7 @@ - * wrs(5/28/93) -- modified to be consistent (perform identically) with either - * PDCurses or under Unix System V, R4 - * -- * $Id: testcurs.c,v 1.43 2010/11/13 21:02:28 tom Exp $ -+ * $Id: testcurs.c,v 1.48 2013/05/18 22:05:06 tom Exp $ - */ - - #include <test.priv.h> -@@ -45,18 +45,6 @@ - }; - #define MAX_OPTIONS (int) SIZEOF(command) - --#if !HAVE_STRDUP --#define strdup my_strdup --static char * --strdup(char *s) --{ -- char *p = typeMalloc(char, strlen(s) + 1); -- if (p) -- strcpy(p, s); -- return (p); --} --#endif /* not HAVE_STRDUP */ -- - static int width, height; - - int -@@ -85,7 +73,7 @@ - #ifdef A_COLOR - if (has_colors()) { - init_pair(1, COLOR_WHITE, COLOR_BLUE); -- wbkgd(win, COLOR_PAIR(1)); -+ wbkgd(win, (chtype) COLOR_PAIR(1)); - } else - wbkgd(win, A_REVERSE); - #else -@@ -353,6 +341,9 @@ - typeahead(-1); - #endif - -+#ifdef NCURSES_MOUSE_VERSION -+ mousemask(ALL_MOUSE_EVENTS, (mmask_t *) 0); -+#endif - #if defined(PDCURSES) - mouse_set(ALL_MOUSE_EVENTS); - #endif -@@ -367,8 +358,38 @@ - wprintw(win, "Key Pressed: %c", c); - else - wprintw(win, "Key Pressed: %s", unctrl(UChar(c))); --#if defined(PDCURSES) -+#ifdef KEY_MOUSE - if (c == KEY_MOUSE) { -+#if defined(NCURSES_MOUSE_VERSION) -+#define ButtonChanged(n) ((event.bstate) & NCURSES_MOUSE_MASK(1, 037)) -+#define ButtonPressed(n) ((event.bstate) & NCURSES_MOUSE_MASK(1, NCURSES_BUTTON_PRESSED)) -+#define ButtonDouble(n) ((event.bstate) & NCURSES_MOUSE_MASK(1, NCURSES_DOUBLE_CLICKED)) -+#define ButtonTriple(n) ((event.bstate) & NCURSES_MOUSE_MASK(1, NCURSES_TRIPLE_CLICKED)) -+#define ButtonRelease(n) ((event.bstate) & NCURSES_MOUSE_MASK(1, NCURSES_BUTTON_RELEASED)) -+ MEVENT event; -+ int button = 0; -+ -+ getmouse(&event); -+ if (ButtonChanged(1)) -+ button = 1; -+ else if (ButtonChanged(2)) -+ button = 2; -+ else if (ButtonChanged(3)) -+ button = 3; -+ else -+ button = 0; -+ wmove(win, 4, 18); -+ wprintw(win, "Button %d: ", button); -+ if (ButtonPressed(button)) -+ wprintw(win, "pressed: "); -+ else if (ButtonDouble(button)) -+ wprintw(win, "double: "); -+ else if (ButtonTriple(button)) -+ wprintw(win, "triple: "); -+ else -+ wprintw(win, "released: "); -+ wprintw(win, " Position: Y: %d X: %d", event.y, event.x); -+#elif defined(PDCURSES) - int button = 0; - request_mouse_pos(); - if (BUTTON_CHANGED(1)) -@@ -390,8 +411,9 @@ - else - wprintw(win, "released: "); - wprintw(win, " Position: Y: %d X: %d", MOUSE_Y_POS, MOUSE_X_POS); -+#endif /* NCURSES_VERSION vs PDCURSES */ - } --#endif -+#endif /* KEY_MOUSE */ - wrefresh(win); - if (c == ' ') - break; -@@ -491,7 +513,7 @@ - #ifdef A_COLOR - if (has_colors()) { - init_pair(3, COLOR_BLUE, COLOR_WHITE); -- wbkgd(win1, COLOR_PAIR(3)); -+ wbkgd(win1, (chtype) COLOR_PAIR(3)); - } else - wbkgd(win1, A_NORMAL); - #else -@@ -693,9 +715,11 @@ - raw(); - wgetch(pad); - -- spad = subpad(pad, 12, 25, 6, 52); -- MvWAddStr(spad, 2, 2, "This is a new subpad"); -- box(spad, 0, 0); -+ if ((spad = subpad(pad, 12, 25, 6, 52)) != 0) { -+ MvWAddStr(spad, 2, 2, "This is a new subpad"); -+ box(spad, 0, 0); -+ delwin(spad); -+ } - prefresh(pad, 0, 0, 0, 0, 15, 75); - keypad(pad, TRUE); - raw(); -diff -Naur ncurses-5.9/test/test_getstr.c ncurses-5.9.patch/test/test_getstr.c ---- ncurses-5.9/test/test_getstr.c 2009-08-29 21:02:25.000000000 +0200 -+++ ncurses-5.9.patch/test/test_getstr.c 2014-09-01 16:33:22.574792487 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 2007-2008,2009 Free Software Foundation, Inc. * -+ * Copyright (c) 2007-2009,2012 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -26,7 +26,7 @@ - * authorization. * - ****************************************************************************/ - /* -- * $Id: test_getstr.c,v 1.9 2009/08/29 19:02:25 tom Exp $ -+ * $Id: test_getstr.c,v 1.10 2012/07/07 18:22:49 tom Exp $ - * - * Author: Thomas E Dickey - * -@@ -58,6 +58,15 @@ - eMaxFlavor - } Flavors; - -+/* -+ * Return-code is OK/ERR or a keyname. -+ */ -+static const char * -+ok_keyname(int code) -+{ -+ return ((code == OK) ? "OK" : ((code == ERR) ? "ERR" : keyname(code))); -+} -+ - static bool - Quit(int ch) - { -@@ -310,7 +319,7 @@ - } - noecho(); - (void) wattrset(txtwin, A_NORMAL); -- wprintw(strwin, "%d:%s", rc, buffer); -+ wprintw(strwin, "%s:%s", ok_keyname(rc), buffer); - wnoutrefresh(strwin); - break; - default: -diff -Naur ncurses-5.9/test/test.priv.h ncurses-5.9.patch/test/test.priv.h ---- ncurses-5.9/test/test.priv.h 2011-03-22 10:15:45.000000000 +0100 -+++ ncurses-5.9.patch/test/test.priv.h 2014-09-01 16:33:22.573792493 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -29,7 +29,7 @@ - /**************************************************************************** - * Author: Thomas E. Dickey 1996-on * - ****************************************************************************/ --/* $Id: test.priv.h,v 1.103 2011/03/22 09:15:45 tom Exp $ */ -+/* $Id: test.priv.h,v 1.123 2014/02/01 22:09:27 tom Exp $ */ - - #ifndef __TEST_PRIV_H - #define __TEST_PRIV_H 1 -@@ -58,6 +58,10 @@ - /* - * Fallback definitions to accommodate broken compilers. - */ -+#ifndef HAVE_ASSUME_DEFAULT_COLORS -+#define HAVE_ASSUME_DEFAULT_COLORS 0 -+#endif -+ - #ifndef HAVE_CURSES_VERSION - #define HAVE_CURSES_VERSION 0 - #endif -@@ -158,6 +162,10 @@ - #define HAVE_RIPOFFLINE 0 - #endif - -+#ifndef HAVE_SCR_DUMP -+#define HAVE_SCR_DUMP 0 -+#endif -+ - #ifndef HAVE_SETUPTERM - #define HAVE_SETUPTERM 0 - #endif -@@ -170,14 +178,30 @@ - #define HAVE_SLK_INIT 0 - #endif - -+#ifndef HAVE_SYS_IOCTL_H -+#define HAVE_SYS_IOCTL_H 0 -+#endif -+ -+#ifndef HAVE_SYS_SELECT_H -+#define HAVE_SYS_SELECT_H 0 -+#endif -+ - #ifndef HAVE_TERMATTRS - #define HAVE_TERMATTRS 0 - #endif - -+#ifndef HAVE_TERMIOS_H -+#define HAVE_TERMIOS_H 0 -+#endif -+ - #ifndef HAVE_TERMNAME - #define HAVE_TERMNAME 0 - #endif - -+#ifndef HAVE_TERM_ENTRY_H -+#define HAVE_TERM_ENTRY_H 0 -+#endif -+ - #ifndef HAVE_TGETENT - #define HAVE_TGETENT 0 - #endif -@@ -202,6 +226,14 @@ - #define HAVE_USE_DEFAULT_COLORS 0 - #endif - -+#ifndef HAVE_USE_SCREEN -+#define HAVE_USE_SCREEN 0 -+#endif -+ -+#ifndef HAVE_USE_WINDOW -+#define HAVE_USE_WINDOW 0 -+#endif -+ - #ifndef HAVE_WRESIZE - #define HAVE_WRESIZE 0 - #endif -@@ -222,6 +254,13 @@ - #define NO_LEAKS 0 - #endif - -+/* -+ * Workaround for HPUX -+ */ -+#if defined(__hpux) && !defined(NCURSES_VERSION) -+#define _ACS_COMPAT_CODE /* needed for acs_map vs __acs_map */ -+#endif -+ - #include <stdlib.h> - #include <stdarg.h> - #include <string.h> -@@ -269,21 +308,18 @@ - - /* - * Not all curses.h implementations include unctrl.h, -- * Solaris 10 xpg4 for example. - */ --#if defined(NCURSES_VERSION) || defined(_XOPEN_CURSES) --#if defined(HAVE_NCURSESW_NCURSES_H) -+#if defined(HAVE_NCURSESW_UNCTRL_H) - #include <ncursesw/unctrl.h> --#elif defined(HAVE_NCURSES_NCURSES_H) -+#elif defined(HAVE_NCURSES_UNCTRL_H) - #include <ncurses/unctrl.h> --#else -+#elif defined(HAVE_UNCTRL_H) - #include <unctrl.h> - #endif --#endif - - #if HAVE_GETOPT_H - #include <getopt.h> --#else -+#elif !defined(HAVE_GETOPT_HEADER) - /* 'getopt()' may be prototyped in <stdlib.h>, but declaring its variables - * doesn't hurt. - */ -@@ -323,17 +359,20 @@ - #endif - - #if !USE_SOFTKEYS --#define slk_init() /* nothing */ --#define slk_restore() /* nothing */ --#define slk_clear() /* nothing */ -+#define slk_init() /* nothing */ -+#define slk_restore() /* nothing */ -+#define slk_clear() /* nothing */ - #endif - - #ifndef HAVE_WSYNCDOWN --#define wsyncdown(win) /* nothing */ -+#define wsyncdown(win) /* nothing */ - #endif - - #ifndef USE_WIDEC_SUPPORT --#if (defined(_XOPEN_SOURCE_EXTENDED) || defined(_XPG5)) && defined(WACS_ULCORNER) -+#if (defined(_XOPEN_SOURCE_EXTENDED) \ -+ || (defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE - 0 >= 500)) \ -+ || (defined(NCURSES_WIDECHAR) && (NCURSES_WIDECHAR - 0 < 1))) \ -+ && defined(WACS_ULCORNER) - #define USE_WIDEC_SUPPORT 1 - #else - #define USE_WIDEC_SUPPORT 0 -@@ -385,6 +424,14 @@ - #define NCURSES_CH_T cchar_t - #endif - -+#ifndef NCURSES_COLOR_T -+#define NCURSES_COLOR_T short -+#endif -+ -+#ifndef NCURSES_PAIRS_T -+#define NCURSES_PAIRS_T short -+#endif -+ - #ifndef NCURSES_OPAQUE - #define NCURSES_OPAQUE 0 - #endif -@@ -507,7 +554,7 @@ - if ((count = getcchar(s, NULL, NULL, NULL, NULL)) > 0) { \ - wchar_t test_wch[CCHARW_MAX + 2]; \ - attr_t test_attrs; \ -- short test_pair; \ -+ NCURSES_PAIRS_T test_pair; \ - \ - if (getcchar( s, test_wch, &test_attrs, &test_pair, NULL) == OK \ - && test_wch[0] != L'\0') { \ -@@ -576,6 +623,17 @@ - #define TIGETSTR(ti,tc) tgetstr(tc,&area_pointer) - #endif - -+/* -+ * So far (2013 - more than ten years), only ncurses implements -+ * use_extended_names(). -+ */ -+#if defined(NCURSES_XNAMES) -+#elif defined(NCURSES_VERSION) && defined(HAVE_TERM_ENTRY_H) && HAVE_TERM_ENTRY_H -+#define NCURSES_XNAMES 1 -+#else -+#define NCURSES_XNAMES 0 -+#endif -+ - /* ncurses implements tparm() with varargs, X/Open with a fixed-parameter list - * (which is incompatible with legacy usage, doesn't solve any problems). - */ -@@ -609,8 +667,32 @@ - #define EXIT_FAILURE 1 - #endif - --#ifdef __MINGW32__ -+#if defined(__MINGW32__) -+ -+#if defined(PDCURSES) -+#ifdef WINVER -+# if WINVER < 0x0501 -+# error WINVER must at least be 0x0501 -+# endif -+#else -+# define WINVER 0x0501 -+#endif -+#include <windows.h> -+#include <sys/time.h> /* for struct timeval */ -+#undef sleep -+#define sleep(n) Sleep((n) * 1000) -+#define SIGHUP 1 -+#define SIGKILL 9 -+#define getlogin() "username" -+ -+#elif defined(HAVE_NCURSESW_NCURSES_H) -+#include <ncursesw/nc_mingw.h> -+#elif defined(HAVE_NCURSES_NCURSES_H) -+#include <ncurses/nc_mingw.h> -+#else - #include <nc_mingw.h> -+#endif -+ - /* conflicts in test/firstlast.c */ - #undef large - #undef small -@@ -653,25 +735,32 @@ - * The same would be needed for HPUX 10.20 - */ - #ifndef TPUTS_ARG -+#define TPUTS_ARG int -+#endif -+ - #if defined(sun) && !defined(_XOPEN_CURSES) && !defined(NCURSES_VERSION_PATCH) -+#undef TPUTS_ARG - #define TPUTS_ARG char - extern char *tgoto(char *, int, int); /* available, but not prototyped */ --#else --#define TPUTS_ARG int - #endif -+ -+#ifndef TPUTS_PROTO -+#define TPUTS_PROTO(func,value) int func(TPUTS_ARG value) -+#endif -+ -+#ifndef TPUTS_RETURN -+#define TPUTS_RETURN(value) return value - #endif - - /* - * Workarounds for Solaris's X/Open curses - */ --#if defined(sun) && defined(_XOPEN_CURSES) && !defined(NCURSES_VERSION_PATCH) - #if !defined(KEY_MIN) && defined(__KEY_MIN) - #define KEY_MIN __KEY_MIN - #endif - #if !defined(KEY_MAX) && defined(__KEY_MIN) - #define KEY_MAX __KEY_MAX - #endif --#endif - - /* - * Workaround to build with Sun's default SVr4 curses. -@@ -702,23 +791,10 @@ - #define CONST_MENUS /* nothing */ - #endif - --#ifndef HAVE_USE_WINDOW --#if !defined(NCURSES_VERSION_PATCH) || (NCURSES_VERSION_PATCH < 20070915) || !NCURSES_EXT_FUNCS --#define HAVE_USE_WINDOW 0 --#else --#define HAVE_USE_WINDOW 1 --#endif --#endif -- - /* - * Simplify setting up demo of threading with these macros. - */ - --#if !HAVE_USE_WINDOW --typedef int (*NCURSES_WINDOW_CB) (WINDOW *, void *); --typedef int (*NCURSES_SCREEN_CB) (SCREEN *, void *); --#endif -- - #if HAVE_USE_WINDOW - #define USING_WINDOW(w,func) use_window(w, (NCURSES_WINDOW_CB) func, w) - #define USING_WINDOW2(w,func,data) use_window(w, (NCURSES_WINDOW_CB) func, data) -@@ -745,6 +821,8 @@ - #define USE_TRACE 0 - #endif - -+#define Trace2(p) /* nothing */ -+ - #define MvAddCh (void) mvaddch - #define MvWAddCh (void) mvwaddch - #define MvAddStr (void) mvaddstr -diff -Naur ncurses-5.9/test/test_vid_puts.c ncurses-5.9.patch/test/test_vid_puts.c ---- ncurses-5.9/test/test_vid_puts.c 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/test/test_vid_puts.c 2014-09-01 16:33:22.574792487 +0200 -@@ -0,0 +1,148 @@ -+/**************************************************************************** -+ * Copyright (c) 2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+/* -+ * $Id: test_vid_puts.c,v 1.5 2013/09/28 22:42:29 tom Exp $ -+ * -+ * Demonstrate the vid_puts and vid_attr functions. -+ * Thomas Dickey - 2013/01/12 -+ */ -+ -+#define USE_TINFO -+#include <test.priv.h> -+ -+#if USE_WIDEC_SUPPORT && HAVE_SETUPTERM -+ -+#define valid(s) ((s != 0) && s != (char *)-1) -+ -+static FILE *my_fp; -+static bool p_opt = FALSE; -+ -+static -+TPUTS_PROTO(outc, c) -+{ -+ int rc = c; -+ -+ rc = putc(c, my_fp); -+ TPUTS_RETURN(rc); -+} -+ -+static bool -+outs(const char *s) -+{ -+ if (valid(s)) { -+ tputs(s, 1, outc); -+ return TRUE; -+ } -+ return FALSE; -+} -+ -+static void -+cleanup(void) -+{ -+ outs(exit_attribute_mode); -+ if (!outs(orig_colors)) -+ outs(orig_pair); -+ outs(cursor_normal); -+} -+ -+static void -+change_attr(chtype attr) -+{ -+ if (p_opt) { -+ vid_puts(attr, (short) 0, (void *) 0, outc); -+ } else { -+ vid_attr(attr, (short) 0, (void *) 0); -+ } -+} -+ -+static void -+test_vid_puts(void) -+{ -+ fprintf(my_fp, "Name: "); -+ change_attr(A_BOLD); -+ fputs("Bold", my_fp); -+ change_attr(A_REVERSE); -+ fputs(" Reverse", my_fp); -+ change_attr(A_NORMAL); -+ fputs("\n", my_fp); -+} -+ -+static void -+usage(void) -+{ -+ static const char *tbl[] = -+ { -+ "Usage: test_vid_puts [options]" -+ ,"" -+ ,"Options:" -+ ," -e use stderr (default stdout)" -+ ," -p use vid_puts (default vid_attr)" -+ }; -+ unsigned n; -+ for (n = 0; n < SIZEOF(tbl); ++n) -+ fprintf(stderr, "%s\n", tbl[n]); -+ ExitProgram(EXIT_FAILURE); -+} -+ -+int -+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED) -+{ -+ int ch; -+ -+ my_fp = stdout; -+ -+ while ((ch = getopt(argc, argv, "ep")) != -1) { -+ switch (ch) { -+ case 'e': -+ my_fp = stderr; -+ break; -+ case 'p': -+ p_opt = TRUE; -+ break; -+ default: -+ usage(); -+ break; -+ } -+ } -+ if (optind < argc) -+ usage(); -+ -+ setupterm((char *) 0, 1, (int *) 0); -+ test_vid_puts(); -+ cleanup(); -+ ExitProgram(EXIT_SUCCESS); -+} -+ -+#else -+int -+main(void) -+{ -+ printf("This program requires the wide-ncurses terminfo library\n"); -+ ExitProgram(EXIT_FAILURE); -+} -+#endif -diff -Naur ncurses-5.9/test/test_vidputs.c ncurses-5.9.patch/test/test_vidputs.c ---- ncurses-5.9/test/test_vidputs.c 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/test/test_vidputs.c 2014-09-01 16:33:22.574792487 +0200 -@@ -0,0 +1,148 @@ -+/**************************************************************************** -+ * Copyright (c) 2013 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+/* -+ * $Id: test_vidputs.c,v 1.4 2013/09/28 22:45:21 tom Exp $ -+ * -+ * Demonstrate the vidputs and vidattr functions. -+ * Thomas Dickey - 2013/01/12 -+ */ -+ -+#define USE_TINFO -+#include <test.priv.h> -+ -+#if HAVE_SETUPTERM -+ -+#define valid(s) ((s != 0) && s != (char *)-1) -+ -+static FILE *my_fp; -+static bool p_opt = FALSE; -+ -+static -+TPUTS_PROTO(outc, c) -+{ -+ int rc = c; -+ -+ rc = putc(c, my_fp); -+ TPUTS_RETURN(rc); -+} -+ -+static bool -+outs(const char *s) -+{ -+ if (valid(s)) { -+ tputs(s, 1, outc); -+ return TRUE; -+ } -+ return FALSE; -+} -+ -+static void -+cleanup(void) -+{ -+ outs(exit_attribute_mode); -+ if (!outs(orig_colors)) -+ outs(orig_pair); -+ outs(cursor_normal); -+} -+ -+static void -+change_attr(chtype attr) -+{ -+ if (p_opt) { -+ vidputs(attr, outc); -+ } else { -+ vidattr(attr); -+ } -+} -+ -+static void -+test_vidputs(void) -+{ -+ fprintf(my_fp, "Name: "); -+ change_attr(A_BOLD); -+ fputs("Bold", my_fp); -+ change_attr(A_REVERSE); -+ fputs(" Reverse", my_fp); -+ change_attr(A_NORMAL); -+ fputs("\n", my_fp); -+} -+ -+static void -+usage(void) -+{ -+ static const char *tbl[] = -+ { -+ "Usage: test_vidputs [options]" -+ ,"" -+ ,"Options:" -+ ," -e use stderr (default stdout)" -+ ," -p use vidputs (default vidattr)" -+ }; -+ unsigned n; -+ for (n = 0; n < SIZEOF(tbl); ++n) -+ fprintf(stderr, "%s\n", tbl[n]); -+ ExitProgram(EXIT_FAILURE); -+} -+ -+int -+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED) -+{ -+ int ch; -+ -+ my_fp = stdout; -+ -+ while ((ch = getopt(argc, argv, "ep")) != -1) { -+ switch (ch) { -+ case 'e': -+ my_fp = stderr; -+ break; -+ case 'p': -+ p_opt = TRUE; -+ break; -+ default: -+ usage(); -+ break; -+ } -+ } -+ if (optind < argc) -+ usage(); -+ -+ setupterm((char *) 0, 1, (int *) 0); -+ test_vidputs(); -+ cleanup(); -+ ExitProgram(EXIT_SUCCESS); -+} -+#else -+int -+main(int argc GCC_UNUSED, -+ char *argv[]GCC_UNUSED) -+{ -+ fprintf(stderr, "This program requires terminfo\n"); -+ exit(EXIT_FAILURE); -+} -+#endif -diff -Naur ncurses-5.9/test/view.c ncurses-5.9.patch/test/view.c ---- ncurses-5.9/test/view.c 2010-11-14 02:06:02.000000000 +0100 -+++ ncurses-5.9.patch/test/view.c 2014-09-01 16:33:22.575792482 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -50,10 +50,11 @@ - * scroll operation worked, and the refresh() code only had to do a - * partial repaint. - * -- * $Id: view.c,v 1.81 2010/11/14 01:06:02 tom Exp $ -+ * $Id: view.c,v 1.94 2013/09/28 21:58:42 tom Exp $ - */ - - #include <test.priv.h> -+#include <widechars.h> - - #include <time.h> - -@@ -81,24 +82,10 @@ - #include <sys/ptem.h> - #endif - --#if USE_WIDEC_SUPPORT --#if HAVE_MBTOWC && HAVE_MBLEN --#define reset_mbytes(state) IGNORE_RC(mblen(NULL, 0)), IGNORE_RC(mbtowc(NULL, NULL, 0)) --#define count_mbytes(buffer,length,state) mblen(buffer,length) --#define check_mbytes(wch,buffer,length,state) \ -- (int) mbtowc(&wch, buffer, length) --#define state_unused --#elif HAVE_MBRTOWC && HAVE_MBRLEN --#define reset_mbytes(state) init_mb(state) --#define count_mbytes(buffer,length,state) mbrlen(buffer,length,&state) --#define check_mbytes(wch,buffer,length,state) \ -- (int) mbrtowc(&wch, buffer, length, &state) --#else --make an error --#endif --#endif /* USE_WIDEC_SUPPORT */ -+#undef CTRL -+#define CTRL(x) ((x) & 0x1f) - --static RETSIGTYPE finish(int sig) GCC_NORETURN; -+static void finish(int sig) GCC_NORETURN; - static void show_all(const char *tag); - - #if defined(SIGWINCH) && defined(TIOCGWINSZ) && HAVE_RESIZE_TERM -@@ -108,11 +95,11 @@ - #endif - - #if CAN_RESIZE --static RETSIGTYPE adjust(int sig); -+static void adjust(int sig); - static int interrupted; -+static bool waiting = FALSE; - #endif - --static bool waiting = FALSE; - static int shift = 0; - static bool try_color = FALSE; - -@@ -121,6 +108,8 @@ - static NCURSES_CH_T **lptr; - static int num_lines; - -+static void usage(void) GCC_NORETURN; -+ - static void - usage(void) - { -@@ -135,6 +124,7 @@ - #if defined(KEY_RESIZE) - ," -r use old-style sigwinch handler rather than KEY_RESIZE" - #endif -+ ," -s start in single-step mode, waiting for input" - #ifdef TRACE - ," -t trace screen updates" - ," -T NUM specify trace mask" -@@ -180,7 +170,7 @@ - { - unsigned len = (unsigned) strlen(src); - NCURSES_CH_T *dst = typeMalloc(NCURSES_CH_T, len + 1); -- unsigned j, k; -+ size_t j, k; - #if USE_WIDEC_SUPPORT - wchar_t wstr[CCHARW_MAX + 1]; - wchar_t wch; -@@ -243,6 +233,7 @@ - int value = 0; - bool done = FALSE; - bool got_number = FALSE; -+ bool single_step = FALSE; - #if CAN_RESIZE - bool nonposix_resize = FALSE; - #endif -@@ -258,7 +249,7 @@ - (void) signal(SIGINT, finish); /* arrange interrupts to terminate */ - #endif - -- while ((i = getopt(argc, argv, "cin:rtT:")) != -1) { -+ while ((i = getopt(argc, argv, "cin:rstT:")) != -1) { - switch (i) { - case 'c': - try_color = TRUE; -@@ -276,9 +267,18 @@ - nonposix_resize = TRUE; - break; - #endif -+ case 's': -+ single_step = TRUE; -+ break; - #ifdef TRACE - case 'T': -- trace((unsigned) atoi(optarg)); -+ { -+ char *next = 0; -+ int tvalue = (int) strtol(optarg, &next, 0); -+ if (tvalue < 0 || (next != 0 && *next != 0)) -+ usage(); -+ trace((unsigned) tvalue); -+ } - break; - case 't': - trace(TRACE_CALLS); -@@ -306,7 +306,7 @@ - (void) signal(SIGWINCH, adjust); /* arrange interrupts to resize */ - #endif - -- /* slurp the file */ -+ Trace(("slurp the file")); - for (lptr = &vec_lines[0]; (lptr - vec_lines) < MAXLINES; lptr++) { - char temp[BUFSIZ], *s, *d; - int col; -@@ -314,8 +314,26 @@ - if (fgets(buf, sizeof(buf), fp) == 0) - break; - -- /* convert tabs so that shift will work properly */ -+#if USE_WIDEC_SUPPORT -+ if (lptr == vec_lines) { -+ if (!memcmp("", buf, 3)) { -+ Trace(("trim BOM")); -+ s = buf + 3; -+ d = buf; -+ do { -+ } while ((*d++ = *s++) != '\0'); -+ } -+ } -+#endif -+ -+ /* convert tabs and nonprinting chars so that shift will work properly */ - for (s = buf, d = temp, col = 0; (*d = *s) != '\0'; s++) { -+ if (*d == '\r') { -+ if (s[1] == '\n') -+ continue; -+ else -+ break; -+ } - if (*d == '\n') { - *d = '\0'; - break; -@@ -347,14 +365,15 @@ - (void) nonl(); /* tell curses not to do NL->CR/NL on output */ - (void) cbreak(); /* take input chars one at a time, no wait for \n */ - (void) noecho(); /* don't echo input */ -- nodelay(stdscr, TRUE); -+ if (!single_step) -+ nodelay(stdscr, TRUE); - idlok(stdscr, TRUE); /* allow use of insert/delete line */ - - if (try_color) { - if (has_colors()) { - start_color(); - init_pair(my_pair, COLOR_WHITE, COLOR_BLUE); -- bkgd(COLOR_PAIR(my_pair)); -+ bkgd((chtype) COLOR_PAIR(my_pair)); - } else { - try_color = FALSE; - } -@@ -373,10 +392,12 @@ - adjust(0); - my_label = "interrupt"; - } --#endif - waiting = TRUE; - c = getch(); - waiting = FALSE; -+#else -+ c = getch(); -+#endif - if ((c < 127) && isdigit(c)) { - if (!got_number) { - MvPrintw(0, 0, "Count: "); -@@ -466,6 +487,9 @@ - nodelay(stdscr, TRUE); - my_delay = 0; - break; -+ case CTRL('L'): -+ redrawwin(stdscr); -+ break; - case ERR: - if (!my_delay) - napms(50); -@@ -483,7 +507,7 @@ - finish(0); /* we're done */ - } - --static RETSIGTYPE -+static void - finish(int sig) - { - endwin(); -@@ -510,7 +534,7 @@ - * The 'wrefresh(curscr)' is needed to force the refresh to start from the top - * of the screen -- some xterms mangle the bitmap while resizing. - */ --static RETSIGTYPE -+static void - adjust(int sig) - { - if (waiting || sig == 0) { -@@ -553,7 +577,7 @@ - printw("%.*s", COLS, temp); - clrtoeol(); - this_time = time((time_t *) 0); -- strcpy(temp, ctime(&this_time)); -+ strncpy(temp, ctime(&this_time), (size_t) 30); - if ((i = (int) strlen(temp)) != 0) { - temp[--i] = 0; - if (move(0, COLS - i - 2) != ERR) -diff -Naur ncurses-5.9/test/widechars.h ncurses-5.9.patch/test/widechars.h ---- ncurses-5.9/test/widechars.h 1970-01-01 01:00:00.000000000 +0100 -+++ ncurses-5.9.patch/test/widechars.h 2014-09-01 16:33:22.575792482 +0200 -@@ -0,0 +1,71 @@ -+/**************************************************************************** -+ * Copyright (c) 2012 Free Software Foundation, Inc. * -+ * * -+ * Permission is hereby granted, free of charge, to any person obtaining a * -+ * copy of this software and associated documentation files (the * -+ * "Software"), to deal in the Software without restriction, including * -+ * without limitation the rights to use, copy, modify, merge, publish, * -+ * distribute, distribute with modifications, sublicense, and/or sell * -+ * copies of the Software, and to permit persons to whom the Software is * -+ * furnished to do so, subject to the following conditions: * -+ * * -+ * The above copyright notice and this permission notice shall be included * -+ * in all copies or substantial portions of the Software. * -+ * * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+ * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+ * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+ * * -+ * Except as contained in this notice, the name(s) of the above copyright * -+ * holders shall not be used in advertising or otherwise to promote the * -+ * sale, use or other dealings in this Software without prior written * -+ * authorization. * -+ ****************************************************************************/ -+ -+#ifndef __WIDECHARS_H -+#define __WIDECHARS_H 1 -+ -+#include <test.priv.h> -+ -+#if USE_WIDEC_SUPPORT -+ -+#if defined(__MINGW32__) -+/* -+ * MinGW has wide-character functions, but they do not work correctly. -+ */ -+ -+extern int _nc_mbtowc(wchar_t *pwc, const char *s, size_t n); -+extern int __MINGW_NOTHROW _nc_mbtowc(wchar_t *pwc, const char *s, size_t n); -+#define mbtowc(pwc,s,n) _nc_mbtowc(pwc,s,n) -+ -+extern int __MINGW_NOTHROW _nc_mblen(const char *, size_t); -+#define mblen(s,n) _nc_mblen(s, n) -+ -+#endif /* __MINGW32__ */ -+ -+#if HAVE_MBTOWC && HAVE_MBLEN -+#define reset_mbytes(state) IGNORE_RC(mblen(NULL, 0)), IGNORE_RC(mbtowc(NULL, NULL, 0)) -+#define count_mbytes(buffer,length,state) mblen(buffer,length) -+#define check_mbytes(wch,buffer,length,state) \ -+ (int) mbtowc(&wch, buffer, length) -+#define state_unused -+#elif HAVE_MBRTOWC && HAVE_MBRLEN -+#define reset_mbytes(state) init_mb(state) -+#define count_mbytes(buffer,length,state) mbrlen(buffer,length,&state) -+#define check_mbytes(wch,buffer,length,state) \ -+ (int) mbrtowc(&wch, buffer, length, &state) -+#else -+make an error -+#endif -+ -+#else -+ -+#endif /* USE_WIDEC_SUPPORT */ -+ -+extern void widechars_stub(void); -+ -+#endif /* __WIDECHARS_H */ -diff -Naur ncurses-5.9/test/worm.c ncurses-5.9.patch/test/worm.c ---- ncurses-5.9/test/worm.c 2010-11-13 21:21:21.000000000 +0100 -+++ ncurses-5.9.patch/test/worm.c 2014-09-01 16:33:22.575792482 +0200 -@@ -1,5 +1,5 @@ - /**************************************************************************** -- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. * -+ * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. * - * * - * Permission is hereby granted, free of charge, to any person obtaining a * - * copy of this software and associated documentation files (the * -@@ -61,7 +61,7 @@ - traces will be dumped. The program stops and waits for one character of - input at the beginning and end of the interval. - -- $Id: worm.c,v 1.60 2010/11/13 20:21:21 tom Exp $ -+ $Id: worm.c,v 1.65 2013/06/22 20:01:41 tom Exp $ - */ - - #include <test.priv.h> -@@ -202,6 +202,14 @@ - /* *INDENT-ON* */ - - static void -+failed(const char *s) -+{ -+ perror(s); -+ endwin(); -+ ExitProgram(EXIT_FAILURE); -+} -+ -+static void - cleanup(void) - { - USING_WINDOW(stdscr, wrefresh); -@@ -209,7 +217,7 @@ - endwin(); - } - --static RETSIGTYPE -+static void - onsig(int sig GCC_UNUSED) - { - cleanup(); -@@ -354,8 +362,7 @@ - if (first) { - first = FALSE; - for (n = 0, w = &worm[0]; n < number; n++, w++) { -- int rc; -- rc = pthread_create(&(w->thread), NULL, start_worm, w); -+ (void) pthread_create(&(w->thread), NULL, start_worm, w); - } - } - #else -@@ -391,6 +398,8 @@ - if (last_x != COLS - 1) { - for (y = 0; y <= last_y; y++) { - refs[y] = typeRealloc(int, (size_t) COLS, refs[y]); -+ if (!refs[y]) -+ failed("update_refs"); - for (x = last_x + 1; x < COLS; x++) - refs[y][x] = 0; - } -@@ -402,6 +411,8 @@ - refs = typeRealloc(int *, (size_t) LINES, refs); - for (y = last_y + 1; y < LINES; y++) { - refs[y] = typeMalloc(int, (size_t) COLS); -+ if (!refs[y]) -+ failed("update_refs"); - for (x = 0; x < COLS; x++) - refs[y][x] = 0; - } -@@ -419,6 +430,7 @@ - struct worm *w; - int *ip; - bool done = FALSE; -+ int max_refs; - - setlocale(LC_ALL, ""); - -@@ -489,7 +501,7 @@ - - #define SET_COLOR(num, fg) \ - init_pair(num+1, (short) fg, (short) bg); \ -- flavor[num] |= COLOR_PAIR(num+1) | A_BOLD -+ flavor[num] |= (chtype) COLOR_PAIR(num+1) | A_BOLD - - SET_COLOR(0, COLOR_GREEN); - SET_COLOR(1, COLOR_RED); -@@ -501,8 +513,9 @@ - } - #endif /* A_COLOR */ - -- refs = typeMalloc(int *, (size_t) LINES); -- for (y = 0; y < LINES; y++) { -+ max_refs = LINES; -+ refs = typeMalloc(int *, (size_t) max_refs); -+ for (y = 0; y < max_refs; y++) { - refs[y] = typeMalloc(int, (size_t) COLS); - for (x = 0; x < COLS; x++) { - refs[y][x] = 0; -@@ -596,7 +609,7 @@ - Trace(("Cleanup")); - cleanup(); - #ifdef NO_LEAKS -- for (y = 0; y < LINES; y++) { -+ for (y = 0; y < max_refs; y++) { - free(refs[y]); - } - free(refs); -diff -Naur ncurses-5.9/test/xmas.c ncurses-5.9.patch/test/xmas.c ---- ncurses-5.9/test/xmas.c 2010-11-13 21:24:10.000000000 +0100 -+++ ncurses-5.9.patch/test/xmas.c 2014-09-01 16:33:22.575792482 +0200 -@@ -92,7 +92,7 @@ - /******************************************************************************/ - - /* -- * $Id: xmas.c,v 1.27 2010/11/13 20:24:10 tom Exp $ -+ * $Id: xmas.c,v 1.28 2013/04/27 19:46:53 tom Exp $ - */ - #include <test.priv.h> - -@@ -148,7 +148,7 @@ - static int reindeer(void); - static int blinkit(void); - --static RETSIGTYPE done(int sig) GCC_NORETURN; -+static void done(int sig) GCC_NORETURN; - - static void - set_color(WINDOW *win, chtype color) -@@ -1143,7 +1143,7 @@ - return (0); - } - --static RETSIGTYPE -+static void - done(int sig GCC_UNUSED) - { - CATCHALL(done);